From 78c62a33671bdcfb0f2019c520f807a4c56fc741 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期一, 07 八月 2023 09:02:12 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/MaterialMapper.java | 5 + inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml | 2 standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java | 42 ------------- inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkBasicInformationController.java | 2 standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java | 2 inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java | 2 standard-server/src/main/resources/mapper/MaterialMapper.xml | 57 +++++++++++++++++++ laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/ClassifyController.java | 14 +--- laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Classify.java | 3 + laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ClassifyServiceImpl.java | 15 ---- 10 files changed, 74 insertions(+), 70 deletions(-) diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkBasicInformationController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkBasicInformationController.java index 6a21f00..22de441 100644 --- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkBasicInformationController.java +++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/LinkBasicInformationController.java @@ -48,7 +48,7 @@ return Result.success(link1); } - @ApiOperation(value = "鍒嗛〉琛ㄦ牸", tags = "123") + @ApiOperation(value = "鍒嗛〉琛ㄦ牸") @ApiImplicitParams(value = { @ApiImplicitParam(name = "pageNo", value = "璧峰椤�", dataTypeClass = Integer.class, required = true), @ApiImplicitParam(name = "pageSize", value = "姣忎竴椤垫暟閲�", dataTypeClass = Integer.class, required = true), diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java index 010634d..a5d2ce3 100644 --- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java +++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java @@ -29,7 +29,7 @@ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃 * @since 2023-07-28 */ -@Api(tags = "鎶ユ绠$悊-->鍘熸潗鏂欐姤妫�") +@Api(tags = "鎶ユ绠$悊-->鍘熸潗鏂欐姤妫�-->椤甸潰鐗堟湰琛�") @RestController @RequestMapping("/raw-material") public class RawMaterialController { diff --git a/inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml b/inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml index 0bc06a7..d659b1d 100644 --- a/inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml +++ b/inspection-server/src/main/resources/mapper/LinkBasicInformationMapper.xml @@ -4,7 +4,7 @@ <select id="getLinkBasicPage" resultType="map"> SELECT l.`id`, l.`entrust_coding`, l.`entrusted`, d.`samples_number`, d.`sample_name`, d.`specifications_models`, - DATE_FORMAT(l.`inspection_time`,'%Y-%m-%d') inspectionTime, l.`completion_deadline`, l.`contacts`, d.`date_survey`, d.`inspection_status` + DATE_FORMAT(l.`inspection_time`,'%Y-%m-%d') inspectionTime, DATE_FORMAT(l.`completion_deadline`,'%Y-%m-%d') inspectionTime, l.`contacts`, d.`date_survey`, d.`inspection_status` FROM link_basic_information l, link_detection d WHERE l.`id` = d.`link_basic_id` AND l.`state` = 1 diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/ClassifyController.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/ClassifyController.java index 6e18c6c..614814b 100644 --- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/ClassifyController.java +++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/ClassifyController.java @@ -31,22 +31,14 @@ @Autowired private ClassifyService classifyService; - @ApiOperation("娣诲姞鍒嗙被锛氬鏋滈�夋嫨浜唍ame鍗虫坊鍔犵殑涓哄瓙鑺傜偣鏁版嵁锛涘鏋滄病鏈夐�夋嫨鍗虫坊鍔犵殑涓虹埗鑺傜偣鏁版嵁锛涘悗鍙板鐞�") + @ApiOperation("娣诲姞鍒嗙被") @PostMapping("/add") public Result<?> addClassifyInformation(@RequestBody Classify classify) { - if (ObjectUtils.isEmpty(classify.getSonName())){ - return Result.fail("璇峰~鍐欏垎绫诲悕绉帮紒"); - } Integer isAddClassifySuccess = classifyService.addClassifyInformation(classify); if (isAddClassifySuccess == 1) { - if (ObjectUtils.isEmpty(classify.getSonName())){ - return Result.success("娣诲姞鐖剁骇銆�"+ classify.getFatherName() +"銆戝垎绫绘垚鍔燂紒"); - } return Result.success("娣诲姞鍒嗙被銆�"+ classify.getSonName() +"銆戞垚鍔燂紒"); - } else if (isAddClassifySuccess == 2){ - return Result.fail("鎶辨瓑閲嶅娣诲姞鐖剁骇銆�"+ classify.getFatherName() +"銆戝垎绫伙紝娣诲姞澶辫触锛�"); - } else if (isAddClassifySuccess == 3) { - return Result.fail("鎶辨瓑閲嶅娣诲姞瀛愮骇銆�"+ classify.getSonName() +"銆戯紝娣诲姞澶辫触锛�"); + } else if (isAddClassifySuccess == 2) { + return Result.fail("鎶辨瓑閲嶅娣诲姞鍒嗙被鍚嶇О銆�"+ classify.getSonName() +"銆戯紝娣诲姞澶辫触锛�"); } return Result.fail("娣诲姞鍒嗙被銆�"+ classify.getSonName() +"銆戝け璐ワ紒"); } diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Classify.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Classify.java index 8bb4eb1..019c5e4 100644 --- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Classify.java +++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Classify.java @@ -11,6 +11,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; +import javax.validation.constraints.NotBlank; + /** * <p> * @@ -33,6 +35,7 @@ @ApiModelProperty(value = "鍒嗙被鐖跺悕绉�", example = "娓╁害娴嬮噺浠〃") private String fatherName; + @NotBlank(message = "鍚嶇О涓嶅厑璁镐负绌猴紒") @ApiModelProperty(value = "鍒嗙被瀛愬悕绉�", example = "浣撴俯璁�",required = true) private String sonName; diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ClassifyServiceImpl.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ClassifyServiceImpl.java index f7882e9..66d8c86 100644 --- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ClassifyServiceImpl.java +++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ClassifyServiceImpl.java @@ -29,19 +29,6 @@ @Override public Integer addClassifyInformation(Classify classify) { - if (ObjectUtils.isEmpty(classify.getFatherName())){ - classify.setFatherName(classify.getSonName()); - classify.setSonName(null); - LambdaQueryWrapper<Classify> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Classify::getFatherName, classify.getFatherName()); - wrapper.isNull(Classify::getSonName); - wrapper.eq(Classify::getState, 1); - Classify classify1 = classifyMapper.selectOne(wrapper); - if (ObjectUtils.isEmpty(classify1)){ - return classifyMapper.insert(classify); - } - return 2; - } LambdaQueryWrapper<Classify> wrapper = new LambdaQueryWrapper<>(); wrapper.eq(Classify::getFatherName, classify.getFatherName()); wrapper.eq(Classify::getSonName, classify.getSonName()); @@ -50,7 +37,7 @@ if (ObjectUtils.isEmpty(classify1)){ return classifyMapper.insert(classify); } else { - return 3; + return 2; } } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java index 853f518..8a89867 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java @@ -53,7 +53,7 @@ return Result.fail("鍒犻櫎澶辫触锛�"); } - @ApiOperation("渚ц竟鏍忓洓绾у睍寮�") + @ApiOperation(value = "鏍囧噯搴�-->鐗╂枡-->渚ц竟鏍忓洓绾у睍寮�", tags = "猸愨瓙猸愬悗绔皟鏁�") @ApiImplicitParams(value = { @ApiImplicitParam(value = "鍨嬪彿/鍨嬪彿鍚嶇О", name = "specificationName", dataTypeClass = String.class) }) diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/MaterialMapper.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/MaterialMapper.java index ea1cdce..0408808 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/MaterialMapper.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/MaterialMapper.java @@ -19,4 +19,9 @@ //鏌ヨ鐗╂枡淇℃伅 List<Map> selectMaterialLimit(int num1,int num2, int type); + //鏍规嵁鐗╂枡id鏌ヨ鐗╂枡淇℃伅 + Map selectMaterialById(String materialId); + + // 鍥涚骇鏍� + List<Map<String, Object>> FourTree(String specificationsName); } diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java index 4ac533d..4b75748 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java @@ -98,46 +98,6 @@ @Override public List<Map<String, Object>> getFourLevelInformation(String specificationName) { - LambdaQueryWrapper<Material> typeWrapper = new LambdaQueryWrapper<>(); - typeWrapper.groupBy(Material::getType); - typeWrapper.select(Material::getType); - List<Map<String, Object>> typeMaps = materialMapper.selectMaps(typeWrapper); - for (Map<String, Object> typeMap : typeMaps){ - LambdaQueryWrapper<Material> materialWrapper = new LambdaQueryWrapper<>(); - materialWrapper.eq(Material::getType, typeMap.get("type")); - materialWrapper.select(Material::getId, Material::getName); - List<Map<String, Object>> materialMaps = materialMapper.selectMaps(materialWrapper); - if (!ObjectUtils.isEmpty(materialMaps)){ - for (Map<String, Object> materialMap : materialMaps){ - LambdaQueryWrapper<Standard> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Standard::getMaterialId, materialMap.get("id")); - wrapper.select(Standard::getId, Standard::getName); - List<Map<String, Object>> standardMaps = standardService.listMaps(wrapper); - if (!ObjectUtils.isEmpty(standardMaps)){ - for (Map<String, Object> standardMap : standardMaps){ - LambdaQueryWrapper<Specifications> specificationWrapper = new LambdaQueryWrapper<>(); - specificationWrapper.eq(Specifications::getStandardId, standardMap.get("id")); - if (!ObjectUtils.isEmpty(specificationName)){ - specificationWrapper.eq(Specifications::getName, specificationName); - } - specificationWrapper.select(Specifications::getId, Specifications::getName); - List<Map<String, Object>> specificationsMaps = specificationsService.listMaps(specificationWrapper); - if (!ObjectUtils.isEmpty(specificationsMaps)){ - standardMap.put("children", specificationsMaps); - } else { - standardMap.put("children", null); - } - } - materialMap.put("children", standardMaps); - } else { - materialMap.put("children", null); - } - } - typeMap.put("children", materialMaps); - } else { - typeMap.put("children", null); - } - } - return typeMaps; + return materialMapper.FourTree(specificationName); } } diff --git a/standard-server/src/main/resources/mapper/MaterialMapper.xml b/standard-server/src/main/resources/mapper/MaterialMapper.xml index 9e71e62..661b8fd 100644 --- a/standard-server/src/main/resources/mapper/MaterialMapper.xml +++ b/standard-server/src/main/resources/mapper/MaterialMapper.xml @@ -10,4 +10,61 @@ order by create_time desc limit #{num1},#{num2} </select> + <select id="selectMaterialById" resultType="Map"> + select m.id, + m.num, + m.supplier, + m.name, + m.location, + m.batch, + m.reel_number reelNumber, + concat(s.name, '/', sn.name) specificationSerialNum, + s.voltage_level voltageLevel, + s.cross_section crossSection, + s.number_of_cores numberOfCores, + s.instruct + from lims_laboratory.material m, + lims_laboratory.specifications s, + lims_laboratory.serial_number sn + where m.specifications_id = s.id + and s.serial_id = sn.id + and m.id=#{materialId} + </select> + + <resultMap id="OneLevelTreeMap" type="Map"> + <id property="id" column="materialId"/> + <result property="name" column="materialName"/> + <collection property="children" resultMap="TwoLevelTreeMap" javaType="List"/> + </resultMap> + + <resultMap id="TwoLevelTreeMap" type="Map"> + <id property="id" column="standardId"/> + <result property="name" column="standardName"/> + <collection property="children" resultMap="ThreeLevelTreeMap" javaType="List"/> + </resultMap> + + <resultMap id="ThreeLevelTreeMap" type="Map"> + <id property="id" column="specificationsId"/> + <result property="name" column="specificationsName"/> + <collection property="children" resultMap="FourLevelTreeMap" javaType="List"/> + </resultMap> + + <resultMap id="FourLevelTreeMap" type="Map"> + <id property="id" column="productId"/> + <result property="name" column="productName"/> + </resultMap> + + <select id="FourTree" resultMap="OneLevelTreeMap"> + SELECT m.`id` materialId, m.`name` materialName, s.`id` standardId, s.`name` standardName, + f.`id` specificationsId, f.`name` specificationsName, p.`id` productId, p.`name` productName + FROM material m + LEFT JOIN (SELECT s.`id`, s.`name`, s.`material_id` FROM standard s WHERE s.`state` = 1) s ON m.id = s.`material_id` + LEFT JOIN (SELECT f.`id`, f.`name`, f.`standard_id` FROM specifications f WHERE f.`state` = 1 + <if test="specificationsName != null and specificationsName != ''"> + AND f.`name` = #{specificationsName} + </if> + ) f ON s.`id` = f.`standard_id` + LEFT JOIN (SELECT p.`id`, p.`name`, p.`specifications_id` FROM product p WHERE p.`state` = 1) p ON f.`id` = p.`specifications_id` + WHERE m.`state` = 1 + </select> </mapper> -- Gitblit v1.9.3