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