fix:修改辅材拆分问题
This commit is contained in:
parent
986382f077
commit
823009d83d
@ -15,6 +15,7 @@ public class MaterialPacking extends FieldAccessor implements DataInfo<MaterialP
|
|||||||
|
|
||||||
private String materialPackingType;
|
private String materialPackingType;
|
||||||
private String contentMaterialType;
|
private String contentMaterialType;
|
||||||
|
|
||||||
private String materialType;
|
private String materialType;
|
||||||
private String materialSpecName;
|
private String materialSpecName;
|
||||||
private String superMaterialPackingName;
|
private String superMaterialPackingName;
|
||||||
|
@ -633,6 +633,7 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
* @param boxList 出库的物料信息
|
* @param boxList 出库的物料信息
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
|
@Transactional
|
||||||
public AjaxResult MaterialShipRequestAuxiliaryStockOut(EventInfo eventInfo, String siteName, String shipRequestName,
|
public AjaxResult MaterialShipRequestAuxiliaryStockOut(EventInfo eventInfo, String siteName, String shipRequestName,
|
||||||
String user, List<LinkedHashMap<String,String>> boxList, String commitDate) throws Exception {
|
String user, List<LinkedHashMap<String,String>> boxList, String commitDate) throws Exception {
|
||||||
//判断单据类型调用不同的NC接口
|
//判断单据类型调用不同的NC接口
|
||||||
@ -784,7 +785,7 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
String materialPackingName = qtyQueryForList.get(z).getMaterialPackingName();
|
String materialPackingName = qtyQueryForList.get(z).getMaterialPackingName();
|
||||||
// String charge = qtyQueryForList.get(z).getCharge(); // 辅材出库无批次
|
// String charge = qtyQueryForList.get(z).getCharge(); // 辅材出库无批次
|
||||||
List<String> boxId = MaterialPackingServiceImpl.generateBoxID("LabelId", siteName,
|
List<String> boxId = MaterialPackingServiceImpl.generateBoxID("LabelId", siteName,
|
||||||
"100", qtyQueryForList.get(z).getMakeDate().toString(),packingQueryForList.get(z).get("MATERIALTYPE").toString(),qtyQueryForList.get(z).getErpFactory());
|
"1", qtyQueryForList.get(z).getMakeDate().toString(),packingQueryForList.get(z).get("MATERIALTYPE").toString(),qtyQueryForList.get(z).getErpFactory());
|
||||||
BigDecimal bigQty = new BigDecimal(qty);
|
BigDecimal bigQty = new BigDecimal(qty);
|
||||||
// 已拆数量
|
// 已拆数量
|
||||||
BigDecimal bigQty2 = new BigDecimal(qty2);
|
BigDecimal bigQty2 = new BigDecimal(qty2);
|
||||||
@ -819,16 +820,22 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
if (moveTransformOut != true) {
|
if (moveTransformOut != true) {
|
||||||
throw new RuntimeException("修改数量拆分失败");
|
throw new RuntimeException("修改数量拆分失败");
|
||||||
}
|
}
|
||||||
|
// 记录到拆分表
|
||||||
|
String shipRequestDetailName = qtyQueryForList.get(z).getShipRequestDetailName() == null ? "" : qtyQueryForList.get(z).getShipRequestDetailName().toString();
|
||||||
|
untils.fahuoSplit(newPalletNo, shipRequestName, shipRequestDetailName, bigQty2);
|
||||||
|
|
||||||
// 原条码扣减拆出的数量,用剩余数量更新原条码,条码不变,数量更新
|
// 原条码扣减拆出的数量,用剩余数量更新原条码,条码不变,数量更新,并且解绑单据
|
||||||
SetEventInfo setEventInfo = new SetEventInfo();
|
SetEventInfo setEventInfo = new SetEventInfo();
|
||||||
Map<String, Object> pakHashMap = new HashMap<>();
|
Map<String, Object> pakHashMap = new HashMap<>();
|
||||||
pakHashMap.put("materialQuantity", restQty.doubleValue());
|
pakHashMap.put("materialQuantity", restQty.doubleValue());
|
||||||
|
pakHashMap.put("materialQuantity2", 0);
|
||||||
|
pakHashMap.put("shipRequestName", "");
|
||||||
|
pakHashMap.put("shipRequestDetailName", "");
|
||||||
|
|
||||||
EventInfo eventInfo2 = new EventInfoUtil().makeEventInfo("备货出库拆分修改数量拆分条码", user, "修改数量拆分条码");
|
EventInfo eventInfo2 = new EventInfoUtil().makeEventInfo("辅材出库拆分", user, "拆分条码");
|
||||||
setEventInfo.setUserColumns(pakHashMap);
|
setEventInfo.setUserColumns(pakHashMap);
|
||||||
MaterialPackingServiceProxy.getMaterialPackingService().setEvent(new MaterialPackingKey( queryForList.get(z).get("SITENAME").toString(),
|
|
||||||
queryForList.get(z).get("MATERIALPACKINGNAME").toString()), eventInfo2, setEventInfo);
|
MaterialPackingServiceProxy.getMaterialPackingService().setEvent(new MaterialPackingKey( "SDK",MATERIALPACKINGNAME), eventInfo2, setEventInfo);
|
||||||
|
|
||||||
// 删除被拆分的原条码数据,用拆分出的新条码覆盖,进行后面的过账,现场仓过账只过账已拆分出的数量,剩余数量的原条码不过账
|
// 删除被拆分的原条码数据,用拆分出的新条码覆盖,进行后面的过账,现场仓过账只过账已拆分出的数量,剩余数量的原条码不过账
|
||||||
boolean deletePacking = materialPackingKeyList.remove(MATERIALPACKINGNAME);
|
boolean deletePacking = materialPackingKeyList.remove(MATERIALPACKINGNAME);
|
||||||
@ -837,9 +844,10 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
billCode=TransferStockOut_NLCC(shipRequestName, "SDK", user,materialPackingKeyList);
|
billCode=TransferStockOut_NLCC(shipRequestName, "SDK", user,materialPackingKeyList, commitDate);
|
||||||
//makeEventInfo = eventInfoUtil.makeEventInfo("CompleteShipRequest", eventUser, "CompleteShipRequest:"+shipRequestType);
|
//makeEventInfo = eventInfoUtil.makeEventInfo("CompleteShipRequest", eventUser, "CompleteShipRequest:"+shipRequestType);
|
||||||
untils.SaveUnDoInfo_ForSap(materialPackingKeyList, billCode, eventInfo);
|
untils.SaveUnDoInfo_ForSap(materialPackingKeyList, billCode, eventInfo);
|
||||||
|
// untils.SaveSplitUnDoInfo_ForSap(materialPackingKeyList, billCode, eventInfo);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "01"://生产领料
|
case "01"://生产领料
|
||||||
@ -1012,7 +1020,7 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String TransferStockOut_NLCC(String shipRequestName, String siteName, String user,List<String> boxList) throws Exception {
|
public String TransferStockOut_NLCC(String shipRequestName, String siteName, String user,List<String> boxList,String commitDate) throws Exception {
|
||||||
String rcode;
|
String rcode;
|
||||||
String undoId = "";
|
String undoId = "";
|
||||||
String rmsg = null;
|
String rmsg = null;
|
||||||
@ -1070,10 +1078,15 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
*/
|
*/
|
||||||
//交货单号
|
//交货单号
|
||||||
body.put("VBELN", shipRequestName);
|
body.put("VBELN", shipRequestName);
|
||||||
|
|
||||||
|
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
|
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyyMMdd");
|
||||||
|
Date date = inputFormat.parse(commitDate);
|
||||||
|
String outputDate = outputFormat.format(date);
|
||||||
//实际过账日期
|
//实际过账日期
|
||||||
body.put("WADAT_IST", TimeStampUtil.getCurrentTime("yyyyMMdd"));//yyyyMMddhhmmss
|
body.put("WADAT_IST", outputDate);//yyyyMMddhhmmss
|
||||||
//发送日期
|
//发送日期
|
||||||
body.put("Z_SENDDATE", TimeStampUtil.getCurrentTime("yyyyMMdd"));
|
body.put("Z_SENDDATE", outputDate);
|
||||||
//操作类型(过账)
|
//操作类型(过账)
|
||||||
body.put("Z_OPTION", "1");
|
body.put("Z_OPTION", "1");
|
||||||
|
|
||||||
@ -1842,7 +1855,6 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@Transactional
|
|
||||||
public boolean packingChargeSplit(List<MaterialPacking> boxList, String user) {
|
public boolean packingChargeSplit(List<MaterialPacking> boxList, String user) {
|
||||||
|
|
||||||
String condition="";
|
String condition="";
|
||||||
@ -1900,15 +1912,19 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
String REMARK = "";
|
String REMARK = "";
|
||||||
String SHIPREQUESTNAME = "";
|
String SHIPREQUESTNAME = "";
|
||||||
String SHIPREQUESTDETAILNAME = "";
|
String SHIPREQUESTDETAILNAME = "";
|
||||||
|
String MATERIALTYPE = "";
|
||||||
|
String RECEIVEACTNO = "";
|
||||||
|
String UNDOID = "";
|
||||||
|
String FIFOFLAG = "";
|
||||||
|
|
||||||
String ypcSql = "SELECT M.RECEIVETIME,M.MAKEDATE,M.EXPIRINGDATE,M.HOLDSTATE,M.OQARESULTSTATE ,\r\n" +
|
String ypcSql = "SELECT M.RECEIVETIME,M.MAKEDATE,M.EXPIRINGDATE,M.HOLDSTATE,M.OQARESULTSTATE ,\r\n" +
|
||||||
" M.OQARESULT ,M.PACKINGGRADE ,M.TRUEGG ,M.ERPFACTORY ,M.ERPLOCATION ,M.LOCATIONNAME ,\r\n" +
|
" M.OQARESULT ,M.PACKINGGRADE ,M.TRUEGG ,M.ERPFACTORY ,M.ERPLOCATION ,M.LOCATIONNAME ,\r\n" +
|
||||||
" M.SHELFNAME ,M.AREANAME ,M.DURABLENAME ,M.CAREER_ASSISTANCE ,M.SALESPERSON ,M.CUSTOMNO,M.SDK_ID,M.PHASE,M.SHIPREQUESTNAME,M.SHIPREQUESTDETAILNAME,M.RECEIVEREQUESTNAME,M.RECEIVEREQUESTDETAILNAME,"
|
" M.SHELFNAME ,M.MATERIALTYPE,M.AREANAME ,M.DURABLENAME ,M.CAREER_ASSISTANCE ,M.SALESPERSON ,M.CUSTOMNO,M.SDK_ID,M.PHASE,M.SHIPREQUESTNAME,M.SHIPREQUESTDETAILNAME,M.RECEIVEREQUESTNAME,M.RECEIVEREQUESTDETAILNAME,"
|
||||||
+ " M.DEVIATION ,M.DIAMETER ,M.WIDTH ,M.WEIGHT ,M.PRODUCTLINE,UNIT ,MJPC,BUSINESS_UNIT,M.MATERIALSPECNAME, M.SUBPACKINGQUANTITY, M.MATERIALCREATEQUANTITY, M.MATERIALQUANTITY, M.CHARGE, M.REMARK" +
|
+ " M.DEVIATION ,M.DIAMETER ,M.WIDTH ,M.WEIGHT ,M.PRODUCTLINE,UNIT ,MJPC,BUSINESS_UNIT,M.MATERIALSPECNAME, M.SUBPACKINGQUANTITY, M.MATERIALCREATEQUANTITY, M.MATERIALQUANTITY, M.CHARGE, M.REMARK" +
|
||||||
" FROM MATERIALPACKING M WHERE M.MATERIALPACKINGNAME = :MATERIALPACKINGNAME AND M.CHARGE = :CHARGE ";
|
" FROM MATERIALPACKING M WHERE M.MATERIALPACKINGNAME = :MATERIALPACKINGNAME "; //AND M.CHARGE = :CHARGE
|
||||||
Map<String, Object> hashMap4 = new HashMap<String,Object> ();
|
Map<String, Object> hashMap4 = new HashMap<String,Object> ();
|
||||||
hashMap4.put("MATERIALPACKINGNAME", boxList.get(0).getMaterialPackingName());
|
hashMap4.put("MATERIALPACKINGNAME", boxList.get(0).getMaterialPackingName());
|
||||||
hashMap4.put("CHARGE", boxList.get(0).getCharge());
|
// hashMap4.put("CHARGE", boxList.get(0).getCharge());
|
||||||
List<Map<String, Object>> queryForList3 = IDMFrameServiceProxy.getSqlTemplate().queryForList(ypcSql, hashMap4);
|
List<Map<String, Object>> queryForList3 = IDMFrameServiceProxy.getSqlTemplate().queryForList(ypcSql, hashMap4);
|
||||||
|
|
||||||
if (queryForList3 != null && queryForList3.size() > 0) {
|
if (queryForList3 != null && queryForList3.size() > 0) {
|
||||||
@ -1944,7 +1960,10 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
REMARK = map.get("REMARK") == null ? "" : map.get("REMARK").toString();
|
REMARK = map.get("REMARK") == null ? "" : map.get("REMARK").toString();
|
||||||
SHIPREQUESTNAME = map.get("SHIPREQUESTNAME") == null ? "" : map.get("SHIPREQUESTNAME").toString();
|
SHIPREQUESTNAME = map.get("SHIPREQUESTNAME") == null ? "" : map.get("SHIPREQUESTNAME").toString();
|
||||||
SHIPREQUESTDETAILNAME = map.get("SHIPREQUESTDETAILNAME") == null ? "" : map.get("SHIPREQUESTDETAILNAME").toString();
|
SHIPREQUESTDETAILNAME = map.get("SHIPREQUESTDETAILNAME") == null ? "" : map.get("SHIPREQUESTDETAILNAME").toString();
|
||||||
|
MATERIALTYPE = map.get("MATERIALTYPE") == null ? "" : map.get("MATERIALTYPE").toString();
|
||||||
|
RECEIVEACTNO = map.get("RECEIVEACTNO") == null ? "" : map.get("RECEIVEACTNO").toString();
|
||||||
|
UNDOID = map.get("UNDOID") == null ? "" : map.get("UNDOID").toString();
|
||||||
|
FIFOFLAG = map.get("FIFOFLAG") == null ? "" : map.get("FIFOFLAG").toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (MaterialPackingList != null && MaterialPackingList.size() > 0) {
|
if (MaterialPackingList != null && MaterialPackingList.size() > 0) {
|
||||||
@ -1971,7 +1990,7 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
bindMap.put("OldStockState", "Created");
|
bindMap.put("OldStockState", "Created");
|
||||||
bindMap.put("HoldState", holdState);
|
bindMap.put("HoldState", holdState);
|
||||||
bindMap.put("LocationName", locationName);
|
bindMap.put("LocationName", locationName);
|
||||||
bindMap.put("charge",CHARGE);
|
// bindMap.put("charge",CHARGE); // 无批次不需要标签
|
||||||
bindMap.put("MaterialProcessGroupName","");
|
bindMap.put("MaterialProcessGroupName","");
|
||||||
bindMap.put("LastEventTimeKey",TimeStampUtil.getCurrentEventTimeKey());
|
bindMap.put("LastEventTimeKey",TimeStampUtil.getCurrentEventTimeKey());
|
||||||
|
|
||||||
@ -1992,8 +2011,12 @@ public class MaterialShipServiceImpl implements IMaterialShipService {
|
|||||||
bindMap.put("shipRequestName", SHIPREQUESTNAME);
|
bindMap.put("shipRequestName", SHIPREQUESTNAME);
|
||||||
bindMap.put("shipRequestDetailName",SHIPREQUESTDETAILNAME);
|
bindMap.put("shipRequestDetailName",SHIPREQUESTDETAILNAME);
|
||||||
|
|
||||||
bindMap.put("ReceiveRequestName", RECEIVEREQUESTNAME);
|
bindMap.put("receiveRequestName", RECEIVEREQUESTNAME);
|
||||||
bindMap.put("ReceiveRequestDetailName",RECEIVEREQUESTDETAILNAME);
|
bindMap.put("receiveRequestDetailName",RECEIVEREQUESTDETAILNAME);
|
||||||
|
bindMap.put("materialType", MATERIALTYPE);
|
||||||
|
bindMap.put("receiveActNo", RECEIVEACTNO);
|
||||||
|
bindMap.put("unDoID", UNDOID);
|
||||||
|
bindMap.put("fifoFlag", FIFOFLAG);
|
||||||
|
|
||||||
bindMap.put("CAREER_ASSISTANCE", CAREER_ASSISTANCE);//业助信息
|
bindMap.put("CAREER_ASSISTANCE", CAREER_ASSISTANCE);//业助信息
|
||||||
bindMap.put("BUSINESS_UNIT", BUSINESS_UNIT);//业务
|
bindMap.put("BUSINESS_UNIT", BUSINESS_UNIT);//业务
|
||||||
|
@ -663,6 +663,91 @@ public void SaveUnDoInfo_ForSap(List<String> list, String undoid, EventInfo mak
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void SaveSplitUnDoInfo_ForSap(List<String> list, String undoid, EventInfo makeEventInfo) {
|
||||||
|
|
||||||
|
// 更新事件名
|
||||||
|
// 此SQL语句用于更新物料包装的最后事件名称、评论和时间
|
||||||
|
String sqlu="UPDATE MATERIALPACKING m SET m.LASTEVENTNAME=:LASTEVENTNAME,m.LASTEVENTCOMMENT =:LASTEVENTCOMMENT,m.LASTEVENTTIME =SYSDATE \r\n" +
|
||||||
|
" WHERE m.SITENAME =:SITENAME AND m.MATERIALPACKINGNAME in (:BOXLIST)";
|
||||||
|
Map<String,Object> bpu = new HashMap<String,Object> ();
|
||||||
|
bpu.put("LASTEVENTNAME", makeEventInfo.getEventName());
|
||||||
|
bpu.put("LASTEVENTCOMMENT", makeEventInfo.getEventComment());
|
||||||
|
bpu.put("SITENAME", "SDK");
|
||||||
|
bpu.put("BOXLIST", list);
|
||||||
|
IDMFrameServiceProxy.getSqlTemplate().update(sqlu, bpu);
|
||||||
|
|
||||||
|
// 销售交货单不返回凭证
|
||||||
|
// 如果undoid不等于"S",则执行更新和插入操作,以记录undo信息
|
||||||
|
if(!StringUtils.equals("S", undoid))
|
||||||
|
{
|
||||||
|
// 更新undo信息
|
||||||
|
// 此SQL语句用于更新物料包装的undoid,仅当库存状态为'Stocked'时
|
||||||
|
String updateUndoInfo = "UPDATE MATERIALPACKING T SET T.unDoID = :unDoID WHERE T.MATERIALPACKINGNAME in (:MATERIALPACKINGNAME) "
|
||||||
|
+ " AND STOCKSTATE = 'Stocked'";
|
||||||
|
|
||||||
|
Map<String,Object> map = new HashMap<String,Object> ();
|
||||||
|
map.put("MATERIALPACKINGNAME", list);
|
||||||
|
map.put("unDoID", undoid);
|
||||||
|
IDMFrameServiceProxy.getSqlTemplate().update(updateUndoInfo, map);
|
||||||
|
|
||||||
|
|
||||||
|
// 插入undo物料包装信息
|
||||||
|
// 此SQL语句用于插入新的记录到BS_MATERIALPACKINGUNDOINFO表中,记录详细的undo信息
|
||||||
|
String insertUnDOMaterialPackingInfo = "insert into BS_MATERIALPACKINGUNDOINFO (unDoID,preundoid,UNDODETAILNAME,undoidstate,UNDOIDDATE,"
|
||||||
|
+ "SITENAME, MATERIALPACKINGNAME, MATERIALPACKINGTYPE, CONTENTMATERIALTYPE,"
|
||||||
|
+ "MATERIALTYPE, MATERIALSPECNAME, SUPERMATERIALPACKINGNAME, PACKINGGRADE, SUBPACKINGQUANTITY, MATERIALCREATEQUANTITY,"
|
||||||
|
+ "MATERIALQUANTITY, PACKINGSTATE, OLDPACKINGSTATE, STOCKSTATE, OLDSTOCKSTATE, HOLDSTATE, AREANAME, LOCATIONNAME,"
|
||||||
|
+ "DURABLENAME, MATERIALPROCESSGROUPNAME, LASTEVENTNAME, LASTEVENTTIMEKEY, LASTEVENTTIME, LASTEVENTUSER,"
|
||||||
|
+ "LASTEVENTCOMMENT, CREATETIME, CREATEUSER, RECEIVEREQUESTNAME, RECEIVEREQUESTDETAILNAME,"
|
||||||
|
+ "MAKEDATE, RECEIVEACTNO, STOCKINTYPE, RECEIVETIME, RECEIVEUSER, SHIPREQUESTNAME, SHIPREQUESTDETAILNAME, SHIPTIME,"
|
||||||
|
+ "SHIPUSER, REASONCODETYPE, OQARESULTSTATE, OQARESULT, ERPLOCATION, ERPFACTORY, REASONCODE, CHARGE, SUPPLIERNAME,ETCSTATE,ERPEVENTTIME,NPFLAG)"
|
||||||
|
+ "select unDoID,'' as preundoid,UNDODETAILNAME,'Created' as undoidstate,:UNDOIDDATE AS UNDOIDDATE," //
|
||||||
|
+ "SITENAME, MATERIALPACKINGNAME, MATERIALPACKINGTYPE, CONTENTMATERIALTYPE,"
|
||||||
|
+ "MATERIALTYPE, MATERIALSPECNAME, SUPERMATERIALPACKINGNAME, PACKINGGRADE, SUBPACKINGQUANTITY, MATERIALCREATEQUANTITY,"
|
||||||
|
+ "DECODE(MATERIALQUANTITY2,0,MATERIALQUANTITY,MATERIALQUANTITY2) MATERIALQUANTITY, PACKINGSTATE, OLDPACKINGSTATE, STOCKSTATE, OLDSTOCKSTATE, HOLDSTATE, AREANAME, LOCATIONNAME,"
|
||||||
|
+ "DURABLENAME, MATERIALPROCESSGROUPNAME, LASTEVENTNAME, LASTEVENTTIMEKEY, LASTEVENTTIME, LASTEVENTUSER,"
|
||||||
|
+ "LASTEVENTCOMMENT, CREATETIME, CREATEUSER, RECEIVEREQUESTNAME, RECEIVEREQUESTDETAILNAME,"
|
||||||
|
+ "MAKEDATE, RECEIVEACTNO, STOCKINTYPE, RECEIVETIME, RECEIVEUSER, SHIPREQUESTNAME, SHIPREQUESTDETAILNAME, SHIPTIME,"
|
||||||
|
+ "SHIPUSER, REASONCODETYPE, OQARESULTSTATE, OQARESULT, ERPLOCATION, ERPFACTORY, REASONCODE, CHARGE, SUPPLIERNAME,ETCSTATE,ERPEVENTTIME,NPFLAG"
|
||||||
|
+ " from MATERIALPACKING "
|
||||||
|
+ " where unDoID=:UNDOID";
|
||||||
|
|
||||||
|
Map<String, Object> bindMap_insert = new HashMap<String, Object>();
|
||||||
|
bindMap_insert.put("UNDOIDDATE", "");
|
||||||
|
bindMap_insert.put("UNDOID", undoid);
|
||||||
|
IDMFrameServiceProxy.getSqlTemplate()
|
||||||
|
.update(insertUnDOMaterialPackingInfo, bindMap_insert);
|
||||||
|
}
|
||||||
|
// 更新Box状态
|
||||||
|
// 根据物料数量和包装数量,更新物料包装的状态和相关属性
|
||||||
|
for (String s : list) {
|
||||||
|
MaterialPackingKey materialPackingKey = new MaterialPackingKey("SDK",s);
|
||||||
|
com.cim.idm.wmspackage.materialpacking.management.data.MaterialPacking selectByKey = MaterialPackingServiceProxy.getMaterialPackingService().selectByKey(materialPackingKey);
|
||||||
|
double materialQuantity = selectByKey.getMaterialQuantity();
|
||||||
|
double materialQuantity2 = selectByKey.getMaterialQuantity2();
|
||||||
|
BigDecimal fmaterialQuantity = new BigDecimal(materialQuantity);
|
||||||
|
BigDecimal fmaterialQuantity2 = new BigDecimal(materialQuantity2);
|
||||||
|
if (fmaterialQuantity.compareTo(fmaterialQuantity2) > 0 && fmaterialQuantity2.compareTo(BigDecimal.ZERO) != 0) {
|
||||||
|
Map<String, Object> hashMap = new HashMap<String,Object> ();
|
||||||
|
// hashMap.put("materialQuantity", fmaterialQuantity.subtract(fmaterialQuantity2));
|
||||||
|
hashMap.put("materialQuantity2", 0);
|
||||||
|
hashMap.put("shipRequestName", "");
|
||||||
|
hashMap.put("shipRequestDetailName", "");
|
||||||
|
SetEventInfo setEventInfo = new SetEventInfo();
|
||||||
|
setEventInfo.setUserColumns(hashMap);
|
||||||
|
MaterialPackingServiceProxy.getMaterialPackingService().setEvent(materialPackingKey, makeEventInfo, setEventInfo);
|
||||||
|
} else {
|
||||||
|
Map<String, Object> hashMap = new HashMap<String,Object> ();
|
||||||
|
hashMap.put("stockState", "StockOut");
|
||||||
|
SetEventInfo setEventInfo = new SetEventInfo();
|
||||||
|
setEventInfo.setUserColumns(hashMap);
|
||||||
|
MaterialPackingServiceProxy.getMaterialPackingService().setEvent(materialPackingKey, makeEventInfo, setEventInfo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 将物料信息发送到MES系统(制造执行系统)的新版本方法
|
* 将物料信息发送到MES系统(制造执行系统)的新版本方法
|
||||||
|
Loading…
x
Reference in New Issue
Block a user