Exemplo n.º 1
0
        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));
            }
        }
Exemplo n.º 2
0
        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));
        }
Exemplo n.º 3
0
        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));
        }
Exemplo n.º 4
0
        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");
            }
        }
Exemplo n.º 5
0
        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));
        }
Exemplo n.º 6
0
        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");
            }
        }