From e82d015ceaf63c43c9876b193d4ae5da4ec68362 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 6 Apr 2026 10:36:50 +0800 Subject: [PATCH] =?UTF-8?q?feat(aps):=20=E6=B7=BB=E5=8A=A0=E6=8E=92?= =?UTF-8?q?=E4=BA=A7=E5=8D=95=E6=98=8E=E7=BB=86=E5=88=86=E9=A1=B5=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=90=88=E5=90=8C=E7=9A=84=E6=8A=80=E6=9C=AF=E6=B6=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在ApsPlanDetailMapper中新增selectVoPagePlus方法支持分页查询 - 在ApsPlanDetailMapper.xml中添加对应的SQL查询语句 - 在ApsPlanDetailServiceImpl中实现分页查询逻辑和查询条件构建 - 在ApsPlanDetailVo中添加techAnnex字段用于显示技术附件信息 - 集成MyBatis-Plus分页插件和查询包装器功能 - 优化查询条件构建,支持按计划单ID、订单ID、合同编号等多条件筛选 - 实现按创建时间倒序排列的排序功能 --- .../klp/aps/domain/vo/ApsPlanDetailVo.java | 6 +++ .../klp/aps/mapper/ApsPlanDetailMapper.java | 6 +++ .../impl/ApsPlanDetailServiceImpl.java | 51 ++++++++++++++++++- .../mapper/aps/ApsPlanDetailMapper.xml | 10 ++++ 4 files changed, 71 insertions(+), 2 deletions(-) diff --git a/klp-aps/src/main/java/com/klp/aps/domain/vo/ApsPlanDetailVo.java b/klp-aps/src/main/java/com/klp/aps/domain/vo/ApsPlanDetailVo.java index 2eb19ff2..11cff34c 100644 --- a/klp-aps/src/main/java/com/klp/aps/domain/vo/ApsPlanDetailVo.java +++ b/klp-aps/src/main/java/com/klp/aps/domain/vo/ApsPlanDetailVo.java @@ -261,5 +261,11 @@ public class ApsPlanDetailVo { @ExcelProperty(value = "备注") private String remark; + /** + * 技术附件 + */ + @ExcelProperty(value = "技术附件") + private String techAnnex; + } diff --git a/klp-aps/src/main/java/com/klp/aps/mapper/ApsPlanDetailMapper.java b/klp-aps/src/main/java/com/klp/aps/mapper/ApsPlanDetailMapper.java index ef04b75c..39ed96de 100644 --- a/klp-aps/src/main/java/com/klp/aps/mapper/ApsPlanDetailMapper.java +++ b/klp-aps/src/main/java/com/klp/aps/mapper/ApsPlanDetailMapper.java @@ -1,8 +1,12 @@ package com.klp.aps.mapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.klp.aps.domain.entity.ApsPlanDetail; import com.klp.aps.domain.vo.ApsPlanDetailVo; import com.klp.common.core.mapper.BaseMapperPlus; +import org.apache.ibatis.annotations.Param; import java.util.Collection; @@ -15,4 +19,6 @@ import java.util.Collection; public interface ApsPlanDetailMapper extends BaseMapperPlus { int deleteByPlanSheetIds(Collection planSheetIds); + + Page selectVoPagePlus(Page page, @Param("ew") QueryWrapper queryWrapper); } diff --git a/klp-aps/src/main/java/com/klp/aps/service/impl/ApsPlanDetailServiceImpl.java b/klp-aps/src/main/java/com/klp/aps/service/impl/ApsPlanDetailServiceImpl.java index 3ac8e680..16fe3858 100644 --- a/klp-aps/src/main/java/com/klp/aps/service/impl/ApsPlanDetailServiceImpl.java +++ b/klp-aps/src/main/java/com/klp/aps/service/impl/ApsPlanDetailServiceImpl.java @@ -1,6 +1,7 @@ package com.klp.aps.service.impl; import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.klp.common.core.page.TableDataInfo; import com.klp.common.core.domain.PageQuery; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -44,11 +45,57 @@ public class ApsPlanDetailServiceImpl implements IApsPlanDetailService { */ @Override public TableDataInfo queryPageList(ApsPlanDetailBo bo, PageQuery pageQuery) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + QueryWrapper qw = buildQueryWrapperPlus(bo); + Page result = baseMapper.selectVoPagePlus(pageQuery.build(), qw); return TableDataInfo.build(result); } + private QueryWrapper buildQueryWrapperPlus(ApsPlanDetailBo bo) { + Map params = bo.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("d.del_flag", 0); + qw.eq(bo.getPlanSheetId() != null, "d.plan_sheet_id", bo.getPlanSheetId()); + qw.eq(bo.getOrderId() != null, "d.order_id", bo.getOrderId()); + qw.eq(StringUtils.isNotBlank(bo.getBizSeqNo()), "d.biz_seq_no", bo.getBizSeqNo()); + qw.eq(StringUtils.isNotBlank(bo.getOrderCode()), "d.order_code", bo.getOrderCode()); + qw.eq(StringUtils.isNotBlank(bo.getContractCode()), "d.contract_code", bo.getContractCode()); + qw.like(StringUtils.isNotBlank(bo.getCustomerName()), "d.customer_name", bo.getCustomerName()); + qw.eq(StringUtils.isNotBlank(bo.getSalesman()), "d.salesman", bo.getSalesman()); + qw.eq(StringUtils.isNotBlank(bo.getRawManufacturer()), "d.raw_manufacturer", bo.getRawManufacturer()); + qw.eq(StringUtils.isNotBlank(bo.getRawMaterial()), "d.raw_material", bo.getRawMaterial()); + qw.eq(bo.getRawThick() != null, "d.raw_thick", bo.getRawThick()); + qw.eq(bo.getRawWidth() != null, "d.raw_width", bo.getRawWidth()); + qw.eq(bo.getRawMaterialId() != null, "d.raw_material_id", bo.getRawMaterialId()); + qw.eq(StringUtils.isNotBlank(bo.getRawCoilNos()), "d.raw_coil_nos", bo.getRawCoilNos()); + qw.eq(StringUtils.isNotBlank(bo.getRawLocation()), "d.raw_location", bo.getRawLocation()); + qw.eq(StringUtils.isNotBlank(bo.getRawPackaging()), "d.raw_packaging", bo.getRawPackaging()); + qw.eq(StringUtils.isNotBlank(bo.getRawEdgeReq()), "d.raw_edge_req", bo.getRawEdgeReq()); + qw.eq(StringUtils.isNotBlank(bo.getRawCoatingType()), "d.raw_coating_type", bo.getRawCoatingType()); + qw.eq(bo.getRawNetWeight() != null, "d.raw_net_weight", bo.getRawNetWeight()); + qw.like(StringUtils.isNotBlank(bo.getProductName()), "d.product_name", bo.getProductName()); + qw.eq(StringUtils.isNotBlank(bo.getProductMaterial()), "d.product_material", bo.getProductMaterial()); + qw.eq(bo.getCoatingG() != null, "d.coating_g", bo.getCoatingG()); + qw.eq(bo.getProductWidth() != null, "d.product_width", bo.getProductWidth()); + qw.eq(bo.getRollingThick() != null, "d.rolling_thick", bo.getRollingThick()); + qw.eq(bo.getMarkCoatThick() != null, "d.mark_coat_thick", bo.getMarkCoatThick()); + qw.eq(StringUtils.isNotBlank(bo.getTonSteelLengthRange()), "d.ton_steel_length_range", bo.getTonSteelLengthRange()); + qw.eq(bo.getPlanQty() != null, "d.plan_qty", bo.getPlanQty()); + qw.eq(bo.getPlanWeight() != null, "d.plan_weight", bo.getPlanWeight()); + qw.eq(StringUtils.isNotBlank(bo.getSurfaceTreatment()), "d.surface_treatment", bo.getSurfaceTreatment()); + qw.eq(StringUtils.isNotBlank(bo.getWidthReq()), "d.width_req", bo.getWidthReq()); + qw.eq(StringUtils.isNotBlank(bo.getProductPackaging()), "d.product_packaging", bo.getProductPackaging()); + qw.eq(StringUtils.isNotBlank(bo.getProductEdgeReq()), "d.product_edge_req", bo.getProductEdgeReq()); + qw.eq(StringUtils.isNotBlank(bo.getUsageReq()), "d.usage_req", bo.getUsageReq()); + qw.eq(StringUtils.isNotBlank(bo.getPostProcess()), "d.post_process", bo.getPostProcess()); + qw.eq(StringUtils.isNotBlank(bo.getNextProcess()), "d.next_process", bo.getNextProcess()); + qw.eq(StringUtils.isNotBlank(bo.getSampleReq()), "d.sample_req", bo.getSampleReq()); + qw.eq(bo.getStartTime() != null, "d.start_time", bo.getStartTime()); + qw.eq(bo.getEndTime() != null, "d.end_time", bo.getEndTime()); + //根据创建时间倒叙 + qw.orderByDesc("d.create_time"); + return qw; + } + /** * 查询排产单明细列表 */ diff --git a/klp-aps/src/main/resources/mapper/aps/ApsPlanDetailMapper.xml b/klp-aps/src/main/resources/mapper/aps/ApsPlanDetailMapper.xml index a77645e4..b5d6c2c4 100644 --- a/klp-aps/src/main/resources/mapper/aps/ApsPlanDetailMapper.xml +++ b/klp-aps/src/main/resources/mapper/aps/ApsPlanDetailMapper.xml @@ -58,4 +58,14 @@ + +