24282 пре 2 година
родитељ
комит
abef14af41

+ 1 - 1
hx-service/storage/src/main/java/com/fjhx/stock/mapper/StockBackMapper.xml

@@ -202,7 +202,7 @@
                 uu.departmentID in ('A007', 'A008', 'A012')
             </otherwise>
         </choose>
-        <if test="tech neq null or tech neq ''">
+        <if test="tech neq null and tech neq ''">
             and sbpd.tech = #{tech}
         </if>
         group by uu.JobNo,sbpd.plan_material

+ 10 - 7
hx-service/storage/src/main/java/com/fjhx/stock/service/impl/StockBackServiceImpl.java

@@ -281,10 +281,10 @@ public class StockBackServiceImpl extends ServiceImpl<StockBackMapper, StockBack
 
                 for (StockBackPlanDetails item : stockBackPlanDetails) {
                     scheduleArea = scheduleArea.add(item.getQuantity());
-                    pickingArea = pickingArea.add(item.getPickingArea()).add(item.getTransferInArea() == null ? BigDecimal.ZERO : item.getTransferInArea());
-                    backArea = backArea.add(item.getBackArea()).add(item.getTransferOutArea() == null ? BigDecimal.ZERO : item.getTransferOutArea());
-                    correctArea = correctArea.add(item.getCorrectArea());
-                    headTailCorrectArea = headTailCorrectArea.add(item.getHeadTailCorrectArea());
+                    pickingArea = pickingArea.add(item.getPickingArea()).add(ObjectUtil.defaultIfNull(item.getTransferInArea(), BigDecimal.ZERO));
+                    backArea = backArea.add(item.getBackArea()).add(ObjectUtil.defaultIfNull(item.getTransferOutArea(), BigDecimal.ZERO));
+                    correctArea = correctArea.add(ObjectUtil.defaultIfNull(item.getCorrectArea(), BigDecimal.ZERO));
+                    headTailCorrectArea = headTailCorrectArea.add(ObjectUtil.defaultIfNull(item.getHeadTailCorrectArea(), BigDecimal.ZERO));
                 }
 
                 // 赋值使用率
@@ -340,6 +340,8 @@ public class StockBackServiceImpl extends ServiceImpl<StockBackMapper, StockBack
             v.forEach((k2, v2) -> {
                 Map<String, Object> map = jobNoMap.get(k2);
                 if (map != null) {
+                    Map<String,Object> itemMap = new HashMap<>(map);
+
                     if (v2 != null && v2.size() > 0) {
                         BigDecimal scheduleArea = BigDecimal.ZERO;
                         BigDecimal pickingArea = BigDecimal.ZERO;
@@ -357,12 +359,13 @@ public class StockBackServiceImpl extends ServiceImpl<StockBackMapper, StockBack
                         BigDecimal value = BigDecimalUtil.init(scheduleArea).multiply(100).
                                 divideTry(pickingArea.subtract(backArea).subtract(correctArea), 2).getValue();
 
-                        map.put("useRate", value);
+                        itemMap.put("useRate", value);
                     } else {
-                        map.put("useRate", BigDecimal.ZERO);
+                        itemMap.put("useRate", BigDecimal.ZERO);
                     }
-                    list.add(map);
+                    list.add(itemMap);
                 }
+
             });
 
             result.put(k, list);