Просмотр исходного кода

新增 计算研发预算完成进度

anderx 1 год назад
Родитель
Сommit
06b4e4c228

+ 48 - 42
src/main/java/com/goafanti/techproject/service/impl/TaskDetailsServiceImpl.java

@@ -63,52 +63,58 @@ public class TaskDetailsServiceImpl extends BaseMybatisDao<TaskDetailsMapper> im
     public TaskDetailsBo getByTid(Integer id) {
         TaskDetailsBo res = new TaskDetailsBo();
         TaskDetails taskDetails=taskDetailsMapper.selectByTid(id);
-        BeanUtils.copyProperties(taskDetails, res);
-        TOrderNew tOrderNew = tOrderNewMapper.selectByTid(id);
-        TOrderMid mid = tOrderMidMapper.selectByOrderNo(tOrderNew.getOrderNo());
-        List<TOrderTaskBo> tOrderTaskBos = tOrderTaskMapper.selectOrderTaskAll(tOrderNew.getOrderNo(), 4);
-        List<Map<String,Object >> list=new ArrayList<>();
-        //如果是会员
-        TOrderTaskBo thisTask = null;
-        for (TOrderTaskBo e : tOrderTaskBos) {
-            if (e.getId().equals(id)){
-                thisTask=e;
-                break;
-            }
-        }
-        String serviceYear = thisTask.getServiceYear();
-        if (serviceYear.contains("(赠)")){
-            serviceYear=serviceYear.replace("(赠)", "");
+        if (taskDetails==null){
+            return res;
         }
-        for (TOrderTaskBo e : tOrderTaskBos) {
-            if (e.getServiceYear().equals(serviceYear)){
-                Map<String,Object> map=new HashMap<>();
-                map.put("serviceYear", e.getServiceYear());
-                map.put("taskName", e.getCommodityName());
-                map.put("id",e.getId());
-                //如果没有项目进度,查询同年份的项目进度
-                if (taskDetails==null&&!e.getId().equals(id)&&e.getcSort()==6){
-                    taskDetails=taskDetailsMapper.selectByTid(e.getId());
+
+
+            TOrderNew tOrderNew = tOrderNewMapper.selectByTid(id);
+            TOrderMid mid = tOrderMidMapper.selectByOrderNo(tOrderNew.getOrderNo());
+            List<TOrderTaskBo> tOrderTaskBos = tOrderTaskMapper.selectOrderTaskAll(tOrderNew.getOrderNo(), 4);
+            List<Map<String,Object >> list=new ArrayList<>();
+            //如果是会员
+            TOrderTaskBo thisTask = null;
+            for (TOrderTaskBo e : tOrderTaskBos) {
+                if (e.getId().equals(id)){
+                    thisTask=e;
+                    break;
                 }
-                list.add(map);
             }
-        }
+            String serviceYear = thisTask.getServiceYear();
+            if (serviceYear.contains("(赠)")){
+                serviceYear=serviceYear.replace("(赠)", "");
+            }
+            for (TOrderTaskBo e : tOrderTaskBos) {
+                if (e.getServiceYear().equals(serviceYear)){
+                    Map<String,Object> map=new HashMap<>();
+                    map.put("serviceYear", e.getServiceYear());
+                    map.put("taskName", e.getCommodityName());
+                    map.put("id",e.getId());
+                    //如果没有项目进度,查询同年份的项目进度
+                    if (taskDetails==null&&!e.getId().equals(id)&&e.getcSort()==6){
+                        taskDetails=taskDetailsMapper.selectByTid(e.getId());
+                    }
+                    list.add(map);
+                }
+            }
+            BeanUtils.copyProperties(taskDetails, res);
+            BigDecimal totalAmount = tOrderNew.getTotalAmount();
+            String lvl=null;
+            if (totalAmount.compareTo(new BigDecimal("3"))<0){
+                lvl="A";
+            }else if (totalAmount.compareTo(new BigDecimal("8"))<1){
+                lvl="AA";
+            }else if (totalAmount.compareTo(new BigDecimal("8"))>0){
+                lvl="AAA";
+            }
+            res.setUserName(mid.getBuyerName());
+            res.setOrderNo(tOrderNew.getOrderNo());
+            res.setContractNo(tOrderNew.getContractNo());
+            res.setMemberStatus(mid.getProjectType());
+            res.setMemberLvl(lvl);
+            res.setTaskList(list);
+
 
-        BigDecimal totalAmount = tOrderNew.getTotalAmount();
-        String lvl=null;
-        if (totalAmount.compareTo(new BigDecimal("3"))<0){
-            lvl="A";
-        }else if (totalAmount.compareTo(new BigDecimal("8"))<1){
-            lvl="AA";
-        }else if (totalAmount.compareTo(new BigDecimal("8"))>0){
-            lvl="AAA";
-        }
-        res.setUserName(mid.getBuyerName());
-        res.setOrderNo(tOrderNew.getOrderNo());
-        res.setContractNo(tOrderNew.getContractNo());
-        res.setMemberStatus(mid.getProjectType());
-        res.setMemberLvl(lvl);
-        res.setTaskList(list);
         return res;
     }