diff --git a/Src/Dlhis.Basic/MealUser/Controllers/BookingAddresController.cs b/Src/Dlhis.Basic/MealUser/Controllers/BookingAddresController.cs deleted file mode 100644 index 481ea041..00000000 --- a/Src/Dlhis.Basic/MealUser/Controllers/BookingAddresController.cs +++ /dev/null @@ -1,47 +0,0 @@ -using Dlhis.Basic.MealUser.Request; -using Dlhis.Basic.MealUser.Response; -using Dlhis.Basic.MealUser.Services; -using Kurisu.Core.DataAccess.Dto; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Mvc; - -namespace Dlhis.Basic.MealUser.Controllers -{ - /// - /// 订餐地址 - /// - [Authorize] - [Route("api/[controller]")] - [ApiController] - public class BookingAddresController : ControllerBase - { - private readonly IBookingAddresService _bookingAddresService; - - public BookingAddresController(IBookingAddresService bookingAddresService) - { - _bookingAddresService = bookingAddresService; - } - - /// - /// 地址分页 - /// - /// - /// - [HttpGet("pageAddres")] - public async Task> GetAddresPageAsync([FromQuery] GetAddresPageRequest request) - { - return await _bookingAddresService.GetAddresPageRequest(request); - } - - /// - /// 地址保存 - /// - /// - /// - [HttpPost("saveAddres")] - public async Task SaveAddresAsync(SaveAddresRequest request) - { - await _bookingAddresService.SaveAddresAsync(request); - } - } -} diff --git a/Src/Dlhis.Basic/MealUser/Request/GetAddresPageRequest.cs b/Src/Dlhis.Basic/MealUser/Request/GetAddresPageRequest.cs deleted file mode 100644 index 4f290222..00000000 --- a/Src/Dlhis.Basic/MealUser/Request/GetAddresPageRequest.cs +++ /dev/null @@ -1,8 +0,0 @@ -using Kurisu.Core.DataAccess.Dto; - -namespace Dlhis.Basic.MealUser.Request -{ - public class GetAddresPageRequest : PageDto - { - } -} diff --git a/Src/Dlhis.Basic/MealUser/Request/SaveAddresRequest.cs b/Src/Dlhis.Basic/MealUser/Request/SaveAddresRequest.cs deleted file mode 100644 index c40c413f..00000000 --- a/Src/Dlhis.Basic/MealUser/Request/SaveAddresRequest.cs +++ /dev/null @@ -1,16 +0,0 @@ -using SqlSugar; - -namespace Dlhis.Basic.MealUser.Request -{ - public class SaveAddresRequest - { - - public long? Id { get; set; } - - /// - /// 订餐地址 - /// - [SugarColumn(ColumnDescription = "订餐地址")] - public string Addres { get; set; } - } -} diff --git a/Src/Dlhis.Basic/MealUser/Response/GetAddresPageResponse.cs b/Src/Dlhis.Basic/MealUser/Response/GetAddresPageResponse.cs deleted file mode 100644 index ff35ae8b..00000000 --- a/Src/Dlhis.Basic/MealUser/Response/GetAddresPageResponse.cs +++ /dev/null @@ -1,15 +0,0 @@ -using SqlSugar; - -namespace Dlhis.Basic.MealUser.Response -{ - public class GetAddresPageResponse - { - public long Id { get; set; } - - /// - /// 订餐地址 - /// - public string Addres { get; set; } - - } -} diff --git a/Src/Dlhis.Basic/MealUser/Services/IBookingAddresService.cs b/Src/Dlhis.Basic/MealUser/Services/IBookingAddresService.cs deleted file mode 100644 index a8ed76e5..00000000 --- a/Src/Dlhis.Basic/MealUser/Services/IBookingAddresService.cs +++ /dev/null @@ -1,12 +0,0 @@ -using Dlhis.Basic.MealUser.Request; -using Dlhis.Basic.MealUser.Response; -using Kurisu.Core.DataAccess.Dto; - -namespace Dlhis.Basic.MealUser.Services -{ - public interface IBookingAddresService : IScopeDependency - { - Task> GetAddresPageRequest(GetAddresPageRequest request); - Task SaveAddresAsync(SaveAddresRequest request); - } -} diff --git a/Src/Dlhis.Basic/MealUser/Services/Implements/BookingAddresService.cs b/Src/Dlhis.Basic/MealUser/Services/Implements/BookingAddresService.cs deleted file mode 100644 index d70bee81..00000000 --- a/Src/Dlhis.Basic/MealUser/Services/Implements/BookingAddresService.cs +++ /dev/null @@ -1,47 +0,0 @@ -using Dlhis.Basic.MealUser.Request; -using Dlhis.Basic.MealUser.Response; -using Dlhis.Entity.Basic.Entity; -using Kurisu.AspNetCore.Utils.Extensions; -using Kurisu.Core.DataAccess.Dto; -using Kurisu.SqlSugar.Extensions; -using Kurisu.SqlSugar.Services; -using Mapster; -using Microsoft.AspNetCore.Mvc; - -namespace Dlhis.Basic.MealUser.Services.Implements -{ - public class BookingAddresService : IBookingAddresService - { - private readonly IDbContext _dbContext; - - public BookingAddresService(IDbContext dbContext) - { - _dbContext = dbContext; - } - - public async Task> GetAddresPageRequest(GetAddresPageRequest request) - { - return await _dbContext.Queryable() - .WhereIF(request.Search.IsPresent(),x=>x.Addres.Contains(request.Search)) - .Select() - .ToPageListAsync(request); - } - - public async Task SaveAddresAsync(SaveAddresRequest request) - { - if (!request.Id.HasValue) - { - var entity = request.Adapt(); - await _dbContext.InsertAsync(entity); - } - else - { - var entity = await _dbContext.Queryable() - .Where(x => x.Id == request.Id) - .FirstAsync(); - request.Adapt(entity); - await _dbContext.UpdateAsync(entity); - } - } - } -} diff --git a/Src/Dlhis.Basic/Places/Request/BookingAddressPageRequest.cs b/Src/Dlhis.Basic/Places/Request/BookingAddressPageRequest.cs index b08d1e3e..98f5d2b0 100644 --- a/Src/Dlhis.Basic/Places/Request/BookingAddressPageRequest.cs +++ b/Src/Dlhis.Basic/Places/Request/BookingAddressPageRequest.cs @@ -1,4 +1,6 @@ -using Kurisu.Core.DataAccess.Dto; + + +using Kurisu.Core.DataAccess.Dto; namespace Dlhis.Basic.Places.Request; diff --git a/Src/Dlhis.Basic/Places/Request/BusinessPlacePermissionSaveRequest.cs b/Src/Dlhis.Basic/Places/Request/BusinessPlacePermissionSaveRequest.cs index 9e900c9c..b6c6b4c1 100644 --- a/Src/Dlhis.Basic/Places/Request/BusinessPlacePermissionSaveRequest.cs +++ b/Src/Dlhis.Basic/Places/Request/BusinessPlacePermissionSaveRequest.cs @@ -2,6 +2,8 @@ public class BusinessPlacePermissionSaveRequest { + public long? Id { get; set; } + /// /// 管理人员userId /// @@ -10,5 +12,5 @@ public class BusinessPlacePermissionSaveRequest /// /// 营业点 /// - public List BusinessPlaceCodes { get; set; } = new(); + public Guid BusinessPlaceCode { get; set; } } diff --git a/Src/Dlhis.Basic/Places/Response/BusinessPlaceDto.cs b/Src/Dlhis.Basic/Places/Response/BusinessPlaceDto.cs new file mode 100644 index 00000000..a5dd68f7 --- /dev/null +++ b/Src/Dlhis.Basic/Places/Response/BusinessPlaceDto.cs @@ -0,0 +1,8 @@ +namespace Dlhis.Basic.BusinessPlace.Response +{ + public class BusinessPlaceDto + { + public Guid Code { get; set; } + public string Name { get; set; } + } +} diff --git a/Src/Dlhis.Basic/Places/Response/GetMyResponse.cs b/Src/Dlhis.Basic/Places/Response/GetMyResponse.cs new file mode 100644 index 00000000..1a3b6fd2 --- /dev/null +++ b/Src/Dlhis.Basic/Places/Response/GetMyResponse.cs @@ -0,0 +1,7 @@ +namespace Dlhis.Basic.BusinessPlace.Response +{ + public class GetMyResponse + { + public List dtos { get; set; } + } +} diff --git a/Src/Dlhis.Basic/Places/Services/IBusinessPlacePermissionsService.cs b/Src/Dlhis.Basic/Places/Services/IBusinessPlacePermissionsService.cs index 5d069b56..d36816ee 100644 --- a/Src/Dlhis.Basic/Places/Services/IBusinessPlacePermissionsService.cs +++ b/Src/Dlhis.Basic/Places/Services/IBusinessPlacePermissionsService.cs @@ -1,7 +1,6 @@ using Dlhis.Basic.Places.Request; using Dlhis.Basic.BusinessPlace.Response; using Kurisu.Core.DataAccess.Dto; -using Dlhis.Basic.Places.Dtos; namespace Dlhis.Basic.BusinessPlace.Services; @@ -11,9 +10,5 @@ public interface IBusinessPlacePermissionsService : IScopeDependency Task SaveBusinessPlacePermissionAsync(BusinessPlacePermissionSaveRequest request); - Task> GetMyAsync(); - - Task> GetBusinessPlacePermissionByUserIdAsyc(int id); - - Task DeleteAssignmentAsync(int id); + Task GetMyAsync(); } diff --git a/Src/Dlhis.Basic/Places/Services/Implements/BusinessPlacePermissionsService.cs b/Src/Dlhis.Basic/Places/Services/Implements/BusinessPlacePermissionsService.cs index 6b0cd8e2..2141ab41 100644 --- a/Src/Dlhis.Basic/Places/Services/Implements/BusinessPlacePermissionsService.cs +++ b/Src/Dlhis.Basic/Places/Services/Implements/BusinessPlacePermissionsService.cs @@ -5,11 +5,6 @@ using Kurisu.Core.DataAccess.Dto; using Kurisu.Core.User.Abstractions; using Kurisu.SqlSugar.Services; using Mapster; -using Dlhis.Basic.Places.Dtos; -using Kurisu.SqlSugar.Extensions; -using Dlhis.Sys.Api; -using Microsoft.AspNetCore.Mvc; -using System.Security.Claims; namespace Dlhis.Basic.BusinessPlace.Services.Implements; @@ -17,108 +12,55 @@ public class BusinessPlacePermissionsService : IBusinessPlacePermissionsService { private readonly IDbContext _dbContext; private readonly ICurrentUser _currentUser; - private readonly IUserApi _userApi; - public BusinessPlacePermissionsService(IDbContext dbContext, ICurrentUser currentUser, IUserApi userApi) + public BusinessPlacePermissionsService(IDbContext dbContext, ICurrentUser currentUser) { _dbContext = dbContext; _currentUser = currentUser; - _userApi = userApi; } public async Task> GetPageAsync(BusinessPlacePermissionPageRequest request) { - var page = await _dbContext.Queryable() - .LeftJoin((x, bplace) => x.BusinessPlaceCode == bplace.Code) - .Select((x, bplace) => new BusinessPlacePermissionPageResponse - { - UserId = x.ManagerUserId, - BusinessPlaceCode = x.BusinessPlaceCode, - BusinessPlaceName = bplace.Name, - }) - .ToPageListAsync(request); - - var usersResult = await _userApi.GetUserByIdsAsync(page.Data.Select(x => x.UserId).Distinct().ToList()); - var users = usersResult.Data; - - page.Data.ForEach(item => - { - item.UserName = users.FirstOrDefault(x => x.Id == item.UserId)?.UserName; - }); - - return page; + throw new NotImplementedException(); } - public async Task> GetMyAsync() + public async Task GetMyAsync() { var userId = _currentUser.GetIntSubjectId(); - var role = _currentUser.GetUserClaim(ClaimTypes.Role); - var isAdmin = role == "admin" || role == "tenant-admin"; - var codes = new List(); - if (isAdmin) - { - codes = await _dbContext.Queryable() - .Select(x => x.Code) - .ToListAsync(); - } - else - { - codes = await _dbContext.Queryable() + var guids = await _dbContext.Queryable() .Where(x => x.ManagerUserId == userId) .Select(x => x.BusinessPlaceCode) .Distinct() .ToListAsync(); - } - - return await _dbContext.Queryable() - .Where(x => codes.Contains(x.Code)) + var dtos = await _dbContext.Queryable() + .Where(x => guids.Contains(x.Code)) .Select() .ToListAsync(); + var myResponse = new GetMyResponse + { + dtos = dtos + }; + return myResponse; } public async Task SaveBusinessPlacePermissionAsync(BusinessPlacePermissionSaveRequest request) { var userId = _currentUser.GetIntSubjectId(); - - await _dbContext.Client.Deleteable() - .Where(x => x.ManagerUserId == request.UserId) - .ExecuteCommandAsync(); - - await _dbContext.InsertAsync(request.BusinessPlaceCodes.Select(x => new BusinessPlaceManagerRelationshipEntity + if (request.Id.HasValue) { - BusinessPlaceCode = x, - ManagerUserId = request.UserId - }).ToList()); - } + var entity = await _dbContext.Queryable() + .Where(x => x.Id == request.Id).FirstAsync(); - public async Task> GetBusinessPlacePermissionByUserIdAsyc(int id) - { - var infos = await _dbContext.Queryable() - .LeftJoin((x, bplace) => x.BusinessPlaceCode == bplace.Code) - .Where(x => x.ManagerUserId == id) - .Select((x, bplace) => new BusinessPlacePermissionPageResponse - { - UserId = x.ManagerUserId, - BusinessPlaceCode = x.BusinessPlaceCode, - BusinessPlaceName = bplace.Name, - }) - .ToListAsync(); - - var userResult = await _userApi.GetUserByIdAsync(id); - var user = userResult.Data; - - infos.ForEach(item => + request.Adapt(entity); + await _dbContext.UpdateAsync(entity); + } + else { - item.UserName = user?.UserName; - }); - - return infos; - } - - public async Task DeleteAssignmentAsync(int id) - { - await _dbContext.Client.Deleteable().Where(x => x.Id == id).ExecuteCommandAsync(); + var entity = request.Adapt(); + entity.ManagerUserId = userId; + await _dbContext.InsertAsync(entity); + } } } diff --git a/Src/Dlhis.Entity/Basic/Entity/BookingAddresEntity.cs b/Src/Dlhis.Entity/Basic/Entity/BookingAddresEntity.cs deleted file mode 100644 index cb39c6a4..00000000 --- a/Src/Dlhis.Entity/Basic/Entity/BookingAddresEntity.cs +++ /dev/null @@ -1,28 +0,0 @@ -using Kurisu.Core.DataAccess.Entity; -using Kurisu.SqlSugar; -using SqlSugar; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Dlhis.Entity.Basic.Entity -{ - /// - /// 就餐地址 - /// - [SugarTable(TableName = "BookingAddres", TableDescription = "就餐地址")] - public class BookingAddresEntity : SugarBaseEntity, ITenantId - { - - - /// - /// 订餐地址 - /// - [SugarColumn(ColumnDescription = "订餐地址")] - public string Addres { get; set; } - - public string TenantId { get; set; } - } -}