From 2bb12b1ca40b29b7edcf06ef3f3d6de24dde1c4c Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期三, 24 九月 2025 14:59:17 +0800
Subject: [PATCH] 原材料订单拆分功能v1
---
cnas-process/src/main/java/com/ruoyi/process/service/impl/QualitySuperviseServiceImpl.java | 243 +++++++++++++++++++++++++++++++++++++++---------
1 files changed, 195 insertions(+), 48 deletions(-)
diff --git a/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualitySuperviseServiceImpl.java b/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualitySuperviseServiceImpl.java
index 4f429a8..e8c52f0 100644
--- a/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualitySuperviseServiceImpl.java
+++ b/cnas-process/src/main/java/com/ruoyi/process/service/impl/QualitySuperviseServiceImpl.java
@@ -1,9 +1,12 @@
package com.ruoyi.process.service.impl;
+import cn.hutool.core.util.StrUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -21,6 +24,7 @@
import com.ruoyi.common.utils.QueryWrappers;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.WxCpUtils;
+import com.ruoyi.device.pojo.DeviceExamineRecord;
import com.ruoyi.framework.exception.ErrorException;
import com.ruoyi.inspect.util.HackLoopTableRenderPolicy;
import com.ruoyi.inspect.util.UserUtils;
@@ -50,6 +54,7 @@
import java.net.URLEncoder;
import java.time.LocalDate;
import java.time.LocalDateTime;
+import java.time.YearMonth;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.HashMap;
@@ -177,6 +182,7 @@
detailsUploadList.add(superviseDetails);
}
+
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
@@ -329,6 +335,7 @@
template.write(os);
os.flush();
os.close();
+ inputStream.close();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("瀵煎嚭澶辫触");
@@ -349,8 +356,66 @@
QualitySuperviseDetailsRecord detailsRecord;
detailsRecord = qualitySuperviseDetailsRecordMapper.selectOne(Wrappers.<QualitySuperviseDetailsRecord>lambdaQuery()
.eq(QualitySuperviseDetailsRecord::getSuperviseDetailsId, superviseDetailsId));
+
+ // 鏌ヨ涓婁竴涓湀绗竴鏉$殑璁板綍淇℃伅, 鍒ゆ柇琚洃鐫d汉鍘诲彟澶栦竴涓�
if (detailsRecord == null) {
+ // 鏌ヨ璇︽儏淇℃伅
+ QualitySuperviseDetails qualitySuperviseDetails = qualitySuperviseDetailsMapper.selectById(superviseDetailsId);
+ // 鏌ヨ涓婁竴涓湀绗竴鏉$殑璁板綍淇℃伅, 鍒ゆ柇琚洃鐫d汉鍘诲彟澶栦竴涓�
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.M");
+ YearMonth yearMonth = YearMonth.parse(qualitySuperviseDetails.getSuperviseTime(), formatter);
+ YearMonth previousYearMonth = yearMonth.minusMonths(1);
+
+ LocalDate startDate = previousYearMonth.atDay(1);
+ LocalDate endDate = previousYearMonth.atEndOfMonth();
+
+ LocalDateTime startDateTime = startDate.atStartOfDay();
+ LocalDateTime endDateTime = endDate.atTime(23, 59, 59);
+
+ DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+ // 鑾峰彇寮�濮嬫椂闂村拰缁撴潫鏃堕棿
+ String startDateTimeStr = startDateTime.format(outputFormatter);
+ String endDateTimeStr = endDateTime.format(outputFormatter);
+
+ QualitySuperviseDetailsRecord laseRecord = qualitySuperviseDetailsRecordMapper.selectOne(Wrappers.<QualitySuperviseDetailsRecord>lambdaQuery()
+ .between(QualitySuperviseDetailsRecord::getCreateTime, startDateTimeStr, endDateTimeStr)
+ .isNotNull(QualitySuperviseDetailsRecord::getSupervisor)
+ .last("limit 1"));
+
+ String supervisor = null;
+
+ if (laseRecord != null) {
+ // 鏌ヨ璁″垝鑾峰彇鍙︿竴涓洃鐫e憳
+ QualitySupervise qualitySupervise = baseMapper.selectById(qualitySuperviseDetails.getSuperviseId());
+ if (StringUtils.isNotBlank(qualitySupervise.getRecordUserIds())) {
+ List<String> recordUserIds = StrUtil.split(qualitySupervise.getRecordUserIds(), ',');
+ List<User> users = userMapper.selectList(Wrappers.<User>lambdaQuery()
+ .in(User::getId, recordUserIds));
+ if (CollectionUtils.isNotEmpty(users) && users.size() == 2) {
+ // 鍒ゆ柇鏄惁涓�鏍�, 涓�鏍疯幏鍙栧彟澶栦竴涓�
+ if (users.get(0).getName().equals(laseRecord.getSupervisor())) {
+ supervisor = users.get(1).getName();
+ } else {
+ supervisor = users.get(0).getName();
+ }
+
+ }
+ }
+ }
+
detailsRecord = new QualitySuperviseDetailsRecord();
+ detailsRecord.setSuperviseDetailsId(superviseDetailsId);
+ detailsRecord.setTestMember(qualitySuperviseDetails.getSupervisee());
+ detailsRecord.setSupervisor(supervisor);
+
+ detailsRecord.setPersonnel(SecurityUtils.getLoginUser().getUser().getNickName() + "鏈夌浉搴旀娴嬪憳鐨勪笂宀楄瘉");
+ detailsRecord.setEnvironment("娓╁害锛�()鈩� 婀垮害锛�()%");
+ detailsRecord.setInspectionRecord("妫�娴嬩汉鍛�" + SecurityUtils.getLoginUser().getUser().getNickName() + "杩涜妫�娴嬭褰曪紝璁板綍鍐呭鐪熷疄鏈夋晥");
+ detailsRecord.setExaminingReport("鐢�" + SecurityUtils.getLoginUser().getUser().getNickName() + "鍑虹ず鐨勬娴嬫姤鍛婄鍚堣鑼冭姹�");
+ detailsRecord.setSupervisionEvaluation("妫�娴嬫寜鐓ц姹傝繘琛岋紝鍒ゅ畾涓烘弧鎰�");
+ detailsRecord.setHandlingAdvice("/");
+
}
// 娣诲姞鎵瑰噯浜哄悕绉�
if (detailsRecord.getRatifyUserId() != null) {
@@ -370,7 +435,11 @@
if (qualitySuperviseDetailsRecord.getSuperviseDetailsId() == null) {
throw new ErrorException("缂哄皯鐩戠潱璇︾粏淇℃伅id");
}
- qualitySuperviseDetailsRecordMapper.insert(qualitySuperviseDetailsRecord);
+ if (qualitySuperviseDetailsRecord.getSuperviseDetailsRecordId() == null) {
+ qualitySuperviseDetailsRecordMapper.insert(qualitySuperviseDetailsRecord);
+ } else {
+ qualitySuperviseDetailsRecordMapper.updateById(qualitySuperviseDetailsRecord);
+ }
if (qualitySuperviseDetailsRecord.getRatifyUserId() != null) {
@@ -408,6 +477,10 @@
}
});
}
+ // 娓呯┖鐘舵��
+ qualitySuperviseDetailsRecordMapper.update(null, Wrappers.<QualitySuperviseDetailsRecord>lambdaUpdate()
+ .eq(QualitySuperviseDetailsRecord::getSuperviseDetailsRecordId, qualitySuperviseDetailsRecord.getSuperviseDetailsRecordId())
+ .set(QualitySuperviseDetailsRecord::getIsFinish, null));
return true;
}
@@ -419,16 +492,27 @@
*/
@Override
public boolean addSuperviseRecordOpinion(QualitySuperviseDetailsRecord qualitySuperviseDetailsRecord) {
- if (qualitySuperviseDetailsRecord.getIsAccording() == null) {
- throw new ErrorException("缂哄皯鏈�缁堢粨鏋�");
+ if (qualitySuperviseDetailsRecord.getIsFinish() == null) {
+ throw new RuntimeException("缂哄皯璁板綍缁撴灉鐘舵��");
}
- qualitySuperviseDetailsRecordMapper.update(null, Wrappers.<QualitySuperviseDetailsRecord>lambdaUpdate()
+ LambdaUpdateWrapper<QualitySuperviseDetailsRecord> wrapper = Wrappers.<QualitySuperviseDetailsRecord>lambdaUpdate()
.eq(QualitySuperviseDetailsRecord::getSuperviseDetailsId, qualitySuperviseDetailsRecord.getSuperviseDetailsId())
.set(QualitySuperviseDetailsRecord::getRatifyOpinion, qualitySuperviseDetailsRecord.getRatifyOpinion())
- .set(QualitySuperviseDetailsRecord::getRatifyTime, LocalDateTime.now())
.set(QualitySuperviseDetailsRecord::getIsAccording, qualitySuperviseDetailsRecord.getIsAccording())
- .set(QualitySuperviseDetailsRecord::getIsFinish, 1));
+ .set(QualitySuperviseDetailsRecord::getIsFinish, qualitySuperviseDetailsRecord.getIsFinish());
+
+ // 涓�0娓呴櫎瀹℃牳浜�
+ if (qualitySuperviseDetailsRecord.getIsFinish().equals(0)) {
+ wrapper.set(QualitySuperviseDetailsRecord::getRatifyUserId, null)
+ .set(QualitySuperviseDetailsRecord::getRatifyTime, null);
+ } else {
+ wrapper.set(QualitySuperviseDetailsRecord::getRatifyTime, LocalDateTime.now());
+ }
+
+ qualitySuperviseDetailsRecordMapper.update(null, wrapper);
+
+
return true;
}
@@ -439,27 +523,27 @@
*/
@Override
public void exportSuperviseDetailRecord(Integer superviseDetailsId, HttpServletResponse response) {
- QualitySuperviseDetailsRecord recordDto = qualitySuperviseDetailsRecordMapper.selectSuperviseDetailRecord(superviseDetailsId);
+ QualitySuperviseDetailsRecord recordDto = qualitySuperviseDetailsRecordMapper.selectSuperviseDetailRecord(superviseDetailsId);
- //鑾峰彇鎶�鏈礋璐d汉鐨勭鍚嶅湴鍧�
- String ratifyUrl = null;
- if (recordDto.getRatifyUserId() != null) {
- ratifyUrl = userMapper.selectById(recordDto.getRatifyUserId()).getSignatureUrl();
- if (StringUtils.isBlank(ratifyUrl)) {
- throw new ErrorException("鎵句笉鍒版妧鏈礋璐d汉鐨勭鍚�");
- }
+ // 鏌ヨ妫�娴嬩汉鍛�
+ User tserUser = new User();
+ if (StringUtils.isNotBlank(recordDto.getTestMember())) {
+ tserUser = userMapper.selectOne(Wrappers.<User>lambdaQuery()
+ .eq(User::getName, recordDto.getTestMember())
+ .last("limit 1"));
}
// 鑾峰彇璺緞
InputStream inputStream = this.getClass().getResourceAsStream("/static/supervision-detail-record.docx");
ConfigureBuilder builder = Configure.builder();
builder.useSpringEL(true);
- String finalRatifyUrl = ratifyUrl;
+ User finalTserUser = tserUser;
XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render(
new HashMap<String, Object>() {{
put("supervision", recordDto);
+ put("testMemberUrl", UserUtils.getFinalUserSignatureUrl(finalTserUser.getId()));
put("supervisoruUrl", UserUtils.getFinalUserSignatureUrl(recordDto.getSupervisor()));
- put("technicalDirectorUrl", StringUtils.isNotBlank(finalRatifyUrl) ? Pictures.ofLocal(imgUrl + "/" + finalRatifyUrl).create() : null);
+ put("technicalDirectorUrl", UserUtils.getFinalUserSignatureUrl(recordDto.getRatifyUserId()));
put("technicalDirectorDateUrl", recordDto.getRatifyTime() != null ?
Pictures.ofStream(DateImageUtil.createDateImage(recordDto.getRatifyTime())).create() : null);
}});
@@ -474,6 +558,7 @@
template.write(os);
os.flush();
os.close();
+ inputStream.close();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("瀵煎嚭澶辫触");
@@ -491,10 +576,10 @@
public boolean addSuperviseDetailAccording(QualitySuperviseDetailsAccording detailsAccording) {
QualitySuperviseDetailsAccording according = new QualitySuperviseDetailsAccording();
// 褰撳墠鐧诲綍鐢ㄦ埛淇℃伅鍜岄儴闂�
- User user = userMapper.selectById( SecurityUtils.getUserId().intValue());
+ User user = userMapper.selectById(SecurityUtils.getUserId().intValue());
String departmentLimsName = userMapper.selectUserDepartmentLimsName(user.getId());
switch (detailsAccording.getFlowType()) {
- // 涓嶇鍚堝伐浣滄儏鍐佃褰�
+ // 涓嶇鍚堝伐浣滄儏鍐佃褰�
case 0:
if (detailsAccording.getSuperviseDetailsId() == null) {
throw new ErrorException("缂哄皯璐ㄩ噺鐩戠潱璇︽儏Id");
@@ -527,7 +612,7 @@
qualitySuperviseDetailsAccordingMapper.insert(according);
break;
- // 1澶勭悊鎺柦
+ // 1澶勭悊鎺柦
case 1:
according.setSuperviseDetailsAccordingId(detailsAccording.getSuperviseDetailsAccordingId());
according.setEliminateMeasure(detailsAccording.getEliminateMeasure());//娓呴櫎涓嶇鍚堟帾鏂�
@@ -542,7 +627,7 @@
qualitySuperviseDetailsAccordingMapper.updateById(according);
break;
- // 绾犳鎺柦
+ // 绾犳鎺柦
case 2:
according.setSuperviseDetailsAccordingId(detailsAccording.getSuperviseDetailsAccordingId());
according.setCorrectContent(detailsAccording.getCorrectContent());//绾犳鎺柦鍐呭
@@ -557,7 +642,7 @@
qualitySuperviseDetailsAccordingMapper.updateById(according);
break;
- //鏄惁閫氱煡瀹㈡埛鍙仮澶嶅伐浣�
+ //鏄惁閫氱煡瀹㈡埛鍙仮澶嶅伐浣�
case 3:
according.setSuperviseDetailsAccordingId(detailsAccording.getSuperviseDetailsAccordingId());
according.setNotifyCustomer(detailsAccording.getNotifyCustomer());//閫氱煡瀹㈡埛
@@ -592,7 +677,12 @@
// 琚洃鐫d汉
User supervisedUser = userMapper.selectById(detailsAccording.getSupervisedUserId());
detailsAccording.setSupervisedUserName(supervisedUser.getName());//琚洃鐫�
- qualitySuperviseDetailsAccordingMapper.insert(detailsAccording);
+
+ if (detailsAccording.getSuperviseDetailsAccordingId() == null) {
+ qualitySuperviseDetailsAccordingMapper.insert(detailsAccording);
+ } else {
+ qualitySuperviseDetailsAccordingMapper.updateById(detailsAccording);
+ }
if (detailsAccording.getApproverUserId() != null) {
// 鏌ヨ璇︽儏淇℃伅
@@ -628,6 +718,11 @@
});
}
+ // 娓呯┖鐘舵��
+ qualitySuperviseDetailsAccordingMapper.update(null, Wrappers.<QualitySuperviseDetailsAccording>lambdaUpdate()
+ .eq(QualitySuperviseDetailsAccording::getSuperviseDetailsAccordingId, detailsAccording.getSuperviseDetailsAccordingId())
+ .set(QualitySuperviseDetailsAccording::getIsFinish, null));
+
return true;
}
@@ -639,22 +734,41 @@
*/
@Override
public boolean approverEquipSuperviseDetailAccording(QualitySuperviseDetailsAccording detailsAccording) {
+ if (detailsAccording.getIsFinish() == null) {
+ throw new RuntimeException("缂哄皯鎵瑰噯鐘舵��");
+ }
+
QualitySuperviseDetailsAccording according = new QualitySuperviseDetailsAccording();
according.setSuperviseDetailsAccordingId(detailsAccording.getSuperviseDetailsAccordingId());
- // 褰撳墠鐧诲綍鐢ㄦ埛淇℃伅鍜岄儴闂�
- User user = userMapper.selectById(SecurityUtils.getUserId().intValue());
- String departmentLimsName = userMapper.selectUserDepartmentLimsName(user.getId());
- according.setResponsibleDepartment(departmentLimsName);//璐d换閮ㄩ棬
- according.setActionsUserId(user.getId());//澶勭悊浜篿d
- according.setActionsUserName(user.getName());//澶勭悊浜�
+ if (detailsAccording.getIsFinish().equals(1)) {
+ // 褰撳墠鐧诲綍鐢ㄦ埛淇℃伅鍜岄儴闂�
+ User user = userMapper.selectById(SecurityUtils.getUserId().intValue());
+ String departmentLimsName = userMapper.selectUserDepartmentLimsName(user.getId());
- according.setCorrectUserId(user.getId());//绾犳璐熻矗浜篿d
- according.setCorrectUserName(user.getName());//绾犳璐熻矗浜�
+ according.setResponsibleDepartment(departmentLimsName);//璐d换閮ㄩ棬
+ according.setActionsUserId(user.getId());//澶勭悊浜篿d
+ according.setActionsUserName(user.getName());//澶勭悊浜�
- according.setQualityManagerUserId(user.getId());//璐ㄩ噺璐熻矗浜篿d
- according.setQualityManagerUserName(user.getName());//璐ㄩ噺璐熻矗浜�
- according.setIsFinish(1);
+ according.setCorrectUserId(user.getId());//绾犳璐熻矗浜篿d
+ according.setCorrectUserName(user.getName());//绾犳璐熻矗浜�
+
+ according.setQualityManagerUserId(user.getId());//璐ㄩ噺璐熻矗浜篿d
+ according.setQualityManagerUserName(user.getName());//璐ㄩ噺璐熻矗浜�
+ } else {
+ qualitySuperviseDetailsAccordingMapper.update(null, Wrappers.<QualitySuperviseDetailsAccording>lambdaUpdate()
+ .eq(QualitySuperviseDetailsAccording::getSuperviseDetailsAccordingId, detailsAccording.getSuperviseDetailsAccordingId())
+ .set(QualitySuperviseDetailsAccording::getResponsibleDepartment, null)
+ .set(QualitySuperviseDetailsAccording::getActionsUserId, null)
+ .set(QualitySuperviseDetailsAccording::getActionsUserName, null)
+ .set(QualitySuperviseDetailsAccording::getCorrectUserId, null)
+ .set(QualitySuperviseDetailsAccording::getCorrectUserName, null)
+ .set(QualitySuperviseDetailsAccording::getQualityManagerUserId, null)
+ .set(QualitySuperviseDetailsAccording::getQualityManagerUserName, null)
+ .set(QualitySuperviseDetailsAccording::getApproverUserId, null));
+ }
+
+ according.setIsFinish(detailsAccording.getIsFinish());
qualitySuperviseDetailsAccordingMapper.updateById(according);
return true;
}
@@ -675,6 +789,7 @@
detailsAccording = new QualitySuperviseDetailsAccording();
// 鏌ヨ鐩戠潱璁″垝璇︽儏
QualitySuperviseDetails superviseDetails = qualitySuperviseDetailsMapper.selectById(superviseDetailsId);
+ superviseDetails.setSuperviseDetailsId(superviseDetailsId);
detailsAccording.setSupervisedUserId(superviseDetails.getSupervisedUserId());
detailsAccording.setSupervisedUserName(superviseDetails.getSupervisee());
}
@@ -762,6 +877,7 @@
template.write(os);
os.flush();
os.close();
+ inputStream.close();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("瀵煎嚭澶辫触");
@@ -779,7 +895,7 @@
String departmentLimsName = userMapper.selectUserDepartmentLimsName(user.getId());
switch (detailsCorrect.getFlowType()) {
- // 涓嶅悎鏍兼彁鍑�
+ // 涓嶅悎鏍兼彁鍑�
case 0:
if (detailsCorrect.getSuperviseDetailsId() == null) {
throw new ErrorException("缂哄皯璐ㄩ噺鐩戠潱璇︽儏Id");
@@ -803,7 +919,7 @@
break;
- // 鍘熷洜鍒嗘瀽
+ // 鍘熷洜鍒嗘瀽
case 1:
correct.setSuperviseDetailsCorrectId(detailsCorrect.getSuperviseDetailsCorrectId());
correct.setCauseResult(detailsCorrect.getCauseResult());//鍘熷洜鍒嗘瀽
@@ -819,7 +935,7 @@
qualitySuperviseDetailsCorrectMapper.updateById(correct);
break;
- // 绾犳鎺柦
+ // 绾犳鎺柦
case 2:
correct.setSuperviseDetailsCorrectId(detailsCorrect.getSuperviseDetailsCorrectId());
correct.setCorrectResult(detailsCorrect.getCorrectResult());//2绾犳鎺柦
@@ -836,7 +952,7 @@
qualitySuperviseDetailsCorrectMapper.updateById(correct);
break;
- // 楠岃瘉缁撴灉
+ // 楠岃瘉缁撴灉
case 3:
correct.setSuperviseDetailsCorrectId(detailsCorrect.getSuperviseDetailsCorrectId());
correct.setValidationResult(detailsCorrect.getValidationResult());//3楠岃瘉缁撴灉
@@ -866,7 +982,11 @@
detailsCorrect.setRaiseDepartment(departmentLimsName);//鎻愬嚭閮ㄩ棬
detailsCorrect.setRaiseUserId(user.getId());//鎻愬嚭浜篿d
detailsCorrect.setRaiseUserName(user.getName());// 鎻愬嚭浜�
- qualitySuperviseDetailsCorrectMapper.insert(detailsCorrect);
+ if (detailsCorrect.getSuperviseDetailsCorrectId() == null) {
+ qualitySuperviseDetailsCorrectMapper.insert(detailsCorrect);
+ } else {
+ qualitySuperviseDetailsCorrectMapper.updateById(detailsCorrect);
+ }
if (detailsCorrect.getApproverUserId() != null) {
// 鏌ヨ璇︽儏淇℃伅
@@ -902,6 +1022,10 @@
});
}
+ // 娓呯┖鐘舵��
+ qualitySuperviseDetailsCorrectMapper.update(null, Wrappers.<QualitySuperviseDetailsCorrect>lambdaUpdate()
+ .eq(QualitySuperviseDetailsCorrect::getSuperviseDetailsCorrectId, detailsCorrect.getSuperviseDetailsCorrectId())
+ .set(QualitySuperviseDetailsCorrect::getIsFinish, null));
return true;
}
@@ -911,24 +1035,45 @@
*/
@Override
public boolean approveEquipSuperviseDetailCorrect(QualitySuperviseDetailsCorrect detailsCorrect) {
+ if (detailsCorrect.getIsFinish() == null) {
+ throw new RuntimeException("缂哄皯鎵瑰噯鐘舵��");
+ }
+
QualitySuperviseDetailsCorrect correct = new QualitySuperviseDetailsCorrect();
// 褰撳墠鐧诲綍鐢ㄦ埛淇℃伅鍜岄儴闂�
User user = userMapper.selectById(SecurityUtils.getUserId().intValue());
String departmentLimsName = userMapper.selectUserDepartmentLimsName(user.getId());
correct.setSuperviseDetailsCorrectId(detailsCorrect.getSuperviseDetailsCorrectId());
- correct.setCauseDepartment(departmentLimsName);//鍘熷洜鍒嗘瀽璐d换閮ㄩ棬
- correct.setCauseUserId(user.getId());//1鍘熷洜鍒嗘瀽浜篿d
- correct.setCauseUserName(user.getName());// 1鍘熷洜鍒嗘瀽浜�
+ if (detailsCorrect.getIsFinish().equals(1)) {
+ correct.setCauseDepartment(departmentLimsName);//鍘熷洜鍒嗘瀽璐d换閮ㄩ棬
+ correct.setCauseUserId(user.getId());//1鍘熷洜鍒嗘瀽浜篿d
+ correct.setCauseUserName(user.getName());// 1鍘熷洜鍒嗘瀽浜�
- correct.setCorrectDepartment(departmentLimsName);//2绾犳璐d换閮ㄩ棬
- correct.setCorrectUserId(user.getId());//2绾犳浜篿d
- correct.setCorrectUserName(user.getName());// 2绾犳浜�
+ correct.setCorrectDepartment(departmentLimsName);//2绾犳璐d换閮ㄩ棬
+ correct.setCorrectUserId(user.getId());//2绾犳浜篿d
+ correct.setCorrectUserName(user.getName());// 2绾犳浜�
- correct.setValidationDepartment(departmentLimsName);//3楠岃瘉閮ㄩ棬
- correct.setValidationUserId(user.getId());//3楠岃瘉浜篿d
- correct.setValidationUserName(user.getName());// 3楠岃瘉浜�
- correct.setIsFinish(1);
+ correct.setValidationDepartment(departmentLimsName);//3楠岃瘉閮ㄩ棬
+ correct.setValidationUserId(user.getId());//3楠岃瘉浜篿d
+ correct.setValidationUserName(user.getName());// 3楠岃瘉浜�
+ } else {
+ qualitySuperviseDetailsCorrectMapper.update(null, Wrappers.<QualitySuperviseDetailsCorrect>lambdaUpdate()
+ .eq(QualitySuperviseDetailsCorrect::getSuperviseDetailsCorrectId, detailsCorrect.getSuperviseDetailsCorrectId())
+ .set(QualitySuperviseDetailsCorrect::getCauseDepartment, null)
+ .set(QualitySuperviseDetailsCorrect::getCauseUserId, null)
+ .set(QualitySuperviseDetailsCorrect::getCauseUserName, null)
+ .set(QualitySuperviseDetailsCorrect::getCorrectDepartment, null)
+ .set(QualitySuperviseDetailsCorrect::getCorrectUserId, null)
+ .set(QualitySuperviseDetailsCorrect::getCorrectUserName, null)
+ .set(QualitySuperviseDetailsCorrect::getValidationDepartment, null)
+ .set(QualitySuperviseDetailsCorrect::getValidationUserId, null)
+ .set(QualitySuperviseDetailsCorrect::getValidationUserName, null)
+ .set(QualitySuperviseDetailsCorrect::getApproverUserId, null)
+ );
+ }
+
+ correct.setIsFinish(detailsCorrect.getIsFinish());
qualitySuperviseDetailsCorrectMapper.updateById(correct);
return true;
@@ -948,6 +1093,7 @@
if (detailsCorrect == null) {
detailsCorrect = new QualitySuperviseDetailsCorrect();
+ detailsCorrect.setSuperviseDetailsId(superviseDetailsId);
}
return detailsCorrect;
}
@@ -1110,6 +1256,7 @@
template.write(os);
os.flush();
os.close();
+ inputStream.close();
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("瀵煎嚭澶辫触");
--
Gitblit v1.9.3