| | |
| | | using Autofac.Core; |
| | | using Newtonsoft.Json.Serialization; |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Serialization; |
| | | using Org.BouncyCastle.Asn1.Ocsp; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Reflection.Metadata; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_DTO.Agv; |
| | |
| | | using WIDESEAWCS_Core; |
| | | using WIDESEAWCS_Core.Helper; |
| | | using WIDESEAWCS_DTO.Agv; |
| | | using System.Reflection.Metadata; |
| | | using WIDESEAWCS_Model.Models; |
| | | using WIDESEAWCS_DTO.TaskInfo; |
| | | using WIDESEAWCS_Model.Models; |
| | | |
| | | namespace WIDESEAWCS_TaskInfoService |
| | | { |
| | |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | |
| | | string? apiAddress = _apiInfoRepository.QueryFirst(x => x.ApiCode == SendTask.ToString())?.ApiAddress; |
| | | if (string.IsNullOrEmpty(apiAddress)) throw new Exception($"æªæ¾å°åéAGV任塿¥å£,è¯·æ£æ¥æ¥å£é
ç½®"); |
| | | string request = JsonConvert.SerializeObject(taskModel, settings); |
| | | string response = HttpHelper.Post(apiAddress, request); |
| | | WriteLog.Write_Log("AGVå
¥åºä»»å¡ä¸å", "åºåºä»»å¡ä¸åæ¥å£", "请æ±ä»»å¡", $"请æ±ï¼{request},åä¼ ï¼{response}"); |
| | | AgvResponseContent agvContent = response.DeserializeObject<AgvResponseContent>() ?? throw new Exception("AGVä»»å¡åéæªè¿åç»æ"); |
| | | if (agvContent.Success) |
| | | { |
| | |
| | | /// </summary> |
| | | public void AgvSearchStatus1(Dt_ErrorInfo e2) |
| | | { |
| | | WriteLog.Write_Log("AGVæ¥è¯¢è°ç¨åWMSæ
é䏿¥", "AGVæ¥è¯¢è°ç¨åWMSæ
鿥å£", "请æ±", $"请æ±ï¼{e2.ToJson()}"); |
| | | if (e2 != null) |
| | | { |
| | | // æ¥è¯¢æ¯å¦æé误没æå°±æ·»å ï¼æå°±åæ¶ |
| | |
| | | |
| | | string? ErrorBack = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.WMSErrorBack.ToString())?.ApiAddress; |
| | | if (string.IsNullOrEmpty(ErrorBack)) |
| | | throw new Exception($"æªæ¾å°WMSæ
é䏿¥æ¥å£,è¯·æ£æ¥æ¥å£é
ç½®"); |
| | | |
| | | // å¦ææ¯æ
é䏿¥(e2.ErrorType == 2) |
| | | if (e2.ErrorType == 2) |
| | | { |
| | | // æ£æ¥æ¯å¦å·²åå¨ç¸åæºå¨äººçæ
éè®°å½ |
| | | if (existingErrors.Count == 0) |
| | | return; |
| | | }else{ |
| | | // å¦ææ¯æ
é䏿¥(e2.ErrorType == 2) |
| | | if (e2.ErrorType == 2) |
| | | { |
| | | _errorInfoRepository.AddData(e2); |
| | | // åéç»WMS - æ
é䏿¥ |
| | | TaskError taskError = new TaskError() |
| | | // æ£æ¥æ¯å¦å·²åå¨ç¸åæºå¨äººçæ
éè®°å½ |
| | | if (existingErrors.Count == 0) |
| | | { |
| | | MsgID = e2.Id, |
| | | StationCode = e2.StationCode, |
| | | MsgCode = 1, // 1表示æ
é |
| | | Msg = e2.Message |
| | | }; |
| | | string reqErrorBack = JsonConvert.SerializeObject(taskError, settings); |
| | | HttpHelper.Post(ErrorBack, reqErrorBack); |
| | | } |
| | | // 妿已å卿
éè®°å½ï¼åä¸é夿·»å |
| | | } |
| | | // å¦ææ¯æ£å¸¸ç¶æ(e2.ErrorType == 0)ä¸å卿
éè®°å½ï¼åæ§è¡æ
éæ¢å¤ |
| | | else if (e2.ErrorType == 0 && existingErrors.Count > 0) |
| | | { |
| | | // å 餿
éè®°å½ |
| | | if (_errorInfoRepository.DeleteData(existingErrors)) |
| | | { |
| | | // åéç»WMS - æ
éæ¢å¤ |
| | | foreach (var error in existingErrors) |
| | | { |
| | | _errorInfoRepository.AddData(e2); |
| | | // åéç»WMS - æ
é䏿¥ |
| | | TaskError taskError = new TaskError() |
| | | { |
| | | MsgID = error.Id, |
| | | StationCode = error.StationCode, |
| | | MsgCode = 0, // 0表示æ¢å¤ |
| | | Msg = "æ
鿢å¤" |
| | | MsgID = e2.Id, |
| | | StationCode = e2.StationCode, |
| | | MsgCode = 1, // 1表示æ
é |
| | | Msg = e2.Message |
| | | }; |
| | | string reqErrorBack = JsonConvert.SerializeObject(taskError, settings); |
| | | HttpHelper.Post(ErrorBack, reqErrorBack); |
| | | } |
| | | // 妿已å卿
éè®°å½ï¼åä¸é夿·»å |
| | | } |
| | | // å¦ææ¯æ£å¸¸ç¶æ(e2.ErrorType == 0)ä¸å卿
éè®°å½ï¼åæ§è¡æ
éæ¢å¤ |
| | | else if (e2.ErrorType == 0 && existingErrors.Count > 0) |
| | | { |
| | | // å 餿
éè®°å½ |
| | | if (_errorInfoRepository.DeleteData(existingErrors)) |
| | | { |
| | | // åéç»WMS - æ
éæ¢å¤ |
| | | foreach (var error in existingErrors) |
| | | { |
| | | TaskError taskError = new TaskError() |
| | | { |
| | | MsgID = error.Id, |
| | | StationCode = error.StationCode, |
| | | MsgCode = 0, // 0表示æ¢å¤ |
| | | Msg = "æ
鿢å¤" |
| | | }; |
| | | string reqErrorBack = JsonConvert.SerializeObject(taskError, settings); |
| | | HttpHelper.Post(ErrorBack, reqErrorBack); |
| | | } |
| | | } |
| | | } |
| | | return; |
| | | } |
| | | return; |
| | | |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// AGVç¶ææ¥è¯¢è°ç¨åWMSæ
é䏿¥ |
| | | /// </summary> |
| | | public void AgvSearchStatus() // 1忥å2æ´æ°ä»»å¡ |
| | | public void AgvSearchStatus() |
| | | { |
| | | try |
| | | { |
| | |
| | | _errorInfoRepository.DeleteData(delErrorInfos); |
| | | _errorInfoRepository.AddData(addErrorInfos); |
| | | _unitOfWorkManage.CommitTran(); |
| | | List<Dt_ErrorInfo> newErrInfos = _errorInfoRepository.QueryData(x=>x.Id > errorId && x.ErrorType == 2); |
| | | List<Dt_ErrorInfo> newErrInfos = _errorInfoRepository.QueryData(x=>x.Id > errorId && x.ErrorType == 1); |
| | | if (delErrorInfos.Count>0) |
| | | { |
| | | foreach (var item in delErrorInfos) |