| | |
| | | db.Updateable(task).UpdateColumns(it => new { it.S_NOTE }).ExecuteCommand(); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | internal static WeiLiResult CancelOrder(CancelOrderModel model) |
| | | { |
| | | WeiLiResult result = new WeiLiResult(); |
| | | var db = new SqlHelper<object>().GetInstance(); |
| | | var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).ToList(); |
| | | var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.task_no).ToList(); |
| | | if (tasks.Count >= 1) |
| | | { |
| | | //流程任务数量执行超过一条 任务不允许取消 |
| | |
| | | result.msg = "流程任务执行中途不允许取消"; |
| | | return result; |
| | | } |
| | | var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).OrderByDescending(a => a.T_CREATE).First(); |
| | | var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.task_no).OrderByDescending(a => a.T_CREATE).First(); |
| | | if (task != null) |
| | | { |
| | | if (WCSHelper.CheckActionRecordExist(task.S_CODE, 4)) |
| | |
| | | if (task.N_B_STATE == 0) |
| | | { |
| | | //等待直接修改状态为取消 |
| | | WCSHelper.UpdateStatus(model.orderNo, 5); |
| | | WCSHelper.UpdateStatus(model.task_no, 5); |
| | | //result.msg = "任务等待,直接取消"; |
| | | } |
| | | else if (task.N_B_STATE != 3 && task.N_B_STATE != 4) |
| | |
| | | else |
| | | { |
| | | //已推送但是没有完成或者取消,通知hosttoagv |
| | | NDCHelper.Cancel(task.S_CODE.Trim()); |
| | | //NDCHelper.Cancel(task.S_CODE.Trim()); |
| | | NDCApi.CancelOrder(task.S_CODE.Trim()); |
| | | //result.msg = "任务取消已经发送给小车"; |
| | | } |
| | | } |
| | |
| | | else |
| | | { |
| | | //通知杭叉修改优先级 |
| | | NDCHelper.Cancel(task.S_CODE.Trim()); |
| | | //NDCHelper.Cancel(task.S_CODE.Trim()); |
| | | NDCApi.CancelOrder(task.S_CODE.Trim()); |
| | | result.msg = "修改优先级成功"; |
| | | } |
| | | } |
| | |
| | | return result; |
| | | } |
| | | |
| | | internal static ReturnResult bindCntr(bindModel model) |
| | | { |
| | | ReturnResult result = new ReturnResult() {ResultCode = -1 }; |
| | | var db = new SqlHelper<object>().GetInstance(); |
| | | |
| | | if (TaskProcess.BindLocCntr(model.S_LOC_CODE, model.S_CNTR_CODE, model.S_ITEM_CODE, model.S_BATCH_CODE)) |
| | | { |
| | | int num = model.S_CNTR_CODE.Split(',').Count(); |
| | | var locInfo = db.Queryable<Location>().Where(a => a.S_CODE == model.S_LOC_CODE).First(); |
| | | if(locInfo != null) |
| | | { |
| | | locInfo.N_CURRENT_NUM = locInfo.N_CURRENT_NUM + num > locInfo.N_CAPACITY ? locInfo.N_CAPACITY : locInfo.N_CURRENT_NUM + num; |
| | | db.Updateable(locInfo).UpdateColumns(a => new { a.N_CURRENT_NUM }).ExecuteCommand(); |
| | | result.ResultCode = 0; |
| | | } |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | internal static ReturnResult unBindCntr(unBindModel model) |
| | | { |
| | | ReturnResult result = new ReturnResult() { ResultCode = -1 }; |
| | | var db = new SqlHelper<object>().GetInstance(); |
| | | var locInfo = db.Queryable<Location>().Where(a => a.S_CODE == model.S_LOC_CODE).First(); |
| | | if(locInfo != null) |
| | | { |
| | | var cntrList = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE == model.S_LOC_CODE).ToList(); |
| | | if(cntrList.Count > 0) |
| | | { |
| | | for (int i = cntrList.Count - 1; i >= 0; i --) |
| | | { |
| | | string cntrCode = cntrList[i].S_CNTR_CODE; |
| | | db.Deleteable<CntrItemRel>().Where(a => a.S_CNTR_CODE == cntrCode).ExecuteCommand(); |
| | | db.Deleteable<LocCntrRel>().Where(a => a.S_CNTR_CODE == cntrCode).ExecuteCommand(); |
| | | db.Deleteable<Container>().Where(a => a.S_CODE == cntrCode).ExecuteCommand(); |
| | | } |
| | | } |
| | | locInfo.N_CURRENT_NUM = locInfo.N_CURRENT_NUM - 1; |
| | | if (locInfo.N_CURRENT_NUM < 0) locInfo.N_CURRENT_NUM = 0; |
| | | db.Updateable(locInfo).UpdateColumns(a => new { a.N_CURRENT_NUM }).ExecuteCommand(); |
| | | result.ResultCode = 0; |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | |
| | | //public class AddTaskModel |
| | | //{ |