Example #1
0
        /// <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));
        }
Example #3
0
        /// <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));
        }
Example #5
0
        /// <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));
        }