using System;
|
using System.Collections.Generic;
|
using System.Security.Claims;
|
using Microsoft.AspNetCore.Authorization;
|
using Microsoft.AspNetCore.Mvc;
|
using Model.ModelVm.PdaVm;
|
using WMS.Entity.DataEntity;
|
using WMS.IBLL.IPdaServer;
|
|
namespace WmsApi.Controllers
|
{
|
[Route("api/[controller]/[action]")]
|
[ApiController]
|
[Authorize]
|
public class PdaCrController : ControllerBase
|
{
|
private readonly IPdaCrServer _pdaCrSvc;
|
|
public PdaCrController(IPdaCrServer pdaCrSvc)
|
{
|
_pdaCrSvc = pdaCrSvc;
|
}
|
|
#region 盘点
|
|
/// <summary>
|
/// 获取盘点单据列表
|
/// </summary>
|
/// <param name="model">PalletNo:托盘号</param>
|
/// <returns></returns>
|
[HttpPost]
|
public IActionResult GetStockCheckNoList(PdaCrVm model)
|
{
|
try
|
{
|
var list = _pdaCrSvc.GetStockCheckNoList(model.PalletNo);
|
|
return Ok(new { code = 0, msg = "盘点单信息", data = list });
|
}
|
catch (Exception e)
|
{
|
return Ok(new { code = 1, msg = e.Message });
|
}
|
}
|
|
/// <summary>
|
/// 获取盘点明细物料批次信息
|
/// </summary>
|
/// <param name="model">CrNo:盘点单、PalletNo:托盘号</param>
|
/// <returns></returns>
|
[HttpPost]
|
public IActionResult GetStockCheckDetailList(PdaCrVm model)
|
{
|
try
|
{
|
var list = _pdaCrSvc.GetStockCheckDetailList(model.CrNo, model.PalletNo);
|
|
return Ok(new { code = 0, msg = "盘点单明细物料批次信息", data = list });
|
}
|
catch (Exception e)
|
{
|
return Ok(new { code = 1, msg = e.Message });
|
}
|
}
|
|
/// <summary>
|
/// 获取要盘点的箱码信息
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
[HttpPost]
|
public IActionResult GetStockCheckLogList(PdaCrVm model)
|
{
|
try
|
{
|
var list = _pdaCrSvc.GetStockCheckLogList(model.CrNo, model.LotNo, model.PalletNo, model.BoxNo);
|
|
return Ok(new { code = 0, msg = "要盘点的箱码信息", data = list });
|
}
|
catch (Exception e)
|
{
|
return Ok(new { code = 1, msg = e.Message });
|
}
|
}
|
|
/// <summary>
|
/// 盘点库存
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
[HttpPost]
|
public IActionResult CrSetCheck(PdaCrVm model)
|
{
|
try
|
{
|
//获取当前登录的用户ID
|
var claimsIdentity = this.User.Identity as ClaimsIdentity;
|
if (claimsIdentity == null)
|
{
|
return Ok(new { code = 1, msg = "未获取到当前操作人信息" });
|
}
|
var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
|
if (string.IsNullOrWhiteSpace(userId))
|
{
|
return Ok(new { code = 1, msg = "未获取到当前操作人信息" });
|
}
|
|
_pdaCrSvc.CrSetCheck(model.CrNo, model.LotNo, model.PalletNo, model.Qty, model.SQty, int.Parse(userId));
|
|
return Ok(new { code = 0, msg = "盘点完成", data = "" });
|
}
|
catch (Exception e)
|
{
|
return Ok(new { code = 1, msg = e.Message });
|
}
|
}
|
|
#endregion
|
|
#region 库存查询
|
|
/// <summary>
|
/// pda库存查询
|
/// </summary>
|
/// <param name="locatNo">储位编号</param>
|
/// <param name="palletNo">托盘号</param>
|
/// <param name="skuName">物料名称</param>
|
/// <returns></returns>
|
[HttpGet]
|
public IActionResult GetStockQueryList(string locatNo, string palletNo, string skuName)
|
{
|
List<DataStockDetail> stockList = _pdaCrSvc.GetStockQueryList(locatNo, palletNo, skuName);
|
return Ok(new
|
{
|
data = stockList,
|
code = 0,
|
msg = "成功"
|
});
|
}
|
|
#endregion
|
|
|
}
|
}
|