using Microsoft.AspNetCore.Mvc; using DOAN.Model.PBL.Dto; using DOAN.Model.PBL; using DOAN.Service.PBL.IService; using DOAN.Admin.WebApi.Filters; //创建时间:2024-09-23 namespace DOAN.Admin.WebApi.Controllers.PBL { /// /// 物料清单 /// [Verify] [Route("PBL/Billofmaterials")] public class BillofmaterialsController : BaseController { /// /// 物料清单接口 /// private readonly IBillofmaterialsService _BillofmaterialsService; public BillofmaterialsController(IBillofmaterialsService BillofmaterialsService) { _BillofmaterialsService = BillofmaterialsService; } /// /// 查询物料清单列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "billofmaterials:list")] public IActionResult QueryBillofmaterials([FromQuery] BillofmaterialsQueryDto parm) { var response = _BillofmaterialsService.GetList(parm); return SUCCESS(response); } /// /// 查询物料清单详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "billofmaterials:query")] public IActionResult GetBillofmaterials(int Id) { var response = _BillofmaterialsService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加物料清单 /// /// [HttpPost] [ActionPermissionFilter(Permission = "billofmaterials:add")] [Log(Title = "物料清单", BusinessType = BusinessType.INSERT)] public IActionResult AddBillofmaterials([FromBody] BillofmaterialsDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _BillofmaterialsService.AddBillofmaterials(modal); return SUCCESS(response); } /// /// 更新物料清单 /// /// [HttpPut] [ActionPermissionFilter(Permission = "billofmaterials:edit")] [Log(Title = "物料清单", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateBillofmaterials([FromBody] BillofmaterialsDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _BillofmaterialsService.UpdateBillofmaterials(modal); return ToResponse(response); } /// /// 删除物料清单 /// /// [HttpPost("delete/{ids}")] [ActionPermissionFilter(Permission = "billofmaterials:delete")] [Log(Title = "物料清单", BusinessType = BusinessType.DELETE)] public IActionResult DeleteBillofmaterials([FromRoute]string ids) { var idArr = Tools.SplitAndConvert(ids); return ToResponse(_BillofmaterialsService.Delete(idArr)); } } }