/// <summary> /// Save company by name /// </summary> /// <param name="name"></param> /// <returns></returns> public string SaveCompany(string name) { // Insert company if not available if (!string.IsNullOrWhiteSpace(name)) { var company = GetByName(name); if (company == null) { var companyManageModel = new CompanyManageModel { Name = name, RecordOrder = GetAll().Any() ? GetAll().Max(c => c.RecordOrder) + 10 : 10 }; var response = SaveCompany(companyManageModel); if (response.Success) { return(name); } } else { // Make sure company name is exactly the same with database (lower, upper characters) name = company.Name; } } return(name); }
public ActionResult PopupEdit(CompanyManageModel model, SubmitType submit) { if (ModelState.IsValid) { var response = _companyService.SaveCompany(model); SetResponseMessage(response); if (response.Success) { switch (submit) { case SubmitType.PopupSave: return(View("CloseFancyBox", new CloseFancyBoxViewModel { IsReload = false, ReturnUrl = string.Empty })); case SubmitType.SaveAndContinueEdit: return(RedirectToAction("PopupEdit", new { id = model.Id })); } } } SetupPopupAction(); return(View(model)); }
/// <summary> /// Update value for property of model /// </summary> /// <param name="model"></param> /// <returns></returns> public ResponseModel UpdateCompanyData(XEditableModel model) { var company = GetById(model.Pk); if (company != null) { var property = ReflectionUtilities.GetAllPropertiesOfType(typeof(CompanyManageModel)) .FirstOrDefault(p => p.Name.Equals(model.Name, StringComparison.CurrentCultureIgnoreCase)); if (property != null) { object value = model.Value.ToType(property, WorkContext.CurrentTimezone); #region Validate var manageModel = new CompanyManageModel(company); manageModel.SetProperty(model.Name, value); var validationResults = manageModel.ValidateModel(); if (validationResults.Any()) { return(new ResponseModel { Success = false, Message = validationResults.BuildValidationMessages() }); } #endregion company.SetProperty(model.Name, value); var response = Update(company); return(response.SetMessage(response.Success ? T("Company_Message_UpdateCompanyInfoSuccessfully") : T("Company_Message_UpdateCompanyInfoFailure"))); } return(new ResponseModel { Success = false, Message = T("Company_Message_PropertyNotFound") }); } return(new ResponseModel { Success = false, Message = T("Company_Message_ObjectNotFound") }); }
public ActionResult Create(CompanyManageModel model, SubmitType submit) { if (ModelState.IsValid) { var response = _companyService.SaveCompany(model); SetResponseMessage(response); if (response.Success) { var id = (int)response.Data; switch (submit) { case SubmitType.Save: return(RedirectToAction("Index")); default: return(RedirectToAction("Edit", new { id })); } } } return(View(model)); }
/// <summary> /// Save Company /// </summary> /// <param name="model"></param> /// <returns></returns> public ResponseModel SaveCompany(CompanyManageModel model) { ResponseModel response; var company = GetById(model.Id); if (company != null) { company.Name = model.Name; company.CompanyTypeId = model.CompanyTypeId; company.RecordOrder = model.RecordOrder; response = Update(company); return(response.SetMessage(response.Success ? T("Company_Message_UpdateSuccessfully") : T("Company_Message_UpdateFailure"))); } Mapper.CreateMap <CompanyManageModel, Company>(); company = Mapper.Map <CompanyManageModel, Company>(model); response = Insert(company); return(response.SetMessage(response.Success ? T("Company_Message_CreateSuccessfully") : T("Company_Message_CreateFailure"))); }
public ActionResult Edit(CompanyManageModel model, string returnUrl, SubmitType submit) { if (ModelState.IsValid) { var response = _companyService.SaveCompany(model); SetResponseMessage(response); if (response.Success) { switch (submit) { case SubmitType.Save: if (!string.IsNullOrEmpty(returnUrl)) { return(Redirect(returnUrl)); } return(RedirectToAction("Index")); default: return(RedirectToAction("Edit", new { id = model.Id, returnUrl })); } } } return(View(model)); }