Эх сурвалжийг харах

Merge branch 'master' of http://110.188.24.182:10023/Fengwo/hotline

xf 1 жил өмнө
parent
commit
0fd326f850

+ 69 - 1
src/Hotline.Api/Controllers/CommonPController.cs

@@ -1,9 +1,11 @@
-using Hotline.Settings;
+using Hotline.Permissions;
+using Hotline.Settings;
 using Hotline.Settings.CommonOpinions;
 using Hotline.Settings.CommonOpinions;
 using Hotline.Share.Dtos.Order;
 using Hotline.Share.Dtos.Order;
 using MapsterMapper;
 using MapsterMapper;
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.AspNetCore.Mvc;
 using MongoDB.Driver;
 using MongoDB.Driver;
+using XF.Domain.Exceptions;
 
 
 namespace Hotline.Api.Controllers
 namespace Hotline.Api.Controllers
 {
 {
@@ -56,6 +58,7 @@ namespace Hotline.Api.Controllers
             await _commonOpinionDomainService.DelCommonOpinion(dto.Ids, HttpContext.RequestAborted);
             await _commonOpinionDomainService.DelCommonOpinion(dto.Ids, HttpContext.RequestAborted);
         }
         }
 
 
+        #region 省市区
         /// <summary>
         /// <summary>
         /// 获取省市区树形
         /// 获取省市区树形
         /// </summary>
         /// </summary>
@@ -65,5 +68,70 @@ namespace Hotline.Api.Controllers
         {
         {
             return await _systemAreaDomainService.GetAreaTree();
             return await _systemAreaDomainService.GetAreaTree();
         }
         }
+
+        /// <summary>
+        /// 新增省市区
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [Permission(EPermission.AddArea)]
+        [HttpPost("add-aear")]
+        public async Task AddArea([FromBody]AddAreaDto dto)
+        {
+            var model = _mapper.Map<SystemArea>(dto);
+            model.IsCanModify = true;
+            await _systemAreaDomainService.AddArea(model,HttpContext.RequestAborted);
+        }
+
+        /// <summary>
+        /// 修改省市区
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [Permission(EPermission.ModifyArea)]
+        [HttpPost("modify-area")]
+        public async Task ModifyArea([FromBody]ModifyAreaDto dto)
+        {
+            var model = await _systemAreaDomainService.GetArea(dto.Id,HttpContext.RequestAborted);
+            if (model is null)
+                throw UserFriendlyException.SameMessage("未知数据,请刷新页面");
+
+            model = _mapper.Map<SystemArea>(dto);
+            await _systemAreaDomainService.ModifyArea(model, HttpContext.RequestAborted);
+        }
+
+        /// <summary>
+        /// 删除省市区(逻辑)
+        /// </summary>
+        /// <param name="id"></param>
+        /// <returns></returns>
+        [Permission(EPermission.DelArea)]
+        [HttpGet("del-area/{id}")]
+        public async Task DelArea(string id)
+        {
+            var model = await _systemAreaDomainService.GetArea(id, HttpContext.RequestAborted);
+            if (model is null)
+                throw UserFriendlyException.SameMessage("未知数据,请刷新页面");
+
+            await _systemAreaDomainService.DelArea(id, HttpContext.RequestAborted);
+        }
+
+        /// <summary>
+        /// 获取区域
+        /// </summary>
+        /// <param name="id"></param>
+        /// <returns></returns>
+        [Permission(EPermission.GetArea)]
+        [HttpGet("get-area/{id}")]
+        public async Task<SystemArea?> GetArea(string id)
+        {
+
+            var model = await _systemAreaDomainService.GetArea(id, HttpContext.RequestAborted);
+            if (model is null)
+                throw UserFriendlyException.SameMessage("未知数据,请刷新页面");
+            return model;
+        }
+
+        #endregion
     }
     }
 }
 }

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

@@ -149,7 +149,7 @@ namespace Hotline.Api.Controllers
         /// <param name="month"></param>
         /// <param name="month"></param>
         /// <returns></returns>
         /// <returns></returns>
         [Permission(EPermission.DaySetings)]
         [Permission(EPermission.DaySetings)]
-        [HttpGet("getdaysettings-month/{month}")]
+        [HttpGet("getdaysettings-month/{year}/{month}")]
         public async Task<List<DaySetting>> GetDaySettingsByMonth(int year,int month)
         public async Task<List<DaySetting>> GetDaySettingsByMonth(int year,int month)
         {
         {
             return await _daysettingRepository.GetDaySettingsByMonth(year,month);
             return await _daysettingRepository.GetDaySettingsByMonth(year,month);

+ 18 - 0
src/Hotline.Share/Dtos/Order/CommonDto.cs

@@ -26,4 +26,22 @@ namespace Hotline.Share.Dtos.Order
         /// </summary>
         /// </summary>
         public string[] Ids { get; set; }
         public string[] Ids { get; set; }
     }
     }
+
+
+    public class AddAreaDto
+    {
+        public string AreaName { get; set; }
+
+        public string ParentId { get; set; }
+
+        public string AreaNameAbbreviation { get; set; }
+
+    }
+
+    public class ModifyAreaDto:AddAreaDto
+    {
+        public string Id { get; set; }
+    }
+
+
 }
 }

