Ver código fonte

修改司法

tangjiang 4 meses atrás
pai
commit
5ff5dac9aa

+ 22 - 18
src/Hotline.Api/Controllers/JudicialManagementOrdersController.cs

@@ -37,6 +37,7 @@ namespace Hotline.Api.Controllers
         private readonly IRepository<EnforcementOrdersHandler> _enforcementOrdersHandlerRepository;
         private readonly IEnforcementApplication _enforcementApplication;
         private readonly IRepository<Order> _orderRepository;
+        private readonly IRepository<LawEnforcementAgencies> _lawEnforcementAgenciesRepository;
 
         /// <summary>
         /// 
@@ -63,11 +64,12 @@ namespace Hotline.Api.Controllers
          ISessionContext sessionContext,
          IRepository<SystemArea> systemAreaRepository,
          IRepository<JudicialManagementOrders> judicialManagementOrdersRepository,
-          IFileRepository fileRepository,
-          IJudicialManagementOrdersService judicialManagementOrdersService,
-           IRepository<EnforcementOrdersHandler> enforcementOrdersHandlerRepository,
-           IEnforcementApplication enforcementApplication,
-            IRepository<Order> orderRepository
+         IFileRepository fileRepository,
+         IJudicialManagementOrdersService judicialManagementOrdersService,
+         IRepository<EnforcementOrdersHandler> enforcementOrdersHandlerRepository,
+         IEnforcementApplication enforcementApplication,
+         IRepository<Order> orderRepository,
+         IRepository<LawEnforcementAgencies> lawEnforcementAgenciesRepository
          )
         {
             _judicialComplaintsEventTypeRepository = judicialComplaintsEventTypeRepository;
@@ -83,6 +85,7 @@ namespace Hotline.Api.Controllers
             _enforcementOrdersHandlerRepository = enforcementOrdersHandlerRepository;
             _enforcementApplication = enforcementApplication;
             _orderRepository = orderRepository;
+            _lawEnforcementAgenciesRepository = lawEnforcementAgenciesRepository;
         }
 
         /// <summary>
@@ -100,13 +103,14 @@ namespace Hotline.Api.Controllers
             if (dto.Files.Any())
                 order.FileJson = await _fileRepository.AddFileAsync(dto.Files, order.Id, "", HttpContext.RequestAborted);
             await _judicialManagementOrdersService.AddAsync(order, true, HttpContext.RequestAborted);
+
             //处理执法部门
-            if (dto.EnforcementOrdersHandler != null && dto.EnforcementOrdersHandler.Any())
+            if (dto.LawEnforcementAgencies != null && dto.LawEnforcementAgencies.Any())
             {
-                List<EnforcementOrdersHandler> enforcementOrdersHandlers = new();
-                foreach (var item in dto.EnforcementOrdersHandler)
+                List<LawEnforcementAgencies> lawEnforcementAgencies = new();
+                foreach (var item in dto.LawEnforcementAgencies)
                 {
-                    enforcementOrdersHandlers.Add(new EnforcementOrdersHandler
+                    lawEnforcementAgencies.Add(new LawEnforcementAgencies
                     {
                         OrderId = order.Id,
                         OrderNo = order.No,
@@ -115,8 +119,8 @@ namespace Hotline.Api.Controllers
                         OrgName = item.Key
                     });
                 }
-                if (enforcementOrdersHandlers != null && enforcementOrdersHandlers.Any())
-                    await _enforcementOrdersHandlerRepository.AddRangeAsync(enforcementOrdersHandlers, HttpContext.RequestAborted);
+                if (lawEnforcementAgencies != null && lawEnforcementAgencies.Any())
+                    await _lawEnforcementAgenciesRepository.AddRangeAsync(lawEnforcementAgencies, HttpContext.RequestAborted);
             }
             return order.Id;
         }
@@ -143,12 +147,12 @@ namespace Hotline.Api.Controllers
             await _judicialManagementOrdersRepository.UpdateAsync(order, HttpContext.RequestAborted);
 
             //处理执法部门
