From 84f141896c4a0a43c236a0d9c82cd33c9045bf5c Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Mon, 2 Feb 2026 09:55:17 +0800 Subject: [PATCH 01/29] =?UTF-8?q?feat(order):=20=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=AE=9E=E4=BD=93=E5=A2=9E=E5=8A=A0=E5=8E=9F?= =?UTF-8?q?=E6=96=99=E8=A7=84=E6=A0=BC=E7=AD=89=E6=96=B0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将 specRequire 字段重命名为 rawMaterialSpec(原料规格) - 新增 finishedProductSpec 字段(成品规格) - 新增 material 字段(材质) - 新增 grade 字段(等级) - 新增 weight 字段(重量) - 新增 contractPrice 字段(合同定价) - 新增 customizer 字段(定制人) - 新增 shipper 字段(发货人) - 新增 productionBatch 字段(排产批次) - 更新数据库映射配置以支持新字段 - 更新查询条件构造逻辑以包含新字段过滤 - 更新 VO 对象以支持 Excel 导出新字段 --- .../java/com/klp/crm/domain/CrmOrderItem.java | 38 ++++++++++++- .../com/klp/crm/domain/bo/CrmOrderItemBo.java | 46 ++++++++++++++- .../com/klp/crm/domain/vo/CrmOrderItemVo.java | 56 +++++++++++++++++-- .../service/impl/CrmOrderItemServiceImpl.java | 12 +++- .../resources/mapper/CrmOrderItemMapper.xml | 22 +++++++- 5 files changed, 159 insertions(+), 15 deletions(-) diff --git a/klp-crm/src/main/java/com/klp/crm/domain/CrmOrderItem.java b/klp-crm/src/main/java/com/klp/crm/domain/CrmOrderItem.java index b6e8bd44..3911e740 100644 --- a/klp-crm/src/main/java/com/klp/crm/domain/CrmOrderItem.java +++ b/klp-crm/src/main/java/com/klp/crm/domain/CrmOrderItem.java @@ -34,9 +34,9 @@ public class CrmOrderItem extends BaseEntity { */ private String productType; /** - * 规格要求 + * 原料规格 */ - private String specRequire; + private String rawMaterialSpec; /** * 产品数量 */ @@ -53,10 +53,42 @@ public class CrmOrderItem extends BaseEntity { * 备注 */ private String remark; + /** + * 成品规格 + */ + private String finishedProductSpec; + /** + * 材质 + */ + private String material; + /** + * 等级 + */ + private String grade; + /** + * 重量 + */ + private BigDecimal weight; + /** + * 合同定价 + */ + private BigDecimal contractPrice; + /** + * 定制人 + */ + private String customizer; + /** + * 发货人 + */ + private String shipper; + /** + * 排产批次 + */ + private String productionBatch; /** * 删除标识 0正常 2删除 */ @TableLogic private Long delFlag; -} +} \ No newline at end of file diff --git a/klp-crm/src/main/java/com/klp/crm/domain/bo/CrmOrderItemBo.java b/klp-crm/src/main/java/com/klp/crm/domain/bo/CrmOrderItemBo.java index b7e5fd91..ee08d021 100644 --- a/klp-crm/src/main/java/com/klp/crm/domain/bo/CrmOrderItemBo.java +++ b/klp-crm/src/main/java/com/klp/crm/domain/bo/CrmOrderItemBo.java @@ -34,9 +34,9 @@ public class CrmOrderItemBo extends BaseEntity { private String productType; /** - * 规格要求 + * 原料规格 */ - private String specRequire; + private String rawMaterialSpec; /** * 产品数量 @@ -57,6 +57,46 @@ public class CrmOrderItemBo extends BaseEntity { * 备注 */ private String remark; + + /** + * 成品规格 + */ + private String finishedProductSpec; + + /** + * 材质 + */ + private String material; + + /** + * 等级 + */ + private String grade; + + /** + * 重量 + */ + private BigDecimal weight; + + /** + * 合同定价 + */ + private BigDecimal contractPrice; + + /** + * 定制人 + */ + private String customizer; + + /** + * 发货人 + */ + private String shipper; + + /** + * 排产批次 + */ + private String productionBatch; -} +} \ No newline at end of file diff --git a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java index 51b6870d..4efd8b12 100644 --- a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java +++ b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderItemVo.java @@ -41,10 +41,10 @@ public class CrmOrderItemVo { private String productType; /** - * 规格要求 + * 原料规格 */ - @ExcelProperty(value = "规格要求") - private String specRequire; + @ExcelProperty(value = "原料规格") + private String rawMaterialSpec; /** * 产品数量 @@ -71,5 +71,53 @@ public class CrmOrderItemVo { @ExcelProperty(value = "备注") private String remark; + /** + * 成品规格 + */ + @ExcelProperty(value = "成品规格") + private String finishedProductSpec; -} + /** + * 材质 + */ + @ExcelProperty(value = "材质") + private String material; + + /** + * 等级 + */ + @ExcelProperty(value = "等级") + private String grade; + + /** + * 重量 + */ + @ExcelProperty(value = "重量") + private BigDecimal weight; + + /** + * 合同定价 + */ + @ExcelProperty(value = "合同定价") + private BigDecimal contractPrice; + + /** + * 定制人 + */ + @ExcelProperty(value = "定制人") + private String customizer; + + /** + * 发货人 + */ + @ExcelProperty(value = "发货人") + private String shipper; + + /** + * 排产批次 + */ + @ExcelProperty(value = "排产批次") + private String productionBatch; + + +} \ No newline at end of file diff --git a/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java b/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java index 3705995b..cee3853a 100644 --- a/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java +++ b/klp-crm/src/main/java/com/klp/crm/service/impl/CrmOrderItemServiceImpl.java @@ -63,10 +63,18 @@ public class CrmOrderItemServiceImpl implements ICrmOrderItemService { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.eq(StringUtils.isNotBlank(bo.getOrderId()), CrmOrderItem::getOrderId, bo.getOrderId()); lqw.eq(StringUtils.isNotBlank(bo.getProductType()), CrmOrderItem::getProductType, bo.getProductType()); - lqw.eq(StringUtils.isNotBlank(bo.getSpecRequire()), CrmOrderItem::getSpecRequire, bo.getSpecRequire()); + lqw.eq(StringUtils.isNotBlank(bo.getRawMaterialSpec()), CrmOrderItem::getRawMaterialSpec, bo.getRawMaterialSpec()); lqw.eq(bo.getProductNum() != null, CrmOrderItem::getProductNum, bo.getProductNum()); lqw.eq(StringUtils.isNotBlank(bo.getSpecialRequire()), CrmOrderItem::getSpecialRequire, bo.getSpecialRequire()); lqw.eq(bo.getItemAmount() != null, CrmOrderItem::getItemAmount, bo.getItemAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getFinishedProductSpec()), CrmOrderItem::getFinishedProductSpec, bo.getFinishedProductSpec()); + lqw.eq(StringUtils.isNotBlank(bo.getMaterial()), CrmOrderItem::getMaterial, bo.getMaterial()); + lqw.eq(StringUtils.isNotBlank(bo.getGrade()), CrmOrderItem::getGrade, bo.getGrade()); + lqw.eq(bo.getWeight() != null, CrmOrderItem::getWeight, bo.getWeight()); + lqw.eq(bo.getContractPrice() != null, CrmOrderItem::getContractPrice, bo.getContractPrice()); + lqw.eq(StringUtils.isNotBlank(bo.getCustomizer()), CrmOrderItem::getCustomizer, bo.getCustomizer()); + lqw.eq(StringUtils.isNotBlank(bo.getShipper()), CrmOrderItem::getShipper, bo.getShipper()); + lqw.eq(StringUtils.isNotBlank(bo.getProductionBatch()), CrmOrderItem::getProductionBatch, bo.getProductionBatch()); return lqw; } @@ -112,4 +120,4 @@ public class CrmOrderItemServiceImpl implements ICrmOrderItemService { } return baseMapper.deleteBatchIds(ids) > 0; } -} +} \ No newline at end of file diff --git a/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml b/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml index 8cceba99..cab90b42 100644 --- a/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml +++ b/klp-crm/src/main/resources/mapper/CrmOrderItemMapper.xml @@ -8,11 +8,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + + + + + + + + + @@ -25,11 +33,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" item_id, order_id, product_type, - spec_require, + raw_material_spec, product_num, special_require, item_amount, remark, + finished_product_spec, + material, + grade, + weight, + contract_price, + customizer, + shipper, + production_batch, create_by, create_time, update_by, @@ -45,4 +61,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + \ No newline at end of file From 0cb51f6117f44f4df5a3622a992b914d395fe60a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= Date: Mon, 2 Feb 2026 10:55:15 +0800 Subject: [PATCH 02/29] =?UTF-8?q?feat(crm):=20=E6=B7=BB=E5=8A=A0=E5=AE=A2?= =?UTF-8?q?=E6=88=B7=E8=81=94=E7=B3=BB=E6=96=B9=E5=BC=8F=E5=92=8C=E5=85=AC?= =?UTF-8?q?=E5=8F=B8=E5=90=8D=E7=A7=B0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在订单和客户管理界面中新增联系方式和公司名称字段显示 调整客户列表和订单列表的布局及字段展示 优化收款表单首次加载时的处理逻辑 --- .../java/com/klp/crm/domain/vo/CrmOrderVo.java | 4 ++++ .../src/main/resources/mapper/CrmOrderMapper.xml | 2 ++ klp-ui/src/views/crm/components/ReceiveTable.vue | 7 ++++++- klp-ui/src/views/crm/customer/index.vue | 8 +++++--- klp-ui/src/views/crm/order/index.vue | 14 +++++++++----- 5 files changed, 26 insertions(+), 9 deletions(-) diff --git a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderVo.java b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderVo.java index 13463f31..e56ea33e 100644 --- a/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderVo.java +++ b/klp-crm/src/main/java/com/klp/crm/domain/vo/CrmOrderVo.java @@ -116,6 +116,10 @@ public class CrmOrderVo extends BaseEntity { // @ExcelProperty(value = "地址") private String address; + private String contactWay; + + private String companyName; + //创建人 private String createByName; //更新人 diff --git a/klp-crm/src/main/resources/mapper/CrmOrderMapper.xml b/klp-crm/src/main/resources/mapper/CrmOrderMapper.xml index 88dea3e1..d8421338 100644 --- a/klp-crm/src/main/resources/mapper/CrmOrderMapper.xml +++ b/klp-crm/src/main/resources/mapper/CrmOrderMapper.xml @@ -47,6 +47,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" co.update_time AS updateTime, cu.customer_code AS customerCode, cu.contact_person AS contactPerson, + cu.contact_way AS contactWay, + cu.company_name AS companyName, cu.address AS address FROM crm_order co LEFT JOIN crm_customer cu ON co.customer_id = cu.customer_id diff --git a/klp-ui/src/views/crm/components/ReceiveTable.vue b/klp-ui/src/views/crm/components/ReceiveTable.vue index 68f793f9..77eb27a1 100644 --- a/klp-ui/src/views/crm/components/ReceiveTable.vue +++ b/klp-ui/src/views/crm/components/ReceiveTable.vue @@ -247,7 +247,8 @@ export default { // 收款表单参数 receiveForm: {}, // 是否显示收款弹出层 - receiveOpen: false + receiveOpen: false, + isFirst: true, }; }, methods: { @@ -258,6 +259,10 @@ export default { this.receivableList = response.rows; this.total = response.total; this.loading = false; + if (this.isFirst) { + this.isFirst = false; + return; + } updateOrder({ orderId: this.orderId, unpaidAmount: this.unreceivedAmount, diff --git a/klp-ui/src/views/crm/customer/index.vue b/klp-ui/src/views/crm/customer/index.vue index 1f00e3fc..bccf8c7b 100644 --- a/klp-ui/src/views/crm/customer/index.vue +++ b/klp-ui/src/views/crm/customer/index.vue @@ -2,7 +2,7 @@
- +
客户列表
@@ -55,7 +55,9 @@ listKey="customerId" :loading="customerLoading" field1="customerCode" - field4="companyName" + field2="companyName" + field4="contactPerson" + field5="contactWay" @item-click="handleItemClick" > +