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