定时调用合同销售订单修改接口,调整传参的格式
This commit is contained in:
parent
a6f637ba97
commit
b452f1dc4d
|
@ -0,0 +1,431 @@
|
|||
package nccloud.wmssync.ml.m45;
|
||||
|
||||
import nc.bs.businessevent.IBusinessEvent;
|
||||
import nc.bs.businessevent.IBusinessListener;
|
||||
import nc.bs.dao.BaseDAO;
|
||||
import nc.bs.framework.common.NCLocator;
|
||||
import nc.bs.ic.general.businessevent.ICGeneralCommonEvent;
|
||||
import nc.bs.logging.Log;
|
||||
import nc.vo.bd.material.MaterialVO;
|
||||
import nc.vo.bd.stordoc.StordocVO;
|
||||
import nc.vo.bd.supplier.SupplierVO;
|
||||
import nc.vo.ic.m45.entity.PurchaseInBodyVO;
|
||||
import nc.vo.ic.m45.entity.PurchaseInHeadVO;
|
||||
import nc.vo.ic.m45.entity.PurchaseInVO;
|
||||
import nc.vo.org.StockOrgVO;
|
||||
import nc.vo.pmpub.project.ProjectHeadVO;
|
||||
import nc.vo.pub.BusinessException;
|
||||
import nc.vo.pub.lang.UFDateTime;
|
||||
import nccloud.api.uapbd.wms.utils.IWmsSyncUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 采购入库下发WMS
|
||||
*/
|
||||
public class WmsSyncPurchaseInListener implements IBusinessListener {
|
||||
|
||||
private static final String WAREHOUSE_PREFIX = "CK";
|
||||
private static final String WAREHOUSE_SUFFIX = "001";
|
||||
|
||||
public static final IWmsSyncUtils WMS_SYNC_UTILS = NCLocator.getInstance().lookup(IWmsSyncUtils.class);
|
||||
|
||||
public static final BaseDAO dao = new BaseDAO();
|
||||
|
||||
private static final Log log = Log.getInstance("wmslog");
|
||||
|
||||
@Override
|
||||
public void doAction(IBusinessEvent iBusinessEvent) throws BusinessException {
|
||||
// 先检查是否是BDCommonEvent类型
|
||||
if (iBusinessEvent instanceof ICGeneralCommonEvent event) {
|
||||
PurchaseInVO[] purchaseInVOs = (PurchaseInVO[]) event.getOldObjs();
|
||||
if (purchaseInVOs != null) {
|
||||
log.info("采购入库单下发WMS开始");
|
||||
for (PurchaseInVO purchaseInVO : purchaseInVOs) {
|
||||
try {
|
||||
sendToWMS(purchaseInVO);
|
||||
} catch (BusinessException e) {
|
||||
throw new BusinessException("采购入库单下发WMS失败:" + e.getMessage(), e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void sendToWMS(PurchaseInVO purchaseInVO) throws BusinessException {
|
||||
String pkOrg = purchaseInVO.getHead().getPk_org();
|
||||
String orgCode = WMS_SYNC_UTILS.transferCodeByPk(StockOrgVO.getDefaultTableName(), StockOrgVO.CODE, StockOrgVO.PK_STOCKORG, pkOrg);
|
||||
if (WMS_SYNC_UTILS.checkIfIncludeOrg(orgCode)) {
|
||||
log.info("采购入库单下发WMS开始,组织code" + orgCode);
|
||||
|
||||
// 构造WMS请求数据
|
||||
Map<String, Object> requestData = buildWMSRequestData(purchaseInVO, orgCode);
|
||||
|
||||
// 调用WMS接口
|
||||
WMS_SYNC_UTILS.sendToExternalSystem("putASN", requestData);
|
||||
|
||||
log.info("采购入库单下发WMS完成,单据号:" + purchaseInVO.getHead().getVbillcode());
|
||||
} else {
|
||||
log.info("采购入库单下发: 当前组织" + orgCode + "不是指定组织,不同步WMS");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 构造WMS putASN接口请求数据
|
||||
*
|
||||
* @param purchaseInVO 采购入库单VO - ERP: PurchaseInVO
|
||||
* @param orgCode 组织编码
|
||||
* @return WMS请求数据
|
||||
* @throws BusinessException
|
||||
*/
|
||||
private Map<String, Object> buildWMSRequestData(PurchaseInVO purchaseInVO, String orgCode) throws BusinessException {
|
||||
Map<String, Object> requestData = new HashMap<>();
|
||||
|
||||
Map<String, Object> data = new HashMap<>();
|
||||
PurchaseInHeadVO head = purchaseInVO.getHead();
|
||||
PurchaseInBodyVO[] bodies = purchaseInVO.getBodys();
|
||||
|
||||
// 构造headlist
|
||||
Map<String, Object> headlist = buildHeadList(head, bodies, orgCode);
|
||||
|
||||
// 构造details
|
||||
List<Map<String, Object>> detailsList = new ArrayList<>();
|
||||
if (bodies != null) {
|
||||
for (PurchaseInBodyVO body : bodies) {
|
||||
Map<String, Object> detail = buildDetailItem(body, head);
|
||||
detailsList.add(detail);
|
||||
}
|
||||
}
|
||||
headlist.put("details", detailsList);
|
||||
data.put("header", List.of(headlist));
|
||||
requestData.put("data", data);
|
||||
|
||||
return requestData;
|
||||
}
|
||||
|
||||
/**
|
||||
* 构造WMS表头数据
|
||||
*
|
||||
* @param head 采购入库单表头VO - ERP: PurchaseInHeadVO
|
||||
* @param bodies 采购入库单表体VO数组 - ERP: PurchaseInBodyVO[]
|
||||
* @param orgCode 组织编码
|
||||
* @return WMS表头数据
|
||||
* @throws BusinessException
|
||||
*/
|
||||
private Map<String, Object> buildHeadList(PurchaseInHeadVO head, PurchaseInBodyVO[] bodies, String orgCode) throws BusinessException {
|
||||
Map<String, Object> headlist = new HashMap<>();
|
||||
|
||||
// warehouseId - 所属仓库 - ERP: cwarehouseid -> WMS: warehouseId
|
||||
headlist.put("warehouseId", WAREHOUSE_PREFIX + orgCode + WAREHOUSE_SUFFIX);
|
||||
|
||||
// customerId - 货主ID - ERP: 默认固定值 -> WMS: customerId
|
||||
headlist.put("customerId", "TKJT");
|
||||
|
||||
// asnType - 订单类型 - ERP: 根据业务类型判断 -> WMS: asnType
|
||||
headlist.put("asnType", "CGRK"); // 采购入库订单
|
||||
|
||||
// docNo - ERP单据号 - ERP: vbillcode -> WMS: docNo
|
||||
headlist.put("docNo", head.getVbillcode());
|
||||
|
||||
// asnReferenceA - SRM单号 - ERP: 暂无对应字段 -> WMS: asnReferenceA
|
||||
// headlist.put("asnReferenceA", "");
|
||||
|
||||
// asnReferenceB - ASN参考信息B - ERP: 暂无对应字段 -> WMS: asnReferenceB
|
||||
// headlist.put("asnReferenceB", "");
|
||||
|
||||
// asnReferenceC - ASN参考信息C - ERP: 暂无对应字段 -> WMS: asnReferenceC
|
||||
// headlist.put("asnReferenceC", "");
|
||||
|
||||
// asnReferenceD - ASN参考信息D - ERP: 暂无对应字段 -> WMS: asnReferenceD
|
||||
// headlist.put("asnReferenceD", "");
|
||||
|
||||
// asnCreationTime - ASN创建时间 - ERP: creationtime -> WMS: asnCreationTime
|
||||
UFDateTime creationTime = head.getCreationtime();
|
||||
if (creationTime != null) {
|
||||
headlist.put("asnCreationTime", creationTime.toString());
|
||||
}
|
||||
|
||||
// expectedArriveTime1 - 预期到货时间段从 - ERP: 暂无对应字段 -> WMS: expectedArriveTime1
|
||||
// headlist.put("expectedArriveTime1", "");
|
||||
|
||||
// expectedArriveTime2 - 预期到货时间段到 - ERP: 暂无对应字段 -> WMS: expectedArriveTime2
|
||||
// headlist.put("expectedArriveTime2", "");
|
||||
|
||||
// supplierId - 供应商ID - ERP: cvendorid -> WMS: supplierId
|
||||
String supplierCode = WMS_SYNC_UTILS.transferCodeByPk(SupplierVO.getDefaultTableName(),
|
||||
SupplierVO.CODE, SupplierVO.PK_SUPPLIER, head.getCvendorid());
|
||||
headlist.put("supplierId", supplierCode);
|
||||
|
||||
// supplierName - 供应商名称 - ERP: 通过供应商ID查询名称 -> WMS: supplierName
|
||||
String supplierName = WMS_SYNC_UTILS.transferCodeByPk(SupplierVO.getDefaultTableName(),
|
||||
SupplierVO.NAME, SupplierVO.PK_SUPPLIER, head.getCvendorid());
|
||||
headlist.put("supplierName", supplierName);
|
||||
|
||||
// supplierAddress1 - 供应商地址 - ERP: 通过供应商ID查询地址 -> WMS: supplierAddress1
|
||||
String supplierAddress = WMS_SYNC_UTILS.transferCodeByPk(SupplierVO.getDefaultTableName(), SupplierVO.CORPADDRESS, SupplierVO.PK_SUPPLIER, head.getCvendorid());
|
||||
headlist.put("supplierAddress1", supplierAddress != null ? supplierAddress : "");
|
||||
|
||||
// supplierAddress2~4 - 供应商地址2~4 - ERP: 暂无对应字段 -> WMS: supplierAddress2~4
|
||||
// headlist.put("supplierAddress2", "");
|
||||
// headlist.put("supplierAddress3", "");
|
||||
// headlist.put("supplierAddress4", "");
|
||||
|
||||
// 供应商国家省份等信息 - ERP: 暂无对应字段 -> WMS: supplierCountry等
|
||||
// headlist.put("supplierCountry", "");
|
||||
// headlist.put("supplierProvince", "");
|
||||
// headlist.put("supplierCity", "");
|
||||
// headlist.put("supplierDistrict", "");
|
||||
// headlist.put("supplierStreet", "");
|
||||
|
||||
// supplierContact - 供应商联系人 - ERP: 暂无对应字段 -> WMS: supplierContact
|
||||
// String supplierContact = WMS_SYNC_UTILS.transferFieldByPkAllowNull(SupplierVO.getDefaultTableName(),
|
||||
// SupplierVO.LINKMAN, SupplierVO.PK_SUPPLIER, head.getCvendorid());
|
||||
// headlist.put("supplierContact", supplierContact != null ? supplierContact : "");
|
||||
|
||||
// supplierFax - 供应商传真 - ERP: 暂无对应字段 -> WMS: supplierFax
|
||||
// headlist.put("supplierFax", "");
|
||||
|
||||
// supplierMail - 供应商电子邮件 - ERP: 暂无对应字段 -> WMS: supplierMail
|
||||
// headlist.put("supplierMail", "");
|
||||
|
||||
// supplierTel1 - 供应商移动电话 - ERP: 通过供应商ID查询电话 -> WMS: supplierTel1
|
||||
String supplierTel = WMS_SYNC_UTILS.transferFieldByPkAllowNull(SupplierVO.getDefaultTableName(),
|
||||
SupplierVO.TEL1, SupplierVO.PK_SUPPLIER, head.getCvendorid());
|
||||
headlist.put("supplierTel1", supplierTel != null ? supplierTel : "");
|
||||
|
||||
// supplierTel2 - 供应商固定电话 - ERP: 暂无对应字段 -> WMS: supplierTel2
|
||||
// headlist.put("supplierTel2", "");
|
||||
|
||||
// supplierZip - 供应商邮政编码 - ERP: 暂无对应字段 -> WMS: supplierZip
|
||||
// headlist.put("supplierZip", "");
|
||||
|
||||
// carrierId - 承运人ID - ERP: 暂无对应字段 -> WMS: carrierId
|
||||
// headlist.put("carrierId", "");
|
||||
|
||||
// carrierName - 承运人名称 - ERP: 暂无对应字段 -> WMS: carrierName
|
||||
// headlist.put("carrierName", "");
|
||||
|
||||
// issuePartyId - 下单方ID - ERP: 暂无对应字段 -> WMS: issuePartyId
|
||||
// headlist.put("issuePartyId", "");
|
||||
|
||||
// issuePartyName - 下单方名称 - ERP: 暂无对应字段 -> WMS: issuePartyName
|
||||
// headlist.put("issuePartyName", "");
|
||||
|
||||
// countryOfDestination - 目的国 - ERP: crececountryid -> WMS: countryOfDestination
|
||||
// headlist.put("countryOfDestination", "");
|
||||
|
||||
// countryOfOrigin - 原产国 - ERP: csendcountryid -> WMS: countryOfOrigin
|
||||
// headlist.put("countryOfOrigin", "");
|
||||
|
||||
// followUp - 业务担当 - ERP: cbizid -> WMS: followUp
|
||||
// headlist.put("followUp", "");
|
||||
|
||||
// hedi01 - EDI相关信息01 - ERP: 自定义字段 -> WMS: hedi01
|
||||
// headlist.put("hedi01", "");
|
||||
|
||||
// hedi02 - 是否为负数 - 根据expectedQty决定 -> WMS: hedi02
|
||||
// 先计算所有表体的expectedQty总和来判断正负
|
||||
boolean hasNegativeQty = false;
|
||||
if (bodies != null) {
|
||||
for (PurchaseInBodyVO body : bodies) {
|
||||
if (body.getNshouldnum() != null && body.getNshouldnum().doubleValue() < 0) {
|
||||
hasNegativeQty = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
String isNegative = hasNegativeQty ? "Y" : "N";
|
||||
headlist.put("hedi02", isNegative);
|
||||
|
||||
// 表头自定义项使用
|
||||
// 获取来源/源头单据信息从表体第一个记录中获取
|
||||
String sourceBillHid = "";
|
||||
String firstBillHid = "";
|
||||
String sourceTranstype = "";
|
||||
String firstTranstype = "";
|
||||
|
||||
if (bodies != null && bodies.length > 0) {
|
||||
PurchaseInBodyVO firstBody = bodies[0];
|
||||
sourceBillHid = firstBody.getCsourcebillhid() != null ? firstBody.getCsourcebillhid() : "";
|
||||
firstBillHid = firstBody.getCfirstbillhid() != null ? firstBody.getCfirstbillhid() : "";
|
||||
sourceTranstype = firstBody.getCsourcetranstype() != null ? firstBody.getCsourcetranstype() : "";
|
||||
firstTranstype = firstBody.getCfirsttranstype() != null ? firstBody.getCfirsttranstype() : "";
|
||||
}
|
||||
|
||||
// hedi03 - 来源单据表头主键 - ERP: csourcebillhid -> WMS: hedi03
|
||||
headlist.put("hedi03", sourceBillHid);
|
||||
|
||||
// hedi04 - 源头单据表头主键 - ERP: cfirstbillhid -> WMS: hedi04
|
||||
headlist.put("hedi04", firstBillHid);
|
||||
|
||||
// hedi05 - 来源单据交易类型 - ERP: csourcetranstype -> WMS: hedi05
|
||||
headlist.put("hedi05", sourceTranstype);
|
||||
|
||||
// hedi06 - 源头单据交易类型 - ERP: cfirsttranstype -> WMS: hedi06
|
||||
headlist.put("hedi06", firstTranstype);
|
||||
|
||||
// hedi07 - 当前单据表头主键 - ERP: cgeneralhid -> WMS: hedi07
|
||||
headlist.put("hedi07", head.getCgeneralhid());
|
||||
|
||||
// hedi08~10 - EDI相关信息08~10 - ERP: 自定义字段 -> WMS: hedi08~10
|
||||
// headlist.put("hedi08", "");
|
||||
headlist.put("hedi09", 0);
|
||||
headlist.put("hedi10", 0);
|
||||
|
||||
// 装卸货地信息 - ERP: 暂无对应字段 -> WMS: placeOf系列
|
||||
// headlist.put("placeOfDischarge", "");
|
||||
// headlist.put("placeOfLoading", "");
|
||||
// headlist.put("placeOfDelivery", "");
|
||||
|
||||
// priority - 优先级 - ERP: 暂无对应字段 -> WMS: priority
|
||||
// headlist.put("priority", "");
|
||||
|
||||
// userDefine1~6 - 用户自定义1~6 - ERP: 自定义字段 -> WMS: userDefine1~6
|
||||
// headlist.put("userDefine1", "");
|
||||
// headlist.put("userDefine2", "");
|
||||
// headlist.put("userDefine3", "");
|
||||
// headlist.put("userDefine4", "");
|
||||
// headlist.put("userDefine5", "");
|
||||
// headlist.put("userDefine6", "");
|
||||
|
||||
// notes - 备注 - ERP: vnote -> WMS: notes
|
||||
headlist.put("notes", head.getVnote() != null ? head.getVnote() : "");
|
||||
|
||||
// createSource - 创建来源 - ERP: 固定值 -> WMS: createSource
|
||||
headlist.put("createSource", "ERP");
|
||||
|
||||
// crossdockFlag - 越库标记 - ERP: 暂无对应字段 -> WMS: crossdockFlag
|
||||
// headlist.put("crossdockFlag", "");
|
||||
|
||||
return headlist;
|
||||
}
|
||||
|
||||
/**
|
||||
* 构造WMS表体明细数据
|
||||
*
|
||||
* @param body 采购入库单表体VO - ERP: PurchaseInBodyVO
|
||||
* @param head 采购入库单表头VO - ERP: PurchaseInHeadVO
|
||||
* @return WMS表体明细数据
|
||||
* @throws BusinessException
|
||||
*/
|
||||
private Map<String, Object> buildDetailItem(PurchaseInBodyVO body, PurchaseInHeadVO head) throws BusinessException {
|
||||
Map<String, Object> detail = new HashMap<>();
|
||||
|
||||
// lineNo - ERP行号 - ERP: crowno -> WMS: lineNo
|
||||
detail.put("lineNo", body.getCrowno());
|
||||
|
||||
// sku - 产品编码 - ERP: cmaterialvid -> WMS: sku
|
||||
String materialCode = WMS_SYNC_UTILS.transferCodeByPk(MaterialVO.getDefaultTableName(),
|
||||
MaterialVO.CODE, MaterialVO.PK_MATERIAL, body.getCmaterialvid());
|
||||
detail.put("sku", materialCode);
|
||||
|
||||
// expectedQty - 应收数量 - ERP: nshouldnum -> WMS: expectedQty (确保为正数)
|
||||
double expectedQty = body.getNshouldnum() != null ? body.getNshouldnum().doubleValue() : 0;
|
||||
detail.put("expectedQty", Math.abs(expectedQty)); // 取绝对值确保为正数
|
||||
|
||||
// totalPrice - 总价 - ERP: 暂无直接对应字段 -> WMS: totalPrice
|
||||
detail.put("totalPrice", 0);
|
||||
|
||||
// packUom - 单位 - ERP: castunitid -> WMS: packUom (仅可选择EA/IP/CS/PL)
|
||||
// String unitCode = WMS_SYNC_UTILS.transferCodeByPk("bd_measdoc",
|
||||
// "code", "pk_measdoc", body.getCastunitid());
|
||||
// detail.put("packUom", convertToWMSUnit(unitCode));
|
||||
detail.put("packUom", "EA"); // 默认EA
|
||||
|
||||
// lotAtt01 - 生产日期 - ERP: dproducedate -> WMS: lotAtt01
|
||||
detail.put("lotAtt01", body.getDproducedate() != null ? body.getDproducedate().toString() : "");
|
||||
|
||||
// lotAtt02 - 失效日期 - ERP: dvalidate -> WMS: lotAtt02
|
||||
detail.put("lotAtt02", body.getDvalidate() != null ? body.getDvalidate().toString() : "");
|
||||
|
||||
// lotAtt03 - 入库日期 - ERP: dbizdate -> WMS: lotAtt03
|
||||
detail.put("lotAtt03", body.getDbizdate() != null ? body.getDbizdate().toString() : "");
|
||||
|
||||
// lotAtt04 - ERP批次号 - ERP: vbatchcode -> WMS: lotAtt04
|
||||
detail.put("lotAtt04", body.getVbatchcode() != null ? body.getVbatchcode() : "");
|
||||
|
||||
// lotAtt05 - ERP仓库 - ERP: cbodywarehouseid -> WMS: lotAtt05
|
||||
String bodyWarehouseCode = WMS_SYNC_UTILS.transferCodeByPk(StordocVO.getDefaultTableName(),
|
||||
StordocVO.CODE, StordocVO.PK_STORDOC, body.getCbodywarehouseid());
|
||||
detail.put("lotAtt05", bodyWarehouseCode);
|
||||
|
||||
// lotAtt06 - 供应商 - ERP: cvendorid -> WMS: lotAtt06
|
||||
String bodySupplierCode = WMS_SYNC_UTILS.transferCodeByPk(SupplierVO.getDefaultTableName(),
|
||||
SupplierVO.CODE, SupplierVO.PK_SUPPLIER, body.getCvendorid());
|
||||
detail.put("lotAtt06", bodySupplierCode);
|
||||
|
||||
// lotAtt07 - 生产厂商 - ERP: -> WMS: lotAtt07
|
||||
detail.put("lotAtt07", ""); // 采购入库无生产厂商
|
||||
|
||||
// lotAtt08 - 质量状态 - ERP: 默认合格 -> WMS: lotAtt08
|
||||
detail.put("lotAtt08", "HG");
|
||||
|
||||
// lotAtt09 - 项目号 - ERP: cprojectid -> WMS: lotAtt09
|
||||
String projectCode = WMS_SYNC_UTILS.transferCodeByPk(ProjectHeadVO.getDefaultTableName(),
|
||||
ProjectHeadVO.PROJECT_CODE, ProjectHeadVO.PK_PROJECT, body.getCprojectid());
|
||||
detail.put("lotAtt09", projectCode != null ? projectCode : "");
|
||||
|
||||
// lotAtt10~24 - 批次属性10~24 - ERP: 暂无对应字段 -> WMS: lotAtt10~24
|
||||
// for (int i = 10; i <= 24; i++) {
|
||||
// detail.put("lotAtt" + String.format("%02d", i), "");
|
||||
// }
|
||||
|
||||
// dedi04 - 来源单据表体行主键 - ERP: csourcebillbid -> WMS: dedi04
|
||||
detail.put("dedi04", body.getCsourcebillbid() != null ? body.getCsourcebillbid() : "");
|
||||
|
||||
// dedi05 - 源头单据表体主键 - ERP: cfirstbillbid -> WMS: dedi05
|
||||
detail.put("dedi05", body.getCfirstbillbid() != null ? body.getCfirstbillbid() : "");
|
||||
|
||||
// dedi06 - 当前单据表体行主键 - ERP: cgeneralbid -> WMS: dedi06
|
||||
detail.put("dedi06", body.getCgeneralbid() != null ? body.getCgeneralbid() : "");
|
||||
|
||||
// dedi07 - 源头单据号 - ERP: vfirstbillcode -> WMS: dedi07
|
||||
// detail.put("dedi07", body.getVfirstbillcode() != null ? body.getVfirstbillcode() : "");
|
||||
|
||||
// dedi08 - 来源单据行号 - ERP: vsourcerowno -> WMS: dedi08
|
||||
// detail.put("dedi08", body.getVsourcerowno() != null ? body.getVsourcerowno() : "");
|
||||
|
||||
// dedi09 - 避免使用 ,只能存数字
|
||||
// detail.put("dedi09", "");
|
||||
|
||||
// dedi10 - 避免使用 , 只能存数字
|
||||
// detail.put("dedi10", "");
|
||||
|
||||
// dedi11 - 当前单据表体主键 - ERP: cgeneralbid -> WMS: dedi11
|
||||
// detail.put("dedi11", ""); // 字段移至userDefine6
|
||||
|
||||
// dedi12 - 当前单据号 - ERP: vbillcode -> WMS: dedi12
|
||||
// detail.put("dedi12", head.getVbillcode() != null ? head.getVbillcode() : "");
|
||||
|
||||
// dedi13 - 当前单据行号 - ERP: crowno -> WMS: dedi13
|
||||
// detail.put("dedi13", body.getCrowno() != null ? body.getCrowno() : "");
|
||||
|
||||
// dedi14~16 - 保留为扩展字段
|
||||
// detail.put("dedi14", "");
|
||||
// detail.put("dedi15", "");
|
||||
// detail.put("dedi16", "");
|
||||
|
||||
// userDefine1~6 - 用户自定义字段 - 停用
|
||||
// userDefine1 -
|
||||
// detail.put("userDefine1", "");
|
||||
// userDefine2 -
|
||||
// detail.put("userDefine2", "");
|
||||
// userDefine3 -
|
||||
// detail.put("userDefine3", "");
|
||||
// userDefine4 - 来源单据表体行主键
|
||||
// detail.put("userDefine4", body.getCsourcebillbid() != null ? body.getCsourcebillbid() : "");
|
||||
// userDefine5 - 源头单据表体行主键
|
||||
// detail.put("userDefine5", body.getCfirstbillbid() != null ? body.getCfirstbillbid() : "");
|
||||
// userDefine6 - 当前单据表体行主键
|
||||
// detail.put("userDefine6", body.getCgeneralbid() != null ? body.getCgeneralbid() : "");
|
||||
|
||||
// notes - 备注 - ERP: vnotebody -> WMS: notes
|
||||
detail.put("notes", body.getVnotebody() != null ? body.getVnotebody() : "");
|
||||
|
||||
return detail;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
package nccloud.wmssync.ml.m4a;
|
||||
|
||||
import nc.bs.businessevent.IBusinessEvent;
|
||||
import nc.bs.businessevent.IBusinessListener;
|
||||
import nc.bs.dao.BaseDAO;
|
||||
import nc.bs.framework.common.NCLocator;
|
||||
import nc.bs.ic.general.businessevent.ICGeneralCommonEvent;
|
||||
import nc.bs.logging.Log;
|
||||
import nc.vo.bd.defdoc.DefdocVO;
|
||||
import nc.vo.bd.material.MaterialVO;
|
||||
import nc.vo.bd.stordoc.StordocVO;
|
||||
import nc.vo.bd.supplier.SupplierVO;
|
||||
import nc.vo.ic.m4a.entity.GeneralInBodyVO;
|
||||
import nc.vo.ic.m4a.entity.GeneralInHeadVO;
|
||||
import nc.vo.ic.m4a.entity.GeneralInVO;
|
||||
import nc.vo.org.StockOrgVO;
|
||||
import nc.vo.pmpub.project.ProjectHeadVO;
|
||||
import nc.vo.pub.BusinessException;
|
||||
import nc.vo.pub.lang.UFDateTime;
|
||||
import nccloud.api.uapbd.wms.utils.IWmsSyncUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* ÆäËûÈë¿âµ¥Ï·¢WMS
|
||||
*/
|
||||
public class WmsSyncGeneralInListener implements IBusinessListener {
|
||||
|
||||
|
||||
@Override
|
||||
public void doAction(IBusinessEvent iBusinessEvent) throws BusinessException {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
package nc.bs.uapbd.bip.workplugin;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.google.gson.Gson;
|
||||
import com.yonyou.cloud.utils.StringUtils;
|
||||
|
@ -198,8 +199,9 @@ public class ErpSaleOrderToBIPBackgroupWorkPlugin implements IBackgroundWorkPlug
|
|||
|
||||
js_apct.put("contractOrdersList", l_map_f);
|
||||
js_apct.put("id", hid);
|
||||
|
||||
js_apct_detail.put("HTXSDD", js_apct);
|
||||
JSONArray array = new JSONArray();
|
||||
array.add(js_apct);
|
||||
js_apct_detail.put("HTXSDD", array);
|
||||
logger.error("ErpSaleOrderToBIPBackgroupWorkPlugin-param = " + js_apct_detail.toJSONString());
|
||||
String resultString = doSendHttp(custUpdateUrl, "POST", tokenParam, "", headers, js_apct_detail.toJSONString());
|
||||
logger.error("ErpSaleOrderToBIPBackgroupWorkPlugin-res = " + resultString);
|
||||
|
|
Loading…
Reference in New Issue