|
@@ -8,7 +8,9 @@ using Hotline.Share.Dtos;
|
|
|
using Hotline.Share.Dtos.Article;
|
|
|
using Hotline.Share.Dtos.FlowEngine;
|
|
|
using Hotline.Share.Dtos.Order;
|
|
|
+using Hotline.Share.Dtos.Users;
|
|
|
using Hotline.Share.Enums.Article;
|
|
|
+using Hotline.Users;
|
|
|
using MapsterMapper;
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
using Microsoft.OpenApi.Writers;
|
|
@@ -31,8 +33,9 @@ namespace Hotline.Api.Controllers
|
|
|
private readonly ISessionContext _sessionContext;
|
|
|
private readonly IRepository<CircularRecord> _circularRecordRepository;
|
|
|
private readonly IRepository<CircularReadGroup> _circularReadGroupRepository;
|
|
|
+ private readonly IRepository<User> _userRepository;
|
|
|
|
|
|
- public ArticleController(IRepository<Bulletin> bulletinRepository,IMapper mapper, ISystemDomainService systemDomainService, ISystemOrganizeRepository organizeRepository, IWorkflowApplication workflowApplication, IRepository<Circular> circularRepository,ISessionContext sessionContext,IRepository<CircularRecord> circularRecordRepository,IRepository<CircularReadGroup> circularReadGroupRepository)
|
|
|
+ public ArticleController(IRepository<Bulletin> bulletinRepository,IMapper mapper, ISystemDomainService systemDomainService, ISystemOrganizeRepository organizeRepository, IWorkflowApplication workflowApplication, IRepository<Circular> circularRepository,ISessionContext sessionContext,IRepository<CircularRecord> circularRecordRepository,IRepository<CircularReadGroup> circularReadGroupRepository,IRepository<User> userRepository)
|
|
|
{
|
|
|
_bulletinRepository = bulletinRepository;
|
|
|
_mapper = mapper;
|
|
@@ -43,8 +46,26 @@ namespace Hotline.Api.Controllers
|
|
|
_sessionContext = sessionContext;
|
|
|
_circularRecordRepository = circularRecordRepository;
|
|
|
_circularReadGroupRepository = circularReadGroupRepository;
|
|
|
+ _userRepository = userRepository;
|
|
|
}
|
|
|
#region 通知
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 获取所有用户不分页
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
+ [HttpGet("alluser")]
|
|
|
+ public async Task<List<UserDto>> GetAllUser()
|
|
|
+ {
|
|
|
+ var list = await _userRepository.Queryable(includeDeleted: false)
|
|
|
+ .Includes(d => d.Account)
|
|
|
+ .Includes(d => d.Organization)
|
|
|
+ .OrderByDescending(x=>x.CreationTime)
|
|
|
+ .ToListAsync();
|
|
|
+ return new List<UserDto>(_mapper.Map<IReadOnlyList<UserDto>>(list));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// 查询通知列表
|
|
|
/// </summary>
|
|
@@ -94,6 +115,16 @@ namespace Hotline.Api.Controllers
|
|
|
model.ReadedNum = 0;
|
|
|
model.NeedReadNum = model.CircularReadGroups.Count;
|
|
|
var id = await _circularRepository.AddAsync(model, HttpContext.RequestAborted);
|
|
|
+ //子表
|
|
|
+ var list = dto.Data.CircularReadGroups;
|
|
|
+ var readGroupList = new List<CircularReadGroup>();
|
|
|
+ foreach (var item in list)
|
|
|
+ {
|
|
|
+ var readGroup = _mapper.Map<CircularReadGroup>(item);
|
|
|
+ readGroup.CircularId = id;
|
|
|
+ readGroupList.Add(readGroup);
|
|
|
+ await _circularReadGroupRepository.AddRangeAsync(readGroupList);
|
|
|
+ }
|
|
|
try
|
|
|
{
|
|
|
var startDto = _mapper.Map<StartWorkflowDto>(dto.Workflow);
|
|
@@ -131,8 +162,9 @@ namespace Hotline.Api.Controllers
|
|
|
{
|
|
|
var rsp = new
|
|
|
{
|
|
|
- CircularType = _systemDomainService.GetSysDicDataByCodeAsync(SysDicTypeConsts.CircularType),
|
|
|
+ CircularType = await _systemDomainService.GetSysDicDataByCodeAsync(SysDicTypeConsts.CircularType),
|
|
|
OrgsOptions = await _organizeRepository.GetOrgJson(),
|
|
|
+ CircularTypeEnum = EnumExts.GetDescriptions<ECircularType>()
|
|
|
};
|
|
|
return rsp;
|
|
|
}
|
|
@@ -296,7 +328,7 @@ namespace Hotline.Api.Controllers
|
|
|
var rsp = new
|
|
|
{
|
|
|
BulletinType = await _systemDomainService.GetSysDicDataByCodeAsync(SysDicTypeConsts.BulletinType),
|
|
|
- PushRanges = EnumExts.GetDescriptions<EPushRange>(),
|
|
|
+ PushRanges = await _systemDomainService.GetSysDicDataByCodeAsync(SysDicTypeConsts.BulletinPushRange),
|
|
|
OrgsOptions = await _organizeRepository.GetOrgJson(),
|
|
|
};
|
|
|
return rsp;
|