/// <summary> /// 终止代销商品规则 /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual ConsignSettlementRulesInfo StopConsignSettlementRule(string settleRulesCode) { ConsignSettlementRulesInfo entity = ConsignSettlementRuleDA.GetConsignSettleRuleByCode(settleRulesCode); if (entity == null) { //规则({0})不存在,无法终止 throw new BizException(string.Format(GetExceptionString("ConsignRule_RuleNotExist_Stop"), settleRulesCode)); } if (entity.Status != ConsignSettleRuleStatus.Available && entity.Status != ConsignSettleRuleStatus.Enable) { //规则({0})不处于“未生效”和“已生效”状态,无法终止 throw new BizException(string.Format(GetExceptionString("ConsignRule_Available_Invalid_Stop"), settleRulesCode)); } entity.Status = ConsignSettleRuleStatus.Stop; entity.EditUser = ExternalDomainBroker.GetUserNameByUserSysNo(ServiceContext.Current.UserSysNo); entity = Modify(entity, ConsignSettleRuleActionType.Stop); //记录系统日志 //WriteLog(entity, LogType.ConsignSettleRule_Stop); ExternalDomainBroker.CreateLog(" Stop ConsignSettleRule " , BizEntity.Common.BizLogType.ConsignSettleRule_Stop , entity.RuleSysNo.Value , entity.CompanyCode); return(entity); }
/// <summary> /// 审核代销商品规则 /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual ConsignSettlementRulesInfo AuditConsignSettlementRule(ConsignSettlementRulesInfo info) { ConsignSettlementRulesInfo entity = ConsignSettlementRuleDA.GetConsignSettleRuleByCode(info.SettleRulesCode); if (entity == null) { //规则({0})不存在,无法审核 throw new BizException(string.Format(GetExceptionString("ConsignRule_RuleNotExist_Audit"), info.SettleRulesCode)); } if (entity.Status != ConsignSettleRuleStatus.Wait_Audit) { //规则({0})不是待审核状态,无法审核 throw new BizException(string.Format(GetExceptionString("ConsignRule_WaitingAudit_Invalid_Audit"), info.SettleRulesCode)); } ////审核人和创建人不能相同 //if (info.EditUser == entity.CreateUser) //{ // throw new BizException(GetExceptionString("ConsignRule_CreateAndAuditUserNotTheSame")); //} //检测商品的属性 CheckProduct(entity.ProductSysNo.Value); //时间段重复性的检测 CheckRuleDateRepeat(entity); entity.Status = ConsignSettleRuleStatus.Available; entity.EditUser = ExternalDomainBroker.GetUserNameByUserSysNo(ServiceContext.Current.UserSysNo); entity = Modify(entity, ConsignSettleRuleActionType.Audit); //发送ESB消息 EventPublisher.Publish <SettlementRuleAuditMessage>(new SettlementRuleAuditMessage() { AuditUserSysNo = ServiceContext.Current.UserSysNo, SettleRulesCode = entity.SettleRulesCode }); //记录系统日志 //WriteLog(entity, LogType.ConsignSettleRule_Audit); ExternalDomainBroker.CreateLog(" Audit ConsignSettleRule " , BizEntity.Common.BizLogType.ConsignSettleRule_Audit , entity.RuleSysNo.Value , entity.CompanyCode); return(entity); }
/// <summary> /// 更新代销商品规则 /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual ConsignSettlementRulesInfo UpdateConsignSettlementRule(ConsignSettlementRulesInfo entity) { //检测数据完整性 CheckEntity(entity); //查询原实体 ConsignSettlementRulesInfo oldEntity = ConsignSettlementRuleDA.GetConsignSettleRuleByCode(entity.SettleRulesCode); if (oldEntity == null) { //规则({0})不存在,无法修改 throw new BizException(string.Format(GetExceptionString("ConsignRule_RuleNotExist"), entity.SettleRulesCode)); } if (oldEntity.Status != ConsignSettleRuleStatus.Wait_Audit) { //规则({0})不处于待审核状态,无法修改 throw new BizException(string.Format(GetExceptionString("ConsignRule_WaitingAudit_Invalid"), entity.SettleRulesCode)); } //检测商品的属性 CheckProduct(entity.ProductSysNo.Value); //时间段重复性的检测 CheckRuleDateRepeat(entity); SetDefaultValue(entity); entity.EditUser = ExternalDomainBroker.GetUserNameByUserSysNo(ServiceContext.Current.UserSysNo); entity = Modify(entity, ConsignSettleRuleActionType.Update); //记录系统日志 //WriteLog(entity, LogType.ConsignSettleRule_Update); ExternalDomainBroker.CreateLog(" Updated ConsignSettleRule " , BizEntity.Common.BizLogType.ConsignSettleRule_Update , entity.RuleSysNo.Value , entity.CompanyCode); return(entity); }
/// <summary> /// 作废代销商品规则 /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual ConsignSettlementRulesInfo AbandonConsignSettlementRule(string settleRulesCode) { ConsignSettlementRulesInfo entity = ConsignSettlementRuleDA.GetConsignSettleRuleByCode(settleRulesCode); if (entity == null) { //规则({0})不存在,无法作废 throw new BizException(string.Format(GetExceptionString("ConsignRule_RuleNotExist_Abandon"), settleRulesCode)); } if (entity.Status != ConsignSettleRuleStatus.Wait_Audit) { //规则({0})不处于待审核状态,无法作废 throw new BizException(string.Format(GetExceptionString("ConsignRule_WaitingAudit_Invalid_Abandon"), settleRulesCode)); } entity.Status = ConsignSettleRuleStatus.Forbid; entity.EditUser = ExternalDomainBroker.GetUserNameByUserSysNo(ServiceContext.Current.UserSysNo); entity = Modify(entity, ConsignSettleRuleActionType.Abandon); //发送ESB消息 EventPublisher.Publish <SettlementRuleAbandonMessage>(new SettlementRuleAbandonMessage() { AbandonUserSysNo = ServiceContext.Current.UserSysNo, SettleRulesCode = settleRulesCode }); //记录系统日志 // WriteLog(entity, LogType.ConsignSettleRule_Abadon); ExternalDomainBroker.CreateLog(" Abandon ConsignSettleRule " , BizEntity.Common.BizLogType.ConsignSettleRule_Abadon , entity.RuleSysNo.Value , entity.CompanyCode); return(entity); }