using Microsoft.AspNetCore.Mvc;
using ZR.Model.Business.Dto;
using ZR.Service.Business.IBusinessService;
//创建时间:2025-09-21
namespace ZR.Admin.WebApi.Controllers.Business
{
///
/// 签到记录
///
[Route("business/OdfCheckin")]
public class OdfCheckinController : BaseController
{
///
/// 签到记录接口
///
private readonly IOdfCheckinService _OdfCheckinService;
public OdfCheckinController(IOdfCheckinService OdfCheckinService)
{
_OdfCheckinService = OdfCheckinService;
}
///
/// 提交签到记录(APP端调用)
///
///
[HttpPost("submit")]
[ActionPermissionFilter(Permission = "odfcheckin:list")]
[Log(Title = "签到记录", BusinessType = BusinessType.INSERT)]
public IActionResult Submit([FromBody] OdfCheckinDto dto)
{
dto.UserId = HttpContext.GetUId();
var response = _OdfCheckinService.AddCheckin(dto);
return SUCCESS(response);
}
///
/// 分页查询签到记录(管理端调用,联查机房名称和提交人)
///
///
///
[HttpGet("list")]
[ActionPermissionFilter(Permission = "odfcheckin:list")]
public IActionResult GetList([FromQuery] OdfCheckinQueryDto parm)
{
var response = _OdfCheckinService.GetList(parm);
return SUCCESS(response);
}
///
/// 导出签到记录(管理端调用)
///
///
[Log(Title = "签到记录", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)]
[HttpGet("export")]
[ActionPermissionFilter(Permission = "odfcheckin:export")]
public IActionResult Export([FromQuery] OdfCheckinQueryDto parm)
{
var list = _OdfCheckinService.ExportList(parm);
if (list == null || list.Result == null || list.Result.Count <= 0)
{
return ToResponse(ResultCode.FAIL, "没有要导出的数据");
}
var result = ExportExcelMini(list.Result, "签到记录", "签到记录");
return ExportExcel(result.Item2, result.Item1);
}
}
}