|
@@ -1,6 +1,7 @@
|
|
|
package com.dayou.workflow.handler;
|
|
|
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
@@ -17,13 +18,16 @@ import com.dayou.enums.workflow.WorkflowNodeEnum;
|
|
|
import com.dayou.mapper.AssetsMapper;
|
|
|
import com.dayou.mapper.DepartmentMapper;
|
|
|
import com.dayou.mapper.WorkFlowNodeInstanceMapper;
|
|
|
+import com.dayou.service.IAssetsProductionService;
|
|
|
import com.dayou.service.IUserPostService;
|
|
|
import com.dayou.service.workflow.IWorkFlowNodeInstanceService;
|
|
|
import com.dayou.service.workflow.IWorkNodeService;
|
|
|
+import com.dayou.service.workflow.IWorkTaskRecordService;
|
|
|
import com.dayou.workflow.config.WorkNodeProcessable;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
+import java.time.LocalDate;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
@@ -52,6 +56,12 @@ public class AssetsNodeHandler extends WorkNodeProcessable {
|
|
|
@Autowired
|
|
|
private IWorkFlowNodeInstanceService workFlowNodeInstanceService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IAssetsProductionService assetsProductionService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IWorkTaskRecordService workTaskRecordService;
|
|
|
+
|
|
|
@Override
|
|
|
public boolean forward(WorkNodeCommit workNodeCommit) {
|
|
|
WorkFlowNodeInstance currentInstanceNode = workFlowNodeInstanceMapper.getById(workNodeCommit.getInstanceNodeId());
|
|
@@ -81,9 +91,18 @@ public class AssetsNodeHandler extends WorkNodeProcessable {
|
|
|
.eq(BaseEntity::getId, currentInstanceNode.getNodeId()).eq(BaseEntity::getDeleted, Boolean.FALSE)).getCode();
|
|
|
WorkflowNodeEnum workflowNodeEnum = WorkflowNodeEnum.valueOf(code);
|
|
|
|
|
|
- if (workflowNodeEnum.equals(WorkflowNodeEnum.WRITE_STATEMENT)){
|
|
|
+ if (workflowNodeEnum.equals(WorkflowNodeEnum.GENERATE_STATEMENT)){
|
|
|
for (String businessSubId :workNodeCommit.getReportNos()){
|
|
|
- addNextInstanceNode(currentInstanceNode,nextWorkNode, workNodeCommit.getNextHandlerId(),businessSubId,null);
|
|
|
+ AssetsProduction assetsProduction = assetsProductionService.getOne(new LambdaQueryWrapper<AssetsProduction>().select(AssetsProduction::getCreateProductionDate).eq(AssetsProduction::getProductionNo, businessSubId).eq(BaseEntity::getDeleted, Boolean.FALSE));
|
|
|
+// // 产品出具日期是否为null,为null说明还没撰写产品的信息
|
|
|
+// if (ObjectUtil.isNotNull(assetsProduction)){
|
|
|
+ addNextInstanceNode(currentInstanceNode,nextWorkNode, workNodeCommit.getNextHandlerId(),businessSubId,null);
|
|
|
+// }else {
|
|
|
+// workFlowNodeInstanceService.save(currentInstanceNode);
|
|
|
+// WorkTaskRecord workTaskRecord = workTaskRecordService.getOne(new LambdaQueryWrapper<WorkTaskRecord>().select(WorkTaskRecord::getHandlerId,WorkTaskRecord::getTaskId).eq(WorkTaskRecord::getInstanceId,workNodeCommit.getInstanceNodeId()));
|
|
|
+// workTaskRecord.setInstanceId(currentInstanceNode.getId());
|
|
|
+// workTaskRecordService.save(workTaskRecord);
|
|
|
+// }
|
|
|
}
|
|
|
}
|
|
|
else if(workflowNodeEnum.equals(WorkflowNodeEnum.WRITE_REPORT) || workflowNodeEnum.equals(WorkflowNodeEnum.WRITE_LETTER)){
|