|
@@ -318,7 +318,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*修改计量期的审批状态=待审批*/
|
|
|
contractMeterPeriodService.update(Wrappers.<ContractMeterPeriod>lambdaUpdate().set(ContractMeterPeriod::getApproveStatus, 1).eq(ContractMeterPeriod::getId, approvalDTO.getPeriodId()));
|
|
|
-
|
|
|
+ //修改报表状态,如果不存在则创建报表,因为任务要查看报表
|
|
|
+ this.updateStatement(Long.valueOf(approvalDTO.getPeriodId()),1,1);
|
|
|
return R.data(200, aopParamsSet, "操作成功");
|
|
|
}
|
|
|
|
|
@@ -383,7 +384,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*修改计量期的审批状态=待审批*/
|
|
|
periodService.update(Wrappers.<MeterPeriod>lambdaUpdate().set(MeterPeriod::getApproveStatus, 1).eq(MeterPeriod::getId, approvalDTO.getPeriodId()));
|
|
|
-
|
|
|
+ //修改报表状态,如果不存在则创建报表,因为任务要查看报表
|
|
|
+ this.updateStatement(Long.valueOf(approvalDTO.getPeriodId()),2,1);
|
|
|
return R.data(200, aopParamsSet, "操作成功");
|
|
|
}
|
|
|
|
|
@@ -448,7 +450,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*修改计量期的审批状态=待审批*/
|
|
|
periodService.update(Wrappers.<MeterPeriod>lambdaUpdate().set(MeterPeriod::getApproveStatus, 1).eq(MeterPeriod::getId, approvalDTO.getPeriodId()));
|
|
|
-
|
|
|
+ //修改报表状态,如果不存在则创建报表,因为任务要查看报表
|
|
|
+ this.updateStatement(Long.valueOf(approvalDTO.getPeriodId()),3,1);
|
|
|
return R.data(200, aopParamsSet, "操作成功");
|
|
|
}
|
|
|
} else if (approvalDTO.getType().equals(4)) {
|
|
@@ -841,7 +844,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*修改计量期的审批状态=未上报*/
|
|
|
contractMeterPeriodService.update(Wrappers.<ContractMeterPeriod>lambdaUpdate().set(ContractMeterPeriod::getApproveStatus, 0).eq(ContractMeterPeriod::getId, periodId));
|
|
|
-
|
|
|
+ //修改报表状态,如果不存在则创建报表,因为任务要查看报表
|
|
|
+ this.updateStatement(Long.valueOf(periodId),1,0);
|
|
|
try {
|
|
|
//修改所有复制数据id,并且同步修改中间表id,用于废除预览
|
|
|
List<MiddleMeterApplyTask> meterApplyTaskList = middleMeterApplyServiceTask.list(new LambdaQueryWrapper<MiddleMeterApplyTask>().eq(MiddleMeterApplyTask::getContractPeriodId, periodId));
|
|
@@ -918,7 +922,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*修改计量期的审批状态=未上报*/
|
|
|
periodService.update(Wrappers.<MeterPeriod>lambdaUpdate().set(MeterPeriod::getApproveStatus, 0).eq(MeterPeriod::getId, periodId));
|
|
|
-
|
|
|
+ //修改报表状态,如果不存在则创建报表,因为任务要查看报表
|
|
|
+ this.updateStatement(Long.valueOf(periodId),2,0);
|
|
|
/*删除业务复制数据taskVO*/
|
|
|
try {
|
|
|
jdbcTemplate.execute("DELETE FROM s_material_meter_form_task WHERE meter_period_id = '" + periodId + "' AND task_id = " + taskRepealDTO.getTaskId());
|
|
@@ -946,7 +951,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*修改计量期的审批状态=未上报*/
|
|
|
periodService.update(Wrappers.<MeterPeriod>lambdaUpdate().set(MeterPeriod::getApproveStatus, 0).eq(MeterPeriod::getId, periodId));
|
|
|
-
|
|
|
+ //修改报表状态,如果不存在则创建报表,因为任务要查看报表
|
|
|
+ this.updateStatement(Long.valueOf(periodId),3,0);
|
|
|
/*删除业务复制数据taskVO*/
|
|
|
try {
|
|
|
jdbcTemplate.execute("DELETE FROM s_start_pay_meter_form_task WHERE meter_period_id = '" + periodId + "' AND task_id = " + taskRepealDTO.getTaskId());
|
|
@@ -1124,6 +1130,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*获取用户信息Map*/
|
|
|
Map<Long, String> nameMap = jdbcTemplate.query("select id,name from blade_user where is_deleted = 0", new BeanPropertyRowMapper<>(User.class)).stream().collect(Collectors.toMap(User::getId, User::getName, (key1, key2) -> key1));
|
|
|
+ /*获取预设流程Map*/
|
|
|
+ Map<Long, String> flowMap = jdbcTemplate.query("select id,fixed_flow_name from u_fixed_flow where is_deleted = 0 and contract_id = "+dto.getContractId(), new BeanPropertyRowMapper<>(FixedFlow.class)).stream().collect(Collectors.toMap(FixedFlow::getId, FixedFlow::getFixedFlowName, (key1, key2) -> key1));
|
|
|
|
|
|
/*解析page分页数据*/
|
|
|
IPage<TaskPageVO> page = new Page<>(current, size);
|
|
@@ -1141,6 +1149,7 @@ public class TaskController extends BladeController {
|
|
|
vo.setTaskDesc(task.getTaskContent());
|
|
|
vo.setTaskReportUserName(nameMap.get(Long.parseLong(task.getReportUser())));
|
|
|
vo.setFixedFlowId(ObjectUtil.isNotEmpty(task.getFixedFlowId()) ? task.getFixedFlowId().equals(0L) ? null : task.getFixedFlowId() : null);
|
|
|
+ vo.setFixedFlowName(vo.getFixedFlowId() == null ? "自定义流程" : flowMap.get(vo.getFixedFlowId()));
|
|
|
List<TaskParallel> taskParallelList = finalTaskParallelGroupMap.get(task.getProcessInstanceId());
|
|
|
if (taskParallelList != null && taskParallelList.size() > 0) {
|
|
|
List<String> names = taskParallelList.stream().map(TaskParallel::getTaskUserName).collect(Collectors.toList());
|
|
@@ -1584,6 +1593,7 @@ public class TaskController extends BladeController {
|
|
|
certificate.setStartDate(period.getStartDate());
|
|
|
certificate.setEndDate(period.getEndDate());
|
|
|
certificate.setPrintDate(period.getFormPrintDate());
|
|
|
+ certificate.setApproveStatus(1);
|
|
|
interimPayCertificateService.save(certificate);
|
|
|
//10代表不走电签,其他都会自动审批
|
|
|
this.calculate(certificate.getId() + "", 0, 10);
|
|
@@ -1608,6 +1618,7 @@ public class TaskController extends BladeController {
|
|
|
statement.setStatementName(period.getPeriodName() + "报表");
|
|
|
statement.setStatementPeriod(period.getPeriodName());
|
|
|
statement.setPrintDate(period.getFormPrintDate());
|
|
|
+ statement.setApproveStatus(1);
|
|
|
materialStartStatementService.save(statement);
|
|
|
//10代表不走电签,其他都会自动审批
|
|
|
this.calculate(statement.getId() + "", 1, 10);
|
|
@@ -1616,6 +1627,68 @@ public class TaskController extends BladeController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 根据当前的计量期,查看是否存在对应报表,不存在则新增,存在则修改状态为已上报
|
|
|
+ *
|
|
|
+ * @param
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private void updateStatement(Long periodId,Integer type,Integer status) {
|
|
|
+ if (type == 1) {
|
|
|
+ List<InterimPayCertificate> list = interimPayCertificateService.list(new LambdaQueryWrapper<InterimPayCertificate>().eq(InterimPayCertificate::getContractPeriodId, periodId));
|
|
|
+ if (list.size() > 1) {
|
|
|
+ throw new ServiceException("当前计量期获取出多条对应报表");
|
|
|
+ } else if (list.size() == 1) {
|
|
|
+ interimPayCertificateService.update(new LambdaUpdateWrapper<InterimPayCertificate>()
|
|
|
+ .eq(InterimPayCertificate::getId,list.get(0).getId())
|
|
|
+ .set(InterimPayCertificate::getApproveStatus,status));
|
|
|
+ } else {
|
|
|
+ ContractMeterPeriod period = contractMeterPeriodService.getById(periodId);
|
|
|
+ //新增报表
|
|
|
+ InterimPayCertificate certificate = new InterimPayCertificate();
|
|
|
+ certificate.setId(SnowFlakeUtil.getId());
|
|
|
+ certificate.setProjectId(period.getProjectId());
|
|
|
+ certificate.setContractId(period.getContractId());
|
|
|
+ certificate.setContractPeriodId(period.getId());
|
|
|
+ certificate.setPeriodNumber(period.getPeriodNumber());
|
|
|
+ certificate.setStartDate(period.getStartDate());
|
|
|
+ certificate.setEndDate(period.getEndDate());
|
|
|
+ certificate.setPrintDate(period.getFormPrintDate());
|
|
|
+ certificate.setApproveStatus(status);
|
|
|
+ interimPayCertificateService.save(certificate);
|
|
|
+ //10代表不走电签,其他都会自动审批
|
|
|
+ this.calculate(certificate.getId() + "", 0, 10);
|
|
|
+
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ List<MaterialStartStatement> list = materialStartStatementService.list(new LambdaQueryWrapper<MaterialStartStatement>().eq(MaterialStartStatement::getMeterPeriodId, periodId));
|
|
|
+ if (list.size() > 1) {
|
|
|
+ throw new ServiceException("当前计量期获取出多条对应报表");
|
|
|
+ } else if (list.size() == 1) {
|
|
|
+ materialStartStatementService.update(new LambdaUpdateWrapper<MaterialStartStatement>()
|
|
|
+ .eq(MaterialStartStatement::getId,list.get(0).getId())
|
|
|
+ .set(MaterialStartStatement::getApproveStatus,status));
|
|
|
+ } else {
|
|
|
+ MeterPeriod period = meterPeriodMapper.selectById(periodId);
|
|
|
+ //新增报表
|
|
|
+ MaterialStartStatement statement = new MaterialStartStatement();
|
|
|
+ statement.setId(SnowFlakeUtil.getId());
|
|
|
+ statement.setPeriodNumber(period.getPeriodNumber());
|
|
|
+ statement.setProjectId(period.getProjectId());
|
|
|
+ statement.setContractId(period.getContractId());
|
|
|
+ statement.setMeterPeriodId(period.getId());
|
|
|
+ statement.setType(type == 2 ? 1 : 2);
|
|
|
+ statement.setStatementName(period.getPeriodName() + "报表");
|
|
|
+ statement.setStatementPeriod(period.getPeriodName());
|
|
|
+ statement.setPrintDate(period.getFormPrintDate());
|
|
|
+ statement.setApproveStatus(status);
|
|
|
+ materialStartStatementService.save(statement);
|
|
|
+ //10代表不走电签,其他都会自动审批
|
|
|
+ this.calculate(statement.getId() + "", 1, 10);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@GetMapping("/data/detail")
|
|
|
@ApiOperationSupport(order = 6)
|
|
|
@ApiOperation(value = "任务数据信息详情", notes = "传入任务id,数据dataId")
|