From 4430c26482f219b1313fdf916d58dc8a8bd1cbfe Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期三, 08 五月 2024 07:26:54 +0800
Subject: [PATCH] 区间项目下单
---
inspect-server/src/main/java/com/yuanchu/mom/mapper/StandardTreeMapper.java | 2
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java | 10 +--
inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardProductListServiceImpl.java | 66 ++++++++++++++-------
inspect-server/src/main/java/com/yuanchu/mom/pojo/StandardProductList.java | 5 -
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 2
inspect-server/src/main/resources/mapper/StandardTreeMapper.xml | 39 ++++++++++++
cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureItemParameter.java | 4
inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java | 2
8 files changed, 93 insertions(+), 37 deletions(-)
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureItemParameter.java b/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureItemParameter.java
index 8c854db..9dd4be0 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureItemParameter.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureItemParameter.java
@@ -48,11 +48,11 @@
@ApiModelProperty(value = "鍗曚环(鍏�)")
private BigDecimal price;
- @ApiModelProperty(value = "瀹為獙瀹�")
+ @ApiModelProperty(value = "鍦烘墍")
private String laboratory;
@ValueTableShow(4)
- @ApiModelProperty(value = "瀛愬疄楠屽")
+ @ApiModelProperty(value = "璇曢獙瀹�")
private String sonLaboratory;
@ValueTableShow(5)
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java
index 9897074..a62d352 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java
@@ -51,7 +51,7 @@
return Result.success(standardMethodListService.selectsStandardMethodByFLSSM(tree));
}
@ValueClassify("鏍囧噯搴�")
- @ApiOperation(value = "淇敼鏍囧噯搴撲腑鐨勮姹傚��")
+ @ApiOperation(value = "淇敼鏍囧噯搴撲腑鐨勫唴瀹�")
@PostMapping("/upStandardProductList")
public Result upStandardProductList(@RequestBody StandardProductList list){
return Result.success(standardProductListService.upStandardProductList(list));
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/mapper/StandardTreeMapper.java b/inspect-server/src/main/java/com/yuanchu/mom/mapper/StandardTreeMapper.java
index c2f74a5..2cf473b 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/mapper/StandardTreeMapper.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/mapper/StandardTreeMapper.java
@@ -31,6 +31,8 @@
List<StandardProductList> selectStandardProductListByTree2(String tree, String sample, String model, String trees);
+ List<StandardProductList> selectStandardProductListByTree3(String tree, String sample, String model, String trees);
+
List<SampleTypeDto> getStandardTree2();
}
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java
index 313d54c..a43c2b0 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsSample.java
@@ -1,15 +1,12 @@
package com.yuanchu.mom.pojo;
import com.baomidou.mybatisplus.annotation.*;
-
-import java.io.Serializable;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.Date;
-
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
/**
* 妫�楠屾牱鍝�
@@ -111,4 +108,5 @@
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;
+
}
\ No newline at end of file
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/StandardProductList.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/StandardProductList.java
index 73c7a87..82b2d4b 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/StandardProductList.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/pojo/StandardProductList.java
@@ -6,7 +6,6 @@
import lombok.Data;
import java.io.Serializable;
-import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
@@ -59,13 +58,13 @@
* 鍗曚环(鍏�)
*/
@ApiModelProperty("鍗曚环")
- private BigDecimal price;
+ private String price;
/**
* 宸ユ椂(H)
*/
@ApiModelProperty("宸ユ椂")
- private Double manHour;
+ private String manHour;
/**
* 宸ユ椂鍒嗙粍
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
index 6d58dd7..bcfe302 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -187,7 +187,7 @@
JSONObject resValue = JSON.parseObject(JSON.toJSONString(jo.get("resValue")));
if (resValue.get("v") != null) {
Object o = JSON.parseObject(JSON.toJSONString(resValue.get("v"))).get("v");
- insProduct.setLastValue(o==null?null:(o + ""));
+ insProduct.setLastValue(o.equals("")?null:(o + ""));
}
}catch (Exception e){}
if (jo.get("equipValue") != null) {
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardProductListServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardProductListServiceImpl.java
index 5496da7..5739ac1 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardProductListServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/StandardProductListServiceImpl.java
@@ -1,5 +1,6 @@
package com.yuanchu.mom.service.impl;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -17,6 +18,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
+import java.util.concurrent.CompletableFuture;
import java.util.stream.Collectors;
/**
@@ -47,29 +49,47 @@
@Override
public List<StandardProductList> selectStandardProductList(InsSample insSample) {
- List<StandardProductList> list = standardProductListMapper.selectList(Wrappers.<StandardProductList>lambdaQuery().eq(StandardProductList::getStandardMethodListId, insSample.getStandardMethodListId()).eq(StandardProductList::getState, 1).eq(StandardProductList::getModel, insSample.getModel()));
+ String[] models = insSample.getModel().split("-");
+ List<StandardProductList> list = standardProductListMapper.selectList(Wrappers.<StandardProductList>lambdaQuery().eq(StandardProductList::getStandardMethodListId, insSample.getStandardMethodListId()).eq(StandardProductList::getState, 1).eq(StandardProductList::getModel, models[0]));
list = list.stream().filter(a -> {
try {
if (a.getSection() != null && !Objects.equals(a.getSection(), "")) {
- if (a.getSection().contains("~")) {
- String[] split = a.getSection().split("~");
- return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(split[0])) > -1 && new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(split[1])) < 1;
- } else if (a.getSection().contains("鈮�") || a.getSection().contains(">=")) {
- String param = a.getSection().replace("鈮�", "").replace(">=", "");
- return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) > -1;
- } else if (a.getSection().contains("鈮�") || a.getSection().contains("<=")) {
- String param = a.getSection().replace("鈮�", "").replace("<=", "");
- return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) < 1;
- } else if (a.getSection().contains(">")) {
- String param = a.getSection().replace(">", "");
- return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) > 0;
- } else if (a.getSection().contains("<")) {
- String param = a.getSection().replace("<", "");
- return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) < 0;
- } else if (a.getSection().contains("=")) {
- String param = a.getSection().replace("=", "");
- return new BigDecimal(insSample.getModel()).compareTo(new BigDecimal(param)) == 0;
+ List<String> sections = JSON.parseArray(a.getSection(), String.class);
+ List<String> asks = JSON.parseArray(a.getAsk(), String.class);
+ List<String> tells = JSON.parseArray(a.getTell(), String.class);
+ List<String> manHours = JSON.parseArray(a.getManHour(), String.class);
+ List<String> prices = JSON.parseArray(a.getPrice(), String.class);
+ boolean isIf = false;
+ for (int i = 0;i<sections.size();i++){
+ if (sections.get(i).contains("&")) {
+ String[] split = sections.get(i).split("&");
+ isIf = new BigDecimal(models[1]).compareTo(new BigDecimal(split[0])) > -1 && new BigDecimal(models[1]).compareTo(new BigDecimal(split[1])) < 1;
+ } else if (sections.get(i).contains("鈮�") || sections.get(i).contains(">=")) {
+ String param = sections.get(i).replace("鈮�", "").replace(">=", "");
+ isIf = new BigDecimal(models[1]).compareTo(new BigDecimal(param)) > -1;
+ } else if (sections.get(i).contains("鈮�") || sections.get(i).contains("<=")) {
+ String param = sections.get(i).replace("鈮�", "").replace("<=", "");
+ isIf = new BigDecimal(models[1]).compareTo(new BigDecimal(param)) < 1;
+ } else if (sections.get(i).contains(">")) {
+ String param = sections.get(i).replace(">", "");
+ isIf = new BigDecimal(models[1]).compareTo(new BigDecimal(param)) > 0;
+ } else if (sections.get(i).contains("<")) {
+ String param = sections.get(i).replace("<", "");
+ isIf = new BigDecimal(models[1]).compareTo(new BigDecimal(param)) < 0;
+ } else if (sections.get(i).contains("=")) {
+ String param = sections.get(i).replace("=", "");
+ isIf = new BigDecimal(models[1]).compareTo(new BigDecimal(param)) == 0;
+ }
+ if(isIf) {
+ a.setSection(sections.get(i));
+ a.setAsk(asks.get(i));
+ a.setTell(tells.get(i));
+ a.setPrice(prices.get(i));
+ a.setManHour(manHours.get(i));
+ return true;
+ }
}
+ return false;
}
} catch (Exception ignored) {
return false;
@@ -87,7 +107,7 @@
List<StandardTree> treeList = standardTreeMapper.selectList(Wrappers.<StandardTree>lambdaQuery().eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]));
for (StandardTree standardTree : treeList) {
String str = tree+" - "+standardTree.getSample()+" - "+standardTree.getModel();
- list.addAll(standardTreeMapper.selectStandardProductListByTree("\"" + trees[2] + "\"", standardTree.getSample(), standardTree.getModel(), str));
+ list.addAll(standardTreeMapper.selectStandardProductListByTree3("\"" + trees[2] + "\"", standardTree.getSample(), standardTree.getModel(), str));
}
} else if (trees.length == 4){
List<StandardTree> treeList = standardTreeMapper.selectList(Wrappers.<StandardTree>lambdaQuery().eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3]));
@@ -129,7 +149,7 @@
}
}
Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId");
-// CompletableFuture.supplyAsync(() -> {
+ CompletableFuture.supplyAsync(() -> {
standardProductListMapper.delete(Wrappers.<StandardProductList>lambdaUpdate().eq(StandardProductList::getStandardMethodListId, id).like(StandardProductList::getTree, tree));
saveBatch(list.stream().map(a->{
a.setFactory(trees[0]);
@@ -140,12 +160,12 @@
a.setStandardMethodListId(id);
return a;
}).collect(Collectors.toList()));
- /*return null;
+ return null;
}).thenAccept(res -> {
}).exceptionally(e -> {
e.printStackTrace();
return null;
- });*/
+ });
return list;
}
}
diff --git a/inspect-server/src/main/resources/mapper/StandardTreeMapper.xml b/inspect-server/src/main/resources/mapper/StandardTreeMapper.xml
index 4c771de..bdb8cfd 100644
--- a/inspect-server/src/main/resources/mapper/StandardTreeMapper.xml
+++ b/inspect-server/src/main/resources/mapper/StandardTreeMapper.xml
@@ -51,13 +51,15 @@
l.laboratory_name laboratory,
sto.specimen_name sample_type,
p.name sample,
- st.model
+ st.model,
+ sto.code
from laboratory l
left join structure_test_object sto on sto.laboratory_id = l.id
left join product p on p.object_id = sto.id
left join standard_tree st on st.laboratory = l.laboratory_name
and st.sample_type = sto.specimen_name
and st.sample = p.name
+ order by l.id,CAST(sto.code AS DECIMAL),st.id
</select>
<select id="selectStandardProductById" resultType="com.yuanchu.mom.pojo.StandardProductList">
@@ -205,4 +207,39 @@
left join standard_tree st on st.sample_type = sto.specimen_name
and st.sample = p.name
</select>
+ <select id="selectStandardProductListByTree3" resultType="com.yuanchu.mom.pojo.StandardProductList">
+ select sample sample2,
+ inspection_item,
+ inspection_item_en,
+ inspection_item_subclass,
+ inspection_item_subclass_en,
+ method,
+ son_laboratory,
+ unit,
+ ask_tell tell,
+ ask,
+ price,
+ man_hour,
+ man_hour_group,
+ man_day,
+ inspection_item_type,
+ inspection_value_type,
+ bsm,
+ template_id,
+ laboratory,
+ checkout_number,
+ section,
+ dic,
+ 0 state,
+ #{model} model,
+ #{sample} sample,
+ #{trees} tree
+ from structure_item_parameter
+ where (
+ sample is NULL
+ OR sample = ''
+ or sample = '[]'
+ OR sample LIKE CONCAT('%', #{tree}, '%')
+ )
+ </select>
</mapper>
--
Gitblit v1.9.3