Files
kunshan-bzfm-mes-backend/DOAN.Admin.WebApi/Controllers/MES/Order/OrderPurchaseController.cs

163 lines
5.3 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using Microsoft.AspNetCore.Mvc;
using DOAN.Model.BZFM.Dto;
using DOAN.Model.BZFM;
using DOAN.Service.MES.order.IService;
using DOAN.Admin.WebApi.Filters;
using DOAN.Model.MES.order.Dto;
using DOAN.Model.MES.order;
using DOAN.Model.System.Dto;
using DOAN.Model;
using DOAN.Model.System;
using MiniExcelLibs;
using Infrastructure.Converter;
//创建时间2025-02-17
namespace DOAN.Admin.WebApi.Controllers
{
/// <summary>
/// 采购订单
/// </summary>
[Verify]
[Route("mes/orderManagement/OrderPurchase")]
public class OrderPurchaseController : BaseController
{
/// <summary>
/// 采购订单接口
/// </summary>
private readonly IOrderPurchaseService _OrderPurchaseService;
public OrderPurchaseController(IOrderPurchaseService OrderPurchaseService)
{
_OrderPurchaseService = OrderPurchaseService;
}
/// <summary>
/// 查询采购订单列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpPost("list")]
[ActionPermissionFilter(Permission = "orderpurchase:list")]
public IActionResult QueryOrderPurchase([FromBody] OrderPurchaseQueryDto parm)
{
var response = _OrderPurchaseService.GetList(parm);
return SUCCESS(response);
}
/// <summary>
/// 查询采购订单详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
[HttpGet("{Id}")]
[ActionPermissionFilter(Permission = "orderpurchase:query")]
public IActionResult GetOrderPurchase(string Id)
{
var response = _OrderPurchaseService.GetInfo(Id);
var info = response.Adapt<OrderPurchaseDto>();
return SUCCESS(info);
}
/// <summary>
/// 添加采购订单
/// </summary>
/// <returns></returns>
[HttpPost]
[ActionPermissionFilter(Permission = "orderpurchase:add")]
[Log(Title = "采购订单", BusinessType = BusinessType.INSERT)]
public IActionResult AddOrderPurchase([FromBody] OrderPurchaseDto parm)
{
var modal = parm.Adapt<OrderPurchase>().ToCreate(HttpContext);
var response = _OrderPurchaseService.AddOrderPurchase(modal);
return SUCCESS(response);
}
/// <summary>
/// 更新采购订单
/// </summary>
/// <returns></returns>
[HttpPut]
[ActionPermissionFilter(Permission = "orderpurchase:edit")]
[Log(Title = "采购订单", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateOrderPurchase([FromBody] OrderPurchaseDto parm)
{
var modal = parm.Adapt<OrderPurchase>().ToUpdate(HttpContext);
var response = _OrderPurchaseService.UpdateOrderPurchase(modal);
return ToResponse(response);
}
/// <summary>
/// 删除采购订单
/// </summary>
/// <returns></returns>
[HttpPost("delete/{ids}")]
[ActionPermissionFilter(Permission = "orderpurchase:delete")]
[Log(Title = "采购订单", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteOrderPurchase([FromRoute]string ids)
{
var idArr = Tools.SplitAndConvert<string>(ids);
return ToResponse(_OrderPurchaseService.Delete(idArr));
}
//TODO 下载模版
/// <summary>
/// 导入模板下载
/// </summary>
/// <returns></returns>
[HttpGet("importTemplate")]
[Log(Title = "订单模板", BusinessType = BusinessType.EXPORT, IsSaveRequestData = true, IsSaveResponseData = false)]
[AllowAnonymous]
public IActionResult ImportTemplateExcel()
{
(string, string) result = DownloadImportTemplate("order");
return ExportExcel(result.Item2, result.Item1);
}
/// <summary>
/// 采购导入
/// </summary>
/// <param name="formFile">使用IFromFile必须使用name属性否则获取不到文件</param>
/// <param name="uploadType">true-追加导入 false-覆盖导入</param>
/// <returns></returns>
[HttpPost("importData")]
[Log(Title = "采购导入", BusinessType = BusinessType.IMPORT, IsSaveRequestData = false, IsSaveResponseData = true)]
[AllowAnonymous]
public IActionResult ImportData([FromForm(Name = "file")] IFormFile formFile,bool? uploadType)
{
if (formFile == null)
{
return SUCCESS(null);
}
int response = _OrderPurchaseService.ImportData(formFile, HttpContext.GetName(), uploadType);
return SUCCESS(response);
}
/// <summary>
/// 采购订单excel导出
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("export")]
[Log(Title = "采购订单导出", BusinessType = BusinessType.EXPORT)]
[AllowAnonymous]
public IActionResult UserExport([FromQuery] OrderPurchaseQueryDto parm)
{
var list = _OrderPurchaseService.SelectOrderList(parm);
var result = ExportExcelMini(list, "order", "采购订单列表");
return ExportExcel(result.Item2, result.Item1);
}
}
}