海波 张
12 小时以前 5321419f5fddb4e877fe90ccd90ebdc1a115af64
process/TaskProcess.cs
@@ -553,7 +553,7 @@
                            return false;
                        }
                        if (wcsTask.S_B_STATE == "未执行")
                        if (wcsTask.S_B_STATE == "未执行" || wcsTask.S_B_STATE == "已推送")
                        {
                            LogHelper.Info($"推送任务{mst.S_CODE},对应的Wcs出库任务未执行,暂不推送", "NDC");
                            return false;
@@ -1080,33 +1080,14 @@
                        result.success = true;
                        return result;
                    }
                    else if (wcsTask.S_B_STATE.Trim() != "取消" && wcsTask.S_B_STATE.Trim() != "失败" && wcsTask.S_B_STATE.Trim() != "完成")
                    else
                    {
                        var db = new SqlHelper<object>().GetInstance();
                        var qhflag = db.Queryable<WmsTaskAction>().Where(a => a.S_TASK_CODE == wcsTask.S_CODE && a.S_ACTION == "5").First();
                        LogHelper.Info($"该任务{wcsTask.S_CODE}动作信息"+JsonConvert.SerializeObject(qhflag), "取消");
                        if (qhflag != null)
                        {
                            LogHelper.Info($"该任务{wcsTask.S_CODE}已经取货完成", "取消");
                            LogHelper.Info($"该任务{wcsTask.S_CODE}已经推送", "取消");
                            result.errCode = 1;
                            result.errMsg = "任务已经取货完成,不允许取消";
                            result.errMsg = "任务已经推送,不允许取消";
                            result.success = false;
                            return result;
                        }
                        if (wcsTask.S_TYPE.Contains("入库") || wcsTask.S_TYPE.Contains("回库"))
                        {
                            ContainerHelper.delCntr(wcsTask.S_CNTR_CODE);
                            ContainerHelper.delCntrItem(wcsTask.S_CNTR_CODE);
                            ContainerHelper.delCntrLoc(wcsTask.S_CNTR_CODE);
                        }
                        WcsTask.WcsCancellTask(wcsTask);
                        TaskHelper.Fail(wcsTask);
                        TaskProcess.OperateStatus(wcsTask, 7);
                        result.errCode = 0;
                        result.errMsg = "取消成功";
                        result.success = true;
                    }
                }
            }
@@ -1769,15 +1750,35 @@
                var TOOLSTYPE = "";
                if (!string.IsNullOrEmpty(model.TOOLS_TPYE))
                {
                    TOOLSTYPE = model.TOOLS_TPYE;
                    TOOLSTYPE = model.TOOLS_TPYE;
                }
                workFlow = TaskHelper.selectWorkFlowByType(model.BUSI_TYPE, TOOLSTYPE);
                //入库按照工装和流程编号
                if (model.Task_type == 1) {
                    workFlow = TaskHelper.selectWorkFlowByType(model.BUSI_TYPE, TOOLSTYPE);
                }
                else if (model.Task_type == 2)
                {
                    //出库按照终点库区和流程编号
                    var end = LocationHelper.GetLoc(model.Location_To);
                    LogHelper.Info($"ZCSendTask出库任务下发终点信息" + JsonConvert.SerializeObject(end), "Mes任务下发");
                    if (end == null)
                    {
                        LogHelper.Info($"ZCSendTask出库任务下发失败,终点:{model.Location_To},没找到", "Mes任务下发");
                        throw new Exception($"终点:{model.Location_To},没找到");
                    }
                    workFlow = TaskHelper.selectWorkFlowByEndArea(model.BUSI_TYPE, end.S_AREA_CODE);
                    TOOLSTYPE = workFlow.TOOLSTYPE;
                }
                LogHelper.Info($"作业{model.task_no},工装类型{TOOLSTYPE}", "Mes任务下发");
                if (workFlow == null) {
                    LogHelper.Info($"ZCSendTask任务下发失败,BUSI_TYpe:{model.BUSI_TYPE},没找到对应作业流程", "Mes任务下发");
                    throw new Exception($"BUSI_TYpe:{model.BUSI_TYPE},没找到对应作业流程");