对外接口修改
This commit is contained in:
		
							parent
							
								
									81f68f3a1a
								
							
						
					
					
						commit
						339592fd9c
					
				
							
								
								
									
										100
									
								
								langguanApi.xml
								
								
								
								
							
							
						
						
									
										100
									
								
								langguanApi.xml
								
								
								
								
							| 
						 | 
					@ -34,6 +34,14 @@
 | 
				
			||||||
            <returns></returns>
 | 
					            <returns></returns>
 | 
				
			||||||
            <exception cref="T:System.Exception"></exception>
 | 
					            <exception cref="T:System.Exception"></exception>
 | 
				
			||||||
        </member>
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:langguanApi.Common.Proxy.HttpProxy.PostData``1(System.Object,System.String)">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            post数据
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <param name="requestUri"></param>
 | 
				
			||||||
 | 
					            <param name="data"></param>
 | 
				
			||||||
 | 
					            <returns></returns>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
        <member name="F:langguanApi.Common.Redis.RedisHelper._subscriber">
 | 
					        <member name="F:langguanApi.Common.Redis.RedisHelper._subscriber">
 | 
				
			||||||
            <summary>
 | 
					            <summary>
 | 
				
			||||||
            sub
 | 
					            sub
 | 
				
			||||||
| 
						 | 
					@ -201,6 +209,34 @@
 | 
				
			||||||
            <param name="deviceType"></param>
 | 
					            <param name="deviceType"></param>
 | 
				
			||||||
            <returns></returns>
 | 
					            <returns></returns>
 | 
				
			||||||
        </member>
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Controllers.EnvGovController">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            环境治理页面接口
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="F:langguanApi.Controllers.EnvGovController._envGovService">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            环境治理服务
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:langguanApi.Controllers.EnvGovController.#ctor(langguanApi.Service.EnvGovService)">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            构造函数
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <param name="envGovService"></param>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:langguanApi.Controllers.EnvGovController.GetEnvGovData(System.String)">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            获取设备状态数据
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <returns></returns>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:langguanApi.Controllers.EnvGovController.IndexView">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            环境治理首页
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <returns></returns>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
        <member name="M:langguanApi.Controllers.HJ212Controller.Get(System.String)">
 | 
					        <member name="M:langguanApi.Controllers.HJ212Controller.Get(System.String)">
 | 
				
			||||||
            <summary>
 | 
					            <summary>
 | 
				
			||||||
            获取指定设备的历史数据
 | 
					            获取指定设备的历史数据
 | 
				
			||||||
| 
						 | 
					@ -794,6 +830,46 @@
 | 
				
			||||||
            <param name="Text">原始数据</param>
 | 
					            <param name="Text">原始数据</param>
 | 
				
			||||||
            <returns>是否通过</returns>
 | 
					            <returns>是否通过</returns>
 | 
				
			||||||
        </member>
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Model.Dto.RespModel`1">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            RespModel
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="P:langguanApi.Model.Dto.RespModel`1.code">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            状态码
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Model.Dto.Rate">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            在线
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Model.Dto.alarm">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            报警信息
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Model.Dto.Devce">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            设备列表
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="P:langguanApi.Model.Dto.Devce.DeviceType">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            设备类型 1雾炮 2雾桩 3干雾
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Model.Dto.Devlogs">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            日志
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Model.Dto.DeviceStatu">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            设备状态
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
        <member name="T:langguanApi.Model.Dto.SystemConfigurationDto.UserDto">
 | 
					        <member name="T:langguanApi.Model.Dto.SystemConfigurationDto.UserDto">
 | 
				
			||||||
            <summary>
 | 
					            <summary>
 | 
				
			||||||
            用于用户管理的Dto
 | 
					            用于用户管理的Dto
 | 
				
			||||||
| 
						 | 
					@ -1886,6 +1962,24 @@
 | 
				
			||||||
            <param name="input"></param>
 | 
					            <param name="input"></param>
 | 
				
			||||||
            <returns></returns>
 | 
					            <returns></returns>
 | 
				
			||||||
        </member>
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="T:langguanApi.Service.EnvGovService">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            环境治理页面Service
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:langguanApi.Service.EnvGovService.IndexView">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            首页数据
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <returns></returns>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:langguanApi.Service.EnvGovService.DeviceStatu(System.String)">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            获取设备状态
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <param name="deviceId"></param>
 | 
				
			||||||
 | 
					            <returns></returns>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
        <member name="M:langguanApi.Service.Hj212Service.GetIndexData(System.Int32)">
 | 
					        <member name="M:langguanApi.Service.Hj212Service.GetIndexData(System.Int32)">
 | 
				
			||||||
            <summary>
 | 
					            <summary>
 | 
				
			||||||
            首页数据
 | 
					            首页数据
 | 
				
			||||||
