From 92e61379746ec9c787694300ec84539d16bba5d1 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 30 十二月 2025 09:58:17 +0800
Subject: [PATCH] feat(product): 添加产品结构父子关系功能
---
src/main/java/com/ruoyi/production/pojo/ProductStructure.java | 5 +++++
src/main/resources/mapper/production/ProductStructureMapper.xml | 17 +++++++++--------
src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java | 5 ++++-
src/main/java/com/ruoyi/production/controller/ProductStructureController.java | 5 -----
doc/create_table_product_structure.sql | 2 ++
src/main/java/com/ruoyi/production/dto/ProductStructureDto.java | 4 ++--
6 files changed, 22 insertions(+), 16 deletions(-)
diff --git a/doc/create_table_product_structure.sql b/doc/create_table_product_structure.sql
index 4f7d7f6..83af495 100644
--- a/doc/create_table_product_structure.sql
+++ b/doc/create_table_product_structure.sql
@@ -12,3 +12,5 @@
disk_quantity numeric(16, 4) not null comment '鐩樻暟閲�',
tenant_id bigint not null comment '绉熸埛id'
);
+alter table product_structure
+ add parent_id bigint null comment '鐖秈d';
diff --git a/src/main/java/com/ruoyi/production/controller/ProductStructureController.java b/src/main/java/com/ruoyi/production/controller/ProductStructureController.java
index 0e26460..f2f4ef1 100644
--- a/src/main/java/com/ruoyi/production/controller/ProductStructureController.java
+++ b/src/main/java/com/ruoyi/production/controller/ProductStructureController.java
@@ -32,9 +32,4 @@
public R addOrUpdate(@RequestBody ProductStructureDto productStructureDto){
return R.ok(productStructureService.addProductStructureDto(productStructureDto));
}
- @ApiOperation("鍒犻櫎浜у搧缁撴瀯")
- @DeleteMapping("/{ids}")
- public R delete(@PathVariable("ids") Long[] ids){
- return R.ok(productStructureService.removeBatchByIds(Arrays.asList(ids)));
- }
}
diff --git a/src/main/java/com/ruoyi/production/dto/ProductStructureDto.java b/src/main/java/com/ruoyi/production/dto/ProductStructureDto.java
index 806b75c..24b783c 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductStructureDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductStructureDto.java
@@ -11,8 +11,8 @@
@ApiModelProperty(value = "宸ヨ壓鍚嶇О")
private String processName;
- @ApiModelProperty(value = "鐢熶骇鐐掓満")
- private String speculativeTradingName;
+ @ApiModelProperty(value = "浜у搧鍚嶇О")
+ private String productName;
@ApiModelProperty(value = "浜у搧id")
private Long productId;
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductStructure.java b/src/main/java/com/ruoyi/production/pojo/ProductStructure.java
index f66536b..8a53b2e 100644
--- a/src/main/java/com/ruoyi/production/pojo/ProductStructure.java
+++ b/src/main/java/com/ruoyi/production/pojo/ProductStructure.java
@@ -40,6 +40,11 @@
private String unit;
/**
+ * 鐖剁骇id
+ */
+ private Long parentId;
+
+ /**
* 鐩樻暟閲�
*/
private BigDecimal diskQuantity;
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java
index 0429b9b..8772531 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java
@@ -28,7 +28,10 @@
@Override
public Boolean addProductStructureDto(ProductStructureDto productStructureDto) {
- this.remove(new QueryWrapper<ProductStructure>().lambda().eq(ProductStructure::getProductModelId, productStructureDto.getProductModelId()));
+ this.remove(new QueryWrapper<ProductStructure>().lambda().eq(ProductStructure::getParentId, productStructureDto.getParentId()));
+ productStructureDto.getProductStructureList().forEach(productStructure -> {
+ productStructure.setParentId(productStructureDto.getParentId());
+ });
return this.saveBatch(productStructureDto.getProductStructureList());
}
}
diff --git a/src/main/resources/mapper/production/ProductStructureMapper.xml b/src/main/resources/mapper/production/ProductStructureMapper.xml
index 255173e..df5a966 100644
--- a/src/main/resources/mapper/production/ProductStructureMapper.xml
+++ b/src/main/resources/mapper/production/ProductStructureMapper.xml
@@ -15,15 +15,16 @@
<select id="listByproductModelId" resultType="com.ruoyi.production.dto.ProductStructureDto">
select ps.*,
- pm.speculative_trading_name ,
- pp.name as process_name,
- pm.product_id,
- pm.model
+ p.product_name,
+ pp.name as process_name,
+ pm.product_id,
+ pm.model
from
- product_structure ps
- left join product_model pm on ps.product_model_id = pm.id
- left join product_process pp on ps.process_id = pp.id
- where pm.id = #{productId}
+ product_structure ps
+ left join product_model pm on ps.product_model_id = pm.id
+ left join product p on pm.product_id = p.id
+ left join product_process pp on ps.process_id = pp.id
+ where ps.parent_id = #{productModelId}
order by ps.id
</select>
</mapper>
--
Gitblit v1.9.3