From ad7151b14f2721b0fa40a903c6e65a2c511dd4c5 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期四, 27 七月 2023 15:08:13 +0800
Subject: [PATCH] LIMS管理系统框架-开发7-27第二次标准库完成修改
---
laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/MetricalInformation.java | 3
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddSpecifications.java | 23 +
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddStandardDto.java | 28 ++
standard-server/src/main/resources/mapper/MaterialMapper.xml | 1
pom.xml | 6
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java | 38 +
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java | 61 +++-
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java | 25 +
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java | 10
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Material.java | 6
standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java | 8
standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java | 19
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java | 117 ++++++-
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddMaterialDto.java | 31 ++
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/InstrumentController.java | 103 +++++++
user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java | 9
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/EquipmentPointService.java | 2
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardController.java | 19 +
framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java | 15 +
laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/EquipmentPointMapper.java | 2
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/EquipmentPointServiceImpl.java | 4
standard-server/src/main/resources/mapper/ProductMapper.xml | 14 +
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MetricalInformationServiceImpl.java | 4
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java | 8
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java | 46 ++
standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardService.java | 12
laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Instrument.java | 8
standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/MaterialMapper.java | 2
laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/MetricalInformationService.java | 2
laboratory-server/src/main/resources/mapper/MetricalInformationMapper.xml | 3
standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java | 7
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Specifications.java | 2
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionMaterialListController.java | 9
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java | 8
laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MetricalInformationController.java | 76 +++++
laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/MetricalInformationMapper.java | 2
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/MaterialController.java | 29 +
standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java | 9
standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java | 13
laboratory-server/src/main/resources/mapper/EquipmentPointMapper.xml | 1
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Standard.java | 2
41 files changed, 658 insertions(+), 129 deletions(-)
diff --git a/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java b/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
index 976777b..e94b324 100644
--- a/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
+++ b/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
@@ -14,13 +14,18 @@
import org.springframework.http.converter.HttpMessageNotReadableException;
import org.springframework.http.converter.HttpMessageNotWritableException;
import org.springframework.jdbc.BadSqlGrammarException;
+import org.springframework.validation.ObjectError;
+import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;
import org.springframework.web.multipart.MultipartException;
import java.io.FileNotFoundException;
import java.io.IOException;
+import java.net.BindException;
import java.sql.SQLException;
+import java.util.List;
+import java.util.stream.Collectors;
@Slf4j
@@ -191,6 +196,16 @@
return Result.fail("鎶辨瓑涓嶆敮鎸併��" + e.getMessage() +"銆戝悗缂�鐨勬枃浠讹紒");
}
+ /**
+ * 鍙傛暟妫�楠�
+ */
+ @ExceptionHandler({MethodArgumentNotValidException.class})
+ public Result<?> methodArgumentNotValidException(MethodArgumentNotValidException e) {
+ List<ObjectError> allErrors = e.getBindingResult().getAllErrors();
+ String message = allErrors.stream().map(s -> s.getDefaultMessage()).collect(Collectors.joining(";"));
+ return Result.fail(message);
+ }
+
/** 鍏朵粬閿欒 */
@ExceptionHandler({Exception.class})
public Result<?> exception(Exception e) {
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
index c0295d4..6906e8d 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionController.java
@@ -8,6 +8,7 @@
import com.yuanchu.limslaboratory.pojo.Product;
import com.yuanchu.limslaboratory.service.*;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
+import com.yuanchu.limslaboratory.utils.MyUtil;
import com.yuanchu.limslaboratory.utils.RedisUtil;
import com.yuanchu.limslaboratory.vo.Result;
import io.swagger.annotations.*;
@@ -80,11 +81,12 @@
@ApiOperation("鏌ヨ鐗╂枡淇℃伅")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "pageSize", value = "椤垫暟", dataTypeClass = Integer.class, required = true),
- @ApiImplicitParam(name = "countSize", value = "鏉℃暟/椤�", dataTypeClass = Integer.class, required = true)
+ @ApiImplicitParam(name = "countSize", value = "鏉℃暟/椤�", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "type", value = "绫诲瀷", dataTypeClass = Integer.class, required = true)
})
@GetMapping("/selectMaterialLimit")
- public Result selectMaterialLimit(int pageSize, int countSize) {
- return Result.success(materialService.selectMaterialLimit(pageSize, countSize));
+ public Result selectMaterialLimit(int pageSize, int countSize, int type) {
+ return Result.success(materialService.selectMaterialLimit(pageSize, countSize, type));
}
@ApiOperation("閫夋嫨鐗╂枡淇℃伅")
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionMaterialListController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionMaterialListController.java
index 09bb02e..0405b39 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionMaterialListController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionMaterialListController.java
@@ -1,6 +1,7 @@
package com.yuanchu.limslaboratory.controller;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yuanchu.limslaboratory.pojo.InspectionMaterialList;
import com.yuanchu.limslaboratory.service.InspectionMaterialListService;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
@@ -50,11 +51,11 @@
@ApiOperation("鏍规嵁Id鏌ヨ鏍峰搧淇℃伅")
@ApiImplicitParams(value = {
- @ApiImplicitParam(name = "inspectionMaterialListId", value = "鏍峰搧ID", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "inspectionId", value = "鏍峰搧ID", dataTypeClass = String.class, required = true),
})
- @PutMapping("/selectInspectionMaterialListById/{inspectionMaterialListId}")
- public Result selectInspectionMaterialListById(@PathVariable Integer inspectionMaterialListId) {
- return Result.success(inspectionMaterialListService.getById(inspectionMaterialListId));
+ @GetMapping("/selectInspectionMaterialListById/{inspectionId}")
+ public Result selectInspectionMaterialListById(@PathVariable String inspectionId) {
+ return Result.success(inspectionMaterialListService.list(new QueryWrapper<InspectionMaterialList>().eq("inspection_id", inspectionId).eq("state", 1)));
}
@ApiOperation("鏍规嵁鏍峰搧id淇敼鏍峰搧淇℃伅")
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java
index 4753c3e..2e403fe 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/EquipmentPointController.java
@@ -17,6 +17,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import javax.validation.constraints.NotNull;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -51,10 +52,13 @@
return Result.fail("娣诲姞銆�"+ equipmentPoint.getEquipmentPointName() +"銆戝け璐ワ紒璁惧鐮佺偣缂栫爜閲嶅锛�");
}
- @ApiOperation("鏌ヨ鎵�鏈夎澶囩爜鐐规暟鎹�")
+ @ApiOperation("鏍规嵁浠櫒Id鏌ヨ瀵瑰簲璁惧鐮佺偣鏁版嵁")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "InstrumentId", value = "浠櫒妯″潡Id", dataTypeClass = String.class, required = true)
+ })
@GetMapping("/list")
- public Result<?> getListEquipmentPointInformation() {
- List<Map<String, Object>> list = equipmentPointService.getListEquipmentPointInformation();
+ public Result<?> getListEquipmentPointInformation(String InstrumentId) {
+ List<Map<String, Object>> list = equipmentPointService.getListEquipmentPointInformation(InstrumentId);
return Result.success(list);
}
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/InstrumentController.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/InstrumentController.java
index 3b1ee87..6a886ea 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/InstrumentController.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/InstrumentController.java
@@ -1,9 +1,25 @@
package com.yuanchu.limslaboratory.controller;
-import org.springframework.web.bind.annotation.RequestMapping;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.limslaboratory.pojo.Instrument;
+import com.yuanchu.limslaboratory.pojo.dto.UpdateInstrumentDto;
+import com.yuanchu.limslaboratory.service.InstrumentService;
+import com.yuanchu.limslaboratory.service.UserService;
+import com.yuanchu.limslaboratory.utils.JackSonUtil;
+import com.yuanchu.limslaboratory.utils.RedisUtil;
+import com.yuanchu.limslaboratory.vo.Result;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
-import org.springframework.web.bind.annotation.RestController;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
/**
* <p>
@@ -13,8 +29,91 @@
* @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
* @since 2023-07-20
*/
+@Api(tags = "瀹為獙瀹�-->璁惧鍙拌处-->2銆佷华鍣ㄦā鍧�")
@RestController
@RequestMapping("/instrument")
public class InstrumentController {
+ @Autowired
+ private InstrumentService instrumentService;
+
+ @Autowired
+ private UserService userService;
+
+ @ApiOperation("娣诲姞浠櫒璁惧")
+ @PostMapping("/add")
+ public Result<?> addInstrumentInformation(@RequestHeader("X-Token") String token, @RequestBody Instrument instrument) throws Exception {
+ Object object = RedisUtil.get(token);
+ Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
+ instrument.setCreateUserId((Integer) unmarshal.get("id"));
+ Integer isInsertSuccess = instrumentService.addInstrumentInformation(instrument);
+ if (isInsertSuccess == 1){
+ return Result.success("娣诲姞銆�" + instrument.getEquipmentName() + "銆戞垚鍔�!");
+ }
+ return Result.fail("浠櫒璁惧缂栧彿閲嶅锛屾坊鍔犮��" + instrument.getEquipmentName() + "銆戝け璐�! ");
+ }
+
+ @ApiOperation("鏍规嵁鍒嗙被Id锛氬垎椤靛垪琛ㄥ睍绀�")
+ @GetMapping("/list")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "classifyId", value = "鍒嗙被Id", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "pageNo", value = "璧峰椤�", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "pageSize", value = "姣忎竴椤垫暟閲�", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "conditions", value = "鏌ヨ鐘舵��:榛樿鍏ㄩ儴", dataTypeClass = Integer.class),
+ @ApiImplicitParam(name = "whetherWhether", value = "鏄惁宸茶繃鏈�", dataTypeClass = Boolean.class),
+ @ApiImplicitParam(name = "numberOrNameOrSpecifications", value = "缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿", dataTypeClass = String.class)
+ })
+ public Result<?> getListInstrumentInformation(Integer pageNo,
+ Integer pageSize,
+ Integer conditions,
+ Integer classifyId,
+ Boolean whetherWhether,
+ String numberOrNameOrSpecifications) {
+ IPage<Map<String, Object>> pageList = instrumentService.getListInstrumentInformation(conditions, whetherWhether, numberOrNameOrSpecifications,
+ classifyId, new Page<Objects>(pageNo, pageSize));
+ Map<String, Object> map = new HashMap<>();
+ map.put("row", pageList.getRecords());
+ map.put("total", pageList.getTotal());
+ return Result.success(map);
+ }
+
+ @ApiOperation("鍒犻櫎浠櫒鏁版嵁")
+ @DeleteMapping("/delete")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "instrumentId", value = "浠櫒Id", dataTypeClass = String.class, required = true)
+ })
+ public Result<?> deleteInstrumentInformation(String instrumentId) {
+ Boolean isDeleteSuccess = instrumentService.deleteInstrumentInformation(instrumentId);
+ if (isDeleteSuccess){
+ return Result.success("鍒犻櫎浠櫒鎴愬姛锛�");
+ }
+ return Result.fail("鍒犻櫎浠櫒澶辫触锛�");
+ }
+
+ @ApiOperation("娣诲姞浠櫒鏃朵繚绠′汉涓嬫媺妗嗘暟鎹�")
+ @GetMapping("/get_user")
+ public Result<?> getMapUserInformation() {
+ return Result.success(userService.getUserNameAndId());
+ }
+
+ @ApiOperation("鏍规嵁浠櫒Id鑾峰彇淇℃伅鐢ㄤ簬缂栬緫")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "InstrumentId", value = "鍒嗙被Id", dataTypeClass = Integer.class, required = true)
+ })
+ @GetMapping("/get_instrument")
+ public Result<?> getIdInstrumentInformation(Integer InstrumentId) {
+ Instrument idInstrumentInformation = instrumentService.getIdInstrumentInformation(InstrumentId);
+ return Result.success(idInstrumentInformation);
+ }
+
+ @ApiOperation("鏍规嵁浠櫒Id鏇存柊鏁版嵁")
+ @PutMapping("/update")
+ public Result<?> updateEquipmentPointInformation(@RequestBody UpdateInstrumentDto updateInstrumentDto) throws Exception {
+ Instrument instrument = JackSonUtil.unmarshal(JackSonUtil.marshal(updateInstrumentDto), Instrument.class);
+ Integer isUpdateSuccess = instrumentService.updateEquipmentPointInformation(instrument);
+ if (isUpdateSuccess == 1){
+ return Result.success("鏇存柊銆�" + instrument.getEquipmentName() + "銆戞垚鍔�!");
+ }
+ return Result.fail("浠櫒璁惧缂栧彿閲嶅锛屾洿鏂般��" + instrument.getEquipmentName() + "銆戝け璐�! ");
+ }
}
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MetricalInformationController.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MetricalInformationController.java
index 6b7ceb6..a2f4c7c 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MetricalInformationController.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/controller/MetricalInformationController.java
@@ -1,9 +1,21 @@
package com.yuanchu.limslaboratory.controller;
+import com.yuanchu.limslaboratory.pojo.MetricalInformation;
+import com.yuanchu.limslaboratory.pojo.dto.UpdateMetricalInformationDto;
+import com.yuanchu.limslaboratory.service.MetricalInformationService;
+import com.yuanchu.limslaboratory.service.UserService;
+import com.yuanchu.limslaboratory.utils.JackSonUtil;
+import com.yuanchu.limslaboratory.vo.Result;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
+import java.util.List;
+import java.util.Map;
/**
* <p>
@@ -13,8 +25,66 @@
* @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
* @since 2023-07-20
*/
+@Api(tags = "瀹為獙瀹�-->璁惧鍙拌处-->4銆佽閲忎俊鎭�")
@RestController
@RequestMapping("/metrical-information")
public class MetricalInformationController {
+ @Autowired
+ private MetricalInformationService metricalInformationService;
+
+ @Autowired
+ private UserService userService;
+
+ @ApiOperation("娣诲姞璁¢噺淇℃伅")
+ @PostMapping("/add")
+ public Result<?> addMetricalInformation(MetricalInformation metricalInformation,
+ @RequestPart(value = "file", required = false) MultipartFile file) {
+ Integer isInsertSuccess = metricalInformationService.addEquipmentPointInformation(metricalInformation, file);
+ if (isInsertSuccess == 1){
+ return Result.success("娣诲姞銆�"+ metricalInformation.getMeasurementUnit() +"銆戞垚鍔燂紒");
+ }
+ return Result.fail("娣诲姞銆�"+ metricalInformation.getMeasurementUnit() +"銆戝け璐ワ紒璁惧鐮佺偣缂栫爜閲嶅锛�");
+ }
+
+ @ApiOperation("鏌ヨ鎵�鏈夎閲忎俊鎭暟鎹�")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "InstrumentId", value = "浠櫒妯″潡Id", dataTypeClass = String.class, required = true)
+ })
+ @GetMapping("/list")
+ public Result<?> getListMetricalInformation(String InstrumentId) {
+ List<Map<String, Object>> list = metricalInformationService.getListEquipmentPointInformation(InstrumentId);
+ return Result.success(list);
+ }
+
+ @ApiOperation("鏍规嵁璁¢噺淇℃伅Id鍒犻櫎鏁版嵁")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "metricalInformationId", value = "璁¢噺淇℃伅Id", dataTypeClass = Integer.class, required = true)
+ })
+ @DeleteMapping("/delete")
+ public Result<?> deleteMetricalInformation(Integer metricalInformationId) {
+ Integer isDeleteSuccess = metricalInformationService.deleteMetricalInformation(metricalInformationId);
+ if (isDeleteSuccess == 1){
+ return Result.success("鍒犻櫎鎴愬姛锛�");
+ }
+ return Result.fail("鍒犻櫎澶辫触锛�");
+ }
+
+ @ApiOperation("鏍规嵁璁¢噺淇℃伅Id鏇存柊鏁版嵁")
+ @PutMapping("/update")
+ public Result<?> updateMetricalInformation(UpdateMetricalInformationDto updateMetricalInformationDto,
+ @RequestPart(value = "file", required = false) MultipartFile file) throws Exception {
+ MetricalInformation metricalInformation = JackSonUtil.unmarshal(JackSonUtil.marshal(updateMetricalInformationDto), MetricalInformation.class);
+ Integer isUpdateSuccess = metricalInformationService.updateMetricalInformation(metricalInformation, file);
+ if (isUpdateSuccess == 1){
+ return Result.success("鏇存柊鎴愬姛锛�");
+ }
+ return Result.fail("鏇存柊澶辫触锛�");
+ }
+
+ @ApiOperation("娣诲姞璁¢噺淇℃伅鏃惰礋璐d汉涓嬫媺妗嗘暟鎹�")
+ @GetMapping("/get_user")
+ public Result<?> getMapUserInformation() {
+ return Result.success(userService.getUserNameAndId());
+ }
}
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/EquipmentPointMapper.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/EquipmentPointMapper.java
index 3dd46b8..5918e89 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/EquipmentPointMapper.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/EquipmentPointMapper.java
@@ -19,5 +19,5 @@
*/
public interface EquipmentPointMapper extends BaseMapper<EquipmentPoint> {
- List<Map<String, Object>> getListEquipmentPointInformation();
+ List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId);
}
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/MetricalInformationMapper.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/MetricalInformationMapper.java
index 987c803..ef27ce7 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/MetricalInformationMapper.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/mapper/MetricalInformationMapper.java
@@ -16,5 +16,5 @@
*/
public interface MetricalInformationMapper extends BaseMapper<MetricalInformation> {
- List<Map<String, Object>> getListEquipmentPointInformation();
+ List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId);
}
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Instrument.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Instrument.java
index 0b581ec..0d7fcdb 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Instrument.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/Instrument.java
@@ -11,6 +11,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import org.springframework.format.annotation.DateTimeFormat;
/**
* <p>
@@ -37,6 +38,9 @@
@ApiModelProperty(value = "淇濈浜猴細鐢ㄦ埛琛ㄥ叧鑱擨d", example = "9", required = true)
private Integer userId;
+ @ApiModelProperty(value = "淇濈浜猴細鐢ㄦ埛琛ㄥ叧鑱擨d", hidden = true)
+ private Integer createUserId;
+
@ApiModelProperty(value = "浠櫒璁惧缂栧彿", example = "JSTC-W1-00001", required = true)
private String equipmentCode;
@@ -60,10 +64,12 @@
@ApiModelProperty(value = "鍒拌揣鏃ユ湡", example = "2001-07-06", dataType = "date")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
private Date arrivalDate;
@ApiModelProperty(value = "楠屾敹鏃ユ湡", example = "2060-07-06", dataType = "date")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
private Date acceptanceDate;
@ApiModelProperty(value = "瀛樻斁鍦�", example = "鍦扮悆浜氭床涓浗姹熻嫃鍗楅��")
@@ -86,9 +92,9 @@
@ApiModelProperty(value = "閫昏緫鍒犻櫎 姝e父>=1,鍒犻櫎<=0", hidden = true)
private Integer state;
- @JsonIgnore
@TableField(fill = FieldFill.INSERT)
@ApiModelProperty(value = "鍒涘缓鏃堕棿", hidden = true)
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date createTime;
@JsonIgnore
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/MetricalInformation.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/MetricalInformation.java
index 660d10d..5ee2a7c 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/MetricalInformation.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/pojo/MetricalInformation.java
@@ -35,6 +35,9 @@
@ApiModelProperty(value = "鐢ㄦ埛鍏宠仈Id", example = "7", required = true)
private Integer userId;
+ @ApiModelProperty(value = "浠櫒鍏宠仈Id", example = "1", required = true)
+ private Integer instrumentId;
+
@ApiModelProperty(value = "璁¢噺鍗曚綅", example = "GB", required = true)
private String measurementUnit;
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/EquipmentPointService.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/EquipmentPointService.java
index ba3c510..4861c63 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/EquipmentPointService.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/EquipmentPointService.java
@@ -21,7 +21,7 @@
Integer addEquipmentPointInformation(EquipmentPoint equipmentPoint);
- List<Map<String, Object>> getListEquipmentPointInformation();
+ List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId);
Integer deleteEquipmentPointInformation(Integer equipmentPointId);
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/MetricalInformationService.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/MetricalInformationService.java
index 8d7d919..eb8ad69 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/MetricalInformationService.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/MetricalInformationService.java
@@ -19,7 +19,7 @@
Integer addEquipmentPointInformation(MetricalInformation metricalInformation, MultipartFile file);
- List<Map<String, Object>> getListEquipmentPointInformation();
+ List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId);
Integer deleteMetricalInformation(Integer metricalInformationId);
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/EquipmentPointServiceImpl.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/EquipmentPointServiceImpl.java
index c0ba3ff..93202cc 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/EquipmentPointServiceImpl.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/EquipmentPointServiceImpl.java
@@ -45,8 +45,8 @@
}
@Override
- public List<Map<String, Object>> getListEquipmentPointInformation() {
- return equipmentPointMapper.getListEquipmentPointInformation();
+ public List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId) {
+ return equipmentPointMapper.getListEquipmentPointInformation(InstrumentId);
}
@Override
diff --git a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MetricalInformationServiceImpl.java b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MetricalInformationServiceImpl.java
index a2ad0d9..74ed4a4 100644
--- a/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MetricalInformationServiceImpl.java
+++ b/laboratory-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MetricalInformationServiceImpl.java
@@ -40,8 +40,8 @@
}
@Override
- public List<Map<String, Object>> getListEquipmentPointInformation() {
- return metricalInformationMapper.getListEquipmentPointInformation();
+ public List<Map<String, Object>> getListEquipmentPointInformation(String InstrumentId) {
+ return metricalInformationMapper.getListEquipmentPointInformation(InstrumentId);
}
@Override
diff --git a/laboratory-server/src/main/resources/mapper/EquipmentPointMapper.xml b/laboratory-server/src/main/resources/mapper/EquipmentPointMapper.xml
index 427d44c..c64e216 100644
--- a/laboratory-server/src/main/resources/mapper/EquipmentPointMapper.xml
+++ b/laboratory-server/src/main/resources/mapper/EquipmentPointMapper.xml
@@ -6,5 +6,6 @@
SELECT e.`id`, e.`equipment_point` equipmentPoint, e.`equipment_point_name` equipmentPointName, e.`unit`,u.`name`, DATE_FORMAT(e.`update_time`, '%Y-%m-%d') updateTime, e.`descriptiveness`
FROM equipment_point e, `user` u
WHERE e.`user_id` = u.`id`
+ AND e.`instrument_id` = #{InstrumentId}
</select>
</mapper>
diff --git a/laboratory-server/src/main/resources/mapper/MetricalInformationMapper.xml b/laboratory-server/src/main/resources/mapper/MetricalInformationMapper.xml
index 3f74553..21de131 100644
--- a/laboratory-server/src/main/resources/mapper/MetricalInformationMapper.xml
+++ b/laboratory-server/src/main/resources/mapper/MetricalInformationMapper.xml
@@ -7,6 +7,7 @@
m.`uncertainty`, m.`result`, m.`performance_index`, m.`remarks`, m.`file_path`, DATE_FORMAT(m.`create_time`, '%Y-%m-%d') createDate
FROM metrical_information m, `user` u
WHERE m.`user_id` = u.`id`
- AND m.`state` = 1
+ AND m.`state` = 1
+ AND m.`instrument_id` = #{InstrumentId}
</select>
</mapper>
diff --git a/pom.xml b/pom.xml
index 3b1776c..0bfe39d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -79,6 +79,12 @@
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis-plus.version}</version>
</dependency>
+
+ <!--鍚庣娉ㄩ噴妫�楠屽伐鍏�-->
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-validation</artifactId>
+ </dependency>
</dependencies>
<dependencyManagement>
<dependencies>
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 d3ca6fd..853f518 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
@@ -1,7 +1,6 @@
package com.yuanchu.limslaboratory.controller;
-
-import com.yuanchu.limslaboratory.pojo.Material;
+import com.yuanchu.limslaboratory.pojo.dto.AddMaterialDto;
import com.yuanchu.limslaboratory.service.MaterialService;
import com.yuanchu.limslaboratory.vo.Result;
import io.swagger.annotations.Api;
@@ -9,7 +8,11 @@
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
/**
* <p>
@@ -29,24 +32,34 @@
@ApiOperation("娣诲姞鐗╂枡")
@PostMapping("/add")
- public Result<?> addMaterialInformation(@RequestBody Material material) {
- Integer isMaterialSuccess = null;
+ public Result<?> addMaterialInformation(@Validated @RequestBody AddMaterialDto addMaterialDto) {
+ Integer isMaterialSuccess = materialService.addMaterialInformation(addMaterialDto);
if (isMaterialSuccess == 1) {
- return Result.success("娣诲姞鐗╂枡銆�"+ material.getName() +"銆戞垚鍔燂紒");
+ return Result.success("娣诲姞鐗╂枡銆�"+ addMaterialDto.getMaterialName() +"銆戞垚鍔燂紒");
}
- return Result.fail("娣诲姞鐗╂枡銆�"+ material.getName() +"銆戝け璐ワ紒");
+ return Result.fail("娣诲姞鐗╂枡銆�"+ addMaterialDto.getMaterialName() +"銆戝け璐ワ紒");
}
@ApiOperation("鏍规嵁鐗╂枡ID鍒犻櫎鐗╂枡")
@DeleteMapping("/delete")
@ApiImplicitParams(value = {
- @ApiImplicitParam(value = "鐗╂枡ID", name = "materialId", dataTypeClass = String.class)
+ @ApiImplicitParam(value = "鐗╂枡ID", name = "materialId", dataTypeClass = Integer.class)
})
- public Result<?> deleteMaterialInformation(String materialId) {
+ public Result<?> deleteMaterialInformation(Integer materialId) {
Integer isDeleteMaterialSuccess = materialService.deleteMaterialInformation(materialId);
if (isDeleteMaterialSuccess == 1) {
return Result.success("鍒犻櫎鎴愬姛锛�");
}
return Result.fail("鍒犻櫎澶辫触锛�");
}
+
+ @ApiOperation("渚ц竟鏍忓洓绾у睍寮�")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(value = "鍨嬪彿/鍨嬪彿鍚嶇О", name = "specificationName", dataTypeClass = String.class)
+ })
+ @GetMapping("/list")
+ public Result<?> getFourLevelInformation(String specificationName) {
+ List<Map<String, Object>> fourLevelInformation = materialService.getFourLevelInformation(specificationName);
+ return Result.success(fourLevelInformation);
+ }
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java
index ac7a176..48d6c63 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/ProductController.java
@@ -1,17 +1,17 @@
package com.yuanchu.limslaboratory.controller;
-import com.yuanchu.limslaboratory.pojo.Product;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.service.ProductService;
-import com.yuanchu.limslaboratory.utils.JackSonUtil;
-import com.yuanchu.limslaboratory.utils.RedisUtil;
import com.yuanchu.limslaboratory.vo.Result;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
/**
* <p>
@@ -29,16 +29,28 @@
@Autowired
private ProductService productService;
- @ApiOperation("鍒犻櫎娴嬭瘯鏍囧噯妯″潡鏁版嵁")
- @DeleteMapping("/delete")
+ @ApiOperation("1銆佸垎椤垫煡璇㈤」鐩�")
@ApiImplicitParams(value = {
- @ApiImplicitParam(value = "娴嬭瘯鏍囧噯ID", name = "productId", dataTypeClass = String.class)
+ @ApiImplicitParam(name = "pageNo", value = "璧峰椤�", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(name = "pageSize", value = "姣忎竴椤垫暟閲�", dataTypeClass = Integer.class, required = true),
+ @ApiImplicitParam(value = "鍘熸潗鏂欑紪鐮�/鍘熸潗鏂欏悕绉�", name = "productCodeOrName", dataTypeClass = String.class)
})
- public Result<?> deleteProductInformation(Integer productId) {
- Integer isDeleteProduct = productService.deleteProductInformation(productId);
- if (isDeleteProduct == 1) {
- return Result.success("鍒犻櫎鎴愬姛锛�");
- }
- return Result.fail("鍒犻櫎澶辫触锛�");
+ @GetMapping("/page")
+ public Result<?> pageProductInformation(Integer pageNo, Integer pageSize,String productCodeOrName) {
+ IPage<Map<String, Object>> maps = productService.pageProductInformation(productCodeOrName, new Page<Objects>(pageNo, pageSize));
+ Map<String, Object> map = new HashMap<>();
+ map.put("row", maps.getRecords());
+ map.put("total", maps.getTotal());
+ return Result.success(map);
+ }
+
+ @ApiOperation("2銆佹牴鎹埗绫绘煡瀛愮被")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(value = "鐖剁被鍚嶇О", name = "fatherName", dataTypeClass = String.class)
+ })
+ @GetMapping("/father")
+ public Result<?> pageFatherNameProductInformation(String fatherName) {
+ List<Map<String, Object>> maps = productService.pageFatherNameProductInformation(fatherName);
+ return Result.success(maps);
}
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java
index bfc1627..4be696a 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/SpecificationsController.java
@@ -1,6 +1,8 @@
package com.yuanchu.limslaboratory.controller;
+import com.yuanchu.limslaboratory.pojo.dto.AddSpecifications;
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import com.yuanchu.limslaboratory.service.SpecificationsService;
import com.yuanchu.limslaboratory.vo.Result;
import io.swagger.annotations.Api;
@@ -8,6 +10,7 @@
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
@@ -26,6 +29,16 @@
@Autowired
private SpecificationsService specificationsService;
+ @ApiOperation("娣诲姞鐗╂枡")
+ @PostMapping("/add")
+ public Result<?> addSpecificationsInformation(@Validated @RequestBody AddSpecifications addSpecifications) {
+ Integer isMaterialSuccess = specificationsService.addSpecificationsInformation(addSpecifications);
+ if (isMaterialSuccess == 1) {
+ return Result.success("娣诲姞鐗╂枡銆�"+ addSpecifications.getSpecificationsName() +"銆戞垚鍔燂紒");
+ }
+ return Result.fail("娣诲姞鐗╂枡銆�"+ addSpecifications.getSpecificationsName() +"銆戝け璐ワ紒");
+ }
+
@ApiOperation("鍒犻櫎浜у搧瑙勬牸")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "specificationsId", value = "瑙勬牸Id", dataTypeClass = Integer.class, required = true)
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardController.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardController.java
index 37ab29e..665f006 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardController.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/controller/StandardController.java
@@ -1,11 +1,12 @@
package com.yuanchu.limslaboratory.controller;
-
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import com.yuanchu.limslaboratory.service.StandardService;
import com.yuanchu.limslaboratory.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
@@ -24,11 +25,21 @@
@Autowired
private StandardService standardService;
+ @ApiOperation("娣诲姞鐗╂枡")
+ @PostMapping("/add")
+ public Result<?> addStandardInformation(@Validated @RequestBody AddStandardDto addStandardDto) {
+ Integer isMaterialSuccess = standardService.addStandardInformation(addStandardDto);
+ if (isMaterialSuccess == 1) {
+ return Result.success("娣诲姞鐗╂枡銆�"+ addStandardDto.getStandardName() +"銆戞垚鍔燂紒");
+ }
+ return Result.fail("娣诲姞鐗╂枡銆�"+ addStandardDto.getStandardName() +"銆戝け璐ワ紒");
+ }
+
@ApiOperation("鏍规嵁ID鍒犻櫎鏁版嵁")
@DeleteMapping("/delete")
- public Result<?> deleteStandardsInformation(String standardsId) {
- Integer isDeleteSuccess = standardService.deleteStandardsInformation(standardsId);
- if (isDeleteSuccess == 1){
+ public Result<?> deleteStandardsInformation(Integer standardsId) {
+ Integer isDeleteMaterialSuccess = standardService.deleteStandardInformation(standardsId);
+ if (isDeleteMaterialSuccess == 1) {
return Result.success("鍒犻櫎鎴愬姛锛�");
}
return Result.fail("鍒犻櫎澶辫触锛�");
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 63a2e7e..69ac1ec 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
@@ -17,7 +17,7 @@
public interface MaterialMapper extends BaseMapper<Material> {
//鏌ヨ鐗╂枡淇℃伅
- List<Material> selectMaterialLimit(int num1,int num2);
+ List<Material> selectMaterialLimit(int num1,int num2, int type);
//鏍规嵁鐗╂枡id鏌ヨ鐗╂枡淇℃伅
Map selectMaterialById(String materialId);
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java
index 3a02fc6..4536735 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/mapper/ProductMapper.java
@@ -1,11 +1,14 @@
package com.yuanchu.limslaboratory.mapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.pojo.Product;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
/**
* <p>
@@ -19,5 +22,7 @@
List<Product> selectProductByMaterialId(String materialId);
- Map<String, Object> getProductInformation(Integer productId);
+ IPage<Map<String, Object>> pageProductInformation(String productCodeOrName, Page<Objects> page);
+
+ Map<String, Object> selectOneChildren(Object father);
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Material.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Material.java
index 9eee171..f76bc42 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Material.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Material.java
@@ -11,6 +11,7 @@
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
/**
* <p>
@@ -20,6 +21,7 @@
* @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
* @since 2023-07-17
*/
+@Accessors(chain = true)
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="Material瀵硅薄", description="")
@@ -29,9 +31,9 @@
@ApiModelProperty(value = "鐗╂枡id", hidden = true)
@TableId(value = "id", type = IdType.AUTO)
- private String id;
+ private Integer id;
- @ApiModelProperty(value = "鐗╂枡缂栫爜", example = "152453211563212", required = true)
+ @ApiModelProperty(value = "鐗╂枡缂栫爜", hidden = true)
private String code;
@ApiModelProperty(value = "鐗╂枡鍚嶇О", example = "鐭冲ご", required = true)
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Specifications.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Specifications.java
index 023a593..6e70cdf 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Specifications.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Specifications.java
@@ -12,6 +12,7 @@
import io.swagger.models.auth.In;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
/**
* <p>
@@ -22,6 +23,7 @@
* @since 2023-07-11
*/
@Data
+@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="Specifications瀵硅薄", description="瑙勬牸")
public class Specifications implements Serializable {
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Standard.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Standard.java
index 4f25ea6..5671a73 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Standard.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Standard.java
@@ -10,6 +10,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
/**
* <p>
@@ -20,6 +21,7 @@
* @since 2023-07-11
*/
@Data
+@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="Standards瀵硅薄", description="鏍囧噯")
public class Standard implements Serializable {
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddMaterialDto.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddMaterialDto.java
new file mode 100644
index 0000000..d3ce5ae
--- /dev/null
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddMaterialDto.java
@@ -0,0 +1,31 @@
+package com.yuanchu.limslaboratory.pojo.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="AddMaterialDto瀵硅薄", description="")
+public class AddMaterialDto {
+
+ @NotNull(message = "鐗╂枡绫诲瀷涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "0锛氬師鏉愭枡锛�1锛氭垚鍝侊紱2锛氬崐鎴愬搧", example = "1", required = true)
+ private Integer type;
+
+ @NotBlank(message = "鐗╂枡鍚嶇О涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "鐗╂枡鍚嶇О", example = "鐭冲ご", required = true)
+ private String materialName;
+
+ @NotBlank(message = "鏍囧噯鍚嶇О涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "鏍囧噯鍚嶇О", example = "鍏夌氦", required = true)
+ private String standardName;
+
+ @NotBlank(message = "浜у搧瑙勬牸鍚嶇О涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "浜у搧瑙勬牸鍚嶇О", example = "AB", required = true)
+ private String specificationsName;
+}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddSpecifications.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddSpecifications.java
new file mode 100644
index 0000000..413c9bd
--- /dev/null
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddSpecifications.java
@@ -0,0 +1,23 @@
+package com.yuanchu.limslaboratory.pojo.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="AddSpecifications瀵硅薄", description="")
+public class AddSpecifications {
+
+ @NotNull(message = "鏍囧噯ID涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "鏍囧噯id", example = "1", required = true)
+ private Integer standardId;
+
+ @NotBlank(message = "浜у搧瑙勬牸鍚嶇О涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "浜у搧瑙勬牸鍚嶇О", example = "AB", required = true)
+ private String specificationsName;
+}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddStandardDto.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddStandardDto.java
new file mode 100644
index 0000000..2fe0eb6
--- /dev/null
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/dto/AddStandardDto.java
@@ -0,0 +1,28 @@
+package com.yuanchu.limslaboratory.pojo.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="AddStandardDto瀵硅薄", description="")
+public class AddStandardDto {
+
+ @NotNull(message = "鐗╂枡ID涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "鐗╂枡id", example = "1", required = true)
+ private Integer materialId;
+
+ @NotBlank(message = "鏍囧噯鍚嶇О涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "鏍囧噯鍚嶇О", example = "鍏夌氦", required = true)
+ private String standardName;
+
+ @NotBlank(message = "浜у搧瑙勬牸鍚嶇О涓嶈兘涓虹┖锛�")
+ @ApiModelProperty(value = "浜у搧瑙勬牸鍚嶇О", example = "AB", required = true)
+ private String specificationsName;
+
+}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java
index 28e5a43..7e79daf 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/MaterialService.java
@@ -2,6 +2,8 @@
import com.yuanchu.limslaboratory.pojo.Material;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.yuanchu.limslaboratory.pojo.dto.AddMaterialDto;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
@@ -16,7 +18,7 @@
*/
public interface MaterialService extends IService<Material> {
- List<Material> selectMaterialLimit(int pageSize,int countSize);
+ List<Material> selectMaterialLimit(int pageSize,int countSize, int type);
Map selectMaterialById(String materialId);
@@ -25,12 +27,17 @@
* @param materialId
* @return
*/
- Integer deleteMaterialInformation(String materialId);
+ @Transactional(rollbackFor = Exception.class)
+ Integer deleteMaterialInformation(Integer materialId);
/**
- * 鍒犻櫎绛変簬SpecificationsId鐨勭墿鏂欐暟鎹�
- * @param deleteSpecificationsId
- * @return
+ * 涓夌骇娣诲姞鍙傛暟
*/
- List<String> specificationsIdDeleteMaterial(List<Integer> deleteSpecificationsId);
+ @Transactional(rollbackFor = Exception.class)
+ Integer addMaterialInformation(AddMaterialDto addMaterialDto);
+
+ /**
+ * 鍥涚骇鍒嗗眰鏄剧ず
+ */
+ List<Map<String, Object>> getFourLevelInformation(String specificationName);
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java
index 9940876..d6b2662 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/ProductService.java
@@ -1,10 +1,13 @@
package com.yuanchu.limslaboratory.service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.pojo.Product;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
/**
@@ -16,7 +19,9 @@
* @since 2023-07-17
*/
public interface ProductService extends IService<Product> {
- Integer deleteProductInformation(Integer productId);
+ void deleteProductInformation(List<Integer> SpecificationsId);
- void MaterialIdDeleteProduct(List<String> deleteMaterialId);
+ IPage<Map<String, Object>> pageProductInformation(String productCodeOrName, Page<Objects> page);
+
+ List<Map<String, Object>> pageFatherNameProductInformation(String fatherName);
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java
index 9111ec9..5da007f 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/SpecificationsService.java
@@ -1,7 +1,11 @@
package com.yuanchu.limslaboratory.service;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yuanchu.limslaboratory.pojo.Specifications;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.yuanchu.limslaboratory.pojo.Standard;
+import com.yuanchu.limslaboratory.pojo.dto.AddSpecifications;
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@@ -23,5 +27,7 @@
@Transactional(rollbackFor = Exception.class)
Integer deleteSpecifications(Integer specificationsId);
- List<Integer> SerialNumberIdDeleteSpecifications(List<String> deleteSerialNumberId);
+ List<Integer> StandardIdDeleteSpecifications(List<Integer> deleteStandard);
+
+ Integer addSpecificationsInformation(AddSpecifications addStandardDto);
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardService.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardService.java
index 643d7cc..ef36a18 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardService.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/StandardService.java
@@ -2,7 +2,11 @@
import com.yuanchu.limslaboratory.pojo.Standard;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
+import io.swagger.models.auth.In;
import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
/**
* <p>
@@ -16,9 +20,13 @@
/**
* 鏍规嵁鏍囧噯Id鍒犻櫎鏁版嵁
- * @param standardsId
+ * @param materialId
* @return
*/
+ List<Integer> deleteStandardsInformation(Integer materialId);
+
@Transactional(rollbackFor = Exception.class)
- Integer deleteStandardsInformation(String standardsId);
+ Integer deleteStandardInformation(Integer standardsId);
+
+ Integer addStandardInformation(AddStandardDto addStandardDto);
}
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 a373c2a..feb1a9e 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
@@ -2,16 +2,23 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.yuanchu.limslaboratory.pojo.Material;
import com.yuanchu.limslaboratory.mapper.MaterialMapper;
+import com.yuanchu.limslaboratory.pojo.Specifications;
+import com.yuanchu.limslaboratory.pojo.Standard;
+import com.yuanchu.limslaboratory.pojo.dto.AddMaterialDto;
import com.yuanchu.limslaboratory.service.MaterialService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.limslaboratory.service.ProductService;
+import com.yuanchu.limslaboratory.service.SpecificationsService;
+import com.yuanchu.limslaboratory.service.StandardService;
+import com.yuanchu.limslaboratory.utils.MyUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
-import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -27,12 +34,21 @@
public class MaterialServiceImpl extends ServiceImpl<MaterialMapper, Material> implements MaterialService {
@Resource
- MaterialMapper materialMapper;
+ private MaterialMapper materialMapper;
+
+ @Autowired
+ private StandardService standardService;
+
+ @Autowired
+ private SpecificationsService specificationsService;
+
+ @Autowired
+ private ProductService productService;
//鏌ヨ鐗╂枡淇℃伅
@Override
- public List<Material> selectMaterialLimit(int pageSize, int countSize) {
- return materialMapper.selectMaterialLimit((pageSize - 1) * countSize,pageSize * countSize);
+ public List<Material> selectMaterialLimit(int pageSize, int countSize, int type) {
+ return materialMapper.selectMaterialLimit((pageSize - 1) * countSize,pageSize * countSize, type);
}
//鏍规嵁鐗╂枡id鏌ヨ鐗╂枡淇℃伅
@@ -41,39 +57,92 @@
return materialMapper.selectMaterialById(materialId);
}
- @Autowired
- private ProductService productService;
-
@Override
- public Integer deleteMaterialInformation(String materialId) {
+ public Integer deleteMaterialInformation(Integer materialId) {
LambdaUpdateWrapper<Material> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(Material::getId, materialId);
updateWrapper.set(Material::getState, 0);
- List<String> list = new ArrayList<>();
- list.add(materialId);
int isDeleteSuccess = materialMapper.update(new Material(), updateWrapper);
if (isDeleteSuccess == 1){
- productService.MaterialIdDeleteProduct(list);
+ List<Integer> isDeleteStandard = standardService.deleteStandardsInformation(materialId);
+ if (!ObjectUtils.isEmpty(isDeleteStandard)){
+ List<Integer> idDeleteSpecifications = specificationsService.StandardIdDeleteSpecifications(isDeleteStandard);
+ if (!ObjectUtils.isEmpty(idDeleteSpecifications)){
+ productService.deleteProductInformation(idDeleteSpecifications);
+ }
+ }
return 1;
}
return 0;
}
@Override
- public List<String> specificationsIdDeleteMaterial(List<Integer> deleteSpecificationsId) {
- List<String> list = new ArrayList<>();
- for (Integer serialNumberId:deleteSpecificationsId){
- LambdaQueryWrapper<Material> wrapper = new LambdaQueryWrapper<>();
- wrapper.select(Material::getId);
- List<Material> maps1 = materialMapper.selectList(wrapper);
- for (Material material:maps1){
- LambdaUpdateWrapper<Material> updateWrapper = new LambdaUpdateWrapper<>();
- updateWrapper.eq(Material::getId, material.getId());
- updateWrapper.set(Material::getState, 0);
- materialMapper.update(new Material(), updateWrapper);
- list.add(material.getId());
+ public Integer addMaterialInformation(AddMaterialDto addMaterialDto) {
+ Material material = new Material()
+ .setCode("BZ" + IdWorker.getIdStr())
+ .setName(addMaterialDto.getMaterialName())
+ .setType(addMaterialDto.getType());
+ int isInsertSuccess = materialMapper.insert(material);
+ if (isInsertSuccess > 0){
+ Standard standard = new Standard()
+ .setMaterialId(material.getId())
+ .setName(addMaterialDto.getStandardName());
+ boolean save = standardService.save(standard);
+ if (save){
+ Specifications specifications = new Specifications()
+ .setName(addMaterialDto.getSpecificationsName())
+ .setStandardId(standard.getId());
+ boolean save1 = specificationsService.save(specifications);
+ if (save1)
+ return 1;
}
}
- return list;
+ return 0;
+ }
+
+ @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<>();
+ MyUtil.PrintLog(standardMap.get("id").toString());
+ 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;
}
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java
index 45dee2f..6cbc593 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ProductServiceImpl.java
@@ -2,10 +2,13 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.pojo.Product;
import com.yuanchu.limslaboratory.mapper.ProductMapper;
import com.yuanchu.limslaboratory.service.ProductService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yuanchu.limslaboratory.utils.MyUtil;
import org.springframework.beans.factory.annotation.Autowired;
import com.yuanchu.limslaboratory.service.UserService;
import org.springframework.stereotype.Service;
@@ -15,6 +18,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
/**
* <p>
@@ -31,20 +35,40 @@
private ProductMapper productMapper;
@Override
- public Integer deleteProductInformation(Integer productId) {
- LambdaUpdateWrapper<Product> wrapper = new LambdaUpdateWrapper<>();
- wrapper.eq(Product::getId, productId);
- wrapper.set(Product::getState, 0);
- return productMapper.update(new Product(), wrapper);
- }
-
- @Override
- public void MaterialIdDeleteProduct(List<String> deleteMaterialId) {
- for (String materialId : deleteMaterialId){
+ public void deleteProductInformation(List<Integer> SpecificationsId) {
+ for (Integer materialId : SpecificationsId){
LambdaUpdateWrapper<Product> wrapper = new LambdaUpdateWrapper<>();
- wrapper.eq(Product::getId, materialId);
+ wrapper.eq(Product::getSpecifications_id, materialId);
wrapper.set(Product::getState, 0);
productMapper.update(new Product(), wrapper);
}
}
+
+ @Override
+ public IPage<Map<String, Object>> pageProductInformation(String productCodeOrName, Page<Objects> page) {
+ IPage<Map<String, Object>> iPage = productMapper.pageProductInformation(productCodeOrName, page);
+ List<Map<String, Object>> maps = iPage.getRecords();
+ MyUtil.PrintLog(maps.toString());
+ maps.forEach(map -> {
+ int num = Integer.parseInt(map.get("num").toString());
+ boolean children = false;
+ if (num > 1){
+ children = true;
+ } else {
+ Map<String, Object> product = productMapper.selectOneChildren(map.get("father"));
+ map.putAll(product);
+ }
+ map.put("children", children);
+ map.remove("num");
+ });
+ return iPage;
+ }
+
+ @Override
+ public List<Map<String, Object>> pageFatherNameProductInformation(String fatherName) {
+ LambdaQueryWrapper<Product> wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(Product::getFather, fatherName);
+ wrapper.select(Product::getId, Product::getName, Product::getUnit, Product::getRequired, Product::getInternal);
+ return productMapper.selectMaps(wrapper);
+ }
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
index 0730bc4..93be8b1 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
@@ -4,9 +4,12 @@
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.yuanchu.limslaboratory.pojo.Specifications;
import com.yuanchu.limslaboratory.mapper.SpecificationsMapper;
+import com.yuanchu.limslaboratory.pojo.dto.AddSpecifications;
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import com.yuanchu.limslaboratory.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
@@ -29,9 +32,6 @@
private SpecificationsMapper specificationsMapper;
@Autowired
- private MaterialService materialService;
-
- @Autowired
private ProductService productService;
@Override
@@ -43,21 +43,18 @@
list.add(specificationsId);
int isDeleteSuccess = specificationsMapper.update(new Specifications(), updateWrapper);
if (isDeleteSuccess == 1){
- List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(list);
- if (!ObjectUtils.isEmpty(deleteMaterialId)){
- productService.MaterialIdDeleteProduct(deleteMaterialId);
- }
+ productService.deleteProductInformation(list);
return 1;
}
return 0;
}
@Override
- public List<Integer> SerialNumberIdDeleteSpecifications(List<String> deleteSerialNumberId) {
+ public List<Integer> StandardIdDeleteSpecifications(List<Integer> deleteStandard) {
List<Integer> list = new ArrayList<>();
- for (String serialNumberId:deleteSerialNumberId){
+ for (Integer standard : deleteStandard){
LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(Specifications::getId, serialNumberId);
+ wrapper.eq(Specifications::getStandardId, standard);
wrapper.select(Specifications::getId);
List<Specifications> maps1 = specificationsMapper.selectList(wrapper);
for (Specifications specifications:maps1){
@@ -70,4 +67,12 @@
}
return list;
}
+
+ @Override
+ public Integer addSpecificationsInformation(AddSpecifications addStandardDto) {
+ Specifications specifications = new Specifications()
+ .setName(addStandardDto.getSpecificationsName())
+ .setStandardId(addStandardDto.getStandardId());
+ return specificationsMapper.insert(specifications);
+ }
}
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
index 5aed855..bfc9618 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
@@ -1,17 +1,23 @@
package com.yuanchu.limslaboratory.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.yuanchu.limslaboratory.mapper.StandardMapper;
+import com.yuanchu.limslaboratory.pojo.Material;
+import com.yuanchu.limslaboratory.pojo.Specifications;
import com.yuanchu.limslaboratory.pojo.Standard;
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import com.yuanchu.limslaboratory.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
+import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
/**
* <p>
@@ -27,36 +33,63 @@
@Resource
private StandardMapper standardMapper;
- @Autowired
- private UserService userService;
-
@Lazy
@Autowired
private SpecificationsService specificationsService;
-
- @Autowired
- private MaterialService materialService;
@Autowired
private ProductService productService;
@Override
- public Integer deleteStandardsInformation(String standardsId) {
+ public List<Integer> deleteStandardsInformation(Integer materialId) {
+ LambdaQueryWrapper<Standard> wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(Standard::getMaterialId, materialId);
+ wrapper.select(Standard::getId);
+ List<Integer> list = new ArrayList<>();
+ List<Standard> standards = standardMapper.selectList(wrapper);
+ for (Standard standard : standards){
+ LambdaUpdateWrapper<Standard> updateWrapper = new LambdaUpdateWrapper<>();
+ updateWrapper.eq(Standard::getMaterialId, materialId);
+ updateWrapper.set(Standard::getState, 0);
+ standardMapper.update(new Standard(), updateWrapper);
+ list.add(standard.getId());
+ }
+ return list;
+ }
+
+ @Override
+ public Integer deleteStandardInformation(Integer standardsId) {
LambdaUpdateWrapper<Standard> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(Standard::getId, standardsId);
updateWrapper.set(Standard::getState, 0);
+ List<Integer> list = new ArrayList<>();
int isDeleteSuccess = standardMapper.update(new Standard(), updateWrapper);
if (isDeleteSuccess == 1){
- List<Integer> deleteSpecificationsId = specificationsService.SerialNumberIdDeleteSpecifications(null);
- if (!ObjectUtils.isEmpty(deleteSpecificationsId)){
- List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(deleteSpecificationsId);
- if (!ObjectUtils.isEmpty(deleteMaterialId)){
- productService.MaterialIdDeleteProduct(deleteMaterialId);
- }
+ list.add(standardsId);
+ List<Integer> idDeleteSpecifications = specificationsService.StandardIdDeleteSpecifications(list);
+ if (!ObjectUtils.isEmpty(idDeleteSpecifications)){
+ productService.deleteProductInformation(idDeleteSpecifications);
}
return 1;
}
return 0;
}
+
+ @Override
+ public Integer addStandardInformation(AddStandardDto addStandardDto) {
+ Standard standard = new Standard()
+ .setMaterialId(addStandardDto.getMaterialId())
+ .setName(addStandardDto.getStandardName());
+ int save = standardMapper.insert(standard);
+ if (save == 1){
+ Specifications specifications = new Specifications()
+ .setName(addStandardDto.getSpecificationsName())
+ .setStandardId(standard.getId());
+ boolean save1 = specificationsService.save(specifications);
+ if (save1)
+ return 1;
+ }
+ return 0;
+ }
}
diff --git a/standard-server/src/main/resources/mapper/MaterialMapper.xml b/standard-server/src/main/resources/mapper/MaterialMapper.xml
index e2cb725..d3281fd 100644
--- a/standard-server/src/main/resources/mapper/MaterialMapper.xml
+++ b/standard-server/src/main/resources/mapper/MaterialMapper.xml
@@ -6,6 +6,7 @@
select id, name
from material
where state = 1
+ and type = #{type}
order by create_time desc
limit #{num1},#{num2}
</select>
diff --git a/standard-server/src/main/resources/mapper/ProductMapper.xml b/standard-server/src/main/resources/mapper/ProductMapper.xml
index 4868b93..7596baa 100644
--- a/standard-server/src/main/resources/mapper/ProductMapper.xml
+++ b/standard-server/src/main/resources/mapper/ProductMapper.xml
@@ -2,4 +2,18 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yuanchu.limslaboratory.mapper.ProductMapper">
+ <select id="pageProductInformation" resultType="map">
+ SELECT COUNT(1) num, p.`father`
+ FROM product p
+ <if test="productCodeOrName != null and productCodeOrName != ''">
+ WHERE p.`father` = #{productCodeOrName}
+ </if>
+ GROUP BY p.`father`
+ </select>
+
+ <select id="selectOneChildren" resultType="map">
+ SELECT p.`id`, p.`unit`, p.`required`, p.`internal`
+ FROM product p
+ WHERE p.`father` = #{father}
+ </select>
</mapper>
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java b/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java
index 3b9df69..8291c99 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/service/UserService.java
@@ -7,13 +7,9 @@
import com.yuanchu.limslaboratory.vo.NewPersonnelVo;
import com.yuanchu.limslaboratory.vo.PagePersonnelVo;
import com.yuanchu.limslaboratory.vo.UpdatePersonnelVo;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.io.Serializable;
import java.util.List;
import java.util.Map;
-import java.util.Objects;
/**
* <p>
@@ -80,4 +76,9 @@
* @return
*/
List<User> selectUser();
+
+ /**
+ * 鑾峰彇鎵�鏈夌敤鎴风殑鍚嶇О涓嶪d
+ */
+ List<Map<String, Object>> getUserNameAndId();
}
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
index eb7b820..7b87483 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java
@@ -12,7 +12,6 @@
import com.yuanchu.limslaboratory.vo.NewPersonnelVo;
import com.yuanchu.limslaboratory.vo.PagePersonnelVo;
import com.yuanchu.limslaboratory.vo.UpdatePersonnelVo;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
@@ -80,6 +79,13 @@
}
@Override
+ public List<Map<String, Object>> getUserNameAndId() {
+ LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
+ wrapper.select(User::getId, User::getName);
+ return userMapper.selectMaps(wrapper);
+ }
+
+ @Override
public Map<String, String> selectUserByUserId(int userId) {
return userMapper.selectUserByUserId(userId);
}
--
Gitblit v1.9.3