瀏覽代碼

daysettings

admin 1 年之前
父節點
當前提交
cb12376f42

+ 38 - 3
src/Hotline.Api/Controllers/SettingController.cs

@@ -2,7 +2,9 @@
 using Hotline.CallCenter.Manage;
 using Hotline.Permissions;
 using Hotline.Settings;
+using Hotline.Settings.TimeLimits;
 using Hotline.Share.Requests;
+using Microsoft.AspNetCore.Authorization;
 using Microsoft.AspNetCore.Mvc;
 using XF.Domain.Exceptions;
 
@@ -17,14 +19,15 @@ namespace Hotline.Api.Controllers
         private readonly ISystemSettingRepository _systemSettingsRepository;
         private readonly ISystemSettingGroupRepository _systemSettingGroupRepository;
         private readonly ISystemSettingCacheManager _systemSettingCacheManager;
-        
+        private readonly IDaySettingRepository _daysettingRepository;
 
-        public SettingController(IVoiceFileDomainService voiceFileDomainService, ISystemSettingRepository systemSettingsRepository, ISystemSettingGroupRepository systemSettingGroupRepository,ISystemSettingCacheManager systemSettingCacheManager)
+        public SettingController(IVoiceFileDomainService voiceFileDomainService, ISystemSettingRepository systemSettingsRepository, ISystemSettingGroupRepository systemSettingGroupRepository,ISystemSettingCacheManager systemSettingCacheManager,IDaySettingRepository daySettingRepository)
         {
             _voiceFileDomainService = voiceFileDomainService;
             _systemSettingsRepository = systemSettingsRepository;
             _systemSettingGroupRepository = systemSettingGroupRepository;
             _systemSettingCacheManager = systemSettingCacheManager;
+            _daysettingRepository = daySettingRepository;
         }
 
         /// <summary>
@@ -93,7 +96,39 @@ namespace Hotline.Api.Controllers
 
         #endregion
 
-       
 
+        #region 日期类型设置
+
+        /// <summary>
+        /// 获取月份的日期设置
+        /// </summary>
+        /// <param name="month"></param>
+        /// <returns></returns>
+        [Permission(EPermission.DaySetings)]
+        [HttpGet("getdaysettings-month/{month}")]
+        public async Task<List<DaySetting>> GetDaySettingsByMonth(int month)
+        {
+            return await _daysettingRepository.GetDaySettingsByMonth(month);
+        }
+
+        /// <summary>
+        /// 设置日期
+        /// </summary>
+        /// <param name="request"></param>
+        /// <returns></returns>
+        [Permission(EPermission.SetDaySetting)]
+        [HttpPost("setdaysettings")]
+        public async Task SetDaySettings([FromBody]SetDaySettingsRequest request)
+        {
+            List<DaySetting> daysettings = new List<DaySetting>();
+            foreach (var item in request.list)
+            {
+                daysettings.Add(new DaySetting() { Day = item, IsWorkDay = request.isWorkDay });
+            }
+
+            await _daysettingRepository.AddRangeAsync(daysettings);
+        }
+
+        #endregion
     }
 }

+ 1 - 1
src/Hotline.Api/config/appsettings.Development.json

@@ -45,7 +45,7 @@
     }
   },
   "DatabaseConfiguration": {
-    "ApplyDbMigrations": false,
+    "ApplyDbMigrations": true,
     "ApplySeed": false
   },
   "MqConfiguration": {

+ 6 - 0
src/Hotline.Repository.SqlSugar/System/DaySettingRepository.cs

@@ -22,5 +22,11 @@ namespace Hotline.Repository.SqlSugar.System
             return WeekTool.IsWorkDay(date);
         }
 
+
+        public async Task<List<DaySetting>> GetDaySettingsByMonth(int month)
+        {
+            return await Db.Queryable<DaySetting>().Where(x => x.Day.Month == month).ToListAsync();
+        }
+
     }
 }

