Files
f9-web-ai-test/backend/F9WebAiTest.Api/Controllers/Prod/SptzController.cs
T
yanpeng200212 1f1b184411 新增工资/仓储/生产日报等模块,移除旧考勤模块
- 新增 PayRoll(工资)、Wms(仓储)、Prod(车速/缫丝/考勤/丝片检测/丝片台账/纤检日报/质量日报) 模块
- 新增对应 Domain 实体、Application DTO/Service、Api Controller 与前端页面
- 移除旧 Attendance 考勤模块(Controller/Service/Entity/DTO 及 5 个前端页面),由 Prod/Kaoqin 取代
- 调整路由、仪表盘、Lsjl 流丝记录实体与服务
- 更新业务种子数据与 DbSeeder
- 补充工作进度文档 14-27
2026-10-27 09:09:57 +08:00

59 lines
2.2 KiB
C#

using F9WebAiTest.Application.Common;
using F9WebAiTest.Application.Dtos.Prod;
using F9WebAiTest.Application.Services.Prod;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace F9WebAiTest.Api.Controllers.Prod;
/// <summary>丝片台帐(生产-后缫):每日一条,按账期区间查询</summary>
[ApiController]
[Route("api/prod/sptz")]
[Authorize]
public class SptzController : ControllerBase
{
private readonly ISptzService _svc;
public SptzController(ISptzService svc) => _svc = svc;
/// <summary>丝片台帐列表(账期起止)</summary>
[HttpGet("list")]
public async Task<IActionResult> GetPaged([FromQuery] DateTime dateFrom, [FromQuery] DateTime dateTo,
[FromQuery] int pageIndex = 1, [FromQuery] int pageSize = 31)
=> Ok(ApiResult<PageResult<SptzListItemDto>>.Ok(await _svc.GetPagedAsync(pageIndex, pageSize, dateFrom, dateTo)));
/// <summary>修改回填</summary>
[HttpGet("{id}")]
public async Task<IActionResult> GetForEdit(long id)
{
try { return Ok(ApiResult<SptzSaveDto>.Ok(await _svc.GetForEditAsync(id))); }
catch (ServiceException ex) { return StatusCode(ex.Code, ApiResult<object>.Fail(ex.Message, ex.Code)); }
}
/// <summary>新增默认值:上一本台账 + 上存,并按当日「丝片检查」带出整理片数</summary>
[HttpGet("defaults")]
public async Task<IActionResult> GetDefaults([FromQuery] DateTime date)
=> Ok(ApiResult<SptzDefaultsDto>.Ok(await _svc.GetDefaultsAsync(date)));
[HttpPost("save")]
public async Task<IActionResult> Save([FromBody] SptzSaveDto dto)
{
try
{
var id = await _svc.SaveAsync(dto);
return Ok(ApiResult<object>.Ok(new { id }, "保存成功"));
}
catch (ServiceException ex) { return StatusCode(ex.Code, ApiResult<object>.Fail(ex.Message, ex.Code)); }
}
[HttpDelete("{id}")]
public async Task<IActionResult> Delete(long id)
{
try
{
await _svc.DeleteAsync(id);
return Ok(ApiResult<object>.Ok(null, "删除成功"));
}
catch (ServiceException ex) { return StatusCode(ex.Code, ApiResult<object>.Fail(ex.Message, ex.Code)); }
}
}