czw
2025-07-06 f317e966ce0872e04d1455305845c3e19fb4a532
Merge branch 'master' of http://121.37.118.194:8000/r/WMSPrjInstance/HH-0014_NongFu_QingXi
4个文件已修改
140 ■■■■■ 已修改文件
HH.WCS.QingXiNongfu/core/Monitor.cs 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.QingXiNongfu/process/DeviceProcess.cs 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.QingXiNongfu/wms/WCSHelper.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.QingXiNongfu/wms/WCSModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.QingXiNongfu/core/Monitor.cs
@@ -1752,8 +1752,8 @@
                                        var cirs = ContainerHelper.GetCntrItemRel(CNTR.FirstOrDefault().S_CNTR_CODE);
                                        if (!cirs.Any()) continue;
                                        cir = cirs.OrderByDescending(x => x.T_CREATE).FirstOrDefault();
                                        LogHelper.Info($"收缩膜 出库!{item.Key}排 [{cir.S_ITEM_CODE}-{order.SQL_ItemCode}]   [{cir.S_ITEM_NAME}-{order.SQL_ItemName}]  [{cir.S_CJ_NAME}-{order.S_CJ_NAME}]  {(cir.S_ITEM_CODE == order.SQL_ItemCode && cir.S_ITEM_NAME == order.SQL_ItemName && cir.S_CJ_NAME == order.S_CJ_NAME)}");
                                        if (cir.S_ITEM_CODE == order.SQL_ItemCode && cir.S_ITEM_NAME == order.SQL_ItemName && cir.S_CJ_NAME == order.S_CJ_NAME)
                                        LogHelper.Info($"收缩膜 出库!{item.Key}排 [{cir.S_ITEM_CODE}-{order.SQL_ItemCode}]   [{cir.S_ITEM_NAME}-{order.SQL_ItemName}]  [{cir.S_CJ_NAME}-{order.S_CJ_NAME}]  {(cir.S_ITEM_CODE == order.SQL_ItemCode && cir.S_ITEM_NAME == order.SQL_ItemName)}");
                                        if (cir.S_ITEM_CODE == order.SQL_ItemCode && cir.S_ITEM_NAME == order.SQL_ItemName)
                                        {
                                            //plg 2025年6月13日 09:08:10 
                                            Temp = new locCntItem
@@ -1797,15 +1797,15 @@
                                        {
                                            var re = TaskProcess.CreateTransport("", tagLoc.S_LOC_CODE.Trim(), loc.S_LOC_CODE, "收缩膜叉运-货架出提升机", new List<string> { tagLoc.S_CNTR_CODE }, StartBit.N_CURRENT_NUM, 1, 1, 62);
                                            LogHelper.CSucessLog($"from {tagLoc.S_LOC_CODE} to {loc.S_LOC_CODE} 收缩膜叉运-货架出提升机 ,创建{re} ");
                                            if (re)
                                            {
                                                oto.Add(oic);
                                                if (outlock == null)
                                                {
                                                    var r = new RowLock { S_LOCK_SRC = (StartBit.S_NOTE /*+ StartBit.HalfOrFull*/), T_LOCK_TIME = DateTime.Now, S_LOCK_STATE = "出库锁", S_AREA_CODE = StartBit.S_AREA_CODE, N_ROW = StartBit.N_ROW };
                                                    db.Insertable(r).ExecuteCommand();
                                                }
                                            }
                                            //if (re)
                                            //{
                                            //    oto.Add(oic);
                                            //    if (outlock == null)
                                            //    {
                                            //        var r = new RowLock { S_LOCK_SRC = (StartBit.S_NOTE /*+ StartBit.HalfOrFull*/), T_LOCK_TIME = DateTime.Now, S_LOCK_STATE = "出库锁", S_AREA_CODE = StartBit.S_AREA_CODE, N_ROW = StartBit.N_ROW };
                                            //        db.Insertable(r).ExecuteCommand();
                                            //    }
                                            //}
                                        }
                                    }
                                }
