예제 #1
0
        /// <summary>
        /// Адрес Строения строкой.
        /// </summary>
        // *** Start programmer edit section *** (Stroenie.StroenieStrokoi CustomAttributes)
        private string ПолучитьСтроениеСтрокой(Stroenie stroenie)
        {
            Territoriia тер = stroenie.Raion;
            Ulitca      ул  = stroenie.Ulitca;

            if (!stroenie.CheckLoadedProperty("PochtIndeks") || !stroenie.CheckLoadedProperty("Raion") ||
                !stroenie.CheckLoadedProperty("Ulitca") || !stroenie.CheckLoadedProperty("Nomer") ||
                !stroenie.CheckLoadedProperty("DopStroenie") || !ул.CheckLoadedProperty("Naimenovanie") ||
                !ул.CheckLoadedProperty("VidObekta") || !тер.CheckLoadedProperty("Naimenovanie"))
            {
                DataServiceProvider.DataService.LoadObject(Stroenie.Views.StroenieE, stroenie);
            }

            List <string> strings = new List <string>();

            strings.Add(stroenie.PochtIndeks);

            тер = stroenie.Raion;
            string terr = String.IsNullOrEmpty(тер.VidObekta) ? "" : тер.VidObekta + ". ";

            terr = String.IsNullOrEmpty(тер.Naimenovanie) ? "" : terr + тер.Naimenovanie;
            strings.Add(terr);

            if (stroenie.Ulitca != null)
            {
                ул = stroenie.Ulitca;
                string ulitca = String.IsNullOrEmpty(ул.VidObekta) ? "" : ул.VidObekta + ". ";
                ulitca = String.IsNullOrEmpty(ул.Naimenovanie) ? "" : ulitca + ул.Naimenovanie;
                strings.Add(ulitca);
            }

            strings.Add(stroenie.Nomer.ToString());
            strings.Add(stroenie.DopStroenie);
            strings.RemoveAll(x => String.IsNullOrEmpty(x));

            return(String.Join(", ", strings.ToArray()));
        }
예제 #2
0
        /// <summary>
        /// Получить адрес строкой.
        /// </summary>
        // *** Start programmer edit section *** (Prozhivanie.AdresStrokoi CustomAttributes)
        private string ПолучитьАдресСтрокой(Prozhivanie адрес)
        {
            if (адрес == null || адрес.GetStatus() == ObjectStatus.Created)
            {
                return("");
            }
            string адр = "";

            if (!адрес.CheckLoadedProperty("Territoriia") || !адрес.CheckLoadedProperty("Ulitca") ||
                !адрес.CheckLoadedProperty("PochtIndeks") || !адрес.CheckLoadedProperty("NomerDoma") ||
                !адрес.CheckLoadedProperty("NomerStroeniia") || !адрес.CheckLoadedProperty("Kvartira"))
            {
                DataServiceProvider.DataService.LoadObject(адрес);
            }
            Territoriia тер = адрес.Territoriia;

            if (!тер.CheckLoadedProperty("Ierarhiia") || !тер.CheckLoadedProperty("GorRaion") || !тер.CheckLoadedProperty("VidObekta") ||
                !тер.CheckLoadedProperty("Naimenovanie"))
            {
                DataServiceProvider.DataService.LoadObject(тер);
            }

            System.Collections.ArrayList arl = new System.Collections.ArrayList();
            while (тер.Ierarhiia != null)
            {
                if (тер.GorRaion != tLogicheskii.Da)
                {
                    arl.Add(тер);
                }
                тер = тер.Ierarhiia;
                if (!тер.CheckLoadedProperty("Ierarhiia") || !тер.CheckLoadedProperty("GorRaion") || !тер.CheckLoadedProperty("VidObekta") ||
                    !тер.CheckLoadedProperty("Naimenovanie"))
                {
                    DataServiceProvider.DataService.LoadObject(тер);
                }
            }
            arl.Add(тер);
            Array ar = arl.ToArray();

            for (int i = ar.Length - 1; i >= 0; i--)
            {
                тер = (Territoriia)ar.GetValue(i);
                if (ar.Length == 1)
                {
                    адр = тер.Naimenovanie + (тер.VidObekta == null ? "" : " " + тер.VidObekta.ToLower()) + "., " + адрес.PochtIndeks;
                }
                else
                {
                    if (i == 0)
                    {
                        адр = (адр == "" ? "" : адр + ", ") + адрес.PochtIndeks + ", " + (тер.VidObekta == null ? "" : тер.VidObekta.ToLower() + ". ") + тер.Naimenovanie;
                    }
                    else
                    if (тер.Naimenovanie == "Россия")
                    {
                        адр = "";
                    }
                    else
                    {
                        адр = (адр == "" ? "" : адр + ", ") + тер.Naimenovanie + (тер.VidObekta == null ? "" : " " + тер.VidObekta.ToLower());
                    }
                }
            }
            if (адрес.Ulitca != null)
            {
                Ulitca ул = адрес.Ulitca;
                if (!ул.CheckLoadedProperty("VidObekta") || !ул.CheckLoadedProperty("Naimenovanie"))
                {
                    DataServiceProvider.DataService.LoadObject(ул);
                }
                var           видУлицы = ул.VidObekta.ToLower();
                List <string> видыУлицНеСтавитьТочку = new List <string> {
                    "пр-кт", "проезд", "переулок", "городок", "заезд", "проулок", "тракт"
                };
                видУлицы = (видыУлицНеСтавитьТочку.IndexOf(видУлицы) < 0 ? видУлицы + ". " : видУлицы + " ");
                адр      = адр + ", " + (ул.VidObekta == null ? "" : видУлицы) + ул.Naimenovanie;
            }
            адр = адр + (адрес.NomerDoma == 0 ? "" : ", д. " + адрес.NomerDoma.ToString());
            адр = адр + (адрес.NomerStroeniia == null ? "" : "/" + адрес.NomerStroeniia);
            адр = адр + (адрес.Kvartira == null ? "" : ", кв. " + адрес.Kvartira);
            return(адр);
        }