工作票审批流修改
This commit is contained in:
parent
c2d0982364
commit
5637cc30af
@ -21,6 +21,7 @@ using Autofac.Features.Metadata;
|
||||
using Castle.DynamicProxy.Generators.Emitters.SimpleAST;
|
||||
using InfluxData.Net.InfluxDb.Models.Responses;
|
||||
using log4net.Filter;
|
||||
using Microsoft.AspNetCore.JsonPatch.Operations;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using MySqlX.XDevAPI.Common;
|
||||
using Newtonsoft.Json;
|
||||
@ -847,6 +848,7 @@ namespace APT.FO.WebApi.Controllers
|
||||
/// <returns></returns>
|
||||
private Guid? GetApproveUser(T_PF_APPROVE_TEMP_DETAIL approveTempDetail, T_FO_CRUCIAL_LICENSE_JOB entity, List<T_FM_USER> users,List<T_FM_DEPARTMENT> departs, List<T_PF_APPROVAL_ROLE> roles, Guid loginUserId)
|
||||
{
|
||||
var operationName = entity.APPLY_USER_ID == loginUserId ? "发起人" : "作业人员";
|
||||
Guid? approveId = null;
|
||||
var zbRoles = roles.FirstOrDefault(t => t.NAME.Contains("值班"));
|
||||
var sdRoles = roles.Where(t => t.NAME.Contains("属地")).ToList();
|
||||
@ -935,6 +937,7 @@ namespace APT.FO.WebApi.Controllers
|
||||
}
|
||||
else
|
||||
{
|
||||
var roleName = roles.FirstOrDefault(t => t.ID == approveTempDetail.APPROVE_ROLE_ID)?.NAME;
|
||||
if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.Company)
|
||||
{
|
||||
var approveIds = users.Where(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID).Select(t => t.ID).ToList();
|
||||
@ -949,8 +952,20 @@ namespace APT.FO.WebApi.Controllers
|
||||
{ approveId = dep.USER_ID.Value; }
|
||||
else if (dep.CHARGEUSER_ID.HasValue)
|
||||
{ approveId = dep.CHARGEUSER_ID.Value; }
|
||||
else
|
||||
{
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
else if (approveIds.Count() == 1)
|
||||
{
|
||||
@ -965,9 +980,13 @@ namespace APT.FO.WebApi.Controllers
|
||||
GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
|
||||
if (departmentIds.Any())
|
||||
{
|
||||
var dep = departs.FirstOrDefault(t => departmentIds.Contains(t.ID) && t.DEPARTMENT_TYPE != 3 && approveIds.Contains((Guid)t.CHARGEUSER_ID));
|
||||
var dep = departs.FirstOrDefault(t => departmentIds.Contains(t.ID) && t.DEPARTMENT_TYPE != 5 && approveIds.Contains((Guid)t.CHARGEUSER_ID));
|
||||
if (dep != null)
|
||||
approveId = dep.CHARGEUSER_ID;
|
||||
else
|
||||
{
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1015,7 +1034,8 @@ namespace APT.FO.WebApi.Controllers
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1045,8 +1065,9 @@ namespace APT.FO.WebApi.Controllers
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
{
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1076,8 +1097,9 @@ namespace APT.FO.WebApi.Controllers
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
{
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1107,8 +1129,9 @@ namespace APT.FO.WebApi.Controllers
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
{
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1139,7 +1162,8 @@ namespace APT.FO.WebApi.Controllers
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1169,8 +1193,9 @@ namespace APT.FO.WebApi.Controllers
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
{
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1195,8 +1220,35 @@ namespace APT.FO.WebApi.Controllers
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.Workshop && approveTempDetail.Nav_ApproveRole != null && approveTempDetail.Nav_ApproveRole.NAME == "班组负责人")
|
||||
{
|
||||
var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
|
||||
if (temp != null)
|
||||
{
|
||||
approveId = temp.ID;
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
var dep = departs.FirstOrDefault(t => t.ID == item);
|
||||
if (dep != null && dep.DEPARTMENT_TYPE == 20)
|
||||
{
|
||||
continue;
|
||||
if (dep.USER_ID.HasValue)
|
||||
{ approveId = dep.USER_ID.Value; }
|
||||
else if (dep.CHARGEUSER_ID.HasValue)
|
||||
{ approveId = dep.CHARGEUSER_ID.Value; }
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
//continue;
|
||||
throw new Exception(operationName + "对应审批角色" + roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1210,19 +1262,21 @@ namespace APT.FO.WebApi.Controllers
|
||||
}
|
||||
else
|
||||
{
|
||||
var dep = departs.FirstOrDefault(t => t.ID == item);
|
||||
if (dep != null && dep.DEPARTMENT_TYPE == approveTempDetail.DEPARTMENT_TYPE)
|
||||
{
|
||||
if (dep.USER_ID.HasValue)
|
||||
{ approveId = dep.USER_ID.Value; }
|
||||
else if (dep.CHARGEUSER_ID.HasValue)
|
||||
{ approveId = dep.CHARGEUSER_ID.Value; }
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
}
|
||||
//var dep = departs.FirstOrDefault(t => t.ID == item);
|
||||
//if (dep != null && dep.DEPARTMENT_TYPE == approveTempDetail.DEPARTMENT_TYPE)
|
||||
//{
|
||||
// if (dep.USER_ID.HasValue)
|
||||
// { approveId = dep.USER_ID.Value; }
|
||||
// else if (dep.CHARGEUSER_ID.HasValue)
|
||||
// { approveId = dep.CHARGEUSER_ID.Value; }
|
||||
// break;
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// continue;
|
||||
//}
|
||||
|
||||
throw new Exception(operationName + "对应审批角色"+ roleName + "未配置人员");
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1389,14 +1443,15 @@ namespace APT.FO.WebApi.Controllers
|
||||
.ToList();
|
||||
distinctTempDetails.ForEach(t =>
|
||||
{
|
||||
var roleName = roles.FirstOrDefault(m => m.ID == t.APPROVE_ROLE_ID)?.NAME;
|
||||
var userList = new List<Guid?>();
|
||||
userIds.ForEach(x =>
|
||||
{
|
||||
var userId = GetApproveUser(t,entity, users, departs, roles,(Guid)x);
|
||||
var userId = GetApproveUser(t,entity, users, departs, roles,(Guid)x);
|
||||
var targetUser = users.FirstOrDefault(u => u.ID == userId);
|
||||
if (userId != null)
|
||||
{
|
||||
// 过滤:userId 对应的用户必须是启用状态(ENABLE_STATUS == 0)
|
||||
var targetUser = users.FirstOrDefault(u => u.ID == userId);
|
||||
if (targetUser != null && targetUser.ENABLE_STATUS == 0)
|
||||
{
|
||||
var userAgent = userVacations.FirstOrDefault(v => v.USER_ID == userId);
|
||||
@ -1411,6 +1466,11 @@ namespace APT.FO.WebApi.Controllers
|
||||
userList.Add(detailUserAgent);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var targetName = entity.APPLY_USER_ID == x ? "发起人" : "作业人员";
|
||||
throw new Exception(targetName + "对应审批角色" + roleName+ "未配置人员");
|
||||
}
|
||||
});
|
||||
userList = userList.Distinct().ToList();
|
||||
if (userList != null && userList.Any())
|
||||
|
||||
Loading…
Reference in New Issue
Block a user