Эх сурвалжийг харах

Merge branch 'master' of http://git.fwt.com/Hotline/hotline

xf 2 жил өмнө
parent
commit
06a2815b74

+ 20 - 5
src/Hotline.Api/Controllers/HotSpotController.cs

@@ -1,12 +1,17 @@
-using Hotline.Repository.SqlSugar.Extensions;
+using Hotline.Caches;
+using Hotline.Repository.SqlSugar.Extensions;
+using Hotline.Settings;
 using Hotline.Settings.Hotspots;
 using Hotline.Settings.TimeLimits;
 using Hotline.Share.Dtos;
 using Hotline.Share.Dtos.Settings;
+using Hotline.Share.Enums.Order;
 using Hotline.Share.Enums.Settings;
 using MapsterMapper;
 using Microsoft.AspNetCore.Mvc;
+using StackExchange.Redis;
 using XF.Domain.Exceptions;
+using XF.Utility.EnumExtensions;
 
 namespace Hotline.Api.Controllers
 {
@@ -19,13 +24,15 @@ namespace Hotline.Api.Controllers
         private readonly IMapper _mapper;
         private readonly ITimeLimitDomainService _timeLimitDomainService;
         private readonly ITimeLimitRepository _timeLimitRepository;
+        private readonly ISysDicDataCacheManager _sysDicDataCacheManager;
 
-        public HotspotController(IHotspotTypeRepository hotspotTypeRepository,IMapper mapper, ITimeLimitDomainService timeLimitDomainService, ITimeLimitRepository timeLimitRepository)
+        public HotspotController(IHotspotTypeRepository hotspotTypeRepository,IMapper mapper, ITimeLimitDomainService timeLimitDomainService, ITimeLimitRepository timeLimitRepository,ISysDicDataCacheManager sysDicDataCacheManager)
         {
             _hotspotTypeRepository = hotspotTypeRepository;
             _mapper = mapper;
             _timeLimitDomainService = timeLimitDomainService;
             _timeLimitRepository = timeLimitRepository;
+            _sysDicDataCacheManager = sysDicDataCacheManager;
         }
 
         #region 热点
@@ -72,12 +79,20 @@ namespace Hotline.Api.Controllers
         /// </summary>
         /// <returns></returns>
         [HttpGet("timelimit-basedata")]
-        public async Task<List<TimeLimitBaseDataModel>> GetTimeLimitBaseData()
+        public async Task<object> GetTimeLimitBaseData()
         {
-            return TimeLimitBaseData.GetBaseData();
+            return new {
+                BaseData = TimeLimitBaseData.GetBaseData(),
+                AcceptType = EnumExts.GetDescriptions<EAcceptType>(),
+                PushType = _sysDicDataCacheManager.GetSysDicDataCache(TimeLimitBaseDataConsts.PushType),
+                SourceChannel = EnumExts.GetDescriptions<EChannel>(),
+                IdentityType = EnumExts.GetDescriptions<EIdentityType>(),
+                OrderType = EnumExts.GetDescriptions<EOrderType>(),
+                CertType = _sysDicDataCacheManager.GetSysDicDataCache(TimeLimitBaseDataConsts.CertType),
+                EmergencyLevel = EnumExts.GetDescriptions<EEmergencyLevel>()
+            };
         }
 
-
         /// <summary>
         /// 新增时限管理
         /// </summary>

+ 2 - 1
src/Hotline.CacheManager/SysDicDataCacheManager.cs

@@ -6,10 +6,11 @@ using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
 using XF.Domain.Cache;
+using XF.Domain.Dependency;
 
 namespace Hotline.CacheManager
 {
-    public class SysDicDataCacheManager : ISysDicDataCacheManager
+    public class SysDicDataCacheManager : ISysDicDataCacheManager, IScopeDependency
     {
         private readonly ISysDicDataRepository _sysDicDataRepository;
         private readonly ITypedCache<IReadOnlyList<SysDicData>> _cacheSysDicData;

+ 7 - 2
src/Hotline.Share/Dtos/Settings/TimeLimitDto.cs

@@ -76,14 +76,19 @@ namespace Hotline.Share.Dtos.Settings
     public class CombinationParamModel
     {
         /// <summary>
-        /// 组合参数ID
+        /// 参数类型Code
         /// </summary>
-        public string Id { get; set; }
+        public string Code { get; set; }
 
         /// <summary>
         /// 组合参数名称
         /// </summary>
         public string ParamName { get; set; }
+
+        /// <summary>
+        /// 组合参数值
+        /// </summary>
+        public string ParamValue { get; set; }
     }
 
 

+ 2 - 2
src/Hotline/Settings/CommonOpinions/CommonOpinionTypeConsts.cs

@@ -28,9 +28,9 @@
         public const string Seat = "Seat";
 
         /// <summary>
-        /// 流转常用意见
+        /// 工单流转常用意见
         /// </summary>
-        public const string Circulation = "Circulation";
+        public const string OrderCirculation = "OrderCirculation";
 
         /// <summary>
         /// 回访常用意见

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

@@ -34,13 +34,13 @@ public class SystemOrganize : CreationEntity
     /// <summary>
     /// 上级ID
     /// </summary>
-    [SugarColumn(IsIgnore = true)]
+    [SugarColumn(IsNullable = true)]
     public string? ParentId { get; set; }
 
     /// <summary>
     /// 上级名称
     /// </summary>
-    [SugarColumn(IsIgnore = true)]
+    [SugarColumn(IsNullable = true)]
     public string? ParentName { get; set; }
 
     /// <summary>

+ 9 - 9
src/Hotline/Settings/TimeLimits/TimeLimit.cs

@@ -67,15 +67,15 @@ namespace Hotline.Settings.TimeLimits
         {
             return new List<TimeLimitBaseDataModel>()
             {
-                new TimeLimitBaseDataModel("82fde961-b1a7-11ed-ad8e-005056a2d053","受理类型", "Order", ETimeLimitType.Enum, "EAcceptType"),
-                new TimeLimitBaseDataModel("33b756f6-b1a9-11ed-ad8e-005056a2d053", "热点分类","Order",ETimeLimitType.HotPots,"HotPots"),
-                new TimeLimitBaseDataModel("c45da596-b1aa-11ed-ad8e-005056a2d053", "推送分类", "Order", ETimeLimitType.DicData, "PushType"),
-                new TimeLimitBaseDataModel("ee78d588-b1aa-11ed-ad8e-005056a2d053", "来源渠道", "Order", ETimeLimitType.DicData, "SourceChannel"),
-                new TimeLimitBaseDataModel("8f9209d1-b1ab-11ed-ad8e-005056a2d053", "来电人身份", "Order", ETimeLimitType.Enum, "EIdentityType"),
-                new TimeLimitBaseDataModel("d6100e08-b1ab-11ed-ad8e-005056a2d053", "工单类型", "Order", ETimeLimitType.DicData, "OrderType"),
-                new TimeLimitBaseDataModel("f21424ff-b1ab-11ed-ad8e-005056a2d053", "证件类型", "Order", ETimeLimitType.DicData, "CertType"),
-                new TimeLimitBaseDataModel("bda69be9-b1b2-11ed-ad8e-005056a2d053", "紧急程度", "Order", ETimeLimitType.Enum, "EEmergencyLevel"),
-                new TimeLimitBaseDataModel("cd3b29dd-b1bf-11ed-ad8e-005056a2d053","默认参数","ZengBie,KnowledgeAdd",ETimeLimitType.DefaultTime,"DefaultTime")
+                new TimeLimitBaseDataModel("82fde961-b1a7-11ed-ad8e-005056a2d053","受理类型", "Order", ETimeLimitType.Enum, TimeLimitBaseDataConsts.AcceptType),
+                new TimeLimitBaseDataModel("33b756f6-b1a9-11ed-ad8e-005056a2d053", "热点分类","Order",ETimeLimitType.HotPots,TimeLimitBaseDataConsts.HotPots),
+                new TimeLimitBaseDataModel("c45da596-b1aa-11ed-ad8e-005056a2d053", "推送分类", "Order", ETimeLimitType.DicData, TimeLimitBaseDataConsts.PushType),
+                new TimeLimitBaseDataModel("ee78d588-b1aa-11ed-ad8e-005056a2d053", "来源渠道", "Order", ETimeLimitType.DicData, TimeLimitBaseDataConsts.SourceChannel),
+                new TimeLimitBaseDataModel("8f9209d1-b1ab-11ed-ad8e-005056a2d053", "来电人身份", "Order", ETimeLimitType.Enum, TimeLimitBaseDataConsts.IdentityType),
+                new TimeLimitBaseDataModel("d6100e08-b1ab-11ed-ad8e-005056a2d053", "工单类型", "Order", ETimeLimitType.DicData, TimeLimitBaseDataConsts.OrderType),
+                new TimeLimitBaseDataModel("f21424ff-b1ab-11ed-ad8e-005056a2d053", "证件类型", "Order", ETimeLimitType.DicData, TimeLimitBaseDataConsts.CertType),
+                new TimeLimitBaseDataModel("bda69be9-b1b2-11ed-ad8e-005056a2d053", "紧急程度", "Order", ETimeLimitType.Enum, TimeLimitBaseDataConsts.EmergencyLevel),
+                new TimeLimitBaseDataModel("cd3b29dd-b1bf-11ed-ad8e-005056a2d053","默认参数","ZengBie,KnowledgeAdd",ETimeLimitType.DefaultTime,TimeLimitBaseDataConsts.DefaultTime)
             };
         }
     }

+ 48 - 0
src/Hotline/Settings/TimeLimits/TimeLimitBaseDataConsts.cs

@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Hotline.Settings.TimeLimits
+{
+    public class TimeLimitBaseDataConsts
+    {
+        /// <summary>
+        /// 受理类型
+        /// </summary>
+        public const string AcceptType = "AcceptType";
+        /// <summary>
+        /// 热点分类
+        /// </summary>
+        public const string HotPots = "HotPots";
+        /// <summary>
+        /// 推送分类
+        /// </summary>
+        public const string PushType = "PushType";
+        /// <summary>
+        /// 来源渠道
+        /// </summary>
+        public const string SourceChannel = "SourceChannel";
+        /// <summary>
+        /// 来电人身份
+        /// </summary>
+        public const string IdentityType = "IdentityType";
+        /// <summary>
+        /// 工单类型
+        /// </summary>
+        public const string OrderType = "OrderType";
+        /// <summary>
+        /// 证件类型
+        /// </summary>
+        public const string CertType = "CertType";
+        /// <summary>
+        /// 紧急程度
+        /// </summary>
+        public const string EmergencyLevel = "EmergencyLevel";
+        /// <summary>
+        /// 默认参数
+        /// </summary>
+        public const string DefaultTime = "DefaultTime";
+    }
+}

+ 10 - 3
src/Hotline/Settings/TimeLimits/TimeLimitDomainService.cs

@@ -28,13 +28,20 @@ namespace Hotline.Settings.TimeLimits
         }
 
 
-        //public async Task<(string, int)> Get(string WorkflowCode,DateTime BeginTime,Dictionary<string,string> param)
+        //public async Task Get(string WorkflowCode, DateTime BeginTime, Dictionary<string, string> param)
         //{
         //    //1>> 取出对应已启用的配置
         //    var model = await _timeLimitRepository.GetAsync(x => x.WorkflowCode == WorkflowCode && x.TimeLimitState == Share.Enums.Settings.ETimeLimitState.Enable);
-        //    if (model!=null)
+        //    if (model != null)
         //    {
-
+        //        //组合逻辑
+        //        if (model.Combination.Count > 0)
+        //        {
+        //            foreach (var item in model.Combination)
+        //            {
+        //                item.CombinationParam.
+        //            }
+        //        }
         //    }
         //}