From 783c5e37fbe6b689f8e14d8e9691dbe81f4e799a Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期六, 26 八月 2023 16:21:57 +0800
Subject: [PATCH] 新增报告预览数据接口
---
/dev/null | 140 -----------------------------------
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java | 9 ++
inspection-server/src/main/resources/mapper/ReportMapper.xml | 34 ++++++++
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java | 6 +
inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/ReportMapper.java | 4 +
user-server/src/main/java/com/yuanchu/limslaboratory/clients/UserLoginUtils.java | 1
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java | 4 +
7 files changed, 57 insertions(+), 141 deletions(-)
diff --git a/framework/src/main/java/com/yuanchu/limslaboratory/controllerServerApi/LaboratoryServerApi.java b/framework/src/main/java/com/yuanchu/limslaboratory/controllerServerApi/LaboratoryServerApi.java
deleted file mode 100644
index 1460e5a..0000000
--- a/framework/src/main/java/com/yuanchu/limslaboratory/controllerServerApi/LaboratoryServerApi.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.yuanchu.limslaboratory.controllerServerApi;
-
-import com.yuanchu.limslaboratory.utils.HttpUtils;
-import com.yuanchu.limslaboratory.utils.JsonUtil;
-import com.yuanchu.limslaboratory.utils.RedisUtil;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-import javax.annotation.Resource;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * @Author 寮犲
- * @Date 2023/8/26
- */
-@Component
-public class LaboratoryServerApi {
-
- private final String ROLE_MANAGER="/role-manager";
-
- @Resource
- HttpUtils httpUtils;
-
- public Map<String, Object> getRoleAndMenuByRole(Long roleId){
- String url=ROLE_MANAGER+ "/getRoleAndMenuByRole";
- HashMap<String, String>map=new HashMap<>();
- map.put("roleId",String.valueOf(roleId));
- String result = httpUtils.get(url, map, String.valueOf(RedisUtil.get("access_token")));
- return JsonUtil.jsonToPojo(result,Map.class);
- }
-
-
-}
diff --git a/framework/src/main/java/com/yuanchu/limslaboratory/utils/HttpUtils.java b/framework/src/main/java/com/yuanchu/limslaboratory/utils/HttpUtils.java
deleted file mode 100644
index 86283cf..0000000
--- a/framework/src/main/java/com/yuanchu/limslaboratory/utils/HttpUtils.java
+++ /dev/null
@@ -1,140 +0,0 @@
-package com.yuanchu.limslaboratory.utils;
-
-import com.google.gson.Gson;
-import okhttp3.*;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Objects;
-import java.util.concurrent.TimeUnit;
-
-/**
- * @Author 寮犲
- * @Date 2023/8/26
- */
-@Component
-public class HttpUtils {
-
- private final String IP="http://localhost:";
-
- @Value("${server.port}")
- private String port;
-
- public static final MediaType JSON = MediaType.get("application/json; charset=utf-8");
-
- public static final Logger logger = LoggerFactory.getLogger(HttpUtils.class);
-
- final OkHttpClient client
- = new OkHttpClient.Builder()
- .connectTimeout(10, TimeUnit.SECONDS)
- .writeTimeout(10, TimeUnit.SECONDS)
- .readTimeout(20, TimeUnit.SECONDS)
- .build();
-
- public String postJson(String url, Map<String, String> map,String token){
- url=IP+port+url;
- if (map == null || StringUtils.isEmpty(url)) {
- throw new RuntimeException("url鎴栬姹傚弬鏁颁笉鑳戒负绌�");
- }
- Gson gson = new Gson();
- String json = gson.toJson(map);
- RequestBody body = RequestBody.create(JSON, json);
- Request request = builderRequest(url, body, token);
- try (Response response = client.newCall(request).execute()) {
- ResponseBody responseBody = response.body();
- if (Objects.isNull(responseBody)) {
- throw new RuntimeException("鍝嶅簲浣撲负绌�");
- }
- return responseBody.string();
- } catch (Exception e) {
- logger.error(e.toString());
- return "";
- }
- }
-
- private Request builderRequest(String url,RequestBody body,String token) {
- if(StringUtils.isNotEmpty(token)){
- return new Request.Builder()
- .url(url)
- .post(body)
- .addHeader("X-Token", token)
- .build();
- }else {
- return new Request.Builder()
- .url(url)
- .post(body)
- .build();
- }
- }
-
- /**
- * 闇�瑕佷娇鐢ㄥ簭鍒楀寲宸ュ叿灏嗗璞″簭鍒楀寲鎴愬瓧绗︿覆锛氬gson
- *
- * @param url
- * @param json
- * @return
- */
- public String postJson(String url, String json,String token) {
- url=IP+port+url;
- if (StringUtils.isEmpty(json) || StringUtils.isEmpty(url)) {
- throw new RuntimeException("url鎴栬姹傚弬鏁颁笉鑳戒负绌�");
- }
- RequestBody body = RequestBody.create(JSON, json);
- Request request = builderRequest(url, body, token);
- try (Response response = client.newCall(request).execute()) {
- ResponseBody responseBody = response.body();
- if (Objects.isNull(responseBody)) {
- throw new RuntimeException("鍝嶅簲浣撲负绌�");
- }
- return responseBody.string();
- } catch (Exception e) {
- logger.error(e.toString());
- return "";
- }
- }
-
- /**
- * @param url
- * @param queryParamMap
- * @return
- */
- public String get(String url, Map<String, String> queryParamMap, String token){
- url=IP+port+url;
- if (StringUtils.isEmpty(url)) {
- throw new RuntimeException("url鎴栬姹傚弬鏁颁笉鑳戒负绌�");
- }
- System.out.println(url);
- HttpUrl.Builder builder = Objects.requireNonNull(HttpUrl.parse(url)).newBuilder();
- if (queryParamMap != null && queryParamMap.size() != 0) {
- queryParamMap.forEach(builder::addQueryParameter);
- }
- url = builder.build().toString();
- Request request=null;
- if(StringUtils.isNotEmpty(token)){
- request = new Request.Builder()
- .url(url)
- .addHeader("X-Token", token)
- .build();
- }else {
- request = new Request.Builder()
- .url(url)
- .build();
- }
- try (Response response = client.newCall(request).execute()) {
- ResponseBody responseBody = response.body();
- if (Objects.isNull(responseBody)) {
- throw new RuntimeException("鍝嶅簲浣撲负绌�");
- }
- return responseBody.string();
- } catch (Exception e) {
- logger.error(e.toString());
- return "";
- }
- }
-}
\ No newline at end of file
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java
index 01c93e6..822c590 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java
@@ -84,5 +84,14 @@
return Result.success(reportService.delreport(id));
}
+ @ApiOperation("鑾峰彇鎶ュ憡鍐呯殑鏁版嵁")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "code", value = "鎶ュ憡鍗曞彿", dataTypeClass = String.class, required = true)
+ })
+ @PostMapping("/getReportContext")
+ public Result getReportContext(String code) {
+ return Result.success(reportService.getReportContext(code));
+ }
+
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/ReportMapper.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/ReportMapper.java
index d22692c..cc8df9c 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/ReportMapper.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/mapper/ReportMapper.java
@@ -6,6 +6,8 @@
import com.yuanchu.limslaboratory.pojo.Report;
import com.yuanchu.limslaboratory.pojo.vo.ReportVo;
+import java.util.Map;
+
/**
* <p>
* Mapper 鎺ュ彛
@@ -23,6 +25,8 @@
*/
IPage<ReportVo> selectAllReport(Page<Object> page, Integer status, String name);
+ Map<String, Object> getReportContext(String code);
+
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java
index 4e6476f..a134f11 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java
@@ -6,6 +6,8 @@
import com.yuanchu.limslaboratory.pojo.Report;
import com.yuanchu.limslaboratory.pojo.vo.ReportVo;
+import java.util.Map;
+
/**
* <p>
* 鏈嶅姟绫�
@@ -45,5 +47,7 @@
* @return
*/
String delreport(Integer id);
+
+ Map<String, Object> getReportContext(String code);
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java
index dec4ee1..c5ce8ed 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java
@@ -10,6 +10,7 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
+import java.util.Map;
/**
* <p>
@@ -69,5 +70,10 @@
return "鍒犻櫎鎴愬姛!";
}
+ @Override
+ public Map<String, Object> getReportContext(String code) {
+ return reportMapper.getReportContext(code);
+ }
+
}
diff --git a/inspection-server/src/main/resources/mapper/ReportMapper.xml b/inspection-server/src/main/resources/mapper/ReportMapper.xml
index 8c53688..7a1cea7 100644
--- a/inspection-server/src/main/resources/mapper/ReportMapper.xml
+++ b/inspection-server/src/main/resources/mapper/ReportMapper.xml
@@ -32,4 +32,38 @@
order by r.id
</select>
+ <resultMap id="report" type="map">
+ <id property="rcode" column="rcode"/>
+ <result property="name" column="name"/>
+ <result property="specifications" column="specifications"/>
+ <result property="supplier" column="supplier"/>
+ <result property="insCode" column="ins_code"/>
+ <result property="type" column="type"/>
+ <collection property="products" resultMap="products" javaType="java.util.List"/>
+ </resultMap>
+
+ <resultMap id="products" type="map">
+ <id property="code" column="id"/>
+ <result property="ipName" column="ip_name"/>
+ <result property="unit" column="unit"/>
+ <result property="required" column="required"/>
+ <result property="testValue" column="test_value"/>
+ <result property="testState" column="test_state"/>
+ </resultMap>
+
+ <select id="getReportContext" resultMap="report">
+ SELECT r.`code` rcode,im.`name`,im.specifications,im.supplier,im.`code` im_code,i.`code` ins_code,i.type,ip.id,ip.`name` ip_name,ip.unit,ip.required,ip.test_value,ip.test_state
+ FROM report r
+ LEFT JOIN inspection i
+ ON r.inspection_id = i.id
+ LEFT JOIN inspection_material im
+ ON im.inspection_id = i.id
+ LEFT JOIN inspection_product ip
+ ON ip.inspection_material_id = im.id
+ WHERE ip.state != 0
+ and im.state != 0
+ and i.state != 0
+ and r.`code` = #{code}
+ </select>
+
</mapper>
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/clients/UserLoginUtils.java b/user-server/src/main/java/com/yuanchu/limslaboratory/clients/UserLoginUtils.java
index 6c6c169..7159e84 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/clients/UserLoginUtils.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/clients/UserLoginUtils.java
@@ -1,6 +1,5 @@
package com.yuanchu.limslaboratory.clients;
-import com.yuanchu.limslaboratory.controllerServerApi.LaboratoryServerApi;
import com.yuanchu.limslaboratory.mapper.RoleManageMapper;
import com.yuanchu.limslaboratory.mapper.UserMapper;
import com.yuanchu.limslaboratory.pojo.Menu;
--
Gitblit v1.9.3