IPC-610
2025-01-02 d77d9ff80f5fd8cd70c775fbfc30dc27061bfad2
Admin.NET/WCS.Application/Util/HttpService.cs
@@ -1,8 +1,10 @@
using DocumentFormat.OpenXml.EMMA;
using DocumentFormat.OpenXml.Vml.Office;
using Elastic.Clients.Elasticsearch;
using Furion.Logging;
using Furion.RemoteRequest.Extensions;
using Newtonsoft.Json;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using System.Text;
using WCS.Application.Entity;
using static SKIT.FlurlHttpClient.Wechat.Api.Models.ComponentTCBBatchCreateContainerServiceVersionResponse.Types;
@@ -60,12 +62,14 @@
                    StartLocate = startLocat,
                    PalletNo = palletNo,
                    TaskNo = result.TaskList.TaskNo,
                    Levels = 999,
                    EndLocate = result.TaskList.EndLocate,
                    EndRoadway = result.TaskList.EndRoadway
                };
                
                _db.Insertable(taskAdd).ExecuteCommand();
                endLocat = result.TaskList.EndRoadway;
                taskNo = result.TaskList.TaskNo;
                returnStr = result.TaskList.EndLocate;
                
            }
@@ -251,7 +255,17 @@
    public async Task<ResponseTasks> RequestEmptyException(TaskRequest model)
    {
        string url = Urls.WMSAddress + ":" + Urls.WMSPort;
        var result = await (url + "/api/DownAPi/EmptyException").SetBody(model, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>();
        //string TaskType = "";
        //string TaskStatus = "";
        //var PalletNo = "";
        //var TaskNo = "";
        var str = new {
            PalletNo = model.PalletNo,
            TaskNo=model.TaskNo,
            TaskType = model.TaskType.ToString(),
            TaskStatus = model.TaskStatus.ToString(),
        };
        var result = await (url + "/api/DownAPi/EmptyException").SetBody(str, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>();
        Log.Information("调用WMS接口反馈空取异常接口" + result.ToJson());
        return result;
    }
@@ -264,7 +278,14 @@
    public async Task<ResponseTasks> RequestFullException(TaskRequest model)
    {
        string url = Urls.WMSAddress + ":" + Urls.WMSPort;
        var result = await (url + "/api/DownAPi/FullException").SetBody(model, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>();
        var str = new
        {
            PalletNo = model.PalletNo,
            TaskNo = model.TaskNo,
            TaskType = model.TaskType.ToString(),
            TaskStatus = model.TaskStatus.ToString(),
        };
        var result = await (url + "/api/DownAPi/FullException").SetBody(str, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>();
        Log.Information("调用WMS接口反馈满取异常接口" + result.ToJson());
        return result;
    }
@@ -298,11 +319,12 @@
                    var taskAdd = new WcsTask()
                    {
                        TaskNo = item.TaskNo,
                        TaskType = TaskTypeEnum.Out,
                        TaskType = (TaskTypeEnum)(int.Parse(item.TaskType)),
                        Status = TaskStatusEnum.Wait,
                        //IsSuccess =TaskSuccessEnum.Success,
                        Origin = "WMS",
                        StartLocate = item.StartLocate,
                        StartRoadway=item.StartRoadway,
                        PalletNo = item.PalletNo,
                        EndLocate = item.EndLocate,
                        EndRoadway = item.EndRoadway
@@ -326,4 +348,89 @@
        }
        return returnStr;
    }
    /// <summary>
    /// 调用WMS接口申请空托跺绑定
    /// </summary>
    /// <param name="Qty"></param>
    /// <param name="palletNo"></param>
    /// <returns></returns>
    public string BindPlnInHouseWcs(string Qty, string palletNo)
    {
        string returnStr = "";
        var model = new BindPalletModel()
        {
            BindType = "1",//申请类型
            Qty = int.Parse(Qty),//叠托机跺托盘数
            PalletNo = palletNo,//托盘号
        };
        string url = Urls.WMSAddress + ":" + Urls.WMSPort;
        var result = (url + "/api/DownAPi/BindPlnInHouseWcs").SetBody(model, "application/json", Encoding.UTF8).PostAsAsync<ResponseOutPallet>().Result;
        Log.Information("调用WMS接口反馈任务接口" + result.ToJson());
        if (result.Success == 0)
        {
            returnStr = result.TaskList.ToString();
        }
        else
        {
            returnStr = "-1:" + result.Message;
            return returnStr;
        }
        return returnStr;
    }
    /// <summary>
    /// 调用WMS接口反馈缠膜异常接口
    /// </summary>
    /// <param name="PalletNo">托盘号</param>
    /// <returns></returns>
    public string RequestPackWcs(string PalletNo)
    {
        string url = Urls.WMSAddress + ":" + Urls.WMSPort;
        //var str = new
        //{
        //    PalletNo = palletno
        //};
        var result = (url + "/api/DownAPi/RequestPackWcs").SetBody(PalletNo, "application/json", Encoding.UTF8).PostAsAsync<IsBaleModel>().Result;
        Log.Information("调用WMS接口反馈缠膜异常接口" + result.ToJson());
        return result.Success;
    }
    /// <summary>
    /// 调用WMS接口反馈拆膜异常接口
    /// </summary>
    /// <param name="palletno">托盘号</param>
    /// <returns></returns>
    public string RequestUnPackWcs(string palletno)
    {
        string url = Urls.WMSAddress + ":" + Urls.WMSPort;
        var str = new
        {
            PalletNo = palletno
        };
        var result =  (url + "/api/DownAPi/RequestUnPackWcs").SetBody(str, "application/json", Encoding.UTF8).PostAsAsync<IsBaleModel>().Result;
        Log.Information("调用WMS接口反馈拆膜异常接口" + result.ToJson());
        return result.Success;
    }
    /// <summary>
    /// 调用WMS接口反馈缠膜完成
    /// </summary>
    /// <param name="palletno">托盘号</param>
    /// <returns></returns>
    public string RequestPackedWcs(string palletno)
    {
        string url = Urls.WMSAddress + ":" + Urls.WMSPort;
        var str = new
        {
            PalletNo = palletno
        };
        var result =  (url + "/api/DownAPi/RequestPackedWcs").SetBody(str, "application/json", Encoding.UTF8).PostAsAsync<IsBaleModel>().Result;
        Log.Information("调用WMS接口反馈缠膜完成异常接口" + result.ToJson());
        return result.Success;
    }
}