From 8e39c9bbf8a8bb4707f2a766295b40497ae96706 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期五, 01 九月 2023 13:46:54 +0800
Subject: [PATCH] MOM系统-9-01 生产订单 生产计划完成
---
inspect-server/src/main/java/com/yuanchu/mom/service/impl/FinishedInspectServiceImpl.java | 151 +++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 141 insertions(+), 10 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..ffb04db 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,18 +1,24 @@
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.extension.plugins.pagination.Page;
+import com.yuanchu.mom.mapper.ImportRepertoryMapper;
import com.yuanchu.mom.mapper.InspectUnacceptedMapper;
+import com.yuanchu.mom.mapper.RepertoryMapper;
import com.yuanchu.mom.pojo.FinishedInspect;
import com.yuanchu.mom.mapper.FinishedInspectMapper;
+import com.yuanchu.mom.pojo.ImportRepertory;
import com.yuanchu.mom.pojo.InspectUnaccepted;
+import com.yuanchu.mom.pojo.Repertory;
import com.yuanchu.mom.service.FinishedInspectService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.mom.service.InspectionItemService;
import com.yuanchu.mom.service.ProductService;
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.List;
@@ -20,7 +26,7 @@
/**
* <p>
- * 鏈嶅姟瀹炵幇绫�
+ * 鏈嶅姟瀹炵幇绫�
* </p>
*
* @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
@@ -41,11 +47,17 @@
@Resource
InspectUnacceptedMapper inspectUnacceptedMapper;
+ @Resource
+ RepertoryMapper repertoryMapper;
+
+ @Resource
+ ImportRepertoryMapper importRepertoryMapper;
+
@Override
public Integer addProcessInspectionSheet(FinishedInspect finishedInspect) {
finishedInspect.setType(0);
int insert = finishedInspectMapper.insert(finishedInspect);
- if (insert == 1){
+ if (insert == 1) {
List<Map<String, Object>> maps = productService.selectProductList(finishedInspect.getSpecificationsId());
inspectionItemService.insertList(finishedInspect.getId(), maps);
return insert;
@@ -53,22 +65,141 @@
return 0;
}
+
@Override
- public Integer inspectionConclusion(Integer finishedInspectId, Integer result) {
+ @Transactional(rollbackFor = Exception.class)
+ public Integer inspectionConclusion(String username, 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())
- .build();
- inspectUnacceptedMapper.insert(inspectUnaccepted);
+ //濡傛灉鏄垚鍝佺殑缁撹涓轰笉鍚堟牸,闇�瑕佹柊澧炴垚鍝佷笉鍚堟牸妫�楠屽崟
+ if (finishedInspect.getType() == 0) {
+ /*鏂板鎴愬搧涓嶅悎鏍兼楠屽崟*/
+ InspectUnaccepted inspectUnaccepted = InspectUnaccepted.builder()
+ .reason(finishedInspect.getProjectName() + "涓嶅悎鏍�") //鏆備笖瀹氫箟涓哄伐绋嬪悕绉颁笉鍚堟牸
+ .rawInspectId(finishedInspectId)
+ .build();
+ inspectUnacceptedMapper.insert(inspectUnaccepted);
+ }
+ //濡傛灉鏄繃绋嬫楠岀殑缁撹涓轰笉鍚堟牸,闇�瑕佹柊澧炲崐鎴愬搧搴撳瓨涓旀楠岀粨鏋滀负涓嶅悎鏍�
+ if (finishedInspect.getType() == 1) {
+ /*鏂板鍗婃垚鍝�(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)
+ .eq(Repertory::getCheckResult, 0);
+ Repertory rep = repertoryMapper.selectOne(queryWrapper);
+ if (rep != null) {
+ rep.setNumber(rep.getNumber() + finishedInspect.getQuantity());
+ rep.setUserName(username);
+ repertoryMapper.updateById(rep);
+ } else {
+ //濡傛灉闄や簡搴撳瓨鍒殑淇℃伅鏈変换浣曚竴涓笉涓�鏍�,鍒欐柊澧炰竴鏉″崐鎴愬搧搴撳瓨
+ Repertory repertory = Repertory.builder()
+ .orderCode(finishedInspect.getOrderNumber())
+ .qualityTraceability(finishedInspect.getQualityTraceability())
+ .name(finishedInspect.getMaterial())
+ .specifications(finishedInspect.getSpecificationsModel())
+ .unit(finishedInspect.getUnit())
+ .number(finishedInspect.getQuantity())
+ .userName(username)
+ .type(1)
+ .checkResult(0)//妫�楠岀粨鏋滀负涓嶅悎鏍�
+ .build();
+ repertoryMapper.insert(repertory);
+ }
+ }
+ }
+ /*妫�楠岀粨璁轰负鍚堟牸*/
+ if (result == 1) {
+ //濡傛灉鏄垚鍝佹楠屽悎鏍�,,闇�瑕佹柊澧炴垚鍝�(0)搴撳瓨鍜屽叆搴撹褰�
+ if (finishedInspect.getType() == 0) {
+ /*鏂板鎴愬搧鍏ュ簱璁板綍*/
+ ImportRepertory importRepertory = ImportRepertory.builder()
+ .orderCode(finishedInspect.getOrderNumber())
+ .qualityTraceability(finishedInspect.getQualityTraceability())
+ .name(finishedInspect.getMaterial())
+ .specifications(finishedInspect.getSpecificationsModel())
+ .unit(finishedInspect.getUnit())
+ .number(finishedInspect.getQuantity())
+ .userName(username)
+ .build();
+ importRepertoryMapper.insert(importRepertory);
+ /*鏂板鎴愬搧(0)搴撳瓨*/
+ //濡傛灉鍏ュ簱鐨勪俊鎭竴鏍峰彧鏈夊簱瀛樹笉涓�鏍�,鍒欏湪鍘熸潵鐨勫簱瀛樻暟閲忎笂鍔犱笂鐩稿簲鐨勬暟閲�
+ 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, 0)
+ .eq(Repertory::getCheckResult, 1);
+ Repertory rep = repertoryMapper.selectOne(queryWrapper);
+ if (rep != null) {
+ rep.setNumber(rep.getNumber() + finishedInspect.getQuantity());
+ rep.setUserName(username);
+ repertoryMapper.updateById(rep);
+ } else {
+ //濡傛灉闄や簡搴撳瓨鍒殑淇℃伅鏈変换浣曚竴涓笉涓�鏍�,鍒欐柊澧炰竴鏉℃垚鍝佸簱瀛�
+ Repertory repertory = Repertory.builder()
+ .orderCode(finishedInspect.getOrderNumber())
+ .qualityTraceability(finishedInspect.getQualityTraceability())
+ .name(finishedInspect.getMaterial())
+ .specifications(finishedInspect.getSpecificationsModel())
+ .unit(finishedInspect.getUnit())
+ .number(finishedInspect.getQuantity())
+ .userName(username)
+ .type(0)
+ .checkResult(1) //搴撳瓨妫�楠岀粨鏋滀负鍚堟牸
+ .build();
+ repertoryMapper.insert(repertory);
+ }
+ }
+ //濡傛灉鏄繃绋嬫楠屽悎鏍�,闇�瑕佹柊澧炲崐鎴愬搧(1)搴撳瓨,妫�楠岀粨鏋滀负鍚堟牸1
+ if (finishedInspect.getType()==1) {
+ /*鏂板鍗婃垚鍝�(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)
+ .eq(Repertory::getCheckResult, 1);
+ Repertory rep = repertoryMapper.selectOne(queryWrapper);
+ if (rep != null) {
+ rep.setNumber(rep.getNumber() + finishedInspect.getQuantity());
+ rep.setUserName(username);
+ repertoryMapper.updateById(rep);
+ } else {
+ //濡傛灉闄や簡搴撳瓨鍒殑淇℃伅鏈変换浣曚竴涓笉涓�鏍�,鍒欐柊澧炰竴鏉″崐鎴愬搧搴撳瓨
+ Repertory repertory = Repertory.builder()
+ .orderCode(finishedInspect.getOrderNumber())
+ .qualityTraceability(finishedInspect.getQualityTraceability())
+ .name(finishedInspect.getMaterial())
+ .specifications(finishedInspect.getSpecificationsModel())
+ .unit(finishedInspect.getUnit())
+ .number(finishedInspect.getQuantity())
+ .userName(username)
+ .type(1)
+ .checkResult(1)//妫�楠岀粨鏋滀负鍚堟牸
+ .build();
+ repertoryMapper.insert(repertory);
+ }
+ }
+
}
return 1;
}
--
Gitblit v1.9.3