diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs index f963571..3d2e2e0 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/ChangeShiftRecordController.cs @@ -326,15 +326,15 @@ namespace APT.FO.WebApi.Controllers.Api.FO } if (!string.IsNullOrEmpty(curUser)) { - result.Data = result.Data.Where(t=>t.CURRENT_USER.Contains(curUser)).ToList(); + result.Data = result.Data.Where(t=> t.CURRENT_USER!=null && t.CURRENT_USER.Contains(curUser)).ToList(); } if (!string.IsNullOrEmpty(changeDept)) { - result.Data = result.Data.Where(t => t.CHANGE_DEPART.Contains(changeDept)).ToList(); + result.Data = result.Data.Where(t => t.CHANGE_DEPART!=null && t.CHANGE_DEPART.Contains(changeDept)).ToList(); } if (!string.IsNullOrEmpty(changeUser)) { - result.Data = result.Data.Where(t => t.CHANGE_USER.Contains(changeUser)).ToList(); + result.Data = result.Data.Where(t => t.CHANGE_USER!=null && t.CHANGE_USER.Contains(changeUser)).ToList(); } result.TotalCount = result.Data.Count(); } diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs index dac3f98..35cf3d1 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobController.cs @@ -1349,7 +1349,8 @@ namespace APT.FO.WebApi.Controllers //上个消息 T_FM_NOTIFICATION_TASK finishNotice = null; //细表 - List appdetails = new List(); + List appdetails = new List(); + List appdetailAutos = new List(); Expression> express = t => t.FORM_CODE == "FO017" && t.ENABLE_STATUS == (int)FMEnableStatusEnum.启用; if (!string.IsNullOrEmpty(param)) express = express.And(t => t.PARAM == param); @@ -1428,7 +1429,7 @@ namespace APT.FO.WebApi.Controllers var sendUserIds = new List(); //var curentApprove = appdetails.FirstOrDefault(i => i.NUM == appdetails.Min(x => x.NUM) && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Doing); //如果第一个批的人刚好是自己,加一条已办的审批记录 - var applyApprove = appdetails.Where(i => i.NUM == appdetails.Min(x => x.NUM) && i.APPROVE_USER_ID == applyUserId && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Doing).ToList(); + var applyApprove = appdetails.Where(i => i.NUM == appdetails.Min(x => x.NUM) && i.APPROVE_USER_ID == applyUserId && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Done).ToList(); if (applyApprove != null && applyApprove.Any()) { //本人默认审批,存入一条已办 @@ -1446,6 +1447,18 @@ namespace APT.FO.WebApi.Controllers curentTask.USER_NAME = users.FirstOrDefault(t => t.ID == applyUserId)?.NAME; curentTask.SOURCE_FORMCODE = approve.APPROVE_CODE; notices.Add(curentTask); + T_PF_APPROVE_DETAIL detail = new T_PF_APPROVE_DETAIL(); + detail.APPROVE_ID = approve.ID; + detail.IS_CURRENT = false; + detail.ORG_ID = approveTemp.ORG_ID; + detail.NAME = applyApprove.FirstOrDefault()?.NAME; + detail.NUM = applyApprove.FirstOrDefault() != null ? applyApprove.FirstOrDefault().NUM:0; + detail.APPROVE_ROLE_ID = applyApprove.FirstOrDefault()?.APPROVE_ROLE_ID; + detail.IS_ALLOW_UPDATE = applyApprove.FirstOrDefault() != null? applyApprove.FirstOrDefault().IS_ALLOW_UPDATE:false; + detail.APPROVE_USER_ID = applyApprove.FirstOrDefault()?.APPROVE_USER_ID; + detail.NODE_APPROVE_STATUS = (int)NodeApproveStatus.Done; + detail.NODE_APPROVE_TIME = DateTime.Now; + appdetailAutos.Add(detail); } var detailTemps = appdetails.Where(i => i.NUM == appdetails.Min(x => x.NUM) && i.APPROVE_USER_ID != applyUserId && i.NODE_APPROVE_STATUS == (int)NodeApproveStatus.Doing).ToList(); if (detailTemps != null && detailTemps.Any()) @@ -1666,7 +1679,9 @@ namespace APT.FO.WebApi.Controllers if (approve != null) AddEntityNoCommit(approve); if (appdetails != null && appdetails.Any()) - BantchAddEntityNoCommit(appdetails); + BantchAddEntityNoCommit(appdetails); + if (appdetailAutos != null && appdetailAutos.Any()) + BantchAddEntityNoCommit(appdetailAutos); if (finishNotice != null) UpdateEntityNoCommit(finishNotice); if (notices != null && notices.Any()) diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs index 17fced3..b18feb4 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/CrucialLicenseJobOutsourceController.cs @@ -294,7 +294,8 @@ namespace APT.FO.WebApi.Controllers //上个消息 T_FM_NOTIFICATION_TASK finishNotice = null; //细表 - List appdetails = new List(); + List appdetails = new List(); + List appdetailAutos = new List(); Expression> express = t => t.FORM_CODE == "FO025" && t.ENABLE_STATUS == (int)FMEnableStatusEnum.启用; if (!string.IsNullOrEmpty(param)) express = express.And(t => t.PARAM == param); @@ -389,7 +390,19 @@ namespace APT.FO.WebApi.Controllers curentTask.USER_ID = (Guid)applyUserId; curentTask.USER_NAME = users.FirstOrDefault(t => t.ID == applyUserId)?.NAME; curentTask.SOURCE_FORMCODE = approve.APPROVE_CODE; - notices.Add(curentTask); + notices.Add(curentTask); + T_PF_APPROVE_DETAIL detail = new T_PF_APPROVE_DETAIL(); + detail.APPROVE_ID = approve.ID; + detail.IS_CURRENT = false; + detail.ORG_ID = approveTemp.ORG_ID; + detail.NAME = applyApprove.FirstOrDefault()?.NAME; + detail.NUM = applyApprove.FirstOrDefault() != null ? applyApprove.FirstOrDefault().NUM : 0; + detail.APPROVE_ROLE_ID = applyApprove.FirstOrDefault()?.APPROVE_ROLE_ID; + detail.IS_ALLOW_UPDATE = applyApprove.FirstOrDefault() != null ? applyApprove.FirstOrDefault().IS_ALLOW_UPDATE : false; + detail.APPROVE_USER_ID = applyApprove.FirstOrDefault()?.APPROVE_USER_ID; + detail.NODE_APPROVE_STATUS = (int)NodeApproveStatus.Done; + detail.NODE_APPROVE_TIME = DateTime.Now; + appdetailAutos.Add(detail); } var sendUserIds = new List(); var curentApprove = appdetails.FirstOrDefault(i => i.APPROVE_USER_ID == applyUserId); @@ -574,6 +587,8 @@ namespace APT.FO.WebApi.Controllers AddEntityNoCommit(approve); if (appdetails != null && appdetails.Any()) BantchAddEntityNoCommit(appdetails); + if (appdetailAutos != null && appdetailAutos.Any()) + BantchAddEntityNoCommit(appdetailAutos); if (finishNotice != null) UpdateEntityNoCommit(finishNotice); if (notices != null && notices.Any()) diff --git a/APT.MicroApi/APT.FO.WebApi/Controllers/FireJobController.cs b/APT.MicroApi/APT.FO.WebApi/Controllers/FireJobController.cs index 2186fd1..ea5bf73 100644 --- a/APT.MicroApi/APT.FO.WebApi/Controllers/FireJobController.cs +++ b/APT.MicroApi/APT.FO.WebApi/Controllers/FireJobController.cs @@ -350,11 +350,15 @@ namespace APT.FO.WebApi.Controllers throw new Exception("动火实际结束时间必须填写"); if (entity.LEAVE_DATE == null) throw new Exception("离开现场时间必须填写"); - //if (monitorFileList == null || !monitorFileList.Any()) - // throw new Exception("必须上传完工验收附件"); + if (monitorFileList == null || !monitorFileList.Any()) + throw new Exception("必须上传完工验收附件"); var detailNeed = detailList.FirstOrDefault(t => (t.JOB_STEP == FOJobStepEnum.Ing && t.IS_CONFIRM_NEW == false) || (t.JOB_STEP == FOJobStepEnum.After && t.IS_CONFIRM_NEW == false)); - //if (detailNeed != null) - // throw new Exception("作业中或作业后未全部确认!"); + if (detailNeed != null) + throw new Exception("作业中或作业后未全部确认!"); + var detailAfterIds = detailList.Where(t => t.JOB_STEP != FOJobStepEnum.Pre).Select(m=>m.ID).ToList(); + var fileAfter = detailFileList.FirstOrDefault(t => detailAfterIds.Contains(t.FIRE_JOB_DETAIL_ID)); + if(fileAfter == null) + throw new Exception("作业中或作业后必须上传一个附件!"); //作业前不删 var noDeleteIds = detailInfos.Where(t => t.JOB_STEP == FOJobStepEnum.Pre).Select(t => t.ID).ToList(); detailIds = detailIds.Where(t => !noDeleteIds.Contains(t)).ToList(); @@ -387,11 +391,15 @@ namespace APT.FO.WebApi.Controllers throw new Exception("不可动火请稍后再进行验收"); if (entity.ACT_DATE == null) throw new Exception("动火实际开始时间必须填写"); - //if (fireFileList == null || !fireFileList.Any()) - // throw new Exception("必须上传现场条件验收附件"); + if (fireFileList == null || !fireFileList.Any()) + throw new Exception("必须上传现场条件验收附件"); var detailNeed = detailList.FirstOrDefault(t => t.JOB_STEP == FOJobStepEnum.Pre && t.IS_CONFIRM_NEW == false); if (detailNeed != null) throw new Exception("作业前未全部确认!"); + var detailPreIds = detailList.Where(t => t.JOB_STEP == FOJobStepEnum.Pre).Select(m => m.ID).ToList(); + var filePre = detailFileList.FirstOrDefault(t => detailPreIds.Contains(t.FIRE_JOB_DETAIL_ID)); + if (filePre == null) + throw new Exception("作业前必须上传一个附件!"); //作业中后不删 var noDeleteIds = detailInfos.Where(t => t.JOB_STEP != FOJobStepEnum.Pre).Select(t => t.ID).ToList(); detailIds = detailIds.Where(t => !noDeleteIds.Contains(t)).ToList(); diff --git a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs index 221e9b3..59088a2 100644 --- a/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs +++ b/APT.MicroApi/APT.SC.WebApi/Controllers/Api/BIController/BIKanBanController.cs @@ -990,7 +990,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI riskList.Add(risk); } } - result.Data.riskList = riskList; + result.Data.riskList = riskList.OrderByDescending(t=>t.totalCount).ToList(); result.Data.riskTypeList = riskTypeList; return result;