using Microsoft.AspNetCore.Mvc;
using DOAN.Model.PBL.Dto;
using DOAN.Model.PBL;
using DOAN.Service.PBL.IService;
using DOAN.Admin.WebApi.Filters;
using System.Collections.Generic;
//创建时间:2024-09-23
namespace DOAN.Admin.WebApi.Controllers.PBL
{
///
/// 库存日志
///
[Verify]
[Route("PBL/Inventorylog")]
public class InventorylogController : BaseController
{
///
/// 库存日志接口
///
private readonly IInventorylogService _InventorylogService;
public InventorylogController(IInventorylogService InventorylogService)
{
_InventorylogService = InventorylogService;
}
///
/// 查询库存日志列表
///
///
///
[HttpGet("list")]
[ActionPermissionFilter(Permission = "inventorylog:list")]
public IActionResult QueryInventorylog([FromQuery] InventorylogQueryDto parm)
{
var response = _InventorylogService.GetList(parm);
return SUCCESS(response);
}
///
/// 查询库存日志详情
///
///
///
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "inventorylog:query")]
public IActionResult GetInventorylog(string Id)
{
var response = _InventorylogService.GetInfo(Id);
var info = response.Adapt();
return SUCCESS(info);
}
///
/// 添加库存日志
///
///
[HttpPost]
[ActionPermissionFilter(Permission = "inventorylog:add")]
[Log(Title = "库存日志", BusinessType = BusinessType.INSERT)]
public IActionResult AddInventorylog([FromBody] InventorylogDto parm)
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _InventorylogService.AddInventorylog(modal);
return SUCCESS(response);
}
///
/// 更新库存日志
///
///
[HttpPut]
[ActionPermissionFilter(Permission = "inventorylog:edit")]
[Log(Title = "库存日志", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateInventorylog([FromBody] InventorylogDto parm)
{
var modal = parm.Adapt().ToUpdate(HttpContext);
var response = _InventorylogService.UpdateInventorylog(modal);
return ToResponse(response);
}
///
/// 删除库存日志
///
///
[HttpPost("delete/{ids}")]
[ActionPermissionFilter(Permission = "inventorylog:delete")]
[Log(Title = "库存日志", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteInventorylog([FromRoute]string ids)
{
var idArr = Tools.SplitAndConvert(ids);
return ToResponse(_InventorylogService.Delete(idArr));
}
///
/// 导出库存日志
///
///
[HttpGet("export")]
[AllowAnonymous]
[Log(Title = "库存日志", BusinessType = BusinessType.EXPORT)]
public IActionResult AddInventorylog([FromQuery] InventorylogExportDto parm)
{
var list = _InventorylogService.ExportInventorylog(parm);
// 添加调试日志
Console.WriteLine($"导出的库存日志数量: {list.Count}");
var result = ExportExcelMini(list, "Inventorylog", "库存日志");
return ExportExcel(result.Item2, result.Item1);
}
}
}