+ 22 - 1
src/Hotline/Permissions/EPermission.cs

@@ -347,7 +347,28 @@ namespace Hotline.Permissions
         SetDaySetting = 100671,
         SetDaySetting = 100671,
         #endregion
         #endregion
         #endregion
         #endregion
-
+        #region 区域管理(100700)
+        /// <summary>
+        /// 新增区域
+        /// </summary>
+        [Display(GroupName ="系统设置",Name ="新增区域",Description ="新增区域")]
+        AddArea = 100701,
+        /// <summary>
+        /// 修改区域
+        /// </summary>
+        [Display(GroupName ="系统设置",Name ="修改区域",Description ="修改区域")]
+        ModifyArea = 100702,
+        /// <summary>
+        /// 删除区域
+        /// </summary>
+        [Display(GroupName = "系统设置",Name ="删除区域",Description ="删除区域")]
+        DelArea = 100703,
+        /// <summary>
+        /// 获取区域
+        /// </summary>
+        [Display(GroupName = "系统设置",Name ="获取区域",Description ="获取区域")]
+        GetArea =  100704,
+        #endregion
         #endregion
         #endregion
 
 
         #region 通话相关接口(200)
         #region 通话相关接口(200)

+ 8 - 0
src/Hotline/Settings/ISystemAreaDomainService.cs

@@ -4,5 +4,13 @@ namespace Hotline.Settings
     public interface ISystemAreaDomainService
     public interface ISystemAreaDomainService
     {
     {
         Task<List<SystemArea>> GetAreaTree();
         Task<List<SystemArea>> GetAreaTree();
+
+        Task AddArea(SystemArea model,CancellationToken cancellationToken);
+
+        Task ModifyArea(SystemArea model, CancellationToken cancellationToken);
+
+        Task<SystemArea?> GetArea(string id, CancellationToken cancellationToken);
+
+        Task DelArea(string id,CancellationToken cancellationToken);
     }
     }
 }
 }

+ 7 - 1
src/Hotline/Settings/SystemArea.cs

@@ -3,7 +3,7 @@ using XF.Domain.Repository;
 
 
 namespace Hotline.Settings
 namespace Hotline.Settings
 {
 {
-    public class SystemArea: CreationEntity
+    public class SystemArea: CreationSoftDeleteEntity
     {
     {
         /// <summary>
         /// <summary>
         /// 区域名称
         /// 区域名称
@@ -21,6 +21,12 @@ namespace Hotline.Settings
         /// </summary>
         /// </summary>
         public string AreaNameAbbreviation { get; set; }
         public string AreaNameAbbreviation { get; set; }
 
 
+        /// <summary>
+        /// 是否可以修改
+        /// </summary>
+        [SugarColumn(DefaultValue = "f")]
+        public bool IsCanModify { get; set; }
+
 
 
         [SugarColumn(IsIgnore = true)]
         [SugarColumn(IsIgnore = true)]
         public List<SystemArea> Children { get; set; }
         public List<SystemArea> Children { get; set; }

+ 20 - 0
src/Hotline/Settings/SystemAreaDomainService.cs

@@ -11,9 +11,29 @@ namespace Hotline.Settings
             _systemAreaRepository = systemAreaRepository;
             _systemAreaRepository = systemAreaRepository;
         }
         }
 
 
+        public async Task AddArea(SystemArea model, CancellationToken cancellationToken)
+        {
+            await _systemAreaRepository.AddAsync(model,cancellationToken);
+        }
+
+        public async Task ModifyArea(SystemArea model, CancellationToken cancellationToken)
+        {
+            await _systemAreaRepository.UpdateAsync(model,cancellationToken);
+        }
+
         public async Task<List<SystemArea>> GetAreaTree()
         public async Task<List<SystemArea>> GetAreaTree()
         {
         {
            return await  _systemAreaRepository.Queryable().ToTreeAsync(x => x.Children,q=>q.ParentId, "");
            return await  _systemAreaRepository.Queryable().ToTreeAsync(x => x.Children,q=>q.ParentId, "");
         }
         }
+
+        public async Task<SystemArea?> GetArea(string id, CancellationToken cancellationToken)
+        {
+            return await _systemAreaRepository.GetAsync(id,cancellationToken);
+        }
+
+        public async Task DelArea(string id,CancellationToken cancellationToken)
+        {
+            await _systemAreaRepository.RemoveAsync(id, true, cancellationToken);
+        }
     }
     }
 }
 }

+ 1 - 1
src/XF.Domain.Repository/Entity.cs

@@ -92,7 +92,7 @@ public abstract class SoftDeleteEntity : Entity, IHasDeletionTime, ISoftDelete
 /// </summary>
 /// </summary>
 public abstract class CreationSoftDeleteEntity : CreationEntity, IHasDeletionTime, ISoftDelete
 public abstract class CreationSoftDeleteEntity : CreationEntity, IHasDeletionTime, ISoftDelete
 {
 {
-    [SugarColumn(ColumnDescription = "是否删除")]
+    [SugarColumn(ColumnDescription = "是否删除",DefaultValue ="f")]
     public bool IsDeleted { get; set; }
     public bool IsDeleted { get; set; }
 
 
     /// <summary>
     /// <summary>