|
@@ -728,8 +728,9 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
};
|
|
|
}
|
|
|
|
|
|
- var userId = _sessionContext.RequiredOrgId;
|
|
|
- var levelOneOrgCode = userId.GetHigherOrgCode();
|
|
|
+ var orgId = _sessionContext.RequiredOrgId;
|
|
|
+ var levelOneOrgId = orgId.GetHigherOrgId();
|
|
|
+ var isCenter = levelOneOrgId.IsCenter();
|
|
|
switch (stepDefine.HandlerType)
|
|
|
{
|
|
|
case EHandlerType.AssignedUser:
|
|
@@ -747,10 +748,10 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
.ToListAsync(cancellationToken);
|
|
|
var users1 = roles.SelectMany(d => d.Accounts).Select(d => d.User);
|
|
|
|
|
|
- //工单办理:除当前为一级部门选择中心汇总,其余只能选下级部门
|
|
|
+ //工单办理:除一级部门选择中心汇总,其余只能选下级部门
|
|
|
if (flowType is EFlowType.Handle
|
|
|
&& (stepDefine.StepType != EStepType.Summary || stepDefine.BusinessType != EBusinessType.Center))
|
|
|
- users1 = users1.Where(d => d.OrgId.StartsWith(userId));
|
|
|
+ users1 = users1.Where(d => d.OrgId.StartsWith(levelOneOrgId));
|
|
|
|
|
|
handlers = users1.Select(d => new Kv(d.Id, d.Name)).ToList();
|
|
|
break;
|
|
@@ -759,7 +760,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
var levels = stepDefine.HandlerTypeItems.Select(d => d.Key).Select(d => int.Parse(d));
|
|
|
var orgs1 = await _organizeRepository.Queryable()
|
|
|
.Where(d => d.IsEnable && levels.Contains(d.Level))
|
|
|
- .WhereIF(!levelOneOrgCode.IsCenter(), d => d.Id.StartsWith(userId))
|
|
|
+ .WhereIF(!isCenter, d => d.Id.StartsWith(levelOneOrgId))
|
|
|
.ToListAsync(cancellationToken);
|
|
|
|
|
|
handlers = orgs1.Select(d => new Kv(d.Id, d.Name)).ToList();
|
|
@@ -769,7 +770,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
.Select(d => Enum.Parse<EOrgType>(d));
|
|
|
var orgs2 = await _organizeRepository.Queryable()
|
|
|
.Where(d => d.IsEnable && types.Contains(d.OrgType))
|
|
|
- .WhereIF(!levelOneOrgCode.IsCenter(), d => d.Id.StartsWith(userId))
|
|
|
+ .WhereIF(!isCenter, d => d.Id.StartsWith(orgId))
|
|
|
.ToListAsync(cancellationToken);
|
|
|
|
|
|
handlers = orgs2.Select(d => new Kv(d.Id, d.Name)).ToList();
|
|
@@ -900,7 +901,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
|
{
|
|
|
int orgLevel;
|
|
|
List<Kv> items;
|
|
|
- var levelOneOrgCode = _sessionContext.RequiredOrgId.GetHigherOrgCode();
|
|
|
+ var levelOneOrgCode = _sessionContext.RequiredOrgId.GetHigherOrgId();
|
|
|
switch (policy)
|
|
|
{
|
|
|
case EDynamicPolicy.OrgUpCenterTop:
|