public ActionResult <SiteListResponseModel> GetListSite([FromBody] FilterBillboard filter) { SiteListResponseModel res = new SiteListResponseModel(); try { SiteBL bl = new SiteBL(DbContext); var data = bl.GetListSite(filter); res.data = data.Result; res.Message = "Success"; res.Response = true; res.TotalPages = data.TotalPage; res.TotalData = data.TotalData; return(Ok(res)); } catch (Exception ex) { res.Message = ex.Message; res.Response = false; return(BadRequest(res)); } }
public IActionResult SearchBar(string location, string type, string city) { int Draw = 10; int totalResultsCount = 0; int filteredResultsCount = 0; List <SiteListOutputModel> sites = new List <SiteListOutputModel>(); SiteListResponseModel resutl = new SiteListResponseModel(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "Site/"); FilterBillboard filter = new FilterBillboard(); filter.showWithDisabledSite = true; filter.isFilterDataTable = true; filter.PageSize = 10; filter.PageNumber = 1; filter.TypeBillboard = type == null ? "" : type; filter.Latitude = ""; filter.Longitude = ""; filter.Province = ""; filter.City = city == null ? "" : city; filter.Alamat = location == null ? "" : location; //filter.UserID = ""; filter.FilterDataTableValue = ""; var responseTask = client.PostAsJsonAsync <FilterBillboard>("GetListSite", filter); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); resutl = Newtonsoft.Json.JsonConvert.DeserializeObject <SiteListResponseModel>(content.Result); sites = resutl.data; foreach (SiteListOutputModel data in sites) { data.Status = data.Status == "Active" ? "Tersedia" : "Tidak Tersedia"; } totalResultsCount = resutl.TotalData; filteredResultsCount = resutl.TotalData; } else //web api sent error response { ModelState.AddModelError(string.Empty, "Terjadi kesalahan server. Hubungi admin."); } } return(View("SearchMedia", resutl)); }
public IActionResult SearchMedia(int page, string location, string type, string city, string provinsi, DateTime?filterfrom, DateTime?filterto, int?panjang, int?lebar, double?minprice, double?maxprice, sort?sorting) { int Draw = 10; int totalResultsCount = 0; int filteredResultsCount = 0; List <SiteListOutputModel> sites = new List <SiteListOutputModel>(); SiteListResponseModel resutl = new SiteListResponseModel(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "Site/"); FilterBillboard filter = new FilterBillboard(); filter.showWithDisabledSite = false; filter.isFilterDataTable = false; filter.PageSize = 10; filter.PageNumber = page; filter.TypeBillboard = type == null ? "" : type == "null" ? "" : type; filter.Latitude = ""; filter.Longitude = ""; filter.Province = provinsi == null ? "" : provinsi == "null" ? "" : provinsi; filter.City = city == null ? "" : city == "null" ? "" : city; filter.Alamat = location == null ? "" : location == "null" ? "" : location == "undefined"?"" : location; filter.FilterDataTableValue = ""; filter.startDate = filterfrom; filter.endDate = filterto; filter.panjang = panjang == null ? 0 : panjang; filter.lebar = lebar == null ? 0 : lebar; filter.MinimumPrice = minprice == null ? 0 : minprice; filter.MaximumPrice = maxprice == null ? 0 : maxprice; filter.sorting = sorting == null ? sort.AtoZ : sorting; var responseTask = client.PostAsJsonAsync <FilterBillboard>("GetListSite", filter); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); resutl = Newtonsoft.Json.JsonConvert.DeserializeObject <SiteListResponseModel>(content.Result); sites = resutl.data; //cuman buat testing //var searchDataTest = sites.Where(x => x.NoBillboard == "6537JIJW").ToList() ; foreach (SiteListOutputModel data in sites) { data.Status = data.Status == "Active" ? "Tersedia" : "Tidak Tersedia"; } totalResultsCount = resutl.TotalData; filteredResultsCount = resutl.TotalData; resutl.CurrentPage = page; resutl.type = filter.TypeBillboard; resutl.city = filter.City; resutl.location = filter.Alamat; resutl.provinsi = filter.Province; resutl.startDate = filter.startDate; resutl.endDate = filter.endDate; resutl.panjang = filter.panjang; resutl.lebar = filter.lebar; resutl.MinimumPrice = filter.MinimumPrice; resutl.MaximumPrice = filter.MaximumPrice; resutl.sorting = filter.sorting; } else //web api sent error response { ModelState.AddModelError(string.Empty, "Terjadi kesalahan server. Hubungi admin."); } } if (HttpContext.Session.GetString(SessionKeyID) != null && HttpContext.Session.GetString(SessionKeyID) != "") { resutl.isLogin = true; } else { resutl.isLogin = false; } return(View(resutl)); }
public IActionResult Index(string tipeBillboard, string provinsi, string kota, double minharga = 0, double maxharga = 0) { if (HttpContext.Session.GetString(SessionKeyID) != null && HttpContext.Session.GetString(SessionKeyID) != "") { HttpContext.Session.SetString(SessionKeyDomain, Domain); var Mapsdata = new ForMaps(); var cities = new List <City>(); var BillBoards = new List <BillboardDetail>(); //IEnumerable<SiteListOutputModel> sites = null; List <SiteListOutputModel> sites = new List <SiteListOutputModel>(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "Site/"); FilterBillboard filter = new FilterBillboard(); if (HttpContext.Session.GetString(SessionKeyRole) == null || HttpContext.Session.GetString(SessionKeyRole) == "" || HttpContext.Session.GetString(SessionKeyRole) == "ADM") { filter.UserID = Guid.Empty; } else { filter.UserID = Guid.Parse(HttpContext.Session.GetString(SessionKeyID)); } filter.TypeBillboard = tipeBillboard != null ? tipeBillboard : ""; filter.Province = provinsi != null && provinsi.Length > 0 ? provinsi.Split("|")[1] : ""; filter.City = kota != null ? kota : ""; filter.Latitude = ""; filter.Longitude = ""; filter.MinimumPrice = minharga; filter.MaximumPrice = maxharga; filter.showWithDisabledSite = false; filter.FilterDataTableValue = ""; filter.PageNumber = 1; filter.PageSize = 250; var responseTask = client.PostAsJsonAsync <FilterBillboard>("GetListSite", filter); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); SiteListResponseModel resutl = Newtonsoft.Json.JsonConvert.DeserializeObject <SiteListResponseModel>(content.Result); sites = resutl.data; foreach (var p in sites) { var city = new City(); var BillBoard = new BillboardDetail(); if (p.NoBillboard != null && p.Latitude != null && p.Longitude != null && p.NoBillboard != "" && p.Latitude != "" && p.Longitude != "") { city.Title = p.NoBillboard; city.Lat = double.Parse(p.Latitude, System.Globalization.CultureInfo.InvariantCulture); city.Lng = double.Parse(p.Longitude, System.Globalization.CultureInfo.InvariantCulture); city.Kota = p.Kota; city.Prov = p.Provinsi; city.HorV = p.HorV; city.Tipe = p.Tipe; city.Rate = p.RateScoreAverage; city.Price = p.HargaPerhari.ToString("N"); city.Image = "../image/NoImage.jpg"; BillBoard.SiteID = p.SiteID.ToString(); BillBoard.NoBillBoard = p.NoBillboard; BillBoard.Kota = p.Kota; BillBoard.Cab = p.Cabang; BillBoard.HorV = p.HorV; BillBoard.Tipe = p.Tipe; BillBoard.Lat = double.Parse(p.Latitude, System.Globalization.CultureInfo.InvariantCulture); BillBoard.Lng = double.Parse(p.Longitude, System.Globalization.CultureInfo.InvariantCulture); BillBoard.Pjg = 0; BillBoard.Lbr = 0; BillBoard.Hawl = 0; BillBoard.Hahr = 0; BillBoard.Img = "-"; BillBoard.RateScoreAvg = p.RateScoreAverage; BillBoard.Alamat = p.Alamat; if (p.ImageHeader != null && p.ImageHeader.Contains("/Upload")) { BillBoard.Img = p.ImageHeader; city.Image = p.ImageHeader; } if (p.SiteItem != null && p.SiteItem.Count > 0) { BillBoard.SiteItemID = p.SiteItem[0].SiteItemID.ToString(); BillBoard.Pjg = p.SiteItem[0].Panjang; BillBoard.Lbr = p.SiteItem[0].Lebar; if (p.SiteItem[0].Price != null && p.SiteItem[0].Price.Count > 0) { BillBoard.Hawl = p.SiteItem[0].Price[0].HargaAwal; BillBoard.Hahr = p.SiteItem[0].Price[0].HargaAkhir; } //if (p.SiteItem[0].Image != null && p.SiteItem[0].Image.Count > 0) //{ // BillBoard.Img = p.SiteItem[0].Image[0].Image; // city.Image = p.SiteItem[0].Image[0].Image; //} } } cities.Add(city); BillBoards.Add(BillBoard); } Mapsdata.Cities = cities; Mapsdata.BillBoard = BillBoards; #region Old //filter.PageSize = resutl.TotalPages; //var reresponse = client.PostAsJsonAsync<FilterBillboard>("GetListSite", filter); //reresponse.Wait(); //var reresult = reresponse.Result; //if (reresult.IsSuccessStatusCode) //{ // var recontent = reresult.Content.ReadAsStringAsync(); // SiteListResponseModel fnlresult = Newtonsoft.Json.JsonConvert.DeserializeObject<SiteListResponseModel>(recontent.Result); // sites = fnlresult.data; // foreach (var p in sites) // { // var city = new City(); // var BillBoard = new BillboardDetail(); // if (p.NoBillboard != null && p.Latitude != null && p.Longitude != null && p.NoBillboard != "" && p.Latitude != "" && p.Longitude != "") // { // city.Title = p.NoBillboard; // city.Lat = double.Parse(p.Latitude, System.Globalization.CultureInfo.InvariantCulture); // city.Lng = double.Parse(p.Longitude, System.Globalization.CultureInfo.InvariantCulture); // BillBoard.SiteID = p.SiteID.ToString(); // BillBoard.NoBillBoard = p.NoBillboard; // BillBoard.Kota = p.Kota; // BillBoard.Cab = p.Cabang; // BillBoard.HorV = p.HorV; // BillBoard.Tipe = p.Tipe; // BillBoard.Lat = double.Parse(p.Latitude, System.Globalization.CultureInfo.InvariantCulture); // BillBoard.Lng = double.Parse(p.Longitude, System.Globalization.CultureInfo.InvariantCulture); // BillBoard.Pjg = 0; // BillBoard.Lbr = 0; // BillBoard.Hawl = 0; // BillBoard.Hahr = 0; // BillBoard.Img = "-"; // BillBoard.RateScoreAvg = p.RateScoreAverage; // BillBoard.Alamat = p.Alamat; // if (p.SiteItem != null && p.SiteItem.Count > 0) // { // BillBoard.SiteItemID = p.SiteItem[0].SiteItemID.ToString(); // BillBoard.Pjg = p.SiteItem[0].Panjang; // BillBoard.Lbr = p.SiteItem[0].Lebar; // if (p.SiteItem[0].Price != null && p.SiteItem[0].Price.Count > 0) // { // BillBoard.Hawl = p.SiteItem[0].Price[0].HargaAwal; // BillBoard.Hahr = p.SiteItem[0].Price[0].HargaAkhir; // } // if (p.SiteItem[0].Image != null && p.SiteItem[0].Image.Count > 0) // { // BillBoard.Img = p.SiteItem[0].Image[0].Image; // } // } // } // cities.Add(city); // BillBoards.Add(BillBoard); // } // Mapsdata.Cities = cities; // Mapsdata.BillBoard = BillBoards; //} #endregion } else //web api sent error response { //cities.Add(new City() { Title = "Paris", Lat = 48.855901, Lng = 2.349272 }); //cities.Add(new City() { Title = "Berlin", Lat = 52.520413, Lng = 13.402794 }); //cities.Add(new City() { Title = "Rome", Lat = 41.907074, Lng = 12.498474 }); cities.Add(new City() { Title = "Paris", Lat = 48.855901, Lng = 2.349272, Kota = "", Prov = "", HorV = "", Tipe = "", Rate = 0, Price = "0", Image = "~/image/NoImage.jpg" }); cities.Add(new City() { Title = "Berlin", Lat = 52.520413, Lng = 13.402794, Kota = "", Prov = "", HorV = "", Tipe = "", Rate = 0, Price = "0", Image = "~/image/NoImage.jpg" }); cities.Add(new City() { Title = "Rome", Lat = 41.907074, Lng = 12.498474, Kota = "", Prov = "", HorV = "", Tipe = "", Rate = 0, Price = "0", Image = "~/image/NoImage.jpg" }); Mapsdata.Cities = cities; Mapsdata.BillBoard = BillBoards; //log response status here.. //sites = Enumerable.Empty<SiteListOutputModel>(); ModelState.AddModelError(string.Empty, "Server error. Please contact administrator."); } } return(View(Mapsdata)); } else { if (HttpContext.Session.GetString(Loginfrom) == "ADM/SPV") { return(RedirectToAction("AdminLogon", "Login")); } else if (HttpContext.Session.GetString(Loginfrom) == "MDO") { return(RedirectToAction("OwnerLogon", "Login")); } else { return(RedirectToAction("BuyerLogon", "Login")); } //return RedirectToAction("Logon", "Login"); } }
public async Task <ActionResult> InfinateScrollAsync(int BlockNumber, int Pages, string tipeBillboard = "", string provinsi = "", string kota = "", double minharga = 0, double maxharga = 0) { int BlockSize = 250; int totalData = 0; var Mapsdata = new ForMaps(); var cities = new List <City>(); var BillBoards = new List <BillboardDetail>(); //IEnumerable<SiteListOutputModel> sites = null; List <SiteListOutputModel> sites = new List <SiteListOutputModel>(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "Site/"); FilterBillboard filter = new FilterBillboard(); if (HttpContext.Session.GetString(SessionKeyRole) == null || HttpContext.Session.GetString(SessionKeyRole) == "" || HttpContext.Session.GetString(SessionKeyRole) == "ADM") { filter.UserID = Guid.Empty; } else { filter.UserID = Guid.Parse(HttpContext.Session.GetString(SessionKeyID)); } filter.TypeBillboard = tipeBillboard != null ? tipeBillboard : ""; filter.Province = provinsi != null && provinsi.Split("|").Length > 1 ? provinsi.Split("|")[1] : ""; filter.City = kota != null ? kota : ""; filter.Latitude = ""; filter.Longitude = ""; filter.MinimumPrice = minharga; filter.MaximumPrice = maxharga; filter.showWithDisabledSite = false; filter.FilterDataTableValue = ""; filter.PageNumber = BlockNumber; filter.PageSize = 100; var responseTask = client.PostAsJsonAsync <FilterBillboard>("GetListSite", filter); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); SiteListResponseModel resutl = Newtonsoft.Json.JsonConvert.DeserializeObject <SiteListResponseModel>(content.Result); totalData = resutl.TotalData; sites = resutl.data; foreach (var p in sites) { var city = new City(); var BillBoard = new BillboardDetail(); if (p.NoBillboard != null && p.Latitude != null && p.Longitude != null && p.NoBillboard != "" && p.Latitude != "" && p.Longitude != "") { city.Title = p.NoBillboard; city.Lat = double.Parse(p.Latitude, System.Globalization.CultureInfo.InvariantCulture); city.Lng = double.Parse(p.Longitude, System.Globalization.CultureInfo.InvariantCulture); city.Kota = p.Kota; city.Prov = p.Provinsi; city.HorV = p.HorV; city.Tipe = p.Tipe; city.Rate = p.RateScoreAverage; city.Price = p.HargaPerhari.ToString("N"); city.Image = "../image/NoImage.jpg"; BillBoard.SiteID = p.SiteID.ToString(); BillBoard.NoBillBoard = p.NoBillboard; BillBoard.Kota = p.Kota; BillBoard.Cab = p.Cabang; BillBoard.HorV = p.HorV; BillBoard.Tipe = p.Tipe; BillBoard.Lat = double.Parse(p.Latitude, System.Globalization.CultureInfo.InvariantCulture); BillBoard.Lng = double.Parse(p.Longitude, System.Globalization.CultureInfo.InvariantCulture); BillBoard.Pjg = 0; BillBoard.Lbr = 0; BillBoard.Hawl = 0; BillBoard.Hahr = 0; BillBoard.Img = "-"; BillBoard.RateScoreAvg = p.RateScoreAverage; BillBoard.Alamat = p.Alamat; if (p.ImageHeader != null && p.ImageHeader.Contains("/Upload")) { BillBoard.Img = p.ImageHeader; city.Image = p.ImageHeader; } if (p.SiteItem != null && p.SiteItem.Count > 0) { BillBoard.SiteItemID = p.SiteItem[0].SiteItemID.ToString(); BillBoard.Pjg = p.SiteItem[0].Panjang; BillBoard.Lbr = p.SiteItem[0].Lebar; if (p.SiteItem[0].Price != null && p.SiteItem[0].Price.Count > 0) { BillBoard.Hawl = p.SiteItem[0].Price[0].HargaAwal; BillBoard.Hahr = p.SiteItem[0].Price[0].HargaAkhir; } //if (p.SiteItem[0].Image != null && p.SiteItem[0].Image.Count > 0) //{ // BillBoard.Img = p.SiteItem[0].Image[0].Image; //} } } cities.Add(city); BillBoards.Add(BillBoard); } Mapsdata.Cities = cities; Mapsdata.BillBoard = BillBoards; } } JsonModel jsonModel = new JsonModel(); jsonModel.NoMoreData = (totalData / BlockSize) == BlockNumber; if (Pages == 1) { jsonModel.HTMLString = await RenderPartialViewToString("PartialList", Mapsdata); } else if (Pages == 2) { jsonModel.HTMLString = await RenderPartialViewToString("PartialCompare", Mapsdata); } return(Json(jsonModel)); }
public IActionResult ToDetail(string NoBillboard) { if (HttpContext.Session.GetString(SessionKeyID) != null && HttpContext.Session.GetString(SessionKeyID) != "") { HttpContext.Session.SetString(SessionKeyDomain, Domain); List <SiteListOutputModel> sites = new List <SiteListOutputModel>(); using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "Site/"); FilterBillboard filter = new FilterBillboard(); filter.UserID = Guid.Parse(HttpContext.Session.GetString(SessionKeyID)); filter.Latitude = ""; filter.Longitude = ""; filter.MinimumPrice = 0; filter.MaximumPrice = 0; filter.showWithDisabledSite = false; filter.isFilterDataTable = true; filter.FilterDataTableValue = NoBillboard; filter.PageNumber = 1; filter.PageSize = 250; var responseTask = client.PostAsJsonAsync <FilterBillboard>("GetListSite", filter); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var content = result.Content.ReadAsStringAsync(); SiteListResponseModel resutl = Newtonsoft.Json.JsonConvert.DeserializeObject <SiteListResponseModel>(content.Result); sites = resutl.data; return(RedirectToAction("ViewDetail", "Site", new { @id = sites.Select(x => x.SiteID).FirstOrDefault() })); } else //web api sent error response { ModelState.AddModelError(string.Empty, "Server error. Please contact administrator."); if (HttpContext.Session.GetString(Loginfrom) == "ADM/SPV") { return(RedirectToAction("AdminLogon", "Login")); } else if (HttpContext.Session.GetString(Loginfrom) == "MDO") { return(RedirectToAction("OwnerLogon", "Login")); } else { return(RedirectToAction("BuyerLogon", "Login")); } //return RedirectToAction("Logon", "Login"); } } } else { if (HttpContext.Session.GetString(Loginfrom) == "ADM/SPV") { return(RedirectToAction("AdminLogon", "Login")); } else if (HttpContext.Session.GetString(Loginfrom) == "MDO") { return(RedirectToAction("OwnerLogon", "Login")); } else { return(RedirectToAction("BuyerLogon", "Login")); } //return RedirectToAction("Logon", "Login"); } }