Browse Source

发货单商品所有明细列表添加营销类别字段

hu 1 year ago
parent
commit
f880c858dd

+ 11 - 0
src/custom/restcontroller/webmanage/sale/dispatch/SQL/发货单明细关联商品营销类别查询.sql

@@ -0,0 +1,11 @@
+SELECT t4.itemid,
+       t1.siteid,
+       t1.itemclassid,
+       t1.itemclassname,
+       t1.itemclassfullname
+from plm_itemclass t1
+         INNER JOIN sa_itemsaleclass t4 on t4.itemclassid = t1.itemclassid and t1.siteid = t4.siteid
+    where
+    t1.siteid = $siteid$
+	AND t4.itemid IN $itemids$
+	

+ 14 - 0
src/custom/restcontroller/webmanage/sale/dispatch/dispatchItems.java

@@ -460,6 +460,13 @@ public class dispatchItems extends Controller {
         Rows areaRows = dbConnect.runSqlQuery(areasqlFactory);
         RowsMap areaRowsMap = areaRows.toRowsMap("sys_enterpriseid");
 
+        SQLFactory itemclasssqlFactory = new SQLFactory(this, "发货单明细关联商品营销类别查询");
+        itemclasssqlFactory.addParameter("siteid", siteid);
+        itemclasssqlFactory.addParameter_in("itemids", rows.toArrayList("itemid", new ArrayList<>()));
+        Rows itemclassRows = dbConnect.runSqlQuery(itemclasssqlFactory);
+        RowsMap itemclassRowsMap = itemclassRows.toRowsMap("itemid");
+
+
 //        SQLFactory itemsqlFactory = new SQLFactory(this, "发货单明细关联商品列表查询");
 //        itemsqlFactory.addParameter("siteid", siteid);
 //        itemsqlFactory.addParameter_in("itemids", rows.toArrayList("itemid", new ArrayList<>()));
@@ -512,6 +519,12 @@ public class dispatchItems extends Controller {
             } else {
                 row.put("areaname", "");
             }
+            if (itemclassRowsMap.containsKey(row.getString("itemid"))) {
+                row.put("itemclassname", itemclassRowsMap.get(row.getString("itemid")).get(0).getString("itemclassname"));
+            } else {
+                row.put("itemclassname", "");
+            }
+
             if (!row.containsKey("delinvbalqty")) {
                 row.put("delinvbalqty", row.getBigDecimal("undeliqty").negate().doubleValue());
                 row.put("invbalqty", 0);
@@ -563,6 +576,7 @@ public class dispatchItems extends Controller {
                 "enterprisename", "sys_enterpriseid");
         querySQL.addJoinTable(JOINTYPE.left, "plm_unit", "t11", "t11.unitid = t2.unitid and t11.siteid = t2.siteid",
                 "unitname");
+
         querySQL.addJoinTable(JOINTYPE.left, "sa_accountclass", "t12", "t12.sa_accountclassid=t8.sa_accountclassid and t12.siteid=t8.siteid");
         querySQL.addQueryFields("qty", "ifnull(t1.qty, 0)");
         querySQL.addQueryFields("outwarehouseqty", "ifnull(t1.outwarehouseqty, 0)");