Procházet zdrojové kódy

下载项目任务分组

cs před 2 roky
rodič
revize
3b80559828

+ 5 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ProjectController.java

@@ -552,6 +552,11 @@ public class ProjectController {
         return projectService.exportData(request);
     }
 
+    @RequestMapping("exportGroupData")
+    public HttpRespMsg exportGroupData() {
+        return projectService.exportGroupData(request);
+    }
+
     @RequestMapping("/getMyUsers")
     public HttpRespMsg getMyUsers() {
         return projectService.getMyUsers(request);

+ 3 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ProjectMapper.java

@@ -80,6 +80,9 @@ public interface ProjectMapper extends BaseMapper<Project> {
     //获取导出的项目数据
     List<HashMap<String, Object>> getExportData(Integer companyId, String userId);
 
+    //获取按照项目分组导出的项目数据
+    List<HashMap<String, Object>> getExportGroupData(Integer companyId);
+
     List<Map<String, Object>> getOvertimeDetail(String userId, Integer companyId, String startDate, String endDate, Integer projectId,List<Integer> branchDepartment,List<Integer> deptIds);
 
     //获取项目的成本预警和实际工时表

+ 3 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ProjectService.java

@@ -109,6 +109,8 @@ public interface ProjectService extends IService<Project> {
 
     HttpRespMsg exportData(HttpServletRequest request);
 
+    HttpRespMsg exportGroupData(HttpServletRequest request);
+
     HttpRespMsg getCustomDataSum(String startDate, String endDate, String userId, HttpServletRequest request);
 
     HttpRespMsg exportCustomDataSum(String startDate, String endDate, Integer projectId, String userId, HttpServletRequest request);
@@ -186,4 +188,5 @@ public interface ProjectService extends IService<Project> {
     HttpRespMsg batchExchangeIncharger(String projectIds, String inchargerId, HttpServletRequest request);
 
     HttpRespMsg fixParticipators(Integer companyId, HttpServletRequest request);
+
 }

+ 29 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -4131,6 +4131,35 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         return httpRespMsg;
     }
 
+    @Override
+    public HttpRespMsg exportGroupData(HttpServletRequest request) {
+        String token = request.getHeader("TOKEN");
+        User user = userMapper.selectById(token);
+        List<HashMap<String, Object>> list = projectMapper.getExportGroupData(user.getCompanyId());
+        List<List<String>> allList = new ArrayList<>();
+        List<String> headList = new ArrayList<String>();
+        headList.add("项目编号");
+        headList.add("项目名称");
+        headList.add("分组名称");
+        headList.add("分组负责人");
+        headList.add("分组参与人");
+        allList.add(headList);
+        for (HashMap<String, Object> map : list) {
+            List<String> item = new ArrayList<>();
+            item.add((String) map.get("projectCode")==null?"":(String)map.get("projectCode"));
+            item.add((String) map.get("projectName")==null?"":(String)map.get("projectName"));
+            item.add((String) map.get("groupName")==null?"":(String)map.get("groupName"));
+            item.add((String) map.get("inchargerName")==null?"":(String)map.get("inchargerName"));
+            item.add((String) map.get("participators")==null?"":(String)map.get("participators"));
+            allList.add(item);
+        }
+        String fileName = "项目分组_"+System.currentTimeMillis();
+        String resp = ExcelUtil.exportGeneralExcelByTitleAndList(fileName , allList, path);
+        HttpRespMsg httpRespMsg = new HttpRespMsg();
+        httpRespMsg.data = resp;
+        return httpRespMsg;
+    }
+
     @Override
     public HttpRespMsg getCustomDataSum(String startDate, String endDate, String userId, HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();

+ 13 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ProjectMapper.xml

@@ -784,6 +784,19 @@
         GROUP BY project.id
     </select>
 
+    <!--按项目分组导出数据-->
+    <select id="getExportGroupData" resultType="java.util.Map" >
+        SELECT project_code as projectCode,project_name as projectName,task_group.`name` AS groupName,`user`.`name` AS inchargerName,
+        (SELECT GROUP_CONCAT(name) FROM group_participator g LEFT JOIN `user` ON `user`.id = g.user_id WHERE g.group_id = group_participator.group_id GROUP BY g.group_id) AS participators
+        FROM task_group
+        LEFT JOIN group_participator ON task_group.id = group_participator.group_id
+        LEFT JOIN project on task_group.project_id = project.id
+        LEFT JOIN `user` ON project.incharger_id = `user`.id
+        where project.company_id = #{companyId}
+        GROUP BY task_group.id
+        ORDER BY project_id
+    </select>
+
     <!--分页获取项目工时成本预警表 -->
     <select id="getProjectCostAlarm" resultType="java.util.HashMap">
         SELECT project.id, project.`project_code` as projectCode, project.`project_name` as projectName,(SELECT IFNULL(SUM(base_amount), 0) FROM project_currentcost