Merge branch 'main' of http://162.14.99.253:3000/10539622/2025-03-JS-SDK-svr
This commit is contained in:
commit
a8f558b65a
@ -5425,6 +5425,116 @@ public class ToSAPServiceImpl {
|
|||||||
return undoId;
|
return undoId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//盘盈出库--pc
|
||||||
|
public String MaterialScrapStockOutPc(List<Map<String, Object>> queryForList, String siteName, String user,String commitDate,
|
||||||
|
String opCode,String qtc,String costName) throws Exception {
|
||||||
|
String rcode;
|
||||||
|
String undoId = "";
|
||||||
|
String rmsg = null;
|
||||||
|
if (queryForList == null || queryForList.size() < 1) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
|
||||||
|
JSONObject sendData = new JSONObject(true);
|
||||||
|
JSONObject header = new JSONObject(true);
|
||||||
|
sendData.put("HEAD", header);
|
||||||
|
JSONObject body = new JSONObject(true);
|
||||||
|
sendData.put("BODY", body);
|
||||||
|
JSONArray itemArray = new JSONArray();
|
||||||
|
|
||||||
|
/*
|
||||||
|
HEAD
|
||||||
|
*/
|
||||||
|
header.put("INTF_ID", "MM067");
|
||||||
|
String uniqueID = UUID.randomUUID().toString();
|
||||||
|
header.put("REQ_KEYID", uniqueID);
|
||||||
|
header.put("SRC_MSGID", uniqueID);
|
||||||
|
header.put("SRC_SYSTEM", "WMS");
|
||||||
|
header.put("DEST_SYSTEM", "SAP");
|
||||||
|
header.put("REQUSER", user);
|
||||||
|
|
||||||
|
/*
|
||||||
|
BODY
|
||||||
|
*/
|
||||||
|
body.put("ITEM", itemArray);
|
||||||
|
body.put("ITEMID", uniqueID);
|
||||||
|
|
||||||
|
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
|
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyyMMdd");
|
||||||
|
Date date = inputFormat.parse(commitDate);
|
||||||
|
String outputDate = outputFormat.format(date);
|
||||||
|
//过账日期
|
||||||
|
body.put("BUDAT", outputDate);
|
||||||
|
//凭证日期
|
||||||
|
body.put("BLDAT", outputDate);
|
||||||
|
//凭证抬头文本
|
||||||
|
body.put("BKTXT", uniqueID);
|
||||||
|
//用户名
|
||||||
|
body.put("USNAM", user);
|
||||||
|
|
||||||
|
for (Map<String, Object> mm : queryForList) {
|
||||||
|
|
||||||
|
JSONObject item = new JSONObject(true);
|
||||||
|
// MATNR 发货物料号
|
||||||
|
item.put("MATNR", mm.get("MATERIALSPECNAME"));
|
||||||
|
// WERKS 发货工厂
|
||||||
|
item.put("WERKS", mm.get("ERPFACTORY"));
|
||||||
|
// LGORT 发货库存地点
|
||||||
|
item.put("LGORT", mm.get("ERPLOCATION"));
|
||||||
|
//BWART 移动类型
|
||||||
|
item.put("BWART", qtc);
|
||||||
|
item.put("KOSTL", costName);
|
||||||
|
//MENGE 数量
|
||||||
|
item.put("MENGE", mm.get("MATERIALQUANTITY"));
|
||||||
|
//MENGE 单位
|
||||||
|
item.put("MEINS", mm.get("UNIT"));
|
||||||
|
//需要SAP改动,Z07,Z08目前都需要返单号
|
||||||
|
//ZLLORDER 自定义领料单号
|
||||||
|
// item.put("ZLLORDER", mm.get("SHIPREQUESTNAME"));
|
||||||
|
// //ZLLITEM 自定义领料单行号
|
||||||
|
// item.put("ZLLITEM", mm.get("SHIPREQUESTDETAILNAME"));
|
||||||
|
|
||||||
|
itemArray.add(item);
|
||||||
|
}
|
||||||
|
log.info("SendTOSAP >>>>" + sendData);
|
||||||
|
String sapreturn = toSAPMessageUtil.sendHttpPost(toSAPMessageUtil.materialChangeLocationUrl, "", sendData.toJSONString());
|
||||||
|
org.json.JSONObject receiveJsonObject = new org.json.JSONObject(sapreturn);
|
||||||
|
org.json.JSONObject returnJsonObject = (org.json.JSONObject) receiveJsonObject.get("RETURN");
|
||||||
|
rcode = returnJsonObject.get("STATUS").toString();
|
||||||
|
rmsg = returnJsonObject.get("MSGTXT").toString();
|
||||||
|
|
||||||
|
if ("S".equals(rcode)) {
|
||||||
|
undoId = returnJsonObject.get("MBLNR").toString()+"_"+returnJsonObject.get("MJAHR").toString();//将物料凭证号与凭证年度拼在一起
|
||||||
|
}
|
||||||
|
//将log写到表里
|
||||||
|
UUID uuid = UUID.randomUUID();
|
||||||
|
ErpMessageLog erplog = new ErpMessageLog();
|
||||||
|
erplog.setEventUser("");
|
||||||
|
erplog.setServerName("WmsToErp");
|
||||||
|
if ("Z05".equals(qtc)) {
|
||||||
|
erplog.setEventName("盘亏出库");
|
||||||
|
} else {
|
||||||
|
erplog.setEventName("报废出库");
|
||||||
|
}
|
||||||
|
erplog.setId(uuid.toString());
|
||||||
|
erplog.setInterfaceTime(TimeStampUtil.getCurrentTime(TimeStampUtil.FORMAT_DEFAULT));
|
||||||
|
erplog.setMessageId(UUID.randomUUID().toString());
|
||||||
|
erplog.setSendMsg(sendData.toJSONString());
|
||||||
|
erplog.setSendMsg2(sendData.toJSONString());
|
||||||
|
erplog.setReturnMsg2(sapreturn);
|
||||||
|
erplog.setResultCode(rcode);
|
||||||
|
MessageLogUtil.writeMessageLog(erplog);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.info(e.getMessage(), e);
|
||||||
|
throw new RuntimeException("SAP返回" + rmsg);
|
||||||
|
}
|
||||||
|
if (!"S".equals(rcode)) {
|
||||||
|
throw new RuntimeException("SAP返回" + rmsg);
|
||||||
|
}
|
||||||
|
return undoId;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 退料入库
|
* 退料入库
|
||||||
*
|
*
|
||||||
@ -5527,6 +5637,7 @@ public class ToSAPServiceImpl {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public String makeReturnStockIn(List<Map<String, Object>> list, String eventUser, String commitDate) throws JsonMappingException, JsonProcessingException {
|
public String makeReturnStockIn(List<Map<String, Object>> list, String eventUser, String commitDate) throws JsonMappingException, JsonProcessingException {
|
||||||
if (list == null || list.size() < 1) {
|
if (list == null || list.size() < 1) {
|
||||||
return "";
|
return "";
|
||||||
@ -5980,10 +6091,8 @@ public class ToSAPServiceImpl {
|
|||||||
item.put("BWART",moveType);
|
item.put("BWART",moveType);
|
||||||
item.put("MENGE", mm.get("MATERIALQUANTITY"));
|
item.put("MENGE", mm.get("MATERIALQUANTITY"));
|
||||||
item.put("MEINS", mm.get("UNIT"));
|
item.put("MEINS", mm.get("UNIT"));
|
||||||
if ("413E".equals(moveType)) {
|
item.put("UMMAT_KDAUF", mm.get("OLDSALESHIPREQUESTNAME"));
|
||||||
item.put("UMMAT_KDAUF", mm.get("OLDSALESHIPREQUESTNAME"));
|
item.put("UMMAT_KDPOS", mm.get("OLDSALESHIPREQUESTDETAILNAME"));
|
||||||
item.put("UMMAT_KDPOS", mm.get("OLDSALESHIPREQUESTDETAILNAME"));
|
|
||||||
}
|
|
||||||
String insmk = "";
|
String insmk = "";
|
||||||
// if("NG".equals(pqcResult) ){
|
// if("NG".equals(pqcResult) ){
|
||||||
// insmk = "3";
|
// insmk = "3";
|
||||||
@ -5991,21 +6100,12 @@ public class ToSAPServiceImpl {
|
|||||||
// String insmk = StringUtils.equals(mm.get("OQARESULTSTATE").toString(),"END")?"":"X";
|
// String insmk = StringUtils.equals(mm.get("OQARESULTSTATE").toString(),"END")?"":"X";
|
||||||
item.put("INSMK", insmk);
|
item.put("INSMK", insmk);
|
||||||
|
|
||||||
/*if("411E".equals(moveType) || "413E".equals(moveType)) {
|
if("411E".equals(moveType) || "413E".equals(moveType)) {
|
||||||
item.put("MAT_KDAUF", mm.get("SALESHIPREQUESTNAME")); // 发货销售订单编码
|
item.put("MAT_KDAUF", mm.get("SALESHIPREQUESTNAME")); // 发货销售订单编码
|
||||||
item.put("MAT_KDPOS", mm.get("SALESHIPREQUESTDETAILNAME")); // 发货销售订单项目编码
|
item.put("MAT_KDPOS", mm.get("SALESHIPREQUESTDETAILNAME")); // 发货销售订单项目编码
|
||||||
} else if("413".equals(moveType) || "413E".equals(moveType)) {
|
} else if("413".equals(moveType) || "413E".equals(moveType)) {
|
||||||
item.put("UMMAT_KDAUF", SALESHIPREQUESTNAME); // 发货销售订单编码
|
item.put("UMMAT_KDAUF", SALESHIPREQUESTNAME); // 发货销售订单编码
|
||||||
item.put("UMMAT_KDPOS", SALESHIPREQUESTDETAILNAME); // 发货销售订单项目编码
|
item.put("UMMAT_KDPOS", SALESHIPREQUESTDETAILNAME); // 发货销售订单项目编码
|
||||||
}*/
|
|
||||||
|
|
||||||
if ("411E".equals(moveType)) {
|
|
||||||
item.put("MAT_KDAUF", mm.get("OLDSALESHIPREQUESTNAME")); // 发货销售订单编码
|
|
||||||
item.put("MAT_KDPOS", mm.get("OLDSALESHIPREQUESTDETAILNAME")); // 发货销售订单项目编码
|
|
||||||
}
|
|
||||||
if ("413".equals(moveType) || "413E".equals(moveType)) {
|
|
||||||
item.put("MAT_KDAUF", mm.get("SALESHIPREQUESTNAME")); // 发货销售订单编码
|
|
||||||
item.put("MAT_KDPOS", mm.get("SALESHIPREQUESTDETAILNAME")); // 发货销售订单项目编码
|
|
||||||
}
|
}
|
||||||
|
|
||||||
itemData.add(item);
|
itemData.add(item);
|
||||||
@ -6587,7 +6687,7 @@ public class ToSAPServiceImpl {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 转工单-新
|
* 转工单-新
|
||||||
* @param materialPackingList
|
* @param mapList
|
||||||
* @param mes
|
* @param mes
|
||||||
* @param bwart
|
* @param bwart
|
||||||
* @return
|
* @return
|
||||||
@ -6606,7 +6706,6 @@ public class ToSAPServiceImpl {
|
|||||||
sendData.put("HEAD", header);
|
sendData.put("HEAD", header);
|
||||||
JSONObject body = new JSONObject(true);
|
JSONObject body = new JSONObject(true);
|
||||||
sendData.put("BODY", body);
|
sendData.put("BODY", body);
|
||||||
JSONArray itemArray = new JSONArray();
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
HEAD
|
HEAD
|
||||||
@ -6639,36 +6738,9 @@ public class ToSAPServiceImpl {
|
|||||||
}
|
}
|
||||||
for (Map<String, Object> mm : mapList) {
|
for (Map<String, Object> mm : mapList) {
|
||||||
mm.put("BWART", bwart);
|
mm.put("BWART", bwart);
|
||||||
JSONObject item = new JSONObject(true);
|
|
||||||
/*if(materialPackingList.size()>0) {
|
|
||||||
// MATNR 发货物料号
|
|
||||||
item.put("MATNR", mm.getMATNR());
|
|
||||||
|
|
||||||
// WERKS 发货工厂
|
|
||||||
item.put("WERKS", mm.getWERKS());
|
|
||||||
// LGORT 发货库存地点
|
|
||||||
item.put("LGORT", mm.getLGORT());
|
|
||||||
//MENGE 数量
|
|
||||||
item.put("MENGE",mm.getMENGE());
|
|
||||||
//MENGE 单位
|
|
||||||
item.put("MEINS",mm.getMEINS());
|
|
||||||
item.put("BWART", bwart);
|
|
||||||
//ZLLORDER 自定义领料单号
|
|
||||||
// item.put("ZLLORDER", "LL1010250408001");
|
|
||||||
item.put("ZLLORDER", mm.getZLLORDER());
|
|
||||||
//ZLLITEM 自定义领料单行号
|
|
||||||
|
|
||||||
// item.put("ZLLITEM", "0001");
|
|
||||||
item.put("ZLLITEM", mm.getZLLITEM());
|
|
||||||
//AUFNR 订单号
|
|
||||||
item.put("AUFNR", mm.getAUFNR());
|
|
||||||
|
|
||||||
}
|
|
||||||
itemArray.add(item);*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
System.out.println(mapList);
|
log.info("SendTOSAP >>>>" + sendData);
|
||||||
/*log.info("SendTOSAP >>>>" + sendData);
|
|
||||||
String sendDatas = sendData.toJSONString();
|
String sendDatas = sendData.toJSONString();
|
||||||
String sapreturn = toSAPMessageUtil.sendHttpPost(toSAPMessageUtil.materialChangeLocationUrl, "", sendDatas);
|
String sapreturn = toSAPMessageUtil.sendHttpPost(toSAPMessageUtil.materialChangeLocationUrl, "", sendDatas);
|
||||||
org.json.JSONObject receiveJsonObject = new org.json.JSONObject(sapreturn);
|
org.json.JSONObject receiveJsonObject = new org.json.JSONObject(sapreturn);
|
||||||
@ -6681,24 +6753,28 @@ public class ToSAPServiceImpl {
|
|||||||
}
|
}
|
||||||
//将log写到表里
|
//将log写到表里
|
||||||
ErpMessageLog erplog = new ErpMessageLog();
|
ErpMessageLog erplog = new ErpMessageLog();
|
||||||
erplog.setEventUser("");
|
erplog.setEventUser(mes);
|
||||||
erplog.setServerName("WmsToErp");
|
erplog.setServerName("WmsToErp");
|
||||||
erplog.setEventName("MES物料消耗261和转工单");
|
if ("261".equals(bwart)) {
|
||||||
|
erplog.setEventName("转工单-入库");
|
||||||
|
} else {
|
||||||
|
erplog.setEventName("转工单-出库");
|
||||||
|
}
|
||||||
erplog.setInterfaceTime(TimeStampUtil.getCurrentTime(TimeStampUtil.FORMAT_DEFAULT));
|
erplog.setInterfaceTime(TimeStampUtil.getCurrentTime(TimeStampUtil.FORMAT_DEFAULT));
|
||||||
erplog.setMessageId(UUID.randomUUID().toString());
|
erplog.setMessageId(UUID.randomUUID().toString());
|
||||||
erplog.setSendMsg(sendData.toJSONString());
|
erplog.setSendMsg(sendData.toJSONString());
|
||||||
erplog.setSendMsg2(sendData.toJSONString());
|
erplog.setSendMsg2(sendData.toJSONString());
|
||||||
erplog.setReturnMsg2(sapreturn);
|
erplog.setReturnMsg2(sapreturn);
|
||||||
erplog.setResultCode(rcode);
|
erplog.setResultCode(rcode);
|
||||||
MessageLogUtil.writeMessageLog(erplog);*/
|
MessageLogUtil.writeMessageLog(erplog);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.info(e.getMessage(), e);
|
log.info(e.getMessage(), e);
|
||||||
// throw new RuntimeException("SAP返回" + e.toString());
|
throw new RuntimeException("SAP返回" + e.toString());
|
||||||
}
|
}
|
||||||
/* if (!"S".equals(rcode)) {
|
if (!"S".equals(rcode)) {
|
||||||
throw new RuntimeException("SAP返回" + rmsg);
|
throw new RuntimeException("SAP返回" + rmsg);
|
||||||
}*/
|
}
|
||||||
return null;
|
return undoId;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -29,8 +29,8 @@ public class CostCenterController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "/getCostCenter", method = RequestMethod.GET)
|
@RequestMapping(value = "/getCostCenter", method = RequestMethod.GET)
|
||||||
public BaseResponse<Object> getCostCenter() {
|
public BaseResponse<Object> getCostCenter(String erpFactory) {
|
||||||
List<CostCenter> costCenters = costCenterService.getCostCenter();
|
List<CostCenter> costCenters = costCenterService.getCostCenter(erpFactory);
|
||||||
return RespGenerator.returnOK(costCenters);
|
return RespGenerator.returnOK(costCenters);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,6 +7,7 @@ import com.cim.idm.constants.delivery.DeliveryStateEnums;
|
|||||||
import com.cim.idm.constants.receive.ReceiveTypeEnums;
|
import com.cim.idm.constants.receive.ReceiveTypeEnums;
|
||||||
import com.cim.idm.framework.IDMFrameServiceProxy;
|
import com.cim.idm.framework.IDMFrameServiceProxy;
|
||||||
import com.cim.idm.framework.data.EventInfo;
|
import com.cim.idm.framework.data.EventInfo;
|
||||||
|
import com.cim.idm.model.MaterialReceiveParam;
|
||||||
import com.cim.idm.model.dto.AuxiliaryOutIn;
|
import com.cim.idm.model.dto.AuxiliaryOutIn;
|
||||||
import com.cim.idm.model.dto.delivery.DeliveryEditDto;
|
import com.cim.idm.model.dto.delivery.DeliveryEditDto;
|
||||||
import com.cim.idm.model.dto.delivery.StoreDetailDto;
|
import com.cim.idm.model.dto.delivery.StoreDetailDto;
|
||||||
@ -21,6 +22,7 @@ import com.cim.idm.service.CostCenterService;
|
|||||||
import com.cim.idm.service.IDeliveryService;
|
import com.cim.idm.service.IDeliveryService;
|
||||||
import com.cim.idm.service.IMaterialPackingService;
|
import com.cim.idm.service.IMaterialPackingService;
|
||||||
import com.cim.idm.service.IMaterialShipService;
|
import com.cim.idm.service.IMaterialShipService;
|
||||||
|
import com.cim.idm.service.Impl.NoInvoiceManagerServiceImpl;
|
||||||
import com.cim.idm.service.impl.QMSServiceImpl;
|
import com.cim.idm.service.impl.QMSServiceImpl;
|
||||||
import com.cim.idm.service.impl.ToSAPServiceImpl;
|
import com.cim.idm.service.impl.ToSAPServiceImpl;
|
||||||
import com.cim.idm.utils.AjaxResult;
|
import com.cim.idm.utils.AjaxResult;
|
||||||
@ -32,6 +34,7 @@ import com.cim.idm.wmspackage.materialpacking.management.data.MaterialPackingKey
|
|||||||
import com.cim.idm.wmspackage.materialpacking.management.info.CreateInfo;
|
import com.cim.idm.wmspackage.materialpacking.management.info.CreateInfo;
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
import org.json.JSONArray;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@ -43,6 +46,7 @@ import org.apache.commons.lang3.StringUtils;
|
|||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.sql.Timestamp;
|
import java.sql.Timestamp;
|
||||||
|
import java.text.ParseException;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
import com.cim.idm.service.Impl.SDKMaterialPackingServiceImpl;
|
import com.cim.idm.service.Impl.SDKMaterialPackingServiceImpl;
|
||||||
@ -59,6 +63,10 @@ public class MaterialReceiveActController {
|
|||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private IMaterialPackingService mpService;
|
private IMaterialPackingService mpService;
|
||||||
|
@Autowired
|
||||||
|
NoInvoiceManagerServiceImpl NoInvoiceManagerServiceImpl;
|
||||||
|
@Autowired
|
||||||
|
private ToSAPServiceImpl toSAPService;
|
||||||
|
|
||||||
private static Log log = LogFactory.getLog(MaterialReceiveActController.class);
|
private static Log log = LogFactory.getLog(MaterialReceiveActController.class);
|
||||||
private EventInfo makeEventInfo;
|
private EventInfo makeEventInfo;
|
||||||
@ -327,6 +335,7 @@ public class MaterialReceiveActController {
|
|||||||
String checkType = auxiliaryOutIn.getCheckType();
|
String checkType = auxiliaryOutIn.getCheckType();
|
||||||
String user = auxiliaryOutIn.getUser();
|
String user = auxiliaryOutIn.getUser();
|
||||||
String nums = auxiliaryOutIn.getNums();
|
String nums = auxiliaryOutIn.getNums();
|
||||||
|
BigDecimal numsBigDecimal = new BigDecimal(nums);
|
||||||
String siteName = auxiliaryOutIn.getSiteName();
|
String siteName = auxiliaryOutIn.getSiteName();
|
||||||
String erpFactory = auxiliaryOutIn.getErpFactory();
|
String erpFactory = auxiliaryOutIn.getErpFactory();
|
||||||
String erpLocation = auxiliaryOutIn.getErpLocation();
|
String erpLocation = auxiliaryOutIn.getErpLocation();
|
||||||
@ -338,14 +347,14 @@ public class MaterialReceiveActController {
|
|||||||
return AjaxResult.me().setSuccess(false).setMessage("物料编号" + materialSpecName + "不存在");
|
return AjaxResult.me().setSuccess(false).setMessage("物料编号" + materialSpecName + "不存在");
|
||||||
}
|
}
|
||||||
if ("盘盈".equals(checkType)) {
|
if ("盘盈".equals(checkType)) {
|
||||||
String phase = materialInfo.getPhase() != null ? materialInfo.getPhase() : "C";
|
|
||||||
String width = materialInfo.getWidth();
|
String width = materialInfo.getWidth();
|
||||||
String materialUnit = materialInfo.getMaterialUnit();
|
String materialUnit = materialInfo.getMaterialUnit();
|
||||||
String materialType = materialInfo.getMaterialType();
|
String materialType = materialInfo.getMaterialType();
|
||||||
|
String descCn = materialInfo.getDescCn();
|
||||||
List<String> boxIds = MaterialPackingServiceImpl.generateBoxID("LabelId", siteName,
|
List<String> boxIds = MaterialPackingServiceImpl.generateBoxID("LabelId", siteName,
|
||||||
"1", DateUtil.now(), "WL", erpFactory);
|
"1", DateUtil.now(), "WL", erpFactory);
|
||||||
//470110856|1|C|75mm*1000m|SHBP01JT1202305240009|20230524|11|75
|
//470110856|1||75mm*1000m|SHBP01JT1202305240009|20230524|11|75
|
||||||
String newBoxId = materialSpecName + "|1|" + phase + "|" + width + "|" + boxIds.get(0) + "|"
|
String newBoxId = materialSpecName + "|1|" + "|" + width + "|" + boxIds.get(0) + "|"
|
||||||
+ makeDate.replace("-", "").substring(0, 8) + "|" + materialUnit + "|" + nums;
|
+ makeDate.replace("-", "").substring(0, 8) + "|" + materialUnit + "|" + nums;
|
||||||
EventInfo makeEventInfo = new EventInfoUtil().makeEventInfo("TrackOutBox", user, "TrackOutBox");
|
EventInfo makeEventInfo = new EventInfoUtil().makeEventInfo("TrackOutBox", user, "TrackOutBox");
|
||||||
Map<String, Object> bindMap = new HashMap<String, Object>();
|
Map<String, Object> bindMap = new HashMap<String, Object>();
|
||||||
@ -360,12 +369,14 @@ public class MaterialReceiveActController {
|
|||||||
bindMap.put("stockState", "Created");
|
bindMap.put("stockState", "Created");
|
||||||
bindMap.put("materialPackingName", newBoxId);
|
bindMap.put("materialPackingName", newBoxId);
|
||||||
bindMap.put("charge", boxIds.get(0));
|
bindMap.put("charge", boxIds.get(0));
|
||||||
bindMap.put("materialPackingType", "Box");
|
bindMap.put("truegg", width);
|
||||||
|
bindMap.put("unit", materialUnit);
|
||||||
bindMap.put("materialType", materialType);
|
bindMap.put("materialType", materialType);
|
||||||
bindMap.put("createUser", user);
|
bindMap.put("createUser", user);
|
||||||
bindMap.put("createTime", DateUtil.now());
|
bindMap.put("createTime", DateUtil.now());
|
||||||
CreateInfo createInfo = new CreateInfo();
|
CreateInfo createInfo = new CreateInfo();
|
||||||
createInfo.setMaterialPackingName(newBoxId);
|
createInfo.setMaterialPackingName(newBoxId);
|
||||||
|
createInfo.setMaterialPackingType("Box");
|
||||||
createInfo.setSiteName(auxiliaryOutIn.getSiteName());
|
createInfo.setSiteName(auxiliaryOutIn.getSiteName());
|
||||||
createInfo.setUserColumns(bindMap);
|
createInfo.setUserColumns(bindMap);
|
||||||
MaterialPacking materialPacking = MaterialPackingServiceProxy.getMaterialPackingService().create(
|
MaterialPacking materialPacking = MaterialPackingServiceProxy.getMaterialPackingService().create(
|
||||||
@ -373,12 +384,146 @@ public class MaterialReceiveActController {
|
|||||||
List<HashMap<String, Object>> maps = costCenterService.getByMaterialPackingName(newBoxId);
|
List<HashMap<String, Object>> maps = costCenterService.getByMaterialPackingName(newBoxId);
|
||||||
return AjaxResult.me().setResultObj(maps);
|
return AjaxResult.me().setResultObj(maps);
|
||||||
} else {
|
} else {
|
||||||
// todo
|
List<LinkedHashMap<String, Object>> maps = costCenterService.getMaterialPacking(materialSpecName,siteName,erpFactory,
|
||||||
List<HashMap<String, Object>> maps = costCenterService.getMaterialPacking(materialSpecName,siteName,erpFactory,
|
|
||||||
erpLocation, location, nums);
|
erpLocation, location, nums);
|
||||||
return AjaxResult.me().setResultObj(maps);
|
if (maps == null || maps.size() <= 0) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setMessage("没有符合条件的数据");
|
||||||
|
}
|
||||||
|
BigDecimal materialquantity = maps.stream()
|
||||||
|
.map(map -> (BigDecimal) map.get("MATERIALQUANTITY"))
|
||||||
|
.filter(Objects::nonNull)
|
||||||
|
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||||
|
if (materialquantity.compareTo(numsBigDecimal) < 0) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setMessage("数量不足");
|
||||||
|
}
|
||||||
|
List<LinkedHashMap<String, Object>> linkedHashMaps = pickMaterialQuantities(maps, numsBigDecimal);
|
||||||
|
return AjaxResult.me().setResultObj(linkedHashMaps);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<LinkedHashMap<String, Object>> pickMaterialQuantities(List<LinkedHashMap<String, Object>> maps, BigDecimal requiredQuantity) {
|
||||||
|
List<LinkedHashMap <String, Object>> resultList = new ArrayList<>();
|
||||||
|
BigDecimal remaining = requiredQuantity;
|
||||||
|
|
||||||
|
for (LinkedHashMap<String, Object> item : maps) {
|
||||||
|
// 获取当前记录的数量
|
||||||
|
BigDecimal materialQuantity = (BigDecimal) item.get("MATERIALQUANTITY");
|
||||||
|
if (materialQuantity == null || materialQuantity.compareTo(BigDecimal.ZERO) <= 0
|
||||||
|
|| remaining.compareTo(BigDecimal.ZERO) <= 0) {
|
||||||
|
continue; // 数量无效
|
||||||
|
}
|
||||||
|
|
||||||
|
// 计算可以取多少
|
||||||
|
BigDecimal take = materialQuantity.min(remaining);
|
||||||
|
|
||||||
|
// 创建新的记录并设置数量
|
||||||
|
LinkedHashMap<String, Object> newItem = new LinkedHashMap<>(item); // 复制原有字段
|
||||||
|
newItem.put("MATERIALQUANTITY", take); // 替换数量
|
||||||
|
|
||||||
|
// 添加到结果集
|
||||||
|
resultList.add(newItem);
|
||||||
|
|
||||||
|
// 更新剩余数量
|
||||||
|
remaining = remaining.subtract(take);
|
||||||
|
|
||||||
|
// 如果已经满足需求,退出循环
|
||||||
|
if (remaining.compareTo(BigDecimal.ZERO) == 0) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 盘盈入库---pc
|
||||||
|
* @param in
|
||||||
|
* @return
|
||||||
|
* @throws ParseException
|
||||||
|
*/
|
||||||
|
@RequestMapping(value = "/QTRCommit", method = RequestMethod.POST)
|
||||||
|
public AjaxResult QTRCommit(@RequestBody JSONObject in ) throws ParseException {
|
||||||
|
MaterialReceiveRequest sl = JSON.toJavaObject(in, MaterialReceiveRequest.class);
|
||||||
|
String commitDateString = sl.getCommitDate();
|
||||||
|
List<MaterialPacking> boxList = sl.getBoxList();
|
||||||
|
String user2 = sl.getUser();
|
||||||
|
String opCode = sl.getOpCode();
|
||||||
|
String commitDate = commitDateString + " 00:00:00";
|
||||||
|
String costName = sl.getCostName();
|
||||||
|
String lifnr = sl.getLifnr();
|
||||||
|
String qtc = sl.getQtc();
|
||||||
|
NoInvoiceManagerServiceImpl.QTR(boxList,user2,commitDate,opCode,costName,lifnr,qtc);
|
||||||
|
|
||||||
|
return AjaxResult.me().setResultObj(null);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 盘亏出库---pc
|
||||||
|
* @param in
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value = "/QTCCommit", method = RequestMethod.POST)
|
||||||
|
@Transactional
|
||||||
|
public AjaxResult QTCCommit(@RequestBody JSONObject in ){
|
||||||
|
MaterialReceiveRequest sl = JSON.toJavaObject(in, MaterialReceiveRequest.class);
|
||||||
|
MaterialReceiveParam slParam = JSON.toJavaObject(in, MaterialReceiveParam.class);
|
||||||
|
List<MaterialPacking> boxList = sl.getBoxList();
|
||||||
|
List<Map<String, Object>> boxListParam = slParam.getBoxList();
|
||||||
|
String siteName = sl.getSiteName();
|
||||||
|
String user = in.get("user").toString();
|
||||||
|
String commitDatesString = sl.getCommitDate();
|
||||||
|
String commitDate = commitDatesString + " 00:00:00";
|
||||||
|
String opCode = sl.getOpCode();
|
||||||
|
// 移动类型
|
||||||
|
String qtc = sl.getQtc();
|
||||||
|
// 成本中心
|
||||||
|
String costName = sl.getCostName();
|
||||||
|
String undoId = "";
|
||||||
|
try {
|
||||||
|
undoId = toSAPService.MaterialScrapStockOutPc(boxListParam,siteName,user,commitDate,opCode,qtc,costName);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
return AjaxResult.me().setSuccess(false).setMessage(e.toString());
|
||||||
|
}
|
||||||
|
if (StringUtils.isEmpty(undoId)) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setMessage("undoId为空");
|
||||||
|
}
|
||||||
|
// 发送过账
|
||||||
|
EventInfoUtil util = new EventInfoUtil();
|
||||||
|
String enentName = "报废出库";
|
||||||
|
if ("Z05".equals(qtc)) {
|
||||||
|
enentName = "盘亏出库";
|
||||||
|
}
|
||||||
|
makeEventInfo = util.makeEventInfo(enentName, user, enentName);
|
||||||
|
// 更新库存状态
|
||||||
|
SDKMaterialPackingServiceImpl.SaveUnDoInfo(undoId,commitDate);
|
||||||
|
List<MaterialPacking> updateList = new ArrayList<>();
|
||||||
|
for(MaterialPacking materialPacking : boxList) {
|
||||||
|
List<HashMap<String, Object>> maps = costCenterService.getByMaterialPackingName(materialPacking.getMaterialPackingName());
|
||||||
|
if (maps == null || maps.size() <= 0) {
|
||||||
|
// 数据不存在,跳过或抛异常
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
HashMap<String, Object> hashMap = maps.get(0);
|
||||||
|
// 数据库中数量
|
||||||
|
BigDecimal materialquantity = (BigDecimal)hashMap.get("MATERIALQUANTITY");
|
||||||
|
// 前端传递数量
|
||||||
|
BigDecimal materialQuantityFont = BigDecimal.valueOf(materialPacking.getMaterialQuantity());
|
||||||
|
if (materialquantity.compareTo(materialQuantityFont) <= 0) {
|
||||||
|
updateList.add(materialPacking);
|
||||||
|
} else {
|
||||||
|
// 更新库存数量
|
||||||
|
costCenterService.updateQty(materialPacking.getMaterialPackingName(), materialQuantityFont, user);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 更新入库凭证和库存状态
|
||||||
|
SDKMaterialPackingServiceImpl.updateUndoIdByList(updateList, undoId, makeEventInfo,opCode);
|
||||||
|
|
||||||
|
return AjaxResult.me().setResultObj(null);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@RequestMapping(value = "/DeleteTrackOutBox", method = RequestMethod.POST)
|
@RequestMapping(value = "/DeleteTrackOutBox", method = RequestMethod.POST)
|
||||||
public AjaxResult DeleteTrackOutBox(@RequestBody JSONObject in ) throws Exception{
|
public AjaxResult DeleteTrackOutBox(@RequestBody JSONObject in ) throws Exception{
|
||||||
// 获取属性
|
// 获取属性
|
||||||
|
@ -6,7 +6,9 @@ import org.apache.ibatis.annotations.Mapper;
|
|||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@ -14,7 +16,7 @@ import java.util.Map;
|
|||||||
@Mapper
|
@Mapper
|
||||||
public interface CostCenterDao {
|
public interface CostCenterDao {
|
||||||
|
|
||||||
List<CostCenter> getCostCenter();
|
List<CostCenter> getCostCenter(@Param("erpFactory") String erpFactory);
|
||||||
List<Map<String, Object>> getUserInfo();
|
List<Map<String, Object>> getUserInfo();
|
||||||
|
|
||||||
void updatePacking(@Param("SALESHIPREQUESTNAME") String SALESHIPREQUESTNAME,
|
void updatePacking(@Param("SALESHIPREQUESTNAME") String SALESHIPREQUESTNAME,
|
||||||
@ -54,12 +56,16 @@ public interface CostCenterDao {
|
|||||||
|
|
||||||
MaterialInfo getMaterialInfo(@Param("materialSpecName") String materialSpecName);
|
MaterialInfo getMaterialInfo(@Param("materialSpecName") String materialSpecName);
|
||||||
|
|
||||||
List<HashMap<String, Object>> getMaterialPacking(@Param("materialSpecName") String materialSpecName,
|
List<LinkedHashMap<String, Object>> getMaterialPacking(@Param("materialSpecName") String materialSpecName,
|
||||||
@Param("siteName") String siteName,
|
@Param("siteName") String siteName,
|
||||||
@Param("erpFactory") String erpFactory,
|
@Param("erpFactory") String erpFactory,
|
||||||
@Param("erpLocation") String erpLocation,
|
@Param("erpLocation") String erpLocation,
|
||||||
@Param("location") String location,
|
@Param("location") String location,
|
||||||
@Param("nums") String nums);
|
@Param("nums") String nums);
|
||||||
|
|
||||||
List<HashMap<String, Object>> getByMaterialPackingName(String newBoxId);
|
List<HashMap<String, Object>> getByMaterialPackingName(String newBoxId);
|
||||||
|
|
||||||
|
void updateQty(@Param("materialPackingName") String materialPackingName,
|
||||||
|
@Param("materialQuantityFont") BigDecimal materialQuantityFont,
|
||||||
|
@Param("user") String user);
|
||||||
}
|
}
|
||||||
|
@ -108,5 +108,5 @@ public class LabelParameterObject {
|
|||||||
private String item3;
|
private String item3;
|
||||||
private String item4;
|
private String item4;
|
||||||
private String item5;
|
private String item5;
|
||||||
|
private String locationcode;
|
||||||
}
|
}
|
||||||
|
@ -54,6 +54,8 @@ public class LabelPrintPET {
|
|||||||
private String stageCode;
|
private String stageCode;
|
||||||
//单位
|
//单位
|
||||||
private String mainUom;
|
private String mainUom;
|
||||||
|
//库位
|
||||||
|
private String locationcode;
|
||||||
|
|
||||||
public List<String> creatLabelPET(){
|
public List<String> creatLabelPET(){
|
||||||
List<String> labelPETList = new ArrayList<>();
|
List<String> labelPETList = new ArrayList<>();
|
||||||
@ -80,6 +82,7 @@ public class LabelPrintPET {
|
|||||||
labelPETList.add("specifications");
|
labelPETList.add("specifications");
|
||||||
labelPETList.add("stageCode");
|
labelPETList.add("stageCode");
|
||||||
labelPETList.add("mainUom");
|
labelPETList.add("mainUom");
|
||||||
|
labelPETList.add("locationcode");
|
||||||
return labelPETList;
|
return labelPETList;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,45 @@
|
|||||||
|
package com.cim.idm.model;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description
|
||||||
|
* @Author admin
|
||||||
|
* @Date 2025/5/28 9:32
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class MaterialReceiveParam {
|
||||||
|
private String receiveRequestName;
|
||||||
|
private String siteName;
|
||||||
|
private String barCode;
|
||||||
|
private String user;
|
||||||
|
private String eventName;
|
||||||
|
private String receiveRequestType;
|
||||||
|
private String RECEIVEACTNO;
|
||||||
|
private String erpFactory;
|
||||||
|
private String erpLocation;
|
||||||
|
private String remark; //备注
|
||||||
|
private String commitDate;
|
||||||
|
private String opCode;
|
||||||
|
private String type;
|
||||||
|
private String STOCKORGNO;
|
||||||
|
private String MaterialPackingName;
|
||||||
|
private String materialSpecName;
|
||||||
|
private String materialQuantity;
|
||||||
|
private String materialQuantity2;
|
||||||
|
private String sdk_id;
|
||||||
|
private String phase;
|
||||||
|
private String CUSTOMNO;
|
||||||
|
private String truegg;
|
||||||
|
private String costName;
|
||||||
|
private String lifnr;
|
||||||
|
private String qtc;
|
||||||
|
/**销售订单*/
|
||||||
|
private String SALESHIPREQUESTNAME;
|
||||||
|
/**销售订单行号*/
|
||||||
|
private String SALESHIPREQUESTDETAILNAME;
|
||||||
|
private List<Map<String, Object>> boxList;
|
||||||
|
}
|
@ -15,4 +15,5 @@ public class MaterialInfo {
|
|||||||
private String phase;
|
private String phase;
|
||||||
private String width;
|
private String width;
|
||||||
private String materialType;
|
private String materialType;
|
||||||
|
private String descCn;
|
||||||
}
|
}
|
||||||
|
@ -5,12 +5,14 @@ import com.cim.idm.model.CostCenter;
|
|||||||
import com.cim.idm.model.MaterialPacking;
|
import com.cim.idm.model.MaterialPacking;
|
||||||
import com.cim.idm.model.vo.MaterialInfo;
|
import com.cim.idm.model.vo.MaterialInfo;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public interface CostCenterService {
|
public interface CostCenterService {
|
||||||
List<CostCenter> getCostCenter();
|
List<CostCenter> getCostCenter(String erpFactory);
|
||||||
List<Map<String, Object>> getUserInfo();
|
List<Map<String, Object>> getUserInfo();
|
||||||
|
|
||||||
void updateCareerAssistanceNew(JSONObject in);
|
void updateCareerAssistanceNew(JSONObject in);
|
||||||
@ -23,7 +25,9 @@ public interface CostCenterService {
|
|||||||
|
|
||||||
void editMaterialPackingName(MaterialPacking materialPacking);
|
void editMaterialPackingName(MaterialPacking materialPacking);
|
||||||
MaterialInfo getMaterialInfo(String materialSpecName);
|
MaterialInfo getMaterialInfo(String materialSpecName);
|
||||||
List<HashMap<String, Object>> getMaterialPacking(String materialSpecName, String siteName, String erpFactory, String erpLocation, String location, String nums);
|
List<LinkedHashMap<String, Object>> getMaterialPacking(String materialSpecName, String siteName, String erpFactory, String erpLocation, String location, String nums);
|
||||||
|
|
||||||
List<HashMap<String, Object>> getByMaterialPackingName(String newBoxId);
|
List<HashMap<String, Object>> getByMaterialPackingName(String newBoxId);
|
||||||
|
|
||||||
|
void updateQty(String materialPackingName, BigDecimal materialQuantityFont, String user);
|
||||||
}
|
}
|
||||||
|
@ -1854,7 +1854,7 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
pr.setPrintRequestID(UUID.randomUUID().toString());
|
pr.setPrintRequestID(UUID.randomUUID().toString());
|
||||||
LabelParameterObject obj = new LabelParameterObject();
|
LabelParameterObject obj = new LabelParameterObject();
|
||||||
List<Map<String, Object>> queryForListProduct = new ArrayList<>();
|
List<Map<String, Object>> queryForListProduct = new ArrayList<>();
|
||||||
if ("PET标签-电晕.btw".equals(labelAddress)) {
|
if ("PET标签-电晕.btw".equals(labelAddress) || "PET标签-电晕-兴远泰.btw".equals(labelAddress) || "PET标签-涂布面.btw".equals(labelAddress) || "PET标签-涂布面-兴远泰.btw".equals(labelAddress)) {
|
||||||
params = new LabelPrintPET().creatLabelPET();
|
params = new LabelPrintPET().creatLabelPET();
|
||||||
labelPath = "C:\\inetpub\\wwwroot\\BarTender\\wwwroot\\Templates\\WMS\\WHRePrint\\" + labelAddress;
|
labelPath = "C:\\inetpub\\wwwroot\\BarTender\\wwwroot\\Templates\\WMS\\WHRePrint\\" + labelAddress;
|
||||||
pr.setAbsolutePath(labelPath);
|
pr.setAbsolutePath(labelPath);
|
||||||
@ -1876,9 +1876,12 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
" LN.STAGECODE,\n" +
|
" LN.STAGECODE,\n" +
|
||||||
" LN.DEFINEITEM16,\n" +
|
" LN.DEFINEITEM16,\n" +
|
||||||
" LN.MAINUOM,\n" +
|
" LN.MAINUOM,\n" +
|
||||||
" LN.DEFINEITEM9\n" +
|
" LN.DEFINEITEM9,\n" +
|
||||||
|
" MP.ERPLOCATION,\n" +
|
||||||
|
" MP.LOCATIONNAME" +
|
||||||
" FROM\n" +
|
" FROM\n" +
|
||||||
" LABELPRINTINFO LN \n" +
|
" LABELPRINTINFO LN \n" +
|
||||||
|
" LEFT JOIN MATERIALPACKING MP ON LN.BARCODE = MP.MATERIALPACKINGNAME " +
|
||||||
" LEFT JOIN MATERIALSPEC MS ON LN.MATERIALCODE = MS.MATERIALSPECNAME\n" +
|
" LEFT JOIN MATERIALSPEC MS ON LN.MATERIALCODE = MS.MATERIALSPECNAME\n" +
|
||||||
" WHERE\n" +
|
" WHERE\n" +
|
||||||
" LN.BARCODE =:MATERIALPACKINGNAME ";
|
" LN.BARCODE =:MATERIALPACKINGNAME ";
|
||||||
@ -1900,9 +1903,12 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
"LN.STAGECODE,\n" +
|
"LN.STAGECODE,\n" +
|
||||||
"LN.DEFINEITEM16,\n" +
|
"LN.DEFINEITEM16,\n" +
|
||||||
"LN.MAINUOM,\n" +
|
"LN.MAINUOM,\n" +
|
||||||
"LN.DEFINEITEM9 " +
|
"LN.DEFINEITEM9, " +
|
||||||
|
" MP.ERPLOCATION,\n" +
|
||||||
|
" MP.LOCATIONNAME" +
|
||||||
"FROM\n" +
|
"FROM\n" +
|
||||||
"\tLABELPRINTINFO LN \n" +
|
"\tLABELPRINTINFO LN \n" +
|
||||||
|
" LEFT JOIN MATERIALPACKING MP ON LN.BARCODE = MP.MATERIALPACKINGNAME " +
|
||||||
"WHERE\n" +
|
"WHERE\n" +
|
||||||
"\tLN.BARCODE =:MATERIALPACKINGNAME ";
|
"\tLN.BARCODE =:MATERIALPACKINGNAME ";
|
||||||
}
|
}
|
||||||
@ -1954,6 +1960,10 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
//单位
|
//单位
|
||||||
String mainUom = queryForListProduct.get(0).get("MAINUOM") == null ? "" : queryForListProduct.get(0).get("MAINUOM").toString();
|
String mainUom = queryForListProduct.get(0).get("MAINUOM") == null ? "" : queryForListProduct.get(0).get("MAINUOM").toString();
|
||||||
labelPrintPET.setMainUom(mainUom);
|
labelPrintPET.setMainUom(mainUom);
|
||||||
|
//仓库编码+空格+货位编码
|
||||||
|
String erpLocation = queryForListProduct.get(0).get("ERPLOCATION") == null ? "" : queryForListProduct.get(0).get("ERPLOCATION").toString();
|
||||||
|
String locationname = queryForListProduct.get(0).get("LOCATIONNAME") == null ? "" : queryForListProduct.get(0).get("LOCATIONNAME").toString();
|
||||||
|
labelPrintPET.setLocationcode(erpLocation + " " + locationname);
|
||||||
labelPrintPET.setWide("");
|
labelPrintPET.setWide("");
|
||||||
labelPrintPET.setLength("");
|
labelPrintPET.setLength("");
|
||||||
labelPrintPET.setLineSpeed("");
|
labelPrintPET.setLineSpeed("");
|
||||||
@ -1967,8 +1977,8 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
throw new CustomException(CustomExceptionCode.DATA_ERROR, "要打印的PET标签信息不存在");
|
throw new CustomException(CustomExceptionCode.DATA_ERROR, "要打印的PET标签信息不存在");
|
||||||
}
|
}
|
||||||
|
|
||||||
}else if ("Sdk2.btw".equals(labelAddress)){
|
}else if ("膜材标签-泗洪.btw".equals(labelAddress) || "膜材标签-太仓.btw".equals(labelAddress) || "膜材标签-东莞.btw".equals(labelAddress) || "膜材标签-重庆.btw".equals(labelAddress) || "膜材标签-越南.btw".equals(labelAddress)){
|
||||||
labelPath = "C:\\inetpub\\wwwroot\\BarTender\\wwwroot\\Templates\\WMS\\" + labelAddress;
|
labelPath = "C:\\inetpub\\wwwroot\\BarTender\\wwwroot\\Templates\\WMS\\WHRePrint\\" + labelAddress;
|
||||||
pr.setAbsolutePath(labelPath);
|
pr.setAbsolutePath(labelPath);
|
||||||
if (newMaterialSpecSwitch.equals("Y")){
|
if (newMaterialSpecSwitch.equals("Y")){
|
||||||
qeuryLabelDatasql = " SELECT\n" +
|
qeuryLabelDatasql = " SELECT\n" +
|
||||||
@ -1983,7 +1993,8 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
" m.RECEIVEUSER operater,\n" +
|
" m.RECEIVEUSER operater,\n" +
|
||||||
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\n" +
|
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\n" +
|
||||||
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,\n" +
|
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,\n" +
|
||||||
" TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater\n" +
|
" TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater," +
|
||||||
|
" m.ERPLOCATION,m.LOCATIONNAME \n" +
|
||||||
" FROM\n" +
|
" FROM\n" +
|
||||||
" MATERIALPACKING m\n" +
|
" MATERIALPACKING m\n" +
|
||||||
" LEFT JOIN SDK_SPEC ss ON\n" +
|
" LEFT JOIN SDK_SPEC ss ON\n" +
|
||||||
@ -2007,7 +2018,8 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
" m.RECEIVEUSER operater,\r\n" +
|
" m.RECEIVEUSER operater,\r\n" +
|
||||||
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\r\n" +
|
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\r\n" +
|
||||||
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,"
|
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,"
|
||||||
+ "TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater\r\n" +
|
+ "TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater," +
|
||||||
|
" m.ERPLOCATION,m.LOCATIONNAME\r\n" +
|
||||||
"FROM\r\n" +
|
"FROM\r\n" +
|
||||||
" MATERIALPACKING m\r\n" +
|
" MATERIALPACKING m\r\n" +
|
||||||
"LEFT JOIN SDK_SPEC ss ON\r\n" +
|
"LEFT JOIN SDK_SPEC ss ON\r\n" +
|
||||||
@ -2064,12 +2076,15 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
obj.setMakedate(queryForListProduct.get(0).get("makedate") != null ? queryForListProduct.get(0).get("makedate").toString() : "");
|
obj.setMakedate(queryForListProduct.get(0).get("makedate") != null ? queryForListProduct.get(0).get("makedate").toString() : "");
|
||||||
obj.setSupplierno(queryForListProduct.get(0).get("supplierNo") != null ? queryForListProduct.get(0).get("supplierNo").toString() : "");
|
obj.setSupplierno(queryForListProduct.get(0).get("supplierNo") != null ? queryForListProduct.get(0).get("supplierNo").toString() : "");
|
||||||
obj.setDescription(queryForListProduct.get(0).get("description") != null ? queryForListProduct.get(0).get("description").toString() : "");
|
obj.setDescription(queryForListProduct.get(0).get("description") != null ? queryForListProduct.get(0).get("description").toString() : "");
|
||||||
|
String erpLocation = queryForListProduct.get(0).get("ERPLOCATION") == null ? "" : queryForListProduct.get(0).get("ERPLOCATION").toString();
|
||||||
|
String locationName = queryForListProduct.get(0).get("LOCATIONNAME") == null ? "" : queryForListProduct.get(0).get("LOCATIONNAME").toString();
|
||||||
|
obj.setLocationcode(erpLocation + " " + locationName);
|
||||||
log.info("***************************PrintLabel Assign params is : " + params.toString());
|
log.info("***************************PrintLabel Assign params is : " + params.toString());
|
||||||
//labelUrl = labelPrintRabbitMQ(obj, requestUrl, pr, params);
|
//labelUrl = labelPrintRabbitMQ(obj, requestUrl, pr, params);
|
||||||
labelUrl = labelPrint(obj, requestUrl, pr, params);
|
labelUrl = labelPrint(obj, requestUrl, pr, params);
|
||||||
log.info("***************************PrintLabel Use URL is : " + requestUrl);
|
log.info("***************************PrintLabel Use URL is : " + requestUrl);
|
||||||
}else if ("胶水原材.btw".equals(labelAddress)){
|
}else if ("胶水标签.btw".equals(labelAddress)){
|
||||||
labelPath = "C:\\inetpub\\wwwroot\\BarTender\\wwwroot\\Templates\\WMS\\" + labelAddress;
|
labelPath = "C:\\inetpub\\wwwroot\\BarTender\\wwwroot\\Templates\\WMS\\WHRePrint\\" + labelAddress;
|
||||||
pr.setAbsolutePath(labelPath);
|
pr.setAbsolutePath(labelPath);
|
||||||
if (newMaterialSpecSwitch.equals("Y")){
|
if (newMaterialSpecSwitch.equals("Y")){
|
||||||
qeuryLabelDatasql = "SELECT\r\n" +
|
qeuryLabelDatasql = "SELECT\r\n" +
|
||||||
@ -2084,7 +2099,8 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
" m.RECEIVEUSER operater,\r\n" +
|
" m.RECEIVEUSER operater,\r\n" +
|
||||||
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\r\n" +
|
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\r\n" +
|
||||||
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,"
|
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,"
|
||||||
+ "TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater\r\n" +
|
+ "TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater," +
|
||||||
|
" m.ERPLOCATION,m.LOCATIONNAME\r\n" +
|
||||||
"FROM\r\n" +
|
"FROM\r\n" +
|
||||||
" MATERIALPACKING m\r\n" +
|
" MATERIALPACKING m\r\n" +
|
||||||
"LEFT JOIN SDK_SPEC ss ON\r\n" +
|
"LEFT JOIN SDK_SPEC ss ON\r\n" +
|
||||||
@ -2108,7 +2124,8 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
" m.RECEIVEUSER operater,\r\n" +
|
" m.RECEIVEUSER operater,\r\n" +
|
||||||
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\r\n" +
|
" m.CHARGE lotNo,NVL(m.suppliername,'') supplierNo,\r\n" +
|
||||||
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,"
|
" m.REMARK remark,TO_CHAR(m.RECEIVETIME,'YYYYMMDD') jumboRollBatch,"
|
||||||
+ "TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater\r\n" +
|
+ "TO_CHAR(MAKEDATE,'YYYYMMDD') makedate, TO_CHAR(EXPIRINGDATE,'YYYYMMDD') expdate ,m.RECEIVEUSER opreater," +
|
||||||
|
" m.ERPLOCATION,m.LOCATIONNAME\r\n" +
|
||||||
"FROM\r\n" +
|
"FROM\r\n" +
|
||||||
" MATERIALPACKING m\r\n" +
|
" MATERIALPACKING m\r\n" +
|
||||||
"LEFT JOIN SDK_SPEC ss ON\r\n" +
|
"LEFT JOIN SDK_SPEC ss ON\r\n" +
|
||||||
@ -2165,6 +2182,9 @@ public class BSLabelServiceImpl extends CommonServiceDAO<BSLabelKey, BSLabel> im
|
|||||||
obj.setMakedate(queryForListProduct.get(0).get("makedate") != null ? queryForListProduct.get(0).get("makedate").toString() : "");
|
obj.setMakedate(queryForListProduct.get(0).get("makedate") != null ? queryForListProduct.get(0).get("makedate").toString() : "");
|
||||||
obj.setSupplierno(queryForListProduct.get(0).get("supplierNo") != null ? queryForListProduct.get(0).get("supplierNo").toString() : "");
|
obj.setSupplierno(queryForListProduct.get(0).get("supplierNo") != null ? queryForListProduct.get(0).get("supplierNo").toString() : "");
|
||||||
obj.setDescription(queryForListProduct.get(0).get("description") != null ? queryForListProduct.get(0).get("description").toString() : "");
|
obj.setDescription(queryForListProduct.get(0).get("description") != null ? queryForListProduct.get(0).get("description").toString() : "");
|
||||||
|
String erpLocation = queryForListProduct.get(0).get("ERPLOCATION") == null ? "" : queryForListProduct.get(0).get("ERPLOCATION").toString();
|
||||||
|
String locationName = queryForListProduct.get(0).get("LOCATIONNAME") == null ? "" : queryForListProduct.get(0).get("LOCATIONNAME").toString();
|
||||||
|
obj.setLocationcode(erpLocation + " " + locationName);
|
||||||
log.info("***************************PrintLabel Assign params is : " + params.toString());
|
log.info("***************************PrintLabel Assign params is : " + params.toString());
|
||||||
//labelUrl = labelPrintRabbitMQ(obj, requestUrl, pr, params);
|
//labelUrl = labelPrintRabbitMQ(obj, requestUrl, pr, params);
|
||||||
labelUrl = labelPrint(obj, requestUrl, pr, params);
|
labelUrl = labelPrint(obj, requestUrl, pr, params);
|
||||||
|
@ -22,10 +22,8 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.math.BigDecimal;
|
||||||
import java.util.HashMap;
|
import java.util.*;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Service("CostCenterService")
|
@Service("CostCenterService")
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@ -37,8 +35,8 @@ public class CostCenterServiceImpl implements CostCenterService {
|
|||||||
private ToSAPServiceImpl toSAPService;
|
private ToSAPServiceImpl toSAPService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<CostCenter> getCostCenter() {
|
public List<CostCenter> getCostCenter(String erpFactory) {
|
||||||
return costCenterDao.getCostCenter();
|
return costCenterDao.getCostCenter(erpFactory);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -163,7 +161,7 @@ public class CostCenterServiceImpl implements CostCenterService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<HashMap<String, Object>> getMaterialPacking(String materialSpecName, String siteName, String erpFactory, String erpLocation, String location, String nums) {
|
public List<LinkedHashMap<String, Object>> getMaterialPacking(String materialSpecName, String siteName, String erpFactory, String erpLocation, String location, String nums) {
|
||||||
return costCenterDao.getMaterialPacking(materialSpecName,siteName,erpFactory,
|
return costCenterDao.getMaterialPacking(materialSpecName,siteName,erpFactory,
|
||||||
erpLocation, location, nums);
|
erpLocation, location, nums);
|
||||||
}
|
}
|
||||||
@ -172,4 +170,9 @@ public class CostCenterServiceImpl implements CostCenterService {
|
|||||||
public List<HashMap<String, Object>> getByMaterialPackingName(String newBoxId) {
|
public List<HashMap<String, Object>> getByMaterialPackingName(String newBoxId) {
|
||||||
return costCenterDao.getByMaterialPackingName(newBoxId);
|
return costCenterDao.getByMaterialPackingName(newBoxId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateQty(String materialPackingName, BigDecimal materialQuantityFont, String user) {
|
||||||
|
costCenterDao.updateQty(materialPackingName, materialQuantityFont, user);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.sql.Timestamp;
|
import java.sql.Timestamp;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
@ -666,24 +667,49 @@ public class MESToWMSServiceImpl implements MESToWMSService {
|
|||||||
log.info("Received work order request: {}", in.toJSONString());
|
log.info("Received work order request: {}", in.toJSONString());
|
||||||
List<Map<String, Object>> mapList = new ArrayList<>();
|
List<Map<String, Object>> mapList = new ArrayList<>();
|
||||||
for (int i = 0; i < in.size(); i++) {
|
for (int i = 0; i < in.size(); i++) {
|
||||||
|
String line = "第" + (i + 1) + "行,";
|
||||||
JSONObject jsonObject = in.getJSONObject(i);
|
JSONObject jsonObject = in.getJSONObject(i);
|
||||||
Map<String, Object> map = new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
// 料号
|
// 料号
|
||||||
String materialSpecname = jsonObject.getString("materialSpecname");
|
String materialSpecname = jsonObject.getString("materialSpecname");
|
||||||
|
if (StringUtils.isEmpty(materialSpecname)) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setErrorCode(500).
|
||||||
|
setMessage(line + "料号-materialSpecname-不能为空");
|
||||||
|
}
|
||||||
// 组织
|
// 组织
|
||||||
String WERKS = jsonObject.getString("WERKS");
|
String WERKS = jsonObject.getString("WERKS");
|
||||||
|
if (StringUtils.isEmpty(WERKS)) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setErrorCode(500).
|
||||||
|
setMessage(line + "组织-WERKS-不能为空");
|
||||||
|
}
|
||||||
// 仓库
|
// 仓库
|
||||||
String LGORT = jsonObject.getString("LGORT");
|
String LGORT = jsonObject.getString("erpLocation");
|
||||||
|
if (StringUtils.isEmpty(LGORT)) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setErrorCode(500).
|
||||||
|
setMessage(line + "仓库-erpLocation-不能为空");
|
||||||
|
}
|
||||||
|
if (StringUtils.isEmpty(jsonObject.getString("MENGE"))) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setErrorCode(500).
|
||||||
|
setMessage(line + "数量-MENGE-不能为空");
|
||||||
|
}
|
||||||
// 数量
|
// 数量
|
||||||
String MENGE = jsonObject.getString("MENGE");
|
BigDecimal MENGE = new BigDecimal(jsonObject.getString("MENGE"));
|
||||||
// 单位
|
// 单位
|
||||||
String MEINS = jsonObject.getString("MEINS");
|
String MEINS = jsonObject.getString("MEINS");
|
||||||
|
if (StringUtils.isEmpty(MEINS)) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setErrorCode(500).
|
||||||
|
setMessage(line + "单位-MEINS-不能为空");
|
||||||
|
}
|
||||||
// 自定义领料单号
|
// 自定义领料单号
|
||||||
String ZLLORDER = jsonObject.getString("ZLLORDER");
|
String ZLLORDER = jsonObject.getString("ZLLORDER");
|
||||||
// 自定义领料单行号
|
// 自定义领料单行号
|
||||||
String ZLLITEM = jsonObject.getString("ZLLITEM");
|
String ZLLITEM = jsonObject.getString("ZLLITEM");
|
||||||
// 工单
|
// 工单
|
||||||
String AUFNR = jsonObject.getString("AUFNR");
|
String AUFNR = jsonObject.getString("toOrder");
|
||||||
|
if (StringUtils.isEmpty(AUFNR)) {
|
||||||
|
return AjaxResult.me().setSuccess(false).setErrorCode(500).
|
||||||
|
setMessage(line + "工单-toOrder-不能为空");
|
||||||
|
}
|
||||||
|
|
||||||
map.put("MATNR", materialSpecname);
|
map.put("MATNR", materialSpecname);
|
||||||
map.put("WERKS", WERKS);
|
map.put("WERKS", WERKS);
|
||||||
@ -696,8 +722,19 @@ public class MESToWMSServiceImpl implements MESToWMSService {
|
|||||||
mapList.add(map);
|
mapList.add(map);
|
||||||
}
|
}
|
||||||
// 出库
|
// 出库
|
||||||
String undoid = toSAPService.StockOutByOrder_new(mapList, "MES", "262");
|
String undoidOut = toSAPService.StockOutByOrder_new(mapList, "MES", "262");
|
||||||
return AjaxResult.me().setResultObj(null).setSuccess(true).setErrorCode(200).setMessage("执行成功,物料凭证 " + undoid);
|
// 入库
|
||||||
|
String undoidIn = toSAPService.StockOutByOrder_new(mapList, "MES", "261");
|
||||||
|
if (StringUtils.isEmpty(undoidIn)) {
|
||||||
|
// 冲销
|
||||||
|
String undo = invoiceService.cancelShipInter(undoidOut, "MES");
|
||||||
|
if (undo == null || undo.isEmpty()) {
|
||||||
|
throw new GlobalException("下发mes失败后冲销失败!");
|
||||||
|
} else {
|
||||||
|
throw new GlobalException("发送到mes失败!");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return AjaxResult.me().setResultObj(null).setSuccess(true).setErrorCode(200).setMessage("执行成功,物料凭证 " + undoidIn);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 接收MES请求工单请求
|
* 接收MES请求工单请求
|
||||||
|
@ -5,6 +5,8 @@
|
|||||||
<select id="getCostCenter" resultType="com.cim.idm.model.CostCenter">
|
<select id="getCostCenter" resultType="com.cim.idm.model.CostCenter">
|
||||||
select id, cost_code costCode, cost_name costName, erp_factory erpFactory, department, division
|
select id, cost_code costCode, cost_name costName, erp_factory erpFactory, department, division
|
||||||
from cost_center
|
from cost_center
|
||||||
|
where division = 'Y'
|
||||||
|
and erp_factory = #{erpFactory}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getUserInfo" resultType="java.util.Map">
|
<select id="getUserInfo" resultType="java.util.Map">
|
||||||
@ -55,17 +57,27 @@
|
|||||||
select * from MATERIALSPEC where MATERIALSPECNAME = #{materialSpecName}
|
select * from MATERIALSPEC where MATERIALSPECNAME = #{materialSpecName}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getMaterialPacking" resultType="java.util.HashMap">
|
<select id="getMaterialPacking" resultType="java.util.LinkedHashMap">
|
||||||
select * from MATERIALPACKING
|
select * from MATERIALPACKING
|
||||||
where MATERIALSPECNAME = #{materialSpecName}
|
where MATERIALSPECNAME = #{materialSpecName}
|
||||||
AND SITENAME = #{siteName}
|
AND SITENAME = #{siteName}
|
||||||
AND ERPFACTORY = #{erpFactory}
|
AND ERPFACTORY = #{erpFactory}
|
||||||
AND ERPLOCATION = #{erpLocation}
|
AND ERPLOCATION = #{erpLocation}
|
||||||
AND LOCATIONNAME = #{location}
|
<if test="location != null || location != ''">
|
||||||
|
AND LOCATIONNAME = #{location}
|
||||||
|
</if>
|
||||||
|
AND stockstate = 'Stocked'
|
||||||
|
order by CREATETIME
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getByMaterialPackingName" resultType="java.util.HashMap" parameterType="java.lang.String">
|
<select id="getByMaterialPackingName" resultType="java.util.HashMap" parameterType="java.lang.String">
|
||||||
select * from MATERIALPACKING
|
select * from MATERIALPACKING
|
||||||
where MATERIALPACKINGNAME = #{newBoxId}
|
where MATERIALPACKINGNAME = #{newBoxId}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<update id="updateQty">
|
||||||
|
update MATERIALPACKING set MATERIALQUANTITY = MATERIALQUANTITY - #{materialQuantityFont},
|
||||||
|
LASTEVENTTIME = SYSDATE, LASTEVENTUSER = #{user}
|
||||||
|
where MATERIALPACKINGNAME = #{materialPackingName}
|
||||||
|
</update>
|
||||||
</mapper>
|
</mapper>
|
Loading…
x
Reference in New Issue
Block a user