From f7559a0880080f0aaaac59867606daad656b280a Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期三, 14 一月 2026 14:04:10 +0800
Subject: [PATCH] feat(product): 添加产品规格ID字段并实现库存检查功能
---
src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java | 32 ++++++++++++++++++++++++++++++--
1 files changed, 30 insertions(+), 2 deletions(-)
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 a888a63..b54617f 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductStructureServiceImpl.java
@@ -1,15 +1,23 @@
package com.ruoyi.production.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.dto.ProductModelDto;
+import com.ruoyi.basic.mapper.ProductMapper;
+import com.ruoyi.basic.mapper.ProductModelMapper;
+import com.ruoyi.basic.pojo.Product;
+import com.ruoyi.basic.pojo.ProductModel;
import com.ruoyi.production.dto.ProductStructureDto;
import com.ruoyi.production.mapper.ProductStructureMapper;
import com.ruoyi.production.pojo.ProductStructure;
import com.ruoyi.production.service.ProductStructureService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.HashMap;
import java.util.List;
@Service
@@ -19,9 +27,29 @@
@Autowired
private ProductStructureMapper productStructureMapper;
+ @Autowired
+ private ProductModelMapper productModelMapper;
+ @Autowired
+ private ProductMapper productMapper;
@Override
- public List<ProductStructureDto> listByproductModelId(Long productModelId) {
- return productStructureMapper.listByproductModelId( productModelId);
+ public ProductModelDto listByproductModelId(Long productModelId) {
+ ProductModel productModel = productModelMapper.selectById(productModelId);
+ Product product = productMapper.selectById(productModel.getProductId());
+ ProductModelDto productModelDto = new ProductModelDto();
+ BeanUtils.copyProperties(productModel,productModelDto);
+ productModelDto.setProductName(product.getProductName());
+ List<ProductStructureDto> productStructureDtos = productStructureMapper.listByproductModelId(productModelId);
+ productModelDto.setProductStructureList(productStructureDtos);
+ return productModelDto;
+ }
+
+ @Override
+ public Boolean addProductStructureDto(ProductStructureDto productStructureDto) {
+ this.remove(new QueryWrapper<ProductStructure>().lambda().eq(ProductStructure::getParentId, productStructureDto.getParentId()));
+ productStructureDto.getProductStructureList().forEach(productStructure -> {
+ productStructure.setParentId(productStructureDto.getParentId());
+ });
+ return this.saveBatch(productStructureDto.getProductStructureList());
}
}
--
Gitblit v1.9.3