using Microsoft.AspNetCore.Mvc; using DOAN.Model.Dto; using DOAN.Admin.WebApi.Filters; using DOAN.Model.MES.material; using DOAN.Model.MES.material.Dto; using DOAN.Service.MES.material.IService; //创建时间:2024-12-30 namespace DOAN.Admin.WebApi.Controllers { /// /// 库存信息表 /// [Verify] [Route("mes/materialManagement/Parts/MaterialPartsInventory")] public class MaterialPartsInventoryController : BaseController { /// /// 库存信息表接口 /// private readonly IMaterialPartsInventoryService _MaterialPartsInventoryService; public MaterialPartsInventoryController(IMaterialPartsInventoryService MaterialPartsInventoryService) { _MaterialPartsInventoryService = MaterialPartsInventoryService; } /// /// 查询库存信息表列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "materialManagement:MaterialPartsinventory:list")] public IActionResult QueryMaterialPartsInventory([FromQuery] MaterialPartsInventoryQueryDto parm) { var response = _MaterialPartsInventoryService.GetList(parm); return SUCCESS(response); } /// /// 查询库存信息表详情 /// /// /// [HttpGet("{InventoryId}")] [ActionPermissionFilter(Permission = "materialManagement:MaterialPartsinventory:query")] public IActionResult GetMaterialPartsInventory(int InventoryId) { var response = _MaterialPartsInventoryService.GetInfo(InventoryId); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加库存信息表 /// /// [HttpPost] [ActionPermissionFilter(Permission = "materialManagement:MaterialPartsinventory:add")] [Log(Title = "库存信息表", BusinessType = BusinessType.INSERT)] public IActionResult AddMaterialPartsInventory([FromBody] MaterialPartsInventoryDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _MaterialPartsInventoryService.AddMaterialPartsInventory(modal); return SUCCESS(response); } /// /// 更新库存信息表 /// /// [HttpPut] [ActionPermissionFilter(Permission = "materialManagement:MaterialPartsinventory:edit")] [Log(Title = "库存信息表", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateMaterialPartsInventory([FromBody] MaterialPartsInventoryDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _MaterialPartsInventoryService.UpdateMaterialPartsInventory(modal); return ToResponse(response); } /// /// 删除库存信息表 /// /// [HttpDelete("{ids}")] [ActionPermissionFilter(Permission = "materialManagement:MaterialPartsinventory:delete")] [Log(Title = "库存信息表", BusinessType = BusinessType.DELETE)] public IActionResult DeleteMaterialPartsInventory(string ids) { int[] idsArr = Tools.SpitIntArrary(ids); if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } var response = _MaterialPartsInventoryService.Delete(idsArr); return ToResponse(response); } //TODO 入库 [HttpPost("entryInventory")] public IActionResult EntryInventory([FromBody] MaterialPartsInventoryDto parm) { var response = _MaterialPartsInventoryService.EntryInventory(parm,HttpContext.GetNickName(),parm.SupplierId); return SUCCESS(response); } //TODO 出库 [HttpPost("OutInventory")] public IActionResult OutInventory([FromBody] MaterialPartsInventoryDto parm) { var response = _MaterialPartsInventoryService.OutInventory(parm,HttpContext.GetNickName()); return SUCCESS(response); } //TODO 盘点 [HttpPost("CheckInventory")] public IActionResult CheckInventory([FromBody] MaterialPartsInventoryDto parm) { var response = _MaterialPartsInventoryService.CheckInventory(parm,HttpContext.GetNickName()); return SUCCESS(response); } } }