From fbd4ecb70baf2e671876ca809a81f6e6fe7342ee Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期日, 20 九月 2026 19:52:50 +0800
Subject: [PATCH] feat(inspect): 新增检测标准方法报告文本功能并优化报告生成 - 委托编号生成逻辑调整为下单时生成并校验唯一性,避免审核时重复 - 新增标准模板价格字段及对应的数据模型和数据库映射 - 订单费用详情查询逻辑重构为基于模板价格计算方式 - 新增标准模板与设备绑定关系的数据结构和管理功能 - 委托编号唯一性校验逻辑增强

---
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTemplateServiceImpl.java |   53 +++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 37 insertions(+), 16 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTemplateServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTemplateServiceImpl.java
index f1f3ba4..fcf020a 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTemplateServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTemplateServiceImpl.java
@@ -6,11 +6,14 @@
 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.common.numgen.NumberGenerator;
-import com.ruoyi.common.utils.QueryWrappers;
 import com.ruoyi.basic.mapper.StandardTemplateMapper;
+import com.ruoyi.basic.mapper.StandardTreeTemplateBindingMapper;
 import com.ruoyi.basic.pojo.StandardTemplate;
+import com.ruoyi.basic.pojo.StandardTreeTemplateBinding;
 import com.ruoyi.basic.service.StandardTemplateService;
+import com.ruoyi.common.numgen.NumberGenerator;
+import com.ruoyi.common.utils.GZipUtil;
+import com.ruoyi.common.utils.QueryWrappers;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 
@@ -29,6 +32,8 @@
 
     private StandardTemplateMapper standardTemplateMapper;
 
+    private StandardTreeTemplateBindingMapper standardTreeTemplateBindingMapper;
+
 
     private final NumberGenerator<StandardTemplate> numberGenerator;
 
@@ -45,12 +50,25 @@
                     StandardTemplate::getNumber);
             standardTemplate.setNumber(giveCode);
         }
+        if (standardTemplate.getPrice() == null) {
+            standardTemplate.setPrice(java.math.BigDecimal.ZERO);
+        }
+        if (StringUtils.isNotBlank(standardTemplate.getThing())) {
+            standardTemplate.setThing(GZipUtil.compress(standardTemplate.getThing()));
+        } else {
+            standardTemplate.setThing(null);
+        }
         return standardTemplateMapper.insert(standardTemplate);
     }
 
     @Override
     public int upStandardTemplate(StandardTemplate standardTemplate) {
-        if(standardTemplate.getThing().equals("")){
+        if (standardTemplate.getPrice() == null) {
+            standardTemplate.setPrice(java.math.BigDecimal.ZERO);
+        }
+        if (StringUtils.isNotBlank(standardTemplate.getThing())) {
+            standardTemplate.setThing(GZipUtil.compress(standardTemplate.getThing()));
+        } else {
             standardTemplate.setThing(null);
         }
         return standardTemplateMapper.updateById(standardTemplate);
@@ -58,12 +76,23 @@
 
     @Override
     public int delStandardTemplate(Integer id) {
+        // 鍒ゆ柇鏄惁琚粦瀹�
+        int count = standardTemplateMapper.countBindTemplateItemParameter(id);
+        if (count > 0) {
+            throw new RuntimeException("璇ユā鏉垮凡缁戝畾妫�楠岄」鐩弬鏁帮紝绂佹鍒犻櫎");
+        }
+        Long bindingCount = standardTreeTemplateBindingMapper.selectCount(Wrappers.<StandardTreeTemplateBinding>lambdaQuery()
+                .eq(StandardTreeTemplateBinding::getTemplateId, id));
+        if (bindingCount > 0) {
+            throw new RuntimeException("璇ユā鏉垮凡缁戝畾鏍囧噯搴擄紝绂佹鍒犻櫎");
+        }
         return standardTemplateMapper.deleteById(id);
     }
 
     @Override
     public List<StandardTemplate> getStandardTemplate() {
-        return standardTemplateMapper.selectList(Wrappers.<StandardTemplate>lambdaQuery().select(StandardTemplate::getId,StandardTemplate::getName));
+        return standardTemplateMapper.selectList(Wrappers.<StandardTemplate>lambdaQuery()
+                .select(StandardTemplate::getId, StandardTemplate::getName, StandardTemplate::getNumber, StandardTemplate::getRemark));
     }
 
     @Override
@@ -74,19 +103,8 @@
         if(standardTemplate==null){
             return null;
         }else{
-            return standardTemplate.getThing();
+            return GZipUtil.uncompress(standardTemplate.getThing());
         }
-        // 鏌ヨ鍘嬬缉鍚庣殑鏁版嵁
-//        String thing = standardTemplateMapper.selectCompressThing(templateId);
-//        if (StringUtils.isNotBlank(thing)) {
-//            try {
-//                return DecompressMySQLData.decompress(java.util.Base64.getDecoder().decode(thing));
-//            } catch (Exception e) {
-//                throw new RuntimeException(e);
-//            }
-//        } else {
-//            return null;
-//        }
     }
 
     @Override
@@ -116,6 +134,9 @@
         // 鏌ヨ鏃фā鏉�
         StandardTemplate standardTemplate = baseMapper.selectById(newTemplate.getId());
         newTemplate.setThing(standardTemplate.getThing());
+        if (newTemplate.getPrice() == null) {
+            newTemplate.setPrice(java.math.BigDecimal.ZERO);
+        }
 
         if (StringUtils.isBlank(newTemplate.getNumber())) {
             String giveCode = numberGenerator.generateNumberWithPrefix(5,

--
Gitblit v1.9.3