生产订单备料重算更新请购单
This commit is contained in:
parent
717c315157
commit
80cea4f91e
|
|
@ -5,6 +5,7 @@
|
||||||
|
|
||||||
package nc.bs.mmpac.pmo.pac0002.bp;
|
package nc.bs.mmpac.pmo.pac0002.bp;
|
||||||
|
|
||||||
|
import nc.bs.mmpac.pmo.pac0002.bp.rule.AfterPickmRecalUpdateBuyingreqRule;
|
||||||
import nc.bs.mmpac.pmo.pac0002.pluginpoint.PMOPluginPoint;
|
import nc.bs.mmpac.pmo.pac0002.pluginpoint.PMOPluginPoint;
|
||||||
import nc.bs.mmpac.pmo.pac0002.rule.PMOPickmRecalRule;
|
import nc.bs.mmpac.pmo.pac0002.rule.PMOPickmRecalRule;
|
||||||
import nc.bs.mmpac.pmo.pac0002.rule.PMOPickmRecalStatusRule;
|
import nc.bs.mmpac.pmo.pac0002.rule.PMOPickmRecalStatusRule;
|
||||||
|
|
@ -31,5 +32,7 @@ public class PMOPickmRecalBP {
|
||||||
processer.addBeforeRule(rowstatuerule);
|
processer.addBeforeRule(rowstatuerule);
|
||||||
IRule<PMOAggVO> bomrtrule = new PMOCheckPickmRecalBomRTRule();
|
IRule<PMOAggVO> bomrtrule = new PMOCheckPickmRecalBomRTRule();
|
||||||
processer.addBeforeRule(bomrtrule);
|
processer.addBeforeRule(bomrtrule);
|
||||||
|
IRule<PMOAggVO> aggVOIRule = new AfterPickmRecalUpdateBuyingreqRule();
|
||||||
|
processer.addBeforeRule(aggVOIRule);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
package nc.bs.mmpac.pmo.pac0002.bp.rule;
|
||||||
|
|
||||||
|
import nc.bs.dao.BaseDAO;
|
||||||
|
import nc.bs.dao.DAOException;
|
||||||
|
import nc.jdbc.framework.processor.ColumnProcessor;
|
||||||
|
import nc.jdbc.framework.processor.MapListProcessor;
|
||||||
|
import nc.vo.mmpac.pmo.pac0002.entity.PMOAggVO;
|
||||||
|
import nc.impl.pubapp.pattern.rule.IRule;
|
||||||
|
import nc.vo.mmpac.pmo.pac0002.entity.PMOItemVO;
|
||||||
|
import nc.vo.pub.lang.UFDouble;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 备料重算后更新请购单
|
||||||
|
*/
|
||||||
|
public class AfterPickmRecalUpdateBuyingreqRule implements IRule<PMOAggVO> {
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void process(PMOAggVO[] pmoAggVOS) {
|
||||||
|
BaseDAO dao = new BaseDAO();
|
||||||
|
for (PMOAggVO pmoAggVO : pmoAggVOS) {
|
||||||
|
for (PMOItemVO pmoItemVO:pmoAggVO.getChildrenVO()){
|
||||||
|
try {
|
||||||
|
String pmoid=pmoItemVO.getCmoid();
|
||||||
|
UFDouble nastnum=pmoItemVO.getNastnum();
|
||||||
|
// 查询备料计划
|
||||||
|
String pickmsql = "select cpickm_bid,nplanoutnum from mm_pickm_b where cpickmid in ( select cpickmid from mm_pickm where csourcebillrowid='" + pmoid + "' and dr=0) and dr = 0";
|
||||||
|
List<Map<String,Object>> hmateral = (List<Map<String,Object>>) dao.executeQuery(pickmsql, new MapListProcessor());
|
||||||
|
|
||||||
|
for (Map<String,Object> map : hmateral) {
|
||||||
|
String buyingreqsql = "select pk_praybill_b,nnum from po_praybill_b where csourcebid ='" + map.get("cpickm_bid") + "' and dr = 0";
|
||||||
|
List<Map<String,Object>> buyingreq = (List<Map<String,Object>>) dao.executeQuery(buyingreqsql, new MapListProcessor());
|
||||||
|
for (Map<String,Object> map2 : buyingreq) {
|
||||||
|
if (new UFDouble((BigDecimal) map2.get("nnum")).compareTo(new UFDouble((BigDecimal)map.get("nplanoutnum"))) >0) {
|
||||||
|
String sql = "update po_praybill_b set vbdef15='" +map.get("nplanoutnum") + "' where pk_praybill_b='"
|
||||||
|
+map2.get("pk_praybill_b") + "'";
|
||||||
|
dao.executeUpdate(sql);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
} catch (DAOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue