Browse Source

计量支付项相关

Signed-off-by: liuyc <56808083@qq.com>
liuyc 1 year ago
parent
commit
9a7d1707f2

+ 88 - 27
blade-service/blade-meter/src/main/java/org/springblade/meter/controller/TaskController.java

@@ -11,6 +11,7 @@ import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.lang.time.DateUtils;
+import org.springblade.business.entity.FixedFlowLink;
 import org.springblade.business.entity.Task;
 import org.springblade.business.entity.TaskParallel;
 import org.springblade.business.feign.TaskClient;
@@ -27,6 +28,7 @@ import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
 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.meter.dto.*;
@@ -59,6 +61,7 @@ public class TaskController extends BladeController {
     private final JdbcTemplate jdbcTemplate;
     private final BladeRedis bladeRedis;
     private final TaskClient taskClient;
+    private final ArchiveFileTaskClient archiveFileTaskClient;
     private final ContractMeterPeriodServiceImpl contractMeterPeriodService;
     private final MeterPeriodServiceImpl periodService;
     private final MiddleMeterApplyServiceImpl middleMeterApplyService;
@@ -120,7 +123,7 @@ public class TaskController extends BladeController {
 
     @PostMapping("/report")
     @ApiOperationSupport(order = 2)
-    @ApiOperation(value = "任务上报", notes = "(中期计量申请、材料计量单、开工预付款计量单)传入MeterApprovalDTO")
+    @ApiOperation(value = "任务上报", notes = "(中期计量申请、材料计量单、开工预付款计量单、变更令)传入MeterApprovalDTO")
     @PushMessage(clientId = ClientIdConstant.METER_CLIENT_ID)
     @Transactional(rollbackFor = Exception.class)
     public R<Object> approval(@RequestBody MeterApprovalDTO approvalDTO) {
@@ -153,6 +156,10 @@ public class TaskController extends BladeController {
                 List<MiddleMeterApply> middleMeterApplies = middleMeterApplyService.getBaseMapper().selectList(Wrappers.<MiddleMeterApply>lambdaQuery()
                         .eq(MiddleMeterApply::getContractPeriodId, approvalDTO.getPeriodId()));
 
+                if (middleMeterApplies.size() <= 0) {
+                    throw new ServiceException("当前期数不存在中间计量单,操作失败");
+                }
+
                 /*判断是否都是未上报、或已废除*/
                 long countMiddleMeterApplies = middleMeterApplies.stream().filter(f -> !Arrays.asList(0, 3).contains(f.getApproveStatus())).count();
                 if (countMiddleMeterApplies > 0) {
@@ -166,6 +173,10 @@ public class TaskController extends BladeController {
                         .eq(InventoryFormApply::getContractPeriodId, approvalDTO.getPeriodId()));
                 List<Long> inventoryFormAppliesIds = inventoryFormApplies.stream().map(InventoryFormApply::getId).collect(Collectors.toList());
 
+                if (inventoryFormAppliesIds.size() <= 0) {
+                    throw new ServiceException("当前期数不存在分解清单,操作失败");
+                }
+
                 /*判断是否都是未上报、或已废除*/
                 long countInventoryFormApplies = inventoryFormApplies.stream().filter(f -> !Arrays.asList(0, 3).contains(f.getApproveStatus())).count();
                 if (countInventoryFormApplies > 0) {
@@ -204,7 +215,7 @@ public class TaskController extends BladeController {
                     try {
                         this.buildTaskInfo(taskId, approvalDTO, aopParamsSet, 1);
                     } catch (Exception e) {
-                        throw new ServiceException("创建审批任务异常,操作失败");
+                        throw new ServiceException("创建审批任务异常,操作失败" + e.getMessage());
                     }
 
                     /*修改数据源状态为=待审批*/
@@ -237,6 +248,10 @@ public class TaskController extends BladeController {
                 List<MaterialMeterForm> materialMeterForms = materialMeterFormService.getBaseMapper().selectList(Wrappers.<MaterialMeterForm>lambdaQuery()
                         .eq(MaterialMeterForm::getMeterPeriodId, approvalDTO.getPeriodId()));
 
+                if (materialMeterForms.size() <= 0) {
+                    throw new ServiceException("当前期数不存在材料计量单,操作失败");
+                }
+
                 /*判断是否都是未上报、或已废除*/
                 long countMaterialMeterForms = materialMeterForms.stream().filter(f -> !Arrays.asList(0, 3).contains(f.getApproveStatus())).count();
                 if (countMaterialMeterForms > 0) {
@@ -270,7 +285,7 @@ public class TaskController extends BladeController {
                     try {
                         this.buildTaskInfo(taskId, approvalDTO, aopParamsSet, 2);
                     } catch (Exception e) {
-                        throw new ServiceException("创建审批任务异常,操作失败");
+                        throw new ServiceException("创建审批任务异常,操作失败" + e.getMessage());
                     }
 
                     /*修改数据源状态为=待审批*/
@@ -298,6 +313,10 @@ public class TaskController extends BladeController {
                 List<StartPayMeterForm> startPayMeterForms = startPayMeterFormService.getBaseMapper().selectList(Wrappers.<StartPayMeterForm>lambdaQuery()
                         .eq(StartPayMeterForm::getMeterPeriodId, approvalDTO.getPeriodId()));
 
+                if (startPayMeterForms.size() <= 0) {
+                    throw new ServiceException("当前期数不存在开工预付款计量单,操作失败");
+                }
+
                 /*判断是否都是未上报、或已废除*/
                 long countStartPayMeterForms = startPayMeterForms.stream().filter(f -> !Arrays.asList(0, 3).contains(f.getApproveStatus())).count();
                 if (countStartPayMeterForms > 0) {
@@ -331,7 +350,7 @@ public class TaskController extends BladeController {
                     try {
                         this.buildTaskInfo(taskId, approvalDTO, aopParamsSet, 3);
                     } catch (Exception e) {
-                        throw new ServiceException("创建审批任务异常,操作失败");
+                        throw new ServiceException("创建审批任务异常,操作失败" + e.getMessage());
                     }
 
                     /*修改数据源状态为=待审批*/
@@ -361,7 +380,7 @@ public class TaskController extends BladeController {
                     if (changeTokenForm != null) {
                         /*判断是否是未上报、或已废除*/
                         if (!Arrays.asList(0, 3).contains(changeTokenForm.getApproveStatus())) {
-                            throw new ServiceException("当前变更令已上报,操作失败");
+                            throw new ServiceException("【" + changeTokenForm.getChangeName() + "】变更令已上报,操作失败");
                         }
                         /*获取变更令下的计量单元部位信息*/
                         List<ChangeTokenMeter> changeTokenMeters = changeTokenMeterService.getBaseMapper().selectList(Wrappers.<ChangeTokenMeter>lambdaQuery().eq(ChangeTokenMeter::getChangeTokenId, changeTokenForm.getId()));
@@ -370,6 +389,10 @@ public class TaskController extends BladeController {
                             List<ChangeTokenInventory> changeTokenInventories = changeTokenInventoryService.getBaseMapper().selectList(Wrappers.<ChangeTokenInventory>lambdaQuery()
                                     .eq(ChangeTokenInventory::getChangeTokenId, changeTokenForm.getId()));
 
+                            if (changeTokenInventories.size() <= 0) {
+                                throw new ServiceException("【" + changeTokenForm.getChangeName() + "】变更令下不存在变更申请清单,操作失败");
+                            }
+
                             /*复制taskVO数据*/
                             ChangeTokenFormTask changeTokenFormTask = BeanUtil.copyProperties(changeTokenForm, ChangeTokenFormTask.class);
                             if (changeTokenFormTask != null) {
@@ -392,7 +415,7 @@ public class TaskController extends BladeController {
                                 try {
                                     this.buildTaskInfo(taskId, approvalDTO, aopParamsSet, 4);
                                 } catch (Exception e) {
-                                    throw new ServiceException("创建审批任务异常,操作失败");
+                                    throw new ServiceException("创建审批任务异常,操作失败" + e.getMessage());
                                 }
 
                                 /*修改变更令原始数据的审批状态=待审批*/
@@ -405,7 +428,11 @@ public class TaskController extends BladeController {
                                         .eq(ChangeTokenFormTask::getTaskId, taskId)
                                         .eq(ChangeTokenFormTask::getId, id));
                             }
+                        } else {
+                            throw new ServiceException("【" + changeTokenForm.getChangeName() + "】变更令下不存在变更申请部位,操作失败");
                         }
+                    } else {
+                        throw new ServiceException("未获取到当前变更令信息,操作失败");
                     }
                 }
                 return R.data(200, aopParamsSet, "操作成功");
@@ -423,8 +450,34 @@ public class TaskController extends BladeController {
      * @param meterTaskType
      */
     private void buildTaskInfo(Long taskId, MeterApprovalDTO approvalDTO, Set<String> aopParamsSet, Integer meterTaskType) {
+        /*预设流程*/
+        String resultString = "";
+        if (ObjectUtil.isNotEmpty(approvalDTO.getFixedFlowId())) {
+            List<FixedFlowLink> fixedFlowLinks = jdbcTemplate.query("select fixed_flow_link_user,fixed_flow_link_sort from u_fixed_flow_link where fixed_flow_id = " + approvalDTO.getFixedFlowId(), new BeanPropertyRowMapper<>(FixedFlowLink.class));
+            if (fixedFlowLinks.size() > 0) {
+                fixedFlowLinks.sort(Comparator.comparingInt(FixedFlowLink::getFixedFlowLinkSort));
+                StringBuilder sortStr = new StringBuilder();
+                for (FixedFlowLink link : fixedFlowLinks) {
+                    sortStr.append(link.getFixedFlowLinkUser()).append(",");
+                }
+                if (sortStr.length() > 0) {
+                    sortStr.deleteCharAt(sortStr.length() - 1);
+                }
+                resultString = sortStr.toString();
+            }
+        }
+        /*检查签字证书信息*/
+        if (ObjectUtil.isNotEmpty(resultString)) {
+            R<Object> objectR = archiveFileTaskClient.checkTaskUserCertificateInfo(resultString);
+            if (objectR.isSuccess()) {
+                approvalDTO.setTaskUserIds(resultString);
+            } else {
+                throw new ServiceException("预设流程任务人没有签字证书信息");
+            }
+        }
+
         if (ObjectUtil.isEmpty(approvalDTO.getTaskUserIds())) {
-            throw new ServiceException("未获取到任务人信息,操作失败");
+            throw new ServiceException("未获取到任务人信息");
         }
 
         /*主任务*/
@@ -1075,7 +1128,7 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(dto.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        String sql = "SELECT meter_task_type,form_data_id,process_instance_id FROM u_task WHERE id = ?";
+        String sql = "SELECT meter_task_type,form_data_id,process_instance_id,contract_id,project_id FROM u_task WHERE id = ?";
         Task task = jdbcTemplate.query(sql, new Object[]{dto.getTaskId()}, new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
@@ -1111,7 +1164,7 @@ public class TaskController extends BladeController {
                         ChangeTokenMeterTask changeTokenMeterTask = changeTokenMeterServiceTask.getBaseMapper().selectById(dto.getPrimaryKeyId());
                         if (changeTokenMeterTask != null) {
                             /*获取清单信息*/
-                            List<ChangeFormVO2> formListCopy = changeTokenFormService.getBaseMapper().getFormListCopyByMeterId(dto.getContractId(), dto.getDataId(), changeTokenMeterTask.getContractMeterId());
+                            List<ChangeFormVO2> formListCopy = changeTokenFormService.getBaseMapper().getFormListCopyByMeterId(Long.parseLong(task.getContractId()), dto.getDataId(), changeTokenMeterTask.getContractMeterId());
                             if (formListCopy.size() > 0) {
                                 BigDecimal currentChangeMoneyAll = formListCopy.stream().map(ChangeFormVO2::getCurrentChangeMoney).reduce(BigDecimal.ZERO, BigDecimal::add); //累加
                                 BigDecimal remainingChangeMoney = tokenFormTask.getChangeMoney().subtract(currentChangeMoneyAll); //相减
@@ -1171,7 +1224,7 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(dto.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
@@ -1185,6 +1238,8 @@ public class TaskController extends BladeController {
                 throw new ServiceException("未获取到清单数据");
             }
 
+            obj.setProjectId(Long.parseLong(task.getProjectId()));
+            obj.setContractId(Long.parseLong(task.getContractId()));
             if (inventoryFormApplyServiceTask.updateById(obj)) {
                 MiddleMeterApplyTask middleMeterApplyTask = middleMeterApplyServiceTask.getById(inventoryFormApplyTask.getMiddleMeterId());
                 if (middleMeterApplyTask != null) {
@@ -1218,7 +1273,7 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(dto.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
@@ -1230,7 +1285,7 @@ public class TaskController extends BladeController {
             }
 
             /*获取数据源分解清单*/
-            List<MeterInventoryVO> formList = middleMeterApplyService.addResolveForm(dto.getContractId(), dto.getNodeId(), dto.getIds());
+            List<MeterInventoryVO> formList = middleMeterApplyService.addResolveForm(Long.parseLong(task.getContractId()), dto.getNodeId(), dto.getIds());
 
             if (formList.size() != 0) {
                 /*复制表taskVO数据*/
@@ -1239,8 +1294,8 @@ public class TaskController extends BladeController {
                     InventoryFormApplyTask formApplyTask = new InventoryFormApplyTask();
                     formApplyTask.setTaskId(dto.getTaskId());
                     formApplyTask.setBusinessDate(middleMeterApplyTask.getBusinessDate());
-                    formApplyTask.setProjectId(dto.getProjectId());
-                    formApplyTask.setContractId(dto.getContractId());
+                    formApplyTask.setProjectId(Long.parseLong(task.getProjectId()));
+                    formApplyTask.setContractId(Long.parseLong(task.getContractId()));
                     formApplyTask.setContractFormId(l.getId());
                     formApplyTask.setMiddleMeterId(dto.getDataId());
                     formApplyTask.setContractPeriodId(dto.getContractPeriodId());
@@ -1284,7 +1339,7 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(obj.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + obj.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + obj.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
@@ -1292,7 +1347,7 @@ public class TaskController extends BladeController {
             if (ObjectUtil.isEmpty(obj.getPrice())) {
                 obj.setPrice(old.getPrice());
             }
-            if (ObjectUtil.isEmpty(obj.getMeterAmount())){
+            if (ObjectUtil.isEmpty(obj.getMeterAmount())) {
                 obj.setMeterAmount(old.getMeterAmount());
             }
 
@@ -1301,6 +1356,8 @@ public class TaskController extends BladeController {
             BigDecimal meterMoney = price.multiply(meterAmount);
             obj.setMeterMoney(meterMoney);
 
+            obj.setProjectId(Long.parseLong(task.getProjectId()));
+            obj.setContractId(Long.parseLong(task.getContractId()));
             if (materialMeterFormServiceTask.updateById(obj)) {
                 return R.success("操作成功");
             }
@@ -1315,10 +1372,12 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(obj.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + obj.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + obj.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
+            obj.setProjectId(Long.parseLong(task.getProjectId()));
+            obj.setContractId(Long.parseLong(task.getContractId()));
             if (startPayMeterFormServiceTask.updateById(obj)) {
                 return R.success("操作成功");
             }
@@ -1333,10 +1392,12 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(obj.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + obj.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + obj.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
+            obj.setProjectId(Long.parseLong(task.getProjectId()));
+            obj.setContractId(Long.parseLong(task.getContractId()));
             if (changeTokenFormServiceTask.updateById(obj)) {
                 return R.success("操作成功");
             }
@@ -1372,7 +1433,7 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(dto.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
@@ -1400,7 +1461,7 @@ public class TaskController extends BladeController {
 
                     /*修改部位变更金额*/
                     ChangeTokenMeterTask changeTokenMeterTask = changeTokenMeterServiceTask.getBaseMapper().selectById(dto.getPrimaryKeyIdMeter());
-                    List<ChangeFormVO2> formListCopyByMeterId = changeTokenFormService.getBaseMapper().getFormListCopyByMeterId(dto.getContractId(), dto.getDataId(), changeTokenMeterTask.getContractMeterId());
+                    List<ChangeFormVO2> formListCopyByMeterId = changeTokenFormService.getBaseMapper().getFormListCopyByMeterId(Long.parseLong(task.getContractId()), dto.getDataId(), changeTokenMeterTask.getContractMeterId());
                     BigDecimal sumOfCurrentChangeMoneyByMeterId = formListCopyByMeterId.stream().map(ChangeFormVO2::getCurrentChangeMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
                     BigDecimal add = changeTokenMeterTask.getChangeMoney().add(sumOfCurrentChangeMoneyByMeterId);
                     String updateSqlMeter = "UPDATE s_change_token_meter_task SET change_money = ? WHERE id = ?";
@@ -1408,7 +1469,7 @@ public class TaskController extends BladeController {
                     jdbcTemplate.update(updateSqlMeter, updateParamsMeter);
 
                     /*修改变更令申请金额*/
-                    List<ChangeFormVO2> formListCopyAll = changeTokenFormService.getBaseMapper().getFormListCopy(dto.getContractId(), dto.getDataId());
+                    List<ChangeFormVO2> formListCopyAll = changeTokenFormService.getBaseMapper().getFormListCopy(Long.parseLong(task.getContractId()), dto.getDataId());
                     BigDecimal sumOfCurrentChangeMoneyAll = formListCopyAll.stream().map(ChangeFormVO2::getCurrentChangeMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
                     String updateSqlForm = "UPDATE s_change_token_form_task SET change_money = ? WHERE id = ?";
                     Object[] updateParamsForm = {sumOfCurrentChangeMoneyAll, dto.getDataId()};
@@ -1428,7 +1489,7 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(dto.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
@@ -1436,8 +1497,8 @@ public class TaskController extends BladeController {
                 List<ChangeTokenInventoryTask> inventoryList = new ArrayList<>();
                 for (ChangeFormVO2 vo2 : dto.getFormList()) {
                     ChangeTokenInventoryTask inventory = new ChangeTokenInventoryTask();
-                    inventory.setProjectId(dto.getProjectId());
-                    inventory.setContractId(dto.getContractId());
+                    inventory.setProjectId(Long.parseLong(task.getProjectId()));
+                    inventory.setContractId(Long.parseLong(task.getContractId()));
                     inventory.setChangeTokenId(dto.getDataId());
                     inventory.setContractFormId(vo2.getId());
                     inventory.setChangeBeforeTotal(vo2.getContractTotal());
@@ -1493,15 +1554,15 @@ public class TaskController extends BladeController {
         if (ObjectUtil.isEmpty(dto.getTaskId())) {
             throw new ServiceException("未获取到taskId");
         }
-        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
+        Task task = jdbcTemplate.query("SELECT meter_task_type,process_instance_id,contract_id,project_id FROM u_task WHERE id = " + dto.getTaskId(), new BeanPropertyRowMapper<>(Task.class)).stream().findAny().orElse(null);
         if (task != null) {
             check(task);
 
             List<AttachmentFormTask> fileList = dto.getFileList();
             if (fileList != null && fileList.size() != 0) {
                 for (AttachmentFormTask file : fileList) {
-                    file.setProjectId(dto.getProjectId());
-                    file.setContractId(dto.getContractId());
+                    file.setProjectId(Long.parseLong(task.getProjectId()));
+                    file.setContractId(Long.parseLong(task.getContractId()));
                     file.setMasterId(dto.getDataId());
                     file.setTaskId(dto.getTaskId());
                 }