|
|
@@ -322,13 +322,51 @@ public class dispatchItems extends Controller {
|
|
|
}
|
|
|
}
|
|
|
boolean isExport = content.getBooleanValue("isExport");
|
|
|
- SQLFactory sqlFactory = new SQLFactory(this, "发货单明细所有列表查询", pageSize, pageNumber, pageSorting);
|
|
|
- if (isExport) {
|
|
|
- sqlFactory = new SQLFactory(this, "发货单明细所有列表查询");
|
|
|
+// SQLFactory sqlFactory = new SQLFactory(this, "发货单明细所有列表查询", pageSize, pageNumber, pageSorting);
|
|
|
+// if (isExport) {
|
|
|
+// sqlFactory = new SQLFactory(this, "发货单明细所有列表查询");
|
|
|
+// }
|
|
|
+// sqlFactory.addParameter_SQL("where", where);
|
|
|
+// sqlFactory.addParameter("siteid", siteid);
|
|
|
+// Rows rows = dbConnect.runSqlQuery(sqlFactory);
|
|
|
+ QuerySQL querySQL = queryListManage(where.toString());
|
|
|
+ querySQL.setOrderBy(pageSorting);
|
|
|
+ Rows rows;
|
|
|
+ if (!isExport) {
|
|
|
+ querySQL.setPage(pageSize, pageNumber);
|
|
|
}
|
|
|
- sqlFactory.addParameter_SQL("where", where);
|
|
|
- sqlFactory.addParameter("siteid", siteid);
|
|
|
- Rows rows = dbConnect.runSqlQuery(sqlFactory);
|
|
|
+ rows = querySQL.query();
|
|
|
+
|
|
|
+ SQLFactory itemsqlFactory = new SQLFactory(this, "发货单明细关联商品列表查询");
|
|
|
+ itemsqlFactory.addParameter("siteid", siteid);
|
|
|
+ itemsqlFactory.addParameter_in("itemids", rows.toArrayList("itemid",new ArrayList<>()));
|
|
|
+ Rows itemRows = dbConnect.runSqlQuery(itemsqlFactory);
|
|
|
+ RowsMap itemRowsMap =itemRows.toRowsMap("itemid");
|
|
|
+
|
|
|
+ SQLFactory ordersqlFactory = new SQLFactory(this, "发货单明细关联订单列表查询");
|
|
|
+ ordersqlFactory.addParameter("siteid", siteid);
|
|
|
+ ordersqlFactory.addParameter_in("sa_orderitemsids", rows.toArrayList("sa_orderitemsid",new ArrayList<>()));
|
|
|
+ Rows orderRows = dbConnect.runSqlQuery(itemsqlFactory);
|
|
|
+ RowsMap orderRowsMap =orderRows.toRowsMap("sa_orderitemsid");
|
|
|
+
|
|
|
+ for (Row row :rows) {
|
|
|
+ if(orderRowsMap.containsKey(row.getString("sa_orderitemsid"))){
|
|
|
+ row.put("sa_orderid",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getString("sa_orderid"));
|
|
|
+ row.put("sonum",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getString("sonum"));
|
|
|
+ row.put("type",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getString("type"));
|
|
|
+ row.put("orderRowno",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getString("orderRowno"));
|
|
|
+ row.put("price",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getString("price"));
|
|
|
+ row.put("undeliqty",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getString("undeliqty"));
|
|
|
+ row.put("deliedqty",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getString("deliedqty"));
|
|
|
+ row.put("amount",orderRowsMap.get(row.getString("sa_orderitemsid")).get(0).getBigDecimal("price").multiply(row.getBigDecimal("qty")).toPlainString());
|
|
|
+ }
|
|
|
+ if(itemRowsMap.containsKey(row.getString("itemid"))){
|
|
|
+ row.put("itemno",itemRowsMap.get(row.getString("itemid")).get(0).getString("itemno"));
|
|
|
+ row.put("itemname",itemRowsMap.get(row.getString("itemid")).get(0).getString("itemname"));
|
|
|
+ row.put("unitname",itemRowsMap.get(row.getString("itemid")).get(0).getString("unitname"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
RowsMap rowsMap = rows.toRowsMap("itemno");
|
|
|
ERPDocking erpDocking = new ERPDocking();
|
|
|
JSONArray jsonArray = new JSONArray();
|
|
|
@@ -393,6 +431,25 @@ public class dispatchItems extends Controller {
|
|
|
}
|
|
|
return getSucReturnObject().setData(rows).toString();
|
|
|
}
|
|
|
+
|
|
|
+ //查询订单列表(管理端)
|
|
|
+ public QuerySQL queryListManage(String where) throws YosException {
|
|
|
+ QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_dispatch_items",
|
|
|
+ "sa_dispatch_itemsid","sa_dispatchid","sa_orderitemsid","isclose","rowno","itemid","outwarehousedate","batchno","remarks","ifnull(t1.qty, 0)"," ifnull(t1.outwarehouseqty, 0)");
|
|
|
+ querySQL.setTableAlias("t1");
|
|
|
+ querySQL.addJoinTable(JOINTYPE.left, "sa_dispatch", "t4", "t4.sa_dispatchid = t1.sa_dispatchid AND t4.siteid = t1.siteid",
|
|
|
+ "billno","status","billdate","closedate");
|
|
|
+ querySQL.addJoinTable(JOINTYPE.left, "sa_agents", "t9", "t9.sys_enterpriseid = t4.sys_enterpriseid and t9.siteid = t4.siteid",
|
|
|
+ "agentnum");
|
|
|
+ querySQL.addJoinTable(JOINTYPE.left, "sys_enterprise", "t10", "t10.sys_enterpriseid = t4.sys_enterpriseid and t10.siteid = t4.siteid",
|
|
|
+ "enterprisename");
|
|
|
+ querySQL.setWhere("t1.siteid", siteid);
|
|
|
+ querySQL.setWhere(where);
|
|
|
+ querySQL.setWhere("t4.status in ('审核','复核','关闭','手工关闭')");
|
|
|
+ return querySQL;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
@API(title = "工厂发货/退货明细", apiversion = R.ID20230626104003.v1.class)
|
|
|
@CACHEING
|
|
|
public String queryDispatchAndAftersalesmagItemsList() throws YosException, IOException {
|