st 设置设备类型
This commit is contained in:
parent
5575215e79
commit
649c2be62d
|
|
@ -1725,6 +1725,13 @@
|
||||||
<param name="input"></param>
|
<param name="input"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:langguanApi.Service.DeviceService.GetDeviceAndData(System.String)">
|
||||||
|
<summary>
|
||||||
|
取设备及数据
|
||||||
|
</summary>
|
||||||
|
<param name="id"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="M:langguanApi.Service.DeviceService.Exist(langguanApi.Model.DeviceAddDto)">
|
<member name="M:langguanApi.Service.DeviceService.Exist(langguanApi.Model.DeviceAddDto)">
|
||||||
<summary>
|
<summary>
|
||||||
是否存在
|
是否存在
|
||||||
|
|
@ -2321,5 +2328,10 @@
|
||||||
暂存服务
|
暂存服务
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="P:ServiceLocator.Instance">
|
||||||
|
<summary>
|
||||||
|
服务容器
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
</members>
|
</members>
|
||||||
</doc>
|
</doc>
|
||||||
|
|
|
||||||
|
|
@ -91,5 +91,8 @@ app.Run();
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public static class ServiceLocator
|
public static class ServiceLocator
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 服务容器
|
||||||
|
/// </summary>
|
||||||
public static IServiceProvider Instance { get; set; }
|
public static IServiceProvider Instance { get; set; }
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
using langguanApi.Extensions.AutoDI;
|
using langguanApi.Extensions.AutoDI;
|
||||||
using langguanApi.Model;
|
using langguanApi.Model;
|
||||||
using langguanApi.Model.Dto;
|
using langguanApi.Model.Dto;
|
||||||
|
using langguanApi.Model.Entity;
|
||||||
|
using Npoi.Mapper;
|
||||||
using System.Linq.Expressions;
|
using System.Linq.Expressions;
|
||||||
|
|
||||||
namespace langguanApi.Service
|
namespace langguanApi.Service
|
||||||
|
|
@ -34,6 +36,24 @@ namespace langguanApi.Service
|
||||||
Expression<Func<Alert, bool>> exp = filter => filter.CreateDateTime >= DateTime.Now.AddDays(-7) && filter.IsDelete == false;
|
Expression<Func<Alert, bool>> exp = filter => filter.CreateDateTime >= DateTime.Now.AddDays(-7) && filter.IsDelete == false;
|
||||||
return (await base.GetListWithExp(exp)).OrderByDescending(s => s.CreateDateTime);
|
return (await base.GetListWithExp(exp)).OrderByDescending(s => s.CreateDateTime);
|
||||||
}
|
}
|
||||||
|
public async Task<byte[]> ExportData(DateTime start, DateTime end)
|
||||||
|
{
|
||||||
|
Expression<Func<Alert, bool>> exp = filter => filter.CreateDateTime >= start
|
||||||
|
&& filter.CreateDateTime <= end
|
||||||
|
&& filter.IsDelete == false;
|
||||||
|
var list = await base.GetListWithExp(exp);
|
||||||
|
var mapper = new Mapper();
|
||||||
|
mapper.Map<Alert>("报警开始时间", s => s.CreateDateTime.ToString("yyyy-MM-dd HH:mm:ss"))
|
||||||
|
.Map<Alert>("设备名称", s => s.deviceName)
|
||||||
|
// .Map<Alert>("工序", s => s.)
|
||||||
|
.Map<Ledger>("新能源", s => s.NewCar ? "是" : "否")
|
||||||
|
.Map<Ledger>("燃油车", s => s.Emissions)
|
||||||
|
.Map<Ledger>("出厂日间 ", s => s.OutTime)
|
||||||
|
.Format<Alert>("yyyy-MM-dd HH:mm:ss", s => s.CreateDateTime);
|
||||||
|
MemoryStream stream = new MemoryStream();
|
||||||
|
mapper.Save(stream, list.ToList(), sheetName: "sheet1", leaveOpen: true);
|
||||||
|
return stream.ToArray();
|
||||||
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 分页取数据
|
/// 分页取数据
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -10,10 +10,8 @@ namespace langguanApi.Service
|
||||||
[ServiceInjection(InjectionType.Transient)]
|
[ServiceInjection(InjectionType.Transient)]
|
||||||
public class DeviceService : BaseService<Device>
|
public class DeviceService : BaseService<Device>
|
||||||
{
|
{
|
||||||
public Hj212Service _hj212Service;
|
public DeviceService(IConfiguration config) : base(config, nameof(Device))
|
||||||
public DeviceService(IConfiguration config, Hj212Service hj212Service) : base(config, nameof(Device))
|
|
||||||
{
|
{
|
||||||
_hj212Service = hj212Service;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -31,6 +29,11 @@ namespace langguanApi.Service
|
||||||
await base.CreateAsync(entity);
|
await base.CreateAsync(entity);
|
||||||
return new ApiResult { code = 0, msg = "" };
|
return new ApiResult { code = 0, msg = "" };
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// 取设备及数据
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="id"></param>
|
||||||
|
/// <returns></returns>
|
||||||
public async Task<ApiResult> GetDeviceAndData(string id)
|
public async Task<ApiResult> GetDeviceAndData(string id)
|
||||||
{
|
{
|
||||||
var entity = await base.GetAsync(id);
|
var entity = await base.GetAsync(id);
|
||||||
|
|
@ -38,8 +41,23 @@ namespace langguanApi.Service
|
||||||
{
|
{
|
||||||
return new ApiResult { code = 1, msg = "设备不存在" };
|
return new ApiResult { code = 1, msg = "设备不存在" };
|
||||||
}
|
}
|
||||||
var items = await _hj212Service.GetViewByDeviceMn(entity.deviceMN);
|
var _service = ServiceLocator.Instance.GetService<Hj212Service>();
|
||||||
return new ApiResult { code = 0, msg = "", data = new { device = entity, items } };
|
if (_service == null)
|
||||||
|
{
|
||||||
|
return new ApiResult
|
||||||
|
{
|
||||||
|
code = 0,
|
||||||
|
msg = "",
|
||||||
|
data = new
|
||||||
|
{
|
||||||
|
device = entity,
|
||||||
|
items = await _service.GetViewByDeviceMn(entity.deviceMN)
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
// var items = await _hj212Service.GetViewByDeviceMn(entity.deviceMN);
|
||||||
|
return new ApiResult { code = 0, msg = "", data = new { device = entity, items = "" } };
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -14,9 +14,11 @@ namespace langguanApi.Service
|
||||||
public class HJ212SocketServer
|
public class HJ212SocketServer
|
||||||
{
|
{
|
||||||
private Hj212Service _hj212Service;
|
private Hj212Service _hj212Service;
|
||||||
public HJ212SocketServer(Hj212Service hj212Service)
|
private DeviceService _deviceService;
|
||||||
|
public HJ212SocketServer(Hj212Service hj212Service, DeviceService deviceService)
|
||||||
{
|
{
|
||||||
_hj212Service = hj212Service;
|
_hj212Service = hj212Service;
|
||||||
|
_deviceService = deviceService;
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 缓冲器
|
/// 缓冲器
|
||||||
|
|
@ -90,15 +92,35 @@ namespace langguanApi.Service
|
||||||
{
|
{
|
||||||
Console.WriteLine("收到自: " + session.RemoteIPEndPoint + ": " + rawText);
|
Console.WriteLine("收到自: " + session.RemoteIPEndPoint + ": " + rawText);
|
||||||
HJ212_2017 hj = new HJ212_2017();
|
HJ212_2017 hj = new HJ212_2017();
|
||||||
|
// st 27 =voc,st=31 cems, st=32,tsp
|
||||||
if (hj.DecodeData(rawText))
|
if (hj.DecodeData(rawText))
|
||||||
{
|
{
|
||||||
var body = JsonConvert.SerializeObject(hj.CP);
|
var body = JsonConvert.SerializeObject(hj.CP);
|
||||||
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
|
||||||
|
{
|
||||||
|
deviceMN = hj.DATA_HEAD["MN"],
|
||||||
|
DeviceType = SetDeviceType(hj.DATA_HEAD["ST"]),
|
||||||
|
Ip= session.RemoteIPEndPoint.ToString(),
|
||||||
|
});
|
||||||
//校验通过,开始入库
|
//校验通过,开始入库
|
||||||
await _hj212Service.Add(entity, session.RemoteIPEndPoint.ToString());
|
await _hj212Service.Add(entity, session.RemoteIPEndPoint.ToString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
private int SetDeviceType(string st)
|
||||||
|
{
|
||||||
|
//st 27 =voc,st=31 cems, st=32,tsp
|
||||||
|
//1 voc,2 cems,3,tsp,4 video
|
||||||
|
switch (st)
|
||||||
|
{
|
||||||
|
case "27": return 1;
|
||||||
|
case "31": return 2;
|
||||||
|
case "32": return 3;
|
||||||
|
case "33": return 4;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
private void OnNetServer_ExceptionCaught(Exception ex)
|
private void OnNetServer_ExceptionCaught(Exception ex)
|
||||||
{
|
{
|
||||||
Console.WriteLine("Error in NetServer" + ex);
|
Console.WriteLine("Error in NetServer" + ex);
|
||||||
|
|
|
||||||
|
|
@ -22,20 +22,17 @@ namespace langguanApi.Service
|
||||||
public async Task Add(Model.HJ212 hJ212, string deviceIp)
|
public async Task Add(Model.HJ212 hJ212, string deviceIp)
|
||||||
{
|
{
|
||||||
////判断设备类型 tsp 会有经纬度数据
|
////判断设备类型 tsp 会有经纬度数据
|
||||||
int deviceType = 1;//设备类型为1 =voc
|
// int deviceType = 1;//设备类型为1 =voc
|
||||||
if (hJ212.lat > 0 && hJ212.lng > 0)
|
|
||||||
{
|
////先判断当前设备是否存在
|
||||||
deviceType = 1;
|
//await _deviceSerive.Add(new DeviceAddDto()
|
||||||
}
|
//{
|
||||||
//先判断当前设备是否存在
|
// deviceMN = hJ212.deviceMN,
|
||||||
await _deviceSerive.Add(new DeviceAddDto()
|
// Ip = deviceIp,
|
||||||
{
|
// lat = hJ212.lat,
|
||||||
deviceMN = hJ212.deviceMN,
|
// lng = hJ212.lng,
|
||||||
Ip = deviceIp,
|
// DeviceType = deviceType
|
||||||
lat = hJ212.lat,
|
//});
|
||||||
lng = hJ212.lng,
|
|
||||||
DeviceType = deviceType
|
|
||||||
});
|
|
||||||
await base.CreateAsync(hJ212);
|
await base.CreateAsync(hJ212);
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ namespace langguanApi.Service
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void CreatTask()
|
public async void CreatTask()
|
||||||
{
|
{
|
||||||
//5分钟执行一次
|
//5分钟执行一次
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue