parent
							
								
									baba360775
								
							
						
					
					
						commit
						df2998ce3f
					
				|  | @ -0,0 +1,48 @@ | ||||||
|  | package nc.impl.pu.dhjyd.dhjydmaster; | ||||||
|  | 
 | ||||||
|  | import java.util.ArrayList; | ||||||
|  | import java.util.Map; | ||||||
|  | 
 | ||||||
|  | import nc.bs.framework.common.NCLocator; | ||||||
|  | import nc.bs.pub.pf.PfUtilTools; | ||||||
|  | import nc.itf.pu.dhjyd.dhjydmaster.IArriveToDhjyd; | ||||||
|  | import nc.itf.pu.dhjyd.dhjydmaster.IDhjydMasterVOService; | ||||||
|  | import nc.vo.pu.dhjyd.AggDhjydMasterVO; | ||||||
|  | import nc.vo.pu.m23.entity.ArriveVO; | ||||||
|  | 
 | ||||||
|  | public class ArriveToDhjydImpl implements IArriveToDhjyd { | ||||||
|  | 
 | ||||||
|  | 	/*** | ||||||
|  | 	   * 到货单生成到货检验单 | ||||||
|  | 	  * @param ArriveVO | ||||||
|  | 	  * @return | ||||||
|  | 	  */ | ||||||
|  | 	@Override | ||||||
|  | 	public Map<String, String> createDhjyd_RequiresNew(ArriveVO arriveVO) { | ||||||
|  | 		 | ||||||
|  | 		 | ||||||
|  | 		try { | ||||||
|  | 			 | ||||||
|  | 			//到货单集合获取 | ||||||
|  | 			ArrayList<ArriveVO> arrayList = new ArrayList<ArriveVO>(); | ||||||
|  | 			arrayList.add(arriveVO); | ||||||
|  | 			 | ||||||
|  | 			// 单据转换 到货单-->到货检验单 | ||||||
|  | 			AggDhjydMasterVO[] vos = (AggDhjydMasterVO[]) PfUtilTools.runChangeDataAry("23", "DHJY", | ||||||
|  | 					arrayList.toArray(new ArriveVO[0])); | ||||||
|  | 			 | ||||||
|  | 			// 到货检验单保存-生成保存态 | ||||||
|  | 			IDhjydMasterVOService dhjydMasterVO = NCLocator.getInstance().lookup(IDhjydMasterVOService.class); | ||||||
|  | 			dhjydMasterVO.saveAggDhjydMasterVO(vos); | ||||||
|  | 		} catch (Exception e) { | ||||||
|  | 			String errMsg = e.toString(); | ||||||
|  | 			if (e.getCause() != null) { | ||||||
|  | 				errMsg = e.getCause().toString(); | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		// TODO Auto-generated method stub | ||||||
|  | 		return null; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | } | ||||||
|  | @ -0,0 +1,93 @@ | ||||||
|  | package nc.impl.pu.m23.approve.action; | ||||||
|  | 
 | ||||||
|  | import nc.bs.pu.m23.fa.rule.CanStoreNumRule; | ||||||
|  | import nc.bs.pu.m23.plugin.ArriveActionPlugInPoint; | ||||||
|  | import nc.bs.pub.compiler.AbstractCompiler2; | ||||||
|  | import nc.bs.scmpub.pf.PfParameterUtil; | ||||||
|  | import nc.bs.scmpub.rule.VOSagaFrozenValidateRule; | ||||||
|  | import nc.impl.pu.m23.approve.rule.ApproveAfterEventRule; | ||||||
|  | import nc.impl.pu.m23.approve.rule.ApproveAndQualityCheckRule; | ||||||
|  | import nc.impl.pu.m23.approve.rule.ApproveAndSaveDhjyRule; | ||||||
|  | import nc.impl.pu.m23.approve.rule.ApproveBeforeEventRule; | ||||||
|  | import nc.impl.pu.m23.approve.rule.ApproveFilterRule; | ||||||
|  | import nc.impl.pu.m23.approve.rule.ChkCanApproveRule; | ||||||
|  | import nc.impl.pubapp.pattern.data.bill.BillUpdate; | ||||||
|  | import nc.impl.pubapp.pattern.rule.processer.AroundProcesser; | ||||||
|  | import nc.vo.ml.NCLangRes4VoTransl; | ||||||
|  | import nc.vo.pu.m23.entity.ArriveVO; | ||||||
|  | import nc.vo.pu.m23.rule.ArriveATPUpdateRule; | ||||||
|  | import nc.vo.pu.pub.enumeration.PuBusiLogActionCode; | ||||||
|  | import nc.vo.pu.pub.enumeration.PuBusiLogPathCode; | ||||||
|  | import nc.vo.pu.pub.rule.busilog.WriteOperateLogRule; | ||||||
|  | import nc.vo.pubapp.pattern.exception.ExceptionUtils; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | public class ArriveApproveAction | ||||||
|  | { | ||||||
|  |   public ArriveVO[] approveArrive(ArriveVO[] voArray, AbstractCompiler2 script) { | ||||||
|  |     PfParameterUtil<ArriveVO> util = new PfParameterUtil<ArriveVO>((script == null) ? null : script.getPfParameterVO(), voArray); | ||||||
|  |     ArriveVO[] originBills = (ArriveVO[])util.getOrginBills(); | ||||||
|  | 
 | ||||||
|  |      | ||||||
|  |     AroundProcesser<ArriveVO> processer = new AroundProcesser<ArriveVO>(ArriveActionPlugInPoint.ArriveApproveAction); | ||||||
|  |      | ||||||
|  |     addBeforeRule(processer); | ||||||
|  |     addAfterRule(processer); | ||||||
|  |     addATPRule(processer); | ||||||
|  |      | ||||||
|  |     (new ArriveATPUpdateRule(true)).process(voArray); | ||||||
|  |     processer.before(voArray); | ||||||
|  |      | ||||||
|  |     if (null != script) { | ||||||
|  |       try { | ||||||
|  |         script.procFlowBacth(script.getPfParameterVO()); | ||||||
|  |       } catch (Exception e) { | ||||||
|  |         ExceptionUtils.wrappException(e); | ||||||
|  |       }  | ||||||
|  |     } | ||||||
|  |     if (script == null || (script.getPfParameterVO()).m_preValueVos == null) { | ||||||
|  |       String msg = NCLangRes4VoTransl.getNCLangRes().getStrByID("4004040_0", "04004040-0115"); | ||||||
|  |        | ||||||
|  |       ExceptionUtils.wrappBusinessException(msg); | ||||||
|  |       return null; | ||||||
|  |     }  | ||||||
|  |     BillUpdate<ArriveVO> update = new BillUpdate<ArriveVO>(); | ||||||
|  |     ArriveVO[] returnVos = (ArriveVO[])update.update(voArray, originBills); | ||||||
|  |      | ||||||
|  |     processer.after(returnVos); | ||||||
|  |      | ||||||
|  |     return returnVos; | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |    | ||||||
|  |   private void addAfterRule(AroundProcesser<ArriveVO> processer) { | ||||||
|  |     processer.addAfterRule(new WriteOperateLogRule(PuBusiLogPathCode.puarrivalApprovePath | ||||||
|  |           .getCode(), PuBusiLogActionCode.approve | ||||||
|  |           .getCode())); | ||||||
|  |      | ||||||
|  |     processer.addAfterRule(new ApproveFilterRule()); | ||||||
|  |      | ||||||
|  |     processer.addAfterRule(new ApproveAfterEventRule()); | ||||||
|  |      | ||||||
|  |     processer.addAfterRule(new ApproveAndQualityCheckRule()); | ||||||
|  |     //到货单审批后生成检验单-hefk | ||||||
|  |     processer.addAfterRule(new ApproveAndSaveDhjyRule()); | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |    | ||||||
|  |   private void addATPRule(AroundProcesser<ArriveVO> processer) { processer.addAfterRule(new ArriveATPUpdateRule(false)); } | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  |    | ||||||
|  |   private void addBeforeRule(AroundProcesser<ArriveVO> processer) { | ||||||
|  |     processer.addBeforeRule(new VOSagaFrozenValidateRule()); | ||||||
|  |      | ||||||
|  |     processer.addBeforeRule(new ChkCanApproveRule()); | ||||||
|  |      | ||||||
|  |     processer.addBeforeRule(new ApproveBeforeEventRule()); | ||||||
|  |      | ||||||
|  |     processer.addBeforeRule(new CanStoreNumRule()); | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | @ -0,0 +1,31 @@ | ||||||
|  | package nc.impl.pu.m23.approve.rule; | ||||||
|  | 
 | ||||||
|  | import java.util.Map; | ||||||
|  | 
 | ||||||
|  | import nc.bs.framework.common.NCLocator; | ||||||
|  | import nc.impl.pubapp.pattern.rule.IRule; | ||||||
|  | import nc.itf.pu.dhjyd.dhjydmaster.IArriveToDhjyd; | ||||||
|  | import nc.vo.pu.m23.entity.ArriveVO; | ||||||
|  | import nc.vo.pubapp.pattern.exception.ExceptionUtils; | ||||||
|  | import nccloud.commons.lang.ArrayUtils; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | /*** | ||||||
|  |  * 到货单审核完成生成检验单 | ||||||
|  | * @author hefk | ||||||
|  | * | ||||||
|  | */ | ||||||
|  | public class ApproveAndSaveDhjyRule extends Object implements IRule<ArriveVO> | ||||||
|  | { | ||||||
|  |   public void process(ArriveVO[] vos) { | ||||||
|  |     if (ArrayUtils.isEmpty(vos)) { | ||||||
|  |       return; | ||||||
|  |     } | ||||||
|  |     try { | ||||||
|  |     	IArriveToDhjyd service = (IArriveToDhjyd)NCLocator.getInstance().lookup(IArriveToDhjyd.class); | ||||||
|  |     	Map<String,String> result = service.createDhjyd_RequiresNew(vos[0]); | ||||||
|  |     } catch (Exception e) { | ||||||
|  |       ExceptionUtils.wrappException(e); | ||||||
|  |     }  | ||||||
|  |   } | ||||||
|  | } | ||||||
		Loading…
	
		Reference in New Issue