Jelajahi Sumber

1、新系统新的【部门满意度明细】列表,需要将excel内工单不显示;
2、【部门满意度明细】列表,不显示默认满意件;

田爽 5 bulan lalu
induk
melakukan
fdfd8f9c38

+ 12 - 5
src/Hotline.Repository.SqlSugar/Orders/OrderRepository.cs

@@ -19,9 +19,11 @@ using System.Linq.Dynamic.Core;
 using System.Net;
 using System.Reflection;
 using System.Reflection.Emit;
+using Hotline.Caching.Interfaces;
 using XF.Domain.Authentications;
 using XF.Domain.Dependency;
 using XF.Domain.Repository;
+using System.Collections.Generic;
 
 namespace Hotline.Repository.SqlSugar.Orders
 {
@@ -32,20 +34,23 @@ namespace Hotline.Repository.SqlSugar.Orders
         private readonly IRepository<OrderVisit> _orderVisitRepository;
         private readonly IRepository<OrderVisitDetail> _orderVisitDetailRepository;
         private readonly ISessionContext _sessionContext;
+        private readonly ISystemSettingCacheManager _systemSettingCacheManager;
 
-        public OrderRepository(ISugarUnitOfWork<HotlineDbContext> uow,
+		public OrderRepository(ISugarUnitOfWork<HotlineDbContext> uow,
             IDataPermissionFilterBuilder dataPermissionFilterBuilder,
             IRepository<OrderSendBackAudit> orderSendBackAuditRepository,
             IRepository<OrderVisit> orderVisitRepository,
             ISessionContext sessionContext,
-            IRepository<OrderVisitDetail> orderVisitDetailRepository
-            ) : base(uow, dataPermissionFilterBuilder)
+            IRepository<OrderVisitDetail> orderVisitDetailRepository,
+            ISystemSettingCacheManager systemSettingCacheManager
+			) : base(uow, dataPermissionFilterBuilder)
         {
             _dataPermissionFilterBuilder = dataPermissionFilterBuilder;
             _orderSendBackAuditRepository = orderSendBackAuditRepository;
             _orderVisitRepository = orderVisitRepository;
             _sessionContext = sessionContext;
             _orderVisitDetailRepository = orderVisitDetailRepository;
+            _systemSettingCacheManager = systemSettingCacheManager;
 
         }
 
@@ -1363,12 +1368,14 @@ namespace Hotline.Repository.SqlSugar.Orders
 		public ISugarQueryable<OrgVisitDetailListResp> OrgVisitDetailFiltrationList(OrgVisitDetailListReq dto, string orgId)
 		{
 			var IsCenter = _sessionContext.OrgIsCenter;
+			var hiddenOrder = _systemSettingCacheManager.GetSetting(SettingConstants.OrgVisitDetailHiddenOrderNo).SettingValue;
 
 			return _orderVisitDetailRepository.Queryable()
 				.Includes(x => x.OrderVisit, x => x.Order)
 				.Includes(x => x.OrderVisit, x => x.Employee)
 				.Where(x => x.OrderVisit.VisitState == EVisitState.Visited && x.VisitTarget == EVisitTarget.Org)
-				.WhereIF(IsCenter == false, x => x.VisitOrgCode.StartsWith(orgId))
+                .WhereIF(hiddenOrder.Any(), x =>!hiddenOrder.Contains(x.OrderVisit.Order.No))
+                .WhereIF(IsCenter == false, x => x.VisitOrgCode.StartsWith(orgId))
 				.WhereIF(dto.OrgVisitStatisticsType.HasValue, x => x.OrderVisit.Order.ProcessType == (EProcessType)((int)dto.OrgVisitStatisticsType))
 				.WhereIF(dto.Keyword.NotNullOrEmpty(), x => x.OrderVisit.Order.Title.Contains(dto.Keyword)) // 根据关键字匹配
 				.WhereIF(dto.TypeCode != 0, x => x.OrderVisit.Order.IdentityType == (EIdentityType)dto.TypeCode)
@@ -1388,7 +1395,7 @@ namespace Hotline.Repository.SqlSugar.Orders
                     //特殊需求:要求新增查询条件【一级部门】,如查询【富顺县人民政府】则显示该一级部门以及下级部门的工单数据
                 .WhereIF(!string.IsNullOrEmpty(dto.LevelOneOrg), x=> x.OrderVisit.Order.OrgLevelOneName == dto.LevelOneOrg || x.OrderVisit.Order.OrgLevelOneCode == dto.LevelOneOrg)
 				
-				.Where(x=> SqlFunc.JsonField(x.OrgProcessingResults, "Key") != "2" && SqlFunc.JsonField(x.OrgProcessingResults, "Key") != "-1" && SqlFunc.JsonField(x.OrgProcessingResults, "Key") != "7")
+				.Where(x=> SqlFunc.JsonField(x.OrgProcessingResults, "Key") != "2" && SqlFunc.JsonField(x.OrgProcessingResults, "Key") != "-1" && SqlFunc.JsonField(x.OrgProcessingResults, "Key") != "0" && SqlFunc.JsonField(x.OrgProcessingResults, "Key") != "7")
 				.Where(x=>x.VisitOrgCode.StartsWith(orgId))
 				.Select(x => new OrgVisitDetailListResp()
 				{

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

@@ -627,5 +627,11 @@ namespace Hotline.Settings
         /// 工单开始办理如果获取的通话记录是呼出并且录音文件是空就不推送通话记录
         /// </summary>
         public const string OrderStartHandlerPushCallIsNull = "OrderStartHandlerPushCallIsNull";
+
+		/// <summary>
+		/// 部门满意度明细不显示工单
+		/// </summary>
+		public const string OrgVisitDetailHiddenOrderNo = "OrgVisitDetailHiddenOrderNo";
+
     }
 }