فهرست منبع

Merge branch 'master' of http://git.12345lm.cn/Fengwo/hotline

TANG JIANG 1 سال پیش
والد
کامیت
60043d1ff9

+ 8 - 7
src/Hotline.Application/FlowEngine/WorkflowApplication.cs

@@ -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:

+ 2 - 1
src/Hotline.Application/Handlers/FlowEngine/WorkflowNextHandler.cs

@@ -192,7 +192,8 @@ public class WorkflowNextHandler : INotificationHandler<NextStepNotify>
                         switch (nextTag.Value)
                         {
                             case TagDefaults.TagValue.Province:
-                                //发起省延期审批
+                                //TODO 发起省延期审批
+
                                 break;
                         }
                     }

+ 1 - 1
src/Hotline.Application/Identity/IdentityAppService.cs

@@ -100,7 +100,7 @@ public class IdentityAppService : IIdentityAppService, IScopeDependency
                     new(AppClaimTypes.DepartmentAreaCode, user.Organization?.AreaCode ?? string.Empty),
                     new(AppClaimTypes.DepartmentAreaName, user.Organization?.AreaName ?? string.Empty),
                     new(AppClaimTypes.DepartmentLevel, user.Organization?.Level.ToString() ?? string.Empty),
-                    new(AppClaimTypes.AreaId, user.OrgId?.GetHigherOrgCode() ?? string.Empty),
+                    new(AppClaimTypes.AreaId, user.OrgId?.GetHigherOrgId() ?? string.Empty),
                 }
             );
         }

+ 2 - 0
src/Hotline.Share/Dtos/TrCallCenter/TrTelDao.cs

@@ -15,6 +15,8 @@ namespace Hotline.Share.Dtos.TrCallCenter
         public string TelNo { get; set; }
 
         public string Description { get; set; }
+
+        public string QueueId { get; set; }
     }
 
     #endregion

+ 4 - 4
src/Hotline/Settings/SystemDomainService.cs

@@ -69,7 +69,7 @@ public class SystemDomainService : ISystemDomainService, IScopeDependency
                 .Where(d => d.Level == 1)
                 .MaxAsync(d => d.Id, cancellationToken);
 
-            if (!int.TryParse(maxCode.GetLastOrgCode(), out var max))
+            if (!int.TryParse(maxCode.GetLastOrgId(), out var max))
                 throw new UserFriendlyException("无效部门编码");
             return (max + 1).ToString("000");
         }
@@ -86,7 +86,7 @@ public class SystemDomainService : ISystemDomainService, IScopeDependency
             if (string.IsNullOrEmpty(maxCode))
                 return $"{parentOrg.Id}001";
 
-            if (!int.TryParse(maxCode.GetLastOrgCode(), out var max))
+            if (!int.TryParse(maxCode.GetLastOrgId(), out var max))
                 throw new UserFriendlyException("无效部门编码");
 
             return $"{parentOrg.Id}{(max + 1):000}";
@@ -134,7 +134,7 @@ public class SystemDomainService : ISystemDomainService, IScopeDependency
             }
             else
             {
-                if (!int.TryParse(maxCode.GetLastOrgCode(), out var max))
+                if (!int.TryParse(maxCode.GetLastOrgId(), out var max))
                     throw new UserFriendlyException("无效部门编码");
 
                 org.Id = $"{OrgSeedData.CenterId}{(max + 1):000}";
@@ -161,7 +161,7 @@ public class SystemDomainService : ISystemDomainService, IScopeDependency
             }
             else
             {
-                if (!int.TryParse(maxCode.GetLastOrgCode(), out var max))
+                if (!int.TryParse(maxCode.GetLastOrgId(), out var max))
                     throw new UserFriendlyException("无效部门编码");
 
                 org.Id = $"{parentOrg.Id}{(max + 1):000}";

+ 3 - 3
src/Hotline/Settings/SystemOrganize.cs

@@ -98,7 +98,7 @@ public static class OrgExtensions
     /// <param name="orgId"></param>
     /// <param name="orgLevel">默认获取一级部门</param>
     /// <returns></returns>
-    public static string GetHigherOrgCode(this string orgId, int orgLevel = 1)
+    public static string GetHigherOrgId(this string orgId, int orgLevel = 1)
     {
         if (string.IsNullOrEmpty(orgId))
             throw UserFriendlyException.SameMessage("无效部门编码");
@@ -112,7 +112,7 @@ public static class OrgExtensions
     /// <summary>
     /// 获取最末级部门对应编号(最末3位)
     /// </summary>
-    public static string GetLastOrgCode(this string orgCode)
+    public static string GetLastOrgId(this string orgCode)
     {
         if (orgCode.Length < 3)
             throw new UserFriendlyException("非法部门编码");
@@ -130,7 +130,7 @@ public static class OrgExtensions
     {
         if (string.IsNullOrEmpty(orgId))
             throw UserFriendlyException.SameMessage("无效部门编码");
-        var upperOrg = orgId.GetHigherOrgCode();
+        var upperOrg = orgId.GetHigherOrgId();
         return IsCenter(upperOrg);
     }
 }

+ 3 - 0
src/Tr.Sdk/Tels/QueryTelRequest.cs

@@ -27,5 +27,8 @@ namespace Tr.Sdk.Tels
         public string Description { get; set; }
 
         public string Password { get; set; }
+
+        [JsonPropertyName("queue_id")]
+        public string QueueId { get; set; }
     }
 }