lss
4 天以前 9cba325e0d7c30644606e63e5df01faba0c42038
HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs
@@ -168,6 +168,7 @@
                            //井松叠盘机安全交互
                            if (TN_Task.S_NOTE == "空托回库")
                            {
                                LogHelper.Info($"-------叠盘机安全请求------");
                                var Device = Settings.deviceInfos.Where(a => a.TN_Location == TN_Task.S_START_LOC).FirstOrDefault();
                                if (Device != null)
                                {
@@ -220,9 +221,20 @@
                        }
                        if (TN_Task.S_NOTE == "空托回库")
                        {
                            LogHelper.Info($"-------叠盘机安全请求------");
                            var Device = Settings.deviceInfos.Where(a => a.TN_Location == TN_Task.S_START_LOC).FirstOrDefault();
                            if (Device != null)
                            {
                                if (!S7Helper.WriteDpj(Device.address, 1002, 0))
                                {
                                    Task.Run(() =>
                                    {
                                        while (!S7Helper.WriteDpj(Device.address, 1002, 0))
                                        {
                                            Thread.Sleep(1000);
                                        }
                                    });
                                }
                                //写入失败重新写入
                                if (!S7Helper.WriteDpj(Device.address, 1001, 1))
                                {
@@ -234,16 +246,7 @@
                                        }
                                    });
                                }
                                if (!S7Helper.WriteDpj(Device.address, 1002, 0))
                                {
                                    Task.Run(() =>
                                    {
                                        while (!S7Helper.WriteDpj(Device.address, 1002, 0))
                                        {
                                            Thread.Sleep(1000);
                                        }
                                    });
                                }
                            }
                            else
                            {
@@ -354,6 +357,7 @@
            catch (Exception ex)
            {
                LogHelper.Info($"OperateReq Error ==》{ex.ToString()}");
                throw ;
            }
@@ -473,6 +477,17 @@
                Console.WriteLine($"任务:{mst.S_CODE},起点仓库:{mst.S_START_WH}已经禁用推送");
                return false;
            }
            var sendTask = db.Queryable<SendTask>().Where(a => a.AREA_CODE == mst.S_END_AREA && a.able == "1").First();
            if (sendTask != null)
            {
                int taskNumber = WCSHelper.GetTaskByEndArea(sendTask.AREA_CODE, sendTask.loctioncode);
                LogHelper.Info($"任务:{mst.S_CODE},终点仓库:{sendTask.AREA_CODE},货位类型:{sendTask.loctioncode},存在任务数量:{taskNumber},限制任务数量:{sendTask.max}");
                if (taskNumber >= sendTask.max)
                {
                    Console.WriteLine($"任务:{mst.S_CODE},以达到限制推送数量,已经禁用推送");
                    return false;
                }
            }
            var mstbyEqno = db.Queryable<WCSTask>().Where(a => a.S_EQ_NO == mst.S_EQ_NO).ToList();
            if (mstbyEqno.Count() == 1)
@@ -574,7 +589,7 @@
            var db = new SqlHelper<object>().GetInstance();
            var result = false;
            var start = "0"; var end = "0";
            var taskType = mst.S_TYPE.Trim();
           // var taskType = mst.S_TYPE.Trim();
            var list = db.Queryable<Location>().ToList().Count;
            // if (mst.N_B_STATE == 0) {
@@ -878,18 +893,30 @@
                        info = "agv已完成送料任务";
                        break;
                }
                string message = "1";
                string message = null;
                if (status == 7) { message = "agv任务已取消"; }
                int flag = 0;
                if (mst.S_NOTE == "粉料")
                {
                    flag = 1;
                }
                string number = mst.S_EQ_NO;
                if (!string.IsNullOrEmpty(mst.S_MES_NO))
                {
                    number = mst.S_MES_NO;
                }
                //List<StatusArrive> statusArrives = new List<StatusArrive>();
                StatusArrive statusArrive = new StatusArrive();
                statusarrive.UseToken = "iFQ5fExGrLYLXliHYWzs";
                statusArrive.TaskNumber = mst.S_EQ_NO;
                statusArrive.LocationNum = mst.S_END_LOC;
                statusArrive.TaskNumber = number;
                if (status == 1 || status == 3 || status == 4)
                {
                    statusArrive.LocationNum = mst.S_START_LOC;
                }
                else
                {
                    statusArrive.LocationNum = mst.S_END_LOC;
                }
                statusArrive.Time = DateTime.Now.ToString();
                statusArrive.Status = status.ToString();
                statusArrive.Rfid = mst.S_CNTR_CODE;
@@ -956,7 +983,7 @@
                //物料到位接口和状态反馈同时调IIOT,为了区分id,物料到位长度加一区分
                request.RequestId = "杭叉AGV" + time + "1";
                request.UseToken = "iFQ5fExGrLYLXliHYWzs";
                MesItemBackModel mesItemBackModel = new MesItemBackModel();
                mesItemBackModel.TaskNumber = MesNo;
@@ -965,7 +992,7 @@
                mesItemBackModel.LocationNum = mst.S_END_LOC;
                mesItemBackModel.Result = "1";
                mesItemBackModel.ArricalTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
                if (cntritem != null)
                {
                    string curBagNum = null;
@@ -997,9 +1024,9 @@
                        Qty = cntritem.F_WEIGHT,
                        PartLevel = cntritem.LEV,
                        WmsLot = cntritem.WmsLot,
                        WeightBag = weightBag,
                        WeightBag = initBagNum,
                        CurBagNum = curBagNum,
                        InitBagNum = initBagNum
                        InitBagNum = weightBag
                    });