浏览代码

库存查询

hu 5 月之前
父节点
当前提交
d0a763d6ac
共有 1 个文件被更改,包括 19 次插入11 次删除
  1. 19 11
      src/custom/restcontroller/webmanage/sale/invbal/invbal.java

+ 19 - 11
src/custom/restcontroller/webmanage/sale/invbal/invbal.java

@@ -94,9 +94,7 @@ public class invbal extends Controller {
             if (whereObject.containsKey("condition") && !"".equals(whereObject.getString("condition"))) {
                 where.append(" and(");
                 where.append("t2.itemno like'%").append(whereObject.getString("condition")).append("%' ");
-                where.append("or t3.erpitemno like'%").append(whereObject.getString("condition")).append("%' ");
-                where.append("or t3.enterprisename like'%").append(whereObject.getString("condition")).append("%' ");
-                where.append("or t2.erpitemname like'%").append(whereObject.getString("condition")).append("%' ");
+                where.append("or t2.itemname like'%").append(whereObject.getString("condition")).append("%' ");
                 where.append(")");
             }
         }
@@ -106,22 +104,22 @@ public class invbal extends Controller {
 //            sqlFactory = new SQLFactory(this, "销售库存列表查询", pageSize, pageNumber, pageSorting);
             querySQL = SQLFactory.createQuerySQL(this, "st_invbal_sale", "*");
             querySQL.setTableAlias("t1");
-            querySQL.addJoinTable(JOINTYPE.left, "plm_item", "t2", "t1.itemid = t2.itemid AND t1.siteid = t2.siteid","itemno","itemname");
-            querySQL.addJoinTable(JOINTYPE.left, "plm_itemextend", "t3", "t1.itemid = t3.itemid AND t1.siteid = t3.siteid","erpitemno","erpitemname");
-            querySQL.addQueryFields("stockstatus","(SELECT (case\n" +
-                    "                    when t1.cansaleqty >= t2.stockstatus1 then '充足'\n" +
-                    "                when t1.cansaleqty <= t2.stockstatus2 then '缺货'\n" +
-                    "                    else '紧缺' end))");
+            querySQL.addJoinTable(JOINTYPE.left, "plm_item", "t2", "t1.itemid = t2.itemid AND t1.siteid = t2.siteid","itemno","itemname","model");
+            querySQL.addJoinTable(JOINTYPE.left, "plm_unit", "t3", "t3.unitid = t2.unitid AND t3.siteid = t2.siteid","unitname");
             querySQL.setSiteid(siteid);
             querySQL.setWhere(where.toString());
 
         } else {
+
 //            sqlFactory = new SQLFactory(this, "即时库存列表查询", pageSize, pageNumber, pageSorting);
             querySQL = SQLFactory.createQuerySQL(this, "st_invbal", "*");
             querySQL.setTableAlias("t1");
-            querySQL.addJoinTable(JOINTYPE.left, "plm_item", "t2", "t1.itemid = t2.itemid AND t1.siteid = t2.siteid","itemno","itemname");
-            querySQL.addJoinTable(JOINTYPE.left, "plm_itemextend", "t3", "t1.itemid = t3.itemid AND t1.siteid = t3.siteid","erpitemno","erpitemname");
+            querySQL.addJoinTable(JOINTYPE.left, "plm_item", "t2", "t1.itemid = t2.itemid AND t1.siteid = t2.siteid","itemno","itemname","model");
+            querySQL.addJoinTable(JOINTYPE.left, "st_stock", "t3", "t1.stockid = t3.stockid AND t1.siteid = t3.siteid","stockno","stockname");
+            querySQL.addJoinTable(JOINTYPE.left, "plm_unit", "t4", "t4.unitid = t2.unitid AND t4.siteid = t2.siteid","unitname");
+            querySQL.addJoinTable(JOINTYPE.left, "st_stock", "t5", "t2.stockno = t5.stockno AND t2.siteid = t5.siteid");
             querySQL.setSiteid(siteid);
+            querySQL.addQueryFields("defaultstock","t5.stockname");
             querySQL.setWhere(where.toString());
         }
 
@@ -131,6 +129,16 @@ public class invbal extends Controller {
         querySQL.setPage(pageSize, pageNumber);
         querySQL.setOrderBy(pageSorting);
         Rows rows = querySQL.query();
+
+        if(!istotal){
+            ArrayList<Long> ids = rows.toArrayList("itemid", new ArrayList<>());
+            // 营销类别
+            RowsMap itemClassRowsMap = ItemClass.getAllItemClassRowsMap(this, ids);
+            for (Row row : rows) {
+                row.put("itemclass", itemClassRowsMap.getOrDefault(row.getString("itemid"), new Rows()));
+            }
+        }
+
         return getSucReturnObject().setData(rows).toString();
     }