4 changed files with 111 additions and 12 deletions
-
27src/Shentun.Peis.Application/AbpUserDepartments/AbpUserDepartmentAppService.cs
-
2src/Shentun.Peis.Application/ItemTypes/ItemTypeAppService.cs
-
9src/Shentun.Peis.Application/MyUser/MyUserAppService.cs
-
85src/Shentun.Peis.Application/UserItemTypes/UserItemTypeAppService.cs
@ -0,0 +1,85 @@ |
|||||
|
using Microsoft.AspNetCore.Authorization; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Shentun.Peis.Models; |
||||
|
using System; |
||||
|
using System.Collections.Generic; |
||||
|
using System.Linq; |
||||
|
using System.Text; |
||||
|
using System.Threading.Tasks; |
||||
|
using Volo.Abp.Domain.Repositories; |
||||
|
using Volo.Abp; |
||||
|
using Volo.Abp.Application.Services; |
||||
|
|
||||
|
namespace Shentun.Peis.UserItemTypes |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 用户对应项目类别
|
||||
|
/// </summary>
|
||||
|
[ApiExplorerSettings(GroupName = "Work")] |
||||
|
[Authorize] |
||||
|
public class UserItemTypeAppService : ApplicationService |
||||
|
{ |
||||
|
private readonly IRepository<UserItemType> _userItemTypeRepository; |
||||
|
|
||||
|
public UserItemTypeAppService( |
||||
|
IRepository<UserItemType> userItemTypeRepository |
||||
|
) |
||||
|
{ |
||||
|
_userItemTypeRepository = userItemTypeRepository; |
||||
|
} |
||||
|
/// <summary>
|
||||
|
/// 设置用户对应的项目类别 先删除,后创建
|
||||
|
/// </summary>
|
||||
|
/// <param name="UserId">用户ID</param>
|
||||
|
/// <param name="ItemTypeIds">对应的项目类别ID集合</param>
|
||||
|
/// <returns></returns>
|
||||
|
/// <exception cref="UserFriendlyException"></exception>
|
||||
|
[HttpPost("api/app/UserItemType/CreateMany")] |
||||
|
public async Task CreateManyAsync(Guid UserId, List<Guid> ItemTypeIds) |
||||
|
{ |
||||
|
|
||||
|
if (UserId == Guid.Empty) |
||||
|
{ |
||||
|
throw new UserFriendlyException($"用户ID不能为空"); |
||||
|
} |
||||
|
|
||||
|
await _userItemTypeRepository.DeleteAsync(d => d.UserId == UserId, true); |
||||
|
|
||||
|
|
||||
|
if (ItemTypeIds.Any()) |
||||
|
{ |
||||
|
|
||||
|
List<UserItemType> entlist = new List<UserItemType>(); |
||||
|
foreach (var itemTypeId in ItemTypeIds) |
||||
|
{ |
||||
|
var ent = new UserItemType |
||||
|
{ |
||||
|
UserId = UserId, |
||||
|
ItemTypeId = itemTypeId |
||||
|
}; |
||||
|
entlist.Add(ent); |
||||
|
} |
||||
|
|
||||
|
await _userItemTypeRepository.InsertManyAsync(entlist); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 获取当前用户对应的项目类别
|
||||
|
/// </summary>
|
||||
|
/// <param name="UserId">用户ID</param>
|
||||
|
/// <returns></returns>
|
||||
|
[HttpPost("api/app/UserItemType/GetUserItemType")] |
||||
|
public async Task<List<Guid>> GetUserItemTypeAsync(Guid UserId) |
||||
|
{ |
||||
|
List<Guid> guids = new List<Guid>(); |
||||
|
var entlist = await _userItemTypeRepository.GetListAsync(m => m.UserId == UserId); |
||||
|
if (entlist.Any()) |
||||
|
{ |
||||
|
guids = entlist.Select(s => s.ItemTypeId).ToList(); |
||||
|
} |
||||
|
return guids; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue