Browse Source

商品审核时更新营销大类

hu 2 years ago
parent
commit
4a876d1e58

+ 4 - 0
src/custom/restcontroller/R.java

@@ -5193,6 +5193,10 @@ public class R {
         public static class v1 {
         }
     }
+    public static class ID20230729165303 {
+        public static class v1 {
+        }
+    }
 
 }
 

+ 16 - 0
src/custom/restcontroller/webmanage/sale/item/Item.java

@@ -565,6 +565,9 @@ public class Item extends Controller {
         Rows itemRows = dbConnect.runSqlQuery("select itemid,itemno,itemname,sa_customschemeid,isonsale from plm_item where siteid='" + siteid + "'");
         RowsMap itemRowsMap = itemRows.toRowsMap("itemid");
 
+        Rows itemclassRows = dbConnect.runSqlQuery("select itemid,itemclassid from sa_itemsaleclass  where siteid='" + siteid + "'");
+        RowsMap itemclassRowsMap = itemclassRows.toRowsMap("itemid");
+
         ArrayList<String> sqlList = new ArrayList<>();
         for (Object obj : jsonArray) {
             int id = (int) obj;
@@ -573,6 +576,19 @@ public class Item extends Controller {
             sqlFactory.addParameter("siteid", siteid);
             sqlFactory.addParameter("username", username);
             sqlFactory.addParameter("status", status.equals("0") ? "新建" : "审核");
+
+            if(itemclassRowsMap.containsKey(String.valueOf(id))){
+                if(itemclassRowsMap.get(String.valueOf(id)).isNotEmpty()){
+                    SQLFactory sqlFactory1 = new SQLFactory(this, "获取最上级营销类别名称");
+                    sqlFactory1.addParameter_in("itemclassid",  itemclassRowsMap.get(String.valueOf(id)).get(0).getLong("itemclassid"));
+                    sqlFactory1.addParameter("siteid", siteid);
+                    Rows rows = dbConnect.runSqlQuery(sqlFactory1.getSQL());
+                    if(rows.isNotEmpty()){
+                        sqlList.add("update plm_item set marketingcategory='"+ rows.get(0).getString("itemclassname")+"' where siteid='"+siteid+"' and itemid="+id);
+                    }
+                }
+            }
+
             if (status.equals("0")) {
                 if (itemRowsMap.containsKey(String.valueOf(id))) {
                     if (!itemRowsMap.get(String.valueOf(id)).isEmpty()) {

+ 12 - 0
src/custom/restcontroller/webmanage/sale/item/SQL/获取最上级营销类别名称.sql

@@ -0,0 +1,12 @@
+select itemclassname from plm_itemclass t1 inner join (with recursive itemclass as (
+    select itemclassid, parentid
+    from plm_itemclass
+    where siteid = $siteid$
+      and itemclassid in $itemclassid$
+union all
+select t2.itemclassid, t2.parentid
+from itemclass t1
+         inner join plm_itemclass t2 on t2.itemclassid = t1.parentid and t2.siteid = $siteid$)
+select distinct itemclassid
+from itemclass
+where itemclassid not in $itemclassid$) t2 on t1.itemclassid=t2.itemclassid where t1.siteid=$siteid$ and ifnull(t1.parentid,0)=0