feat 工作网格
This commit is contained in:
154
Src/Dlhis.Basic/WorkGrids/Controllers/WorkGridsController.cs
Normal file
154
Src/Dlhis.Basic/WorkGrids/Controllers/WorkGridsController.cs
Normal file
@@ -0,0 +1,154 @@
|
||||
using Dlhis.Basic.WorkGrids.Request;
|
||||
using Dlhis.Basic.WorkGrids.Response;
|
||||
using Dlhis.Basic.WorkGrids.Services;
|
||||
using Kurisu.AspNetCore.DataAccess.Dto;
|
||||
using Kurisu.AspNetCore.DataAccess.SqlSugar.Aop;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace Dlhis.Basic.WorkGrids.Controllers;
|
||||
|
||||
/// <summary>
|
||||
/// 工作网格
|
||||
/// </summary>
|
||||
[Authorize]
|
||||
[Route("api/[controller]")]
|
||||
[ApiController]
|
||||
public class WorkGridsController : ControllerBase
|
||||
{
|
||||
private readonly IWorkGridService _workGridService;
|
||||
private readonly IWorkGridTimePeriodService _workGridTimePeriodService;
|
||||
private readonly IWorkGridScheduleService _workGridScheduleService;
|
||||
|
||||
public WorkGridsController(IWorkGridService workGridService,
|
||||
IWorkGridTimePeriodService workGridTimePeriodService,
|
||||
IWorkGridScheduleService workGridScheduleService)
|
||||
{
|
||||
_workGridService = workGridService;
|
||||
_workGridTimePeriodService = workGridTimePeriodService;
|
||||
_workGridScheduleService = workGridScheduleService;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存
|
||||
/// </summary>
|
||||
/// <param name="requests"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("save")]
|
||||
[Transactional]
|
||||
public async Task SaveWorkGridsAsync(List<WorkGridSaveRequest> requests)
|
||||
{
|
||||
await _workGridService.SaveAsync(requests);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// /网格分页
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("page")]
|
||||
public async Task<Pagination<WorkGridPageResponse>> GetWorkGridPageAsync([FromQuery] WorkGridPageRequest request)
|
||||
{
|
||||
return await _workGridService.GetPageAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改网格管理者
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost("leader/change")]
|
||||
public async Task ChangeWorkGridLeaderAsync(WorkGridChangeRequest request)
|
||||
{
|
||||
await _workGridService.ChangeAsync(request.From, request.To);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取我的网格信息
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("info")]
|
||||
public async Task<WorkGridUserPageResponse> GetMyWorkGridAsync([FromQuery] WorkGridPageRequest request)
|
||||
{
|
||||
return await _workGridService.GetMyWorkGridAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存网格工作时间
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("timePeriod/save")]
|
||||
public async Task SaveWorkGridTimePeriodAsync(WorkGridTimePeriodSaveRequest request)
|
||||
{
|
||||
await _workGridTimePeriodService.SaveAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// /获取网格工作时间分页
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("timePeriod/page")]
|
||||
public async Task<Pagination<WorkGridTimePeriodPageResponse>> GetWorkGridTimePeriodPageAsync([FromQuery] WorkGridTimePeriodPageRequest request)
|
||||
{
|
||||
return await _workGridTimePeriodService.GetPageAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 分配人员到网格中
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("user/assign")]
|
||||
public async Task AssignUsersToWorkGridAsync(WorkGridUserAssignRequest request)
|
||||
{
|
||||
await _workGridService.AssignAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 移除网格的人员
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("user/remove")]
|
||||
public async Task RemoveUsersFromWorkGridAsync(WorkGridUserRemoveRequest request)
|
||||
{
|
||||
await _workGridService.RemoveAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存网格人员排班
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
[HttpPost("user/schedule/save")]
|
||||
public async Task SaveScheduleAsync(WorkGridScheduleSaveRequest request)
|
||||
{
|
||||
await _workGridScheduleService.SaveAsync(request);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取人网格员排班列表
|
||||
/// </summary>
|
||||
/// <param name="workGridCode">网格code</param>
|
||||
/// <param name="date"></param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("user/schedule/list")]
|
||||
public async Task<List<WorkGridScheduleResponse>> GetListAsync(Guid workGridCode, DateOnly date)
|
||||
{
|
||||
return await _workGridScheduleService.GetListAsync(workGridCode, date);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取网格人员排班详情
|
||||
/// </summary>
|
||||
/// <param name="workGridCode">网格</param>
|
||||
/// <param name="start">开始日期</param>
|
||||
/// <param name="end">结束日期</param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("user/schedule/summary")]
|
||||
public async Task<IEnumerable<WorkGridScheduleSummaryResponse>> GetListSummaryAsync([FromQuery] Guid workGridCode, [FromQuery] DateOnly start, [FromQuery] DateOnly end)
|
||||
{
|
||||
return await _workGridScheduleService.GetListSummaryAsync(workGridCode, start, end);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user