审批增加本人默认待办

This commit is contained in:
何美荣 2026-01-29 18:02:10 +08:00
parent c0449b7993
commit 0db60e5ee0

View File

@ -324,6 +324,7 @@ namespace APT.BaseData.Services.Services.FM
T_FM_NOTIFICATION_TASK finishNotice = null;
//发消息
T_FM_NOTIFICATION_TASK notice = null;
T_FM_NOTIFICATION_TASK curentTask = null;
//细表
List<T_PF_APPROVE_DETAIL> appdetails = new List<T_PF_APPROVE_DETAIL>();
if (operaterID == null)
@ -486,10 +487,11 @@ namespace APT.BaseData.Services.Services.FM
//当前节点
T_PF_APPROVE_DETAIL curentApprove = null;
string JsonApproveDetail = string.Empty;
GetApproveNodes(appdetails, ref curentApprove, ref JsonApproveDetail);
DealOperateApproveDetail(ref sendMessage, operaterID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove);//整理操作者审批流相关信息 wyw
DealOperateApproveDetail(ref sendMessage, operaterID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove,ref curentTask);//整理操作者审批流相关信息 wyw
if (sendMessage)
{
@ -621,7 +623,9 @@ namespace APT.BaseData.Services.Services.FM
if (finishNotice != null && finishNotice.ID != Guid.Empty)
UpdateEntityNoCommit(finishNotice, "NOTICE_STATUS", "TASK_DT", "MODIFIER_ID");
if (notice != null)
AddEntityNoCommit(notice);
AddEntityNoCommit(notice);
if (curentTask != null)
AddEntityNoCommit(curentTask);
if (listBSLog != null && listBSLog.Any())
BantchSaveEntityNoCommit(listBSLog);//有修改和新增
});
@ -806,6 +810,7 @@ namespace APT.BaseData.Services.Services.FM
}
List<T_PF_APPROVE_TEMP> listApproveTemp = approveTemplist.ToList();
T_FM_USER userTemp = null;
T_FM_NOTIFICATION_TASK curentTask = null;
if (listParam != null && listParam.Count > 0)
{
#region
@ -871,12 +876,13 @@ namespace APT.BaseData.Services.Services.FM
//当前节点
T_PF_APPROVE_DETAIL curentApprove = null;
T_PF_APPROVE_DETAIL curentApprove = null;
string JsonApproveDetail = string.Empty;
GetApproveNodes(appdetailsTemp, ref curentApprove, ref JsonApproveDetail);// GetApproveNodes(appdetails, ref curentApprove);
bool isSendMessagePer = isSendMessage;//当前是否发送待办
DealOperateApproveDetail(ref isSendMessagePer, operaterID, ref appdetailsTemp, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove);//整理操作者审批流相关信息
DealOperateApproveDetail(ref isSendMessagePer, operaterID, ref appdetailsTemp, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove, ref curentTask);//整理操作者审批流相关信息
if (isSendMessagePer)
{
@ -1001,7 +1007,7 @@ namespace APT.BaseData.Services.Services.FM
string JsonApproveDetail = string.Empty;
GetApproveNodes(appdetails, ref curentApprove, ref JsonApproveDetail);
DealOperateApproveDetail(ref isSendMessage, operaterID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove);//整理操作者审批流相关信息
DealOperateApproveDetail(ref isSendMessage, operaterID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove,ref curentTask);//整理操作者审批流相关信息
if (isSendMessage)
{
@ -1056,7 +1062,9 @@ namespace APT.BaseData.Services.Services.FM
if (finishNotice != null)
UpdateEntityNoCommit(finishNotice, "NOTICE_STATUS", "TASK_DT", "MODIFIER_ID");
if (listNotice.Count > 0)
BantchAddEntityNoCommit(listNotice);
BantchAddEntityNoCommit(listNotice);
if (curentTask!=null)
AddEntityNoCommit(curentTask);
});
//如果 审批流需要执行默认审批 调用 回调方法
@ -1135,7 +1143,8 @@ namespace APT.BaseData.Services.Services.FM
List<T_PF_APPROVE> listApprove = new List<T_PF_APPROVE>();
List<T_BS_OPERATE_LOG> listBSLog = new List<T_BS_OPERATE_LOG>();
List<T_PF_APPROVE_DETAIL> appdetails = new List<T_PF_APPROVE_DETAIL>();
List<T_PF_APPROVE_DETAIL> appdetailsTemp = null;
List<T_PF_APPROVE_DETAIL> appdetailsTemp = null;
T_FM_NOTIFICATION_TASK curentTask = null;
IEnumerable<T_PF_APPROVAL_ROLE> iEnumApprovalRole = null;
//上个消息
T_FM_NOTIFICATION_TASK finishNotice = null;
@ -1326,7 +1335,7 @@ namespace APT.BaseData.Services.Services.FM
GetApproveNodes(appdetailsTemp, ref curentApprove, ref JsonApproveDetail);// GetApproveNodes(appdetails, ref curentApprove);
bool isSendMessagePer = isSendMessage;//当前是否发送待办
DealOperateApproveDetail(ref isSendMessagePer, operaterID, ref appdetailsTemp, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove);//整理操作者审批流相关信息
DealOperateApproveDetail(ref isSendMessagePer, operaterID, ref appdetailsTemp, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove, ref curentTask);//整理操作者审批流相关信息
if (isSendMessagePer)
{
@ -1469,7 +1478,7 @@ namespace APT.BaseData.Services.Services.FM
string JsonApproveDetail = string.Empty;
GetApproveNodes(appdetails, ref curentApprove, ref JsonApproveDetail);
DealOperateApproveDetail(ref isSendMessage, operaterID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove);//整理操作者审批流相关信息
DealOperateApproveDetail(ref isSendMessage, operaterID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove,ref curentTask);//整理操作者审批流相关信息
if (isSendMessage)
{
@ -1543,7 +1552,9 @@ namespace APT.BaseData.Services.Services.FM
if (finishNotice != null)
UpdateEntityNoCommit(finishNotice, "NOTICE_STATUS", "TASK_DT", "MODIFIER_ID");
if (listNotice.Count > 0)
BantchAddEntityNoCommit(listNotice);
BantchAddEntityNoCommit(listNotice);
if (curentTask != null)
AddEntityNoCommit(curentTask);
});
//如果 审批流需要执行默认审批 调用 回调方法
@ -2075,7 +2086,7 @@ namespace APT.BaseData.Services.Services.FM
/// <param name="listDATA_ID"></param>
/// <param name="approve"></param>
/// <param name="curentApprove"></param>
private static void DealOperateApproveDetail(ref bool isSendMessage, Guid? operaterID, ref List<T_PF_APPROVE_DETAIL> appdetails, ref string CALLBACK_INTERFACE, List<string> listDATA_ID, T_PF_APPROVE approve, ref T_PF_APPROVE_DETAIL curentApprove)
private static void DealOperateApproveDetail(ref bool isSendMessage, Guid? operaterID, ref List<T_PF_APPROVE_DETAIL> appdetails, ref string CALLBACK_INTERFACE, List<string> listDATA_ID, T_PF_APPROVE approve, ref T_PF_APPROVE_DETAIL curentApprove,ref T_FM_NOTIFICATION_TASK curentTask)
{
if (appdetails != null && appdetails.Count > 0)
{
@ -2083,6 +2094,20 @@ namespace APT.BaseData.Services.Services.FM
var approveOperater = appdetails.FirstOrDefault(e => e.APPROVE_USER_ID == operaterID);
if (approveOperater != null)
{
//本人默认审批,存入一条已办
curentTask = new T_FM_NOTIFICATION_TASK();
curentTask.CODE = DateTime.Now.ToString("yyyyMMddHHmmss");
curentTask.NOTICE_TITLE = approve.NAME + "审批";
curentTask.SOURCE_DATA_ID = approve.ID;
curentTask.ORG_ID = approve.ORG_ID;
curentTask.ID = Guid.NewGuid();
curentTask.TASK_STARTDT = DateTime.Now;
curentTask.TASK_ENDDT = DateTime.Now.AddHours(24);
curentTask.NOTICE_TYPE = (int)FMNoticeTypeEnum.;
curentTask.NOTICE_STATUS = (int)FMNoticeStatusEnum.;
curentTask.USER_ID = (Guid)operaterID;
curentTask.USER_NAME = approveOperater.Nav_ApproveUser?.NAME;
curentTask.SOURCE_FORMCODE = approve.APPROVE_CODE;
//设置为已审批
approveOperater.IS_CURRENT = false;
approveOperater.NODE_APPROVE_STATUS = (int)NodeApproveStatus.Done;
@ -2817,9 +2842,10 @@ namespace APT.BaseData.Services.Services.FM
finishTask = NotificationTaskService.GetTaskFinishModel(finishTaskId.Value, taskEndSourceFormCode);//wyw 之前方法 巡回安全检查填写会报错
}
T_PF_APPROVE_DETAIL curentApprove = null;
T_PF_APPROVE_DETAIL curentApprove = null;
T_FM_NOTIFICATION_TASK curentTask = null;
bool isMsg = false;
DealOperateApproveDetail(ref isMsg, LoginID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove);//整理操作者审批流相关信息 wyw
DealOperateApproveDetail(ref isMsg, LoginID, ref appdetails, ref CALLBACK_INTERFACE, listDATA_ID, approve, ref curentApprove,ref curentTask);//整理操作者审批流相关信息 wyw
if (curentApprove == null)
{
//Msg = "获取审批流当前节点信息失败";