|
@@ -34,6 +34,9 @@ import org.springblade.core.tool.utils.ObjectUtil;
|
|
|
import org.springblade.feign.ArchiveFileTaskClient;
|
|
|
import org.springblade.manager.entity.ContractInfo;
|
|
|
import org.springblade.manager.entity.ContractRelationJlyz;
|
|
|
+import org.springblade.manager.entity.WbsTreePrivate;
|
|
|
+import org.springblade.manager.feign.FormulaClient;
|
|
|
+import org.springblade.manager.vo.ReportResult;
|
|
|
import org.springblade.meter.dto.*;
|
|
|
import org.springblade.meter.entity.*;
|
|
|
import org.springblade.meter.mapper.MiddleMeterApplyMapper;
|
|
@@ -89,6 +92,9 @@ public class TaskController extends BladeController {
|
|
|
private final ChangeTokenInventoryServiceImpl changeTokenInventoryService;
|
|
|
private final ChangeTokenInventoryServiceTaskImpl changeTokenInventoryServiceTask;
|
|
|
|
|
|
+ // 计量公式入口
|
|
|
+ private final FormulaClient formulaClient;
|
|
|
+
|
|
|
@GetMapping("/name")
|
|
|
@ApiOperationSupport(order = 1)
|
|
|
@ApiOperation(value = "获取任务名称", notes = "传入合同段contractId、期数id(变更令传勾选的id字符串英文逗号拼接)、type=1(中间计量申请)、=2(材料计量单)、3=(开工预付款计量单)、=4(变更令)")
|
|
@@ -2021,9 +2027,8 @@ public class TaskController extends BladeController {
|
|
|
|
|
|
/*最终审批轮次*/
|
|
|
if (isCurrentUserLastApprove) {
|
|
|
-
|
|
|
//TODO 重新生成报表,执行电签(电签失败直接return或抛出异常,不修改下方状态)
|
|
|
-
|
|
|
+ meterPdfInfo(task);
|
|
|
/*复制业务数据状态>主任务状态>替换数据*/
|
|
|
updateCopyDataApproveStatus(task, dto).updateTaskStatus(task).displace(task, dto);
|
|
|
}
|
|
@@ -2036,27 +2041,30 @@ public class TaskController extends BladeController {
|
|
|
String param = taskParallel.getTaskUser() + "," + task.getProjectId() + "," + task.getContractId();
|
|
|
aopParamsSet.add(param);
|
|
|
}
|
|
|
-
|
|
|
- // 判断是否为审批 最后一人 如果是 即生成 pdf 并开始电签
|
|
|
- /*当前审批轮次*/
|
|
|
- String sql_3 = "SELECT * FROM u_task_parallel WHERE status=1 and process_instance_id = ? ORDER BY sort";
|
|
|
- List<TaskParallel> lastTaskParallels = jdbcTemplate.query(sql_3, new Object[]{task.getProcessInstanceId()}, new BeanPropertyRowMapper<>(TaskParallel.class));
|
|
|
- if(lastTaskParallels == null || lastTaskParallels.size() == 0 ){
|
|
|
- meterPdfInfo(task);
|
|
|
- }
|
|
|
return R.data(200, aopParamsSet, "操作成功");
|
|
|
}
|
|
|
-
|
|
|
return R.fail("操作失败");
|
|
|
}
|
|
|
|
|
|
|
|
|
// pdf 生成
|
|
|
-
|
|
|
private boolean meterPdfInfo(Task task) {
|
|
|
+ // 材料生成pdf
|
|
|
+ if(task.getType()==2){
|
|
|
+ // 获取填报数据
|
|
|
+
|
|
|
+ // 调用公式
|
|
|
+ List<ReportResult> reportResults = formulaClient.formulaExecute3(Long.parseLong(task.getContractId()), Long.parseLong(task.getFormDataId()),1);
|
|
|
+ //生成pdf
|
|
|
+ String fen ="SELECT * from m_wbs_tree_private WHERE project_id='"+task.getProjectId()+"' and wbs_type=3 and parent_id=(SELECT id from m_wbs_tree_private where project_id='"+task.getProjectId()+"' and is_deleted=0 and type=1 and wbs_type=3 and node_type=31)" +
|
|
|
+ "AND type = 2 AND status = 1 and is_deleted= 0 ORDER BY sort";
|
|
|
+ WbsTreePrivate wbsTreePrivate = jdbcTemplate.query(fen, new BeanPropertyRowMapper<>(WbsTreePrivate.class)).stream().findAny().orElse(null);;
|
|
|
|
|
|
|
|
|
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
return true;
|
|
|
}
|