This commit is contained in:
何美荣 2026-03-25 18:08:27 +08:00
parent 6ff6764e3b
commit 2f25f52f42
3 changed files with 79 additions and 3 deletions

View File

@ -308,7 +308,13 @@ namespace APT.BaseData.Domain.IServices.FM
/// <param name="appdetails">审批明细</param> /// <param name="appdetails">审批明细</param>
/// <param name="taskNext">下一个审批待办</param> /// <param name="taskNext">下一个审批待办</param>
/// <param name="taskLast">上一个审批待办</param> /// <param name="taskLast">上一个审批待办</param>
void TaskToHead(IEnumerable<T_PF_APPROVE_DETAIL> appdetails, T_FM_NOTIFICATION_TASK taskNext, List<T_FM_NOTIFICATION_TASK> listModelNext, T_FM_NOTIFICATION_TASK taskLast); void TaskToHead(IEnumerable<T_PF_APPROVE_DETAIL> appdetails, T_FM_NOTIFICATION_TASK taskNext, List<T_FM_NOTIFICATION_TASK> listModelNext, T_FM_NOTIFICATION_TASK taskLast);
/// <summary>
/// 审批流 待办处理 判断到总部数据
/// </summary>
/// <param name="appdetails">审批明细</param>
/// <param name="taskNext">下一个审批待办</param>
/// <param name="taskLast">上一个审批待办</param>
void TaskToHeads(IEnumerable<T_PF_APPROVE_DETAIL> appdetails, List<T_FM_NOTIFICATION_TASK> taskNexts, List<T_FM_NOTIFICATION_TASK> listModelNext, T_FM_NOTIFICATION_TASK taskLast);
} }
} }

View File

@ -643,7 +643,7 @@ namespace APT.BaseData.Services.Services.FM
#region //涉及到总部的人员 待办 直接把数据传到总部去 #region //涉及到总部的人员 待办 直接把数据传到总部去
//待办同步 //待办同步
NotificationTaskService.TaskToHead(appdetails, notice, null, finishNotice); NotificationTaskService.TaskToHeads(appdetails, notices, null, finishNotice);
#endregion #endregion

View File

@ -1562,6 +1562,76 @@ namespace APT.BaseData.Services.Services.FM
catch (Exception ex) { } catch (Exception ex) { }
} }
} }
}
#endregion
#region
/// <summary>
/// 审批流 待办处理 判断到总部数据
/// </summary>
/// <param name="appdetails">审批明细</param>
/// <param name="taskNext">下一个审批待办</param>
/// <param name="listModelNext">下一个审批待办</param>
/// <param name="taskLast">上一个审批待办</param>
public void TaskToHeads(IEnumerable<T_PF_APPROVE_DETAIL> appdetails, List<T_FM_NOTIFICATION_TASK> taskNexts, List<T_FM_NOTIFICATION_TASK> listModelNext, T_FM_NOTIFICATION_TASK taskLast)
{
if (appdetails != null)
{
var checkAdd = appdetails.FirstOrDefault(e => e.ISHEAD && e.IS_CURRENT);
if (checkAdd == null)
{
//审批的最后一步 IS_CURRENT =false
if ((taskNexts == null || taskNexts.Count() < 1) && (listModelNext == null || listModelNext.Count() < 1) && taskLast != null)
{
checkAdd = appdetails.FirstOrDefault(e => e.APPROVE_USER_ID.HasValue && e.ISHEAD && e.APPROVE_USER_ID.Value == taskLast.USER_ID);
if (checkAdd != null)
{
if (checkAdd.NUM != appdetails.Max(e => e.NUM))
{
checkAdd = null;
}
}
}
}
if (checkAdd != null)
{
var isLastDeal = false;//上一个是审批相关
if (taskLast != null)
{
var checkLast = appdetails.FirstOrDefault(e => e.ISHEAD && e.APPROVE_USER_ID.HasValue && e.APPROVE_USER_ID.Value == taskLast.USER_ID);
if (checkLast != null)
isLastDeal = true;
}
try
{
IEnumerable<T_FM_NOTIFICATION_TASK> listSync = null;
if (listModelNext != null && listModelNext.Any())
{
var userids = appdetails.Where(e => e.ISHEAD && e.IS_CURRENT && e.APPROVE_USER_ID.HasValue).Select(e => e.APPROVE_USER_ID.Value);
if (userids != null && userids.Any())
{
listSync = listModelNext.Where(e => userids.Contains(e.USER_ID));
}
}
if (isLastDeal && taskLast != null)
{
this.UpdateEntityByTenant(taskLast, HeadHelper.HeadtelnetCode);
}
if (taskNexts != null && taskNexts.Any())
{
this.AddEntitiesByTenant(taskNexts, HeadHelper.HeadtelnetCode);
}
if (listSync != null && listSync.Count() > 0)
{
this.AddEntitiesByTenant(listSync, HeadHelper.HeadtelnetCode);
}
}
catch (Exception ex) { }
}
}
} }
#endregion #endregion