From 2837bdd57f72e386bbf9a725e7b3a13e5eb9e930 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 21 八月 2023 09:19:57 +0800
Subject: [PATCH] 修复bug

---
 server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java |   40 +++++++++++++++++++++++++++++++++++++++-
 1 files changed, 39 insertions(+), 1 deletions(-)

diff --git a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java
index 6b36bd8..d155676 100644
--- a/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java
+++ b/server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java
@@ -157,6 +157,9 @@
                 //鏌ヨ鐢熶骇浜哄憳濮撳悕
 //                model.setUserName(initProUser(user,model.getUserId(),allDepartList));
                     model.setUserInfo(initProUser(user,model.getUserId(),allDepartList));
+                    model.setJijianSalary(model.getJijianSalary().divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP));
+                    model.setJishiSalary(model.getJishiSalary().divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP));
+                    model.setTotalSalary(model.getTotalSalary().divide(new BigDecimal("100"),2,BigDecimal.ROUND_HALF_UP));
             }
         }
         return PageData.from(new PageInfo<>(result));
@@ -173,13 +176,16 @@
         PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity());
 
         //鏁版嵁鏉冮檺
-        List<Integer> dataPermission = user.getDepartPermissionList();
+//        List<Integer> dataPermission = user.getDepartPermissionList();
         List<UserSalaryListVO> result = workorderRecordExtMapper.userSalaryPage(pageWrap.getModel());
         if(result!=null){
             List<DepartmentExtListVO> allDepartList = RedisUtil.getObject(redisTemplate,Constants.RedisKeys.COM_DEPART_LIST_KEY+user.getCompany().getId(),ArrayList.class);
             for(UserSalaryListVO model : result){
                 //鏌ヨ鐢熶骇浜哄憳濮撳悕
                 model.setUserInfo(initProUser(user,model.getUserId(),allDepartList));
+                if(Constants.formatBigdecimal4Float(model.getNum()).compareTo(new BigDecimal(0))>0){
+                    model.setRate(Constants.formatBigdecimal4Float(model.getQualifiedNum()).divide(model.getNum(),4).multiply(new BigDecimal(100)));
+                }
             }
         }
         return PageData.from(new PageInfo<>(result));
@@ -489,6 +495,7 @@
         }
         if(!Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.create)
                 && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.material)
+                && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.producing)
                 && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.check)
                 && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.done)){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝璇ュ伐鍗曠姸鎬佸凡娴佽浆锛屼笉鑳借繘琛岃鎿嶄綔锛�");
@@ -526,6 +533,7 @@
         }
         if(!Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.create)
                 && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.material)
+                && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.producing)
                 && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.check)
                 && !Constants.equalsInteger(model.getWorkorderStatus(),Constants.WORKORDER_STATUS.done)){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝璇ュ伐鍗曠姸鎬佸凡娴佽浆锛屼笉鑳借繘琛岃鎿嶄綔锛�");
@@ -829,9 +837,11 @@
                 if(!Constants.equalsInteger(tModel.getDoneType(),Constants.ZERO)){
                     //濡傛灉涓嶈壇锛岀疮璁″伐鍗曠殑涓嶈壇浜у嚭
                     mp.setUnqualifiedNum(Constants.formatIntegerNum(mp.getUnqualifiedNum())+(Constants.formatBigdecimal(tModel.getNum()).intValue()));
+//                    mp.setUnqualifiedNum(mp.getUnqualifiedNum().add(tModel.getNum()));
                 }else{
                     //濡傛灉鏄悎鏍硷紝绱宸ュ崟鐨勫悎鏍兼暟閲�
                     mp.setQualifiedNum(Constants.formatIntegerNum(mp.getQualifiedNum())+(Constants.formatBigdecimal(tModel.getNum()).intValue()));
+//                    mp.setUnqualifiedNum(mp.getQualifiedNum().add(tModel.getNum()));
                 }
                 //妫�鏌ョ绛愭槸鍚﹁浣滀负浜у嚭绡瓙锛屽鏋滄槸锛屽垯闇�瑕佸垽鏂绡瓙鏄惁鎶曟枡浣欓涓�0
                 Appliances curUpdateModel = getApplianceFromList(tModel.getAppliancesId(),updateApplianceList);
@@ -1576,6 +1586,7 @@
         }
         if(!Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.create)
                 && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.material)
+                && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.producing)
                 && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.check)
                 && !Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.done)){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀵逛笉璧凤紝璇ュ伐鍗曠姸鎬佸凡娴佽浆锛屼笉鑳借繘琛岃鎿嶄綔锛�");
@@ -1670,6 +1681,33 @@
 
 
     @Override
+    public void exportUserSalary(PageWrap<QueryUserSalaryListDTO> pageWrap, HttpServletResponse response) {
+        List<UserSalaryListVO> result=this.userSalaryPage(pageWrap).getRecords();
+        for(UserSalaryListVO model : result) {
+            if(model.getUserInfo()!=null){
+                model.setUserName(model.getUserInfo().getUserName());
+                model.setDepartName(model.getUserInfo().getDepartName());
+                model.setNum(Constants.formatBigdecimalFloat(model.getNum(),2));
+                model.setQualifiedNum(Constants.formatBigdecimalFloat(model.getQualifiedNum(),2));
+                model.setUnQualifiedNum(Constants.formatBigdecimalFloat(model.getUnQualifiedNum(),2));
+                model.setRate(Constants.formatBigdecimalFloat(model.getRate(),2));
+            }
+        }
+        ExcelExporter.build(UserSalaryListVO.class).export(result, "鍛樺伐缁╂晥鏄庣粏"+System.currentTimeMillis(), response);
+    }
+    @Override
+    public void exportSalaryStatistics(PageWrap<QuerySalaryStatisticDTO> pageWrap, HttpServletResponse response){
+        List<SalaryStatisticsListVO> result=this.salaryStatistic(pageWrap).getRecords();
+        for(SalaryStatisticsListVO model : result) {
+            if(model.getUserInfo()!=null){
+                model.setUserName(model.getUserInfo().getUserName());
+                model.setDepartName(model.getUserInfo().getDepartName());
+            }
+        }
+        ExcelExporter.build(SalaryStatisticsListVO.class).export(result, "宸ヨ祫鎶ヨ〃"+System.currentTimeMillis(), response);
+
+    }
+    @Override
     public void exportExcel(PageWrap<QueryWorkorderRecordExtDTO> pageWrap, HttpServletResponse response) {
         List<WorkorderRecordExtListVO> result=this.findPage(pageWrap).getRecords();
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

--
Gitblit v1.9.3