Kaynağa Gözat

10121 配件核销单管理,处理作假虚报问题相关优化

wu 5 gün önce
ebeveyn
işleme
a6105e5e8f

+ 10 - 3
src/custom/restcontroller/webmanage/sale/tpartreimbursement/tpartreimbursement.java

@@ -348,11 +348,18 @@ public class tpartreimbursement extends Controller {
         }
 
         for (int i = 0; i < rowsdetail.size(); i++) {
-            if (rowsMap.containsKey(rowsdetail.get(i).getString("sa_orderitemsid"))) {
-                if (rowsMap.get(rowsdetail.get(i).getString("sa_orderitemsid")).get(0).getBigDecimal("qty").compareTo(rowsdetail.get(i).getBigDecimal("checkqty")) < 0) {
+            String sa_orderitemsid = rowsdetail.get(i).getString("sa_orderitemsid");
+            if (rowsMap.containsKey(sa_orderitemsid)) {
+                //审核数量
+                BigDecimal checkqty = rowsdetail.get(i).getBigDecimal("checkqty");
+                //订单明细中的数量
+                BigDecimal qty = rowsMap.get(sa_orderitemsid).get(0).getBigDecimal("qty");
+                //订单明细中的可核销数量
+                BigDecimal canoffqty = rowsMap.get(sa_orderitemsid).get(0).getBigDecimal("canoffqty");
+                if (qty.compareTo(checkqty) < 0 && checkqty.compareTo(BigDecimal.ZERO) > 0) {
                     return getErrReturnObject().setErrMsg("该配件核销单数量不符合要求,请检查订单明细数量").toString();
                 }
-                if (rowsMap.get(rowsdetail.get(i).getString("sa_orderitemsid")).get(0).getBigDecimal("canoffqty").compareTo(rowsdetail.get(i).getBigDecimal("checkqty")) < 0) {
+                if (canoffqty.compareTo(checkqty) < 0 && checkqty.compareTo(BigDecimal.ZERO) > 0) {
                     return getErrReturnObject().setErrMsg("该配件核销单数量不符合要求,请检查订单明细可核销数量").toString();
                 }
             } else {