|
|
@@ -635,6 +635,19 @@ public class dispatch extends Controller {
|
|
|
Rows rowsDispatchDetail = dbConnect.runSqlQuery("select t1.qty,t1.sa_orderitemsid,t1.rowno,t2.itemname from sa_dispatch_items t1 left join plm_item t2 on t1.itemid=t2.itemid and t1.siteid=t2.siteid where t1.sa_dispatchid=" + sa_dispatchid);
|
|
|
Rows rowsDispatchAllDetail = dbConnect.runSqlQuery("select sum(t1.outwarehouseqty) sumoutwarehouseqty,t1.sa_orderitemsid from sa_dispatch_items t1 inner join sa_dispatch t2 on t1.sa_dispatchid=t2.sa_dispatchid and t1.siteid=t2.siteid where t2.status in('复核','关闭','手工关闭') group by t1.sa_orderitemsid" );
|
|
|
RowsMap rowsDispatchAllDetailMap = rowsDispatchAllDetail.toRowsMap("sa_orderitemsid");
|
|
|
+
|
|
|
+ Rows rowscurrentDispatchDetail = dbConnect.runSqlQuery("select sum(t1.qty) qty,t1.sa_orderitemsid,t1.siteid,t2.itemno from sa_dispatch_items t1 left join plm_item t2 on t1.itemid=t2.itemid and t1.siteid=t2.siteid where t1.sa_dispatchid=" + sa_dispatchid+" group by t1.sa_orderitemsid,t1.siteid,t2.itemno");
|
|
|
+
|
|
|
+ if (!rowscurrentDispatchDetail.isEmpty()) {
|
|
|
+ for (Row row : rowscurrentDispatchDetail) {
|
|
|
+
|
|
|
+ if (row.getBigDecimal("qty").compareTo(rowsMap.get(row.getString("sa_orderitemsid")).get(0).getBigDecimal("undeliqty")) == 1) {
|
|
|
+ return getErrReturnObject().setErrMsg("【" + row.getString("itemno") + "】的发货单明细的发货数量超过未发量,无法复核")
|
|
|
+ .toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (!rowsDispatchDetail.isEmpty()) {
|
|
|
for (Row row : rowsDispatchDetail) {
|
|
|
if (rowsMap.get(row.getString("sa_orderitemsid")).isEmpty()) {
|
|
|
@@ -649,6 +662,7 @@ public class dispatch extends Controller {
|
|
|
return getErrReturnObject().setErrMsg("行号为:【" + row.getString("rowno") + "】的发货单明细的数量大于对应订单行的未发货数量,无法复核")
|
|
|
.toString();
|
|
|
}
|
|
|
+
|
|
|
if(!rowsDispatchAllDetailMap.get(row.getString("sa_orderitemsid")).isEmpty()){
|
|
|
if ((row.getBigDecimal("qty").add(rowsDispatchAllDetailMap.get(row.getString("sa_orderitemsid")).get(0).getBigDecimal("sumoutwarehouseqty"))).compareTo(rowsMap.get(row.getString("sa_orderitemsid")).get(0).getBigDecimal("qty")) == 1) {
|
|
|
return getErrReturnObject().setErrMsg("行号为:【" + row.getString("rowno") + "】的发货单明细的总出库数量大于对应订单行的数量,无法复核")
|
|
|
@@ -660,7 +674,6 @@ public class dispatch extends Controller {
|
|
|
}else {
|
|
|
return getErrReturnObject().setErrMsg("该发货单明细不存在,无法复核").toString();
|
|
|
}
|
|
|
-
|
|
|
Rows rows = dbConnect.runSqlQuery("select t1.*,t3.agentnum,t2.enterprisename,t4.sonum,t5.name,t5.phonenumber,t5.address from sa_dispatch t1 left join sys_enterprise t2 on t1.sys_enterpriseid=t2.sys_enterpriseid and t1.siteid=t2.siteid left join sa_agents t3 on t1.sys_enterpriseid=t3.sys_enterpriseid and t1.siteid=t3.siteid left join sa_order t4 on t1.sa_orderid=t4.sa_orderid and t1.siteid=t4.siteid left join sys_enterprise_contacts t5 on t1.rec_contactsid=t5.contactsid and t1.siteid=t5.siteid where t1.sa_dispatchid ='"
|
|
|
+ sa_dispatchid + "' and t1.siteid='" + siteid + "'");
|
|
|
Rows rowsdetail = dbConnect.runSqlQuery("select t3.sonum,t2.rowno sorowno,t4.itemno,t1.batchno,t1.rowno,t1.qty,t2.price,t1.remarks from sa_dispatch_items t1 left join sa_orderitems t2 on t1.sa_orderitemsid=t2.sa_orderitemsid and t1.siteid=t2.siteid left join sa_order t3 on t2.sa_orderid=t3.sa_orderid and t2.siteid=t3.siteid left join plm_item t4 on t1.itemid=t4.itemid and t1.siteid=t4.siteid where t1.sa_dispatchid ='"
|