Ver código fonte

订单明细起订量逻辑更新

hu 2 anos atrás
pai
commit
4ce71a7356

+ 1 - 1
src/custom/restcontroller/webmanage/sale/order/OrderItems.java

@@ -156,7 +156,7 @@ public class OrderItems extends Controller {
                 if (promotionRows.get(0).getString("type").equals("打包促销")) {
                     BigDecimal orderaddqty = promotionRows.get(0).getBigDecimal("orderaddqty");
                     BigDecimal orderminqty = promotionRows.get(0).getBigDecimal("orderminqty");
-                    if (((sumqty.subtract(orderminqty)).remainder(orderaddqty)).compareTo(BigDecimal.ZERO) != 0) {
+                    if (((sumqty.subtract(orderminqty)).remainder(orderaddqty)).compareTo(BigDecimal.ZERO) != 0 || sumqty.compareTo(orderminqty)<0) {
                         return getErrReturnObject().setErrMsg("不符合促销活动订购数量规则,修改不成功").toString();
                     }
                 }

+ 2 - 2
src/custom/restcontroller/webmanage/sale/order/OrderItemsHelper.java

@@ -40,7 +40,7 @@ public class OrderItemsHelper extends BaseClass {
                 if (itemRowsMap.get(itemid).isNotEmpty()) {
                     BigDecimal orderaddqty = itemRowsMap.get(itemid).get(0).getBigDecimal("orderaddqty");
                     BigDecimal orderminqty = itemRowsMap.get(itemid).get(0).getBigDecimal("orderminqty");
-                    if (((qty.subtract(orderminqty)).remainder(orderaddqty)).compareTo(BigDecimal.ZERO) != 0) {
+                    if (((qty.subtract(orderminqty)).remainder(orderaddqty)).compareTo(BigDecimal.ZERO) != 0 || qty.compareTo(orderminqty)<0) {
                         throw new YosException("品号为" + itemRowsMap.get(itemid).get(0).getString("itemno") + "的商品数量不符合该商品的起订量和增量");
                     }
                 }
@@ -55,7 +55,7 @@ public class OrderItemsHelper extends BaseClass {
                     BigDecimal orderaddqty = pRowsMap.get(itemid).get(0).getBigDecimal("orderaddqty");
                     BigDecimal orderminqty = pRowsMap.get(itemid).get(0).getBigDecimal("orderminqty");
                     boolean islimit = pRowsMap.get(itemid).get(0).getBoolean("islimit");
-                    if (((qty.subtract(orderminqty)).remainder(orderaddqty)).compareTo(BigDecimal.ZERO) != 0) {
+                    if (((qty.subtract(orderminqty)).remainder(orderaddqty)).compareTo(BigDecimal.ZERO) != 0 || qty.compareTo(orderminqty)<0) {
                         throw new YosException("品号为" + itemRowsMap.get(itemid).get(0).getString("itemno") + "的商品数量不符合该商品的起订量和增量");
                     }
                     if (islimit) {