commit
b4307d2c05
@ -0,0 +1,23 @@
|
|||||||
|
namespace Service.Api.Resp
|
||||||
|
{
|
||||||
|
public class BatteryInfo
|
||||||
|
{
|
||||||
|
public string? BatteryNo { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 电池类型
|
||||||
|
/// </summary>
|
||||||
|
public int? BatteryType { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 电池包型号
|
||||||
|
/// </summary>
|
||||||
|
public int? BatteryPackageModel { get; set; }
|
||||||
|
|
||||||
|
public float? Soe { get; set; }
|
||||||
|
|
||||||
|
public float? Soc { get; set; }
|
||||||
|
|
||||||
|
public float? Soh { get; set; }
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,26 @@
|
|||||||
|
namespace Service.Api.Resp;
|
||||||
|
|
||||||
|
public class CarInfo
|
||||||
|
{
|
||||||
|
public string? CarNo { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
public string? CarVin { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 车型数据 "0:无效值1:牵引车 2:搅拌车 3:自卸车"
|
||||||
|
/// </summary>
|
||||||
|
public byte? CarType { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 电池数
|
||||||
|
/// </summary>
|
||||||
|
public int BatteryNum { get; set; }
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 车辆电池数据
|
||||||
|
/// </summary>
|
||||||
|
public List<BatteryInfo> BatteryInfos { get; set; }
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
using Service.Car.Msg.Car.Req;
|
||||||
|
|
||||||
|
namespace Service.Api.Resp;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 车辆返回
|
||||||
|
/// </summary>
|
||||||
|
public class CarInfoResp
|
||||||
|
{
|
||||||
|
public bool Connected { get; set; }
|
||||||
|
|
||||||
|
public string CarNo { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 度电数据
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public ElecMsg? ElecMsg { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 车辆信息
|
||||||
|
/// </summary>
|
||||||
|
public CarInfo? CarInfo { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 车辆状态信息
|
||||||
|
/// </summary>
|
||||||
|
public CarStatus? CarStatus { get; set; }
|
||||||
|
}
|
@ -0,0 +1,108 @@
|
|||||||
|
using HybirdFrameworkCore.Utils;
|
||||||
|
using HybirdFrameworkDriver.Session;
|
||||||
|
using log4net;
|
||||||
|
using Service.Api.Resp;
|
||||||
|
using Service.Car.Msg.Car.Req;
|
||||||
|
using Service.Car.Server;
|
||||||
|
using Service.TBox.Msg.TBox;
|
||||||
|
using Service.TBox.Server;
|
||||||
|
|
||||||
|
namespace Service.TBox.Service;
|
||||||
|
|
||||||
|
public class TBoxService
|
||||||
|
{
|
||||||
|
private static readonly ILog Log = LogManager.GetLogger(typeof(TBoxService));
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 焕能长治
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="carNo"></param>
|
||||||
|
public static CarInfoResp GetHnCZCarInfo(string carNo)
|
||||||
|
{
|
||||||
|
IoSession? ioSession = CarServerMgr.CarServer?.SessionMgr.GetSession(carNo);
|
||||||
|
CarInfoResp carInfoResp = new CarInfoResp()
|
||||||
|
{
|
||||||
|
Connected = CarServerMgr.CarServer != null && ioSession != null,
|
||||||
|
CarNo = carNo,
|
||||||
|
CarInfo = new()
|
||||||
|
{
|
||||||
|
CarNo = carNo,
|
||||||
|
CarVin = carNo,
|
||||||
|
BatteryNum = 1,
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
if (ObjUtils.IsNotNull(ioSession))
|
||||||
|
{
|
||||||
|
ioSession.BusinessMap.TryGetValue("ElecMsg", out var elecMsg);
|
||||||
|
if (elecMsg != null)
|
||||||
|
{
|
||||||
|
carInfoResp.ElecMsg = (ElecMsg)elecMsg;
|
||||||
|
}
|
||||||
|
|
||||||
|
ioSession.BusinessMap.TryGetValue("HeartBeatMsg", out var heartBeatMsg);
|
||||||
|
if (heartBeatMsg != null)
|
||||||
|
{
|
||||||
|
var beatMsg = (HeartBeatMsg)heartBeatMsg;
|
||||||
|
CarStatus carStatus = new CarStatus();
|
||||||
|
carStatus.LockStatus = beatMsg.LockStatus;
|
||||||
|
carStatus.Keys = beatMsg.KeyStatus;
|
||||||
|
carInfoResp.CarStatus = carStatus;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return carInfoResp;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 焕能阳泉
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public static CarInfoResp GetHnYQCarInfo(string carNo)
|
||||||
|
{
|
||||||
|
var statusMsg = TBoxServerMgr.Server?.StatusMsg;
|
||||||
|
BatteryInfo1? batteryInfo1 = TBoxServerMgr.Server?.BatteryInfo1;
|
||||||
|
StatusMsg? serverStatusMsg = TBoxServerMgr.Server?.StatusMsg;
|
||||||
|
LockStatusMsg? lockStatusMsg = TBoxServerMgr.Server?.LockStatusMsg;
|
||||||
|
CarInfoResp carInfoResp = new CarInfoResp()
|
||||||
|
{
|
||||||
|
CarNo = carNo,
|
||||||
|
Connected = TBoxServerMgr.Server != null && TBoxServerMgr.Server.Connected,
|
||||||
|
CarInfo = new()
|
||||||
|
{
|
||||||
|
CarNo = carNo,
|
||||||
|
CarVin = TBoxServerMgr.Server?.ReadVin(),
|
||||||
|
BatteryNum = 1,
|
||||||
|
CarType = statusMsg?.CarType,
|
||||||
|
BatteryInfos = new List<BatteryInfo>()
|
||||||
|
{
|
||||||
|
new()
|
||||||
|
{
|
||||||
|
BatteryNo = TBoxServerMgr.Server?.BatteryNo(),
|
||||||
|
Soc = TBoxServerMgr.Server?.SocMsg?.Soc,
|
||||||
|
Soe = batteryInfo1?.Soe,
|
||||||
|
Soh = TBoxServerMgr.Server?.SohMsg.Soh,
|
||||||
|
BatteryType = batteryInfo1?.TypeCode,
|
||||||
|
BatteryPackageModel = batteryInfo1?.Reserved1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
ElecMsg = new()
|
||||||
|
{
|
||||||
|
CarNo = carNo,
|
||||||
|
SubMile = TBoxServerMgr.Server?.SubMileMsg?.SubMile,
|
||||||
|
TotalMile = TBoxServerMgr.Server?.TotalMileMsg?.TotalMile,
|
||||||
|
},
|
||||||
|
CarStatus = new()
|
||||||
|
{
|
||||||
|
Keys = serverStatusMsg?.Keys,
|
||||||
|
LockStatus = lockStatusMsg?.LockStatus,
|
||||||
|
Break = serverStatusMsg?.Break,
|
||||||
|
Gear = serverStatusMsg?.Gear
|
||||||
|
}
|
||||||
|
};
|
||||||
|
return carInfoResp;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue