Browse Source

新增补全财税负责人与技术负责人

anderx 1 year ago
parent
commit
541283d54f

+ 27 - 7
src/main/java/com/goafanti/techproject/service/impl/TaskDetailsServiceImpl.java

@@ -122,13 +122,12 @@ public class TaskDetailsServiceImpl extends BaseMybatisDao<TaskDetailsMapper> im
         }
         TTaskMember tTaskMember = ttaskMemberMapper.selectByTid(tOrderTask.getId());
         String serviceYear = getServiceYer(tTaskMember.getServiceYear());
-        list=addOrderList(collect2,serviceYear);
+        addOrderList(collect2,serviceYear,bo);
         bo.setUserName(mid.getBuyerName());
         bo.setOrderNo(tOrderNew.getOrderNo());
         bo.setContractNo(tOrderNew.getContractNo());
         bo.setServiceYear(serviceYear);
         bo.setMemberStatus(mid.getProjectType());
-        bo.setTaskList(list);
         if (bo.getMemberStatus()==null){
             BigDecimal totalAmount = tOrderNew.getTotalAmount().divide(new BigDecimal(yearSum), 2, RoundingMode.HALF_UP);
             Integer lvl=getOrderLvl(totalAmount);
@@ -137,6 +136,8 @@ public class TaskDetailsServiceImpl extends BaseMybatisDao<TaskDetailsMapper> im
         bo.setFeatureList(taskFeatureMapper.selectByTdId(bo.getId()));
     }
 
+
+
     private String getServiceYer(String serviceYear) {
         String serviceYear2;
         if (StringUtils.isEmpty(serviceYear)){
@@ -453,7 +454,7 @@ public class TaskDetailsServiceImpl extends BaseMybatisDao<TaskDetailsMapper> im
             }
         }
         String serviceYear = getServiceYer(thisTask.getServiceYear());
-        list=addOrderList(tOrderTaskBos, serviceYear);
+        addOrderList(tOrderTaskBos, serviceYear,res);
         if (taskDetails !=null){
                 BeanUtils.copyProperties(log, res);
         }
@@ -461,19 +462,19 @@ public class TaskDetailsServiceImpl extends BaseMybatisDao<TaskDetailsMapper> im
         res.setOrderNo(tOrderNew.getOrderNo());
         res.setContractNo(tOrderNew.getContractNo());
         res.setMemberStatus(mid.getProjectType());
-        res.setTaskList(list);
         BigDecimal totalAmount = tOrderNew.getTotalAmount();
         if (res.getMemberLvl()==null){
             Integer lvl=getOrderLvl(totalAmount);
             res.setMemberLvl(lvl);
         }
-        res.setTaskList(list);
         res.setFeatureList(taskFeatureLogMapper.selectByTdlid(id));
         return res;
     }
 
-    private List<Map<String, Object>> addOrderList(List<TOrderTaskBo> tOrderTaskBos, String serviceYear) {
+    private void addOrderList(List<TOrderTaskBo> tOrderTaskBos, String serviceYear,TaskDetailsBo bo) {
         List<Map<String, Object>> list =new ArrayList<>();
+        //判定是否是需要修改,只有在没有财税和技术,并且编号不是空才需要新增
+        boolean flag=false;
         for (TOrderTaskBo e : tOrderTaskBos) {
             String serviceYear1 = getServiceYer(e.getServiceYear());
             if (serviceYear1.equals(serviceYear)){
@@ -482,9 +483,28 @@ public class TaskDetailsServiceImpl extends BaseMybatisDao<TaskDetailsMapper> im
                 map.put("taskName", e.getCommodityName());
                 map.put("id",e.getId());
                 list.add(map);
+                if (StringUtils.isEmpty(bo.getFinanceTaxationName())){
+                    if (e.getCommodityName().contains("财税")){
+                        bo.setFinanceTaxationName(e.getReceiverName());
+                    }
+                    if (bo.getId()!=null) flag=true;
+                }
+                if (StringUtils.isEmpty(bo.getTechnologyName())){
+                    if (e.getCommodityName().contains("技术")){
+                        bo.setTechnologyName(e.getReceiverName());
+                    }
+                    if (bo.getId()!=null) flag=true;
+                }
             }
         }
-        return list;
+        if (flag){
+            TaskDetails update = new TaskDetails();
+            update.setId(bo.getId());
+            update.setFinanceTaxationName(bo.getFinanceTaxationName());
+            update.setTechnologyName(bo.getTechnologyName());
+            taskDetailsMapper.update(update);
+        }
+        bo.setTaskList(list);
     }
 
     @Override