public async Task <IActionResult> PutEcomonMonitoringPoint(int id, EcomonMonitoringPoint ecomonMonitoringPoint)
        {
            if (id != ecomonMonitoringPoint.Id)
            {
                return(BadRequest());
            }

            _context.Entry(ecomonMonitoringPoint).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!EcomonMonitoringPointExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        // GET: EcomonMonitoringPoints/Delete/5
        public async Task <IActionResult> Delete(int?id,
                                                 string SortOrder,
                                                 int?NumberFilter,
                                                 int?PageSize,
                                                 int?PageNumber)
        {
            ViewBag.SortOrder    = SortOrder;
            ViewBag.PageSize     = PageSize;
            ViewBag.PageNumber   = PageNumber;
            ViewBag.NumberFilter = NumberFilter;
            if (id == null)
            {
                return(NotFound());
            }

            EcomonMonitoringPoint ecomonMonitoringPoint = null;
            HttpResponseMessage   response = await _HttpApiClient.GetAsync($"api/EcomonMonitoringPoints/{id.ToString()}");

            if (response.IsSuccessStatusCode)
            {
                ecomonMonitoringPoint = await response.Content.ReadAsAsync <EcomonMonitoringPoint>();
            }
            if (ecomonMonitoringPoint == null)
            {
                return(NotFound());
            }

            return(View(ecomonMonitoringPoint));
        }
        // GET: EcomonMonitoringPoints/Details/5
        public async Task <IActionResult> Details(int?id,
                                                  string SortOrder,
                                                  int?NumberFilter,
                                                  int?PageSize,
                                                  int?PageNumber)
        {
            ViewBag.SortOrder    = SortOrder;
            ViewBag.PageSize     = PageSize;
            ViewBag.PageNumber   = PageNumber;
            ViewBag.NumberFilter = NumberFilter;
            if (id == null)
            {
                return(NotFound());
            }

            EcomonMonitoringPoint ecomonMonitoringPoint = null;
            HttpResponseMessage   response = await _HttpApiClient.GetAsync($"api/EcomonMonitoringPoints/{id.ToString()}");

            if (response.IsSuccessStatusCode)
            {
                ecomonMonitoringPoint = await response.Content.ReadAsAsync <EcomonMonitoringPoint>();
            }
            if (ecomonMonitoringPoint == null)
            {
                return(NotFound());
            }

            List <MeasuredParameter> measuredParameters = new List <MeasuredParameter>();
            string urlMeasuredParameters   = "api/MeasuredParameters",
                   routeMeasuredParameters = "";
            HttpResponseMessage responseMeasuredParameters = await _HttpApiClient.GetAsync(urlMeasuredParameters + routeMeasuredParameters);

            if (responseMeasuredParameters.IsSuccessStatusCode)
            {
                measuredParameters = await responseMeasuredParameters.Content.ReadAsAsync <List <MeasuredParameter> >();
            }

            ViewBag.MeasuredParameters = new SelectList(measuredParameters.Where(m => m.EcomonCode != null).OrderBy(m => m.Name), "Id", "Name");
            ViewBag.DateFrom           = (DateTime.Now).ToString("yyyy-MM-dd");
            ViewBag.TimeFrom           = (DateTime.Today).ToString("HH:mm:ss");
            ViewBag.DateTo             = (DateTime.Now).ToString("yyyy-MM-dd");
            ViewBag.TimeTo             = (DateTime.Now).ToString("HH:mm:ss");
            return(View(ecomonMonitoringPoint));
        }
        public async Task <ActionResult <EcomonMonitoringPoint> > PostEcomonMonitoringPoint(EcomonMonitoringPoint ecomonMonitoringPoint)
        {
            _context.EcomonMonitoringPoint.Add(ecomonMonitoringPoint);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetEcomonMonitoringPoint", new { id = ecomonMonitoringPoint.Id }, ecomonMonitoringPoint));
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,Number,NorthLatitude,EastLongitude")] EcomonMonitoringPoint ecomonMonitoringPoint,
                                               string SortOrder,
                                               int?NumberFilter,
                                               int?PageSize,
                                               int?PageNumber)
        {
            ViewBag.SortOrder    = SortOrder;
            ViewBag.PageSize     = PageSize;
            ViewBag.PageNumber   = PageNumber;
            ViewBag.NumberFilter = NumberFilter;
            if (id != ecomonMonitoringPoint.Id)
            {
                return(NotFound());
            }
            if (ModelState.IsValid)
            {
                int      logNumber        = ecomonMonitoringPoint.Number;
                decimal  logNorthLatitude = ecomonMonitoringPoint.NorthLatitude;
                decimal  logEastLongitude = ecomonMonitoringPoint.EastLongitude;
                DateTime logDateTimeStart = DateTime.Now;

                string url   = "api/Logs/EditNote",
                       route = "";

                route += string.IsNullOrEmpty(route) ? "?" : "&";
                route += $"Number={logNumber.ToString()}";

                route += string.IsNullOrEmpty(route) ? "?" : "&";
                route += $"NorthLatitude={logNorthLatitude.ToString()}".Replace(',', '.');

                route += string.IsNullOrEmpty(route) ? "?" : "&";
                route += $"EastLongitude={logEastLongitude.ToString()}".Replace(',', '.');

                route += string.IsNullOrEmpty(route) ? "?" : "&";
                route += $"DateTimeStart={logDateTimeStart.ToString()}";

                HttpResponseMessage responseLog = await _HttpApiClient.PostAsync(url + route, null);

                HttpResponseMessage response = await _HttpApiClient.PutAsJsonAsync(
                    $"api/EcomonMonitoringPoints/{ecomonMonitoringPoint.Id}", ecomonMonitoringPoint);

                string OutputViewText = await response.Content.ReadAsStringAsync();

                OutputViewText = OutputViewText.Replace("<br>", Environment.NewLine);
                try
                {
                    response.EnsureSuccessStatusCode();
                }
                catch
                {
                    dynamic errors = JsonConvert.DeserializeObject <dynamic>(OutputViewText);
                    foreach (Newtonsoft.Json.Linq.JProperty property in errors.Children())
                    {
                        ModelState.AddModelError(property.Name, property.Value[0].ToString());
                    }
                    return(View(ecomonMonitoringPoint));
                }

                ecomonMonitoringPoint = await response.Content.ReadAsAsync <EcomonMonitoringPoint>();

                return(RedirectToAction(nameof(Index),
                                        new
                {
                    SortOrder = ViewBag.SortOrder,
                    PageSize = ViewBag.PageSize,
                    PageNumber = ViewBag.PageNumber,
                    NumberFilter = ViewBag.NumberFilter
                }));
            }
            return(View(ecomonMonitoringPoint));
        }