hu 6 mesi fa
parent
commit
25b36977a8

+ 18 - 10
src/custom/restcontroller/webmanage/sale/sendplan/sendplandetail.java

@@ -145,6 +145,8 @@ public class sendplandetail extends Controller {
     public String createIcstockBill() throws YosException {
     public String createIcstockBill() throws YosException {
         long sa_sendplanid=content.getLong("sa_sendplanid");
         long sa_sendplanid=content.getLong("sa_sendplanid");
         Rows rows = dbConnect.runSqlQuery("select * from sa_sendplan where sa_sendplanid="+sa_sendplanid);
         Rows rows = dbConnect.runSqlQuery("select * from sa_sendplan where sa_sendplanid="+sa_sendplanid);
+        ArrayList<Long> sa_orderitemsids =new ArrayList<>();
+
         if(rows.isNotEmpty()){
         if(rows.isNotEmpty()){
             departmentid=rows.get(0).getLong("departmentid");
             departmentid=rows.get(0).getLong("departmentid");
         }
         }
@@ -156,6 +158,7 @@ public class sendplandetail extends Controller {
             if (jsonObject.getDouble("sendqty") <= 0) {
             if (jsonObject.getDouble("sendqty") <= 0) {
                 continue;
                 continue;
             }
             }
+            sa_orderitemsids.add(jsonObject.getLongValue("sa_orderitemsid"));
             String key = "";
             String key = "";
             String sys_enterpriseid = jsonObject.getString("sys_enterpriseid");
             String sys_enterpriseid = jsonObject.getString("sys_enterpriseid");
             String topclassnum = jsonObject.getString("topclassnum");
             String topclassnum = jsonObject.getString("topclassnum");
@@ -177,6 +180,12 @@ public class sendplandetail extends Controller {
             agent.put(key, paolist);
             agent.put(key, paolist);
             agentmap.put(sys_enterpriseid, agent);
             agentmap.put(sys_enterpriseid, agent);
         }
         }
+        QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_orderitems","*");
+        querySQL.setTableAlias("t1");
+        querySQL.setSiteid(siteid);
+        querySQL.setWhere("sa_orderitemsid", sa_orderitemsids);
+        Rows orderdetails = querySQL.query();
+        RowsMap orderdetailsRowsMap=orderdetails.toRowsMap("sa_orderitemsid");
         Iterator<Map.Entry<String, HashMap<String, List<JSONObject>>>> iter = agentmap
         Iterator<Map.Entry<String, HashMap<String, List<JSONObject>>>> iter = agentmap
                 .entrySet().iterator();
                 .entrySet().iterator();
 
 
@@ -222,8 +231,8 @@ public class sendplandetail extends Controller {
                 sqlFactory.addParameter("createdate", getDateTime_Str());
                 sqlFactory.addParameter("createdate", getDateTime_Str());
                 sqlFactory.addParameter("changeby", username);
                 sqlFactory.addParameter("changeby", username);
                 sqlFactory.addParameter("changedate", getDateTime_Str());
                 sqlFactory.addParameter("changedate", getDateTime_Str());
-                sqlFactory.addParameter("checkby", username);
-                sqlFactory.addParameter("checkdate", getDateTime_Str());
+                sqlFactory.addParameter("checkby", "");
+                sqlFactory.addParameter("checkdate","null");
                 sqlFactory.addParameter("remarks", "由发货计划自动生成" + key);
                 sqlFactory.addParameter("remarks", "由发货计划自动生成" + key);
                 sqlList.add(sqlFactory.getSQL());
                 sqlList.add(sqlFactory.getSQL());
 
 
@@ -239,13 +248,12 @@ public class sendplandetail extends Controller {
                     sqlFactorydetail.addParameter("st_stockbill_itemsid", createTableID("st_stockbill_items"));
                     sqlFactorydetail.addParameter("st_stockbill_itemsid", createTableID("st_stockbill_items"));
                     sqlFactorydetail.addParameter("st_stockbillid", st_stockbillid);
                     sqlFactorydetail.addParameter("st_stockbillid", st_stockbillid);
 
 
-                    Rows orderdetails = dbConnect.runSqlQuery("select * from sa_orderitems where sa_orderitemsid=" + jsonObject.getLongValue("sa_orderitemsid"));
-                    if (orderdetails.isNotEmpty()) {
-                        sqlFactorydetail.addParameter("remarks", orderdetails.get(0).getString("remarks"));
-                        sqlFactorydetail.addParameter("price", orderdetails.get(0).getBigDecimal("price"));
-                        sqlFactorydetail.addParameter("amount", orderdetails.get(0).getBigDecimal("price").multiply(qty));
-                        sqlFactorydetail.addParameter("defaultprice", orderdetails.get(0).getBigDecimal("defaultprice"));
-                        sqlFactorydetail.addParameter("custamount", orderdetails.get(0).getString("custamount"));
+                    if (orderdetailsRowsMap.containsKey(jsonObject.getLongValue("sa_orderitemsid"))) {
+                        sqlFactorydetail.addParameter("remarks", orderdetailsRowsMap.get(jsonObject.getLongValue("sa_orderitemsid")).get(0).getString("remarks"));
+                        sqlFactorydetail.addParameter("price", orderdetailsRowsMap.get(jsonObject.getLongValue("sa_orderitemsid")).get(0).getBigDecimal("price"));
+                        sqlFactorydetail.addParameter("amount", orderdetailsRowsMap.get(jsonObject.getLongValue("sa_orderitemsid")).get(0).getBigDecimal("price").multiply(qty));
+                        sqlFactorydetail.addParameter("defaultprice", orderdetailsRowsMap.get(jsonObject.getLongValue("sa_orderitemsid")).get(0).getBigDecimal("defaultprice"));
+                        sqlFactorydetail.addParameter("custamount", orderdetailsRowsMap.get(jsonObject.getLongValue("sa_orderitemsid")).get(0).getString("custamount"));
                     } else {
                     } else {
                         sqlFactorydetail.addParameter("remarks", "");
                         sqlFactorydetail.addParameter("remarks", "");
                         sqlFactorydetail.addParameter("price", 0);
                         sqlFactorydetail.addParameter("price", 0);
@@ -279,7 +287,7 @@ public class sendplandetail extends Controller {
         SQLFactory sqlFactory = new SQLFactory(this, "发货计划订单未发货量(简略)");
         SQLFactory sqlFactory = new SQLFactory(this, "发货计划订单未发货量(简略)");
         sqlFactory.addParameter_SQL("where", "1=1");
         sqlFactory.addParameter_SQL("where", "1=1");
         sqlFactory.addParameter("siteid", siteid);
         sqlFactory.addParameter("siteid", siteid);
-        pageSorting = "t2.checkdate desc";
+        pageSorting = "t2.sa_orderid desc";
         QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_sendplandetail", "sa_sendplanid","sa_sendplandetailid", "colorflag", "outplace", "sendqty", "willoutqty", "willinqty", "canuseqty");
         QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_sendplandetail", "sa_sendplanid","sa_sendplandetailid", "colorflag", "outplace", "sendqty", "willoutqty", "willinqty", "canuseqty");
         querySQL.setTableAlias("t1");
         querySQL.setTableAlias("t1");
         querySQL.addJoinTable(JOINTYPE.left, "sa_order", "t2", "t1.siteid = t2.siteid and t1.sa_orderid = t2.sa_orderid", "sonum", "checkdate", "sys_enterpriseid", "sa_orderid","rec_contactsid","delivery");
         querySQL.addJoinTable(JOINTYPE.left, "sa_order", "t2", "t1.siteid = t2.siteid and t1.sa_orderid = t2.sa_orderid", "sonum", "checkdate", "sys_enterpriseid", "sa_orderid","rec_contactsid","delivery");