Переглянути джерело

测试修改FTE报表查询导出,工作计划导入修改

yusm 2 днів тому
батько
коміт
37716882b6

+ 79 - 11
fhKeeper/formulahousekeeper/management-platform-mld/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -13591,13 +13591,13 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         User user = userMapper.selectById(request.getHeader("token"));
         WxCorpInfo wxCorpInfo = wxCorpInfoMapper.selectOne(new QueryWrapper<WxCorpInfo>().eq("company_id", user.getCompanyId()));
         CompanyDingding dingding = companyDingdingMapper.selectOne(new QueryWrapper<CompanyDingding>().eq("company_id", user.getCompanyId()));
-        List<UserCustom> userCustoms = userCustomMapper.selectList(new QueryWrapper<UserCustom>().eq("company_id", user.getCompanyId()).orderByAsc("id"));
         List<SysRichFunction> functionAllList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "全部部门FTE计划报表");
         List<SysRichFunction> functionDeptList = sysFunctionMapper.getRoleFunctions(user.getRoleId(), "负责部门FTE计划报表");
         List<Integer> deptIds=null;
         List<Department> allDepartmentList=departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id",user.getCompanyId()));
         List<Department> userDepartmentList = departmentMapper.selectList(new QueryWrapper<Department>().eq("manager_id", user.getId()).eq("company_id",user.getCompanyId()));
         List<DepartmentOtherManager> departmentOtherManagerList = departmentOtherManagerMapper.selectList(new QueryWrapper<DepartmentOtherManager>().eq("other_manager_id", user.getId()));
+        List<User> userList = userMapper.selectList(new QueryWrapper<User>().eq("company_id", user.getCompanyId()));
         //判断查看权限
         if(functionAllList.size()==0){
             deptIds=new ArrayList<>();
@@ -13630,24 +13630,64 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         List<Map<String, Object>> list = projectMapper.getFTETaskPlanData(user.getCompanyId(), startDate, endDate, null, null, area, userId, null, null, null, deptIds, departmentId);
         List<List<String>> dataList=new ArrayList<>();
         List<String> titleList=new ArrayList<>();
-        List<String> subtitle=new ArrayList<>();
 
         titleList.add("序号");
-        titleList.add("岗位");
-        titleList.add("项目编号");
-        titleList.add("项目名称");
-        titleList.add("姓名");
+        titleList.add("项目分类");
+        titleList.add("项目经理");
+        titleList.add("研究中心");
+        titleList.add("任务分组");
+        titleList.add("投入阶段");
+        titleList.add("工作内容");
+        titleList.add("一级审核人");
+        titleList.add("二级审核人");
         titleList.add("计划工时(H)");
         titleList.add("FTE(计划工时/当月计划工时基数)");
+        titleList.add("审核状态");
         dataList.add(titleList);
 
         for (int i = 0; i < list.size(); i++) {
             List<String> item=new ArrayList<>();
             item.add((i+1)+"");
-            item.add(list.get(i).get("area")==null?"":list.get(i).get("area").toString());
-            item.add(list.get(i).get("projectCode")==null?"":list.get(i).get("projectCode").toString());
-            item.add(list.get(i).get("projectName")==null?"":list.get(i).get("projectName").toString());
-            item.add(list.get(i).get("userName")==null?"":list.get(i).get("userName").toString());
+            item.add(list.get(i).get("categoryName")==null?"":list.get(i).get("categoryName").toString());
+            String inchargerId = list.get(i).get("inchargerId") != null ? list.get(i).get("inchargerId").toString() : "";
+            if (!StringUtils.isEmpty(inchargerId)){
+                Optional<User> first = userList.stream().filter(u -> u.getId().equals(inchargerId)).findFirst();
+                if (first.isPresent()){
+                    item.add(first.get().getName());
+                }else {
+                    item.add("");
+                }
+            }else {
+                item.add("");
+            }
+            item.add(list.get(i).get("associateDegreeNames")==null?"":list.get(i).get("associateDegreeNames").toString());
+            item.add(list.get(i).get("groupName")==null?"":list.get(i).get("groupName").toString());
+            item.add(list.get(i).get("stagesName")==null?"":list.get(i).get("stagesName").toString());
+            item.add(list.get(i).get("taskName")==null?"":list.get(i).get("taskName").toString());
+
+            String firstAuditorId = list.get(i).get("firstAuditorId") != null ? list.get(i).get("firstAuditorId").toString() : "";
+            if (!StringUtils.isEmpty(firstAuditorId)){
+                Optional<User> first = userList.stream().filter(u -> u.getId().equals(firstAuditorId)).findFirst();
+                if (first.isPresent()){
+                    item.add(first.get().getName());
+                }else {
+                    item.add("");
+                }
+            }else {
+                item.add("");
+            }
+
+            String secondAuditorId = list.get(i).get("secondAuditorId") != null ? list.get(i).get("secondAuditorId").toString() : "";
+            if (!StringUtils.isEmpty(secondAuditorId)){
+                Optional<User> first = userList.stream().filter(u -> u.getId().equals(secondAuditorId)).findFirst();
+                if (first.isPresent()){
+                    item.add(first.get().getName());
+                }else {
+                    item.add("");
+                }
+            }else {
+                item.add("");
+            }
             item.add(list.get(i).get("planHours")==null?"": String.valueOf(new BigDecimal(list.get(i).get("planHours").toString()).setScale(2,BigDecimal.ROUND_HALF_UP)));
             item.add(
                     list.get(i).get("planHours") == null ? "" :
@@ -13659,9 +13699,37 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                                     )
                                     .toString()
             );
+
+            String auditStatus = list.get(i).get("auditStatus") != null ? list.get(i).get("auditStatus").toString() : "";
+            if (StringUtils.isEmpty(auditStatus)) {
+                item.add("");
+            }else {
+                switch (auditStatus) {
+                    case "0":
+                        item.add("进行中");
+                        break;
+                    case "1":
+                        item.add("已完成");
+                        break;
+                    case "2":
+                        item.add("已撤销");
+                        break;
+                    case "3":
+                        item.add("待第一审核人审核");
+                        break;
+                    case "4":
+                        item.add("待第二审核人审核");
+                        break;
+                    case "5":
+                        item.add("第一审核人驳回");
+                        break;
+                    case "6":
+                        item.add("第二审核人驳回");
+                        break;
+                }
+            }
             dataList.add(item);
         }