+ 6 - 0
src/Hotline.Share/Dtos/Org/OrgDto.cs

@@ -34,6 +34,12 @@ namespace Hotline.Share.Dtos.Org
         /// 部门类型
         /// </summary>
         public EOrgType OrgType { get; set; }
+
+        /// <summary>
+        /// 区域Code(行政区域代码)
+        /// </summary>
+        public string AreaCode { get; set; }
+
     }
 
     public class UpdateOrgDto : AddOrgDto

+ 23 - 0
src/Hotline.Share/Enums/Order/EPublishState.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Hotline.Share.Enums.Order
+{
+    public enum EPublishState
+    {
+        /// <summary>
+        /// 公开
+        /// </summary>
+        [Description("公开")]
+        Pub= 1,
+        /// <summary>
+        /// 不公开
+        /// </summary>
+        [Description("不公开")]
+        NoPub =2,
+    }
+}

+ 4 - 0
src/Hotline.Share/Requests/SettingsRequest.cs

@@ -4,4 +4,8 @@ namespace Hotline.Share.Requests
     public record ModifySettingsRequest(List<ModifySettingsModel> list);
 
     public record ModifySettingsModel(string id, string value);
+
+
+    public record SetDaySettingsRequest(List<DateTime> list,bool isWorkDay);
+
 }

+ 17 - 2
src/Hotline/Orders/OrderPublished.cs

@@ -1,4 +1,5 @@
-using SqlSugar;
+using Hotline.Share.Enums.Order;
+using SqlSugar;
 using XF.Domain.Repository;
 
 namespace Hotline.Orders;
@@ -13,7 +14,21 @@ public class OrderPublished : CreationEntity
     /// </summary>
     public string No { get; set; }
 
-    //
+    /// <summary>
+    /// 发布范围
+    /// </summary>
+    public EPublishState PublishState { get; set; }
+
+    /// <summary>
+    /// 整理内容
+    /// </summary>
+    [SugarColumn(ColumnDataType = "varchar(2000)")]
+    public string ArrangeContent { get; set; }
+
+    /// <summary>
+    /// 查询密码
+    /// </summary>
+    public string CheckPassword { get; set; }
 
     /// <summary>
     /// 已发布工单

+ 13 - 0
src/Hotline/Permissions/EPermission.cs

@@ -319,6 +319,19 @@ namespace Hotline.Permissions
         [Display(GroupName = "Flow", Name = "流程撤回", Description = "流程撤回(撤回至任意节点)")]
         FlowRecall = 100666,
 
+        #endregion
+
+        #region 节假日设置(100670)
+        /// <summary>
+        /// 节假日设置列表
+        /// </summary>
+        [Display(GroupName = "系统设置" , Name ="节假日设置", Description ="节假日设置")]
+        DaySetings = 100670,
+        /// <summary>
+        /// 设置节假日
+        /// </summary>
+        [Display(GroupName ="系统设置",Name ="设置节假日",Description ="设置节假日")]
+        SetDaySetting = 100671,
         #endregion
         #endregion
 

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

@@ -29,6 +29,12 @@ public class SystemOrganize : CreationEntity
     /// </summary>
     public string OrgCode { get; set; }
 
+    /// <summary>
+    /// 区域Code(行政区域代码)
+    /// </summary>
+    [SugarColumn(IsNullable = true)]
+    public string AreaCode { get; set; }
+
     /// <summary>
     /// 部门级别
     /// </summary>

+ 2 - 0
src/Hotline/Settings/TimeLimits/IDaySettingRepository.cs

@@ -5,5 +5,7 @@ namespace Hotline.Settings.TimeLimits
     public interface IDaySettingRepository: IRepository<DaySetting>
     {
         Task<bool> IsWorkDay(DateTime date);
+
+        Task<List<DaySetting>> GetDaySettingsByMonth(int month);
     }
 }