Example #1
0
        public ErrorModel AddCustomerCompanyAssociation(CustomerCompanyInputModel inputModel)
        {
            TalentCompany talentCompany = new TalentCompany();

            Mapper.CreateMap <CustomerCompanyInputModel, DECompany>();
            talentCompany.Company = Mapper.Map <DECompany>(inputModel);
            talentCompany.Company.CompanyOperationMode = GlobalConstants.CRUDOperationMode.Create;

            talentCompany.Settings = Environment.Settings.DESettings;
            ErrorObj err = talentCompany.ProcessCompanyContacts();

            return(Data.PopulateErrorObject(err, talentCompany.ResultDataSet, talentCompany.Settings, null));
        }
Example #2
0
        /// <summary>
        /// Gets company from EM002SS if company is not in session
        /// </summary>
        /// <param name="inputModel"></param>
        /// <returns></returns>
        public CustomerCompanyViewModel ReadCompanyOperations(CustomerCompanyInputModel inputModel)
        {
            ErrorModel err = new ErrorModel();
            CustomerCompanyViewModel      viewModel        = new CustomerCompanyViewModel(true, inputModel.ControlCode);
            KeyValuePair <string, string> companyInSession = new KeyValuePair <string, string>();

            // get company from session
            if (Data.Session.Get("Company") != null)
            {
                companyInSession = (KeyValuePair <string, string>)Data.Session.Get("Company");
            }
            if (string.IsNullOrEmpty(inputModel.CompanyNumber))
            {
                //error if no company number from input model
                err.HasError     = true;
                err.ErrorMessage = "Missing company number.";
                viewModel.Error  = err;
            }
            else if (inputModel.CompanyNumber == companyInSession.Key)
            {
                //is company id in session same as input company id
                viewModel.Company = new CompanyModel();
                viewModel.Company.CRMCompanyName = companyInSession.Value;
                viewModel.Company.CompanyNumber  = companyInSession.Key;
            }
            else
            {
                // get company if company is not found in session
                TalentCompany talentCompany = new TalentCompany();
                Mapper.CreateMap <CustomerCompanyInputModel, DECompany>();
                talentCompany.Company             = Mapper.Map <DECompany>(inputModel);
                talentCompany.Settings            = Environment.Settings.DESettings;
                talentCompany.Company.OwningAgent = talentCompany.Settings.AgentEntity.AgentUsername;

                ErrorObj errorOb = talentCompany.CompanyOperations();

                viewModel.Error = Data.PopulateErrorObject(errorOb, talentCompany.ResultDataSet, talentCompany.Settings, null);

                if (!viewModel.Error.HasError)
                {
                    viewModel.Company = Data.PopulateObjectListFromTable <CompanyModel>(talentCompany.ResultDataSet.Tables["CompanySearchResults"]).FirstOrDefault();
                    if (!string.IsNullOrEmpty(talentCompany.ResultDataSet.Tables["CompanyDetails"].Rows[0][0].ToString()))
                    {
                        viewModel.Company.CompanyNumber = talentCompany.ResultDataSet.Tables["CompanyDetails"].Rows[0][0].ToString();
                    }
                    Data.Session.Add("Company", new KeyValuePair <string, string>(viewModel.Company.CompanyNumber, viewModel.Company.CRMCompanyName));
                }
            }

            return(viewModel);
        }
 public ErrorModel DeleteContact([FromUri] CustomerCompanyInputModel input)
 {
     return(new CompanyModelBuilders().RemoveCustomerCompanyAssociation(input));
 }
 public ErrorModel AddContact([FromBody] CustomerCompanyInputModel input)
 {
     return(new CompanyModelBuilders().AddCustomerCompanyAssociation(input));
 }