Files
shanghaigangxiangtuzhuangMES/ZR.Admin.WebApi/Controllers/mes/wms/WmOutOrderController.cs
2024-03-23 14:31:59 +08:00

211 lines
6.5 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 ZR.Model.Dto;
using ZR.Admin.WebApi.Extensions;
using ZR.Admin.WebApi.Filters;
using ZR.Service.mes.wms.IService;
using ZR.Model.MES.wms.Dto;
using ZR.Model.MES.wms;
using ZR.Service.mes.wms;
using static System.Runtime.InteropServices.JavaScript.JSType;
//创建时间2024-03-18
namespace ZR.Admin.WebApi.Controllers
{
/// <summary>
/// 出货单(物料+客户)
/// </summary>
[Verify]
[Route("mes/wm/WmOutOrder")]
public class WmOutOrderController : BaseController
{
/// <summary>
/// 出货单(物料+客户)接口
/// </summary>
private readonly IWmOutOrderService _WmOutOrderService;
public WmOutOrderController(IWmOutOrderService WmOutOrderService)
{
_WmOutOrderService = WmOutOrderService;
}
/// <summary>
/// 查询出货单(物料+客户)列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("list")]
[ActionPermissionFilter(Permission = "business:wmoutorder:list")]
public IActionResult QueryWmOutOrder([FromQuery] WmOutOrderQueryDto parm)
{
var response = _WmOutOrderService.GetList(parm);
return SUCCESS(response);
}
/// <summary>
/// 查询出货单(物料+客户)详情
/// </summary>
/// <param name="ShipmentNum"></param>
/// <returns></returns>
[HttpGet("{ShipmentNum}")]
[ActionPermissionFilter(Permission = "business:wmoutorder:query")]
public IActionResult GetWmOutOrder(string ShipmentNum)
{
var response = _WmOutOrderService.GetInfo(ShipmentNum);
return SUCCESS(response);
}
/// <summary>
/// 添加出货单(物料+客户)
/// </summary>
/// <returns></returns>
[HttpPost]
[ActionPermissionFilter(Permission = "business:wmoutorder:add")]
[Log(Title = "出货单(物料+客户)", BusinessType = BusinessType.INSERT)]
public IActionResult AddWmOutOrder([FromBody] WmOutOrder_materialDto parm)
{
if(parm == null)
{
return SUCCESS(null);
}
var modal = parm.ToCreate(HttpContext);
var response = _WmOutOrderService.AddWmOutOrder(modal);
return SUCCESS(response);
}
/// <summary>
/// 更新出货单(物料+客户)
/// </summary>
/// <returns></returns>
[HttpPut]
[ActionPermissionFilter(Permission = "business:wmoutorder:edit")]
[Log(Title = "出货单(物料+客户)", BusinessType = BusinessType.UPDATE)]
public IActionResult UpdateWmOutOrder([FromBody] WmOutOrderDto parm)
{
var modal = parm.Adapt<WmOutOrder>().ToUpdate(HttpContext);
var response = _WmOutOrderService.UpdateWmOutOrder(modal);
return ToResponse(response);
}
/// <summary>
/// 删除出货单(物料+客户)
/// </summary>
/// <returns></returns>
[HttpDelete("{ids}")]
[ActionPermissionFilter(Permission = "business:wmoutorder:delete")]
[Log(Title = "出货单(物料+客户)", BusinessType = BusinessType.DELETE)]
public IActionResult DeleteWmOutOrder(string ids)
{
if (string.IsNullOrEmpty(ids)) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); }
var response = _WmOutOrderService.Delete(ids.Split(","));
return ToResponse(response);
}
/// <summary>
/// 获取客户信息
/// </summary>
/// <returns></returns>
[HttpGet("getcustom_list")]
public IActionResult GetWmOutOrder()
{
List<WmCustom> customs= _WmOutOrderService.GetCustominfo();
return SUCCESS(customs);
}
/// <summary>
/// 查询物料记录表列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
[HttpGet("getmaterial_list")]
public IActionResult QueryWmMaterial([FromQuery] WmMaterialQueryDto parm)
{
var response = _WmOutOrderService.GetmaterialList(parm);
return SUCCESS(response);
}
/// <summary>
/// 生成出货单的物料信息
/// </summary>
/// <returns></returns>
[HttpGet("getoutorder_matrials")]
public IActionResult Queryoutoder_matrials(string shipment_num)
{
if (shipment_num == null)
{
return SUCCESS(null);
}
List<WmMaterialQuery_print> data = _WmOutOrderService.Queryoutoder_matrials(shipment_num);
return SUCCESS(data);
}
/// <summary>
/// 生成出货单的出货计划
/// </summary>
/// <param name="shipment_num"></param>
/// <returns></returns>
[HttpGet("generate_outorderplan")]
public IActionResult Generate_outorderplan(string shipment_num)
{
if (shipment_num == null)
{
return SUCCESS(null);
}
List<WmOutOrderPlan> WmOutOrderPlanList= _WmOutOrderService.Generate_outorderplan(shipment_num);
return SUCCESS(WmOutOrderPlanList);
}
/// <summary>
/// 5 成品出库
/// </summary>
/// <param name="doMaterialOut"></param>
/// <returns>
///
/// </returns>
[HttpPost("doMaterialOut")]
public IActionResult DoMaterialOut([FromBody] WmDoMaterialOut_Dto doMaterialOut)
{
if(doMaterialOut == null||doMaterialOut.ShipmentNum==null)
{
return SUCCESS(null);
}
(int,int) data= _WmOutOrderService.DoMaterialOut(doMaterialOut, HttpContext.GetName());
return SUCCESS(data);
}
/// <summary>
/// 6 出库单完成
/// </summary>
/// <param name="shipment_num"></param>
/// <returns></returns>
[HttpGet("over_outorderplan")]
public IActionResult OverOutorderplan(string shipment_num)
{
if (shipment_num == null)
{
return SUCCESS(null);
}
bool status = _WmOutOrderService.OverOutorderplan(shipment_num);
return SUCCESS(status);
}
}
}