using Microsoft.AspNetCore.Mvc;
using DOAN.Model.BZFM.Dto;
using DOAN.Model.BZFM;
using DOAN.Admin.WebApi.Filters;
using DOAN.Model.MES.product;
using DOAN.Service.MES.product.IService;
using Infrastructure.Converter;
//创建时间:2024-12-03
namespace DOAN.Admin.WebApi.Controllers
{
///
/// 报工
///
[Verify]
[Route("mes/productManagement/ProReportwork")]
public class ProReportworkController : BaseController
{
///
/// 报工接口
///
private readonly IProReportworkService _ProReportworkService;
public ProReportworkController(IProReportworkService ProReportworkService)
{
_ProReportworkService = ProReportworkService;
}
//TODO 查询工艺路线
[HttpGet("get_route")]
public IActionResult GetRoute()
{
var response = _ProReportworkService.GetRoute();
return SUCCESS(response);
}
//TODO 根据工艺路线查询工序
///
///
///
/// 工艺路线id
///
[HttpGet("get_process_by_route")]
public IActionResult GetProcessByRoute(int route_id)
{
var response = _ProReportworkService.GetProcessByRoute(route_id);
return SUCCESS(response);
}
///
/// 查询报工列表
///
///
///
[HttpPost("list")]
[ActionPermissionFilter(Permission = "proreportwork:list")]
public IActionResult QueryProReportwork([FromBody] ProReportworkQueryDto parm)
{
parm.JobDateTime[0] = DOANConvertDate.ConvertLocalDate(parm.JobDateTime[0]);
parm.JobDateTime[1] = DOANConvertDate.ConvertLocalDate(parm.JobDateTime[1]);
var response = _ProReportworkService.GetList(parm);
return SUCCESS(response);
}
///
/// 查询工序列表
///
///
[HttpPost("baseworkprocesseslist")]
[ActionPermissionFilter(Permission = "proreportwork:baseworkprocesseslist")]
public IActionResult QueryBaseWorkProcesses()
{
var response = _ProReportworkService.GetBaseWorkProcesses();
return SUCCESS(response);
}
///
/// 查询报工详情
///
///
///
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "proreportwork:query")]
public IActionResult GetProReportwork(string Id)
{
var response = _ProReportworkService.GetInfo(Id);
var info = response.Adapt();
return SUCCESS(info);
}
///
/// 添加报工
///
///
[HttpPost]
[ActionPermissionFilter(Permission = "proreportwork:add")]
[Log(Title = "报工", BusinessType = BusinessType.INSERT)]
public IActionResult AddProReportwork([FromBody] ProReportworkDto parm)
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _ProReportworkService.AddProReportwork(modal);
return SUCCESS(response);
}
///
/// 更新报工
///
///
[HttpPut]
[ActionPermissionFilter(Permission = "proreportwork:edit")]
[Log(Title = "报工", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateProReportwork([FromBody] ProReportworkDto parm)
{
var modal = parm.Adapt().ToUpdate(HttpContext);
var response = _ProReportworkService.UpdateProReportwork(modal);
return ToResponse(response);
}
///
/// 删除报工
///
///
[HttpPost("delete/{ids}")]
[ActionPermissionFilter(Permission = "proreportwork:delete")]
[Log(Title = "报工", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteProReportwork([FromRoute] string ids)
{
var idArr = Tools.SplitAndConvert(ids);
return ToResponse(_ProReportworkService.Delete(idArr));
}
}
}