using Microsoft.AspNetCore.Mvc; using RIZO.Model.Mes.Dto.WorkOrderInfo; using RIZO.Model.Mes.WorkOrderInfo; using RIZO.Service.Mes.IMesService.WorkOrderInfo; using RIZO.Service.Mes.WorkOrderInfo; //创建时间:2025-11-19 namespace RIZO.Admin.WebApi.Controllers.Mes.WorkOrderInfo { /// /// 产品检验记录表 /// [Route("mes/ProductInspection")] public class ProductInspectionController : BaseController { /// /// 产品检验记录表接口 /// private readonly IProductInspectionService _ProductInspectionService; public ProductInspectionController(IProductInspectionService ProductInspectionService) { _ProductInspectionService = ProductInspectionService; } /// /// 查询产品检验记录表列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "productinspection:list")] public IActionResult QueryProductInspection([FromQuery] ProductInspectionQueryDto parm) { var response = _ProductInspectionService.GetList(parm); return SUCCESS(response); } /// /// 查询产品检验记录表详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "productinspection:query")] public IActionResult GetProductInspection(long Id) { var response = _ProductInspectionService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加产品检验记录表 /// /// [HttpPost] [ActionPermissionFilter(Permission = "productinspection:add")] [Log(Title = "产品检验记录表", BusinessType = BusinessType.INSERT)] public IActionResult AddProductInspection([FromBody] ProductInspectionDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _ProductInspectionService.AddProductInspection(modal); return SUCCESS(response); } /// /// 更新产品检验记录表 /// /// [HttpPut] [ActionPermissionFilter(Permission = "productinspection:edit")] [Log(Title = "产品检验记录表", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateProductInspection([FromBody] ProductInspectionDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _ProductInspectionService.UpdateProductInspection(modal); return ToResponse(response); } /// /// 删除产品检验记录表 /// /// [HttpPost("delete/{ids}")] [ActionPermissionFilter(Permission = "productinspection:delete")] [Log(Title = "产品检验记录表", BusinessType = BusinessType.DELETE)] public IActionResult DeleteProductInspection([FromRoute]string ids) { var idArr = Tools.SplitAndConvert(ids); return ToResponse(_ProductInspectionService.Delete(idArr)); } /// /// 导出产品检验数据 /// /// [HttpGet("export")] [Log(Title = "产品检验数据", BusinessType = BusinessType.EXPORT)] public IActionResult Export([FromQuery] ProductInspectionQueryDto parm) { var list = _ProductInspectionService.GetListExport(parm).Result; if (list == null || list.Count <= 0) { return ToResponse(ResultCode.FAIL, "没有要导出的数据"); } var (sFileName, sFilePath) = ExportExcelMini(list, "产品检验数据", "产品检验数据"); if (string.IsNullOrWhiteSpace(sFilePath)) { return ToResponse(ResultCode.FAIL, "Excel生成失败"); } return PhysicalFile( sFilePath, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", sFileName, true ); } [HttpPost("Import")] //[ActionPermissionFilter(Permission = "materialinfo:import")] [Log(Title = "导入保存产品检验数据", BusinessType = BusinessType.IMPORT)] public IActionResult ImportMaterialInfo([FromQuery] string userId, [FromQuery] string userName, [FromForm] IFormFile file) { var stream = file.OpenReadStream(); var fileName = file.FileName; var response = _ProductInspectionService.Import(stream, userId, userName); return ToResponse(response); } } }