68 lines
2.0 KiB
C#
68 lines
2.0 KiB
C#
using Microsoft.AspNetCore.Http;
|
||
using Microsoft.AspNetCore.Mvc;
|
||
using RIZO.Service.Business;
|
||
using RIZO.Model.Business;
|
||
|
||
namespace RIZO.Admin.WebApi.Controllers.Business
|
||
{
|
||
[ApiController]
|
||
[Route("api/[controller]/[action]")]
|
||
public class MaterialController : ControllerBase
|
||
{
|
||
private readonly MaterialService _service;
|
||
|
||
public MaterialController(MaterialService service)
|
||
{
|
||
_service = service;
|
||
}
|
||
|
||
//获取所有的物料清单
|
||
[HttpGet]
|
||
public ActionResult<List<MaterialInfo>> GetMaterials([FromQuery] bool includeDeleted = false)//默认false,一般不用用户传。
|
||
{
|
||
return _service.GetAllMaterials(includeDeleted);
|
||
}
|
||
|
||
//根据物料编码查询物料清单
|
||
[HttpGet]
|
||
public ActionResult<MaterialInfo> GetMaterial(string material_code)
|
||
{
|
||
var material = _service.GetMaterialByMaterialCode(material_code);
|
||
if (material == null) return NotFound();//如果查询结果为空,则返回not found
|
||
return material;
|
||
}
|
||
|
||
//新增物料清单数据
|
||
[HttpPost]
|
||
public IActionResult AddMaterial([FromBody] MaterialInfo material)
|
||
{
|
||
_service.AddMaterial(material); // 假设创建人为admin
|
||
return Ok();
|
||
}
|
||
|
||
//批量新增物料清单数据
|
||
[HttpPost]
|
||
public IActionResult AddMaterials([FromBody] List<MaterialInfo> materials)
|
||
{
|
||
_service.AddMaterials(materials);
|
||
return Ok();
|
||
}
|
||
|
||
//修改物料清单数据
|
||
[HttpPut]
|
||
public IActionResult UpdateMaterial([FromBody] MaterialInfo material)
|
||
{
|
||
_service.UpdateMaterial(material);
|
||
return Ok();
|
||
}
|
||
|
||
//逻辑删除
|
||
[HttpDelete]
|
||
public IActionResult DeleteMaterial(int id, MaterialInfo material)
|
||
{
|
||
_service.DeleteMaterial(id, material);
|
||
return Ok();
|
||
}
|
||
}
|
||
}
|