diff --git a/Dlis.Jinko.Yikatong.sln b/Dlis.Jinko.Yikatong.sln
index ce99c5fe..604a550b 100644
--- a/Dlis.Jinko.Yikatong.sln
+++ b/Dlis.Jinko.Yikatong.sln
@@ -5,13 +5,13 @@ VisualStudioVersion = 17.7.34302.85
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Basic", "Basic", "{4EBCE46B-CE3A-4A47-9432-82A1854CA58A}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Canteen", "Canteen", "{3D8A98C1-83C9-4375-AEAB-4F72AFAF365B}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "RechargeAndSpend", "RechargeAndSpend", "{3D8A98C1-83C9-4375-AEAB-4F72AFAF365B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dlhis.Entity", "Src\Dlhis.Entity\Dlhis.Entity.csproj", "{53884925-C9B9-4965-8B0D-100076CA0F43}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Permission", "Permission", "{57074FD8-1A2F-40C7-8476-001778A3F65D}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Sys", "Sys", "{57074FD8-1A2F-40C7-8476-001778A3F65D}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dlhis.Permission", "Src\Dlhis.Permission\Dlhis.Permission.csproj", "{5D7096DE-AB81-4423-95AF-6489C0D94CB3}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dlhis.Sys", "Src\Dlhis.Permission\Dlhis.Sys.csproj", "{5D7096DE-AB81-4423-95AF-6489C0D94CB3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dlhis.ScheduledTask", "Src\Dlhis.ScheduledTask\Dlhis.ScheduledTask.csproj", "{0F1F7144-0BA3-4BDC-814E-E57A4E4A6392}"
EndProject
@@ -23,11 +23,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dlhis.Common.Api", "Src\Dlh
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Scheduled", "Scheduled", "{AA987BDF-EF63-467B-AD04-59F9B10D9000}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{C8F6420A-3427-4319-AB69-4F9679E05727}"
- ProjectSection(SolutionItems) = preProject
- .editorconfig = .editorconfig
- EndProjectSection
-EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Dlhis.Basic", "Src\Dlhis.Basic\Dlhis.Basic.csproj", "{D1F81CB7-F3EF-4196-A751-468248368020}"
EndProject
Global
diff --git a/Src/Dlhis.Basic/BusinessPlace/Services/Implements/BusinessPlaceService.cs b/Src/Dlhis.Basic/BusinessPlace/Services/Implements/BusinessPlaceService.cs
index 234a3fe5..00766787 100644
--- a/Src/Dlhis.Basic/BusinessPlace/Services/Implements/BusinessPlaceService.cs
+++ b/Src/Dlhis.Basic/BusinessPlace/Services/Implements/BusinessPlaceService.cs
@@ -1,6 +1,6 @@
using Dlhis.Basic.BusinessPlace.Request;
using Dlhis.Basic.BusinessPlace.Response;
-using Dlhis.Entity.Basic;
+using Dlhis.Entity.Basic.Entity;
using Dlhis.Entity.Canteen.Enums;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.DataAccess.Dto;
diff --git a/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs b/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs
index b54f731a..cb0a8b5e 100644
--- a/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs
+++ b/Src/Dlhis.Basic/BusinessShift/Services/Implements/BusinessPlaceShiftService.cs
@@ -1,6 +1,6 @@
using Dlhis.Basic.BusinessShift.Request;
using Dlhis.Basic.BusinessShift.Response;
-using Dlhis.Entity.Basic;
+using Dlhis.Entity.Basic.Entity;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.CustomClass;
using Kurisu.Core.DataAccess.Dto;
diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs
index 804592aa..2e9047cc 100644
--- a/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs
+++ b/Src/Dlhis.Basic/Device/Services/Implements/DeviceService.cs
@@ -1,6 +1,6 @@
using Dlhis.Basic.Device.Request;
using Dlhis.Basic.Device.Response;
-using Dlhis.Entity.Basic;
+using Dlhis.Entity.Basic.Entity;
using Kurisu.AspNetCore.UnifyResultAndValidation;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.DataAccess.Dto;
diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DeviceTemplateService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DeviceTemplateService.cs
index de920927..4f60c45d 100644
--- a/Src/Dlhis.Basic/Device/Services/Implements/DeviceTemplateService.cs
+++ b/Src/Dlhis.Basic/Device/Services/Implements/DeviceTemplateService.cs
@@ -1,6 +1,6 @@
using Dlhis.Basic.Device.Request;
using Dlhis.Basic.Device.Response;
-using Dlhis.Entity.Basic;
+using Dlhis.Entity.Basic.Entity;
using Kurisu.AspNetCore.UnifyResultAndValidation;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.DataAccess.Dto;
diff --git a/Src/Dlhis.Basic/Dlhis.Basic.csproj b/Src/Dlhis.Basic/Dlhis.Basic.csproj
index 5b3b834d..bc79893f 100644
--- a/Src/Dlhis.Basic/Dlhis.Basic.csproj
+++ b/Src/Dlhis.Basic/Dlhis.Basic.csproj
@@ -25,4 +25,9 @@
+
+
+
+
+
diff --git a/Src/Dlhis.Basic/MealUser/Services/Implements/MealUserService.cs b/Src/Dlhis.Basic/MealUser/Services/Implements/MealUserService.cs
index 27e1c48f..6b1e3f17 100644
--- a/Src/Dlhis.Basic/MealUser/Services/Implements/MealUserService.cs
+++ b/Src/Dlhis.Basic/MealUser/Services/Implements/MealUserService.cs
@@ -1,6 +1,6 @@
using Dlhis.Basic.MealUser.Request;
using Dlhis.Basic.MealUser.Response;
-using Dlhis.Entity.Basic;
+using Dlhis.Entity.Basic.Entity;
using Kurisu.Core.DataAccess.Dto;
using Kurisu.SqlSugar.Extensions;
using Kurisu.SqlSugar.Services;
diff --git a/Src/Dlhis.Basic/Organization/Controllers/DepartmentsController.cs b/Src/Dlhis.Basic/Organization/Controllers/DepartmentsController.cs
new file mode 100644
index 00000000..c148afb3
--- /dev/null
+++ b/Src/Dlhis.Basic/Organization/Controllers/DepartmentsController.cs
@@ -0,0 +1,14 @@
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+
+namespace Dlhis.Basic.Organization.Controllers;
+
+///
+/// 部门
+///
+[Authorize]
+[Route("api/[controller]")]
+[ApiController]
+public class DepartmentsController : ControllerBase
+{
+}
diff --git a/Src/Dlhis.Basic/Organization/Controllers/GainfosController.cs b/Src/Dlhis.Basic/Organization/Controllers/GainfosController.cs
new file mode 100644
index 00000000..82631ef8
--- /dev/null
+++ b/Src/Dlhis.Basic/Organization/Controllers/GainfosController.cs
@@ -0,0 +1,15 @@
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+
+namespace Dlhis.Basic.Organization.Controllers;
+
+///
+/// 档案
+///
+[Authorize]
+[Route("api/[controller]")]
+[ApiController]
+public class GainfosController : ControllerBase
+{
+
+}
diff --git a/Src/Dlhis.Basic/Organization/Controllers/PersonalScopesController.cs b/Src/Dlhis.Basic/Organization/Controllers/PersonalScopesController.cs
new file mode 100644
index 00000000..24ff6c1e
--- /dev/null
+++ b/Src/Dlhis.Basic/Organization/Controllers/PersonalScopesController.cs
@@ -0,0 +1,13 @@
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+
+namespace Dlhis.Basic.Organization.Controllers;
+
+///
+/// 人事范围
+///
+[Route("api/[controller]")]
+[ApiController]
+public class PersonalScopesController : ControllerBase
+{
+}
diff --git a/Src/Dlhis.Basic/Organization/Services/IGainfoService.cs b/Src/Dlhis.Basic/Organization/Services/IGainfoService.cs
new file mode 100644
index 00000000..42eabd43
--- /dev/null
+++ b/Src/Dlhis.Basic/Organization/Services/IGainfoService.cs
@@ -0,0 +1,5 @@
+namespace Dlhis.Basic.Organization.Services;
+
+public interface IGainfoService : IScopeDependency
+{
+}
diff --git a/Src/Dlhis.Basic/Organization/Services/IGainfoStore.cs b/Src/Dlhis.Basic/Organization/Services/IGainfoStore.cs
new file mode 100644
index 00000000..5fb918d7
--- /dev/null
+++ b/Src/Dlhis.Basic/Organization/Services/IGainfoStore.cs
@@ -0,0 +1,19 @@
+using Dlhis.Entity.Basic.Entity;
+using Dlhis.Entity.Basic.Enums;
+using SqlSugar;
+
+namespace Dlhis.Basic.Organization.Services;
+
+///
+/// 人员档案存储
+///
+public interface IGainfoStore : IScopeDependency
+{
+ ISugarQueryable Queryable(GainfoStatusEnumType? gainfoStatus);
+
+ Task InsertAsync(GainfoStatusEnumType? gainfoStatus, List entities);
+
+ Task UpdateAsync(GainfoStatusEnumType? gainfoStatus, List entities);
+
+ Task DeleteAsync(GainfoStatusEnumType? gainfoStatus, List entities);
+}
diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoStore.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoStore.cs
new file mode 100644
index 00000000..f3bcc871
--- /dev/null
+++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoStore.cs
@@ -0,0 +1,70 @@
+using System.Reflection;
+using Dlhis.Entity.Basic.Entity;
+using Dlhis.Entity.Basic.Enums;
+using Kurisu.SqlSugar.Services;
+using SqlSugar;
+
+namespace Dlhis.Basic.Organization.Services.Implements;
+
+public class GainfoStore : IGainfoStore
+{
+ private readonly IDbContext _dbContext;
+ private readonly ISqlSugarOptionsService _sqlSugarOptionsService;
+
+ public GainfoStore(IDbContext dbContext, ISqlSugarOptionsService sqlSugarOptionsService)
+ {
+ _dbContext = dbContext;
+ _sqlSugarOptionsService = sqlSugarOptionsService;
+ }
+
+
+ ///
+ /// 档案表查询分表(按类型)
+ ///
+ ///
+ ///
+ public ISugarQueryable Queryable(GainfoStatusEnumType? gainfoStatus)
+ {
+ if (gainfoStatus.HasValue && gainfoStatus != GainfoStatusEnumType.Working)
+ {
+ var tableName = typeof(GainfoEntity).GetCustomAttribute().TableName;
+ return _dbContext.Queryable().AS(tableName + "_" + gainfoStatus);
+ }
+
+ return _dbContext.Queryable();
+ }
+
+ public async Task InsertAsync(GainfoStatusEnumType? gainfoStatus, List entities)
+ {
+ await _dbContext.Client.Insertable(entities).AS(GetTableName(gainfoStatus)).EnableDiffLogEventIF(_sqlSugarOptionsService.Diff).ExecuteCommandAsync();
+ }
+
+ public async Task UpdateAsync(GainfoStatusEnumType? gainfoStatus, List entities)
+ {
+ await _dbContext.Client.Updateable(entities).AS(GetTableName(gainfoStatus)).EnableDiffLogEventIF(_sqlSugarOptionsService.Diff).ExecuteCommandAsync();
+ }
+
+ public async Task DeleteAsync(GainfoStatusEnumType? gainfoStatus, List entities)
+ {
+ await _dbContext.Client.Deleteable(entities).AS(GetTableName(gainfoStatus)).EnableDiffLogEventIF(_sqlSugarOptionsService.Diff).ExecuteCommandAsync();
+ }
+
+
+ //*************************************************************** help method *********************************************************************************
+
+ ///
+ /// 获取表名称
+ ///
+ ///
+ ///
+ private static string GetTableName(GainfoStatusEnumType? gainfoStatus)
+ {
+ var tableName = typeof(GainfoEntity).GetCustomAttribute().TableName;
+ if (gainfoStatus.HasValue && gainfoStatus != GainfoStatusEnumType.Working)
+ {
+ return tableName + "_" + gainfoStatus;
+ }
+
+ return tableName;
+ }
+}
diff --git a/Src/Dlhis.Canteen/Dlhis.Canteen.csproj b/Src/Dlhis.Canteen/Dlhis.Canteen.csproj
index f5c90adc..b4756614 100644
--- a/Src/Dlhis.Canteen/Dlhis.Canteen.csproj
+++ b/Src/Dlhis.Canteen/Dlhis.Canteen.csproj
@@ -39,7 +39,7 @@
-
+
diff --git a/Src/Dlhis.Canteen/Order/Controllers/OrdersController.cs b/Src/Dlhis.Canteen/Order/Controllers/OrdersController.cs
index 5510ec53..2034b1ed 100644
--- a/Src/Dlhis.Canteen/Order/Controllers/OrdersController.cs
+++ b/Src/Dlhis.Canteen/Order/Controllers/OrdersController.cs
@@ -5,32 +5,42 @@ using Kurisu.Core.DataAccess.Dto;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
-namespace Dlhis.Canteen.Order.Controllers
+namespace Dlhis.Canteen.Order.Controllers;
+
+///
+/// 订单
+///
+[Authorize]
+[Route("api/[controller]")]
+[ApiController]
+public class OrdersController : ControllerBase
{
- ///
- /// 订单
- ///
- [Authorize]
- [Route("api/[controller]")]
- [ApiController]
- public class OrdersController : ControllerBase
+ private readonly IOrderService _orderService;
+
+ public OrdersController(IOrderService orderService)
{
- private readonly IOrderService _orderService;
+ _orderService = orderService;
+ }
- public OrdersController(IOrderService orderService)
- {
- _orderService = orderService;
- }
+ ///
+ /// 订单分页
+ ///
+ ///
+ ///
+ [HttpGet("page")]
+ public async Task> GetPageAsync([FromQuery] OrderPageRequest request)
+ {
+ return await _orderService.GetPageAsync(request);
+ }
- ///
- /// 订单分页
- ///
- ///
- ///
- [HttpGet("page")]
- public async Task> GetPageAsync([FromQuery] OrderPageRequest request)
- {
- return await _orderService.GetPageAsync(request);
- }
+ ///
+ /// 添加充值消费订单
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task AddAsync(OrderAddRequest request)
+ {
+ await _orderService.AddAsync(request);
}
}
diff --git a/Src/Dlhis.Canteen/Order/Request/OrderAddRequest.cs b/Src/Dlhis.Canteen/Order/Request/OrderAddRequest.cs
new file mode 100644
index 00000000..05b6529b
--- /dev/null
+++ b/Src/Dlhis.Canteen/Order/Request/OrderAddRequest.cs
@@ -0,0 +1,5 @@
+namespace Dlhis.Canteen.Order.Request;
+
+public class OrderAddRequest
+{
+}
diff --git a/Src/Dlhis.Canteen/Order/Services/IOrderService.cs b/Src/Dlhis.Canteen/Order/Services/IOrderService.cs
index 16f4fb21..4beda47f 100644
--- a/Src/Dlhis.Canteen/Order/Services/IOrderService.cs
+++ b/Src/Dlhis.Canteen/Order/Services/IOrderService.cs
@@ -2,10 +2,11 @@
using Dlhis.Canteen.Order.Response;
using Kurisu.Core.DataAccess.Dto;
-namespace Dlhis.Canteen.Order.Services
+namespace Dlhis.Canteen.Order.Services;
+
+public interface IOrderService
{
- public interface IOrderService
- {
- Task> GetPageAsync(OrderPageRequest request);
- }
+ Task> GetPageAsync(OrderPageRequest request);
+
+ Task AddAsync(OrderAddRequest request);
}
diff --git a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs
index a6135dac..afdacd4c 100644
--- a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs
+++ b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs
@@ -24,4 +24,9 @@ public class OrderService : IOrderService
return page;
}
+
+ public Task AddAsync(OrderAddRequest request)
+ {
+ throw new NotImplementedException();
+ }
}
diff --git a/Src/Dlhis.Canteen/Program.cs b/Src/Dlhis.Canteen/Program.cs
index 49e05881..3aea2b2b 100644
--- a/Src/Dlhis.Canteen/Program.cs
+++ b/Src/Dlhis.Canteen/Program.cs
@@ -1,17 +1,20 @@
using Kurisu.AspNetCore.Startup;
using Kurisu.Startup;
-class Program
+namespace Dlhis.Canteen
{
- static void Main(string[] args)
+ class Program
{
- KurisuHost.Run(true, args);
+ static void Main(string[] args)
+ {
+ KurisuHost.Run(true, args);
+ }
}
-}
-public class Startup : DefaultStartup
-{
- public Startup(IConfiguration configuration) : base(configuration)
+ public class Startup : DefaultStartup
{
+ public Startup(IConfiguration configuration) : base(configuration)
+ {
+ }
}
}
\ No newline at end of file
diff --git a/Src/Dlhis.Canteen/Setting/Services/Implements/CanteenSettingService.cs b/Src/Dlhis.Canteen/Setting/Services/Implements/CanteenSettingService.cs
index 54751746..b23ea9b7 100644
--- a/Src/Dlhis.Canteen/Setting/Services/Implements/CanteenSettingService.cs
+++ b/Src/Dlhis.Canteen/Setting/Services/Implements/CanteenSettingService.cs
@@ -1,6 +1,6 @@
using Dlhis.Canteen.Setting.Request;
using Dlhis.Canteen.Setting.Response;
-using Dlhis.Entity.Basic;
+using Dlhis.Entity.Basic.Entity;
using Dlhis.Entity.Canteen.Enums;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.DataAccess.Dto;
diff --git a/Src/Dlhis.Common/Dlhis.Common.csproj b/Src/Dlhis.Common/Dlhis.Common.csproj
index 785e8938..bba5cbec 100644
--- a/Src/Dlhis.Common/Dlhis.Common.csproj
+++ b/Src/Dlhis.Common/Dlhis.Common.csproj
@@ -25,7 +25,7 @@
-
+
diff --git a/Src/Dlhis.Entity/Basic/CanteenBusinessPlaceEntity.cs b/Src/Dlhis.Entity/Basic/Entity/CanteenBusinessPlaceEntity.cs
similarity index 97%
rename from Src/Dlhis.Entity/Basic/CanteenBusinessPlaceEntity.cs
rename to Src/Dlhis.Entity/Basic/Entity/CanteenBusinessPlaceEntity.cs
index 89c58af1..11aae70f 100644
--- a/Src/Dlhis.Entity/Basic/CanteenBusinessPlaceEntity.cs
+++ b/Src/Dlhis.Entity/Basic/Entity/CanteenBusinessPlaceEntity.cs
@@ -3,7 +3,7 @@ using Kurisu.Core.DataAccess.Entity;
using SqlSugar;
using SqlSugar.DbConvert;
-namespace Dlhis.Entity.Basic;
+namespace Dlhis.Entity.Basic.Entity;
///
/// 营业点
diff --git a/Src/Dlhis.Entity/Basic/CanteenBusinessShiftEntity.cs b/Src/Dlhis.Entity/Basic/Entity/CanteenBusinessShiftEntity.cs
similarity index 97%
rename from Src/Dlhis.Entity/Basic/CanteenBusinessShiftEntity.cs
rename to Src/Dlhis.Entity/Basic/Entity/CanteenBusinessShiftEntity.cs
index 1ea46c29..417d18bd 100644
--- a/Src/Dlhis.Entity/Basic/CanteenBusinessShiftEntity.cs
+++ b/Src/Dlhis.Entity/Basic/Entity/CanteenBusinessShiftEntity.cs
@@ -1,7 +1,7 @@
using Kurisu.Core.DataAccess.Entity;
using SqlSugar;
-namespace Dlhis.Entity.Basic;
+namespace Dlhis.Entity.Basic.Entity;
///
/// 营业点餐次
diff --git a/Src/Dlhis.Entity/Basic/CanteenSettingEntity.cs b/Src/Dlhis.Entity/Basic/Entity/CanteenSettingEntity.cs
similarity index 97%
rename from Src/Dlhis.Entity/Basic/CanteenSettingEntity.cs
rename to Src/Dlhis.Entity/Basic/Entity/CanteenSettingEntity.cs
index cadb4416..b5afcc2b 100644
--- a/Src/Dlhis.Entity/Basic/CanteenSettingEntity.cs
+++ b/Src/Dlhis.Entity/Basic/Entity/CanteenSettingEntity.cs
@@ -3,7 +3,7 @@ using Kurisu.Core.DataAccess.Entity;
using SqlSugar;
using SqlSugar.DbConvert;
-namespace Dlhis.Entity.Basic;
+namespace Dlhis.Entity.Basic.Entity;
///
/// 就餐配置
diff --git a/Src/Dlhis.Entity/Basic/CanteenUserEntity.cs b/Src/Dlhis.Entity/Basic/Entity/CanteenUserEntity.cs
similarity index 97%
rename from Src/Dlhis.Entity/Basic/CanteenUserEntity.cs
rename to Src/Dlhis.Entity/Basic/Entity/CanteenUserEntity.cs
index 502431ec..51d6b1db 100644
--- a/Src/Dlhis.Entity/Basic/CanteenUserEntity.cs
+++ b/Src/Dlhis.Entity/Basic/Entity/CanteenUserEntity.cs
@@ -3,7 +3,7 @@ using Kurisu.Core.DataAccess.Entity;
using SqlSugar;
using SqlSugar.DbConvert;
-namespace Dlhis.Entity.Basic;
+namespace Dlhis.Entity.Basic.Entity;
///
/// 就餐人员
diff --git a/Src/Dlhis.Entity/Basic/DeviceEntity.cs b/Src/Dlhis.Entity/Basic/Entity/DeviceEntity.cs
similarity index 98%
rename from Src/Dlhis.Entity/Basic/DeviceEntity.cs
rename to Src/Dlhis.Entity/Basic/Entity/DeviceEntity.cs
index 0af99042..96dbbc82 100644
--- a/Src/Dlhis.Entity/Basic/DeviceEntity.cs
+++ b/Src/Dlhis.Entity/Basic/Entity/DeviceEntity.cs
@@ -2,7 +2,7 @@
using Kurisu.Core.DataAccess.Entity;
using SqlSugar;
-namespace Dlhis.Entity.Basic;
+namespace Dlhis.Entity.Basic.Entity;
///
/// 设备
diff --git a/Src/Dlhis.Entity/Basic/DeviceTemplateEntity.cs b/Src/Dlhis.Entity/Basic/Entity/DeviceTemplateEntity.cs
similarity index 96%
rename from Src/Dlhis.Entity/Basic/DeviceTemplateEntity.cs
rename to Src/Dlhis.Entity/Basic/Entity/DeviceTemplateEntity.cs
index f5fc98c4..1d7d235b 100644
--- a/Src/Dlhis.Entity/Basic/DeviceTemplateEntity.cs
+++ b/Src/Dlhis.Entity/Basic/Entity/DeviceTemplateEntity.cs
@@ -2,7 +2,7 @@
using Kurisu.Core.DataAccess.Entity;
using SqlSugar;
-namespace Dlhis.Entity.Basic;
+namespace Dlhis.Entity.Basic.Entity;
///
/// 设备配置模板
diff --git a/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs b/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs
new file mode 100644
index 00000000..c9b08efb
--- /dev/null
+++ b/Src/Dlhis.Entity/Basic/Entity/GainfoEntity.cs
@@ -0,0 +1,11 @@
+using SqlSugar;
+
+namespace Dlhis.Entity.Basic.Entity;
+
+///
+/// 用户档案
+///
+[SugarTable("Gainfo")]
+public class GainfoEntity : SugarBaseEntity
+{
+}
diff --git a/Src/Dlhis.Entity/Basic/Enums/GainfoStatusEnumType.cs b/Src/Dlhis.Entity/Basic/Enums/GainfoStatusEnumType.cs
new file mode 100644
index 00000000..dd5e9c00
--- /dev/null
+++ b/Src/Dlhis.Entity/Basic/Enums/GainfoStatusEnumType.cs
@@ -0,0 +1,28 @@
+using System.ComponentModel;
+
+namespace Dlhis.Entity.Basic.Enums;
+
+///
+/// 人员档案状态
+///
+[Description("人员档案状态")]
+public enum GainfoStatusEnumType
+{
+ ///
+ ///
+ ///
+ [Description("在职")]
+ Working = 1,
+
+ ///
+ /// 离职
+ ///
+ [Description("离职")]
+ Leave = 2,
+
+ ///
+ /// 外部人员
+ ///
+ [Description("外部")]
+ External = 3
+}
diff --git a/Src/Dlhis.Permission/Dlhis.Permission.csproj b/Src/Dlhis.Permission/Dlhis.Sys.csproj
similarity index 83%
rename from Src/Dlhis.Permission/Dlhis.Permission.csproj
rename to Src/Dlhis.Permission/Dlhis.Sys.csproj
index 731e44ff..8a6887a8 100644
--- a/Src/Dlhis.Permission/Dlhis.Permission.csproj
+++ b/Src/Dlhis.Permission/Dlhis.Sys.csproj
@@ -17,15 +17,11 @@
-
+
-
-
-
-
diff --git a/Src/Dlhis.Permission/Menu/Controllers/MenusController.cs b/Src/Dlhis.Permission/Menu/Controllers/MenusController.cs
new file mode 100644
index 00000000..7d1bac5c
--- /dev/null
+++ b/Src/Dlhis.Permission/Menu/Controllers/MenusController.cs
@@ -0,0 +1,103 @@
+using Dlhis.Entity.Permission.Enums;
+using Kurisu.SqlSugar.Attributes;
+using System.ComponentModel.DataAnnotations;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Authorization;
+using Dlhis.Sys.Menu.Services;
+using Dlhis.Sys.Menu.Response;
+using Dlhis.Sys.Menu.Request;
+
+namespace Dlhis.Sys.Menu.Controllers;
+
+[Authorize]
+[Route("api/[controller]")]
+[ApiController]
+public class MenusController : ControllerBase
+{
+ private readonly IMenuService _menuService;
+
+ public MenusController(IMenuService menuService)
+ {
+ _menuService = menuService;
+ }
+
+ ///
+ /// 菜单列表
+ ///
+ ///
+ [HttpGet("list")]
+ public async Task> GetListAsync([EnumDataType(typeof(PlatformEnumType))] PlatformEnumType? platform)
+ {
+ if (!platform.HasValue)
+ {
+ platform = PlatformEnumType.UserMobile;
+ }
+ return await _menuService.GetListAsync(platform.Value);
+ }
+
+ ///
+ /// 保存菜单
+ ///
+ ///
+ ///
+ [Transactional]
+ [HttpPost]
+ public async Task Save(SaveMenuRequest request)
+ {
+ await _menuService.SaveMenuAsync(request);
+ }
+
+ ///
+ /// 分配权限
+ ///
+ ///
+ ///
+ [HttpPost("assign")]
+ public async Task AssignmentAsync(MenuPermissionAssignmentRequest request)
+ {
+ await _menuService.AssignmentAsync(request);
+ }
+
+ ///
+ /// 当前类型的权限分配
+ ///
+ /// 权限类型
+ /// 类型对应的唯一值
+ ///
+ [HttpGet("assignments")]
+ public async Task> GetAssignmentsAsync([EnumDataType(typeof(MenuPermissionTypeEnumType))] MenuPermissionTypeEnumType permissionType, [Required] string uniqueValue)
+ {
+ return await _menuService.GetAssignmentCodesAsync(permissionType, uniqueValue);
+ }
+
+ ///
+ /// 获取所有权限分配
+ ///
+ ///
+ [HttpGet("assignments/all")]
+ public async Task> GetAllAssignmentsAsync()
+ {
+ return await _menuService.GetAllAssignmentPermissionsAsync();
+ }
+
+ ///
+ /// 我的菜单
+ ///
+ ///
+ [HttpGet("my")]
+ public async Task> GetCurrentMenusAsync()
+ {
+ return await _menuService.GetCurrentMenusAsync();
+ }
+
+ ///
+ /// 重置
+ ///
+ ///
+ ///
+ [HttpPost("reset")]
+ public async Task ResetAsync(List request)
+ {
+ await _menuService.ResetAsync(request);
+ }
+}
diff --git a/Src/Dlhis.Permission/Menu/Request/MenuPermissionAssignmentRequest.cs b/Src/Dlhis.Permission/Menu/Request/MenuPermissionAssignmentRequest.cs
index 661801c7..427b6fbe 100644
--- a/Src/Dlhis.Permission/Menu/Request/MenuPermissionAssignmentRequest.cs
+++ b/Src/Dlhis.Permission/Menu/Request/MenuPermissionAssignmentRequest.cs
@@ -1,7 +1,7 @@
using System.ComponentModel.DataAnnotations;
using Dlhis.Entity.Permission.Enums;
-namespace Dlhis.Permission.Menu.Request;
+namespace Dlhis.Sys.Menu.Request;
public class MenuPermissionAssignmentRequest
{
diff --git a/Src/Dlhis.Permission/Menu/Request/SaveMenuRequest.cs b/Src/Dlhis.Permission/Menu/Request/SaveMenuRequest.cs
index 2541cb50..b5e03cbf 100644
--- a/Src/Dlhis.Permission/Menu/Request/SaveMenuRequest.cs
+++ b/Src/Dlhis.Permission/Menu/Request/SaveMenuRequest.cs
@@ -1,7 +1,7 @@
using System.ComponentModel.DataAnnotations;
using Dlhis.Entity.Permission.Enums;
-namespace Dlhis.Permission.Menu.Request;
+namespace Dlhis.Sys.Menu.Request;
public class SaveMenuRequest : IValidatableObject
{
diff --git a/Src/Dlhis.Permission/Menu/Response/MenuResponse.cs b/Src/Dlhis.Permission/Menu/Response/MenuResponse.cs
index 660b9d94..819fd886 100644
--- a/Src/Dlhis.Permission/Menu/Response/MenuResponse.cs
+++ b/Src/Dlhis.Permission/Menu/Response/MenuResponse.cs
@@ -1,6 +1,6 @@
using Dlhis.Entity.Permission.Enums;
-namespace Dlhis.Permission.Menu.Response;
+namespace Dlhis.Sys.Menu.Response;
public class MenuResponse
{
diff --git a/Src/Dlhis.Permission/Menu/Services/IMenuService.cs b/Src/Dlhis.Permission/Menu/Services/IMenuService.cs
index fdd22903..df8c6083 100644
--- a/Src/Dlhis.Permission/Menu/Services/IMenuService.cs
+++ b/Src/Dlhis.Permission/Menu/Services/IMenuService.cs
@@ -1,8 +1,8 @@
using Dlhis.Entity.Permission.Enums;
-using Dlhis.Permission.Menu.Request;
-using Dlhis.Permission.Menu.Response;
+using Dlhis.Sys.Menu.Request;
+using Dlhis.Sys.Menu.Response;
-namespace Dlhis.Permission.Menu.Services;
+namespace Dlhis.Sys.Menu.Services;
public interface IMenuService
{
diff --git a/Src/Dlhis.Permission/Menu/Services/Implements/MenuService.cs b/Src/Dlhis.Permission/Menu/Services/Implements/MenuService.cs
index 4d804ad4..1e8deb37 100644
--- a/Src/Dlhis.Permission/Menu/Services/Implements/MenuService.cs
+++ b/Src/Dlhis.Permission/Menu/Services/Implements/MenuService.cs
@@ -1,13 +1,13 @@
using Dlhis.Entity.Permission.Entities;
using Dlhis.Entity.Permission.Enums;
-using Dlhis.Permission.Menu.Request;
-using Dlhis.Permission.Menu.Response;
+using Dlhis.Sys.Menu.Request;
+using Dlhis.Sys.Menu.Response;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.User.Abstractions;
using Kurisu.SqlSugar.Services;
using Mapster;
-namespace Dlhis.Permission.Menu.Services.Implements;
+namespace Dlhis.Sys.Menu.Services.Implements;
public class MenuService : IMenuService
{
diff --git a/Src/Dlhis.ScheduledTask/Dlhis.ScheduledTask.csproj b/Src/Dlhis.ScheduledTask/Dlhis.ScheduledTask.csproj
index bdc92149..c56c3934 100644
--- a/Src/Dlhis.ScheduledTask/Dlhis.ScheduledTask.csproj
+++ b/Src/Dlhis.ScheduledTask/Dlhis.ScheduledTask.csproj
@@ -17,7 +17,7 @@
-
+