using System;
using System.Web.Http;
using CncModels.Dto;
using CncModels.Dto.Production;
using CncService.Interface;
using CncWebApi.Infrastructure;
namespace CncWebApi.Controllers
{
///
/// 产量报表控制器
///
[RoutePrefix("api/admin/production")]
[JwtAuthFilter]
public class ProductionController : ApiController
{
private readonly IProductionService _productionService;
///
/// 构造函数
///
public ProductionController(IProductionService productionService)
{
_productionService = productionService;
}
///
/// 日产量列表(分页)
/// GET /api/admin/production/daily
///
[HttpGet]
[Route("daily")]
public IHttpActionResult GetList([FromUri] ProductionQuery query)
{
if (query == null) query = new ProductionQuery();
var result = _productionService.GetList(query);
return Ok(ApiResponse>.Success(result));
}
///
/// 日汇总统计
/// GET /api/admin/production/daily-summary
///
[HttpGet]
[Route("daily-summary")]
public IHttpActionResult GetSummary(DateTime? startDate = null, DateTime? endDate = null, int? workshopId = null, int? machineId = null, int? workerId = null)
{
var result = _productionService.GetSummary(startDate, endDate, workshopId, machineId, workerId);
return Ok(ApiResponse.Success(result));
}
///
/// 修正产量
/// POST /api/admin/production/adjust
///
[HttpPost]
[Route("adjust")]
public IHttpActionResult Adjust([FromBody] ProductionAdjustRequest request)
{
var result = _productionService.Adjust(request);
return Ok(ApiResponse