| 
						 | 
					@ -2079,6 +2173,12 @@
 | 
				
			||||||
            </summary>
 | 
					            </summary>
 | 
				
			||||||
            <returns></returns>
 | 
					            <returns></returns>
 | 
				
			||||||
        </member>
 | 
					        </member>
 | 
				
			||||||
 | 
					        <member name="M:langguanApi.Service.MenuService.GetMenuTreeList">
 | 
				
			||||||
 | 
					            <summary>
 | 
				
			||||||
 | 
					            获取菜单树
 | 
				
			||||||
 | 
					            </summary>
 | 
				
			||||||
 | 
					            <returns></returns>
 | 
				
			||||||
 | 
					        </member>
 | 
				
			||||||
        <member name="M:langguanApi.Service.MenuService.GetChildList(System.String)">
 | 
					        <member name="M:langguanApi.Service.MenuService.GetChildList(System.String)">
 | 
				
			||||||
            <summary>
 | 
					            <summary>
 | 
				
			||||||
            递归获取子菜单列表
 | 
					            递归获取子菜单列表
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,5 +44,33 @@ namespace langguanApi.Common.Proxy
 | 
				
			||||||
                return default(T);
 | 
					                return default(T);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// post数据
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <param name="requestUri"></param>
 | 
				
			||||||
 | 
					        /// <param name="data"></param>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        public async Task<T> PostData<T>(object data, string requestUri)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            StringContent content = null;
 | 
				
			||||||
 | 
					            var client = _httpClientFactory.CreateClient();
 | 
				
			||||||
 | 
					            client.BaseAddress = new Uri(requestUri);
 | 
				
			||||||
 | 
					            if (data != null)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                string json = Newtonsoft.Json.JsonConvert.SerializeObject(data);
 | 
				
			||||||
 | 
					                content = new StringContent(json, System.Text.Encoding.UTF8, "application/json");
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            var response = await client.PostAsync(requestUri, content);
 | 
				
			||||||
 | 
					            if (response.IsSuccessStatusCode)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                var result = await response.Content.ReadAsStringAsync();
 | 
				
			||||||
 | 
					                return Newtonsoft.Json.JsonConvert.DeserializeObject<T>(result);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            else
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                Console.WriteLine($"请求失败,状态码:{response.StatusCode},请求地址 {requestUri}");
 | 
				
			||||||
 | 
					                return default(T);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,4 +1,6 @@
 | 
				
			||||||
using langguanApi.Model;
 | 
					using langguanApi.Common.Proxy;
 | 
				
			||||||
 | 
					using langguanApi.Model;
 | 
				
			||||||
 | 
					using langguanApi.Model.Dto;
 | 
				
			||||||
using langguanApi.Service;
 | 
					using langguanApi.Service;
 | 
				
			||||||
using Microsoft.AspNetCore.Http;
 | 
					using Microsoft.AspNetCore.Http;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
| 
						 | 
					@ -10,7 +12,8 @@ namespace langguanApi.Controllers
 | 
				
			||||||
    public class AlertController : ControllerBase
 | 
					    public class AlertController : ControllerBase
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        private readonly AlertService _alertService;
 | 
					        private readonly AlertService _alertService;
 | 
				
			||||||
        public AlertController(AlertService alertService)
 | 
					
 | 
				
			||||||
 | 
					        public AlertController(AlertService alertService, HttpProxy httpProxy, IConfiguration configuration)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            _alertService = alertService;
 | 
					            _alertService = alertService;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
