Merge remote-tracking branch 'origin/main'

This commit is contained in:
lihao 2025-07-28 10:25:49 +08:00
commit 5898e36b89
3 changed files with 20 additions and 8 deletions

View File

@ -6,9 +6,11 @@
package nc.bs.ic.m4d.cancelsign;
import com.yonyou.cloud.ncc.plugin.entity.OperationInfo;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import nc.bs.ic.general.cancelsign.CancelSignBPTemplate;
import nc.bs.ic.general.cancelsign.ICancelSignBP;
import nc.bs.ic.general.cancelsign.ICancelSignRuleProvider;
@ -18,6 +20,7 @@ import nc.bs.ic.m4d.base.BPPlugInPoint;
import nc.bs.ic.m4d.base.UpdateSCOnhandRule;
import nc.bs.ic.m4d.cancelsign.rule.AfterCancelSignRuleForLiabilityProcess;
import nc.bs.ic.m4d.cancelsign.rule.PushDeleteIAandTOBills;
import nc.bs.ic.m4d.sign.rule.PullProcessEpicMesRule;
import nc.bs.ic.pub.util.SagasUtils;
import nc.bs.scmpub.rule.VOSagaFrozenValidateRule;
import nc.impl.pubapp.pattern.rule.processer.AroundProcesser;
@ -35,7 +38,8 @@ public class CancelSignBP implements ICancelSignBP<MaterialOutVO>, ICancelSignRu
processor.addAfterRule(new AfterCancelSignRuleForLiabilityProcess());
processor.addAfterRule(new PushDeleteIAandTOBills());
// processor.addAfterRule(new PullProcess());
// 股箇갔팹MES-쥴죕矜헹/藁욋데
processor.addAfterRule(new PullProcessEpicMesRule("N"));
}
public void addBeforeRule(MaterialOutVO[] vos, AroundProcesser<MaterialOutVO> processor) {
@ -46,11 +50,11 @@ public class CancelSignBP implements ICancelSignBP<MaterialOutVO>, ICancelSignRu
public MaterialOutVO[] cancelSign(MaterialOutVO[] vos) {
CancelSignBPTemplate<MaterialOutVO> cancelBP = new CancelSignBPTemplate(BPPlugInPoint.CancelSignBP, this);
SagasUtils.frozenAndAddSaga(vos, ICBillType.MaterialOut.getCode(), "1", (OperationInfo)null);
SagasUtils.frozenAndAddSaga(vos, ICBillType.MaterialOut.getCode(), "1", (OperationInfo) null);
Map<String, Serializable> paramMap = new HashMap();
paramMap.put("actionname", "cancelsign_4D");
paramMap.put("hid", VOEntityUtil.getPksFromAggVO(vos));
SagasUtils.compensate(paramMap, IMaterialOutSagasCompensate.class);
return (MaterialOutVO[])cancelBP.cancelSign(vos);
return (MaterialOutVO[]) cancelBP.cancelSign(vos);
}
}

View File

@ -36,7 +36,7 @@ public class SignBP implements ISignBP<MaterialOutVO>, ISignRuleProvider<Materia
processor.addAfterRule(new AfterSignRuleForLiabilityProcess());
// processor.addAfterRule(new CheckDbizdateProcess());
// 推送艾普MES-领料需求/退库单
processor.addAfterRule(new PullProcessEpicMesRule());
processor.addAfterRule(new PullProcessEpicMesRule("Y"));
}
public void addBeforeRule(MaterialOutVO[] vos, AroundProcesser<MaterialOutVO> processor) {

View File

@ -24,9 +24,15 @@ public class PullProcessEpicMesRule implements IRule<MaterialOutVO> {
public PullProcessEpicMesRule() {
}
private static final String LOG_INFO_NAME = "dldzlog";
public PullProcessEpicMesRule(String auditCode) {
this.auditCode = auditCode;
}
public String auditCode = "Y";
private static final String LOG_INFO_NAME = "dldzlog";
private static final Log logDl = Log.getInstance(LOG_INFO_NAME);
private Map<String, String> configParams;
public void process(MaterialOutVO[] vos) {
@ -78,7 +84,7 @@ public class PullProcessEpicMesRule implements IRule<MaterialOutVO> {
obj.put("supplierCode", null);// 供应商编码可为空
obj.put("supplierName", null);// 供应商名称可为空
obj.put("conditionalCode", null);// 状况码可为空用于控制业务逻辑
obj.put("auditCode", "Y");// 审核码 N:未审核 Y:已审核 X:已作废
obj.put("auditCode", auditCode);// 审核码 N:未审核 Y:已审核 X:已作废
obj.put("postingStatus", "Y");// 过账状态Y:已过账N:未过账
obj.put("confirmationCode", "Y"); // 确认码Y:已确认N:未确认
obj.put("changeFlag", null); // 变更标识可为空Y:已变更N:未变更
@ -121,9 +127,11 @@ public class PullProcessEpicMesRule implements IRule<MaterialOutVO> {
private void pushData(String requestUrl, JSONArray param) throws BusinessException {
String baseUrl = configParams.get("epicMesUrl");
requestUrl = baseUrl + requestUrl;
String result = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, param.toJSONString());
String reqJson = param.toJSONString();
logDl.error("EpicMes-MaterialOut-req = " + reqJson);
String result = ThirdPartyPostRequestUtil.sendPostRequest(requestUrl, reqJson);
JSONObject resultObj = JSONObject.parseObject(result);
logDl.error("EpicMes-MaterialOut-req = " + result);
logDl.error("EpicMes-MaterialOut-res = " + result);
if (!"1".equals(resultObj.getString("flag"))) {
throw new BusinessException("EpicMes-MaterialOut-error:" + resultObj.getString("msg"));