lg_backend/langguanApi/Controllers/LedgerController.cs

67 lines
2.0 KiB
C#
Raw Normal View History

2024-05-25 16:58:35 +00:00
using langguanApi.Model;
2024-06-29 10:04:44 +00:00
using langguanApi.Model.Entity;
2024-05-25 16:58:35 +00:00
using langguanApi.Service;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System.IO;
namespace langguanApi.Controllers
{
/// <summary>
/// 台账相关接口
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class LedgerController : ControllerBase
{
private readonly LedgerService _ledgerService;
public LedgerController(LedgerService ledgerService)
{
_ledgerService = ledgerService;
}
/// <summary>
/// Get all ledgers
/// </summary>
/// <returns></returns>
[HttpGet("list")]
2024-06-29 10:04:44 +00:00
public async Task<IActionResult> list([FromQuery] reqpage input)
2024-05-25 16:58:35 +00:00
{
var result = await _ledgerService.GetPage(input);
return Ok(result);
}
/// <summary>
2024-06-29 10:04:44 +00:00
/// Add a new ledger
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("add")]
public async Task<IActionResult> add(LedgerDTO input)
{
await _ledgerService.AddLedger(input);
return Ok(new ApiResult { code = 0 });
}
/// <summary>
/// 头部统计
/// </summary>
/// <returns></returns>
[HttpGet("HeaderCount")]
public async Task<IActionResult> HeaderCount()
{
var result = await _ledgerService.HeaderCount();
return Ok(new ApiResult { code = 0, data = result });
}
/// <summary>
2024-05-25 16:58:35 +00:00
/// Export all ledgers
/// </summary>
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
[HttpGet("export")]
2024-06-29 10:04:44 +00:00
public async Task<IActionResult> Export(DateTime? start, DateTime? end)
2024-05-25 16:58:35 +00:00
{
var result = await _ledgerService.Export(start, end);
return File(result, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "台账.xlsx");
}
}
}