-
         String fileName = "FTE计划报表"+System.currentTimeMillis();
         try {
             return excelExportService.exportGeneralExcelByTitleAndList(wxCorpInfo,dingding,fileName, dataList, path);

+ 1 - 0
fhKeeper/formulahousekeeper/management-platform-mld/src/main/java/com/management/platform/service/impl/TaskServiceImpl.java

@@ -806,6 +806,7 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements Ta
                 task.setCreatorColor(creator.getColor());
                 task.setCreateDate(LocalDate.now());
                 task.setIndate(LocalDateTime.now());
+                task.setTaskStatus(TaskController.STATUS_FIRST_CHECK);
                 taskMapper.insert(task);
 
 

+ 7 - 2
fhKeeper/formulahousekeeper/management-platform-mld/src/main/resources/mapper/ProjectMapper.xml

@@ -2882,11 +2882,16 @@
         ORDER BY project.id, task.start_date
     </select>
     <select id="getFTETaskPlanData" resultType="java.util.Map">
-        select t.id,  u.plate1 area, p.project_code projectCode,p.project_name projectName,u.name userName, t.plan_hours planHours   from task t
+        select t.id,  u.plate1 area, p.project_code projectCode,p.project_name projectName,u.name userName, t.plan_hours planHours
+        ,p.category_name categoryName,p.incharger_id inchargerId,p.associate_degree_names associateDegreeNames,tg.name groupName,
+        stages.stages_name stagesName,t.name taskName,te.first_auditor_id firstAuditorId, te.second_auditor_id secondAuditorId,t.task_status auditStatus
+        from task t
+          left join stages on stages.id = t.stages_id
+          left join task_group tg on tg.id=t.group_id
           left join project p on t.project_id=p.id
           LEFT JOIN task_executor te on t.id=te.task_id
           INNER JOIN user u on u.id=te.executor_id
-        WHERE u.company_id=#{companyId} and t.task_plan=1 and t.task_status &lt;3 and t.task_plan_type !=3
+        WHERE u.company_id=#{companyId} and ( t.task_status = 3 OR t.task_status = 4 )
         <if test="area!=null and area != '' ">
             and u.plate1 = #{area}
         </if>