using Microsoft.AspNetCore.Mvc; using ZR.Model; using ZR.Model.MES.wms.Dto; using ZR.Service.mes.wms.IService; //创建时间:2024-04-26 namespace ZR.Admin.WebApi.Controllers { /// /// 仓库批量查询综合接口 /// // [Verify] [Route("/mes/wm/WmGoodsBatchSearch")] public class WmGoodsBatchSearchController : BaseController { /// /// 仓库操作 /// private readonly IWmGoodsBatchSearchService _wmGoodsBatchSearchService; public WmGoodsBatchSearchController(IWmGoodsBatchSearchService wmGoodsBatchSearchService) { _wmGoodsBatchSearchService = wmGoodsBatchSearchService; } /// /// 根据查询条件聚合批量查询出库数据,并生成树列表数据 /// /// [HttpPost("getBatchTreeTableData")] // [Log(Title = "根据查询条件聚合批量查询出库数据,并生成树列表数据", BusinessType = BusinessType.QUERY)] public IActionResult GetBatchTreeTableData([FromBody] WmGoodsBatchSearchDto parm) { if (parm is null) { throw new ArgumentNullException(nameof(parm)); } PagedInfo result = null; // 入库 if (parm.Category == 1) { // 按批次号 // 树父列表 if (parm.Model == 1 && parm.Type == 1) { result = _wmGoodsBatchSearchService.GetBatchNowProductionByPackageCodeShort(parm); } // 树子列表 else if (parm.Model == 1 && parm.Type == 2) { result = _wmGoodsBatchSearchService.GetBatchNowProductionTreeLazyByPackageCodeShort(parm); } // 按零件号 else if (parm.Model == 2 && parm.Type == 1) { result = _wmGoodsBatchSearchService.GetBatchNowProductionByPartnumber(parm); } else if (parm.Model == 2 && parm.Type == 2) { result = _wmGoodsBatchSearchService.GetBatchNowProductionTreeLazyByPartnumber(parm); } } // 出库 else if (parm.Category == 2) { // 按批次号 // 树父列表 if (parm.Model == 1 && parm.Type == 1) { result = _wmGoodsBatchSearchService.GetBatchOutRecordByPackageCodeShort(parm); } // 树子列表 else if (parm.Model == 1 && parm.Type == 2) { result = _wmGoodsBatchSearchService.GetBatchOutRecordTreeLazyByPackageCodeShort(parm); } // 按零件号 else if (parm.Model == 2 && parm.Type == 1) { result = _wmGoodsBatchSearchService.GetBatchOutRecordByPartnumber(parm); } else if (parm.Model == 2 && parm.Type == 2) { result = _wmGoodsBatchSearchService.GetBatchOutRecordTreeLazyByPartnumber(parm); } // 按出库单号 else if (parm.Model == 3 && parm.Type == 1) { result = _wmGoodsBatchSearchService.GetBatchOutRecordByShipmentNum(parm); } else if (parm.Model == 3 && parm.Type == 2) { result = _wmGoodsBatchSearchService.GetBatchOutRecordTreeLazyByShipmentNum(parm); } } if (result is null) { return ToResponse(new ApiResult(500, "数据获取异常", result)); } return ToResponse(new ApiResult(200, "ok", result)); } } }