소스 검색

工时成本统计导出报表增加项目分类 工时报告->导出日报增加项目分类一列

yurk 3 년 전
부모
커밋
578c764245

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

@@ -721,6 +721,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
             List<String> headList = new ArrayList<String>();
             headList.add("项目编号");
             headList.add("项目名称");
+            headList.add("项目分类");
             headList.add("人员");
             headList.add("部门");
             headList.add("工时(h)");
@@ -741,6 +742,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                 List<String> rowData = new ArrayList<String>();
                 rowData.add((String)map.get("projectCode"));
                 rowData.add((String)map.get("project"));
+                rowData.add((String)map.get("categoryName"));
                 rowData.add("");
                 rowData.add("");
                 rowData.add(((Double)map.get("cost")).toString());
@@ -758,6 +760,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                     if (projectSum == null || projectSum == false) {
                         membRowData.add((String)map.get("projectCode"));
                         membRowData.add((String)map.get("project"));
+                        membRowData.add((String)map.get("categoryName"));
                     } else {
                         membRowData.add("");
                         membRowData.add("");
@@ -776,6 +779,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
             sumRow.add("");
             sumRow.add("");
             sumRow.add("");
+            sumRow.add("");
             sumRow.add(""+new BigDecimal(totalCostTime).setScale(1, BigDecimal.ROUND_HALF_UP));
             sumRow.add(totalMoneyCost.toString());
             allList.add(sumRow);

+ 6 - 6
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -40,7 +40,6 @@ import java.time.format.DateTimeFormatter;
 import java.time.format.DateTimeParseException;
 import java.time.temporal.ChronoUnit;
 import java.util.*;
-import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.stream.Collectors;
 
 /**
@@ -2502,7 +2501,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             sheet.createFreezePane(0,1);
             List<String> titles = new ArrayList<String>();
             titles.addAll(Arrays.asList(new String[]{
-                    "序号","员工","所在部门","项目名称","子项目名称"
+                    "序号","员工","所在部门","项目名称","项目分类","子项目名称"
             }));
 
             //项目管理专业版以上,包括任务
@@ -2662,10 +2661,11 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
                 row.createCell(1).setCellValue((String) map.get("name"));
                 row.createCell(2).setCellValue((String) map.get("departmentName"));
                 row.createCell(3).setCellValue((String) map.get("project"));
-                row.createCell(4).setCellValue((String) map.get("subProjectName"));
-                int index = 5;
+                row.createCell(4).setCellValue((String) map.get("categoryName"));
+                row.createCell(5).setCellValue((String) map.get("subProjectName"));
+                int index = 6;
                 if (company.getPackageProject() == 1) {
-                    row.createCell(5).setCellValue((String) map.get("taskName"));
+                    row.createCell(6).setCellValue((String) map.get("taskName"));
                     index++;
                 }
                 HSSFCell cell = row.createCell(index);
@@ -2947,7 +2947,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
                     if (!list.stream().anyMatch(item->item.get("id").equals(curUser.getId())&&sdf.format((java.sql.Date)item.get("createDate")).equals(dateStr))) {
                         UserDailyWorkItem noRecord = new UserDailyWorkItem();
                         noRecord.userId = curUser.getId();
-                        List<Map> userCorpwxListOn = userCorpwxTimeMapList.stream().filter(mapList -> sdf.format((java.sql.Date)mapList.get("create_date")).equals(dateStr)
+                        List<Map> userCorpwxListOn = userCorpwxTimeMapList.stream().filter(mapList -> mapList.get("create_date").toString().equals(dateStr)
                                 && mapList.get("corpwx_userid").equals(curUser.getCorpwxUserid())).collect(Collectors.toList());
                         if(!userCorpwxListOn.isEmpty()){
                                 noRecord.createDate = dtf.format(date)+"/请假";

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

@@ -94,7 +94,7 @@
 
     <!--获取查询者所在公司每个项目的工时成本-->
     <select id="getTimeCost" resultType="java.util.Map">
-        SELECT a.id, a.project_code as projectCode, a.project_name AS project, SUM(b.working_time) AS cost, SUM(b.cost) AS costMoney
+        SELECT a.id, a.project_code as projectCode, a.project_name AS project, SUM(b.working_time) AS cost, SUM(b.cost) AS costMoney,a.category_name as categoryName
         FROM project AS a
         LEFT JOIN report AS b ON b.project_id = a.id
         JOIN user AS c ON b.creator_id = c.id

+ 2 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ReportMapper.xml

@@ -53,7 +53,7 @@
 
     <!--根据日期获取全部报告信息-->
     <select id="getAllReportByDate" resultType="java.util.Map">
-        SELECT a.id, c.name, b.project_name AS project, a.working_time AS duration, a.content, a.create_time AS time, a.create_date as createDate,
+        SELECT a.id, c.name, b.project_name AS project,b.category_name as categoryName, a.working_time AS duration, a.content, a.create_time AS time, a.create_date as createDate,
         a.state, a.time_type as timeType, a.cost, a.report_time_type as reportTimeType, a.start_time as startTime,
         a.end_time as endTime, d.name as subProjectName,a.task_id as taskId, task.name as taskName, a.is_overtime as isOvertime,a.progress as progress,
         a.department_audit_state as departmentAuditState, a.pic_str as picStr, multi_worktime as multiWorktime
@@ -113,7 +113,7 @@
     </select>
 
     <select id="getProjectMembReportByDate" resultType="java.util.Map">
-        SELECT a.id, c.name, b.project_name AS project, a.working_time AS duration, a.content, a.create_time AS time, a.create_date as createDate,
+        SELECT a.id, c.name, b.project_name AS project, b.category_name as categoryName,a.working_time AS duration, a.content, a.create_time AS time, a.create_date as createDate,
         a.state, a.time_type as timeType, a.cost, a.report_time_type as reportTimeType, a.start_time as startTime,
         a.end_time as endTime, d.name as subProjectName,a.task_id as taskId, task.name as taskName, a.is_overtime as isOvertime,a.progress as progress,
         a.department_audit_state as departmentAuditState, a.pic_str as picStr, multi_worktime as multiWorktime