public SerialNumberRuleDTO Add(SerialNumberRuleDTO SerialNumberRuleDTO) { var serialNumberRule = SerialNumberRuleDTO.ToModel(); serialNumberRule.Id = IdentityGenerator.NewSequentialGuid(); serialNumberRule.Created = DateTime.UtcNow; if (serialNumberRule.RuleName.IsNullOrBlank()) { throw new DefinedException(CommonMessageResources.Name_Empty); } if (serialNumberRule.Prefix.IsNullOrBlank()) { throw new DefinedException(CommonMessageResources.Prefix_Empty); } if (serialNumberRule.NumberLength <= 0) { throw new DefinedException(BaseMessagesResources.NumberLength_NotGreat_Than_Zero); } if (_Repository.Exists(serialNumberRule)) { throw new DataExistsException(string.Format(BaseMessagesResources.SerialNumberRule_Exists, serialNumberRule.RuleName)); } _Repository.Add(serialNumberRule); #region 操作日志 var serialNumberRuleDto = serialNumberRule.ToDto(); OperateRecorder.RecordOperation(serialNumberRuleDto.Id.ToString(), BaseMessagesResources.Add_SerialNumberRule, serialNumberRuleDto.GetOperationLog()); #endregion //commit the unit of work _Repository.UnitOfWork.Commit(); return(serialNumberRule.ToDto()); }
public void Update(SerialNumberRuleDTO SerialNumberRuleDTO) { //get persisted item var serialNumberRule = _Repository.Get(SerialNumberRuleDTO.Id); if (serialNumberRule == null) { throw new DataNotFoundException(BaseMessagesResources.SerialNumberRule_NotExists); } var oldDTO = serialNumberRule.ToDto(); var current = SerialNumberRuleDTO.ToModel(); serialNumberRule.RuleName = current.RuleName; serialNumberRule.Prefix = current.Prefix; serialNumberRule.UseDateNumber = current.UseDateNumber; serialNumberRule.NumberLength = current.NumberLength; if (serialNumberRule.RuleName.IsNullOrBlank()) { throw new DefinedException(CommonMessageResources.Name_Empty); } if (_Repository.Exists(serialNumberRule)) { throw new DataExistsException(string.Format(BaseMessagesResources.SerialNumberRule_Exists, serialNumberRule.RuleName)); } #region 操作日志 var ruleDto = serialNumberRule.ToDto(); OperateRecorder.RecordOperation(oldDTO.Id.ToString(), BaseMessagesResources.Update_SerialNumberRule, ruleDto.GetOperationLog(oldDTO)); #endregion //commit unit of work _Repository.UnitOfWork.Commit(); }
public ActionResult EditSerialNumberRule(SerialNumberRuleDTO serialNumberRule) { return(HttpHandleExtensions.AjaxCallGetResult(() => { if (serialNumberRule.Id == Guid.Empty) { serialNumberRule.CreatorId = GetCurrentUser().UserId; _serialNumberRuleService.Add(serialNumberRule); this.JsMessage = MessagesResources.Add_Success; } else { _serialNumberRuleService.Update(serialNumberRule); this.JsMessage = MessagesResources.Update_Success; } return Json(new AjaxResponse { Succeeded = true, RedirectUrl = Url.Action("Index") }); })); }
public static string GetOperationLog(this SerialNumberRuleDTO entity, SerialNumberRuleDTO oldDTO = null) { var sb = new StringBuilder(); if (oldDTO == null) { sb.AppendLine(string.Format("{0}: {1}", CommonMessageResources.Name, entity.RuleName)); sb.AppendLine(string.Format("{0}: {1}", BaseMessagesResources.SerialNumberRule_Prefix, entity.Prefix)); sb.AppendLine(string.Format("{0}: {1}", BaseMessagesResources.SerialNumberRule_UseDateNumber, entity.UseDateNumber)); sb.AppendLine(string.Format("{0}: {1}", BaseMessagesResources.SerialNumberRule_NumberLength, entity.NumberLength)); } else { if (entity.RuleName != oldDTO.RuleName) { sb.AppendLine(string.Format("{0}: {1} => {2}", CommonMessageResources.Name, oldDTO.RuleName, entity.RuleName)); } if (entity.Prefix != oldDTO.Prefix) { sb.AppendLine(string.Format("{0}: {1} => {2}", BaseMessagesResources.SerialNumberRule_Prefix, oldDTO.Prefix, entity.Prefix)); } if (entity.UseDateNumber != oldDTO.UseDateNumber) { sb.AppendLine(string.Format("{0}: {1} => {2}", BaseMessagesResources.SerialNumberRule_UseDateNumber, oldDTO.UseDateNumber, entity.UseDateNumber)); } if (entity.NumberLength != oldDTO.NumberLength) { sb.AppendLine(string.Format("{0}: {1} => {2}", BaseMessagesResources.SerialNumberRule_NumberLength, oldDTO.NumberLength, entity.NumberLength)); } } return(sb.ToString().TrimEnd('\r', '\n')); }
public static SerialNumberRule ToModel(this SerialNumberRuleDTO dto) { return(Mapper.Map <SerialNumberRule>(dto)); }