From a497406167f500741ac6cc1d24e086589972eb49 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期四, 19 三月 2026 18:03:54 +0800
Subject: [PATCH] fix: 工艺路线工序参数表取消绑定基础参数表
---
src/main/java/com/ruoyi/appendix/service/impl/ProcessRouteItemInstanceServiceImpl.java | 24 --------
doc/宁夏-中盛建材.sql | 12 ++++
src/main/java/com/ruoyi/production/pojo/ProcessRouteItemParam.java | 22 ++++++
src/main/resources/mapper/production/ProcessRouteItemParamMapper.xml | 62 +++++++++++++-------
src/main/java/com/ruoyi/production/service/impl/ProcessRouteItemParamServiceImpl.java | 19 +-----
src/main/java/com/ruoyi/appendix/service/impl/AppendixServiceImpl.java | 19 ------
6 files changed, 76 insertions(+), 82 deletions(-)
diff --git "a/doc/\345\256\201\345\244\217-\344\270\255\347\233\233\345\273\272\346\235\220.sql" "b/doc/\345\256\201\345\244\217-\344\270\255\347\233\233\345\273\272\346\235\220.sql"
index 1abe397..3c9a4af 100644
--- "a/doc/\345\256\201\345\244\217-\344\270\255\347\233\233\345\273\272\346\235\220.sql"
+++ "b/doc/\345\256\201\345\244\217-\344\270\255\347\233\233\345\273\272\346\235\220.sql"
@@ -411,4 +411,16 @@
ADD COLUMN `param_format` varchar(255) DEFAULT NULL COMMENT '鍙傛暟鏍煎紡',
ADD COLUMN `value_mode` tinyint DEFAULT '1' COMMENT '鍊兼ā寮�(1鍗曞�� 2鍖洪棿)',
ADD COLUMN `unit` varchar(50) DEFAULT NULL COMMENT '鍗曚綅',
+ ADD COLUMN `remark` varchar(255) DEFAULT NULL COMMENT '澶囨敞';
+
+ALTER TABLE process_route_item_param
+ DROP COLUMN param_id;
+
+ALTER TABLE process_route_item_param
+ ADD COLUMN `param_key` varchar(100) DEFAULT NULL COMMENT '鍙傛暟鍞竴鏍囪瘑',
+ ADD COLUMN `param_name` varchar(100) NOT NULL COMMENT '鍙傛暟鍚嶇О',
+ ADD COLUMN `param_type` tinyint NOT NULL COMMENT '鍙傛暟绫诲瀷(1鏁板瓧 2鏂囨湰 3涓嬫媺閫夋嫨 4鏃堕棿)',
+ ADD COLUMN `param_format` varchar(255) DEFAULT NULL COMMENT '鍙傛暟鏍煎紡',
+ ADD COLUMN `value_mode` tinyint DEFAULT '1' COMMENT '鍊兼ā寮�(1鍗曞�� 2鍖洪棿)',
+ ADD COLUMN `unit` varchar(50) DEFAULT NULL COMMENT '鍗曚綅',
ADD COLUMN `remark` varchar(255) DEFAULT NULL COMMENT '澶囨敞';
\ No newline at end of file
diff --git a/src/main/java/com/ruoyi/appendix/service/impl/AppendixServiceImpl.java b/src/main/java/com/ruoyi/appendix/service/impl/AppendixServiceImpl.java
index e056059..890785d 100644
--- a/src/main/java/com/ruoyi/appendix/service/impl/AppendixServiceImpl.java
+++ b/src/main/java/com/ruoyi/appendix/service/impl/AppendixServiceImpl.java
@@ -5,7 +5,6 @@
import com.ruoyi.appendix.pojo.ProcessRouteItemParamInstance;
import com.ruoyi.appendix.pojo.ProductStructureInstance;
import com.ruoyi.appendix.service.*;
-import com.ruoyi.basic.pojo.BaseParam;
import com.ruoyi.basic.service.BaseParamService;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.StringUtils;
@@ -184,29 +183,11 @@
if (list == null || list.isEmpty()) {
return;
}
- // 鎵归噺鏌ヨ base_param
- List<Long> paramIds = list.stream().map(ProcessRouteItemParam::getParamId)
- .filter(id -> id != null).distinct().collect(Collectors.toList());
- Map<Long, BaseParam> baseParamMap = new HashMap<>();
- if (!paramIds.isEmpty()) {
- baseParamService.listByIds(paramIds).forEach(bp -> baseParamMap.put(bp.getId(), bp));
- }
List<ProcessRouteItemParamInstance> instances = list.stream().map(item -> {
ProcessRouteItemParamInstance instance = new ProcessRouteItemParamInstance();
BeanUtils.copyProperties(item, instance, "id");
instance.setOrderId(orderId);
instance.setRouteItemId(newRouteItemInstanceId);
- // 浠� base_param 濉厖鍩虹瀛楁
- BaseParam bp = baseParamMap.get(item.getParamId());
- if (bp != null) {
- instance.setParamKey(bp.getParamKey());
- instance.setParamName(bp.getParamName());
- instance.setParamType(bp.getParamType());
- instance.setParamFormat(bp.getParamFormat());
- instance.setValueMode(bp.getValueMode());
- instance.setUnit(bp.getUnit());
- instance.setRemark(bp.getRemark());
- }
return instance;
}).collect(Collectors.toList());
processRouteItemParamInstanceService.saveBatch(instances);
diff --git a/src/main/java/com/ruoyi/appendix/service/impl/ProcessRouteItemInstanceServiceImpl.java b/src/main/java/com/ruoyi/appendix/service/impl/ProcessRouteItemInstanceServiceImpl.java
index ef7888b..79e30e5 100644
--- a/src/main/java/com/ruoyi/appendix/service/impl/ProcessRouteItemInstanceServiceImpl.java
+++ b/src/main/java/com/ruoyi/appendix/service/impl/ProcessRouteItemInstanceServiceImpl.java
@@ -8,8 +8,6 @@
import com.ruoyi.appendix.pojo.ProcessRouteItemParamInstance;
import com.ruoyi.appendix.service.ProcessRouteItemInstanceService;
import com.ruoyi.appendix.service.ProcessRouteItemParamInstanceService;
-import com.ruoyi.basic.pojo.BaseParam;
-import com.ruoyi.basic.service.BaseParamService;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.production.pojo.ProcessRouteItemParam;
@@ -22,9 +20,7 @@
import javax.annotation.Resource;
import java.time.LocalDateTime;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -48,9 +44,6 @@
@Resource
private ProcessRouteItemParamService processRouteItemParamService;
-
- @Resource
- private BaseParamService baseParamService;
@Override
public List<ProcessRouteItemInstanceDto> getProcessItem(Long orderId) {
@@ -116,27 +109,10 @@
List<ProcessRouteItemParam> routeItemParams = processRouteItemParamService.list(
new LambdaQueryWrapper<ProcessRouteItemParam>().eq(ProcessRouteItemParam::getRouteItemId, old.getId()));
if (!routeItemParams.isEmpty()) {
- // 鎵归噺鏌ヨ base_param
- List<Long> paramIds = routeItemParams.stream().map(ProcessRouteItemParam::getParamId)
- .filter(id -> id != null).distinct().collect(Collectors.toList());
- Map<Long, BaseParam> baseParamMap = new HashMap<>();
- if (!paramIds.isEmpty()) {
- baseParamService.listByIds(paramIds).forEach(bp -> baseParamMap.put(bp.getId(), bp));
- }
List<ProcessRouteItemParamInstance> newInstances = routeItemParams.stream().map(p -> {
ProcessRouteItemParamInstance instance = new ProcessRouteItemParamInstance();
BeanUtils.copyProperties(p, instance, "id");
instance.setOrderId(old.getOrderId());
- BaseParam bp = baseParamMap.get(p.getParamId());
- if (bp != null) {
- instance.setParamKey(bp.getParamKey());
- instance.setParamName(bp.getParamName());
- instance.setParamType(bp.getParamType());
- instance.setParamFormat(bp.getParamFormat());
- instance.setValueMode(bp.getValueMode());
- instance.setUnit(bp.getUnit());
- instance.setRemark(bp.getRemark());
- }
return instance;
}).collect(Collectors.toList());
processRouteItemParamInstanceService.saveBatch(newInstances);
diff --git a/src/main/java/com/ruoyi/production/pojo/ProcessRouteItemParam.java b/src/main/java/com/ruoyi/production/pojo/ProcessRouteItemParam.java
index 85a8c3d..6ec4a35 100644
--- a/src/main/java/com/ruoyi/production/pojo/ProcessRouteItemParam.java
+++ b/src/main/java/com/ruoyi/production/pojo/ProcessRouteItemParam.java
@@ -34,8 +34,26 @@
@ApiModelProperty("鍏宠仈宸ヨ壓璺嚎鏄庣粏ID (process_route_item.id)")
private Long routeItemId;
- @ApiModelProperty("鍏宠仈鍩虹鍙傛暟瀹氫箟ID (base_param.id)")
- private Long paramId;
+ @ApiModelProperty("鍙傛暟鍞竴鏍囪瘑")
+ private String paramKey;
+
+ @ApiModelProperty("鍙傛暟鍚嶇О")
+ private String paramName;
+
+ @ApiModelProperty("鍙傛暟绫诲瀷(1鏁板瓧 2鏂囨湰 3涓嬫媺閫夋嫨 4鏃堕棿)")
+ private Integer paramType;
+
+ @ApiModelProperty("鍙傛暟鏍煎紡")
+ private String paramFormat;
+
+ @ApiModelProperty("鍊兼ā寮�(1鍗曞�� 2鍖洪棿)")
+ private Integer valueMode;
+
+ @ApiModelProperty("鍗曚綅")
+ private String unit;
+
+ @ApiModelProperty("澶囨敞")
+ private String remark;
@ApiModelProperty("鏉ユ簮宸ュ簭鍙傛暟ID")
private Long processParamId;
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProcessRouteItemParamServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProcessRouteItemParamServiceImpl.java
index 0f63221..1f87c34 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProcessRouteItemParamServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProcessRouteItemParamServiceImpl.java
@@ -4,8 +4,6 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.basic.pojo.BaseParam;
-import com.ruoyi.basic.service.BaseParamService;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.production.dto.ProcessRouteItemParamDto;
@@ -13,7 +11,6 @@
import com.ruoyi.production.pojo.ProcessRouteItemParam;
import com.ruoyi.production.service.ProcessRouteItemParamService;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -31,9 +28,6 @@
@Slf4j
@Service
public class ProcessRouteItemParamServiceImpl extends ServiceImpl<ProcessRouteItemParamMapper, ProcessRouteItemParam> implements ProcessRouteItemParamService {
-
- @Autowired
- private BaseParamService baseParamService;
@Override
public IPage<ProcessRouteItemParamDto> pageList(Page<ProcessRouteItemParam> page, ProcessRouteItemParam param) {
@@ -57,22 +51,17 @@
if (param == null) {
throw new ServiceException("鏂板澶辫触,鍙傛暟涓嶈兘涓虹┖");
}
- if (param.getRouteItemId() == null || param.getParamId() == null) {
- throw new ServiceException("鍏宠仈宸ュ簭ID鍜屽弬鏁伴」ID涓嶈兘涓虹┖");
+ if (param.getRouteItemId() == null || param.getParamKey() == null) {
+ throw new ServiceException("鍏宠仈宸ュ簭ID鍜屽弬鏁版爣璇嗕笉鑳戒负绌�");
}
Long tenantId = SecurityUtils.getLoginUser().getTenantId();
Long count = baseMapper.selectCount(Wrappers.<ProcessRouteItemParam>lambdaQuery()
.eq(ProcessRouteItemParam::getRouteItemId, param.getRouteItemId())
- .eq(ProcessRouteItemParam::getParamId, param.getParamId())
+ .eq(ProcessRouteItemParam::getParamKey, param.getParamKey())
.eq(ProcessRouteItemParam::getTenantId, tenantId));
if (count > 0) {
- throw new ServiceException("璇ュ伐搴忓凡瀛樺湪姝ゅ弬鏁伴」锛岃鍕块噸澶嶆坊鍔�");
- }
-
- BaseParam baseParam = baseParamService.getById(param.getParamId());
- if (baseParam == null) {
- throw new ServiceException("鏂板澶辫触,璇ュ熀纭�鍙傛暟涓嶅瓨鍦�");
+ throw new ServiceException("璇ュ伐搴忓凡瀛樺湪鍙傛暟椤癸紝璇峰嬁閲嶅娣诲姞");
}
Integer maxSort = baseMapper.selectMaxSortByRouteItemId(param.getRouteItemId());
diff --git a/src/main/resources/mapper/production/ProcessRouteItemParamMapper.xml b/src/main/resources/mapper/production/ProcessRouteItemParamMapper.xml
index 1b662f2..90395b5 100644
--- a/src/main/resources/mapper/production/ProcessRouteItemParamMapper.xml
+++ b/src/main/resources/mapper/production/ProcessRouteItemParamMapper.xml
@@ -7,7 +7,6 @@
<resultMap id="ProcessRouteItemParamResultMap" type="com.ruoyi.production.pojo.ProcessRouteItemParam">
<id property="id" column="id"/>
<result property="routeItemId" column="route_item_id"/>
- <result property="paramId" column="param_id"/>
<result property="processParamId" column="process_param_id"/>
<result property="standardValue" column="standard_value"/>
<result property="minValue" column="min_value"/>
@@ -17,37 +16,56 @@
<result property="tenantId" column="tenant_id"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
+ <result property="paramKey" column="param_key"/>
+ <result property="paramName" column="param_name"/>
+ <result property="paramType" column="param_type"/>
+ <result property="paramFormat" column="param_format"/>
+ <result property="valueMode" column="value_mode"/>
+ <result property="unit" column="unit"/>
+ <result property="remark" column="remark"/>
</resultMap>
<insert id="insertFromProcessTemplate">
- INSERT INTO process_route_item_param (route_item_id, param_id, process_param_id,
- standard_value, min_value, max_value,
- is_required, sort, tenant_id, create_time)
+ INSERT INTO process_route_item_param (route_item_id,
+ process_param_id,
+ standard_value,
+ min_value,
+ max_value,
+ is_required,
+ sort,
+ tenant_id,
+ create_time,
+ param_key,
+ param_name,
+ param_type,
+ param_format,
+ value_mode,
+ unit,
+ remark)
SELECT #{routeItemId},
- param_id,
- id,
- standard_value,
- min_value,
- max_value,
- is_required,
- sort,
+ ppp.id,
+ ppp.standard_value,
+ ppp.min_value,
+ ppp.max_value,
+ ppp.is_required,
+ ppp.sort,
#{tenantId},
- NOW()
- FROM product_process_param
- WHERE process_id = #{processId}
+ NOW(),
+ ppp.param_key,
+ ppp.param_name,
+ ppp.param_type,
+ ppp.param_format,
+ ppp.value_mode,
+ ppp.unit,
+ ppp.remark
+ FROM product_process_param ppp
+ WHERE ppp.process_id = #{processId}
</insert>
<select id="selectParamPage" resultType="com.ruoyi.production.dto.ProcessRouteItemParamDto">
select
- prip.*,
- bp.param_name,
- bp.param_key,
- bp.unit,
- bp.param_type,
- bp.param_format,
- bp.value_mode
+ prip.*
from process_route_item_param prip
- left join base_param bp on prip.param_id = bp.id
<where>
<if test="p.routeItemId != null">
and prip.route_item_id = #{p.routeItemId}
--
Gitblit v1.9.3