-            if (dto.EnforcementOrdersHandler != null && dto.EnforcementOrdersHandler.Any())
+            if (dto.LawEnforcementAgencies != null && dto.LawEnforcementAgencies.Any())
             {
-                List<EnforcementOrdersHandler> enforcementOrdersHandlers = new();
-                foreach (var item in dto.EnforcementOrdersHandler)
+                List<LawEnforcementAgencies> lawEnforcementAgencies = new();
+                foreach (var item in dto.LawEnforcementAgencies)
                 {
-                    enforcementOrdersHandlers.Add(new EnforcementOrdersHandler
+                    lawEnforcementAgencies.Add(new LawEnforcementAgencies
                     {
                         OrderId = order.Id,
                         OrderNo = order.No,
@@ -156,10 +160,10 @@ namespace Hotline.Api.Controllers
                         OrgCode = item.Value,
                         OrgName = item.Key
                     });
-                    if (enforcementOrdersHandlers != null && enforcementOrdersHandlers.Any())
+                    if (lawEnforcementAgencies != null && lawEnforcementAgencies.Any())
                     {
-                        await _enforcementOrdersHandlerRepository.RemoveAsync(p => p.OrderId == order.Id, false, HttpContext.RequestAborted);
-                        await _enforcementOrdersHandlerRepository.AddRangeAsync(enforcementOrdersHandlers, HttpContext.RequestAborted);
+                        await _lawEnforcementAgenciesRepository.RemoveAsync(p => p.OrderId == order.Id, false, HttpContext.RequestAborted);
+                        await _lawEnforcementAgenciesRepository.AddRangeAsync(lawEnforcementAgencies, HttpContext.RequestAborted);
                     }
 
                 }

+ 6 - 4
src/Hotline.Application/JudicialManagement/EnforcementApplication.cs

@@ -62,7 +62,8 @@ namespace Hotline.Application.JudicialManagement
                    .WhereIF(dto.CreationTimeEnd.HasValue, d => d.CreationTime <= dto.CreationTimeEnd) //受理时间结束
                      .WhereIF(!string.IsNullOrEmpty(dto.FromName), d => d.FromName == dto.FromName) //来电人姓名
                      .WhereIF(!string.IsNullOrEmpty(dto.AreaCode), d => d.AreaCode == dto.AreaCode) //区域
-                     .WhereIF(!string.IsNullOrEmpty(dto.OrgCode), d => SqlFunc.JsonListObjectAny(d.EnforcementOrdersHandler, "Value", dto.OrgCode))//执法部门
+                      .WhereIF(!string.IsNullOrEmpty(dto.OrgCode), d => SqlFunc.JsonListObjectAny(d.EnforcementOrdersHandler, "Value", dto.OrgCode))//接办部门
+                       .WhereIF(!string.IsNullOrEmpty(dto.OrgCode), d => SqlFunc.JsonListObjectAny(d.LawEnforcementAgencies, "Value", dto.LawEnforcementOrgCode))//执法部门
                      .OrderByDescending(d => d.CreationTime)
                     .MergeTable();
         }
@@ -97,9 +98,10 @@ namespace Hotline.Application.JudicialManagement
                       .WhereIF(!string.IsNullOrEmpty(dto.NameOrNo), d => d.AcceptorName.Contains(dto.NameOrNo!) || d.AcceptorStaffNo.Contains(dto.NameOrNo!)) //受理人/坐席
                       .WhereIF(dto.CreationTimeStart.HasValue, d => d.CreationTime >= dto.CreationTimeStart) //受理时间开始
                      .WhereIF(dto.CreationTimeEnd.HasValue, d => d.CreationTime <= dto.CreationTimeEnd) //受理时间结束
-                       .WhereIF(!string.IsNullOrEmpty(dto.FromName), d => d.FromName == dto.FromName) //来电人姓名
-                       .WhereIF(!string.IsNullOrEmpty(dto.AreaCode), d => d.AreaCode == dto.AreaCode) //区域
-                       .WhereIF(!string.IsNullOrEmpty(dto.OrgCode), d => SqlFunc.JsonListObjectAny(d.EnforcementOrdersHandler, "Value", dto.OrgCode))//执法部门
+                     .WhereIF(!string.IsNullOrEmpty(dto.FromName), d => d.FromName == dto.FromName) //来电人姓名
+                     .WhereIF(!string.IsNullOrEmpty(dto.AreaCode), d => d.AreaCode == dto.AreaCode) //区域
+                     .WhereIF(!string.IsNullOrEmpty(dto.OrgCode), d => SqlFunc.JsonListObjectAny(d.EnforcementOrdersHandler, "Value", dto.OrgCode))//接办部门
+                       .WhereIF(!string.IsNullOrEmpty(dto.OrgCode), d => SqlFunc.JsonListObjectAny(d.LawEnforcementAgencies, "Value", dto.LawEnforcementOrgCode))//执法部门
                        .OrderByDescending(d => d.CreationTime)
                       .MergeTable();
 

+ 1 - 1
src/Hotline.Application/StatisticalReport/OrderReportApplication.cs

@@ -1648,7 +1648,7 @@ namespace Hotline.Application.StatisticalReport
                 .WhereIF(dto.StartTime.HasValue, x => x.OrderVisit.VisitTime >= dto.StartTime.Value)
                 .WhereIF(dto.EndTime.HasValue, x => x.OrderVisit.VisitTime <= dto.EndTime.Value)
                 .WhereIF(isCenter == false, x => x.VisitOrgCode.StartsWith(_sessionContext.RequiredOrgId))
-                .WhereIF(!string.IsNullOrEmpty(dto.OrgProcessingResults), x => SqlFunc.JsonListObjectAny(x.OrgProcessingResults, "Key", dto.OrgProcessingResults))
+                .WhereIF(!string.IsNullOrEmpty(dto.OrgProcessingResults), x => SqlFunc.JsonField(x.OrgProcessingResults, "Key")== dto.OrgProcessingResults)
                 .GroupBy((x, org) => new { VisitOrgName = org.Name, VisitOrgCode = x.VisitOrgCode.Substring(SqlFunc.MappingColumn<int>("0"), SqlFunc.MappingColumn<int>("6")) })
                 .Select((x, org) => new BiVisitNoSatisfiedDto
                 {

+ 22 - 1
src/Hotline.Share/Dtos/JudicialManagement/EnforcementOrderListDto.cs

@@ -153,11 +153,17 @@ namespace Hotline.Share.Dtos.JudicialManagement
         public string? AcceptorOrgName { get; set; }
 
         /// <summary>
-        /// 执法部门
+        /// 接办部门
         /// </summary>
         public List<Kv> EnforcementOrdersHandler { get; set; }
         public string EnforcementOrdersHandlerText => GetText();
 
+        /// <summary>
+        /// 执法部门
+        /// </summary>
+        public List<Kv> LawEnforcementAgencies { get; set; }
+        public string LawEnforcementAgenciesText => GetLawEnforcementAgenciesText();
+
         public string GetText()
         {
             string strOrgName = "";
@@ -173,6 +179,21 @@ namespace Hotline.Share.Dtos.JudicialManagement
             return strOrgName;
         }
 
+        public string GetLawEnforcementAgenciesText()
+        {
+            string strOrgName = "";
+            if (LawEnforcementAgencies != null && LawEnforcementAgencies.Count > 0)
+            {
+                foreach (var item in LawEnforcementAgencies)
+                {
+                    strOrgName += item.Key + ",";
+                }
+                if (!string.IsNullOrEmpty(strOrgName))
+                    strOrgName = strOrgName.Substring(0, strOrgName.Length - 1);
+            }
+            return strOrgName;
+        }
+
         /// <summary>
         /// 转换是否文本
         /// </summary>

+ 1 - 1
src/Hotline.Share/Dtos/JudicialManagement/JudicialManagementAddOrderDto.cs

@@ -95,7 +95,7 @@ namespace Hotline.Share.Dtos.JudicialManagement
         /// <summary>
         /// 执法部门
         /// </summary>
-        public List<Kv> EnforcementOrdersHandler { get; set; }
+        public List<Kv> LawEnforcementAgencies { get; set; }
     }
 
     /// <summary>

+ 6 - 1
src/Hotline.Share/Dtos/JudicialManagement/QueryEnforcementOrderDto.cs

@@ -209,10 +209,15 @@ namespace Hotline.Share.Dtos.JudicialManagement
         public DateTime? CreationTimeEnd { get; set; }
 
         /// <summary>
-        /// 执法部门
+        /// 接办部门
         /// </summary>
         public string? OrgCode { get; set; }
 
+        /// <summary>
+        /// 执法部门
+        /// </summary>
+        public string? LawEnforcementOrgCode { get; set; }
+
         /// <summary>
         /// 来电人姓名
         /// </summary>

+ 7 - 1
src/Hotline/JudicialManagement/JudicialManagementOrders.cs

@@ -135,11 +135,17 @@ namespace Hotline.JudicialManagement
         public EOrderSoure? OrderSoure { get; set; }
 
         /// <summary>
-        /// 执法部门
+        /// 接办部门
         /// </summary>
         [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)]
         public List<Kv> EnforcementOrdersHandler { get; set; }
 
+        /// <summary>
+        /// 执法部门
+        /// </summary>
+        [SugarColumn(ColumnDataType = "json", IsJson = true, IsNullable = true)]
+        public List<Kv> LawEnforcementAgencies { get; set; }
+
         /// <summary>
         /// 是否推诿
         /// </summary>

+ 38 - 0
src/Hotline/JudicialManagement/LawEnforcementAgencies.cs

@@ -0,0 +1,38 @@
+using Hotline.Share.Enums.JudicialManagement;
+using System.ComponentModel;
+using XF.Domain.Repository;
+
+namespace Hotline.JudicialManagement
+{
+    /// <summary>
+    /// 最新执法部门
+    /// </summary>
+    [Description("最新执法部门")]
+    public class LawEnforcementAgencies : CreationSoftDeleteEntity
+    {
+        /// <summary>
+        /// 工单Id
+        /// </summary>
+        public string? OrderId { get; set; }
+
+        /// <summary>
+        /// 工单编号
+        /// </summary>
+        public string? OrderNo { get; set; }
+
+        /// <summary>
+        /// 工单来源
+        /// </summary>
+        public EOrderSoure? OrderSoure { get; set; }
+
+        /// <summary>
+        ///部门编号
+        /// </summary>
+        public string OrgCode { get; set; }
+
+        /// <summary>
+        /// 部门名称
+        /// </summary>
+        public string OrgName { get; set; }
+    }
+}