using Microsoft.AspNetCore.Mvc; using WCS.BLL.Services.IService; using WCS.BLL.Services.Service; using WCS.Model; using WCS.Model.ApiModel.MatBaseInfo; using WCS.Model.ApiModel.Stocktaking; namespace WCS.WebApi.Controllers { /// /// PDA库存盘点 /// [ApiController] [Route("[controller]")] public class PDAStocktakingController : ControllerBase { public IStockTakingService _stockTakingService { get; set; } public PDAStocktakingController(IStockTakingService stockTakingService) { _stockTakingService = stockTakingService; } [Route("stockTakingById")] [HttpPost(Name = "stockTakingById")] public async Task stockTakingById(StockTakingByIdRequest request) { try { #region 参数校验 //判断参数 //数量可以为空 数量为空盘点确认 这边删除对应数据即可 if (request.MatDetailCurrentInfoId == 0) { return new ResponseCommon() { Code = 201, Message = $"操作失败:参数传入错误(Id为0)!", Data = null, }; } if (request.StocktakingQty < 0) { return new ResponseCommon() { Code = 201, Message = $"操作失败:数量应大于等于0!", Data = null, }; } #endregion return await _stockTakingService.stockTakingById(request); } catch (Exception ex) { return new ResponseCommon() { Code = 201, Message = ex.Message, Data = null, }; } } [Route("getStocktakingInfos")] [HttpPost(Name = "getStocktakingInfos")] public async Task getStocktakingInfos(GetStocktakingInfosRequest request) { try { return await _stockTakingService.getStocktakingInfos(request); } catch (Exception ex) { return new ResponseCommon() { Code = 201, Message = ex.Message, Data = null, }; } } [Route("getStocktakingInfosByShelfCode")] [HttpPost(Name = "getStocktakingInfosByShelfCode")] public async Task getStocktakingInfosByShelfCode(GetStocktakingInfosByShelfCodeRequest request) { try { return await _stockTakingService.getStocktakingInfosByShelfCode(request); } catch (Exception ex) { return new ResponseCommon() { Code = 201, Message = ex.Message, Data = null, }; } } [HttpPost("updateStocktakingInfos")] public async Task> updateStocktakingInfos(UpdateStocktakingInfoRequest request) { return await _stockTakingService.updateStocktakingInfo(request); } [HttpPost("deleteStocktakingInfos")] public async Task> deleteStocktakingInfos(DeleteInfosRequest request) { //校验 if (request.needDeleteIds == null || request.needDeleteIds.Count == 0) { return new ResponseCommon() { Code = 201, Message = "操作失败:参数校验失败(ID)." }; } return await _stockTakingService.deleteStocktakingInfos(request); } [HttpPost("commitStocktakingInfos")] public async Task> commitStocktakingInfos(DeleteInfosRequest request) { //校验 if (request.needDeleteIds == null || request.needDeleteIds.Count == 0) { return new ResponseCommon() { Code = 201, Message = "操作失败:参数校验失败(ID)." }; } return await _stockTakingService.commitStocktakingInfos(request); } } }