Files
wcs/WCS.WebApi/Controllers/InstoreController.cs
hehaibing-1996 3c2cc27467 提交代码
2024-05-09 16:38:47 +08:00

147 lines
4.3 KiB
C#

using Microsoft.AspNetCore.Mvc;
using WCS.BLL.HardWare;
using WCS.BLL.Manager;
using WCS.BLL.Services.IService;
using WCS.Model;
namespace WebApi.Controllers
{
[ApiController]
[Route("[controller]")]
public class InstoreController : ControllerBase
{
private readonly ILogger<InstoreController> _logger;
private readonly IInstoreService _instoreService;
public InstoreController(ILogger<InstoreController> logger, IInstoreService instoreService)
{
_logger = logger;
_instoreService = instoreService;
}
/// <summary>
/// 进入入库模式
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("shelfGoInInStore")]
[HttpPost(Name = "shelfGoInInStore")]
public async Task<ResponseBase> shelfGoInInStore(ShelfGoInInstoreRequest request)
{
string content = string.Empty;
try
{
//获取调用设备的IP地址
var IPAdress = HttpContext?.Connection?.RemoteIpAddress?.ToString();
if (string.IsNullOrEmpty(IPAdress))
{
//未获取到调用设备的IP地址
//TO DO 记录日志未获取到IP
}
else
{
//获取到调用设备的Ip地址 缓存进request
request.IpAdress = IPAdress;
}
return _instoreService.shelfGoInInStore(request);
}
catch (Exception ex)
{
return new ShelfGoInInstoreResponse()
{
Code = 300,
Message = "货架进入入库模式失败:" + ex.Message,
};
}
}
/// <summary>
/// 退出入库模式
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("shelfGoOutInStore")]
[HttpPost(Name = "shelfGoOutInStore")]
public async Task<ResponseBase> shelfGoOutInStore(ShelfGoOutInStoreRequest request)
{
try
{
return _instoreService.shelfGoOutInStore(request);
}
catch (Exception ex)
{
return new ResponseCommon()
{
Code = 300,
Message = $"货架退出入库模式失败:{ex.Message}",
};
}
}
/// <summary>
/// 扫码绑定物料 获取物料明细
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("queryByMatSn")]
[HttpPost(Name = "queryByMatSn")]
public async Task<ResponseBase> queryByMatSn(QueryByMatSnRequest request)
{
return await _instoreService.queryByMatSn(request);
}
/// <summary>
/// 查询入库状态
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("queryInstoreStatus")]
[HttpPost(Name = "queryInstoreStatus")]
public async Task<ResponseBase> queryInstoreStatus(QueryByMatSnRequest request)
{
try
{
return await _instoreService.queryInstoreStatus(request);
}
catch (Exception ex)
{
return new ResponseCommon()
{
Code = 300,
Message = $"操作失败:{ex.Message}",
};
}
}
/// <summary>
/// 单灯货架提交入库
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[Route("singleLightCommitInstore")]
[HttpPost(Name = "queryInstoreStatus")]
public async Task<ResponseBase> singleLightCommitInstore(QueryByMatSnRequest request)
{
//TODO:陶坤 单灯货架提交入库
try
{
return await _instoreService.queryInstoreStatus(request);
//ShelfManager.
//
}
catch (Exception ex)
{
return new ResponseCommon()
{
Code = 300,
Message = $"操作失败:{ex.Message}",
};
}
}
}
}