海波 张
4 天以前 265fbfa342cc03991c79934b162f26c0a6699f95
wms/TaskHelper.cs
@@ -1,4 +1,5 @@
using HH.WCS.ZhongCeJinTan.api;
using HH.WCS.ZhongCeJinTan.core;
using HH.WCS.ZhongCeJinTan.device;
using HH.WCS.ZhongCeJinTan.dispatch;
using HH.WCS.ZhongCeJinTan.util;
@@ -12,6 +13,7 @@
using System.Threading.Tasks;
using System.Web.Services.Description;
using System.Xml.Linq;
using Top.Api;
using static HH.WCS.ZhongCeJinTan.util.Settings;
using static HH.WCS.ZhongCeJinTan.wms.WcsModel;
@@ -52,6 +54,21 @@
            var task = db.Queryable<WMSTask>().Where(a => a.S_CODE.Trim() == no).First();
            return task;
        }
        internal static WMSTask GetTaskByNoType(string no, string type)
        {
            var db = new SqlHelper<WMSTask>().GetInstance();
            var task = db.Queryable<WMSTask>().Where(a => a.S_CODE == no && a.S_SCHEDULE_TYPE == type).First();
            return task;
        }
        internal static List<WMSTask> GetTaskByNoTypeList(string no, string type)
        {
            var db = new SqlHelper<WMSTask>().GetInstance();
            var task = db.Queryable<WMSTask>().Where(a => a.S_CODE == no && a.S_SCHEDULE_TYPE == type).ToList();
            return task;
        }
        //查找WCS立库任务 参数作业编码,调度类型 agv/wcs
        internal static WMSTask GetTaskByWorkNo(string no,string type)
@@ -64,7 +81,7 @@
        internal static WmsWork GetWmsWork(string no) {
            var db = new SqlHelper<WmsWork>().GetInstance();
            return db.Queryable<WmsWork>().Where(it => it.S_CODE == no).First();
            return db.Queryable<WmsWork>().Where(it => it.S_CODE == no).OrderByDescending(b=>b.T_CREATE).First();
        }
      
@@ -239,6 +256,10 @@
                    break;
                case 12:
                    CreateOneTask(operation);
                    break;
                case 99:
                    //外形检测出库两段任务
                    CreateOutTowTask(operation);
                    break;
                case 20:
                    CreateOneTask(operation);
@@ -682,6 +703,17 @@
            
            return ac;
        }
        internal static WcsSafety GetWcsSafety(string taskNo, string action)
        {
            var db = new SqlHelper<WcsSafety>().GetInstance();
            var ac = db.Queryable<WcsSafety>().Where(a => a.TaskNo == taskNo && a.Sign.ToString() == action).First();
            return ac;
        }
        /// <summary>
        /// 任务拦截
@@ -874,6 +906,14 @@
        internal static bool CreateTask(WMSTask wmsTask) {
            var db = new SqlHelper<WMSTask>().GetInstance();
             var task = db.Queryable<WMSTask>().Where(a => a.S_CODE == wmsTask.S_CODE).First();
            if (task!=null)
            {
                return false;
            }
            return db.Insertable(wmsTask).ExecuteCommand() > 0;
        }
@@ -923,6 +963,8 @@
            return db.Queryable<WorkFlow>().Where(a => a.FLOWCODE == flowCode && a.TOOLSTYPE == type).First();
        }
        //根据流程编号和起点库区查找作业流程
        public static WorkFlow selectWorkFlowByStratArea(string flowCode, string startArea)
        {
@@ -930,6 +972,14 @@
            return db.Queryable<WorkFlow>().Where(a => a.FLOWCODE == flowCode && a.STARTAREA==startArea).First();
        }
        //根据流程编号和终点库区查找作业流程
        public static WorkFlow selectWorkFlowByEndArea(string flowCode, string endArea)
        {
            var db = new SqlHelper<WorkFlow>().GetInstance();
            return db.Queryable<WorkFlow>().Where(a => a.FLOWCODE == flowCode && a.ENDAREA == endArea).First();
        }
        /// <summary>
        /// 根据任务状态获取agv任务
        /// </summary>