Commit fd9a5857 by lijingjing

添加相关日志

parent ff190ea8
...@@ -618,17 +618,24 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe ...@@ -618,17 +618,24 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
flowStatus = fromFlowStatus.getName(); flowStatus = fromFlowStatus.getName();
entrust.setFlowStatus(flowStatus); entrust.setFlowStatus(flowStatus);
} }
// 当终止节点不一致,当以状态路径配置的下一节点为准 // 当终止节点不一致,当以状态路径配置的下一节点为准
if (StringUtils.isNotBlank(statusPath)) { if (StringUtils.isNotBlank(statusPath)) {
EntrustFlowEnum nextFlowStatus = EntrustFlowUtils.getNextFlowStatus(flowStatus, statusPath); EntrustFlowEnum nextFlowStatus = EntrustFlowUtils.getNextFlowStatus(flowStatus, statusPath);
RestAssert.fail(null == nextFlowStatus, "配置的状态路径没有下一步!"); RestAssert.fail(null == nextFlowStatus, "配置的状态路径没有下一步!");
RestAssert.fail(nextFlowStatus.getValue() < fromFlowStatus.getValue(), RestAssert.fail(nextFlowStatus.getValue() < fromFlowStatus.getValue(),
String.format("起始流程节点配置存在问题:从【%s】,至【%s】", fromFlowStatus.getDisplay(), nextFlowStatus.getDisplay())); String.format("起始流程节点配置存在问题:从【%s】,至【%s】", fromFlowStatus.getDisplay(), nextFlowStatus.getDisplay()));
toFlowStatus = nextFlowStatus; toFlowStatus = nextFlowStatus;
// 质量判定才触发此逻辑 // 质量判定才触发此逻辑
if (toFlowStatus == EntrustFlowEnum.QUALITY_JUDGE) { if (toFlowStatus == EntrustFlowEnum.QUALITY_JUDGE) {
entrustService.submitToNextNode(entrust, account); // 不再从submitToNextNode中处理,直接处理委托质量判定相关内容
// entrustService.submitToNextNode(entrust, account);
// 委托状态获取,实际从状态路径获取,此处直接使用质量判定即可
EntrustStatusEnum nextStatus = EntrustStatusEnum.QUALITY_CHECK;
// 修改委托状态信息
entrust.setStatus(nextStatus);
entrust.setProgress(nextStatus);
entrust.setFlowStatus(toFlowStatus.getName());
entrustSampleService.updateSampleNextFlowInfo(entrust, nextFlowStatus, account);
} }
} }
...@@ -684,12 +691,16 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe ...@@ -684,12 +691,16 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
// 更新对应委托流程状态 // 更新对应委托流程状态
// 过滤掉标样,空白样 // 过滤掉标样,空白样
List<EntrustSample> entrustSamples = entrustSampleService.getNormalByEntrustId(entrust.getId()); List<EntrustSample> normalSampleList = entrustSampleService.getNormalByEntrustId(entrust.getId());
RestAssert.fail(CollectionUtils.isEmpty(normalSampleList), "正常样品为空!");
// == // ==
EntrustSampleStatusEnum finalSampleStatusEnum = sampleStatusEnum; EntrustSampleStatusEnum finalSampleStatusEnum = sampleStatusEnum;
// 从正常样品中过滤出提交的样品,匹配是否存在剩余未处理的样品
if (CollectionUtils.isNotEmpty(entrustSamples) && entrustSamples.stream().filter(t -> !sampleIds.contains(t.getId()) boolean isDealEnd = normalSampleList.stream().filter(t -> !sampleIds.contains(t.getId()))
).noneMatch(t -> (int) t.getStatus().getValue() < (int) finalSampleStatusEnum.getValue())) { .noneMatch(t -> (int) t.getStatus().getValue() < (int) finalSampleStatusEnum.getValue());
// 处理完成,更新委托和样品状态
if (isDealEnd) {
entrust.setFlowStatus(toFlowStatus.getName()); entrust.setFlowStatus(toFlowStatus.getName());
entrustService.updateById(entrust); entrustService.updateById(entrust);
entrustRecordService.record(Collections.singletonList(entrust.getId()), fromFlowStatus.getDisplay(), entrustRecordService.record(Collections.singletonList(entrust.getId()), fromFlowStatus.getDisplay(),
...@@ -743,7 +754,6 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe ...@@ -743,7 +754,6 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
} }
Entrust entrust = entrustService.getById(entrustId); Entrust entrust = entrustService.getById(entrustId);
String sampleName = "铝成品";
Account account = LoginHelper.getAccount(); Account account = LoginHelper.getAccount();
// == // ==
List<EntrustSample> sampleList = new ArrayList<>(); List<EntrustSample> sampleList = new ArrayList<>();
......
...@@ -11,6 +11,7 @@ import com.patzn.cloud.commons.api.RestAssert; ...@@ -11,6 +11,7 @@ import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.constant.CommonConstants; import com.patzn.cloud.commons.constant.CommonConstants;
import com.patzn.cloud.commons.controller.Account; import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.controller.LoginHelper; import com.patzn.cloud.commons.controller.LoginHelper;
import com.patzn.cloud.commons.enums.IBaseEnum;
import com.patzn.cloud.commons.exception.PatznException; import com.patzn.cloud.commons.exception.PatznException;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl; import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.commons.toolkit.DateUtils; import com.patzn.cloud.commons.toolkit.DateUtils;
...@@ -382,12 +383,20 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe ...@@ -382,12 +383,20 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
return result; return result;
} }
private void prints(String title, IBaseEnum baseEnum) {
logger.error("{}状态为:{},{},{}。", title, baseEnum.getName(), baseEnum.getValue(), baseEnum.getDisplay());
}
@Override @Override
@Transactional(rollbackFor = Exception.class)
public boolean updateSampleNextFlowInfo(Entrust entrust, EntrustFlowEnum nextFlowStatus, Account account) { public boolean updateSampleNextFlowInfo(Entrust entrust, EntrustFlowEnum nextFlowStatus, Account account) {
logger.error("开始执行更新样品及检测项目流程.....");
List<EntrustSample> sampleList = list(Condition.create().eq("entrust_id", entrust.getId()).eq("deleted", 0)); logger.error("委托ID:{},委托编号:{}。", entrust.getId(), entrust.getCode());
RestAssert.fail(CollectionUtils.isEmpty(sampleList), String.format("编号为【%s】委托下样品为空", entrust.getCode())); List<EntrustSample> sampleList = getByEntrustId(entrust.getId());
RestAssert.fail(CollectionUtils.isEmpty(sampleList), String.format("编号为【%s】的委托下样品为空", entrust.getCode()));
logger.error("样品数量:{}", sampleList.size());
Long[] sampleIds = sampleList.stream().map(t -> t.getId()).toArray(size -> new Long[size]); Long[] sampleIds = sampleList.stream().map(t -> t.getId()).toArray(size -> new Long[size]);
prints("样品的下一级流程",nextFlowStatus);
// //
EntrustSample updateSample = new EntrustSample(); EntrustSample updateSample = new EntrustSample();
EntrustSampleItem updateItem = new EntrustSampleItem(); EntrustSampleItem updateItem = new EntrustSampleItem();
...@@ -437,6 +446,9 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe ...@@ -437,6 +446,9 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
itemStatus = EntrustSampleItemStatusEnum.END; itemStatus = EntrustSampleItemStatusEnum.END;
} }
prints("样品即将更新",sampleStatus);
prints("项目即将更新",itemStatus);
// 哪一级别 // 哪一级别
int whichLevel = 1; int whichLevel = 1;
int nextFlowVal = nextFlowStatus.getValue().intValue(); int nextFlowVal = nextFlowStatus.getValue().intValue();
...@@ -451,10 +463,10 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe ...@@ -451,10 +463,10 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
} }
if (null != sampleStatus) { if (null != sampleStatus) {
updateSample.setStatus(sampleStatus);
// 判定是否为质量判定 // 判定是否为质量判定
// 若为质量判定,判断需要判级 // 若为质量判定,判断需要判级
boolean isRequireJudgeGrading = isRequireJudgeGrading(entrust.getId()); boolean isRequireJudgeGrading = isRequireJudgeGrading(entrust.getId());
logger.error("样品判级时使用。是否需要判定:{}", isRequireJudgeGrading);
for (EntrustSample sample : sampleList) { for (EntrustSample sample : sampleList) {
// 排除批样样品编号 // 排除批样样品编号
if (2 != sample.getType()) { if (2 != sample.getType()) {
...@@ -475,7 +487,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe ...@@ -475,7 +487,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
} }
} }
} }
// update(updateSample, Condition.create().eq("entrust_id", entrust.getId())); logger.error("执行批量更新样品信息.......");
// 批量更新样品编号和状态 // 批量更新样品编号和状态
updateBatchById(sampleList); updateBatchById(sampleList);
} }
...@@ -483,7 +495,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe ...@@ -483,7 +495,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
updateItem.setStatus(itemStatus).setProgress(itemStatus); updateItem.setStatus(itemStatus).setProgress(itemStatus);
entrustSampleItemService.update(updateItem, Condition.create().in("entrust_sample_id", sampleIds)); entrustSampleItemService.update(updateItem, Condition.create().in("entrust_sample_id", sampleIds));
} }
return false; return true;
} }
@Override @Override
...@@ -618,7 +630,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe ...@@ -618,7 +630,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
@Override @Override
public List<EntrustSample> getByEntrustId(Long entrustId) { public List<EntrustSample> getByEntrustId(Long entrustId) {
return list(Condition.create().eq("entrust_id", entrustId).eq("deleted", 0)); return list(Condition.create().eq("entrust_id", entrustId));
} }
@Override @Override
......
...@@ -434,6 +434,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -434,6 +434,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
} }
EntrustSample sample = sampleDTO.convert(EntrustSample.class); EntrustSample sample = sampleDTO.convert(EntrustSample.class);
sample.setEntrustId(entrust.getId()); sample.setEntrustId(entrust.getId());
// 只有在提交时,才初始化样品编号
if (isSubmit) { if (isSubmit) {
if (StringUtils.isBlank(sample.getCode())) { if (StringUtils.isBlank(sample.getCode())) {
handleSampleCode(entrust, sample); handleSampleCode(entrust, sample);
...@@ -447,6 +448,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -447,6 +448,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
sample.setId(IdWorker.getId()); sample.setId(IdWorker.getId());
sample.setOrderBy(incNum); sample.setOrderBy(incNum);
saveSampleList.add(sample); saveSampleList.add(sample);
logger.error("添加了编号为【{}】的【{}】样品。", sample.getCode(), sample.getName());
// 样品的顺序号,为了插入标样方便设置
incNum += 10; incNum += 10;
List<EntrustSampleItem> experiments = sampleDTO.getItemList(); List<EntrustSampleItem> experiments = sampleDTO.getItemList();
if (CollectionUtils.isEmpty(experiments)) { if (CollectionUtils.isEmpty(experiments)) {
...@@ -628,9 +631,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -628,9 +631,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public boolean editEntrust(EntrustDTO entrustDTO, boolean isSubmit, Account account) { public boolean editEntrust(EntrustDTO entrustDTO, boolean isSubmit, Account account) {
if (null == entrustDTO.getId()) { final Long entrustId = entrustDTO.getId();
return false; RestAssert.fail(Objects.isNull(entrustId), "委托编号为空");
}
List<EntrustSampleDTO> sampleList = entrustDTO.getSampleDTOList(); List<EntrustSampleDTO> sampleList = entrustDTO.getSampleDTOList();
RestAssert.fail(CollectionUtils.isEmpty(sampleList), "委托样品为空"); RestAssert.fail(CollectionUtils.isEmpty(sampleList), "委托样品为空");
RestAssert.fail(sampleList.stream().map(EntrustSampleDTO::getName).distinct().count() > 1, "一个委托只能下同一种样品!"); RestAssert.fail(sampleList.stream().map(EntrustSampleDTO::getName).distinct().count() > 1, "一个委托只能下同一种样品!");
...@@ -648,9 +650,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -648,9 +650,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
RestAssert.fail(sampleNames.size() > 1, "一个委托只能下同一种样品!"); RestAssert.fail(sampleNames.size() > 1, "一个委托只能下同一种样品!");
Entrust entrust = entrustDTO.convert(Entrust.class); Entrust entrust = entrustDTO.convert(Entrust.class);
// 保存样品名字至委托备用
entrust.setSampleName(sampleList.get(0).getName()); entrust.setSampleName(sampleList.get(0).getName());
if (updateById(entrust)) { if (updateById(entrust)) {
final Long entrustId = entrust.getId();
List<EntrustSample> updateSampleList = new ArrayList<>(); List<EntrustSample> updateSampleList = new ArrayList<>();
List<EntrustSample> saveSampleList = new ArrayList<>(); List<EntrustSample> saveSampleList = new ArrayList<>();
...@@ -679,8 +682,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -679,8 +682,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
if (isInsert) { if (isInsert) {
saveSampleList.add(sample); saveSampleList.add(sample);
logger.error("添加了编号为【{}】的【{}】样品", sample.getCode(), sample.getName());
} else { } else {
updateSampleList.add(sample); updateSampleList.add(sample);
logger.error("修改了编号为【{}】的【{}】样品", sample.getCode(), sample.getName());
} }
if (StringUtils.isNotBlank(sample.getCode())) { if (StringUtils.isNotBlank(sample.getCode())) {
...@@ -704,6 +709,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -704,6 +709,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
} }
} }
logger.error("样品添加{}个,修改{}个,总共前端提交{}个。", saveSampleList.size(), updateSampleList.size(), sampleList.size());
if (CollectionUtils.isNotEmpty(updateSampleList)) { if (CollectionUtils.isNotEmpty(updateSampleList)) {
entrustSampleService.updateBatchById(updateSampleList); entrustSampleService.updateBatchById(updateSampleList);
} }
...@@ -715,10 +722,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -715,10 +722,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
entrustSampleItemService.saveBatch(saveItemList); entrustSampleItemService.saveBatch(saveItemList);
} }
entrustSampleItemService.updateItemComposeJudgeByEntrustId(entrustId);
CompletableFuture.runAsync(() -> { CompletableFuture.runAsync(() -> {
// 委托费用 // 更新委托下,检测项目组合标记
entrustSampleItemService.updateItemComposeJudgeByEntrustId(entrustId);
// 委托费用计算
calTotalFee(entrustId); calTotalFee(entrustId);
}); });
} }
...@@ -988,16 +995,21 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -988,16 +995,21 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
if (!isUpdateSampleInfo) { if (!isUpdateSampleInfo) {
return true; return true;
} }
// 异步修改样品信息及其样品附属信息
CompletableFuture.runAsync(() -> { logger.error("进入异步执行样品和检测项目状态修改流程......");
entrustSampleService.updateSampleNextFlowInfo(entrust, nextFlowStatus, account); entrustSampleService.updateSampleNextFlowInfo(entrust, nextFlowStatus, account);
});
// 修改委托状态信息 // 修改委托状态信息
entrust.setStatus(nextStatus); entrust.setStatus(nextStatus);
entrust.setProgress(nextStatus); entrust.setProgress(nextStatus);
entrust.setFlowStatus(nextFlowStatus.getName()); entrust.setFlowStatus(nextFlowStatus.getName());
updateById(entrust); updateById(entrust);
// 对于质量判定后的消息提醒,不再此处发送
if (nextFlowValue > 13) {
return true;
}
// 若为特殊需求,必须要走评审 // 若为特殊需求,必须要走评审
String uri = ""; String uri = "";
// 是否特殊需求 // 是否特殊需求
...@@ -1559,6 +1571,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -1559,6 +1571,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public boolean submitToNextFlow(Long[] ids, Account account) { public boolean submitToNextFlow(Long[] ids, Account account) {
logger.error("进入提交委托流程......");
RestAssert.fail(null == ids || 0 == ids.length, "请选择要提交的委托!"); RestAssert.fail(null == ids || 0 == ids.length, "请选择要提交的委托!");
List<Entrust> entrustList = getBatchIds(Arrays.asList(ids)); List<Entrust> entrustList = getBatchIds(Arrays.asList(ids));
List<Long> specialIds = new ArrayList<>(), normalIds = new ArrayList<>(); List<Long> specialIds = new ArrayList<>(), normalIds = new ArrayList<>();
......
...@@ -21,7 +21,7 @@ spring: ...@@ -21,7 +21,7 @@ spring:
cloud: cloud:
consul: localhost consul: localhost
rabbitmq: rabbitmq:
host: 124.70.150.247 host: 192.168.0.140
port: 5672 port: 5672
username: mqbase username: mqbase
password: mqb123#@$5 password: mqb123#@$5
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment