liulijun
2025-11-24 9086b238cd9fbb9fbeae7cab11d59576cd9d2853
ÏîÄ¿´úÂë/WCS/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -129,7 +129,46 @@
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// ä»»åŠ¡é‡æ–°ä¸‹å‘
        /// </summary>
        /// <param name="taskNum"></param>
        /// <returns></returns>
        public WebResponseContent ResendTask(int taskNum)
        {
            try
            {
                Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task != null)
                {
                    if (task.TaskState == (int)TaskStatusEnum.SC_Executing)
                    {
                        task.TaskState = TaskStatusEnum.SC_Execute.ObjToInt();
                    }
                    else if(task.TaskState == (int)TaskStatusEnum.AGV_Executing)
                    {
                        task.TaskState = TaskStatusEnum.AGV_Execute.ObjToInt();
                    }
                    else
                    {
                        return WebResponseContent.Instance.Error($"此任务 { taskNum } æš‚时不能重新下发任务");
                    }
                    BaseDal.UpdateData(task);
                }
                else
                {
                    return WebResponseContent.Instance.Error($"未找到任务消息");
                }
                return WebResponseContent.Instance.OK("任务重新下发成功");
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// æŽ¥æ”¶WMS任务信息
        /// </summary>
@@ -484,24 +523,54 @@
            }
            return content;
        }
        public WebResponseContent MESAvgArriveNotice(RequestAGVArriveDTO requestAGVArriveDTO)
        /// <summary>
        /// åˆ¤æ–­å…è®¸æ”¾è´§
        /// </summary>
        /// <returns></returns>
        public string MESAvgArriveNotice(RequestAGVArriveDTO requestAGVArriveDTO)
        {
            WebResponseContent content = new WebResponseContent();
            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.MESAvgArriveNotice.ToString());
            string response = Post(apiInfo.ApiAddress, JsonConvert.SerializeObject(requestAGVArriveDTO));
            return response;
        }
        public static string Post(string serviceAddress, string requestJson = "", string contentType = "application/json", Dictionary<string, string>? headers = null)
        {
            string result = string.Empty;
            DateTime beginDate = DateTime.Now;
            try
            {
                string address = AppSettings.Get("WMSApiAddress");
                if (string.IsNullOrEmpty(address))
                using (HttpContent httpContent = new StringContent(requestJson))
                {
                    return WebResponseContent.Instance.Error($"未找到WMSApi地址");
                    httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                    using HttpClient httpClient = new HttpClient();
                    httpClient.Timeout = new TimeSpan(0, 0, 30);
                    string LoginToken = AppSettings.Get("MESLoginToken");
                    headers = new Dictionary<string, string>
                    {
                        //正式
                        { "LoginToken", LoginToken }
                    };
                    if (headers != null)
                    {
                        foreach (var header in headers)
                            httpClient.DefaultRequestHeaders.Add(header.Key, header.Value);
                    }
                    HttpResponseMessage responseMessage = httpClient.PostAsync(serviceAddress, httpContent).Result;
                    result = responseMessage.Content.ReadAsStringAsync().Result;
                }
                string responseStr = HttpHelper.Post($"{address}/api/Mes/MESAvgArriveNotice", requestAGVArriveDTO.Serialize());
                return content.OK(responseStr);
                return result;
            }
            catch (Exception ex)
            catch (Exception e)
            {
                content = WebResponseContent.Instance.Error(ex.Message);
                throw new Exception(e.Message);
            }
            return content;
            finally
            {
                Logger.Add(serviceAddress, requestJson == null ? "" : requestJson, result, beginDate);
            }
        }
        public WebResponseContent CPEmptyInbound(string palletCode,string SourceAddress)
        {