GetLevelsRiversByDateController.cs 2.36 KB
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using Newtonsoft.Json.Linq;
using ControlPanel.Models;
using System.Runtime.Serialization;
using ControlPanel.LogicLayers;


namespace ControlPanel.Controllers
{
    public class GetLevelsRiversByDateController : ApiController
    {

        public JObject Post(JObject data)
        {

            List<LevelRiver> lstLevelsRivers = new List<LevelRiver>();
            List<Route> lstRoute = new List<Route>();

            try
            {

                var date = data["date"];
                var RegKey = data["Regkey"];


                // Получаем маршруты для данного СЗС
                lstRoute = LogicRouts.instance.GetRoutsByRegKey(RegKey.ToString());

                DateTime datetime = Convert.ToDateTime(date.ToString());

                lstLevelsRivers = LogicLevelsRivers.instance.GetlevelsRiversByDate(lstRoute, datetime);

            }
            catch (Exception)
            {


            }



            List<LevelRiverForSzs> lstLevelForSzs = new List<LevelRiverForSzs>();

            foreach (LevelRiver levelriver in lstLevelsRivers)
            {
                Agk objagk = LogicAgk.instance.GetById(levelriver.RefMessageAgk.id);
                lstLevelForSzs.Add(new LevelRiverForSzs
                {
                    id = levelriver.id,
                    id_agk = objagk.number,
                    datetimedevice = levelriver.datetimedevice,
                    datetimeveracity = levelriver.datetimeveracity,
                    datetimeserver = levelriver.datetimeserver,
                    latitude = levelriver.latitude,
                    longitude = levelriver.longitude,
                    coordveracity = levelriver.coordveracity,
                    installplace = levelriver.installplace,
                    levelbsv = levelriver.levelbsv,
                    levelpointsuspen = levelriver.levelpointsuspen,
                    levelzeropost = levelriver.levelzeropost,
                    causeevent = levelriver.causeevent,
                    isconfirm = true

                });
            }



            JObject result = JObject.FromObject(new
            {
                levelsrivers = lstLevelForSzs
            });



            return result;
        }

      
       
    }
}