1
zxx
2025-07-04 32a9985c4a3a326d4c30432374247cca5e172c93
1
7个文件已修改
75 ■■■■■ 已修改文件
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/api/WmsController.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/dispatch/RcsHelper.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/models/Location.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/models/WCSTask.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/models/smallMaterial.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/wms/WCSHelper.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/api/WmsController.cs
@@ -34,11 +34,11 @@
        [HttpPost]
        public TaskResponse autoSmallMaterial(smallMaterial model)
        public TaskResponse smallMaterial(smallMaterial model)
        {
            LogHelper.Info("autoSmallMaterial 参数:" + JsonConvert.SerializeObject(model), "WMSAPI");
            var res = TaskProcess.autoSmallMaterial(model);
            LogHelper.Info("autoSmallMaterial 返回:" + JsonConvert.SerializeObject(res), "WMSAPI");
            LogHelper.Info("smallMaterial 参数:" + JsonConvert.SerializeObject(model), "WMSAPI");
            var res = TaskProcess.smallMaterial(model);
            LogHelper.Info("smallMaterial 返回:" + JsonConvert.SerializeObject(res), "WMSAPI");
            return res;
        }
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/dispatch/RcsHelper.cs
@@ -27,6 +27,7 @@
            var response = apiHelper.Post(baseUrl + "/api/om/order", request);
            msg = $"[hanao-CreateAntsOrder] request={request} response={response}";
            Console.WriteLine(msg);
            LogHelper.Info("[hanao-CreateAntsOrder]" + msg);
            if (response != "")
            {
                try
@@ -143,7 +144,8 @@
            /// <summary>
            /// TS订单参数
            /// </summary>
            public AntsParasModel parameters { get; set; }
            //public AntsParasModel parameters { get; set; }
            public string parameters { get; set; }
            /// <summary>
            /// 订单的全局唯一ID
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/models/Location.cs
@@ -34,7 +34,7 @@
        /// </summary>
        public string S_LOCK_STATE { get; set; }
        //托盘类型
        public string S_TRAY_TYPE { get; set; }
        //public string S_TRAY_TYPE { get; set; }
        public int N_TYPE { get; set; }
        /// <summary>
        ///  0无    1入库锁    2出库锁    3其它锁
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/models/WCSTask.cs
@@ -52,9 +52,9 @@
        public string S_FRAME_CODE { get; set; }
        public string S_OP_NAME { get; set; }
        public string S_WORKSHOP_NO { get; set; }
        //存小米任务号
        public string S_WORKSHOP_NO { get; set; }
        public string S_WORKSHOP_NAME { get; set; }
        //public int N_START_LAYER { get; internal set; }
        //public int N_END_LAYER { get; internal set; }
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/models/smallMaterial.cs
@@ -10,7 +10,7 @@
        public string ts_name { get; set; }
        public string createdNamne { get; set; }
        public parameters parameter { get; set; }
        public parameters parameters { get; set; }
        public string taskID { get; set; }
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs
@@ -379,12 +379,12 @@
            {
                Console.WriteLine($"任务mst {JsonConvert.SerializeObject(mst)}");
                LogHelper.Info($"任务mst {JsonConvert.SerializeObject(mst)}", "任务");
                var startLoc = LocationHelper.GetLoc(mst.S_START_LOC);
                var endLoc = LocationHelper.GetLoc(mst.S_END_LOC);
                if (startLoc != null && endLoc != null)
                //var startLoc = LocationHelper.GetLoc(mst.S_START_LOC);
                //var endLoc = LocationHelper.GetLoc(mst.S_END_LOC);
                if (mst.S_START_LOC != null && mst.S_END_LOC != null)
                {
                    string src = $"\"src\":\"{startLoc.S_AGV_SITE}\",";
                    string dst = $"\"dst\":\"{endLoc.S_AGV_SITE}\"";
                    string src = $"\"src\":\"{mst.S_START_LOC}\",";
                    string dst = $"\"dst\":\"{mst.S_END_LOC}\",";
                    string carrier_type_id = $"\"carrier_type_id\":\"-99\"";
                    string parmeS = "{";
                    string parmeD = "}";
@@ -396,7 +396,12 @@
                    model.priority = 1;
                    model.dead_line = DateTime.Now.ToString();
                    model.ts_name = mst.S_TYPE;
                    model.parameters = parme;
                    //model.parameters = new AntsParasModel {
                    //    src = mst.S_START_LOC,
                    //    dst = mst.S_END_LOC,
                    //    carrier_type_id="-99"
                    //};
                    var res = RcsHelper.CreateAntsOrder(model);
                    if (res)
                    {
@@ -963,65 +968,66 @@
                switch (model.ts_name)
                {
                    case "p2p":
                        startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameter.src).First();
                        startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameters.src).First();
                        if (startLoc == null || startLoc.N_LOCK_STATE != 0 || startLoc.C_ENABLE != "Y")
                        {
                            Message = $"{model.parameter.src}库位已被锁定!";
                            Message = $"{model.parameters.src}库位已被锁定!";
                        }
                        endLocStr = model.parameter.dst;
                        endLocStr = model.parameters.dst;
                        
                        break;
                    case "p2a":
                        startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameter.src).First();
                        startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameters.src).First();
                        if (startLoc == null || startLoc.N_LOCK_STATE != 0 || startLoc.C_ENABLE != "Y")
                        {
                            Message = $"{model.parameter.src}库位已被锁定!";
                            Message = $"{model.parameters.src}库位已被锁定!";
                        }
                        var endLoc = InWorkTransport(model.parameter.dst_area);
                        var endLoc = InWorkTransport(model.parameters.dst_area);
                        if (endLoc==null)
                        {
                            //如果没找到就等第一条
                            endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameter.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE;
                            endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameters.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE;
                        }
                        break;
                    case "a2p":
                        startLoc = OutWorkTransport(model.parameter.src_area);
                        startLoc = OutWorkTransport(model.parameters.src_area);
                        if (startLoc==null)
                        {
                            Message = $"{model.parameter.dst}库区没有可出货位!";
                            Message = $"{model.parameters.dst}库区没有可出货位!";
                        }
                        endLocStr = model.parameter.dst;
                        endLocStr = model.parameters.dst;
                        break;
                    case "a2a":
                        startLoc = OutWorkTransport(model.parameter.src_area);
                        startLoc = OutWorkTransport(model.parameters.src_area);
                        if (startLoc == null)
                        {
                            Message = $"{model.parameter.src}库区没有可出货位!";
                            Message = $"{model.parameters.src}库区没有可出货位!";
                        }
                        var endLoc1 = InWorkTransport(model.parameter.dst_area);
                        var endLoc1 = InWorkTransport(model.parameters.dst_area);
                        if (endLoc1 == null)
                        {
                            //如果没找到就等第一条
                            endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameter.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE;
                            endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameters.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE;
                        }
                        break;
                    case "p2u":
                        startLoc = OutWorkTransport(model.parameter.src);
                        startLoc = OutWorkTransport(model.parameters.src);
                        if (startLoc == null)
                        {
                            Message = $"{model.parameter.src}库区没有可出货位!";
                            Message = $"{model.parameters.src}库区没有可出货位!";
                        }
                        endLocStr = "";
                        break;
                }
                LogHelper.Info($"bigMaterial  接收参数{JsonConvert.SerializeObject(model) }");
                //创建托盘货位绑定关系
                string trayCode = ContainerHelper.GenerateCntrNo();
                //绑定起点货位(产线)和物料
                ContainerHelper.BindLocCntrsXm(startLoc.S_CODE, trayCode, model.parameter.sku, "", model.parameter.BatchNo, model.parameter.issueMode, model.parameter.num);
                ContainerHelper.BindLocCntrsXm(startLoc.S_CODE, trayCode, model.parameters.sku, "", model.parameters.BatchNo, model.parameters.issueMode, model.parameters.num);
                var locCntrRel = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE == startLoc.S_CODE).First();
                //创建任务
@@ -1070,7 +1076,7 @@
        }
        
        public static TaskResponse autoSmallMaterial(smallMaterial model) {
        public static TaskResponse smallMaterial(smallMaterial model) {
            var db = new SqlHelper<Location>().GetInstance();
            string Message = null;
HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/wms/WCSHelper.cs
@@ -1,4 +1,5 @@
using HH.WCS.XiaoMi.util;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -140,7 +141,7 @@
                //N_CNTR_COUNT = cntrCount
            };
            LogHelper.Info($"WCSTask参数:======{JsonConvert.SerializeObject(TN_Task)}");
            return CreateTask(TN_Task);
        }
        //小米货架