示例#1
0
        private void LoadTerritoryFields(long territoryId)
        {
            try
            {
                Core.Geo.Domain.Territory territory;
                try
                {
                    territory = _territoryRepository.GetTerritory(territoryId);
                }
                catch (ObjectNotFoundInPersistenceException <Core.Geo.Domain.Territory> )
                {
                    Response.RedirectUser(REDIRECT_URL);
                    return;
                }
                IZipCodeParser zipCodeParser = new ZipCodeParser();
                TerritoryNameTextBox.Text        = territory.Name;
                TerritoryDescriptionTextBox.Text = territory.Description;
                TerritoryZipCodesTextBox.Text    = zipCodeParser.ParseZipCodesIntoString(territory.ZipCodes);
                TerritoryTypeDDL.SelectedValue   = ((byte)territory.TerritoryType).ToString();
                switch (territory.TerritoryType)
                {
                case TerritoryType.SalesRep:
                    break;

                default:
                    Response.RedirectUser(REDIRECT_URL);
                    break;
                }
            }
            catch (ObjectNotFoundInPersistenceException <Core.Geo.Domain.Territory> )
            {
                Response.RedirectUser("Edit.aspx");
            }
        }
示例#2
0
        private List <ZipCode> GetZipCodes()
        {
            IZipCodeParser zipCodeParser  = new ZipCodeParser();
            List <string>  zipCodeStrings = zipCodeParser.ParseStringIntoZipCodes(TerritoryZipCodesTextBox.Text).Distinct().ToList();

            return(_zipCodeRepository.GetAllExistingZipCodes(zipCodeStrings).Distinct().ToList());
        }
示例#3
0
        protected void SubmitButtonClick(object sender, EventArgs e)
        {
            IZipCodeParser       zipCodeParser     = new ZipCodeParser();
            IEnumerable <string> selectedZipCodes  = zipCodeParser.ParseStringIntoZipCodes(TerritoryZipCodesTextBox.Text).Distinct();
            IEnumerable <string> availableZipCodes = zipCodeParser.ParseStringIntoZipCodes(AvailableZipCodesTextBox.Text).Distinct();
            IEnumerable <string> invalidZipCodes   = selectedZipCodes.Where(zc => !availableZipCodes.Contains(zc));

            if (invalidZipCodes.IsEmpty())
            {
                IEnumerable <ZipCode> zipCodesToSave  = _zipCodeRepository.GetAllExistingZipCodes(selectedZipCodes.ToList());
                bool shouldStayOnPageAfterPersistence = ((Button)sender).CommandArgument == "RefreshPage";
                SaveTerritory(GetTerritory(), zipCodesToSave, shouldStayOnPageAfterPersistence);
            }
            else
            {
                string invalidZipCodesString = String.Join(", ", invalidZipCodes.ToArray());
                string errorMessage          = "The following zip code(s) need to be removed from the selection as they are out of this territory or are already in use:<br />"
                                               + invalidZipCodesString;
                MessageControl1.ShowErrorMessage(errorMessage);
            }
        }
示例#4
0
        private void LoadTerritoryFields(long territoryId)
        {
            try
            {
                Core.Geo.Domain.Territory territory;
                try
                {
                    territory = _territoryRepository.GetTerritory(territoryId);
                }
                catch (ObjectNotFoundInPersistenceException <Core.Geo.Domain.Territory> )
                {
                    Response.RedirectUser("~/App/Franchisor/Dashboard.aspx");
                    return;
                }
                IZipCodeParser zipCodeParser = new ZipCodeParser();
                TerritoryNameTextBox.Text        = territory.Name;
                TerritoryDescriptionTextBox.Text = territory.Description;
                TerritoryZipCodesTextBox.Text    = zipCodeParser.ParseZipCodesIntoString(territory.ZipCodes);
                TerritoryTypeDDL.SelectedValue   = ((byte)territory.TerritoryType).ToString();
                switch (territory.TerritoryType)
                {
                case TerritoryType.Franchisee:
                    TerritoryFranchiseeOwnerDDL.SelectedValue = ((FranchiseeTerritory)territory).FranchiseeOwnerId.ToString();
                    break;

                case TerritoryType.HospitalPartner:
                    foreach (ListItem item in TerritoryHospitalPartnerOwnersCBL.Items)
                    {
                        if (((HospitalPartnerTerritory)territory).HospitalPartnerOwnerIds.Contains(long.Parse(item.Value)))
                        {
                            item.Selected = true;
                        }
                    }
                    break;

                case TerritoryType.ReadingPhysician:
                    break;

                case TerritoryType.Advertiser:
                    break;

                case TerritoryType.Pod:
                    foreach (ListItem item in TerritoryPackageCBL.Items)
                    {
                        if (((PodTerritory)territory).PackageIds.Contains(long.Parse(item.Value)))
                        {
                            item.Selected = true;
                        }
                    }
                    break;

                default:
                    Response.RedirectUser("~/App/Franchisor/Dashboard.aspx");
                    break;
                }
            }
            catch (ObjectNotFoundInPersistenceException <Core.Geo.Domain.Territory> )
            {
                Response.RedirectUser("Edit.aspx");
            }
        }