/// <summary> /// 提交审核 /// </summary> /// <param name="param"></param> /// <returns></returns> public WCFAddUpdateResult SubmitOrAuditBill(AuditBillParam param) { WCFAddUpdateResult ret = new WCFAddUpdateResult(); if (param.ExecuteStatus == "PassBill") { } else if (param.ExecuteStatus == "CancelBill") { } return(ret); }
public WCFAddUpdateResult SubmitOrAuditBill(AuditBillParam param) { WCFAddUpdateResult ret = new WCFAddUpdateResult(); if (param.OldBillStatus.ToStringHasNull().ToLower() == "new" && param.NewBillStatus.ToStringHasNull().ToLower() == "approve" || param.OldBillStatus.ToStringHasNull().ToLower() == "new" && param.NewBillStatus.ToStringHasNull().ToLower() == "complete") { SubmitStkInBill(new STK_InParam() { StkInGuid = param.SourceBillGuid }); } if (param.NewBillStatus.ToStringHasNull().ToLower() == "complete") { AuditStkInBill(new STK_InParam() { StkInGuid = param.SourceBillGuid }); } return(ret); }
/// <summary> /// 审核完成后调用的方法 /// </summary> /// <param name="exeMethodPath">方法路径</param> /// <param name="methodName">方法名称</param> /// <param name="param">方法要传入的实体</param> private void AfterAuditExeMethod(string sourceTableName, string billOldStatus, string billNewStatus, string triggerStatus, string exeMethodPath, string methodName, Guid?sourceBillGuid) { try { if (string.IsNullOrEmpty(exeMethodPath)) { return; } #region 判断状态是否可触发执行方法 bool exeOK = false; if (triggerStatus.ToLower() == "approve")//提交审核 { //提交 if ((billOldStatus.ToStringHasNull().Trim() == "" || billOldStatus.ToLower() == "new") && billNewStatus.ToLower() == "complete" || (billOldStatus.ToStringHasNull().Trim() == "" || billOldStatus.ToLower() == "new") && billNewStatus.ToLower() == "approve") { exeOK = true; } //撤消 if (billOldStatus.ToStringHasNull().Trim() == "complete" && billNewStatus.ToLower() == "new" || billOldStatus.ToStringHasNull().Trim() == "approve" && billNewStatus.ToLower() == "new") { exeOK = true; } } if (triggerStatus.ToLower() == "complete")//审核完成 { if ((billOldStatus.ToStringHasNull().Trim() == "" || billOldStatus.ToLower() == "new") && billNewStatus.ToLower() == "complete" || billOldStatus.ToLower() == "approve" && billNewStatus.ToLower() == "complete") { exeOK = true; } //撤消 if (billOldStatus.ToStringHasNull().Trim() == "complete" && billNewStatus.ToLower() == "new") { exeOK = true; } } if (!exeOK) { return; } #endregion #region 产生实例 object bll = Activator.CreateInstance(Type.GetType(exeMethodPath + ",ZNLCRM.BLL")); if (bll == null) { throw new WarnException("指定的审核完成后执行的方法类有异常!"); } #endregion #region 相关参数 AuditBillParam param = new AuditBillParam(); param.SourceBillGuid = sourceBillGuid; param.OldBillStatus = billOldStatus; param.NewBillStatus = billNewStatus; param.TriggerStatus = triggerStatus; param.SourceTableName = sourceTableName; #endregion #region 获取相关方法并执行 MethodInfo exeMethod = bll.GetType().GetMethod(methodName); if (exeMethod == null) { throw new WarnException("指定的审核完成后执行的方法有异常!"); } exeMethod.Invoke(bll, new object[] { param }); #endregion } catch (WarnException exp) { throw exp; } catch (System.Exception exp) { LogInfoBLL.WriteLog(this.SessionInfo, exp); } }