From d86a37f36ec375f8aa3d3eaee18ea1ad323eba0b Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期五, 26 四月 2024 09:13:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
cnas-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java | 59 +++++++++
cnas-server/src/main/java/com/yuanchu/mom/dto/ProductDto.java | 11 +
cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureItemParameter.java | 12 -
cnas-server/src/main/resources/mapper/StructureItemParameterMapper.xml | 14 ++
cnas-server/src/main/java/com/yuanchu/mom/mapper/ProductMapper.java | 18 +++
cnas-server/src/main/java/com/yuanchu/mom/mapper/StructureItemParameterMapper.java | 3
cnas-server/src/main/java/com/yuanchu/mom/service/impl/CapacityScopeServiceImpl.java | 12 +
cnas-server/src/main/resources/mapper/ProductMapper.xml | 23 +++
cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureTestObject.java | 12 -
cnas-server/src/main/java/com/yuanchu/mom/service/CapacityScopeService.java | 3
cnas-server/src/main/java/com/yuanchu/mom/pojo/Product.java | 61 ++++++++++
cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java | 41 ++++++
cnas-server/src/main/java/com/yuanchu/mom/dto/TestItemDto.java | 16 ++
cnas-server/src/main/java/com/yuanchu/mom/dto/PageTestObjectDto.java | 5
cnas-server/src/main/resources/mapper/StructureTestMapper.xml | 7 +
cnas-server/src/main/java/com/yuanchu/mom/service/ProductService.java | 24 ++++
16 files changed, 304 insertions(+), 17 deletions(-)
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java b/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
index 1baa094..af6e52b 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
@@ -3,9 +3,11 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.annotation.ValueAuth;
import com.yuanchu.mom.dto.PageTestObjectDto;
+import com.yuanchu.mom.pojo.Product;
import com.yuanchu.mom.pojo.StructureItemParameter;
import com.yuanchu.mom.pojo.StructureTestObject;
import com.yuanchu.mom.service.CapacityScopeService;
+import com.yuanchu.mom.service.ProductService;
import com.yuanchu.mom.utils.JackSonUtil;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
@@ -28,6 +30,8 @@
public class CapacityScopeController {
private CapacityScopeService capacityScopeService;
+
+ private ProductService productService;
@ApiOperation(value = "鑳藉姏鑼冨洿-鑾峰彇椤圭洰妫�楠屽弬鏁板垪琛�")
@PostMapping("/selectItemParameterList")
@@ -93,5 +97,42 @@
public Result getInsProduction(){
return Result.success(capacityScopeService.getInsProduction());
}
+
+ @ApiOperation(value = "缁存姢妫�楠屽璞$殑浜у搧")
+ @PostMapping("/selectProductListByObjectId")
+ public Result selectProductListByObjectId(@RequestBody Map<String, Object> data) throws Exception {
+ Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
+ Product product = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), Product.class);
+ return Result.success(productService.selectProductListByObjectId(page, product));
+ }
+
+ @ApiOperation(value = "娣诲姞浜у搧")
+ @PostMapping("/addProduct")
+ @ValueAuth
+ public Result addProduct(@RequestBody Product product) {
+ return Result.success(productService.addProduct(product));
+ }
+
+ @ApiOperation(value = "淇敼浜у搧")
+ @PostMapping("/upProduct")
+ @ValueAuth
+ public Result upProduct(@RequestBody Product product) {
+ return Result.success(productService.upProduct(product));
+ }
+
+ @ApiOperation(value = "鍒犻櫎浜у搧")
+ @PostMapping("/delProduct")
+ @ValueAuth
+ public Result delProduct(Integer id) {
+ return Result.success(productService.delProduct(id));
+ }
+
+ @ApiOperation(value = "鑾峰彇妫�楠屽璞℃爲")
+ @GetMapping("/getItemTree")
+ @ValueAuth
+ public Result getItemTree() {
+ return Result.success(capacityScopeService.getItemTree());
+ }
+
}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/dto/PageTestObjectDto.java b/cnas-server/src/main/java/com/yuanchu/mom/dto/PageTestObjectDto.java
index f613fb7..f6fb326 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/dto/PageTestObjectDto.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/dto/PageTestObjectDto.java
@@ -11,6 +11,11 @@
*/
@Data
public class PageTestObjectDto extends StructureTestObject {
+
+ @ValueTableShow(2)
+ @ApiModelProperty(value = "浜у搧")
+ private String product;
+
@ValueTableShow(2)
@ApiModelProperty(value = "鍒涘缓浜�")
private String createUserName;
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/dto/ProductDto.java b/cnas-server/src/main/java/com/yuanchu/mom/dto/ProductDto.java
new file mode 100644
index 0000000..0d0625e
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/dto/ProductDto.java
@@ -0,0 +1,11 @@
+package com.yuanchu.mom.dto;
+
+import lombok.Data;
+
+@Data
+public class ProductDto {
+
+ private Integer id;
+
+ private String name;
+}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/dto/TestItemDto.java b/cnas-server/src/main/java/com/yuanchu/mom/dto/TestItemDto.java
new file mode 100644
index 0000000..3ae87b0
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/dto/TestItemDto.java
@@ -0,0 +1,16 @@
+package com.yuanchu.mom.dto;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class TestItemDto {
+
+ private Integer id;
+
+ private String name;
+
+ private List<ProductDto> children;
+
+}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/mapper/ProductMapper.java b/cnas-server/src/main/java/com/yuanchu/mom/mapper/ProductMapper.java
new file mode 100644
index 0000000..964c610
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/mapper/ProductMapper.java
@@ -0,0 +1,18 @@
+package com.yuanchu.mom.mapper;
+
+import com.yuanchu.mom.pojo.Product;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+* @author z1292
+* @description 閽堝琛ㄣ�恜roduct(浜у搧琛�)銆戠殑鏁版嵁搴撴搷浣淢apper
+* @createDate 2024-04-26 01:11:02
+* @Entity com.yuanchu.mom.pojo.Product
+*/
+public interface ProductMapper extends BaseMapper<Product> {
+
+}
+
+
+
+
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/mapper/StructureItemParameterMapper.java b/cnas-server/src/main/java/com/yuanchu/mom/mapper/StructureItemParameterMapper.java
index 1132eab..03aa210 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/mapper/StructureItemParameterMapper.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/mapper/StructureItemParameterMapper.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.mom.dto.TestItemDto;
import com.yuanchu.mom.pojo.StructureItemParameter;
import java.util.List;
@@ -20,5 +21,7 @@
IPage<StructureItemParameter> selectItemParameterList(Page page, QueryWrapper<StructureItemParameter> ew);
List<Map<String, Object>> getInsProduction();
+
+ List<TestItemDto> getItemTree();
}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/pojo/Product.java b/cnas-server/src/main/java/com/yuanchu/mom/pojo/Product.java
new file mode 100644
index 0000000..1823052
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/pojo/Product.java
@@ -0,0 +1,61 @@
+package com.yuanchu.mom.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yuanchu.mom.annotation.ValueTableShow;
+import com.yuanchu.mom.common.OrderBy;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * 浜у搧琛�
+ * @TableName product
+ */
+@TableName(value ="product")
+@Data
+public class Product extends OrderBy implements Serializable {
+ /**
+ *
+ */
+ @TableId(type = IdType.AUTO)
+ private Integer id;
+
+ /**
+ * 浜у搧鍚嶇О
+ */
+ @ValueTableShow(value = 1,name = "浜у搧鍚嶇О")
+ private String name;
+
+ /**
+ * 浜у搧鍚嶇ОEN
+ */
+ @ValueTableShow(value = 2,name = "浜у搧鍚嶇ОEN")
+ private String nameEn;
+
+ @ApiModelProperty(value = "鍒涘缓浜篿d")
+ @TableField(fill = FieldFill.INSERT)
+ private Integer createUser;
+
+
+ @ApiModelProperty(value = "淇敼浜篿d")
+ @TableField(fill = FieldFill.INSERT_UPDATE)
+ private Integer updateUser;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @TableField(fill = FieldFill.INSERT)
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @TableField(fill = FieldFill.INSERT_UPDATE)
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime updateTime;
+
+ /**
+ * 澶栭敭锛歴tructure_test_object琛╥d
+ */
+ private Integer objectId;
+}
\ No newline at end of file
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 4ce5560..8386d6c 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
@@ -1,16 +1,15 @@
package com.yuanchu.mom.pojo;
-import java.io.Serializable;
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
-import java.util.Date;
-
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yuanchu.mom.annotation.ValueTableShow;
import com.yuanchu.mom.common.OrderBy;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
/**
* 妫�楠岄」鐩弬鏁�(StructureItemParameter)琛ㄥ璞�
@@ -47,13 +46,12 @@
@ValueTableShow(3)
@ApiModelProperty(value = "妫�楠屽璞�")
- private Integer sample;
+ private String sample;
@ValueTableShow(4)
@ApiModelProperty(value = "鍗曚环(鍏�)")
private BigDecimal price;
- @ValueTableShow(4)
@ApiModelProperty(value = "瀹為獙瀹�")
private String laboratory;
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureTestObject.java b/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureTestObject.java
index c85ec7c..6a6859a 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureTestObject.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/pojo/StructureTestObject.java
@@ -1,15 +1,14 @@
package com.yuanchu.mom.pojo;
-import java.io.Serializable;
-import java.time.LocalDateTime;
-import java.util.Date;
-
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yuanchu.mom.annotation.ValueTableShow;
import com.yuanchu.mom.common.OrderBy;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
/**
* 妫�娴嬪璞�(StructureTestObject)琛ㄥ璞�
@@ -26,10 +25,7 @@
@ValueTableShow(1)
@ApiModelProperty(value = "鍦烘墍")
- private Integer laboratory;
-
- @TableField(exist = false)
- private Integer laboratory_id;
+ private Integer laboratoryId;
@ValueTableShow(1)
@ApiModelProperty(value = "妫�楠屽璞�")
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/CapacityScopeService.java b/cnas-server/src/main/java/com/yuanchu/mom/service/CapacityScopeService.java
index 8c364a5..d43ed02 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/service/CapacityScopeService.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/CapacityScopeService.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yuanchu.mom.dto.PageTestObjectDto;
+import com.yuanchu.mom.dto.TestItemDto;
import com.yuanchu.mom.pojo.StructureItemParameter;
import com.yuanchu.mom.pojo.StructureTestObject;
@@ -37,5 +38,7 @@
//璁惧閲岄潰閫夋嫨妫�楠岄」鐩�(鏍戝舰缁撴瀯)
List<Map<String, Object>> getInsProduction();
+
+ List<TestItemDto> getItemTree();
}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/ProductService.java b/cnas-server/src/main/java/com/yuanchu/mom/service/ProductService.java
new file mode 100644
index 0000000..a654735
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/ProductService.java
@@ -0,0 +1,24 @@
+package com.yuanchu.mom.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yuanchu.mom.pojo.Product;
+
+import java.util.Map;
+
+/**
+* @author z1292
+* @description 閽堝琛ㄣ�恜roduct(浜у搧琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice
+* @createDate 2024-04-26 01:11:02
+*/
+public interface ProductService extends IService<Product> {
+
+ Map<String, Object> selectProductListByObjectId(Page page, Product product);
+
+ int addProduct(Product product);
+
+ int upProduct(Product product);
+
+ int delProduct(Integer id);
+
+}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/CapacityScopeServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/CapacityScopeServiceImpl.java
index 7a0f451..f98ca4b 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/CapacityScopeServiceImpl.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/CapacityScopeServiceImpl.java
@@ -1,11 +1,13 @@
package com.yuanchu.mom.service.impl;
+import com.alibaba.fastjson.JSON;
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.yuanchu.mom.common.GetLook;
import com.yuanchu.mom.common.PrintChina;
import com.yuanchu.mom.dto.PageTestObjectDto;
+import com.yuanchu.mom.dto.TestItemDto;
import com.yuanchu.mom.exception.ErrorException;
import com.yuanchu.mom.mapper.StructureItemParameterMapper;
import com.yuanchu.mom.mapper.StructureTestObjectMapper;
@@ -69,7 +71,10 @@
@Override
public int upItemParameter(StructureItemParameter itemParameter) {
int i = structureItemParameterMapper.updateById(itemParameter);
- standardTreeService.reTreeBySampleType(structureTestObjectMapper.selectById(itemParameter.getSample()).getSpecimenName());
+ if(itemParameter.getSample() != null){
+ List<String> list = JSON.parseArray(itemParameter.getSample(), String.class);
+ standardTreeService.reTreeBySampleType(list.get(0));
+ }
return i;
}
@@ -112,5 +117,10 @@
public List<Map<String, Object>> getInsProduction() {
return structureItemParameterMapper.getInsProduction();
}
+
+ @Override
+ public List<TestItemDto> getItemTree() {
+ return structureItemParameterMapper.getItemTree();
+ }
}
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java
new file mode 100644
index 0000000..07fa0b5
--- /dev/null
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java
@@ -0,0 +1,59 @@
+package com.yuanchu.mom.service.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yuanchu.mom.common.GetLook;
+import com.yuanchu.mom.common.PrintChina;
+import com.yuanchu.mom.mapper.ProductMapper;
+import com.yuanchu.mom.pojo.Product;
+import com.yuanchu.mom.service.ProductService;
+import com.yuanchu.mom.utils.QueryWrappers;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+* @author z1292
+* @description 閽堝琛ㄣ�恜roduct(浜у搧琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
+* @createDate 2024-04-26 01:11:02
+*/
+@Service
+@AllArgsConstructor
+public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product>
+ implements ProductService{
+
+ private ProductMapper productMapper;
+
+ private GetLook getLook;
+
+ @Override
+ public Map<String, Object> selectProductListByObjectId(Page page, Product product) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("head", PrintChina.printChina(Product.class));
+ Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectProductListByObjectId");
+ if(map1.get("look")==1) product.setCreateUser(map1.get("userId"));
+ map.put("body", productMapper.selectPage(page, QueryWrappers.queryWrappers(product)));
+ return map;
+ }
+
+ @Override
+ public int addProduct(Product product) {
+ return productMapper.insert(product);
+ }
+
+ @Override
+ public int upProduct(Product product) {
+ return productMapper.updateById(product);
+ }
+
+ @Override
+ public int delProduct(Integer id) {
+ return productMapper.deleteById(id);
+ }
+}
+
+
+
+
diff --git a/cnas-server/src/main/resources/mapper/ProductMapper.xml b/cnas-server/src/main/resources/mapper/ProductMapper.xml
new file mode 100644
index 0000000..01d9a65
--- /dev/null
+++ b/cnas-server/src/main/resources/mapper/ProductMapper.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+ "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yuanchu.mom.mapper.ProductMapper">
+
+ <resultMap id="BaseResultMap" type="com.yuanchu.mom.pojo.Product">
+ <id property="id" column="id" jdbcType="INTEGER"/>
+ <result property="name" column="name" jdbcType="VARCHAR"/>
+ <result property="nameEn" column="name_en" jdbcType="VARCHAR"/>
+ <result property="createUser" column="create_user" jdbcType="INTEGER"/>
+ <result property="updateUser" column="update_user" jdbcType="INTEGER"/>
+ <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+ <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+ <result property="objectId" column="object_id" jdbcType="INTEGER"/>
+ </resultMap>
+
+ <sql id="Base_Column_List">
+ id,name,name_en,
+ create_user,update_user,create_time,
+ update_time,object_id
+ </sql>
+</mapper>
diff --git a/cnas-server/src/main/resources/mapper/StructureItemParameterMapper.xml b/cnas-server/src/main/resources/mapper/StructureItemParameterMapper.xml
index 428ec1f..6062487 100644
--- a/cnas-server/src/main/resources/mapper/StructureItemParameterMapper.xml
+++ b/cnas-server/src/main/resources/mapper/StructureItemParameterMapper.xml
@@ -54,4 +54,18 @@
else inspection_item_subclass end as subclass
from structure_item_parameter
</select>
+ <select id="getItemTree" resultMap="itemDto">
+ select sto.id sId,sto.specimen_name sName,p.id pId,p.name pName from structure_test_object sto
+ left join product p on p.object_id = sto.id
+ </select>
+
+ <resultMap id="itemDto" type="com.yuanchu.mom.dto.TestItemDto">
+ <result column="sId" property="id"/>
+ <result column="sName" property="name"/>
+ <collection property="children" resultMap="productDto"/>
+ </resultMap>
+ <resultMap id="productDto" type="com.yuanchu.mom.dto.ProductDto">
+ <result column="pId" property="id"/>
+ <result column="pName" property="name"/>
+ </resultMap>
</mapper>
diff --git a/cnas-server/src/main/resources/mapper/StructureTestMapper.xml b/cnas-server/src/main/resources/mapper/StructureTestMapper.xml
index 35ccaa1..1dac2c9 100644
--- a/cnas-server/src/main/resources/mapper/StructureTestMapper.xml
+++ b/cnas-server/src/main/resources/mapper/StructureTestMapper.xml
@@ -11,10 +11,15 @@
u1.name create_user_name,
sto.create_time,
u2.name update_user_name,
- sto.update_time
+ sto.update_time,
+ sto.code,
+ sto.laboratory_id,
+ GROUP_CONCAT(p.name) product
from structure_test_object sto
left join user u1 on sto.create_user = u1.id
left join user u2 on sto.update_user = u2.id
+ left join product p on p.object_id = sto.id
+ group by sto.id
) a
<if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
${ew.customSqlSegment}
--
Gitblit v1.9.3