xf 3 ヶ月 前
コミット
211e0f2cfd

+ 6 - 5
src/Hotline.Api/Controllers/KnowledgeCommonController.cs

@@ -143,18 +143,19 @@ namespace Hotline.Api.Controllers
         public async Task<List<KnowledgeTypeDto>> GetTreeList(bool? IsEnable, string? Attribution)
         {
             var isCenter = _sessionContext.OrgIsCenter;
-            var query = _knowledgeTypeRepository.Queryable();
+            var query = _knowledgeTypeRepository.Queryable()
+                .WhereIF(IsEnable.HasValue, x => x.IsEnable == IsEnable);
             if (!isCenter)
                 query.Where(x => x.Orgs.Any(s => s.Id == _sessionContext.RequiredOrgId));
-            return await query.WhereIF(IsEnable.HasValue, x => x.IsEnable == IsEnable)
+            return await query
                  .Select(x => new KnowledgeTypeDto()
                  {
                      Id = x.Id.SelectAll(),
-                     KnowledgeNum = SqlFunc.Subqueryable<KnowledgeRelationType>().LeftJoin<Knowledge>((kr, k) => kr.KnowledgeId == k.Id)
+                     KnowledgeNum = SqlFunc.Subqueryable<KnowledgeRelationType>()
+                         .LeftJoin<Knowledge>((kr, k) => kr.KnowledgeId == k.Id)
                          .Where((kr, k) => kr.KnowledgeTypeSpliceName.StartsWith(x.SpliceName))
                          .WhereIF(!string.IsNullOrEmpty(Attribution) && !isCenter, (kr, k) => k.Attribution == Attribution)
-                         .DistinctCount(kr => kr.KnowledgeId)
-
+                         .DistinctCount(kr => kr.KnowledgeId),
                  })
                  .OrderBy(x => x.Sort)
                  .ToTreeAsync(it => it.children, it => it.ParentId, null, it => it.Id);

+ 14 - 14
src/Hotline.Share/Dtos/Order/OrderDto.cs

@@ -92,18 +92,18 @@ namespace Hotline.Share.Dtos.Order
         /// <summary>
         /// 工单标签(自贡)
         /// </summary>
-        public string? OrderTag  => OrderTags != null && OrderTags.Any()? string.Join(",", OrderTags.Select(x => x.DicDataName)) : string.Empty;
+        public string? OrderTag => OrderTags != null && OrderTags.Any() ? string.Join(",", OrderTags.Select(x => x.DicDataName)) : string.Empty;
 
         public string? OrderTagCode { get; set; }
 
         public List<SystemDicDataOutDto>? OrderTags { get; set; }
 
-		#region 流程信息
+        #region 流程信息
 
-		/// <summary>
-		/// 工单开始时间(受理/接办时间=流程开启时间)
-		/// </summary>
-		public DateTime? StartTime { get; set; }
+        /// <summary>
+        /// 工单开始时间(受理/接办时间=流程开启时间)
+        /// </summary>
+        public DateTime? StartTime { get; set; }
 
         /// <summary>
         /// 交办时间(中心交部门办理时间)
@@ -661,7 +661,7 @@ namespace Hotline.Share.Dtos.Order
         {
             try
             {
-                if (Status >= EOrderStatus.Filed && FiledTime != null)
+                if (Status >= EOrderStatus.Filed && FiledTime != null && ExpiredTime != null)
                 {
                     return Math.Round((ExpiredTime.Value - FiledTime.Value).TotalDays, 1) + "天";
                 }
@@ -1153,13 +1153,13 @@ namespace Hotline.Share.Dtos.Order
 
         public string Title { get; set; }
 
-  //      /// <summary>
-  //      /// 工单标签(自贡)
-  //      /// </summary>
-  //      public string? OrderTag => OrderTags != null && OrderTags.Any() ? string.Join(",", OrderTags.Select(x => x.DicDataName)) : string.Empty;
+        //      /// <summary>
+        //      /// 工单标签(自贡)
+        //      /// </summary>
+        //      public string? OrderTag => OrderTags != null && OrderTags.Any() ? string.Join(",", OrderTags.Select(x => x.DicDataName)) : string.Empty;
 
 
-		//public string? OrderTagCode { get; set; }
+        //public string? OrderTagCode { get; set; }
 
         #region 热点
 
@@ -1440,9 +1440,9 @@ namespace Hotline.Share.Dtos.Order
         /// <summary>
         /// 工单标签
         /// </summary>
-        public List<string>?  Tags { get; set; }
+        public List<string>? Tags { get; set; }
 
-	}
+    }
 
     public record CanLinkCallRecordOrderDto : PagedKeywordRequest
     {

+ 4 - 1
src/Hotline/KnowledgeBase/KnowledgeType.cs

@@ -50,8 +50,11 @@ public class KnowledgeType : FullStateEntity
     /// 类型关联机构
     /// </summary>
     [Navigate(NavigateType.OneToMany, nameof(KnowledgeTypeOrg.TypeId))]
-    public List<KnowledgeTypeOrg>  KnowledgeTypeOrgs { get; set; }
+    public List<KnowledgeTypeOrg> KnowledgeTypeOrgs { get; set; }
 
     [Navigate(typeof(KnowledgeTypeOrg), nameof(KnowledgeTypeOrg.TypeId), nameof(KnowledgeTypeOrg.OrgId))]
     public List<SystemOrganize> Orgs { get; set; }
+
+    [Navigate(typeof(KnowledgeRelationType), nameof(KnowledgeRelationType.KnowledgeTypeId), nameof(KnowledgeRelationType.KnowledgeId))]
+    public List<Knowledge> Knowledges { get; set; }
 }