备料计划下达生产优化

This commit is contained in:
lihao 2025-09-02 18:28:40 +08:00
parent c45232e225
commit cffbf2577d
3 changed files with 14 additions and 2 deletions

View File

@ -1,5 +1,6 @@
package nc.bs.mmpac.pmo.pac0002.bp;
import nc.bs.mmpac.pmo.pac0002.bp.rule.AfterApproveSyncPLMRule;
import nc.bs.mmpac.pmo.pac0002.bp.rule.BeforePmoBomRule;
import nc.bs.mmpac.pmo.pac0002.bp.rule.saveBeforeCheckRule;
import nc.bs.mmpac.pmo.pac0002.pluginpoint.PMOPluginPoint;
@ -303,6 +304,8 @@ public class PMOInsertBP {
IRule<PMOAggVO> saveapproverule = new PMOInsertSaveApproveRule();
processer.addAfterRule(saveapproverule);
// 审批后推送流程生产订单到PLM
processer.addAfterRule(new AfterApproveSyncPLMRule());
}
public PMOAggVO[] pushInsert(PMOAggVO[] vos, boolean issub, String pushtype) {

View File

@ -6,6 +6,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import nc.bs.dao.BaseDAO;
import nc.bs.dao.DAOException;
import nc.bs.framework.common.InvocationInfoProxy;
import nc.bs.logging.Log;
import nc.bs.trade.business.HYPubBO;
import nc.bs.trade.business.HYSuperDMO;
@ -162,16 +163,19 @@ public class AfterApproveSyncPLMRule implements IRule<PMOAggVO> {
private List<PMOAggVO> checkAndFilterBillSrcOrg(PMOAggVO[] cloneOrderVOS) throws BusinessException, IOException {
List<PMOAggVO> filteredOrders = new ArrayList<PMOAggVO>();
HYPubBO hybo = new HYPubBO();
for (PMOAggVO pmoAggVO : cloneOrderVOS) {
;
String pkOrg = pmoAggVO.getParentVO().getPk_org();
String orgCode = MyHelper.transferField(OrgVO.getDefaultTableName(), OrgVO.CODE, OrgVO.PK_ORG, pkOrg);
// 检查当前组织是否为电力电子
if (MyHelper.checkIfDldzOrg(orgCode, configParams)) {
continue;
}
if(pmoAggVO.getParentVO().getVtrantypecode().equals("55A2-Cxx-08")){
Object pk_billtypecode=hybo.findColValue("bd_billtype","pk_billtypecode"," istransaction = 'Y' and nvl ( islock, 'N' ) = 'N' and parentbilltype = '55A2' and pk_group = '"
+ InvocationInfoProxy.getInstance().getGroupId() + "' and pk_billtypeid = '" + pmoAggVO.getParentVO().getCtrantypeid() + "' ");
if(pk_billtypecode.equals("55A2-Cxx-08")){
filteredOrders.add(pmoAggVO);
}
}

View File

@ -6,6 +6,7 @@
package nc.bs.mmpac.pmo.pac0002.bp.rule;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -42,6 +43,10 @@ public class WithUpdatePickmRule implements IRule<PMOAggVO> {
for (PMOItemVO praybillItemVO : praybillItemVOS) {
if("55A3".equals(praybillItemVO.getVsrctype())){
pk.add(praybillItemVO.getVsrcbid());
Map<String,Object> updateMap = new HashMap<String,Object>();
updateMap.put("pk",praybillItemVO.getVsrcbid());
updateMap.put("num",praybillItemVO.getNastnum());
updateList.add(updateMap);
}
}
}