Преглед изворни кода

Merge branch 'test' into test_20250318tj

tangjiang пре 1 месец
родитељ
комит
614426f14b

+ 31 - 3
src/Hotline.Api/Controllers/HomeController.cs

@@ -3,15 +3,18 @@ using Hotline.CallCenter.BlackLists;
 using Hotline.CallCenter.Calls;
 using Hotline.CallCenter.Ivrs;
 using Hotline.CallCenter.Tels;
+using Hotline.Configurations;
 using Hotline.KnowledgeBase;
 using Hotline.Orders;
 using Hotline.Repository.SqlSugar;
 using Hotline.Settings;
 using Hotline.Share.Dtos.Home;
+using Hotline.Share.Dtos.Identity;
 using Hotline.Users;
 using MapsterMapper;
 using Microsoft.AspNetCore.Authorization;
 using Microsoft.AspNetCore.Mvc;
+using Microsoft.Extensions.Options;
 using SqlSugar;
 using StackExchange.Redis;
 using XF.Domain.Authentications;
@@ -34,6 +37,7 @@ public class HomeController : BaseController
     private readonly IRepository<UserFastMenu> _userFastMenuRepository;
     private readonly IRepository<User> _userRepository;
     private readonly ISystemSettingCacheManager _systemSettingCacheManager;
+    private readonly IOptionsSnapshot<AppConfiguration> _appOptions;
 
     public HomeController(
         ISugarUnitOfWork<HotlineDbContext> uow,
@@ -43,7 +47,8 @@ public class HomeController : BaseController
         IMapper mapper,
         IRepository<UserFastMenu> userFastMenuRepository,
         IRepository<User> userRepository,
-        ISystemSettingCacheManager systemSettingCacheManager)
+        ISystemSettingCacheManager systemSettingCacheManager,
+        IOptionsSnapshot<AppConfiguration> appOptions)
     {
         _uow = uow;
         _sessionContext = sessionContext;
@@ -53,6 +58,7 @@ public class HomeController : BaseController
         _userFastMenuRepository = userFastMenuRepository;
         _userRepository = userRepository;
         _systemSettingCacheManager = systemSettingCacheManager;
+        _appOptions = appOptions;
     }
 
     #region 开放请求接口
@@ -170,10 +176,25 @@ public class HomeController : BaseController
     /// IsNeedTelNo : 是否需要分机
     /// IsTelNeedVerify : 分机是否需要验证
     /// </returns>
-    [AllowAnonymous]
     [HttpGet("home-page-info")]
     public async Task<object> HomePageInfo()
     {
+        double[] locationCenter = new double[2];
+        try
+        {
+            locationCenter = _systemSettingCacheManager
+                .GetSetting(SettingConstants.LocationCenter)
+                .SettingValue?
+                .FirstOrDefault()
+                .Split(',')
+                .Select(double.Parse)
+                .ToArray();
+        }
+        catch (Exception e)
+        {
+            // ignore
+        }
+
         var rsp = new
         {
             IsRestApproval = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.IsRestApproval).SettingValue[0]),
@@ -196,11 +217,18 @@ public class HomeController : BaseController
             Snapshot = _systemSettingCacheManager.Snapshot,
             IsTelRest = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.IsTelRest).SettingValue[0]),
             TelRestNum = int.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.TelRestNum).SettingValue[0]),
-            IsOpenSpecialPhone = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.IsOpenSpecialPhone).SettingValue[0])
+            IsOpenSpecialPhone = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.IsOpenSpecialPhone).SettingValue[0]),
+            CallCenterType = _appOptions.Value.GetDefaultAppScopeConfiguration().CallCenterType,
+            CallCenterSocketUrl = _systemSettingCacheManager.GetSetting(SettingConstants.CallCenterSocketUrl).SettingValue?.FirstOrDefault(),
+            RecordPrefix = _systemSettingCacheManager.GetSetting(SettingConstants.RecordPrefix).SettingValue?.FirstOrDefault(),
+            RecordDownLoadPrefix = _systemSettingCacheManager.GetSetting(SettingConstants.RecordDownLoadPrefix).SettingValue?.FirstOrDefault(),
+            Luzhouhcp = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.LuZhouHaoChaPing).SettingValue[0]),
+            LocationCenter = locationCenter,
         };
         return rsp;
     }
 
+
     #endregion
 
     #region 菜单权限

+ 1 - 26
src/Hotline.Api/Controllers/IdentityController.cs

@@ -133,26 +133,7 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
         var faviconImage = _systemSettingCacheManager.GetSetting(SettingConstants.FaviconImage).SettingValue?.FirstOrDefault();
         var menuLogoImage = _systemSettingCacheManager.GetSetting(SettingConstants.MenuLogoImage).SettingValue?.FirstOrDefault();
         var menuLogoImageMini = _systemSettingCacheManager.GetSetting(SettingConstants.MenuLogoImageMini).SettingValue?.FirstOrDefault();
-        var IsLoginMessageCode = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.IsLoginMessageCode).SettingValue[0]);
-
-        var recordPrefix = _systemSettingCacheManager.GetSetting(SettingConstants.RecordPrefix).SettingValue?.FirstOrDefault();
-        var recordDownLoadPrefix = _systemSettingCacheManager.GetSetting(SettingConstants.RecordDownLoadPrefix).SettingValue?.FirstOrDefault();
-        var callCenterSocketUrl =_systemSettingCacheManager.GetSetting(SettingConstants.CallCenterSocketUrl).SettingValue?.FirstOrDefault();
-        double[] locationCenter = new double[2];
-        try
-        {
-            locationCenter = _systemSettingCacheManager
-                .GetSetting(SettingConstants.LocationCenter)
-                .SettingValue?
-                .FirstOrDefault()
-                .Split(',')
-                .Select(double.Parse)
-                .ToArray();
-        }
-        catch (Exception e)
-        {
-            // ignore
-        }
+        var IsLoginMessageCode = bool.Parse(_systemSettingCacheManager.GetSetting(SettingConstants.IsLoginMessageCode).SettingValue[0]); 
         var recordNumber = _systemSettingCacheManager.GetSetting(SettingConstants.RecordNumber).SettingValue?.FirstOrDefault();
         var cityAbbr = _systemSettingCacheManager.GetSetting(SettingConstants.CityAbbr).SettingValue?.FirstOrDefault();
         var operate = _systemSettingCacheManager.GetSetting(SettingConstants.Operate).SettingValue?.FirstOrDefault();
