/// <summary> /// Update data and create change log /// </summary> /// <param name="templateLog"></param> /// <param name="templateLogModel"></param> /// <returns></returns> private string ChangeLog(TemplateLog templateLog, TemplateLogManageModel templateLogModel) { var changeLog = new StringBuilder(); const string format = "- Update field: {0}\n"; if (!ConvertUtilities.Compare(templateLog.Name, templateLogModel.Name)) { changeLog.AppendFormat(format, "Name"); templateLog.Name = templateLogModel.Name; } if (!ConvertUtilities.Compare(templateLog.Content, templateLogModel.Content)) { changeLog.AppendFormat(format, "Content"); templateLog.Content = templateLogModel.Content; } if (!string.IsNullOrEmpty(changeLog.ToString())) { changeLog.Insert(0, string.Format("** Update Template **\n")); } return changeLog.ToString(); }
/// <summary> /// Save current page to audit /// </summary> /// <param name="model"></param> /// <returns></returns> public ResponseModel SaveTemplateLog(TemplateLogManageModel model) { var template = _templateRepository.GetById(model.TemplateId); if (template != null) { /* * Map template log model to log entity * Get last updated version of template log * If there are nothing change then do not do anything * Otherwise insert log */ Mapper.CreateMap<TemplateLogManageModel, TemplateLog>(); var log = Mapper.Map<TemplateLogManageModel, TemplateLog>(model); var templateLog = GetAll().Where(a => a.TemplateId == template.Id).OrderByDescending(a => a.Id).FirstOrDefault(); log.ChangeLog = templateLog != null ? ChangeLog(templateLog, model) : string.Format("** Create Template **"); if (string.IsNullOrEmpty(log.ChangeLog)) { return new ResponseModel { Success = true }; } log.SessionId = HttpContext.Current.Session.SessionID; return Insert(log); } return new ResponseModel { Success = false, Message = _localizedResourceServices.T("AdminModule:::Templates:::Messages:::ObjectNotFounded:::Template is not founded.") }; }
/// <summary> /// Save template /// </summary> /// <param name="model"></param> /// <returns></returns> public ResponseModel SaveTemplateManageModel(TemplateManageModel model) { ResponseModel response; var template = GetById(model.Id); if (template != null) { var log = new TemplateLogManageModel(template); template.Name = model.Name; template.Content = model.Content; response = Update(template); if (response.Success) { _templateLogServices.SaveTemplateLog(log); } return response.SetMessage(response.Success ? _localizedResourceServices.T("AdminModule:::Templates:::Messages:::UpdateSuccessfully:::Update template successfully.") : _localizedResourceServices.T("AdminModule:::Templates:::Messages:::UpdateFailure:::Update template failed. Please try again later.")); } Mapper.CreateMap<TemplateManageModel, Template>(); template = Mapper.Map<TemplateManageModel, Template>(model); response = Insert(template); return response.SetMessage(response.Success ? _localizedResourceServices.T("AdminModule:::Templates:::Messages:::CreateSuccessfully:::Create template successfully.") : _localizedResourceServices.T("AdminModule:::Templates:::Messages:::CreateFailure:::Create template failed. Please try again later.")); }