Infrastructure/OpenAuth.WebApi/Controllers/ServiceControllers/FireManagement/FireGridController.cs

243 lines
8.2 KiB
C#
Raw Normal View History

2025-03-27 14:19:20 +08:00
using Infrastructure;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
2025-03-28 16:41:12 +08:00
using Newtonsoft.Json.Linq;
2025-03-27 14:19:20 +08:00
using OpenAuth.App.ServiceApp.FireManagement;
using OpenAuth.App.ServiceApp.FireManagement.Request;
2025-03-28 16:41:12 +08:00
using OpenAuth.App.ServiceApp.FireManagement.Response;
2025-03-27 14:19:20 +08:00
using OpenAuth.Repository.Domain.FireManagement;
namespace OpenAuth.WebApi.Controllers.ServiceControllers.FireManagement
{
/// <summary>
/// 网格
/// </summary>
[Route("api/[controller]/[action]")]
[ApiController]
public class FireGridController : ControllerBase
{
private readonly FireGridApp _app;
public FireGridController(FireGridApp app)
{
_app = app;
}
/// <summary>
/// 添加打卡点
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
[HttpPost]
public async Task<Response<bool>> AddCheckPoint(CheckPointReq info)
{
Response<bool> response = new Response<bool>();
try
{
return await _app.AddCheckPoint(info);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
/// 获取打卡点列表
/// </summary>
/// <param name="pointName"></param>
2025-03-29 10:00:14 +08:00
/// <param name="page"></param>
/// <param name="limit"></param>
2025-03-27 14:19:20 +08:00
/// <returns></returns>
[HttpGet]
2025-03-29 10:00:14 +08:00
public async Task<Response<PageInfo<List<dynamic>>>> GetCheckPointList(string pointName, int page, int limit)
2025-03-27 14:19:20 +08:00
{
Response<PageInfo<List<dynamic>>> response = new Response<PageInfo<List<dynamic>>>();
try
{
2025-03-29 10:00:14 +08:00
return await _app.GetCheckPointList(pointName, page, limit);
2025-03-27 14:19:20 +08:00
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
/// 删除打卡点
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpPost]
public async Task<Response<bool>> DeleteCheckPoint(long id)
{
Response<bool> response = new Response<bool>();
try
{
return await _app.DeleteCheckPoint(id);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
/// 编辑打卡点
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
[HttpPost]
public async Task<Response<bool>> EditCheckPoint(CheckPointReq info)
{
Response<bool> response = new Response<bool>();
try
{
return await _app.EditCheckPoint(info);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
/// 获取单个打卡点
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet]
public async Task<Response<CheckPointReq>> GetSingleCheckPoint(long id)
{
Response<CheckPointReq> response = new Response<CheckPointReq>();
try
{
return await _app.GetCheckPointById(id);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
2025-03-28 16:41:12 +08:00
/// 获取打卡记录
/// </summary>
/// <param name="id"></param>
2025-03-29 10:00:14 +08:00
/// <param name="page"></param>
/// <param name="limit"></param>
2025-03-28 16:41:12 +08:00
/// <returns></returns>
[HttpGet]
2025-03-29 10:00:14 +08:00
public async Task<Response<PageInfo<List<dynamic>>>> GetCheckInfoByPointId(long id, int page = 1, int limit = 10)
2025-03-28 16:41:12 +08:00
{
Response<PageInfo<List<dynamic>>> response = new Response<PageInfo<List<dynamic>>>();
try
{
2025-03-29 10:00:14 +08:00
return await _app.GetCheckPointById(id, page, limit);
2025-03-28 16:41:12 +08:00
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
/// 打卡信息
/// </summary>
/// <param name="id"></param>
2025-03-29 10:00:14 +08:00
/// <param name="page"></param>
/// <param name="limit"></param>
2025-03-28 16:41:12 +08:00
/// <returns></returns>
[HttpGet]
2025-03-29 10:00:14 +08:00
public async Task<Response<PageInfo<List<dynamic>>>> GetCheckInfoByUserId(long id, int page = 1, int limit = 10)
2025-03-28 16:41:12 +08:00
{
Response<PageInfo<List<dynamic>>> response = new Response<PageInfo<List<dynamic>>>();
try
{
2025-03-29 10:00:14 +08:00
return await _app.GetCheckInfoByUserId(id, page, limit);
2025-03-28 16:41:12 +08:00
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
2025-03-28 13:25:48 +08:00
/// 获取打卡记录列表
2025-03-27 14:19:20 +08:00
/// </summary>
/// <param name="userId">人员ID</param>
/// <param name="beginTime">开始时间</param>
/// <param name="endTime">结束时间</param>
2025-03-29 10:00:14 +08:00
/// <param name="page"></param>
/// <param name="limit"></param>
2025-03-27 14:19:20 +08:00
/// <returns></returns>
[HttpGet]
2025-03-29 10:00:14 +08:00
public async Task<Response<PageInfo<List<dynamic>>>> GetClockOnList(long userId, DateTime beginTime, DateTime endTime, int page, int limit)
2025-03-27 14:19:20 +08:00
{
Response<PageInfo<List<dynamic>>> response = new Response<PageInfo<List<dynamic>>>();
try
{
2025-03-29 10:00:14 +08:00
return await _app.GetClockOnList(userId, beginTime, endTime, page, limit);
2025-03-27 14:19:20 +08:00
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
2025-03-28 16:41:12 +08:00
/// <summary>
/// 数据总览
/// </summary>
/// <param name="areaid"></param>
/// <param name="begintime"></param>
/// <param name="endtime"></param>
/// <returns></returns>
[HttpGet]
public async Task<Response<JObject>> GetStatisticsCount(long areaid, DateTime begintime, DateTime endtime)
{
Response<JObject> response = new Response<JObject>();
try
{
return await _app.GetStatisticsCount(areaid, begintime, endtime);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
/// <summary>
/// 数据列表
/// </summary>
/// <param name="areaid"></param>
/// <param name="begintime"></param>
/// <param name="endtime"></param>
2025-03-29 10:00:14 +08:00
/// <param name="page"></param>
/// <param name="limit"></param>
2025-03-28 16:41:12 +08:00
/// <returns></returns>
[HttpGet]
2025-03-29 10:00:14 +08:00
public async Task<Response<PageInfo<List<PointstatisticsResp>>>> GetStatistics(long areaid, DateTime begintime, DateTime endtime, int page, int limit)
2025-03-28 16:41:12 +08:00
{
Response<PageInfo<List<PointstatisticsResp>>> response = new Response<PageInfo<List<PointstatisticsResp>>>();
try
{
2025-03-29 10:00:14 +08:00
return await _app.Getstatistics(areaid, begintime, endtime, page, limit);
2025-03-28 16:41:12 +08:00
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
2025-03-27 14:19:20 +08:00
}
}