生产订单备料重算更新请购单
This commit is contained in:
parent
717c315157
commit
80cea4f91e
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
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.rule.PMOPickmRecalRule;
|
||||
import nc.bs.mmpac.pmo.pac0002.rule.PMOPickmRecalStatusRule;
|
||||
|
|
@ -31,5 +32,7 @@ public class PMOPickmRecalBP {
|
|||
processer.addBeforeRule(rowstatuerule);
|
||||
IRule<PMOAggVO> bomrtrule = new PMOCheckPickmRecalBomRTRule();
|
||||
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