From 20956b0f05f81ca47cf6c3e8f9b3b426e9cfd035 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期日, 24 九月 2023 21:54:01 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java | 179 ++++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 140 insertions(+), 39 deletions(-)
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java
index 6dca1e1..d06c736 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java
@@ -1,26 +1,30 @@
package com.yuanchu.mom.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.yuanchu.mom.mapper.InspectUnacceptedMapper;
-import com.yuanchu.mom.pojo.FinishedInspect;
-import com.yuanchu.mom.mapper.FinishedInspectMapper;
-import com.yuanchu.mom.pojo.InspectUnaccepted;
-import com.yuanchu.mom.service.FinishedInspectService;
+import com.yuanchu.mom.mapper.*;
+import com.yuanchu.mom.pojo.*;
+import com.yuanchu.mom.pojo.vo.FinishedInspectVo;
+import com.yuanchu.mom.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.yuanchu.mom.service.InspectionItemService;
-import com.yuanchu.mom.service.ProductService;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.util.Date;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
+import java.util.stream.Collectors;
/**
* <p>
- * 鏈嶅姟瀹炵幇绫�
+ * 鏈嶅姟瀹炵幇绫�
* </p>
*
* @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
@@ -30,51 +34,148 @@
public class FinishedInspectServiceImpl extends ServiceImpl<FinishedInspectMapper, FinishedInspect> implements FinishedInspectService {
@Resource
- private FinishedInspectMapper finishedInspectMapper;
+ FinishedInspectMapper finishedInspectMapper;
- @Autowired
- private ProductService productService;
+ @Resource
+ ManualTechnologyMapper manualTechnologyMapper;
- @Autowired
- private InspectionItemService inspectionItemService;
+ @Resource
+ ManualProductService manualProductService;
+
+ @Resource
+ InspectionItemService inspectionItemService;
+
+ @Resource
+ InspectionItemMapper inspectionItemMapper;
@Resource
InspectUnacceptedMapper inspectUnacceptedMapper;
+ @Resource
+ RepertoryMapper repertoryMapper;
+
+ //鏂板妫�楠屽崟-->鏍规嵁璁㈠崟鍙烽�夋嫨浜у搧淇℃伅
@Override
- public Integer addProcessInspectionSheet(FinishedInspect finishedInspect) {
- finishedInspect.setType(0);
- int insert = finishedInspectMapper.insert(finishedInspect);
- if (insert == 1){
- List<Map<String, Object>> maps = productService.selectProductList(finishedInspect.getSpecificationsId());
- inspectionItemService.insertList(finishedInspect.getId(), maps);
- return insert;
- }
- return 0;
+ public List<Map<String, Object>> chooseMater(String orderNumber) {
+ return finishedInspectMapper.chooseMater(orderNumber);
}
+ //鏂板鎴愬搧妫�楠屽崟
@Override
- public Integer inspectionConclusion(Integer finishedInspectId, Integer result) {
- //鏇存柊妫�楠屽崟閲岄潰鐨勬楠岀粨璁�
- LambdaUpdateWrapper<FinishedInspect> updateWrapper = new LambdaUpdateWrapper<>();
- updateWrapper.eq(FinishedInspect::getId, finishedInspectId);
- updateWrapper.set(FinishedInspect::getResult, result);
- finishedInspectMapper.update(new FinishedInspect(), updateWrapper);
- //濡傛灉妫�楠岀粨璁轰负涓嶅悎鏍�,鍒欓渶瑕佹柊澧炰笉鍚堟牸妫�楠屽崟
- FinishedInspect finishedInspect = finishedInspectMapper.selectById(finishedInspectId);
- if (result == 0) {
- InspectUnaccepted inspectUnaccepted = InspectUnaccepted.builder()
- .reason(finishedInspect.getProjectName() + "涓嶅悎鏍�") //鏆備笖瀹氫箟涓哄伐绋嬪悕绉颁笉鍚堟牸
- .rawInspectId(finishedInspectId)
- .type(finishedInspect.getType())
+ @Transactional(rollbackFor = Exception.class)
+ public Integer addProcessInspectionSheet(String userId, FinishedInspectVo finishedInspectVo) {
+ //鏍规嵁鐢熶骇璁㈠崟id鏌ヨ缂栧埗宸ュ簭鐨勬渶鍚庝竴閬撳伐鑹�
+ List<ManualTechnology> manualTechnologyList = manualTechnologyMapper.selAllByMoId(finishedInspectVo.getId());
+ //鑾峰彇缂栧埗宸ヨ壓鏈�鍚庝竴閬撳伐鑹虹殑id
+ Integer mtId = manualTechnologyList.get(0).getId();
+ /*鏂板鎴愬搧妫�楠屽崟*/
+ FinishedInspect finishedInspect = new FinishedInspect();
+ finishedInspect.setUserId(Integer.parseInt(userId));
+ finishedInspect.setOrderNumber(finishedInspectVo.getOrderNumber());
+ finishedInspect.setCustomerName(finishedInspectVo.getPrname());
+ finishedInspect.setProjectName(finishedInspectVo.getSname());
+ finishedInspect.setQualityTraceability(finishedInspectVo.getQualityTraceability());
+ finishedInspect.setUnit(finishedInspectVo.getUnit());
+ finishedInspect.setQuantity(finishedInspectVo.getQuantity());
+ finishedInspect.setSpecificationsModel(finishedInspectVo.getSpecificationsModel());
+ finishedInspect.setMaterial(finishedInspectVo.getMaterial());
+ finishedInspect.setMaterialCode(finishedInspectVo.getMcode());
+ //finishedInspect.setTechId(technologyId);
+ finishedInspectMapper.insert(finishedInspect);
+ /*鎵归噺鏂板鎴愬搧妫�楠岄」鐩崟*/
+ List<ManualProduct> manualProductList = manualProductService.selByMtid(mtId);
+ List<InspectionItem> inspectionItemList = manualProductList.stream().map(manualProduct -> {
+ InspectionItem inspectionItem = new InspectionItem();
+ BeanUtils.copyProperties(manualProductList, inspectionItem);
+ inspectionItem.setId(null);
+ inspectionItem.setCreateTime(new Date());
+ inspectionItem.setUpdateTime(new Date());
+ inspectionItem.setInspectId(finishedInspect.getId());
+ inspectionItem.setType(2);//鎴愬搧
+ return inspectionItem;
+ }).collect(Collectors.toList());
+ inspectionItemService.saveBatch(inspectionItemList);
+ return finishedInspect.getId();
+ }
+
+
+ //涓婃姤(鏇存柊妫�楠岀姸鎬�)
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public String updateFinishInspectsById(String username, Integer id,Integer number) {
+ /*鏇存柊妫�楠屽崟閲岄潰鐨勬楠岀粨璁�*/
+ //鍏堝垽鏂楠岀粨鏋�
+ List<Integer> results = inspectionItemMapper.getResult(id, 2);
+ int count = 0;
+ for (Integer result : results) {
+ if (result != null && result == 1) {
+ count++;
+ }
+ }
+ FinishedInspect finishedInspect = finishedInspectMapper.selectById(id);
+ //濡傛灉妫�楠岄」鐩腑鐨勭粨璁哄寘鍚笉鍚堟牸鍒欐楠屽崟涓嶅悎鏍�
+ if (results.contains(0)) {
+ finishedInspect.setResult(0);//涓嶅悎鏍�
+ //鏇存柊妫�楠屽崟
+ finishedInspectMapper.updateById(finishedInspect);
+ } else if (count == results.size()) {
+ finishedInspect.setResult(1);//鍚堟牸
+ finishedInspectMapper.updateById(finishedInspect);
+ } else return "椤圭洰鏈楠屽畬!";
+ /*濡傛灉妫�楠岀粨璁轰负涓嶅悎鏍�,鍒欓渶瑕佹柊澧炰笉鍚堟牸妫�楠屽崟*/
+ if (finishedInspect.getResult() == 0) {
+ InspectUnaccepted finishUnaccepted = InspectUnaccepted.builder()
+ .reason(finishedInspect.getMaterial() + "涓嶅悎鏍�") //鏆備笖瀹氫箟涓轰骇鍝佸悕绉颁笉鍚堟牸
+ .number(number)
+ .rawInspectId(id)
+ .type(1) //绫诲瀷涓烘垚鍝佹楠�
.build();
- inspectUnacceptedMapper.insert(inspectUnaccepted);
+ inspectUnacceptedMapper.insert(finishUnaccepted);
}
- return 1;
+ /*濡傛灉妫�楠岀粨璁轰负鍚堟牸,鍒欓渶瑕佹柊澧炲崐鎴愬搧搴撳瓨*/
+ if (finishedInspect.getResult() == 1) {
+ //濡傛灉鍏ュ簱鐨勪俊鎭竴鏍峰彧鏈夊簱瀛樹笉涓�鏍�,鍒欏湪鍘熸潵鐨勫簱瀛樻暟閲忎笂鍔犱笂鐩稿簲鐨勬暟閲�
+ LambdaQueryWrapper<Repertory> queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.eq(Repertory::getOrderCode, finishedInspect.getOrderNumber())
+ .eq(Repertory::getQualityTraceability, finishedInspect.getQualityTraceability())
+ .eq(Repertory::getName, finishedInspect.getMaterial())
+ .eq(Repertory::getSpecifications, finishedInspect.getSpecificationsModel())
+ .eq(Repertory::getUnit, finishedInspect.getUnit())
+ .eq(Repertory::getType, 1);
+ Repertory rep = repertoryMapper.selectOne(queryWrapper);
+ if (rep != null) {
+ rep.setNumber(rep.getNumber() + finishedInspect.getQuantity());
+ rep.setUserName(username);
+ repertoryMapper.updateById(rep);
+ } else {
+ //濡傛灉闄や簡搴撳瓨鍒殑淇℃伅鏈変换浣曚竴涓笉涓�鏍�,鍒欐柊澧炰竴鏉℃垚鍝佸簱瀛�
+ Repertory repertory = new Repertory();
+ repertory.setOrderCode(finishedInspect.getOrderNumber());
+ repertory.setQualityTraceability(finishedInspect.getQualityTraceability());
+ repertory.setName(finishedInspect.getMaterial());
+ repertory.setSpecifications(finishedInspect.getSpecificationsModel());
+ repertory.setUnit(finishedInspect.getUnit());
+ repertory.setNumber(finishedInspect.getQuantity());
+ repertory.setUserName(username);
+ repertory.setType(1);//鍗婃垚鍝�
+ repertory.setCheckResult(1);//鏆傚畾涓嶅垹
+ repertoryMapper.insert(repertory);
+ }
+ }
+ return "涓婃姤鎴愬姛!";
}
+ //鍒嗛〉鏌ヨ鎴愬搧妫�楠屽崟鍒楄〃
@Override
- public IPage<Map<String, Object>> selectFinishedInspectPage(Page<Object> page, Integer inspectResult, String inspectDate, String inspectUsername) {
- return finishedInspectMapper.selectFinishedInspectPage(page, inspectResult, inspectDate, inspectUsername);
+ public IPage<Map<String, Object>> selectFinishedInspectPage(Page<Object> page, Integer result, String material) {
+ return finishedInspectMapper.selectFinishedInspectPage(page, result, material);
}
+
+ //鏍规嵁妫�楠屽崟id鏌ヨ鎴愬搧妫�楠屽崟璇︽儏
+ @Override
+ public List<Map<String, Object>> selectFinishInspectsListById(Integer id) {
+ return finishedInspectMapper.selectFinishInspectsListById(id);
+ }
+
+
}
--
Gitblit v1.9.3