/// <summary> /// По заполненной модели строим строку адреса. /// </summary> /// <param name="model"></param> /// <returns></returns> protected string GetAddressStr(AddressModel model) { string AddressStr = ""; if (!string.IsNullOrEmpty(model.PostIndex)) AddressStr = model.PostIndex + ", "; if (!string.IsNullOrEmpty(model.RegionCode)) { AddressStr += model.Regions.Where(x => x.Code == model.RegionCode).Single().Name; } if (!string.IsNullOrEmpty(model.AreaCode)) { AddressStr += ", " + model.Areas.Where(x => x.Code == model.AreaCode).Single().Name; } if (!string.IsNullOrEmpty(model.CityCode)) { AddressStr += ", " + model.Cityes.Where(x => x.Code == model.CityCode).Single().Name; } if (!string.IsNullOrEmpty(model.SettlementCode)) { AddressStr += ", " + model.Settlements.Where(x => x.Code == model.SettlementCode).Single().Name; } if (!string.IsNullOrEmpty(model.StreetCode)) { AddressStr += ", " + model.Streets.Where(x => x.Code == model.StreetCode).Single().Name; } if (!string.IsNullOrEmpty(model.HouseNumber)) { AddressStr += (AddressStr == "" ? "" : ", ") + model.HouseTypes.Where(x => x.Id == model.HouseType).Single().Name; AddressStr += (AddressStr == "" ? "" : " №") + model.HouseNumber; } if (!string.IsNullOrEmpty(model.BuildNumber)) { AddressStr += (AddressStr == "" ? "" : ", ") + model.BuildTypes.Where(x => x.Id == model.BuildType).Single().Name; AddressStr += (AddressStr == "" ? "" : " ") + model.BuildNumber; } if (!string.IsNullOrEmpty(model.FlatNumber)) { AddressStr += (AddressStr == "" ? "" : ", ") + model.FlatTypes.Where(x => x.Id == model.FlatType).Single().Name; AddressStr += (AddressStr == "" ? "" : " ") + model.FlatNumber; } return AddressStr; }
/// <summary> /// Загружаем модель для составления Российских адресов. /// </summary> /// <param name="model">Модель формы</param> /// <returns></returns> public AddressModel GetAddress(AddressModel model) { ////AddressModel model = new AddressModel(); //if (model.Id == 0) //загрузка без иденификатора //{ // model.Regions = KladrDao.GetKladr(1, null, null, null, null); // model.Areas = KladrDao.GetKladr(2, null, null, null, null); // model.Cityes = KladrDao.GetKladr(3, null, null, null, null); // model.Settlements = KladrDao.GetKladr(4, null, null, null, null); // model.Streets = KladrDao.GetKladr(5, null, null, null, null); // model.HouseTypes = GetAddressDictionary(1); // model.BuildTypes = GetAddressDictionary(2); // model.FlatTypes = GetAddressDictionary(3); //} //else //{ //} //тут по Id записи достаем строку с адресом и строим форму model.Regions = KladrDao.GetKladr(1, null, null, null, null); //model.RegionCode = "770000000000000"; model.Areas = KladrDao.GetKladr(2, !string.IsNullOrEmpty(model.RegionCode) ? model.Regions.Where(x => x.Code == model.RegionCode).Single().RegionCode : null, null, null, null); //model.AreaCode = string.Empty; ; //string a2 = !string.IsNullOrEmpty(model.AreaCode) ? model.Areas.Where(x => x.Code == model.AreaCode).Single().AreaCode : null; model.Cityes = KladrDao.GetKladr(3, !string.IsNullOrEmpty(model.RegionCode) ? model.Regions.Where(x => x.Code == model.RegionCode).Single().RegionCode : null, !string.IsNullOrEmpty(model.AreaCode) ? model.Areas.Where(x => x.Code == model.AreaCode).Single().AreaCode : null, null, null); //model.CityCode = "770000020000000"; //string a1 = !string.IsNullOrEmpty(model.RegionCode) ? model.Regions.Where(x => x.Code == model.RegionCode).Single().RegionCode : ""; //string a2 = !string.IsNullOrEmpty(model.AreaCode) ? model.Areas.Where(x => x.Code == model.AreaCode).Single().AreaCode : null; //string a3 = !string.IsNullOrEmpty(model.CityCode) ? model.Cityes.Where(x => x.Code == model.CityCode).Single().CityCode : null; model.Settlements = KladrDao.GetKladr(4, !string.IsNullOrEmpty(model.RegionCode) ? model.Regions.Where(x => x.Code == model.RegionCode).Single().RegionCode : null, !string.IsNullOrEmpty(model.AreaCode) ? model.Areas.Where(x => x.Code == model.AreaCode).Single().AreaCode : null, !string.IsNullOrEmpty(model.CityCode) ? model.Cityes.Where(x => x.Code == model.CityCode).Single().CityCode : null, null); //model.SettlementCode = string.Empty; model.Streets = KladrDao.GetKladr(5, !string.IsNullOrEmpty(model.RegionCode) ? model.Regions.Where(x => x.Code == model.RegionCode).Single().RegionCode : null, !string.IsNullOrEmpty(model.AreaCode) ? model.Areas.Where(x => x.Code == model.AreaCode).Single().AreaCode : null, !string.IsNullOrEmpty(model.CityCode) ? model.Cityes.Where(x => x.Code == model.CityCode).Single().CityCode : null, !string.IsNullOrEmpty(model.SettlementCode) ? model.Settlements.Where(x => x.Code == model.SettlementCode).Single().SettlementCode : null); //model.StreetCode = "770000020004549"; model.HouseTypes = GetAddressDictionary(1); //model.HouseType = 1; //model.HouseNumber = string.Empty; model.BuildTypes = GetAddressDictionary(2); //model.BuildType = 1; //model.BuildNumber = "1133"; model.FlatTypes = GetAddressDictionary(3); //model.FlatType = 1; //model.FlatNumber = "7"; //model.PostIndex = "124460"; model.Address = GetAddressStr(model); return model; }
public ActionResult Address(int? Id, string PostIndex, string RegionCode, string AreaCode, string CityCode, string SettlementCode, string StreetCode, int HouseType, string HouseNumber, int BuildType, string BuildNumber, int FlatType, string FlatNumber) { AddressModel model = new AddressModel(); model.Id = Id; model.PostIndex = PostIndex == "" ? string.Empty : PostIndex; model.RegionCode = RegionCode == "" ? string.Empty : RegionCode; model.AreaCode = AreaCode == null ? string.Empty : AreaCode; model.CityCode = CityCode == "" ? string.Empty : CityCode; model.SettlementCode = SettlementCode == "" ? string.Empty : SettlementCode; model.StreetCode = StreetCode == "" ? string.Empty : StreetCode; model.HouseType = HouseType; model.HouseNumber = HouseNumber == "" ? string.Empty : HouseNumber; model.BuildType = BuildType; model.BuildNumber = BuildNumber == "" ? string.Empty : BuildNumber; model.FlatType = FlatType; model.FlatNumber = FlatNumber == "" ? string.Empty : FlatNumber; model = StaffListBl.GetAddress(model); return PartialView(model); }