using DOAN.Model;
using DOAN.Model.Dto;
using DOAN.Service.Business.IBusinessService;
using Microsoft.AspNetCore.Mvc;
//创建时间:2025-09-02
namespace DOAN.Admin.WebApi.Controllers
{
///
/// 追溯项目清单
///
[Route("business/TraceProject")]
public class TraceProjectController : BaseController
{
///
/// 追溯项目清单接口
///
private readonly ITraceProjectService _TraceProjectService;
public TraceProjectController(ITraceProjectService TraceProjectService)
{
_TraceProjectService = TraceProjectService;
}
///
/// 查询追溯项目清单列表
///
///
///
[HttpGet("list")]
[AllowAnonymous]
public IActionResult QueryTraceProject([FromQuery] TraceProjectQueryDto parm)
{
var response = _TraceProjectService.GetList(parm);
return SUCCESS(response);
}
///
/// 查询追溯项目清单详情
///
///
///
[HttpGet("{Id}")]
[AllowAnonymous]
public IActionResult GetTraceProject(int Id)
{
var response = _TraceProjectService.GetInfo(Id);
var info = response.Adapt();
return SUCCESS(info);
}
///
/// 添加追溯项目清单
///
///
[HttpPost]
[AllowAnonymous]
[Log(Title = "追溯项目清单", BusinessType = BusinessType.INSERT)]
public IActionResult AddTraceProject([FromBody] TraceProjectDto parm)
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _TraceProjectService.AddTraceProject(modal);
return SUCCESS(response);
}
///
/// 更新追溯项目清单
///
///
[HttpPut]
[AllowAnonymous]
[Log(Title = "追溯项目清单", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateTraceProject([FromBody] TraceProjectDto parm)
{
var modal = parm.Adapt().ToUpdate(HttpContext);
var response = _TraceProjectService.UpdateTraceProject(modal);
return ToResponse(response);
}
///
/// 删除追溯项目清单
///
///
[HttpDelete("{ids}")]
[AllowAnonymous]
[Log(Title = "追溯项目清单", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteTraceProject(string ids)
{
int[] idsArr = Tools.SpitIntArrary(ids);
if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); }
var response = _TraceProjectService.Delete(idsArr);
return ToResponse(response);
}
}
}