zhao
2021-07-09 0821715ebc11d3934d0594a1cc2c39686d808906
HH.WMS.BLL/SysMgr/TN_WM_TASKBLL.cs
@@ -175,6 +175,48 @@
            });
        }
        public OperateResult ChangeWay(TN_WM_TASKEntity task, AutoBomLocationEntity locationModel, AutoBomStockAreaEntity locationArea, string type)
        {
            var oldLocationCode = type.Equals("start") ? task.CN_S_START_BIT : task.CN_S_END_BIT;
            return UseTransaction(trans =>
            {
                //锁定改道后的货位使用状态和锁定状态
                if (locationArea.CN_C_IS_CONTROL_QTY.Equals("Y"))
                    CreateDAL<TN_WM_LOCATION_EXTDAL>().UpdateStateAndTaskNo(task.CN_S_TASK_NO, locationModel.CN_S_LOCATION_CODE, Constants.Location_State_OutLock, "", null, "");
                if (type.Equals("start"))
                {
                    //修改任务库区和货位
                    CreateDAL<DapperDAL<TN_WM_TASKEntity>>().Update(new
                    {
                        CN_S_START_BIT = locationModel.CN_S_LOCATION_CODE,
                        CN_S_START_AREA = locationModel.CN_S_AREA_CODE,
                        CN_C_START_IS_CONTROL_QTY = locationArea.CN_C_IS_CONTROL_QTY,
                        CN_S_START_CONTROL_INV = locationArea.CN_C_IS_INVENTORY,
                        CN_S_TASK_TYPE = "改道"
                    },
                        new { CN_S_TASK_NO = task.CN_S_TASK_NO });
                }
                else
                {
                    CreateDAL<DapperDAL<TN_WM_TASKEntity>>().Update(new
                    {
                        CN_S_END_BIT = locationModel.CN_S_LOCATION_CODE,
                        CN_S_END_AREA = locationModel.CN_S_AREA_CODE,
                        CN_C_END_IS_CONTROL_QTY = locationArea.CN_C_IS_CONTROL_QTY,
                        CN_S_END_CONTROL_INV = locationArea.CN_C_IS_INVENTORY,
                        CN_S_TASK_TYPE = "改道"
                    },
                        new { CN_S_TASK_NO = task.CN_S_TASK_NO });
                }
                //将原来的货位置为正常
                CreateDAL<DapperDAL<TN_WM_LOCATION_EXTEntity>>().Update(new { CN_S_LOCATION_STATE = Constants.Location_State_Normal }, new { CN_S_LOCATION_CODE = oldLocationCode }, trans);
                Log.Info("改道", "ChangeWay接口,更改任务起点,任务号:" + task.CN_S_TASK_NO + ",起点更改为:" + locationModel.CN_S_LOCATION_CODE
                + ",起点状态更改为:" + Constants.Location_State_OutLock
                + ",原起点" + oldLocationCode + "的状态更改为:" + Constants.Location_State_Normal);
            });
        }
        #endregion
        #region DELETE
@@ -877,7 +919,7 @@
                    taskEntity.CN_S_END_BIT = executeStatePara.transportTask.CN_S_START_BIT;
                    taskEntity.CN_S_STATE = Constants.TaskState_NoExecuted;
                    taskEntity.CN_S_STOCK_CODE = executeStatePara.transportTask.CN_S_STOCK_CODE;
                    taskEntity.CN_S_STOCK_CODE = executeStatePara.transportTask.CN_S_STOCK_CODE;
                    taskEntity.CN_S_START_AREA = ire.areaCode;
                    taskEntity.CN_S_END_AREA = executeStatePara.transportTask.CN_S_START_AREA;
                    taskEntity.CN_N_PRIORITY = 1;