1
pulg
17 小时以前 8741f7e84dc7c0a1150c92758ebb2cf4b7d18c73
HH.WCS.QingXiNongfu/process/TaskProcess.cs
@@ -78,9 +78,11 @@
            if (bbbbbbb)
            {
                bbbbbbb = false;
                //UpdateElevatorTask(mst);
                //todo: 如果是电梯卸货任务电梯任务中间表状态,如
                if (BeenOver)
                bbbbbbb = TaskHelper.CheckActionRecordExist(mst.S_TASK_NO, "5");
                if (BeenOver || (mst.S_TYPE.Contains("成品满框") && bbbbbbb))
                {
                    //if (mst.S_TYPE.Trim().Contains("翻斗机叫满"))
                    //{
@@ -399,7 +401,6 @@
            //new List<string> { "成品满框-入库", "" }
            if (state == 6 || state == 5)
            {
                LogHelper.Info($"任务类型:{mst.S_TYPE}- 动作:{state}. 是否5算6?{mst.S_TYPE.Contains("成品满框") || mst.S_TYPE.Contains("备货")} ");
                if (mst.S_TYPE.Contains("备货"))
                {
@@ -416,16 +417,14 @@
                    goto vvv;
                }
                if (mst.S_TYPE.Trim() == "J空瓶坯-出库")
                {
                    mst.S_CNTRS = "J" + Settings.GetTimeStamp();
                }
                if (mst.S_TYPE.Trim() == "F空瓶坯-出库")
                {
                    mst.S_CNTRS = "F" + Settings.GetTimeStamp();
                }
                //if (mst.S_TYPE.Trim() == "J空瓶坯-出库")
                //{
                //    mst.S_CNTRS = "J" + Settings.GetTimeStamp();
                //}
                //if (mst.S_TYPE.Trim() == "F空瓶坯-出库")
                //{
                //    mst.S_CNTRS = "F" + Settings.GetTimeStamp();
                //}
                //成品空框 不需要绑筐
                if (!mst.S_TYPE.Trim().Contains("成品-空托上线")
                    && mst.S_TYPE.Trim() != "满瓶坯-入库"
@@ -434,9 +433,11 @@
                    && mst.S_TYPE.Trim() != "青溪纸箱搬运物料"
                    && !mst.S_TYPE.Trim().Contains("自由点对点"))
                {
                    CacheBitUpdate(mst, load: false, mst.S_NOTE);
                    if (mst.S_END_LOC != "YWLT1TSJ")
                    {
                        CacheBitUpdate(mst, load: false, mst.S_NOTE);
                    }
                }
                if (mst.S_TYPE.Trim().Contains("成品-空托上线"))
                {
@@ -480,7 +481,8 @@
                    {
                        // to.AlQty += mst.S_CNTRS.Split(',').Length;// mst.S_CNTRS.Substring(1).Split('v').Length;
                        to.OutNum -= mst.S_CNTRS.Split(',').Length;
                        db.Updateable(to).UpdateColumns(it => new { it.OutNum }).ExecuteCommand();
                        var ggi = db.Updateable(to).UpdateColumns(it => new { it.OutNum }).ExecuteCommand();
                        LogHelper.Info($"更新 提升机上料工单表数量为 {to.OutNum} 影响行数为:{ggi}");
                    }
                }
@@ -845,7 +847,6 @@
                            return true;
                        });
                    }
                }
                else if (mst.S_TYPE.Trim() == "空瓶坯-出库" || mst.S_TYPE.Trim().Contains("瓶盖-空上机") || mst.S_TYPE.Trim().Contains("翻斗机叫满"))
                {
@@ -1112,6 +1113,12 @@
            {
                CacheBitCancelUpdate(mst, out r, true);
            }
            if (state == 9)
            {
                CacheBitUpdate(mst, load: true);
                var g = LocationHelper.UnLockLoc(mst.S_END_LOC.Trim());
                var T = LocationHelper.UnLockLoc(mst.S_START_LOC.Trim());
            }
            return r;
        }
@@ -1302,7 +1309,7 @@
                                "start DD ",
                                start.ToString(),
                                "-",
                                TRow
                                FRow
                                }), "");
                        }
                        else
