using MailKit; using Mapster; using Masuit.Tools; using Masuit.Tools.Security; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEA_Common; using WIDESEA_Core; using WIDESEA_Core.Enums; using WIDESEA_IStoragIntegrationServices; using WIDESEA_Model.Models; using WIDESEA_StorageTaskRepository; namespace WIDESEA_StoragIntegrationServices { public partial class ToCheckService { /// /// 接受并上传智粤测量设备结果数据 /// /// /// public WebResponseContent UploadCheckResult(object jsondata) { WebResponseContent content = new WebResponseContent(); try { if (jsondata == null) throw new Exception("数据为空"); CheckResult checkResult = JsonConvert.DeserializeObject(jsondata.ToString()); Dt_Task task = _taskRepository.QueryFirst(x => x.PalletCode == checkResult.CLTM && x.TaskState == (int)TaskOutStatusEnum.Lien_Check); if (task == null) throw new Exception("未查询到车轮任务"); task.TaskState = (int)TaskOutStatusEnum.Lien_CheckFinish; //测量完成后将任务删除 var taskHty = task.Adapt(); taskHty.FinishTime = DateTime.Now; taskHty.OperateType = (int)OperateTypeEnum.自动完成; Dt_CheckResult result = new Dt_CheckResult(); checkResult.Adapt(result); //result.CreateDate = DateTime.Now; //result.Creater = "CK"; // 上传智粤 上传成功后标记成功,失败则不管后续人工可补录 if (_toZYService.ReportToSCE(result).Status) { result.IsUploadMES = true; } result.InDate = DateTime.Now; LogFactory.GetLog("测量设备上传测量结果数据").Info(true, $"\r\r--------------------------------------"); LogFactory.GetLog("测量设备上传测量结果数据").Info(true, result.ToJsonString()); if (_checkResultRepository.AddData(result) > 0) { _taskRepository.DeleteData(task); _task_HtyRepository.AddData(taskHty); return content.OK(); } else { return content.Error(); } } catch (Exception ex) { LogFactory.GetLog("测量设备上传测量结果数据").Info(true, $"\r\r--------------------------------------"); LogFactory.GetLog("测量设备上传测量结果数据").Info(true, ex.Message); return content.Error($"请求异常:{ex.Message}"); } } } }