public virtual Prozhivanie CheckProzhivanie(Prozhivanie UpdatedObject) { // *** Start programmer edit section *** (CatalogsBS.CheckProzhivanie Iis.Eais.Catalogs.Prozhivanie method implementation) if (UpdatedObject.Territoriia == null) { throw new Exception("Территория не указана"); } if (UpdatedObject == null) { throw new Exception("UpdatedObject равен null"); } var lcs = LoadingCustomizationStruct.GetSimpleStruct(typeof(Prozhivanie), Prozhivanie.Views.ProzhivanieE); var funcs = new List <Function>(); funcs.Add(FunctionBuilder.BuildEquals <Prozhivanie>(p => p.Territoriia, UpdatedObject.Territoriia)); funcs.Add(UpdatedObject.Ulitca == null ? FunctionBuilder.BuildIsNull <Prozhivanie>(p => p.Ulitca) : FunctionBuilder.BuildEquals <Prozhivanie>(p => p.Ulitca, UpdatedObject.Ulitca)); funcs.Add(UpdatedObject.Kvartira == null ? FunctionBuilder.BuildIsNull <Prozhivanie>(p => p.Kvartira) : FunctionBuilder.BuildEquals <Prozhivanie>(p => p.Kvartira, UpdatedObject.Kvartira)); funcs.Add(UpdatedObject.NomerStroeniia == null ? FunctionBuilder.BuildIsNull <Prozhivanie>(p => p.NomerStroeniia) : FunctionBuilder.BuildEquals <Prozhivanie>(p => p.NomerStroeniia, UpdatedObject.NomerStroeniia)); funcs.Add(FunctionBuilder.BuildEquals <Prozhivanie>(x => x.NomerDoma, UpdatedObject.NomerDoma)); lcs.LimitFunction = FunctionBuilder.BuildAnd(funcs); lcs.ReturnTop = 1; var dobj = DataService.LoadObjects(lcs).Cast <Prozhivanie>(); return(dobj.FirstOrDefault()); // *** End programmer edit section *** (CatalogsBS.CheckProzhivanie Iis.Eais.Catalogs.Prozhivanie method implementation) }
/// <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(адр); }