@@ -1349,6 +1356,61 @@
                        else return false;
                    }
                }
                else if (taskType.Contains("瓶坯翻斗机空托"))
                {
                    start = LocationHelper.GetAgvSite(mst.S_START_LOC);
                    end = LocationHelper.GetAgvSite(mst.S_END_LOC, "2");
                    LogHelper.Info($"瓶坯机翻斗机任务 起点终点对应的agv站点 start {start} end {end}  任务:" + mst.S_TASK_NO);
                }
                else if (taskType.Contains("瓶坯翻斗机满托"))
                {
                    start = LocationHelper.GetAgvSite(mst.S_START_LOC, "2");
                    end = LocationHelper.GetAgvSite(mst.S_END_LOC);
                    LogHelper.Info($"瓶坯机翻斗机任务 起点终点对应的agv站点 start {start} end {end}  任务:" + mst.S_TASK_NO);
                }
                //else if (taskType.Contains("收缩膜叉运-入库") || taskType.Contains("收缩膜叉运-入库") || taskType.Contains("收缩膜叉运-货架出提升机"))
                //{
                //    var ts = 5;
                //    start = LocationHelper.GetAgvSite(mst.S_START_LOC);//起点站点
                //    end = LocationHelper.GetAgvSite(mst.S_END_LOC);//终点站点
                //    var dic = new Dictionary<string, string>();
                //    dic.Add("From", start.ToString());
                //    dic.Add("To", end.ToString());
                //    dic.Add("FUNC", "0");
                //    dic.Add("DATA", "0");
                //    int height = 0;
                //    var itemcode = "";
                //    var ItemLayer = 0;
                //    var db = new SqlHelper<object>().GetInstance();
                //    var cirs = ContainerHelper.GetCntrItemRel(mst.S_CNTRS.Split(',').ToList().FirstOrDefault()).First();
                //    LogHelper.Info($"原物料 收缩膜叉运 容器物料表数据{JsonConvert.SerializeObject(cirs)}", "HosttoagvTask");
                //    if (cirs != null)
                //    {
                //        var ItemF = db.Queryable<ItemInfo>().Where(a => a.S_ITEM_CODE == cirs.S_ITEM_CODE).First();
                //        itemcode = ItemF.S_ITEM_CODE;
                //        ItemLayer = ItemF.ItemLayer;
                //        if (mst.N_START_LAYER < 3 || mst.N_END_LAYER < 3)
                //        {
                //            height = ItemF.trayHeight;
                //        }
                //        else
                //        {
                //            height = ItemF.trayHeight1;
                //        }
                //    }
                //    dic.Add("ItemHeight", height.ToString());
                //    dic.Add("StaItemHeight", "0");
                //    dic.Add("TrayType", $"{mst.N_START_LAYER}{mst.N_END_LAYER}");
                //    var ggh = NDC.AddTaskNew(ts, mst.N_PRIORITY, mst.S_TASK_NO, dic);
                //    if (ggh)
                //    {
                //        TaskHelper.UpdateStatus(mst, "已推送");
                //        result = true;
                //        GeneralInterFaceFunc(mst, 8 + "");
                //    }
                //}
                //else if ( mst.S_END_LAREA == "WJBQDDKQ" || mst.S_END_LAREA == "SXBQDDKQ"|| mst.S_START_LAREA == "WJBQDDKQ" ||mst.S_START_LAREA == "SXBQDDKQ" )
                //{
                //    if (start == 0)
@@ -1432,7 +1494,7 @@
                            "start DD ",
                            start.ToString(),
                            "-",
                            TRow
                            FRow
                            }), "");
                        }
                        else
@@ -1447,7 +1509,7 @@
                            "start agv点",
                            start.ToString(),
                            "-",
                            TRow
                            FRow
                            }), "");
                        }
                    }
@@ -1535,6 +1597,7 @@
                LogHelper.Info("SendTask " + mst.S_TASK_NO);
                Console.WriteLine("start=" + start.ToString());
                Console.WriteLine("end= " + end.ToString());
                NDC.AGVResult res = NDC.AddNewOrder(TSNo, new Dictionary<string, string>
                {
                    {