//İlan Ekle public Task <IlanIlanlarResponse> CreateAsync(EmlakIlanRequest request) { return(base.ExecuteWithExceptionHandledOperation(async() => { #region İlan Genel Özellikler IlanRequest ilan = new IlanRequest(); ilan.Baslik = request.Baslik; ilan.Aciklama = request.Aciklama; // var roundedResult = Math.Round(Convert.ToDouble(request.Fiyat.Insert(1,"."), 2); ilan.Fiyat = Convert.ToDecimal(request.Fiyat); //.Replace(".",",") ilan.MetreKare = request.MetreKare; ilan.UserName = request.UserName; ilan.Private = request.Private; ilan.CepTelefonu = request.CepTelefonu; ilan.Sahibi = request.Sahibi; ilan.IletisimTelefonu = request.IletisimTelefonu; #region Satılık Devren if (request.SatilikId == 2 || request.SatilikId == 4) { ilan.TakasliID = request.TakasliID; ilan.TakasTuru = request.TakasTuru; } #endregion #region Satılık if (request.SatilikId == 2) { ilan.Ada = request.Ada; ilan.Pafta = request.Pafta; ilan.Parsel = request.Parsel; } #endregion var ilanlarIlan = Mapper.Map <IlanIlanlar>(ilan); #region Ilan Root kategori //Satılık Kiralı Devren int tur = request.SatilikId; var turu = await _emlakKategoriler.GetAsync(tur); //Konut İşyeri Arsa int tip = request.IlanTuru; var tipi = await _emlakKategoriler.GetAsync(tip); ilanlarIlan.EmlakKategoriler.Add(turu); ilanlarIlan.EmlakKategoriler.Add(tipi); #endregion #region Semt Mahalle Ilçe int ilce = request.id; var getIlce = await _ilanLocation.GetAsync(ilce); ilanlarIlan.EmlakLocation.Add(getIlce); int semt = request.SemtId; var getSemt = await _ilanLocation.GetAsync(semt); ilanlarIlan.EmlakLocation.Add(getSemt); int mahalle = request.MahalleId; var getMahalle = await _ilanLocation.GetAsync(mahalle); ilanlarIlan.EmlakLocation.Add(getMahalle); #endregion _ilanIlanlar.Add(ilanlarIlan); await _ilanIlanlar.SaveChangeAsync(); #endregion #region Ilan Kimden IlanKimdenRequest ilanKimden = new IlanKimdenRequest(); ilanKimden.KimdemID = request.IlanKimden; ilanKimden.EmlakIlanID = ilanlarIlan.Id; var ilanKmd = Mapper.Map <IlanKimden>(ilanKimden); _ilanKimden.Add(ilanKmd); await _ilanKimden.SaveChangeAsync(); #endregion #region Konut Özellikler if (tip == 5 || tip == 11) { IlanKonutTipiOzelliklerRequest konutTipi = new IlanKonutTipiOzelliklerRequest(); konutTipi.EmlakIlanID = ilanlarIlan.Id; konutTipi.KonutTipiOzellikler = request.KonutTipi; var konuttipi = Mapper.Map <IlanKonutTipiOzellikler>(konutTipi); _emlakTip.Add(konuttipi); await _emlakTip.SaveChangeAsync(); IlanlarEmlakGenelRequest genel = new IlanlarEmlakGenelRequest(); genel.EmlakIlanID = ilanlarIlan.Id; genel.IsitmaID = request.Isitma; genel.BulunduguKatID = request.BulunduguKat; genel.OdaSayisiID = request.OdaSayisi; var emlakGenel = Mapper.Map <IlanlarEmlakGenel>(genel); _genel.Add(emlakGenel); await _genel.SaveChangeAsync(); } #endregion #region İşyeri Özellikler if (tip == 6 || tip == 12) { IlanKullanimAmaciRequest ilanKullanim = new IlanKullanimAmaciRequest(); ilanKullanim.EmlakIlanID = ilanlarIlan.Id; ilanKullanim.KullanimAmaci = request.EmlakKullanimAmaci; var ilankullanim = Mapper.Map <IlanKullanimAmaci>(ilanKullanim); _ilanKullanimAmaci.Add(ilankullanim); await _ilanKullanimAmaci.SaveChangeAsync(); IlanlarEmlakGenelRequest genel = new IlanlarEmlakGenelRequest(); genel.EmlakIlanID = ilanlarIlan.Id; genel.IsitmaID = request.Isitma; genel.BulunduguKatID = request.BulunduguKat; // genel.OdaSayisiID = request.OdaSayisi; var emlakGenel = Mapper.Map <IlanlarEmlakGenel>(genel); _genel.Add(emlakGenel); await _genel.SaveChangeAsync(); } #endregion #region İşyeri Konut Ortak Özellikler if (tip == 5 || tip == 6 || tip == 11 || tip == 12) { IlanIcOzelliklerRequest icOzellikler = new IlanIcOzelliklerRequest(); string remove = request.IcOzellikler.Replace("[", "").Replace("]", "").Trim(); string[] temp = remove.Split(','); if (temp.Any()) { foreach (var item in temp) { icOzellikler.EmlakIlanID = ilanlarIlan.Id; icOzellikler.IcOzellikler = item; var ilanicozellikler = Mapper.Map <IlanIcOzellikler>(icOzellikler); _icOzellikler.Add(ilanicozellikler); await _icOzellikler.SaveChangeAsync(); } } IlanDisOzelliklerRequest disOzellikler = new IlanDisOzelliklerRequest(); string removedis = request.DisOzellikler.Replace("[", "").Replace("]", "").Trim(); string[] tempdis = removedis.Split(','); if (tempdis.Any()) { foreach (var item in tempdis) { disOzellikler.EmlakIlanID = ilanlarIlan.Id; disOzellikler.DisOzellikler = item; var ilandisozellikler = Mapper.Map <IlanDisOzellikler>(disOzellikler); _disOzellikler.Add(ilandisozellikler); await _disOzellikler.SaveChangeAsync(); } } } #endregion #region Arsa özellikler if (tip == 7 || tip == 8 || tip == 10 || tip == 9 || tip == 13 || tip == 14 || tip == 15 || tip == 16) { IlanImarTapuDurumuRequest tapu = new IlanImarTapuDurumuRequest(); tapu.EmlakIlanID = ilanlarIlan.Id; // tapu.ImarDurumID = request.EmlakImarDurumu; tapu.TapuDurumId = request.EmlakTapuDurumu; var tapudurumu = Mapper.Map <IlanImarTapuDurumu>(tapu); _ilanImarTapuDurumu.Add(tapudurumu); await _ilanImarTapuDurumu.SaveChangeAsync(); IlanImarDurumuRequest imar = new IlanImarDurumuRequest(); imar.EmlakIlanID = ilanlarIlan.Id; // tapu.ImarDurumID = request.EmlakImarDurumu; imar.ImarDurumID = request.EmlakImarDurumu; var imardurumu = Mapper.Map <IlanImarDurumu>(imar); _ilanImarDurumu.Add(imardurumu); await _ilanImarDurumu.SaveChangeAsync(); } #endregion return Mapper.Map <IlanIlanlarResponse>(ilanlarIlan); })); }
public Task <IlanEmlakGenelResponse> CreateAsync(IlanlarEmlakGenelRequest request) { throw new NotImplementedException(); }