工作票审批,交接班虚拟字段查询

This commit is contained in:
何美荣 2026-05-26 14:04:49 +08:00
parent 0d88654fdb
commit 04d7a3a015
3 changed files with 38 additions and 8 deletions

View File

@ -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();
}

View File

@ -1349,7 +1349,8 @@ namespace APT.FO.WebApi.Controllers
//上个消息
T_FM_NOTIFICATION_TASK finishNotice = null;
//细表
List<T_PF_APPROVE_DETAIL> appdetails = new List<T_PF_APPROVE_DETAIL>();
List<T_PF_APPROVE_DETAIL> appdetails = new List<T_PF_APPROVE_DETAIL>();
List<T_PF_APPROVE_DETAIL> appdetailAutos = new List<T_PF_APPROVE_DETAIL>();
Expression<Func<T_PF_APPROVE_TEMP, bool>> 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<Guid>();
//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())

View File

@ -294,7 +294,8 @@ namespace APT.FO.WebApi.Controllers
//上个消息
T_FM_NOTIFICATION_TASK finishNotice = null;
//细表
List<T_PF_APPROVE_DETAIL> appdetails = new List<T_PF_APPROVE_DETAIL>();
List<T_PF_APPROVE_DETAIL> appdetails = new List<T_PF_APPROVE_DETAIL>();
List<T_PF_APPROVE_DETAIL> appdetailAutos = new List<T_PF_APPROVE_DETAIL>();
Expression<Func<T_PF_APPROVE_TEMP, bool>> 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<Guid>();
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())