using Infrastructure;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json.Linq;
using OpenAuth.App.Response;
using OpenAuth.App.ServiceApp.FireManagement;
using OpenAuth.App.ServiceApp.FireManagement.Request;
using OpenAuth.App.ServiceApp.FireManagement.Response;
using OpenAuth.Repository.Domain.FireManagement;
namespace OpenAuth.WebApi.Controllers.ServiceControllers.FireManagement
{
///
/// 网格
///
[Route("api/[controller]/[action]")]
[ApiController]
public class FireGridController : ControllerBase
{
private readonly FireGridApp _app;
public FireGridController(FireGridApp app)
{
_app = app;
}
///
/// 添加打卡点
///
///
///
[HttpPost]
public async Task> AddCheckPoint(CheckPointReq info)
{
Response response = new Response();
try
{
return await _app.AddCheckPoint(info);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 获取打卡点列表
///
///
///
///
///
[HttpGet]
[AllowAnonymous]
public async Task>>> GetCheckPointList(long areaid, string pointName, int page, int limit)
{
Response>> response = new Response>>();
try
{
return await _app.GetCheckPointList(areaid, pointName, page, limit);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 删除打卡点
///
///
///
[HttpPost]
public async Task> DeleteCheckPoint(long id)
{
Response response = new Response();
try
{
return await _app.DeleteCheckPoint(id);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 编辑打卡点
///
///
///
[HttpPost]
public async Task> EditCheckPoint(CheckPointReq info)
{
Response response = new Response();
try
{
return await _app.EditCheckPoint(info);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 获取单个打卡点
///
///
///
[HttpGet]
public async Task> GetSingleCheckPoint(long id)
{
Response response = new Response();
try
{
return await _app.GetCheckPointById(id);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 打卡
///
///
///
[HttpPost]
public async Task> AddClockOnInfo(FmCheckClockOn info)
{
Response response = new Response();
try
{
return await _app.AddClockOnInfo(info);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 获取打卡记录
///
///
///
///
///
[HttpGet]
public async Task>>> GetCheckInfoByPointId(long id, int page = 1, int limit = 10)
{
Response>> response = new Response>>();
try
{
return await _app.GetCheckPointById(id, page, limit);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 打卡信息
///
///
///
///
///
[HttpGet]
public async Task>>> GetCheckInfoByUserId(long userid, int page = 1, int limit = 10)
{
Response>> response = new Response>>();
try
{
return await _app.GetCheckInfoByUserId(userid, page, limit);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 获取打卡记录列表
///
/// 人员ID
/// 开始时间
/// 结束时间
///
///
///
[HttpGet]
public async Task>>> GetClockOnList(long userId, DateTime beginTime, DateTime endTime, int page, int limit)
{
Response>> response = new Response>>();
try
{
return await _app.GetClockOnList(userId, beginTime, endTime, page, limit);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// app根据登录用户获取打卡点
///
/// 用户id
///
[HttpGet]
[AllowAnonymous]
public async Task>>> GetCheckPointByUserId(string userid)
{
return await _app.GetCheckPointByUserId(userid);
}
///
/// 数据总览
///
///
///
///
///
[HttpGet]
public async Task> GetStatisticsCount(long areaid, DateTime begintime, DateTime endtime)
{
Response response = new Response();
try
{
return await _app.GetStatisticsCount(areaid, begintime, endtime);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
///
/// 数据列表
///
///
///
///
///
///
///
[HttpGet]
public async Task>>> GetStatistics(long areaid, DateTime begintime, DateTime endtime, int page, int limit)
{
Response>> response = new Response>>();
try
{
return await _app.Getstatistics(areaid, begintime, endtime, page, limit);
}
catch (Exception ex)
{
response.Code = 500;
response.Message = ex.InnerException?.Message ?? ex.Message;
}
return response;
}
}
}