IPC-610
2024-09-26 c283573b53247033cf83b8fcddd8a022ea6454ab
修改测试问题
3个文件已修改
205 ■■■■■ 已修改文件
Admin.NET/WCS.Application/Model/TaskRequest.cs 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Admin.NET/WCS.Application/PLC/PLCService.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Admin.NET/WCS.Application/Util/HttpService.cs 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Admin.NET/WCS.Application/Model/TaskRequest.cs
@@ -1,4 +1,6 @@

using WCS.Application.Entity;
namespace WCS.Application;
public class TaskRequest
{
@@ -99,3 +101,135 @@
}
//成品码垛信息
public class BoxPalletBindVm
{
    /// <summary>
    /// 生产工单
    /// </summary>
    public string OrderCode { get; set; }
    /// <summary>
    /// 入库单号
    /// </summary>
    public string AsnNo { get; set; }
    /// <summary>
    /// 入库单明细
    /// </summary>
    public int AsnDetailNo { get; set; }
    /// <summary>
    /// 托盘号
    /// </summary>
    public string PalletNo { get; set; }
    /// <summary>
    /// 托盘数量
    /// </summary>
    public decimal Qty { get; set; }
    /// <summary>
    /// 托盘类型  0物料托  1空托盘托
    /// </summary>
    public string Type { get; set; }
    /// <summary>
    /// 物料编码
    /// </summary>
    public string SkuNo { get; set; }
    /// <summary>
    /// 批次号
    /// </summary>
    public string LotNo { get; set; }
    /// <summary>
    /// 批次描述
    /// </summary>
    public string LotText { get; set; }
    /// <summary>
    /// 供货批次
    /// </summary>
    public string SupplierLot { get; set; }
    public List<WcsBoxInfo> Detail { get; set; }
}
//码垛箱码明细信息
public class BoxPalletBindDetailVm
{
    /// <summary>
    /// 生产单据号
    /// </summary>
    public string OrderCode { get; set; }
    /// <summary>
    /// 箱号
    /// </summary>
    public string BoxNo { get; set; }
    /// <summary>
    /// 盒号
    /// </summary>
    public string BoxNo2 { get; set; }
    /// <summary>
    /// 支号
    /// </summary>
    public string BoxNo3 { get; set; }
    /// <summary>
    /// 数量
    /// </summary>
    public decimal Qty { get; set; }
    /// <summary>
    /// 满箱数量
    /// </summary>
    public decimal FullQty { get; set; }
    /// <summary>
    /// 物料编码
    /// </summary>
    public string SkuNo { get; set; }
    /// <summary>
    /// 物料名称
    /// </summary>
    public string SkuName { get; set; }
    /// <summary>
    /// 批次号
    /// </summary>
    public string LotNo { get; set; }
    /// <summary>
    /// 批次描述
    /// </summary>
    public string LotText { get; set; }
    /// <summary>
    /// 生产日期
    /// </summary>
    public DateTime? ProductionTime { get; set; }
    /// <summary>
    /// 过期时间
    /// </summary>
    public DateTime? ExpirationTime { get; set; }
    /// <summary>
    /// 检验标记
    /// </summary>
    public string InspectMark { get; set; }
    /// <summary>
    /// 零箱标记
    /// </summary>
    public string BitBoxMark { get; set; }
    /// <summary>
    /// 质检状态
    /// </summary>
    public string InspectStatus { get; set; }
    /// <summary>
    /// 物料规格
    /// </summary>
    public string Standard { get; set; }
    /// <summary>
    /// 包装规格
    /// </summary>
    public string PackageStandard { get; set; }
    /// <summary>
    /// 储存期至
    /// </summary>
    public DateTime? StoreTime { get; set; }
    /// <summary>
    /// 第几件
    /// </summary>
    public int? QtyOrd { get; set; }
    /// <summary>
    /// 总件数
    /// </summary>
    public int? QtyCount { get; set; }
}
Admin.NET/WCS.Application/PLC/PLCService.cs
@@ -1694,7 +1694,8 @@
                            // 向WMS申请巷道
                            var http = new HttpService();
                            string TaskNo = "", EndLocate = "";
                            string strMsg = http.RequestRoadWay(palletNo, modDevice.StationNum, "1", "2", ref EndLocate, ref TaskNo);
                            string strMsg = http.BindRequestRoadWay(checkTaskMedel.OrderNo,palletNo, checkTaskMedel.BoxCount.ToDecimal(),"0", checkTaskMedel.SkuNo, checkTaskMedel.LotNo, "","", boxInfoList,
                                modDevice.StationNum, "1", "2", ref EndLocate, ref TaskNo);
                            if (!strMsg.Contains("-1"))
                            {
                                Log.Error(string.Format("申请巷道失败,码垛工位{0};原因{1}", modDevice.StationNum, strMsg));
Admin.NET/WCS.Application/Util/HttpService.cs
@@ -1,8 +1,10 @@
using Elastic.Clients.Elasticsearch;
using DocumentFormat.OpenXml.EMMA;
using Elastic.Clients.Elasticsearch;
using Furion.Logging;
using Furion.RemoteRequest.Extensions;
using Newtonsoft.Json;
using System.Text;
using WCS.Application.Entity;
using static SKIT.FlurlHttpClient.Wechat.Api.Models.ComponentTCBBatchCreateContainerServiceVersionResponse.Types;
namespace WCS.Application;
@@ -86,6 +88,70 @@
    }
    /// <summary>
    /// 调用WMS接口自动码垛绑定信息返回巷道口
    /// </summary>
    /// <returns></returns>
    public string BindRequestRoadWay(string orderNo, string palletNo,decimal qty ,string type,string skuNo, string lotNo, string lotText, string supplierLot, List<WcsBoxInfo> detail,
        string startLocat, string taskModel, string ceng, ref string endLocat, ref string taskNo)
    {
        string returnStr = "";
        var task = _db.Queryable<WcsTask>().First(m => m.IsDelete == false && (m.Status == TaskStatusEnum.Wait || m.Status == TaskStatusEnum.Doing) && m.TaskType == TaskTypeEnum.In && m.PalletNo == palletNo);
        if (task == null)
        {
            var model = new BoxPalletBindVm()
            {
                OrderCode= orderNo,
                AsnNo= orderNo,
                AsnDetailNo=0,
                PalletNo=palletNo,
                Qty= qty,
                Type=type,
                SkuNo=skuNo,
                LotNo= lotNo,
                LotText= lotText,
                SupplierLot= supplierLot,
                Detail=detail
            };
            string url = Urls.WMSAddress + ":" + Urls.WMSPort;
            var result = (url + "/api/DownAPi/BindRequestRoadWay").SetBody(model, "application/json", Encoding.UTF8).PostAsAsync<ResponseTasks>().Result;
            Log.Information("调用WMS接口反馈任务接口" + result.ToJson());
            if (result.Success == 0)
            {
                var taskAdd = new WcsTask()
                {
                    TaskType = TaskTypeEnum.In,
                    Status = TaskStatusEnum.Wait,
                    Origin = "WMS",
                    StartLocate = startLocat,
                    PalletNo = palletNo,
                    TaskNo = result.TaskList.TaskNo,
                    EndLocate = result.TaskList.EndLocate,
                    EndRoadway = result.TaskList.EndRoadway
                };
                _db.Insertable(taskAdd).ExecuteCommand();
                endLocat = result.TaskList.EndRoadway;
                returnStr = result.TaskList.EndLocate;
            }
            else
            {
                returnStr = "-1:" + result.Message;
                return returnStr;
            }
        }
        else
        {
            returnStr = task.EndLocate;
            endLocat = task.EndRoadway;
            taskNo = task.TaskNo;
        }
        endLocat = PLCCommon.RoadwayToStationNum(endLocat, ceng);
        return returnStr;
    }
    /// <summary>
    /// 调用WMS接口申请储位接口
    /// </summary>
    /// <param name="palletNo"></param>