From 51786b723d0a91d11476776d9ce50af7994dc4bd Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期三, 23 九月 2026 15:58:53 +0800
Subject: [PATCH] feat(inspect): 完善检验订单状态管理和样品接收流程

---
 inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderTemplateServiceImpl.java |   48 ++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 42 insertions(+), 6 deletions(-)

diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderTemplateServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderTemplateServiceImpl.java
index b56ffeb..0de8550 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderTemplateServiceImpl.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderTemplateServiceImpl.java
@@ -1,14 +1,21 @@
 package com.ruoyi.inspect.service.impl;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.dto.StandardTreeTemplateBindingVo;
+import com.ruoyi.basic.service.StandardTreeService;
 import com.ruoyi.inspect.mapper.InsOrderTemplateMapper;
 import com.ruoyi.inspect.pojo.InsOrderTemplate;
 import com.ruoyi.inspect.service.InsOrderTemplateService;
+import com.ruoyi.inspect.vo.InsOrderTemplateDetailVo;
 import lombok.AllArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -22,6 +29,8 @@
         implements InsOrderTemplateService {
 
     private InsOrderTemplateMapper insOrderTemplateMapper;
+
+    private StandardTreeService standardTreeService;
 
     @Override
     public int addInsOrderTemplate(InsOrderTemplate insOrderTemplate) {
@@ -42,8 +51,39 @@
     }
 
     @Override
-    public String selectInsOrderTemplateById(Integer id) {
-        return insOrderTemplateMapper.selectById(id).getThing();
+    public InsOrderTemplateDetailVo selectInsOrderTemplateById(Integer id) {
+        InsOrderTemplate template = insOrderTemplateMapper.selectById(id);
+        InsOrderTemplateDetailVo vo = new InsOrderTemplateDetailVo();
+        if (template == null) {
+            vo.setTemplateBindings(new ArrayList<>());
+            return vo;
+        }
+        vo.setThing(template.getThing());
+        // 浼樺厛鍙栨ā鏉垮垪涓婃寔涔呭寲鐨勬爣鍑咺D锛屽巻鍙叉暟鎹洖閫�鍒颁粠琛ㄥ崟蹇収 addObj.standardTreeId 瑙f瀽
+        Integer standardTreeId = template.getStandardTreeId();
+        if (standardTreeId == null) {
+            standardTreeId = parseStandardTreeId(template.getThing());
+        }
+        vo.setStandardTreeId(standardTreeId);
+        if (standardTreeId != null) {
+            List<StandardTreeTemplateBindingVo> bindings = standardTreeService.selectTemplateBindings(standardTreeId);
+            vo.setTemplateBindings(bindings == null ? new ArrayList<>() : bindings);
+        } else {
+            vo.setTemplateBindings(new ArrayList<>());
+        }
+        return vo;
+    }
+
+    private Integer parseStandardTreeId(String thing) {
+        if (StringUtils.isBlank(thing)) {
+            return null;
+        }
+        try {
+            JSONObject addObj = JSON.parseObject(thing).getJSONObject("addObj");
+            return addObj == null ? null : addObj.getInteger("standardTreeId");
+        } catch (Exception ignored) {
+            return null;
+        }
     }
 
     @Override
@@ -51,7 +91,3 @@
         return insOrderTemplateMapper.deleteById(id);
     }
 }
-
-
-
-

--
Gitblit v1.9.3