using langguanApi.Model;
using langguanApi.Model.Dto;
using langguanApi.Model.Entity;
using Newtonsoft.Json;
namespace langguanApi.Service
{
    /// 
    /// 接收数据服务
    /// 
    public class ReceiveDataService
    {
        public ReceiveDataService()
        {
        }
        /// 
        /// 接收数据
        /// 
        /// 
        /// 
        public async Task ReceiveData(ReceiveDto jsonData)
        {
            try
            {
                //TODO: 接收到数据后处理
                switch (jsonData.dataType)
                {
                    case 1:
                        //TODO:  1门禁
                        //var accessData = JsonConvert.DeserializeObject(jsonData.content);
                        //var _service = ServiceLocator.Instance.GetService();
                        break;
                    case 2:
                        //TODO: 2 台账
                        var LedgerData = JsonConvert.DeserializeObject(jsonData.content);
                        var _service = ServiceLocator.Instance.GetService();
                        break;
                    case 3:
                        //TODO: 3 运输
                        var TransportData = JsonConvert.DeserializeObject(jsonData.content);
                        var _Transporservice = ServiceLocator.Instance.GetService();
                        await _Transporservice.addTransport(TransportData);
                        break;
                    case 4:
                        var truckScalesData = JsonConvert.DeserializeObject(jsonData.content);
                        var _TruckScalesService = ServiceLocator.Instance.GetService();
                        await _TruckScalesService.AddTruckScales(truckScalesData);
                        //TODO: 4  地磅
                        break;
                }
            }
            catch (Exception ex)
            {
                return new ApiResult() { code = 1, msg = ex.Message };
            }
            return new ApiResult() { code = 0, msg = "success" };
        }
    }
}