| 
						 | 
					@ -25,6 +28,7 @@ namespace langguanApi.Controllers
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            start = start.HasValue ? start.Value.Date : DateTime.Now.AddDays(-7);
 | 
					            start = start.HasValue ? start.Value.Date : DateTime.Now.AddDays(-7);
 | 
				
			||||||
            end = end.HasValue ? end.Value.Date.AddDays(1) : DateTime.Now.Date.AddDays(1);
 | 
					            end = end.HasValue ? end.Value.Date.AddDays(1) : DateTime.Now.Date.AddDays(1);
 | 
				
			||||||
 | 
					       
 | 
				
			||||||
            var alerts = await _alertService.ExportData(start, end);
 | 
					            var alerts = await _alertService.ExportData(start, end);
 | 
				
			||||||
            return File(alerts, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
 | 
					            return File(alerts, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
 | 
				
			||||||
                $"{start.Value.ToString("yyyy-MM-dd")}-{end.Value.ToString("yyyy-MM-dd")}_设备报警.xlsx");
 | 
					                $"{start.Value.ToString("yyyy-MM-dd")}-{end.Value.ToString("yyyy-MM-dd")}_设备报警.xlsx");
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,47 @@
 | 
				
			||||||
 | 
					using langguanApi.Service;
 | 
				
			||||||
 | 
					using Microsoft.AspNetCore.Http;
 | 
				
			||||||
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace langguanApi.Controllers
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 环境治理页面接口
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    [Route("api/[controller]")]
 | 
				
			||||||
 | 
					    [ApiController]
 | 
				
			||||||
 | 
					    public class EnvGovController : ControllerBase
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 环境治理服务
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        private readonly EnvGovService _envGovService;
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 构造函数
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <param name="envGovService"></param>
 | 
				
			||||||
 | 
					        public EnvGovController(EnvGovService envGovService)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            _envGovService = envGovService;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 获取设备状态数据
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        [HttpGet("DeviceStatu")]
 | 
				
			||||||
 | 
					        public async Task<IActionResult> GetEnvGovData(string deviceId)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            var data = await _envGovService.DeviceStatu(deviceId);
 | 
				
			||||||
 | 
					            return Ok(data);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 环境治理首页
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        [HttpGet("Index")]
 | 
				
			||||||
 | 
					        public async Task<IActionResult> IndexView()
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            var result = await _envGovService.IndexView();
 | 
				
			||||||
 | 
					            return Ok(result);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -24,14 +24,14 @@ namespace langguanApi.Controllers
 | 
				
			||||||
        [HttpPost("login")]
 | 
					        [HttpPost("login")]
 | 
				
			||||||
        public async Task<IActionResult> Login([FromBody] UserLogin user)
 | 
					        public async Task<IActionResult> Login([FromBody] UserLogin user)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var result = _userService.login(user.Username, user.Password);
 | 
					            var result = await _userService.login(user.Username, user.Password);
 | 
				
			||||||
            if (result != null)
 | 
					            if (result != null)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                return Ok(result);
 | 
					                return Ok(new ApiResult() { data = result });
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            else
 | 
					            else
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                return BadRequest(result);
 | 
					                return Ok(new ApiResult() { code = -1, msg = "用户名或密码错误" });
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,78 @@
 | 
				
			||||||
 | 
					namespace langguanApi.Model.Dto
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// RespModel
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    public class RespModel<T>
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 状态码
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public int code { get; set; }
 | 
				
			||||||
 | 
					        public T data { get; set; }
 | 
				
			||||||
 | 
					        public string msg { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 在线
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    public class Rate
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public string key { get; set; }
 | 
				
			||||||
 | 
					        public string val { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    public class alarmList
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public List<alarm> List { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 报警信息
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    public class alarm
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public string DeviceName { get; set; }
 | 
				
			||||||
 | 
					        public string AlarmName { get; set; }
 | 
				
			||||||
 | 
					        public string Time { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    public class devceList
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public List<Devce> List { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 设备列表
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    public class Devce
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public string DeviceName { get; set; }
 | 
				
			||||||
 | 
					        public string DeviceID { get; set; }
 | 
				
			||||||
 | 
					        public string GroupID { get; set; }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 设备类型 1雾炮 2雾桩 3干雾
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        public int DeviceType { get; set; }
 | 
				
			||||||
 | 
					        public double Lon { get; set; }
 | 
				
			||||||
 | 
					        public double Lat { get; set; }
 | 
				
			||||||
 | 
					        public List<Devlogs> RunLog { get; set; }
 | 
				
			||||||
 | 
					        public double CurrentAngel { get; set; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 日志
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    public class Devlogs
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public string Time { get; set; }
 | 
				
			||||||
 | 
					        public string Text { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 设备状态
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    public class DeviceStatu
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public string DeviceID { get; set; }
 | 
				
			||||||
 | 
					        public string DeviceName { get; set; }
 | 
				
			||||||
 | 
					        public double ElecInfo { get; set; }
 | 
				
			||||||
 | 
					        public double WaterFlow { get; set; }
 | 
				
			||||||
 | 
					        public double Pressure { get; set; }
 | 
				
			||||||
 | 
					        public long RunTime { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -70,5 +70,11 @@ namespace langguanApi.Model.Entity
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        public string RoleName { get; set; }
 | 
					        public string RoleName { get; set; }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					    public class UserAnMenusViewModel  
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        public UserEntity UserInfo { get; set; }
 | 
				
			||||||
 | 
					        public string RoleName { get; set; }
 | 
				
			||||||
 | 
					        public List<MenuTreeDto> Menus { get; set; }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -416,6 +416,7 @@
 | 
				
			||||||
        a34040,
 | 
					        a34040,
 | 
				
			||||||
        a99010,
 | 
					        a99010,
 | 
				
			||||||
        a99049,
 | 
					        a99049,
 | 
				
			||||||
 | 
					        a99054
 | 
				
			||||||
        //a99051,
 | 
					        //a99051,
 | 
				
			||||||
        #endregion
 | 
					        #endregion
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,4 +1,5 @@
 | 
				
			||||||
using langguanApi.Extensions.AutoDI;
 | 
					using langguanApi.Common.Proxy;
 | 
				
			||||||
 | 
					using langguanApi.Extensions.AutoDI;
 | 
				
			||||||
using langguanApi.Model;
 | 
					using langguanApi.Model;
 | 
				
			||||||
using langguanApi.Model.Dto;
 | 
					using langguanApi.Model.Dto;
 | 
				
			||||||
using langguanApi.Model.Entity;
 | 
					using langguanApi.Model.Entity;
 | 
				
			||||||
| 
						 | 
					@ -11,8 +12,12 @@ namespace langguanApi.Service
 | 
				
			||||||
    [ServiceInjection(InjectionType.Transient)]
 | 
					    [ServiceInjection(InjectionType.Transient)]
 | 
				
			||||||
    public class AlertService : BaseService<Alert>
 | 
					    public class AlertService : BaseService<Alert>
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        public AlertService(IConfiguration config) : base(config, nameof(Alert))
 | 
					        private readonly HttpProxy _httpProxy;
 | 
				
			||||||
 | 
					        private readonly IConfiguration _configuration;
 | 
				
			||||||
 | 
					        public AlertService(IConfiguration config, HttpProxy httpProxy) : base(config, nameof(Alert))
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					            _httpProxy = httpProxy;
 | 
				
			||||||
 | 
					            _configuration = config;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// 新加
 | 
					        /// 新加
 | 
				
			||||||
| 
						 | 
					@ -54,13 +59,35 @@ namespace langguanApi.Service
 | 
				
			||||||
        /// <returns></returns>
 | 
					        /// <returns></returns>
 | 
				
			||||||
        public async Task<byte[]> ExportData(DateTime? start, DateTime? end)
 | 
					        public async Task<byte[]> ExportData(DateTime? start, DateTime? end)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
 | 
					 | 
				
			||||||
            Expression<Func<Alert, bool>> exp = filter => filter.CreateDateTime >= start
 | 
					            Expression<Func<Alert, bool>> exp = filter => filter.CreateDateTime >= start
 | 
				
			||||||
            && filter.CreateDateTime <= end
 | 
					            && filter.CreateDateTime <= end && filter.IsDelete == false;
 | 
				
			||||||
            && filter.IsDelete == false;
 | 
					            List<Alert> result = new List<Alert>();
 | 
				
			||||||
 | 
					            //获取接口报警数据
 | 
				
			||||||
 | 
					            Dictionary<string, string> dic = new Dictionary<string, string>() { };
 | 
				
			||||||
 | 
					            dic.Add("BeginTime", start.Value.ToString("yyyy-MM-dd HH:mm:ss"));
 | 
				
			||||||
 | 
					            dic.Add("EndTime", end.Value.ToString("yyyy-MM-dd HH:mm:ss"));
 | 
				
			||||||
 | 
					            var AlermResp = await _httpProxy.Get<RespModel<alarmList>>(dic,_configuration.GetValue<string>("Apis:AlertUrl"));
 | 
				
			||||||
 | 
					            if (AlermResp.code == 0)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                var romte = AlermResp.data.List.Select(s => new Alert
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    AlertContent = s.AlarmName,
 | 
				
			||||||
 | 
					                    deviceName = s.DeviceName,
 | 
				
			||||||
 | 
					                    CreateDateTime = DateTime.Parse(s.Time)
 | 
				
			||||||
 | 
					                }).ToList();
 | 
				
			||||||
 | 
					                if (romte.Any())
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    result.AddRange(romte);
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
            var list = (await base.GetListWithExp(exp)).OrderByDescending(s => s.CreateDateTime).ToList();
 | 
					            var list = (await base.GetListWithExp(exp)).OrderByDescending(s => s.CreateDateTime).ToList();
 | 
				
			||||||
            if (list.Any())
 | 
					            if (list.Any())
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
 | 
					                result.AddRange(list);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            if (result.Any())
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                result = result.OrderByDescending(s => s.CreateDateTime).ToList();
 | 
				
			||||||
                var mapper = new Mapper();
 | 
					                var mapper = new Mapper();
 | 
				
			||||||
                mapper.Map<Alert>("报警开始时间", s => s.CreateDateTime)
 | 
					                mapper.Map<Alert>("报警开始时间", s => s.CreateDateTime)
 | 
				
			||||||
                .Map<Alert>("设备名称", s => s.deviceName)
 | 
					                .Map<Alert>("设备名称", s => s.deviceName)
 | 
				
			||||||
| 
						 | 
					@ -68,7 +95,7 @@ namespace langguanApi.Service
 | 
				
			||||||
                .Map<Alert>("内容", s => s.AlertContent)
 | 
					                .Map<Alert>("内容", s => s.AlertContent)
 | 
				
			||||||
                 .Format<Alert>("yyyy-MM-dd HH:mm:ss", s => s.CreateDateTime);
 | 
					                 .Format<Alert>("yyyy-MM-dd HH:mm:ss", s => s.CreateDateTime);
 | 
				
			||||||
                MemoryStream stream = new MemoryStream();
 | 
					                MemoryStream stream = new MemoryStream();
 | 
				
			||||||
                mapper.Save(stream, list, sheetName: "sheet1", leaveOpen: true);
 | 
					                mapper.Save(stream, result, sheetName: "sheet1", leaveOpen: true);
 | 
				
			||||||
                return stream.ToArray();
 | 
					                return stream.ToArray();
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            return null;
 | 
					            return null;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,97 @@
 | 
				
			||||||
 | 
					using IceCoffee.Common.Templates;
 | 
				
			||||||
 | 
					using langguanApi.Common.Proxy;
 | 
				
			||||||
 | 
					using langguanApi.Extensions.AutoDI;
 | 
				
			||||||
 | 
					using langguanApi.Model;
 | 
				
			||||||
 | 
					using langguanApi.Model.Dto;
 | 
				
			||||||
 | 
					using Microsoft.AspNetCore.Mvc.ApiExplorer;
 | 
				
			||||||
 | 
					using Microsoft.OpenApi.Writers;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace langguanApi.Service
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    /// <summary>
 | 
				
			||||||
 | 
					    /// 环境治理页面Service
 | 
				
			||||||
 | 
					    /// </summary>
 | 
				
			||||||
 | 
					    [ServiceInjection(InjectionType.Transient)]
 | 
				
			||||||
 | 
					    public class EnvGovService
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        private HttpProxy _httpProxy;
 | 
				
			||||||
 | 
					        private readonly IConfiguration _configuration;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        public EnvGovService(HttpProxy httpProxy, IConfiguration configuration)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            _httpProxy = httpProxy;
 | 
				
			||||||
 | 
					            _configuration = configuration;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 首页数据
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        public async Task<ApiResult> IndexView()
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            var url = _configuration.GetValue<string>("Apis:DeviceList");
 | 
				
			||||||
 | 
					            var deviceResp = await _httpProxy.Get<RespModel<devceList>>(null, url);
 | 
				
			||||||
 | 
					            var deviceList = deviceResp.data.List.GroupBy(g => g.GroupID)
 | 
				
			||||||
 | 
					                .Select(s => new
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    group = s.Key,
 | 
				
			||||||
 | 
					                    items = new
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					                        devices = s.ToList().GroupBy(m => m.DeviceType)
 | 
				
			||||||
 | 
					                        .Select(o => new
 | 
				
			||||||
 | 
					                        {
 | 
				
			||||||
 | 
					                            devicetype = ConvertDeviceType(o.Key),
 | 
				
			||||||
 | 
					                            items = o.ToList()
 | 
				
			||||||
 | 
					                             .Select(d => new
 | 
				
			||||||
 | 
					                             {
 | 
				
			||||||
 | 
					                                 d.DeviceID,
 | 
				
			||||||
 | 
					                                 d.DeviceName,
 | 
				
			||||||
 | 
					                                 d.Lon,
 | 
				
			||||||
 | 
					                                 d.Lat,
 | 
				
			||||||
 | 
					                                 d.CurrentAngel,
 | 
				
			||||||
 | 
					                                 d.RunLog
 | 
				
			||||||
 | 
					                             })
 | 
				
			||||||
 | 
					                        })
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                });
 | 
				
			||||||
 | 
					            return new ApiResult
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                code = deviceResp.code,
 | 
				
			||||||
 | 
					                msg = deviceResp.msg,
 | 
				
			||||||
 | 
					                data = deviceList
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        private string ConvertDeviceType(int deviceType)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            switch (deviceType)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                case 1:
 | 
				
			||||||
 | 
					                    return "雾炮";
 | 
				
			||||||
 | 
					                case 2:
 | 
				
			||||||
 | 
					                    return "雾桩";
 | 
				
			||||||
 | 
					                case 3:
 | 
				
			||||||
 | 
					                    return "干雾";
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            return null;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 获取设备状态
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <param name="deviceId"></param>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        public async Task<ApiResult> DeviceStatu(string deviceId)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            var url = _configuration.GetValue<string>("Apis:DeviceStatu");
 | 
				
			||||||
 | 
					            var deviceStatuResp = await _httpProxy.Get<RespModel<List<DeviceStatu>>>(null, url);
 | 
				
			||||||
 | 
					            var result = deviceStatuResp.data.Where(s => s.DeviceID == deviceId).FirstOrDefault();
 | 
				
			||||||
 | 
					            return new ApiResult
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                //接口返回错误,暂时注释
 | 
				
			||||||
 | 
					                //  code = deviceStatuResp.code,
 | 
				
			||||||
 | 
					                code = 0,
 | 
				
			||||||
 | 
					                msg = deviceStatuResp.msg,
 | 
				
			||||||
 | 
					                data = result
 | 
				
			||||||
 | 
					            };
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -96,13 +96,14 @@ namespace langguanApi.Service
 | 
				
			||||||
            if (hj.DecodeData(rawText))
 | 
					            if (hj.DecodeData(rawText))
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                var body = JsonConvert.SerializeObject(hj.CP);
 | 
					                var body = JsonConvert.SerializeObject(hj.CP);
 | 
				
			||||||
 | 
					                Console.WriteLine("解析成功: " + body);
 | 
				
			||||||
                var entity = JsonConvert.DeserializeObject<Model.HJ212>(body);
 | 
					                var entity = JsonConvert.DeserializeObject<Model.HJ212>(body);
 | 
				
			||||||
                entity.deviceMN = hj.DATA_HEAD["MN"];
 | 
					                entity.deviceMN = hj.DATA_HEAD["MN"];
 | 
				
			||||||
                await _deviceService.Add(new DeviceAddDto
 | 
					                await _deviceService.Add(new DeviceAddDto
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
                    deviceMN = hj.DATA_HEAD["MN"],
 | 
					                    deviceMN = hj.DATA_HEAD["MN"],
 | 
				
			||||||
                    DeviceType = SetDeviceType(hj.DATA_HEAD["ST"]),
 | 
					                    DeviceType = SetDeviceType(hj.DATA_HEAD["ST"]),
 | 
				
			||||||
                    Ip= session.RemoteIPEndPoint.ToString(),
 | 
					                    Ip = session.RemoteIPEndPoint.ToString(),
 | 
				
			||||||
                });
 | 
					                });
 | 
				
			||||||
                //校验通过,开始入库
 | 
					                //校验通过,开始入库
 | 
				
			||||||
                await _hj212Service.Add(entity, session.RemoteIPEndPoint.ToString());
 | 
					                await _hj212Service.Add(entity, session.RemoteIPEndPoint.ToString());
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,6 +4,7 @@ using langguanApi.Extensions.AutoDI;
 | 
				
			||||||
using langguanApi.Model;
 | 
					using langguanApi.Model;
 | 
				
			||||||
using System.Linq.Expressions;
 | 
					using System.Linq.Expressions;
 | 
				
			||||||
using langguanApi.Common.Proxy;
 | 
					using langguanApi.Common.Proxy;
 | 
				
			||||||
 | 
					using langguanApi.Model.Dto;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace langguanApi.Service
 | 
					namespace langguanApi.Service
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					@ -66,6 +67,10 @@ namespace langguanApi.Service
 | 
				
			||||||
            var ariQuality = await _cacheManager.GetConvertVale(RedisKeylist.AriQuality, getAriQualityFunc, 60 * 120);
 | 
					            var ariQuality = await _cacheManager.GetConvertVale(RedisKeylist.AriQuality, getAriQualityFunc, 60 * 120);
 | 
				
			||||||
            Func<Task<object>> getTrendFunc = async () => await _hj212Service.GetIndexData();
 | 
					            Func<Task<object>> getTrendFunc = async () => await _hj212Service.GetIndexData();
 | 
				
			||||||
            var trend = await _cacheManager.GetConvertVale(RedisKeylist.Trend, getTrendFunc, 60 * new Random().Next(70));
 | 
					            var trend = await _cacheManager.GetConvertVale(RedisKeylist.Trend, getTrendFunc, 60 * new Random().Next(70));
 | 
				
			||||||
 | 
					            // 获取远程接口污染物排放率
 | 
				
			||||||
 | 
					            var rateResp = await _httpProxy.Get<RespModel<List<Rate>>>(null, _configuration.GetValue<string>("Apis:RateUrl"));
 | 
				
			||||||
 | 
					            var rate = rateResp.data.ToList();
 | 
				
			||||||
 | 
					            var AlermResp = await _httpProxy.Get<RespModel<alarmList>>(null, _configuration.GetValue<string>("Apis:AlertUrl"));
 | 
				
			||||||
            //  alerts += await _httpProxy.Get<string>(null, _configuration.GetValue<string>("Apis:AlertUrl"));
 | 
					            //  alerts += await _httpProxy.Get<string>(null, _configuration.GetValue<string>("Apis:AlertUrl"));
 | 
				
			||||||
            //    alerts += await _httpProxy.Get<string>(null, _configuration.GetValue<string>("Apis:RateUrl"));
 | 
					            //    alerts += await _httpProxy.Get<string>(null, _configuration.GetValue<string>("Apis:RateUrl"));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -97,10 +102,7 @@ namespace langguanApi.Service
 | 
				
			||||||
                    hotmap,
 | 
					                    hotmap,
 | 
				
			||||||
                    weather,
 | 
					                    weather,
 | 
				
			||||||
                    ariQuality,
 | 
					                    ariQuality,
 | 
				
			||||||
                    rate = new[] {
 | 
					                    rate,
 | 
				
			||||||
                        new { key = "cems", val = 0.7 } ,
 | 
					 | 
				
			||||||
                        new { key = "VOC", val = 0.6 }
 | 
					 | 
				
			||||||
                    },
 | 
					 | 
				
			||||||
                    trend,
 | 
					                    trend,
 | 
				
			||||||
                    alerts,
 | 
					                    alerts,
 | 
				
			||||||
                    cleanData,
 | 
					                    cleanData,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -48,6 +48,15 @@ namespace langguanApi.Service
 | 
				
			||||||
        /// </summary>
 | 
					        /// </summary>
 | 
				
			||||||
        /// <returns></returns>
 | 
					        /// <returns></returns>
 | 
				
			||||||
        public async Task<ApiResult> GetMenuTree()
 | 
					        public async Task<ApiResult> GetMenuTree()
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            var result = await GetMenuTreeList();
 | 
				
			||||||
 | 
					            return new ApiResult() { data = result };
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        /// <summary>
 | 
				
			||||||
 | 
					        /// 获取菜单树
 | 
				
			||||||
 | 
					        /// </summary>
 | 
				
			||||||
 | 
					        /// <returns></returns>
 | 
				
			||||||
 | 
					        public async Task<List<MenuTreeDto>> GetMenuTreeList()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            List<MenuTreeDto> dto = new List<MenuTreeDto>();
 | 
					            List<MenuTreeDto> dto = new List<MenuTreeDto>();
 | 
				
			||||||
            var MenuList = await GetChildList("0");
 | 
					            var MenuList = await GetChildList("0");
 | 
				
			||||||
| 
						 | 
					@ -63,7 +72,7 @@ namespace langguanApi.Service
 | 
				
			||||||
                    Children = await GetChildList(item.Id)
 | 
					                    Children = await GetChildList(item.Id)
 | 
				
			||||||
                });
 | 
					                });
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            return new ApiResult() { data = dto };
 | 
					            return dto;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// 递归获取子菜单列表
 | 
					        /// 递归获取子菜单列表
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -19,10 +19,15 @@ namespace langguanApi.Service
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        private ILogger<UserService> _logger;
 | 
					        private ILogger<UserService> _logger;
 | 
				
			||||||
        private RoleService _roleService;
 | 
					        private RoleService _roleService;
 | 
				
			||||||
        public UserService(IConfiguration config, ILogger<UserService> logger, RoleService roleService) : base(config, nameof(UserEntity).Replace("Entity", ""))
 | 
					        private RoleMenuServie _roleMenuServie;
 | 
				
			||||||
 | 
					        private MenuService _menuService;
 | 
				
			||||||
 | 
					        public UserService(IConfiguration config, ILogger<UserService> logger,
 | 
				
			||||||
 | 
					            RoleService roleService, RoleMenuServie roleMenuServie, MenuService menuService) : base(config, nameof(UserEntity).Replace("Entity", ""))
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            _logger = logger;
 | 
					            _logger = logger;
 | 
				
			||||||
            _roleService = roleService;
 | 
					            _roleService = roleService;
 | 
				
			||||||
 | 
					            _roleMenuServie = roleMenuServie;
 | 
				
			||||||
 | 
					            _menuService = menuService;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// 登录
 | 
					        /// 登录
 | 
				
			||||||
