From 579bf3796f14d619a1e1d969ec281b1e8722f58f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= Date: Wed, 1 Apr 2026 14:50:56 +0800 Subject: [PATCH] =?UTF-8?q?feat(wms):=20=E6=96=B0=E5=A2=9E=E9=92=A2?= =?UTF-8?q?=E5=8D=B7=E8=A1=A8=E9=9D=A2=E5=A4=84=E7=90=86=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E5=8F=8A=E7=9B=B8=E5=85=B3=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在钢卷相关实体类、前端页面和查询逻辑中新增钢卷表面处理字段,包括: 1. 在WmsMaterialCoil、WmsMaterialCoilVo、WmsMaterialCoilBo中新增coilSurfaceTreatment字段 2. 在前端多个页面中新增钢卷表面处理的展示和编辑功能 3. 在查询逻辑中新增对钢卷表面处理的过滤条件 4. 新增仓库操作记录页面及相关统计图表功能 --- klp-ui/src/views/crm/contract/index.vue | 1 + klp-ui/src/views/wms/coil/do/correct.vue | 7 + klp-ui/src/views/wms/coil/do/correntAll.vue | 7 + klp-ui/src/views/wms/coil/merge.vue | 78 ++- klp-ui/src/views/wms/coil/panels/base.vue | 5 + klp-ui/src/views/wms/coil/panels/do.vue | 4 + .../src/views/wms/coil/panels/stepSplit.vue | 8 + klp-ui/src/views/wms/coil/split.vue | 7 + klp-ui/src/views/wms/coil/typing.vue | 8 + .../wms/warehouse/components/LogTable.vue | 2 +- klp-ui/src/views/wms/warehouse/record.vue | 514 ++++++++++++++++++ ...msCoilWarehouseOperationLogController.java | 2 + .../java/com/klp/domain/WmsMaterialCoil.java | 5 + .../bo/WmsCoilWarehouseOperationLogBo.java | 18 + .../com/klp/domain/bo/WmsMaterialCoilBo.java | 3 + .../com/klp/domain/vo/WmsMaterialCoilVo.java | 5 + ...sCoilWarehouseOperationLogServiceImpl.java | 45 +- .../impl/WmsMaterialCoilServiceImpl.java | 2 + .../mapper/klp/WmsMaterialCoilMapper.xml | 3 + 19 files changed, 677 insertions(+), 47 deletions(-) create mode 100644 klp-ui/src/views/wms/warehouse/record.vue diff --git a/klp-ui/src/views/crm/contract/index.vue b/klp-ui/src/views/crm/contract/index.vue index b29c0d01..62c0e75b 100644 --- a/klp-ui/src/views/crm/contract/index.vue +++ b/klp-ui/src/views/crm/contract/index.vue @@ -433,6 +433,7 @@ export default { }; + diff --git a/klp-wms/src/main/java/com/klp/controller/WmsCoilWarehouseOperationLogController.java b/klp-wms/src/main/java/com/klp/controller/WmsCoilWarehouseOperationLogController.java index d5747391..7c239a76 100644 --- a/klp-wms/src/main/java/com/klp/controller/WmsCoilWarehouseOperationLogController.java +++ b/klp-wms/src/main/java/com/klp/controller/WmsCoilWarehouseOperationLogController.java @@ -177,4 +177,6 @@ public class WmsCoilWarehouseOperationLogController extends BaseController { List list = iWmsCoilWarehouseOperationLogService.exportBySecondWarehouseIdAndTimeRange(secondWarehouseId, operationType, inOutType, startTime, endTime); ExcelUtil.exportExcel(list, "钢卷库区操作记录导出", WmsCoilWarehouseOperationLogExportVo.class, response); } + + } diff --git a/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java b/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java index c747df13..a929bf99 100644 --- a/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java +++ b/klp-wms/src/main/java/com/klp/domain/WmsMaterialCoil.java @@ -200,5 +200,10 @@ public class WmsMaterialCoil extends BaseEntity { * 预留宽度(单位:毫米) */ private BigDecimal reservedWidth; + + /** + * 钢卷表中的表面处理 + */ + private String coilSurfaceTreatment; } diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsCoilWarehouseOperationLogBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsCoilWarehouseOperationLogBo.java index a55dc988..bf59f459 100644 --- a/klp-wms/src/main/java/com/klp/domain/bo/WmsCoilWarehouseOperationLogBo.java +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsCoilWarehouseOperationLogBo.java @@ -1,9 +1,13 @@ package com.klp.domain.bo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.klp.common.core.domain.BaseEntity; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springframework.format.annotation.DateTimeFormat; + import javax.validation.constraints.*; +import java.util.Date; /** @@ -47,5 +51,19 @@ public class WmsCoilWarehouseOperationLogBo extends BaseEntity { */ private String remark; + /** + * 创建开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date createStartTime; + + /** + * 创建结束时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date createEndTime; + } diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java index 4c41cd0a..406f7756 100644 --- a/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsMaterialCoilBo.java @@ -235,6 +235,9 @@ public class WmsMaterialCoilBo extends BaseEntity { //新增长度字段 private BigDecimal length; + // 新增的在钢卷表中的表面处理 + private String coilSurfaceTreatment; + //新增通过创建时间 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java index 5163b2c6..694d71ff 100644 --- a/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsMaterialCoilVo.java @@ -312,6 +312,11 @@ public class WmsMaterialCoilVo extends BaseEntity { */ private BigDecimal reservedWidth; + /** + * 新增在钢卷表中的表面处理 + */ + private String coilSurfaceTreatment; + /** * 操作完成时间(从wms_coil_pending_action表查询到的完成时间) */ diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsCoilWarehouseOperationLogServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsCoilWarehouseOperationLogServiceImpl.java index 536501f6..659d7a6d 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsCoilWarehouseOperationLogServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsCoilWarehouseOperationLogServiceImpl.java @@ -55,7 +55,47 @@ public class WmsCoilWarehouseOperationLogServiceImpl implements IWmsCoilWarehous public TableDataInfo queryPageList(WmsCoilWarehouseOperationLogBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); - return TableDataInfo.build(result); + + List records = result.getRecords(); + + Set coilIds = records.stream() + .map(WmsCoilWarehouseOperationLogVo::getCoilId) + .filter(Objects::nonNull) + .collect(Collectors.toSet()); + + Set warehouseIds = records.stream() + .map(WmsCoilWarehouseOperationLogVo::getActualWarehouseId) + .filter(Objects::nonNull) + .collect(Collectors.toSet()); + + Map coilMap = new HashMap<>(); + if (!coilIds.isEmpty()) { + WmsMaterialCoilBo coilBo = new WmsMaterialCoilBo(); + coilBo.setCoilIds(coilIds.stream().map(String::valueOf).collect(Collectors.joining(","))); + List coils = wmsMaterialCoilService.queryList(coilBo); + for (WmsMaterialCoilVo coil : coils) { + coilMap.put(coil.getCoilId(), coil); + } + } + + Map warehouseMap = new HashMap<>(); + if (!warehouseIds.isEmpty()) { + LambdaQueryWrapper warehouseQuery = Wrappers.lambdaQuery(); + warehouseQuery.in(WmsActualWarehouse::getActualWarehouseId, warehouseIds); + List warehouses = wmsActualWarehouseMapper.selectList(warehouseQuery); + for (WmsActualWarehouse warehouse : warehouses) { + WmsActualWarehouseVo vo = BeanUtil.toBean(warehouse, WmsActualWarehouseVo.class); + warehouseMap.put(warehouse.getActualWarehouseId(), vo); + } + } + + for (WmsCoilWarehouseOperationLogVo vo : records) { + vo.setCoil(coilMap.get(vo.getCoilId())); + vo.setWarehouse(warehouseMap.get(vo.getActualWarehouseId())); + } + + TableDataInfo tabledata = TableDataInfo.build(result); + return tabledata; } /** @@ -74,6 +114,9 @@ public class WmsCoilWarehouseOperationLogServiceImpl implements IWmsCoilWarehous lqw.eq(bo.getActualWarehouseId() != null, WmsCoilWarehouseOperationLog::getActualWarehouseId, bo.getActualWarehouseId()); lqw.eq(bo.getOperationType() != null, WmsCoilWarehouseOperationLog::getOperationType, bo.getOperationType()); lqw.eq(bo.getInOutType() != null, WmsCoilWarehouseOperationLog::getInOutType, bo.getInOutType()); + lqw.eq(bo.getCreateBy() != null, WmsCoilWarehouseOperationLog::getCreateBy, bo.getCreateBy()); + lqw.ge(bo.getCreateStartTime() != null, WmsCoilWarehouseOperationLog::getCreateTime, bo.getCreateStartTime()); + lqw.le(bo.getCreateEndTime() != null, WmsCoilWarehouseOperationLog::getCreateTime, bo.getCreateEndTime()); return lqw; } diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java index f07bb46d..92ac8552 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java @@ -520,6 +520,8 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { qw.eq(bo.getProductionDuration() != null, "mc.production_duration", bo.getProductionDuration()); // 预留宽度 qw.eq(bo.getReservedWidth() != null, "mc.reserved_width", bo.getReservedWidth()); + // 钢卷表面处理 + qw.eq(bo.getCoilSurfaceTreatment() != null, "mc.coil_surface_treatment", bo.getCoilSurfaceTreatment()); // 如果actualWarehouseId不为空,则根据实际库区ID进行查询 如果为-1,则查询无库区的数据 if (bo.getActualWarehouseId() != null) { if (bo.getActualWarehouseId() == -1) { diff --git a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml index f08d49c6..07a10221 100644 --- a/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml +++ b/klp-wms/src/main/resources/mapper/klp/WmsMaterialCoilMapper.xml @@ -38,6 +38,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -115,6 +117,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" mc.production_start_time, mc.production_end_time, mc.production_duration, + mc.coil_surface_treatment, mc.reserved_width, mc.coating_type, mc.temper_grade,