Reiskuchen 5 лет назад
Родитель
Сommit
e4dd392967

+ 13 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -146,7 +146,19 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
             if (!projectMapper.selectById(projectId).getCompanyId().equals(companyId)) {
                 httpRespMsg.setError("无权查看其他公司的项目详情");
             } else {
-                httpRespMsg.data = projectMapper.getProjectCost(projectId);
+                Map<String, Object> resultMap = new HashMap<>();
+                List<Map<String, Object>> list = projectMapper.getProjectCost(projectId);
+                BigDecimal totalMoneyCost = BigDecimal.valueOf(0);
+                for (Map<String, Object> map : list) {
+                    if (!map.containsKey("costMoney")) {
+                        map.put("costMoney", 0);
+                    } else {
+                        totalMoneyCost = totalMoneyCost.add(BigDecimal.valueOf((Double) map.get("costMoney")));
+                    }
+                }
+                resultMap.put("costList", list);
+                resultMap.put("totalMoneyCost", totalMoneyCost);
+                httpRespMsg.data = resultMap;
             }
         } catch (NullPointerException e) {
             httpRespMsg.setError("验证失败");

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

@@ -27,7 +27,7 @@
 
     <!--获取某个项目每个人分别需要的工时-->
     <select id="getProjectCost" resultType="java.util.Map">
-        SELECT b.name, SUM(a.working_time) AS cost
+        SELECT b.name, SUM(a.working_time) AS cost, SUM(a.working_time * c.cost) AS costMoney
         FROM report AS a
         JOIN user AS b ON a.creator_id = b.id
         WHERE a.project_id = #{projectId}