审批流修改 总部 待办同步

This commit is contained in:
wyw 2025-10-24 15:19:52 +08:00
parent 301464d213
commit 6acfaa4ac0
5 changed files with 59 additions and 20 deletions

View File

@ -301,5 +301,14 @@ namespace APT.BaseData.Domain.IServices.FM
/// <param name="listAllSet">待办限制时间配置信息外部调用不传</param> /// <param name="listAllSet">待办限制时间配置信息外部调用不传</param>
/// <returns></returns> /// <returns></returns>
DateTime GetTaskEndTime(FMTASKTYPE TASK_TYPE, Guid OrgId, DateTime? dtNow, int? FREQUENCYE, DateTime? DateTimeLastest, List<T_FM_NOTIFICATION_TASK_TIME_SET> listAllSet = null); DateTime GetTaskEndTime(FMTASKTYPE TASK_TYPE, Guid OrgId, DateTime? dtNow, int? FREQUENCYE, DateTime? DateTimeLastest, List<T_FM_NOTIFICATION_TASK_TIME_SET> listAllSet = null);
/// <summary>
/// 审批流 待办处理 判断到总部数据
/// </summary>
/// <param name="appdetails">审批明细</param>
/// <param name="taskNext">下一个审批待办</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);
} }
} }

View File

@ -627,15 +627,9 @@ namespace APT.BaseData.Services.Services.FM
}); });
#region //涉及到总部的人员 待办 直接把数据传到总部去 #region //涉及到总部的人员 待办 直接把数据传到总部去
var checkAdd = appdetails.FirstOrDefault(e => e.ISHEAD && e.IS_CURRENT); //待办同步
if (checkAdd != null) NotificationTaskService.TaskToHead(appdetails, notice, null, finishNotice);
{
try
{
}
catch (Exception ex) { }
}
#endregion #endregion

View File

@ -1488,9 +1488,31 @@ namespace APT.BaseData.Services.Services.FM
#region #region
public void TaskToHead(IEnumerable<T_PF_APPROVE_DETAIL> appdetails, T_FM_NOTIFICATION_TASK taskNext, T_FM_NOTIFICATION_TASK taskLast) /// <summary>
/// 审批流 待办处理 判断到总部数据
/// </summary>
/// <param name="appdetails">审批明细</param>
/// <param name="taskNext">下一个审批待办</param>
/// <param name="listModelNext">下一个审批待办</param>
/// <param name="taskLast">上一个审批待办</param>
public void TaskToHead(IEnumerable<T_PF_APPROVE_DETAIL> appdetails, T_FM_NOTIFICATION_TASK taskNext, List<T_FM_NOTIFICATION_TASK> listModelNext, T_FM_NOTIFICATION_TASK taskLast)
{ {
var checkAdd = appdetails.FirstOrDefault(e => e.ISHEAD && e.IS_CURRENT); var checkAdd = appdetails.FirstOrDefault(e => e.ISHEAD && e.IS_CURRENT);
if (checkAdd == null)
{
//审批的最后一步 IS_CURRENT =false
if (taskNext == null && (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) if (checkAdd != null)
{ {
var isLastDeal = false;//上一个是审批相关 var isLastDeal = false;//上一个是审批相关
@ -1503,18 +1525,27 @@ namespace APT.BaseData.Services.Services.FM
try try
{ {
string conn = "Server=121.41.2.71;Database=mh_jy_head;uid=sa;pwd=mhsafe!2021;"; IEnumerable<T_FM_NOTIFICATION_TASK> listSync = null;
using (var context = new MigrationContext(conn)) if (listModelNext != null && listModelNext.Any())
{ {
if (isLastDeal && taskLast != null) 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())
{ {
this.UpdateEntityByConn(taskLast, conn); listSync = listModelNext.Where(e => userids.Contains(e.USER_ID));
} }
if (taskNext != null) }
{
this.AddEntityByConn(taskNext, conn); if (isLastDeal && taskLast != null)
} {
context.SaveChanges(); this.UpdateEntityByTenant(taskLast, "003");
}
if (taskNext != null)
{
this.AddEntityByTenant(taskNext, "003");
}
if (listSync != null && listSync.Count() > 0)
{
this.AddEntitiesByTenant(listSync, "003");
} }
} }
catch (Exception ex) { } catch (Exception ex) { }

View File

@ -7427,7 +7427,9 @@ namespace APT.BaseData.Services.DomainServices
BantchSaveEntityNoCommit(listTaskNext); BantchSaveEntityNoCommit(listTaskNext);
if (listLog != null && listLog.Any())//本节点操作记录 if (listLog != null && listLog.Any())//本节点操作记录
BantchSaveEntityNoCommit(listLog); BantchSaveEntityNoCommit(listLog);
}); });
//待办同步
NotificationTaskService.TaskToHead(listAppDetail, null, listTaskNext, taskFinish);
} }
else else
{ {
@ -12716,6 +12718,8 @@ namespace APT.BaseData.Services.DomainServices
if (resultDetail != null && resultDetail.Count > 0) if (resultDetail != null && resultDetail.Count > 0)
BantchSaveEntityNoCommit(resultDetail); BantchSaveEntityNoCommit(resultDetail);
}); });
//待办同步
NotificationTaskService.TaskToHead(listAppDetail, null, null, taskFinish);
} }
return true; return true;
} }

View File

@ -593,7 +593,8 @@ namespace APT.SC.WebApi.Controllers.Api.BI
private void GetDownRiskID(IEnumerable<Guid> listPARENT_ID, ref List<Guid> listResult) private void GetDownRiskID(IEnumerable<Guid> listPARENT_ID, ref List<Guid> listResult)
{ {
List<Guid> ids = new List<Guid>(); List<Guid> ids = new List<Guid>();
var listAreaIDDown = GetEntities<T_HM_RISK_AREA>(e => e.PARENT_ID.HasValue && listPARENT_ID.Contains(e.PARENT_ID.Value) && !e.IS_DELETED, null, null); //var listAreaIDDown = GetEntities<T_HM_RISK_AREA>(e => e.PARENT_ID.HasValue && listPARENT_ID.Contains(e.PARENT_ID.Value) && !e.IS_DELETED, null, null);
var listAreaIDDown = GetEntities<T_SK_RISK_AREA>(e => e.PARENT_ID.HasValue && listPARENT_ID.Contains(e.PARENT_ID.Value) && !e.IS_DELETED, null, null);
if (listResult == null) if (listResult == null)
{ {
listResult = new List<Guid>(); listResult = new List<Guid>();