|
@@ -1195,7 +1195,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
isLead = _sessionContext.Roles.Any(x => x == leadRoleCode);
|
|
isLead = _sessionContext.Roles.Any(x => x == leadRoleCode);
|
|
if (!isLead)
|
|
if (!isLead)
|
|
{
|
|
{
|
|
- isSkip = await _userRepository.Queryable().AnyAsync(x => x.OrgId == _sessionContext.OrgId && x.Roles.Any(r => r.Name == leadRoleCode), cancellationToken);
|
|
|
|
|
|
+ isSkip = await _userRepository.Queryable().AnyAsync(x => x.OrgId == _sessionContext.RequiredOrgId && x.Roles.Any(r => r.Name == leadRoleCode), cancellationToken);
|
|
if (isSkip)
|
|
if (isSkip)
|
|
{
|
|
{
|
|
roleId = leadRoleCode;
|
|
roleId = leadRoleCode;
|
|
@@ -1237,7 +1237,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
isLead = _sessionContext.Roles.Any(x => x == leadRoleCode);
|
|
isLead = _sessionContext.Roles.Any(x => x == leadRoleCode);
|
|
if (!isLead)
|
|
if (!isLead)
|
|
{
|
|
{
|
|
- isSkip = await _userRepository.Queryable().AnyAsync(x => x.OrgId == _sessionContext.OrgId && x.Roles.Any(r => r.Name == leadRoleCode), cancellationToken);
|
|
|
|
|
|
+ isSkip = await _userRepository.Queryable().AnyAsync(x => x.OrgId == _sessionContext.RequiredOrgId && x.Roles.Any(r => r.Name == leadRoleCode), cancellationToken);
|
|
if (isSkip)
|
|
if (isSkip)
|
|
{
|
|
{
|
|
roleId = leadRoleCode;
|
|
roleId = leadRoleCode;
|
|
@@ -1283,6 +1283,22 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
})
|
|
})
|
|
.ToListAsync(cancellationToken);
|
|
.ToListAsync(cancellationToken);
|
|
break;
|
|
break;
|
|
|
|
+ case EDynamicPolicy.ArriveOneOrg:
|
|
|
|
+ businessType = _sessionContext.OrgIsCenter? EBusinessType.Send: EBusinessType.Department;
|
|
|
|
+ orgLevel = _sessionContext.OrgIsCenter ? 0 : 1;
|
|
|
|
+ //上级部门Id
|
|
|
|
+ upperOrgId = _sessionContext.OrgIsCenter ? _sessionContext.RequiredOrgId.Substring(0,3) : _sessionContext.RequiredOrgId.Substring(0, 6);
|
|
|
|
+ items = await _organizeRepository.Queryable()
|
|
|
|
+ .Where(d => d.Id == upperOrgId)
|
|
|
|
+ .Select(d => new FlowStepHandler
|
|
|
|
+ {
|
|
|
|
+ Key = d.Id,
|
|
|
|
+ Value = d.Name,
|
|
|
|
+ OrgId = d.Id,
|
|
|
|
+ OrgName = d.Name
|
|
|
|
+ })
|
|
|
|
+ .ToListAsync(cancellationToken);
|
|
|
|
+ break;
|
|
case EDynamicPolicy.OrgDownCenterTop:
|
|
case EDynamicPolicy.OrgDownCenterTop:
|
|
businessType = EBusinessType.Department;
|
|
businessType = EBusinessType.Department;
|
|
if (_sessionContext.OrgIsCenter)
|
|
if (_sessionContext.OrgIsCenter)
|
|
@@ -1337,7 +1353,7 @@ public class WorkflowApplication : IWorkflowApplication, IScopeDependency
|
|
return new NextStepOption
|
|
return new NextStepOption
|
|
{
|
|
{
|
|
Key = orgLevel.ToString(),
|
|
Key = orgLevel.ToString(),
|
|
- Value = orgLevel == 0 ? "市民热线服务中心" : $"{orgLevel.ToChinese()}级部门{roleName}",
|
|
|
|
|
|
+ Value = orgLevel == 0 ? "市民热线服务中心" : $"{orgLevel.ToChinese()}级部门 {roleName}",
|
|
FlowDirection = flowDirection,
|
|
FlowDirection = flowDirection,
|
|
StepType = stepType,
|
|
StepType = stepType,
|
|
BusinessType = businessType,
|
|
BusinessType = businessType,
|