Procházet zdrojové kódy

Merge remote-tracking branch 'origin/develop-test' into develop-test

shenjingwei před 1 týdnem
rodič
revize
78b16876b8

+ 2 - 1
src/custom/restcontroller/webmanage/sale/stockbill/stockbill.java

@@ -1077,7 +1077,8 @@ public class stockbill extends Controller {
         insertSQL.setValue("sourceobject", "st_stockbill");
         insertSQL.setValue("sourceobject", "st_stockbill");
         insertSQL.setValue("sourceid", rows.get(0).getLong("st_stockbillid"));
         insertSQL.setValue("sourceid", rows.get(0).getLong("st_stockbillid"));
 
 
-        insertSQL.setValue("period", rows.get(0).getString("period"));
+        //会计期间取单据日期所在月,不沿用原单据期间
+        insertSQL.setValue("period", getPeriod(false, new Date()));
 
 
         insertSQL.setValue("createby", username);
         insertSQL.setValue("createby", username);
         insertSQL.setDateValue("createdate");
         insertSQL.setDateValue("createdate");

+ 15 - 6
src/custom/restcontroller/webmanage/sale/tpartreimbursement/tpartreimbursementdetail.java

@@ -278,9 +278,9 @@ public class tpartreimbursementdetail extends Controller {
         }
         }
         Long sa_tpartreimbursementid = content.getLong("sa_tpartreimbursementid");
         Long sa_tpartreimbursementid = content.getLong("sa_tpartreimbursementid");
 
 
-        QuerySQL t6 =SQLFactory.createQuerySQL( this,"sa_tpartreimbursementdetail","sa_orderitemsid").setTableAlias("t1");
-        t6.addJoinTable(JOINTYPE.inner,"sa_tpartreimbursement","t2","t2.sa_tpartreimbursementid=t1.sa_tpartreimbursementid");
-        t6.addQueryFields("sumcheckqty","ifnull(sum(t1.checkqty),0)");
+        QuerySQL t6 = SQLFactory.createQuerySQL(this, "sa_tpartreimbursementdetail", "sa_orderitemsid").setTableAlias("t1");
+        t6.addJoinTable(JOINTYPE.inner, "sa_tpartreimbursement", "t2", "t2.sa_tpartreimbursementid=t1.sa_tpartreimbursementid");
+        t6.addQueryFields("sumcheckqty", "ifnull(sum(t1.checkqty),0)");
         t6.setWhere("t2.status='审核'");
         t6.setWhere("t2.status='审核'");
         t6.addGroupBy("t1.sa_orderitemsid");
         t6.addGroupBy("t1.sa_orderitemsid");
 
 
@@ -288,7 +288,7 @@ public class tpartreimbursementdetail extends Controller {
         QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_tpartreimbursementdetail", "sa_tpartreimbursementdetailid", "remarks", "sa_orderitemsid", "sa_tpartreimbursementid", "qty", "checkqty", "hongbillno");
         QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_tpartreimbursementdetail", "sa_tpartreimbursementdetailid", "remarks", "sa_orderitemsid", "sa_tpartreimbursementid", "qty", "checkqty", "hongbillno");
         querySQL.setTableAlias("t1");
         querySQL.setTableAlias("t1");
         querySQL.addJoinTable(JOINTYPE.inner, "sa_orderitems", "t2", "t1.sa_orderitemsid = t2.sa_orderitemsid AND t1.siteid = t2.siteid",
         querySQL.addJoinTable(JOINTYPE.inner, "sa_orderitems", "t2", "t1.sa_orderitemsid = t2.sa_orderitemsid AND t1.siteid = t2.siteid",
-                "price", "rowno", "cardno", "billingstatus","canoffqty","sa_orderid","tobeoffqty","canoffqty");
+                "price", "rowno", "cardno", "billingstatus", "canoffqty", "sa_orderid", "tobeoffqty", "canoffqty");
         querySQL.addJoinTable(JOINTYPE.left, "plm_item", "t3", "t2.itemid = t3.itemid AND t2.siteid = t3.siteid", "itemno", "itemname", "spec", "model");
         querySQL.addJoinTable(JOINTYPE.left, "plm_item", "t3", "t2.itemid = t3.itemid AND t2.siteid = t3.siteid", "itemno", "itemname", "spec", "model");
         querySQL.addJoinTable(JOINTYPE.left, "sa_order", "t4", "t2.sa_orderid = t4.sa_orderid AND t2.siteid = t4.siteid", "sonum");
         querySQL.addJoinTable(JOINTYPE.left, "sa_order", "t4", "t2.sa_orderid = t4.sa_orderid AND t2.siteid = t4.siteid", "sonum");
         querySQL.addJoinTable(JOINTYPE.left, "sa_warrantycard", "t5", "t2.cardno = t5.cardno AND t2.siteid = t5.siteid", "name", "phonenumber", "address");
         querySQL.addJoinTable(JOINTYPE.left, "sa_warrantycard", "t5", "t2.cardno = t5.cardno AND t2.siteid = t5.siteid", "name", "phonenumber", "address");
@@ -301,8 +301,17 @@ public class tpartreimbursementdetail extends Controller {
         querySQL.setPage(pageSize, pageNumber);
         querySQL.setPage(pageSize, pageNumber);
         Rows rows = querySQL.query();
         Rows rows = querySQL.query();
 
 
-        for (Row row:rows) {
-            row.putIfAbsent("sumcheckqty",0);
+        // 查询明细行关联的出库单
+        QuerySQL stockbillQuery = SQLFactory.createQuerySQL(this, "st_stockbill_items", "sa_orderitemsid", "st_stockbillid");
+        stockbillQuery.setTableAlias("t1");
+        stockbillQuery.addJoinTable(JOINTYPE.left, "st_stockbill", "t2", "t1.st_stockbillid = t2.st_stockbillid AND t1.siteid = t2.siteid", "billno");
+        stockbillQuery.setSiteid(siteid);
+        stockbillQuery.setWhere("t1.sa_orderitemsid", rows.toArrayList("sa_orderitemsid"));
+        Rows stockbillRows = stockbillQuery.query();
+        RowsMap stockbillRowsMap = stockbillRows.toRowsMap("sa_orderitemsid");
+        for (Row row : rows) {
+            row.put("stockbills", stockbillRowsMap.getOrDefault(row.getString("sa_orderitemsid"), new Rows()));
+            row.putIfAbsent("sumcheckqty", 0);
         }
         }
 
 
         return getSucReturnObject().setData(rows).toString();
         return getSucReturnObject().setData(rows).toString();