Ejemplo n.º 1
0
        protected void lnkSave_Click(object sender, EventArgs e)
        {
            Company company;
            if (CompanyId > 0)
            {
                company = new Company(CompanyId);
            }
            else
            {
                company = new Company();
            }

            company.CompanyName = CompanyInfo1.CompanyName;
            company.ABN = CompanyInfo1.ABN;
            company.ACN = CompanyInfo1.ACN;
            company.Address = new Address
                                  {
                                      Street = OfficeAddress.Street,
                                      Street2 = OfficeAddress.Street2,
                                      Suburb = OfficeAddress.Suburb,
                                      State = OfficeAddress.State,
                                      Postcode = OfficeAddress.Postcode
                                  };
            company.PostalAddress = new Address
                                        {
                                            Street = PostalAddress.Street,
                                            Street2 = PostalAddress.Street2,
                                            Suburb = PostalAddress.Suburb,
                                            State = PostalAddress.State,
                                            Postcode = PostalAddress.Postcode
                                        };

            var request = new SaveCompanyRequest
                            {
                                Company = company,
                                User = Users.Current
                            };

            var response = CompanyService.SaveCompany(request);
            if (response.IsSuccessful)
            {
                CompanyId = company.Id.Value;
                UserMessage.SetSuccess("Company Saved");
            }
            else
            {
                UserMessage.SetFailure(response.Message);
            }
        }
Ejemplo n.º 2
0
        public SaveCompanyResponse SaveCompany(SaveCompanyRequest request)
        {
            var response = new SaveCompanyResponse();

            #region Validation

            if (request.User == null || request.User is AgentUser || request.User is ContactUser)
            {
                response.IsSuccessful = false;
                response.Message = Constants.Messages.NO_PERMISSIONS;
                return response;
            }
            System.Threading.Thread.CurrentPrincipal = request.User.GetUserPrincipal();

            if (string.IsNullOrEmpty(request.Company.CompanyName))
            {
                response.Message = "Company Name cannot be blank";
                return response;
            }

            #endregion

            try
            {
                using (var ts = new TransactionScope())
                {
                    if (request.Company.Id == null)
                    {
                        _companyRepository.InsertCompany(request.Company);
                        if (request.Company.Id != null)
                        {
                            request.Company.LogActivity("New Company added");
                            response.IsSuccessful = true;
                            ts.Complete();
                        }
                        else
                        {
                            response.Message = Constants.Messages.INTERNAL_ERROR;
                        }
                    }
                    else
                    {
                        if (_companyRepository.UpdateCompany(request.Company))
                        {
                            request.Company.LogActivity("Updated Company with new information");
                            response.IsSuccessful = true;
                            ts.Complete();
                        }
                        else
                        {
                            response.Message = Constants.Messages.INTERNAL_ERROR;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                response.Message = Constants.Messages.INTERNAL_ERROR;
                response.IsSuccessful = false;
            }

            return response;
        }