| 
						 | 
					@ -30,12 +35,23 @@ namespace langguanApi.Service
 | 
				
			||||||
        /// <param name="username"></param>
 | 
					        /// <param name="username"></param>
 | 
				
			||||||
        /// <param name="password"></param>
 | 
					        /// <param name="password"></param>
 | 
				
			||||||
        /// <returns></returns>
 | 
					        /// <returns></returns>
 | 
				
			||||||
        public async Task<UserEntity> login(string username, string password)
 | 
					        public async Task<UserAnMenusViewModel> login(string username, string password)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            Expression<Func<UserEntity, bool>> exp = filter =>
 | 
					            Expression<Func<UserEntity, bool>> exp = filter =>
 | 
				
			||||||
            filter.Username == username && filter.Password == StringHelper.MD5Encrypt32(password);
 | 
					            filter.Username == username && filter.Password == StringHelper.MD5Encrypt32(password);
 | 
				
			||||||
            var list = await base.GetListWithExp(exp);
 | 
					            var userEntity = (await base.GetListWithExp(exp)).FirstOrDefault();
 | 
				
			||||||
            return list.FirstOrDefault();
 | 
					            if (userEntity != null)
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                var menuIds = await _roleMenuServie.GetByRoleId(userEntity.RoleId);
 | 
				
			||||||
 | 
					                var menus = await _menuService.GetMenuTreeList();
 | 
				
			||||||
 | 
					                return new UserAnMenusViewModel()
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    UserInfo = userEntity,
 | 
				
			||||||
 | 
					                    RoleName = (await _roleService.GetAsync(userEntity.RoleId))?.RoleName,
 | 
				
			||||||
 | 
					                    Menus = menus
 | 
				
			||||||
 | 
					                };
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            return null;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// 根据用户名获取用户信息
 | 
					        /// 根据用户名获取用户信息
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -18,10 +18,10 @@
 | 
				
			||||||
  "Weather": "https://weather.cma.cn/api/now/54511", //天气预报地址,中国气象
 | 
					  "Weather": "https://weather.cma.cn/api/now/54511", //天气预报地址,中国气象
 | 
				
			||||||
  "AirQuality": "https://air.cnemc.cn:18007/CityData/GetAQIDataPublishLiveInfo?cityCode=110000", //空气质量API地址
 | 
					  "AirQuality": "https://air.cnemc.cn:18007/CityData/GetAQIDataPublishLiveInfo?cityCode=110000", //空气质量API地址
 | 
				
			||||||
  "Apis": {
 | 
					  "Apis": {
 | 
				
			||||||
    "RateUrl": "https://air.cnemc.cn:18007/CityData/GetAQIDataPublishLiveInfo?cityCode=110000", //首页设备在线API地址
 | 
					    "RateUrl": "https://mock.apipark.cn/m1/4687001-0-default/DustApi/DeviceOnlineRate", //首页设备在线率API地址
 | 
				
			||||||
    "AlertUrl": "https://air.cnemc.cn:18007/CityData/GetAQIDataPublishLiveInfo?cityCode=110000", //首页设报警API地址
 | 
					    "AlertUrl": "https://mock.apipark.cn/m1/4687001-0-default/DustApi/DeviceHistoryAlarm", //首页设报警API地址
 | 
				
			||||||
    "DeviceList": "https://air.cnemc.cn:18007/CityData/GetAQIDataPublishLiveInfo?cityCode=110000", //环境治理 API地址
 | 
					    "DeviceList": "https://mock.apipark.cn/m1/4687001-0-default/DustApi/GetDeviceList", //环境治理 API地址
 | 
				
			||||||
    "DeviceInfo": "https://air.cnemc.cn:18007/CityData/GetAQIDataPublishLiveInfo?cityCode=110000" //设备明细 API地址
 | 
					    "DeviceStatu": "https://mock.apipark.cn/m1/4687001-0-default/DustApi/GetDeviceStatu" //设备明细 API地址
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "Home": {
 | 
					  "Home": {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue