ソースを参照

客户档案(经销商/服务商)接口逻辑优化及订单表体原单价优化

hu 2 日 前
コミット
97f96e6d10

+ 2 - 0
src/custom/restcontroller/webmanage/sale/customer/Customer.java

@@ -992,6 +992,7 @@ public class Customer extends Controller {
         querySQL.addQueryFields("abbreviation_to","t5.abbreviation");
         querySQL.setSiteid(siteid);
         querySQL.setWhere(where.toString());
+        querySQL.setWhere("(ifnull(t1.sa_agentsid,0)!=0 or ifnull(t1.sa_agentsid_to,0)!=0)");
 
         querySQL.setOrderBy(pageSorting);
         querySQL.setPage(pageSize, pageNumber);
@@ -1031,6 +1032,7 @@ public class Customer extends Controller {
         querySQL.addQueryFields("abbreviation_to","t5.abbreviation");
         querySQL.setSiteid(siteid);
         querySQL.setWhere(where.toString());
+        querySQL.setWhere("(ifnull(t1.sa_agentsid,0)!=0 or ifnull(t1.sa_agentsid_to,0)!=0)");
         querySQL.setWhere("(t1.sa_agentsid="+sa_agentsid+" or t1.sa_agentsid_to="+sa_agentsid+")");
 
         querySQL.setPage(pageSize, pageNumber);

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

@@ -181,23 +181,12 @@ public class OrderItems extends Controller {
             }
             //价格
             ItemPrice itemPrice = ItemPrice.getItemPrice(this, sys_enterpriseid, itemid);
-            if (!item.containsKey("defaultprice")) {
-                defaultprice = orderItemsHelper.getDefaultprice(itemPrice);
-                price = orderItemsHelper.getPrice(orderRows.get(0), itemPrice, item, itemRowsMap);
-                saleprice = orderItemsHelper.getSalePrice(orderRows.get(0), itemPrice, item, itemRowsMap);
-            } else {
-                defaultprice = item.getBigDecimal("defaultprice");
-                price = item.getBigDecimal("price");
-                saleprice = orderItemsHelper.getSalePrice(orderRows.get(0), itemPrice, item, itemRowsMap);
-                if (price.compareTo(price1) != 0) {
-                    sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "订单商品【" + itemRow.getString("itemname") + "】由单价:" + price1 + "修改为单价:" + price, "订单修改单价").getSQL());
-                }
-            }
+            price = orderItemsHelper.getPrice(orderRows.get(0), itemPrice, item);
+            saleprice = orderItemsHelper.getSalePrice(orderRows.get(0), itemPrice, item, itemRowsMap);
             if (price.compareTo(BigDecimal.ZERO) < 0) {
                 return getErrReturnObject().setErrMsg("价格不可小于0").toString();
             }
-
-
+            defaultprice= price.multiply(rwpricerate);
             if (isInsert) {
                 price = price.multiply(rwpricerate).add(custamount);
                 sqlList.add(orderItemsHelper.getInsertSQL(customproperties, sa_orderitemsid, item, itemRow, type, defaultprice, price, saleprice, itemPrice.getMarketprice(), spec, promotionitems, width, length, custamount, rwpricerate, pricerate).getSQL());

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

@@ -773,32 +773,16 @@ public class OrderItemsHelper extends BaseClass {
 
     }
 
-    public BigDecimal getPrice(Row orderRow, ItemPrice itemPrice, JSONObject item, RowsMap itemRowsMap) throws YosException {
+    public BigDecimal getPrice(Row orderRow, ItemPrice itemPrice, JSONObject item) throws YosException {
         String type = orderRow.getString("type");
         Long sa_promotionid = orderRow.getLong("sa_promotionid");
         BigDecimal price;
         switch (type) {
             case "促销订单":
                 price = itemPrice.getPromotionPrice(sa_promotionid,item.getLong("sa_promotion_itemsid"));
-                if (itemRowsMap.containsKey(item.getString("itemid"))) {
-                    if (itemRowsMap.get(item.getString("itemid")).isNotEmpty()) {
-                        if (itemRowsMap.get(item.getString("itemid")).get(0).getBoolean("iscustomsize") && itemRowsMap.get(item.getString("itemid")).get(0).getLong("pricingmetod") == 1) {
-                            price = price.multiply(item.getBigDecimal("length").multiply(item.getBigDecimal("width")).divide(new BigDecimal("1000000"), 4, BigDecimal.ROUND_HALF_UP));
-                        }
-
-                    }
-                }
                 break;
             default:
                 price = itemPrice.getGraderateprice();
-                if (itemRowsMap.containsKey(item.getString("itemid"))) {
-                    if (itemRowsMap.get(item.getString("itemid")).isNotEmpty()) {
-                        if (itemRowsMap.get(item.getString("itemid")).get(0).getBoolean("iscustomsize") && itemRowsMap.get(item.getString("itemid")).get(0).getLong("pricingmetod") == 1) {
-                            price = price.multiply(item.getBigDecimal("length").multiply(item.getBigDecimal("width")).divide(new BigDecimal("1000000"), 4, BigDecimal.ROUND_HALF_UP));
-                        }
-
-                    }
-                }
         }
 
         return price;