|
@@ -42,6 +42,7 @@ import org.springblade.manager.feign.ProjectClient;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.scheduling.annotation.Async;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
@@ -153,7 +154,7 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
return taskApprovalVO;
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
+ @Override
|
|
|
public TaskApprovalVO queryBusinessData(TaskApprovalVO taskApprovalVO) {
|
|
|
switch (taskApprovalVO.getApprovalType()){
|
|
|
case 1:
|
|
@@ -282,33 +283,35 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
return this.baseMapper.queryBatchList(projectId, contract);
|
|
|
}
|
|
|
|
|
|
+ @Async
|
|
|
@Override
|
|
|
- public Boolean batchCompleteApprovalTask(List<TaskApprovalVO> taskApprovalVOS) {
|
|
|
+ public void batchCompleteApprovalTask(List<TaskApprovalVO> taskApprovalVOS) {
|
|
|
+ List<String> taskIds = taskApprovalVOS.stream().map(TaskApprovalVO::getParallelProcessInstanceId).distinct().collect(Collectors.toList());
|
|
|
+
|
|
|
long batch = this.taskBatchService.count(Wrappers.<TaskBatch>lambdaQuery().eq(TaskBatch::getCreateUser, AuthUtil.getUserId()));
|
|
|
if(batch > 0){
|
|
|
- List<String> taskIds = taskApprovalVOS.stream().map(TaskApprovalVO::getParallelProcessInstanceId).distinct().collect(Collectors.toList());
|
|
|
-
|
|
|
//修改电签状态
|
|
|
this.taskParallelService.update(Wrappers.<TaskParallel>lambdaUpdate()
|
|
|
.set(TaskParallel::getEVisaContent, "当前等待电签的批次较多,请等待几分钟后刷新页面查看........")
|
|
|
.in(TaskParallel::getParallelProcessInstanceId, taskIds));
|
|
|
//保存批次
|
|
|
this.taskBatchService.save(new TaskBatch(null, JSONObject.toJSONString(taskApprovalVOS)));
|
|
|
-
|
|
|
- return true;
|
|
|
} else {
|
|
|
+ //修改电签状态
|
|
|
+ this.taskParallelService.update(Wrappers.<TaskParallel>lambdaUpdate()
|
|
|
+ .set(TaskParallel::getEVisaContent, "正在电签,请稍后查看........")
|
|
|
+ .in(TaskParallel::getParallelProcessInstanceId, taskIds));
|
|
|
+
|
|
|
//保存批次
|
|
|
TaskBatch taskBatch = new TaskBatch(null, JSONObject.toJSONString(taskApprovalVOS));
|
|
|
this.taskBatchService.save(taskBatch);
|
|
|
|
|
|
//执行电签,结束后检查在执行是否有新的等待批次
|
|
|
this.checkIsExsitTaskBatch(taskApprovalVOS, taskBatch.getId().toString());
|
|
|
- return true;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- @Async
|
|
|
- public void checkIsExsitTaskBatch(List<TaskApprovalVO> taskApprovalVOS, String batchId){
|
|
|
+ private void checkIsExsitTaskBatch(List<TaskApprovalVO> taskApprovalVOS, String batchId){
|
|
|
boolean isContinue = true;
|
|
|
while (isContinue){
|
|
|
logger.info("【任务审核】当前批次开始电签。批次ID:" + batchId);
|
|
@@ -748,7 +751,8 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
/**
|
|
|
* 施工日志等
|
|
|
*/
|
|
|
- private void updateContractLogBusinessDataStatus(String formDataId, Integer status, String newFileUrl){
|
|
|
+ @Transactional
|
|
|
+ public void updateContractLogBusinessDataStatus(String formDataId, Integer status, String newFileUrl){
|
|
|
this.contractLogService.update(Wrappers.<ContractLog>lambdaUpdate().set(ContractLog::getStatus, status)
|
|
|
.set(ContractLog::getEVisaPdfUrl, newFileUrl)
|
|
|
.set(ContractLog::getAuditUserIdAndName, null)
|
|
@@ -761,7 +765,8 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
/**
|
|
|
* 资料填报
|
|
|
*/
|
|
|
- private void updateWriteBusinessDataStatus(String formDataId, Integer status, String newFileUrl){
|
|
|
+ @Transactional
|
|
|
+ public void updateWriteBusinessDataStatus(String formDataId, Integer status, String newFileUrl){
|
|
|
this.informationQueryService.update(Wrappers.<InformationQuery>lambdaUpdate().set(InformationQuery::getStatus, status)
|
|
|
.set(InformationQuery::getEVisaPdfUrl, newFileUrl)
|
|
|
.set(InformationQuery::getReportNumber, null)
|
|
@@ -774,7 +779,8 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
/**
|
|
|
* 工程文件
|
|
|
*/
|
|
|
- private void updateArchiveFileBusinessDataStatus(String formDataId, Integer status, String newFileUrl){
|
|
|
+ @Transactional
|
|
|
+ public void updateArchiveFileBusinessDataStatus(String formDataId, Integer status, String newFileUrl){
|
|
|
LambdaUpdateWrapper<ArchiveFile> wrapper = Wrappers.lambdaUpdate();
|
|
|
//更改状态,更改电签文件信息
|
|
|
wrapper.set(ArchiveFile::getStatus, status)
|