@@ -163,15 +144,11 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
         return new LoginPageInfoDto
         {
             CityAbbr = cityAbbr,
-            LocationCenter = locationCenter,
             CityName = cityName,
             CityCode = cityCode,
             TechSupport = techSupport,
             Operate = operate,
             RecordNumber = recordNumber,
-            CallCenterSocketUrl = callCenterSocketUrl,
-            RecordDownLoadPrefix = recordDownLoadPrefix,
-            RecordPrefix = recordPrefix,
             SysName = SysName,
             LoginImage = loginImage,
             ChangPwdImage = changePwdImage,
@@ -180,8 +157,6 @@ jxrWXHbT1FB6DqkdOnBbQqS1Azqz5HxLlSyEK3F60e3SgB5iZsDZ
             MenuLogoImageMini = menuLogoImageMini,
             IsLoginMessageCode = IsLoginMessageCode,
             AppScope = _appOptions.Value.AppScope,
-            CallCenterType = _appOptions.Value.GetDefaultAppScopeConfiguration().CallCenterType,
-            Snapshot = _systemSettingCacheManager.Snapshot
         };
     }
 

+ 1 - 1
src/Hotline.Api/Controllers/OrderController.cs

@@ -3785,7 +3785,7 @@ public class OrderController : BaseController
 
         var orderDtos = _mapper.Map<ICollection<OrderDto>>(orders);
 
-        if (_appOptions.Value.IsLuZhou && !_sessionContext.OrgIsCenter)
+        if (_appOptions.Value.IsLuZhou)
             orderDtos = orderDtos.Select(p => p.DataMask()).ToList();
 
         dynamic? dynamicClass = DynamicClassHelper.CreateDynamicClass<OrderDto>(dto.ColumnInfos);

+ 4 - 2
src/Hotline.Api/Controllers/RoleController.cs

@@ -1,4 +1,5 @@
-using Fw.Utility.UnifyResponse;
+using DocumentFormat.OpenXml.ExtendedProperties;
+using Fw.Utility.UnifyResponse;
 using Hotline.Application.Users;
 using Hotline.Caching.Interfaces;
 using Hotline.Identity.Roles;
@@ -77,7 +78,8 @@ public class RoleController : BaseController
     [HttpGet("paged")]
     public async Task<PagedDto<RoleDto>> GetRuleItems([FromQuery] QueryRolesPagedDto dto)
     {
-        return (await _roleApplication.GetRuleItems(dto).ToPagedListAsync(dto)).ToPaged();
+		var (total, items) =  await _roleApplication.GetRuleItems(dto).ToPagedListAsync(dto);
+		return new PagedDto<RoleDto>(total, _mapper.Map<IReadOnlyList<RoleDto>>(items)); 
     }
 
     /// <summary>

+ 3 - 2
src/Hotline.Application/Users/IRoleApplication.cs

@@ -1,4 +1,5 @@
-using Hotline.Share.Dtos.Roles;
+using Hotline.Identity.Roles;
+using Hotline.Share.Dtos.Roles;
 using SqlSugar;
 using System;
 using System.Collections.Generic;
@@ -9,5 +10,5 @@ using System.Threading.Tasks;
 namespace Hotline.Application.Users;
 public interface IRoleApplication
 {
-    ISugarQueryable<RoleDto> GetRuleItems(QueryRolesPagedDto dto);
+    ISugarQueryable<Role> GetRuleItems(QueryRolesPagedDto dto);
 }

+ 2 - 3
src/Hotline.Application/Users/RoleApplication.cs

@@ -29,7 +29,7 @@ public class RoleApplication : IRoleApplication, IScopeDependency
     }
 
     [ExportExcel("角色")]
-    public ISugarQueryable<RoleDto> GetRuleItems(QueryRolesPagedDto dto)
+    public ISugarQueryable<Role> GetRuleItems(QueryRolesPagedDto dto)
     {
         var query = _roleRepository.Queryable(includeDeleted: true);
         if (dto.IsDeleted.HasValue)
@@ -41,8 +41,7 @@ public class RoleApplication : IRoleApplication, IScopeDependency
             .WhereIF(_sessionContext.OrgIsCenter == false, d => d.RoleType == ERoleType.OrgRole)
             .Where(x => x.Id != RoleSeedData.AdminId)
             .OrderBy(d => d.IsDeleted)
-            .OrderByDescending(d => d.CreationTime)
-            .Select<RoleDto>();
+            .OrderByDescending(d => d.CreationTime);
         return roleQuery;
     }
 }

+ 5 - 0
src/Hotline/Settings/SettingConstants.cs

@@ -743,5 +743,10 @@ namespace Hotline.Settings
         /// 回访不满意是否发送甄别短信
         /// </summary>
         public const string IsSendDissatisfiedScreenSms = "IsSendDissatisfiedScreenSms";
+
+        /// <summary>
+        /// 泸州好差评系统对接功能
+        /// </summary>
+        public const string LuZhouHaoChaPing = "lzhcp";
     }
 }