111
lss
5 天以前 79db8fda0f71b65dfe1e1c72f307b29efc565126
HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/wms/WCSHelper.cs
@@ -20,7 +20,7 @@
        {
            var res = false;
            var db = new SqlHelper<WCSTask>().GetInstance();
            task.S_B_STATE = status;
            db.Updateable(task).UpdateColumns(it => new { it.S_B_STATE }).ExecuteCommand();
@@ -70,6 +70,26 @@
            string[] statue = new string[] { "完成", "取消", "错误" };
            var task = db.Queryable<WCSTask>().Where(a => a.S_START_LOC.Trim() == loc && !statue.Contains(a.S_B_STATE.Trim())).First();
            return task;
        }
        /// <summary>
        /// 根据终点库区查找未完成的任务数量
        /// </summary>
        /// <param name="loc"></param>
        /// <returns></returns>
        internal static int GetTaskByEndArea(string area, string locType = null)
        {
            var db = new SqlHelper<WCSTask>().GetInstance();
            string[] statue = new string[] { "完成", "取消", "错误" };
            if (string.IsNullOrEmpty(locType))
            {
                return db.Queryable<WCSTask>().Where(a => a.S_END_AREA.Trim() == area && !statue.Contains(a.S_B_STATE.Trim())).Count();
            }
            else
            {
                return db.Queryable<WCSTask>().Where(a => a.S_END_AREA.Trim() == area && !statue.Contains(a.S_B_STATE.Trim())&&a.S_END_LOC.Contains(locType)).Count();
            }
        }
        /// <summary>
        /// 根据托盘编码获取完成的任务
@@ -174,20 +194,20 @@
        public static object _add;
        internal static bool AddActionRecord(string no, int state, string forkliftNo, string extData)
        {
                var db = new SqlHelper<TaskAction>().GetInstance();
                var action = new TaskAction()
                {
                    N_ACTION_CODE = state,
                    S_TASK_CODE = no,
                    S_EQ_CODE = forkliftNo,
                    S_EQ_TYPE = "agv",
                    S_DATA = extData
                };
                return db.Insertable(action).ExecuteCommand() > 0;
            var db = new SqlHelper<TaskAction>().GetInstance();
            var action = new TaskAction()
            {
                N_ACTION_CODE = state,
                S_TASK_CODE = no,
                S_EQ_CODE = forkliftNo,
                S_EQ_TYPE = "agv",
                S_DATA = extData
            };
            return db.Insertable(action).ExecuteCommand() > 0;
        }
        internal static bool CheckActionRecordExist(string no, int code)
        {
@@ -217,7 +237,7 @@
            if (task != null)
            {
                task.T_START_TIME = DateTime.Now;
                task.S_WORKSHOP_NO = agvno;
                db.Updateable(task).UpdateColumns(it => new { it.T_START_TIME, it.S_WORKSHOP_NO }).ExecuteCommand();
@@ -267,12 +287,12 @@
                        Startmodel.S_LOCK_STATE = Location.GetLockStateStr(2);
                        res = db.Updateable(Startmodel).UpdateColumns(it => new { it.N_LOCK_STATE, it.S_LOCK_STATE }).ExecuteCommand() > 0;
                    }
                    else
                    {
                        LogHelper.Info($"任务:{TN_Task.S_CODE}生成失败,起点货位不可用");
                        db.RollbackTran();
                        return false;
                    }
                    //else
                    //{
                    //    LogHelper.Info($"任务:{TN_Task.S_CODE}生成失败,起点货位不可用");
                    //    db.RollbackTran();
                    //    return false;
                    //}
                    if (Endmodel != null && Endmodel.S_LOCK_STATE.Trim() == "无")
                    {
                        Endmodel.N_LOCK_STATE = 1;