update 备货出库,解决点击出库按钮报错MATERIALPACKINGSUB唯一冲突

This commit is contained in:
18110972313 2025-04-30 15:17:03 +08:00
parent 549bb6da71
commit f5d105e40b

View File

@ -712,6 +712,7 @@ public class SaleOutController {
hashMap.put("SHIPREQUESTNAME", shipRequestName);
// 关联详情单据去除当是现场仓时多余已经入库到现场仓的批次条码
/*
String sqlGetBox="SELECT\n" +
"m.MATERIALPACKINGNAME,\n" +
"m.MATERIALQUANTITY,\n" +
@ -726,6 +727,22 @@ public class SaleOutController {
"AND m.STOCKSTATE = 'Stocked'\n" +
"AND m.MATERIALQUANTITY2 >0\n" +
"AND (m.ERPLOCATION <> mdl.ERPRECEIVELOCATION OR mdl.ERPRECEIVELOCATION IS NULL)";
*/
String sqlGetBox = " SELECT m.MATERIALPACKINGNAME,\n" +
" m.MATERIALQUANTITY,\n" +
" DECODE(NVL(m.MATERIALQUANTITY2, 0), 0 , m.MATERIALQUANTITY, m.MATERIALQUANTITY2) MATERIALQUANTITY2\n" +
"FROM MATERIALPACKING m\n" +
"WHERE " +
"m.SHIPREQUESTNAME =:SHIPREQUESTNAME\n" +
"AND m.STOCKSTATE = 'Stocked'\n" +
"AND m.MATERIALQUANTITY2 > 0\n" +
"AND NOT EXISTS (\n" +
" SELECT 1 FROM MATERIALSHIPREQUESTDETAIL mdl\n" +
" WHERE mdl.SHIPREQUESTNAME = m.SHIPREQUESTNAME\n" +
" AND mdl.MATERIALSPECNAME = m.MATERIALSPECNAME\n" +
" AND (m.ERPLOCATION = mdl.ERPRECEIVELOCATION AND mdl.ERPRECEIVELOCATION IS NOT NULL)\n" +
") ";
List<Map<String, Object>> sr = IDMFrameServiceProxy.getSqlTemplate().queryForList(sqlGetBox, hashMap);
if(sr.size()>0)
{