HH.WCS.QingXiNongfu/process/DeviceProcess.cs
@@ -1743,41 +1743,41 @@
            if (data.Length == 4)
            {
                //if (data == "1122")//A口工作信号
                //{
                //    if (BottlePEMInfoFullTwo(plc, plc.location[0]))
                //    {
                //    }
                //}
                //else if (data == "1221")//B口工作信号
                //{
                //    if (BottlePEMInfoFullTwo(plc, plc.location[1]))
                //    {
                //    }
                //}
                //else if (data == "1121")//B口工作信号
                //{
                //    if (BottlePEMInfoFullTwo(plc, plc.location[0]))
                //    {
                //    }
                //    if (BottlePEMInfoFullTwo(plc, plc.location[1]))
                //    {
                //    }
                //}
                if (data.Substring(1, 1) == "1")
                if (data == "1122")//A口工作信号
                {
                    if (BottlePEMInfoFull(plc, plc.location[0]))
                    if (BottlePEMInfoFullTwo(plc, plc.location[0]))
                    {
                        //设备没有托盘,或者已经有任务,不处理满托信号,返回已经取货完成
                        //3F 00 11 0d 0a
                        //PlcHelper.SendHex(plc.address, "3F00110d0a");
                    }
                }
                else if (data == "1221")//B口工作信号
                {
                    if (BottlePEMInfoFullTwo(plc, plc.location[1]))
                    {
                    }
                }
                else if (data == "1121")//B口工作信号
                {
                    if (BottlePEMInfoFullTwo(plc, plc.location[0]))
                    {
                    }
                    if (BottlePEMInfoFullTwo(plc, plc.location[1]))
                    {
                    }
                }
                //if (data.Substring(1, 1) == "1")
                //{
                //    if (BottlePEMInfoFull(plc, plc.location[0]))
                //    {
                //        //设备没有托盘,或者已经有任务,不处理满托信号,返回已经取货完成
                //        //3F 00 11 0d 0a
                //        //PlcHelper.SendHex(plc.address, "3F00110d0a");
                //    }
                //}
                //else if (data.Substring(1, 1) == "3")
                //{
                //    if (BottleCapInfoEmpty(plc, plc.location[0]))
@@ -1786,13 +1786,13 @@
                //    }
                //}
                if (data.Substring(3, 1) == "1")
                {
                    if (BottlePEMInfoFull(plc, plc.location[1]))
                    {
                        //PlcHelper.SendHex(plc.address, "3F00210d0a");
                    }
                }
                //if (data.Substring(3, 1) == "1")
                //{
                //    if (BottlePEMInfoFull(plc, plc.location[1]))
                //    {
                //        //PlcHelper.SendHex(plc.address, "3F00210d0a");
                //    }
                //}
                //else if (data.Substring(3, 1) == "3")
                //{
                //    if (BottleCapInfoEmpty(plc, plc.location[1]))
@@ -1997,23 +1997,51 @@
                }
            }
        }
        private static object locko = new object();
        static bool BottlePEMInfoFullTwo(Settings.deviceInfo plc, string location)
        {
            try
            {
                if (location != "")
                lock (locko)
                {
                    var chi = new SqlHelper<object>().GetInstance();
                    var newDb = chi.CopyNew();
                    Location endBit = null;
                    if (location == "")
                    {
                        throw new Exception("货位为空");
                    }
                    var workOrder = WCSHelper.GetWorkOrder(plc.deviceName);
                    if (workOrder == null)
                    {
                        LogHelper.Info(plc.deviceName + "没有【执行中】的工单");
                        return false;
                        throw new Exception("没有【执行中】的工单");
                    }
                    if (workOrder.SQL_UsingNow == "Y")//即产即用
                    {
                        //查询 半成品区域表 BcpQyOrder
                }
                return false;
                    else//非即产即用
                    {
                    }
                    if (endBit != null)
                    {
                        var _ctrl = LocationHelper.GetLocCntrRel(location);
                        int endLayer = endBit.N_CURRENT_NUM + 1;
                        var carryCntrs = new List<string> { _ctrl.FirstOrDefault().S_CNTR_CODE };//DateTime.Now.ToString("yyMMddHHmmss") };
                        var bb = TaskProcess.CreateTransport(workOrder.SQL_WorkNo, location, endBit.S_LOC_CODE, "满瓶坯-入库", carryCntrs, 1, endLayer, carryCntrs.Count, plc.taskPri);
                    }
                    return true;
                }
            }
            catch (Exception ex)
            {
                LogHelper.Info(plc.deviceName + $" 报错: {ex.Message}");
                return false;
            }
        }
HH.WCS.QingXiNongfu/wms/WCSHelper.cs
@@ -27,6 +27,8 @@
            return order;
        }
        //public static
        public static List<WorkOrder> GetWorkOrder(Expression<Func<WorkOrder, bool>> expression)
        {
            //|| a.SQL_State == "暂停"
HH.WCS.QingXiNongfu/wms/WCSModel.cs
@@ -288,6 +288,10 @@
    [SuGG("半成品区域表")]
    public class BcpQyOrder : BaseModel
    {
        /// <summary>
        /// 产线号
        /// </summary>
        public string SQL_PLineNo { get; set; }
    }
    [SuGG("厂家时间表")]