yusm il y a 5 mois
Parent
commit
9fecf38c2e

+ 18 - 4
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -5018,6 +5018,8 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             String departmentName = convertDepartmentIdToCascade(Integer.valueOf(String.valueOf(map.get("departmentId"))), departmentList);
             item.add(departmentName);
             String curJobBNum = String.valueOf(map.get("jobNumber"));
+            Integer planManNum = map.get("planManNum")==null?0:(Integer) map.get("planManNum");
+            BigDecimal avg=null;
 //            item.add(curJobBNum);
 //            item.add(String.valueOf(map.get("userName")));
             Integer planType = Integer.valueOf(String.valueOf(map.get("planType")));
@@ -5058,18 +5060,30 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             }
             item.add("");
 //            item.add(String.valueOf(map.get("progress"))+"%");
-            item.add(String.valueOf(map.get("finishNum")));
+            if (map.get("planExtraInfoId")!=null){
+                BigDecimal num = new BigDecimal(String.valueOf(map.get("num")));
+                if (planManNum>1){
+                    avg = num.divide(BigDecimal.valueOf(planManNum)).setScale(2, RoundingMode.HALF_UP);
+                }
+                else {
+//                    item.add(String.valueOf(map.get("num")) + " 件");
+                    avg=num;
+                }
+                item.add(avg.toString()+ " 件");
+            }else {
+                item.add(String.valueOf(map.get("finishNum")));
+            }
             if(planType==0){
                 item.add(String.valueOf(map.get("workingTime")));
                 item.add(String.valueOf(map.get("unitPrice")));
             }else {
                 //第二种的报工工序类型
+                item.add(String.valueOf(map.get("workingTime"))+" h");
                 if (map.get("planExtraInfoId")!=null){
-                    item.add(String.valueOf(map.get("num"))+" 件");
+//                    item.add(String.valueOf(map.get("num"))+" 件");
                     item.add((map.get("unitPrice")==null?0:String.valueOf(map.get("unitPrice")))+" 件/元");
                 }else {
                     //第一种报工工序类型
-                    item.add(String.valueOf(map.get("workingTime"))+" h");
                     item.add((map.get("unitPrice")==null?0:String.valueOf(map.get("unitPrice")))+" 元/h");
                 }
             }
@@ -5081,7 +5095,7 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             }else {
                 //第二种的报工工序类型
                 if (map.get("planExtraInfoId")!=null){
-                    BigDecimal num = new BigDecimal(map.get("num") == null ? String.valueOf(0) : String.valueOf(map.get("num")));
+                    BigDecimal num = avg==null?BigDecimal.ZERO:avg;
                     BigDecimal unitPrice = new BigDecimal(map.get("unitPrice")==null?String.valueOf(0):String.valueOf(map.get("unitPrice")));
                     BigDecimal total=num.multiply(unitPrice).setScale(2,RoundingMode.HALF_UP);
                     item.add(total.toString());

+ 1 - 1
fhKeeper/formulahousekeeper/management-workshop/src/main/resources/mapper/ReportMapper.xml

@@ -573,7 +573,7 @@
     </select>
     <select id="getReportList" resultType="java.util.Map">
         select p.project_name as projectName,p.product_order_num as productOrderNum, p.plan_type as planType,u.name as userName,u.job_number as jobNumber,d.department_id as departmentId,p.product_scheduling_num as productSchedulingNum,
-        p.task_change_notice_num as taskChangeNoticeNum,r.steel_num_array as steelNumArray,r.working_time as workingTime,p.product_name as productName,r.finish_num as finishNum,p.num as num,
+        p.task_change_notice_num as taskChangeNoticeNum,r.steel_num_array as steelNumArray,r.working_time as workingTime,p.product_name as productName,r.finish_num as finishNum,p.num as num,p.plan_man_num as planManNum,
         pp.name as procedureName,r.progress as progress,(CASE r.check_type WHEN 0 THEN '自检' WHEN 1 THEN '互检' ELSE '专检' END ) as checkType ,uu.name as checkerName,pei.id planExtraInfoId,pei.part_name partName,pei.operation_name operationName,
         date_format(r.create_date,'%Y-%m-%d') as createDate,date_format(r.create_time,'%Y-%m-%d %T') as reportTime,(CASE WHEN p.plan_type=0 THEN pp.unit_price ELSE p.money_of_job END) as unitPrice,r.cost  from report r
         left join plan p on p.id=r.plan_id