Commit 8c7bd9143f75ef085c36f11b95c8627160706ba8
1 parent
a4e4cdf2
通过物料编码在库存查看界面查询库存
Showing
7 changed files
with
51 additions
and
9 deletions
ant-design-vue-jeecg/src/views/system/inventory/InventoryHeaderList.vue
... | ... | @@ -20,11 +20,16 @@ |
20 | 20 | <a-input placeholder="请输入库位编码" v-model="queryParam.locationCode"></a-input> |
21 | 21 | </a-form-item> |
22 | 22 | </a-col> |
23 | - <a-col :xl="6" :lg="7" :md="8" :sm="24"> | |
24 | - <a-form-item label="容器编码"> | |
25 | - <a-input placeholder="请输入容器编码" v-model="queryParam.containerCode"></a-input> | |
26 | - </a-form-item> | |
27 | - </a-col> | |
23 | + <a-col :xl="6" :lg="7" :md="8" :sm="24"> | |
24 | + <a-form-item label="物料编码"> | |
25 | + <a-input placeholder="请输入物料编码" v-model="queryParam.materialCode"></a-input> | |
26 | + </a-form-item> | |
27 | + </a-col> | |
28 | + <a-col :xl="6" :lg="7" :md="8" :sm="24"> | |
29 | + <a-form-item label="容器编码"> | |
30 | + <a-input placeholder="请输入容器编码" v-model="queryParam.containerCode"></a-input> | |
31 | + </a-form-item> | |
32 | + </a-col> | |
28 | 33 | <a-col :xl="6" :lg="7" :md="8" :sm="24"> |
29 | 34 | <a-form-item label="容器状态"> |
30 | 35 | <j-dict-select-tag placeholder="请选择容器状态" v-model="queryParam.containerStatus" |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/container/service/impl/ContainerServiceImpl.java
... | ... | @@ -196,8 +196,12 @@ public class ContainerServiceImpl extends ServiceImpl<ContainerMapper, Container |
196 | 196 | .eq(StringUtils.isNotEmpty(container.getCode()), Container::getCode, container.getCode()) |
197 | 197 | .eq(StringUtils.isNotEmpty(container.getLocationCode()), Container::getLocationCode, container.getLocationCode()); |
198 | 198 | List<Container> list = this.list(lambdaQueryWrapper); |
199 | - list.addAll(containerList); | |
200 | - return list; | |
199 | + if (containerList.size() != 0) { | |
200 | + containerList.addAll(list); | |
201 | + return containerList; | |
202 | + } else { | |
203 | + return list; | |
204 | + } | |
201 | 205 | } |
202 | 206 | |
203 | 207 | private int getStartNumber(String containerTypeCode, String warehouseCode) { |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java
... | ... | @@ -43,6 +43,7 @@ import org.springframework.web.servlet.ModelAndView; |
43 | 43 | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
44 | 44 | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
45 | 45 | import com.baomidou.mybatisplus.core.metadata.IPage; |
46 | +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | |
46 | 47 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
47 | 48 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
48 | 49 | |
... | ... | @@ -86,13 +87,14 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, |
86 | 87 | public Result<IPage<InventoryHeader>> queryPageList(InventoryHeader inventoryHeader, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
87 | 88 | @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { |
88 | 89 | HuahengJwtUtil.setWarehouseCode(req, inventoryHeader); |
90 | + String warehouseCode = HuahengJwtUtil.getWarehouseCodeByToken(req); | |
89 | 91 | String realName = HuahengJwtUtil.getCurrentOperator(); |
92 | + String materialCode = inventoryHeader.getMaterialCode(); | |
90 | 93 | String inventoryHeaderZoneCode = inventoryHeader.getZoneCode(); |
91 | 94 | LambdaQueryWrapper<InventoryHeader> inventoryHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); |
92 | 95 | QueryWrapper<InventoryHeader> queryWrapper = QueryGenerator.initQueryWrapper(inventoryHeader, req.getParameterMap()); |
93 | 96 | queryWrapper.orderByDesc("id"); |
94 | - Page<InventoryHeader> page = new Page<InventoryHeader>(pageNo, pageSize); | |
95 | - IPage<InventoryHeader> pageList = inventoryHeaderService.page(page, queryWrapper); | |
97 | + inventoryHeaderLambdaQueryWrapper = queryWrapper.lambda(); | |
96 | 98 | if (StringUtils.isEmpty(inventoryHeaderZoneCode)) { |
97 | 99 | if (StringUtils.isNotEmpty(realName)) { |
98 | 100 | SysUser sysUser = sysUserService.getUserByRealName(realName); |
... | ... | @@ -105,6 +107,19 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, |
105 | 107 | } |
106 | 108 | } |
107 | 109 | } |
110 | + if (StringUtils.isNotEmpty(materialCode)) { | |
111 | + InventoryDetail inventoryDetail = new InventoryDetail(); | |
112 | + inventoryDetail.setMaterialCode(materialCode); | |
113 | + List<InventoryDetail> inventoryDetailList = inventoryDetailService.getInventoryDetailListByMaterialCode(materialCode, warehouseCode); | |
114 | + if (CollectionUtils.isNotEmpty(inventoryDetailList)) { | |
115 | + List<String> containerCodeList = inventoryDetailList.stream().distinct().map(InventoryDetail::getContainerCode).collect(Collectors.toList()); | |
116 | + if (CollectionUtils.isNotEmpty(containerCodeList)) { | |
117 | + inventoryHeaderLambdaQueryWrapper.in(InventoryHeader::getContainerCode, containerCodeList); | |
118 | + } | |
119 | + } | |
120 | + } | |
121 | + Page<InventoryHeader> page = new Page<InventoryHeader>(pageNo, pageSize); | |
122 | + IPage<InventoryHeader> pageList = inventoryHeaderService.page(page, queryWrapper); | |
108 | 123 | return Result.OK(pageList); |
109 | 124 | } |
110 | 125 | |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/entity/InventoryHeader.java
... | ... | @@ -74,6 +74,10 @@ public class InventoryHeader implements Serializable { |
74 | 74 | @Excel(name = "总重量", width = 15) |
75 | 75 | @ApiModelProperty(value = "总重量") |
76 | 76 | private Integer totalWeight; |
77 | + /** 物料编码 */ | |
78 | + @TableField(exist = false) | |
79 | + @ApiModelProperty(value = "物料编码") | |
80 | + private String materialCode; | |
77 | 81 | /** 备用字段1 */ |
78 | 82 | @Excel(name = "备用字段1", width = 15) |
79 | 83 | @ApiModelProperty(value = "备用字段1") |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/service/IInventoryDetailService.java
... | ... | @@ -27,6 +27,8 @@ public interface IInventoryDetailService extends IService<InventoryDetail> { |
27 | 27 | |
28 | 28 | List<InventoryDetail> getInventoryDetailListByContainerCode(String containerCode, String warehouseCode); |
29 | 29 | |
30 | + List<InventoryDetail> getInventoryDetailListByMaterialCode(String materialCode, String warehouseCode); | |
31 | + | |
30 | 32 | // 求一种物料的库存之和(总数) |
31 | 33 | BigDecimal getInventorySumQty(InventoryDetail inventoryDetail); |
32 | 34 | |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/service/impl/InventoryDetailServiceImpl.java
... | ... | @@ -89,6 +89,15 @@ public class InventoryDetailServiceImpl extends ServiceImpl<InventoryDetailMappe |
89 | 89 | } |
90 | 90 | |
91 | 91 | @Override |
92 | + public List<InventoryDetail> getInventoryDetailListByMaterialCode(String materialCode, String warehouseCode) { | |
93 | + LambdaQueryWrapper<InventoryDetail> inventoryDetailLambdaQueryWrapper = Wrappers.lambdaQuery(); | |
94 | + inventoryDetailLambdaQueryWrapper.eq(InventoryDetail::getMaterialCode, materialCode).eq(InventoryDetail::getWarehouseCode, warehouseCode) | |
95 | + .eq(InventoryDetail::getEnable, QuantityConstant.INVENTORY_DETAIL_STATUS_ENABLE); | |
96 | + List<InventoryDetail> inventoryDetailList = list(inventoryDetailLambdaQueryWrapper); | |
97 | + return inventoryDetailList; | |
98 | + } | |
99 | + | |
100 | + @Override | |
92 | 101 | public BigDecimal getInventorySumQty(InventoryDetail inventoryDetail) { |
93 | 102 | LambdaQueryWrapper<InventoryDetail> inventoryDetailLambdaQueryWrapper = Wrappers.lambdaQuery(); |
94 | 103 | inventoryDetailLambdaQueryWrapper.eq(InventoryDetail::getInventoryStatus, inventoryDetail.getInventoryStatus()) |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
... | ... | @@ -1887,6 +1887,9 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea |
1887 | 1887 | throw new JeecgBootException("快速入库, 生成补充任务时必须有入库口"); |
1888 | 1888 | } |
1889 | 1889 | } |
1890 | + if (!receiptHeaderService.updateReceiptHeader(receiptHeader.getId())) { | |
1891 | + throw new JeecgBootException("快速入库, 更新入库表单头失败"); | |
1892 | + } | |
1890 | 1893 | return Result.OK("快速入库成功"); |
1891 | 1894 | } |
1892 | 1895 | |
... | ... |