From dd2554435b9ced61e2a6a06627145fca3bf2685b Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期一, 04 九月 2023 17:17:17 +0800
Subject: [PATCH] 修改bug
---
inspection-server/src/main/resources/mapper/ReportMapper.xml | 2
laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml | 4
framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java | 7 +
inspection-server/src/main/resources/mapper/RawMaterialMapper.xml | 2
user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java | 2
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java | 32 +++++--
inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml | 8 +-
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java | 2
sys/src/main/resources/application-dev.yml | 14 +-
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java | 5 +
user-server/src/main/resources/mapper/RoleManangeMapper.xml | 4 +
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java | 2
standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Product.java | 15 +++
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/UserServiceImpl.java | 11 +-
inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java | 13 +-
framework/src/main/java/com/yuanchu/limslaboratory/exception/ApplicationException.java | 48 ++++++++++++
inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/RawMaterial.java | 3
user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java | 23 +++--
18 files changed, 149 insertions(+), 48 deletions(-)
diff --git a/framework/src/main/java/com/yuanchu/limslaboratory/exception/ApplicationException.java b/framework/src/main/java/com/yuanchu/limslaboratory/exception/ApplicationException.java
new file mode 100644
index 0000000..f4e7a52
--- /dev/null
+++ b/framework/src/main/java/com/yuanchu/limslaboratory/exception/ApplicationException.java
@@ -0,0 +1,48 @@
+package com.yuanchu.limslaboratory.exception;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/9/4
+ * 涓氬姟寮傚父
+ */
+public class ApplicationException extends RuntimeException{
+
+
+ /**
+ * 涓氬姟缂栫爜瀹氫箟
+ * @return 涓氬姟缂栫爜
+ */
+ private String code;
+
+ /**
+ * 涓氬姟淇℃伅瀹氫箟
+ * @return 涓氬姟淇℃伅瀹氫箟
+ */
+ private String msg;
+
+
+ public ApplicationException(String code, String msg) {
+ super(msg);
+ this.code = code;
+ this.msg = msg;
+ }
+
+ public ApplicationException() {
+ }
+
+ public String getCode() {
+ return code;
+ }
+
+ public void setCode(String code) {
+ this.code = code;
+ }
+
+ public String getMsg() {
+ return msg;
+ }
+
+ public void setMsg(String msg) {
+ this.msg = msg;
+ }
+}
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 c9465df..ce92794 100644
--- a/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
+++ b/framework/src/main/java/com/yuanchu/limslaboratory/handler/GlobalExceptionHandler.java
@@ -11,7 +11,11 @@
import org.springframework.beans.TypeMismatchException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.annotation.Value;
+import org.springframework.dao.DataAccessException;
+import org.springframework.dao.DataIntegrityViolationException;
import org.springframework.dao.DuplicateKeyException;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
import org.springframework.http.converter.HttpMessageNotReadableException;
import org.springframework.http.converter.HttpMessageNotWritableException;
import org.springframework.jdbc.BadSqlGrammarException;
@@ -25,6 +29,7 @@
import java.io.IOException;
import java.net.BindException;
import java.sql.SQLException;
+import java.sql.SQLIntegrityConstraintViolationException;
import java.util.List;
import java.util.stream.Collectors;
@@ -218,4 +223,6 @@
public Result<?> noAuth(AuthException e){
return Result.fail(Integer.valueOf(e.getCode()),e.getMsg());
}
+
+
}
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java
index df826f3..267e7df 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/ReportController.java
@@ -73,7 +73,7 @@
})
@PostMapping("/check")
@AuthHandler
- public Result check(@RequestHeader("X-Token") String token, Integer id, String result) throws Exception {
+ public Result check(@RequestHeader("X-Token") String token, Integer id, Integer result) throws Exception {
Object object = RedisUtil.get(token);
Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
MyUtil.PrintLog(unmarshal + "-------id" + id + "=========" + result);
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java
index e170b57..3058689 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/InspectionMaterial.java
@@ -57,6 +57,11 @@
private String supplier;
/**
+ * 鍨嬪彿id
+ */
+ private String specificationId;
+
+ /**
* 瑙勬牸鍚嶇О-鍨嬪彿鍚嶇О
**/
private String specifications;
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/RawMaterial.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/RawMaterial.java
index 0c4fbab..a7e53e7 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/RawMaterial.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/pojo/RawMaterial.java
@@ -40,6 +40,9 @@
@ApiModelProperty(value = "鏉愭枡鍚嶇О", required = true, example = "鍏夌氦")
private String materialName;
+ @ApiModelProperty(value = "瑙勬牸鍨嬪彿", required = true)
+ private Integer specificationsId;
+
@ApiModelProperty(value = "瑙勬牸鍨嬪彿", required = true, example = "GGXH2023")
private String specificationsModels;
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java
index 72f3bc7..1c6e3bf 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/ReportService.java
@@ -40,7 +40,7 @@
* @param id
* @return
*/
- String check(String name, Integer id, String result);
+ String check(String name, Integer id, Integer result);
/**
* 鍒犻櫎
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
index 96d46d3..08ce01b 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
@@ -9,6 +9,7 @@
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.limslaboratory.exception.ApplicationException;
import com.yuanchu.limslaboratory.mapper.*;
import com.yuanchu.limslaboratory.pojo.*;
import com.yuanchu.limslaboratory.pojo.vo.InsProductVo;
@@ -21,6 +22,7 @@
import javax.annotation.Resource;
import java.util.*;
+import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors;
/**
@@ -83,14 +85,13 @@
//鏂板妫�楠屽崟-->閫夋嫨妫�楠岄」鐩増鏈�
@Override
public List<Integer> chooseVer(String name, String mcode, String specifications) {
- Integer specificationId = getSpecificationId(name, mcode, specifications);
- return productMapper.chooseVersion(specificationId);
+ return productMapper.chooseVersion(Integer.parseInt(specifications));
}
//鏂板妫�楠屽崟-->閫夋嫨妫�楠岄」鐩増鏈�-->鏌ョ湅璇ョ増鏈笅鎴戜滑瑕佸仛鐨勯」鐩姹�
@Override
public List<Map<String, Object>> lookProByVer(String name, String mcode, String specifications, Integer version, String experiment) {
- Integer specificationId = getSpecificationId(name, mcode, specifications);
+ Integer specificationId = Integer.parseInt(specifications);
/*濡傛灉璇曢獙椤圭洰涓虹┖鍒欐槸鎴愬搧妫�楠屾垨鑰呭師鏉愭枡妫�楠屽垯鏄睍绀鸿鐗堟湰鐨勬墍鏈夐」鐩楠岃姹傚弬鏁�*/
if (ObjectUtils.isEmpty(experiment)) {
return productMapper.pageProductInformation(specificationId, version);
@@ -119,7 +120,7 @@
*/
@Override
@Transactional(rollbackFor = Exception.class)
- public Integer addInspect(Integer id, InspectionVo inspectionVo) {
+ public Integer addInspect(Integer id, InspectionVo inspectionVo) throws ApplicationException {
/*鏂板妫�楠岀敵璇疯〃*/
Inspection inspection = Inspection.builder()
.startTime(inspectionVo.getStartTime())
@@ -152,6 +153,7 @@
.num(inspectionVo.getNum())
.unit(inspectionVo.getUnit())
.supplier(inspectionVo.getSupplier())
+ .specificationId(inspectionVo.getSpecificationId())
.specifications(inspectionVo.getSpecifications())
.formTime(inspectionVo.getFormTime())
.inspectionId(inspection.getId())
@@ -160,12 +162,12 @@
inspectionMaterialMapper.insert(inspectionMaterial);
/*鏂板妫�楠岄」鐩〃*/
//鏍规嵁鏍峰搧鍚嶇О缂栧彿浠ュ強鍨嬪彿瑙勬牸鑾峰彇鍨嬪彿id
- Integer specificationId = null;
- if(ObjectUtils.isNotEmpty(inspectionVo.getSpecificationId())){
- specificationId =Integer.parseInt(inspectionVo.getSpecificationId());
- }else{
- specificationId=getSpecificationId(inspectionVo.getName(), inspectionVo.getMcode(), inspectionVo.getSpecifications());
- }
+ Integer specificationId = Integer.parseInt(inspectionVo.getSpecificationId());
+ //if(ObjectUtils.isNotEmpty(inspectionVo.getSpecificationId())){
+ // specificationId =Integer.parseInt(inspectionVo.getSpecificationId());
+ //}else{
+ // specificationId=getSpecificationId(inspectionVo.getName(), inspectionVo.getMcode(), inspectionVo.getSpecifications());
+ //}
//濡傛灉璇曢獙椤圭洰瀛楁涓嶄负绌哄垯鎸夎瀛楁鐨勯」鐩繘琛屽尮閰�
if (ObjectUtils.isNotEmpty(inspectionVo.getExperiment())) {
//鑾峰彇璇曢獙椤圭洰淇℃伅(缁撴瀯,瀵肩嚎澶栧緞)
@@ -207,6 +209,16 @@
productMapper.selectList(Wrappers.<Product>query()
.eq("specifications_id", specificationId)
.eq("version",inspectionVo.getVersion()));
+ productList.stream().forEach(p->{
+ String internal = Optional.ofNullable(p)
+ .map(Product::getInternal)
+ .orElse("绌�");
+ String required = Optional.ofNullable(p)
+ .map(Product::getRequired).orElse("绌�");
+ if(Objects.equals("绌�",internal)||Objects.equals(required,"绌�")) {
+ throw new ApplicationException("500","椤圭洰鐗堟湰涓嶅彲鐢�");
+ }
+ });
//灏嗘煡璇㈢殑椤圭洰淇℃伅鏋勫缓鎴愭楠岄」鐩�
ArrayList<InspectionProduct> list = new ArrayList<>();
for (Product product : productList) {
diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java
index f65dcc2..f11d042 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/ReportServiceImpl.java
@@ -54,16 +54,12 @@
//瀹℃牳
@Override
- public String check(String name, Integer id, String result) {
+ public String check(String name, Integer id, Integer result) {
Report report = new Report();
report.setId(id);
report.setApprover(name);
report.setCheckTime(new Date());
- if (result.equals("閫氳繃")){
- report.setStatus(2);
- }else if (result.equals("涓嶉�氳繃")){
- report.setStatus(3);
- }
+ report.setStatus(result);
reportMapper.updateById(report);
return "瀹℃牳鎴愬姛!";
}
@@ -79,7 +75,10 @@
@Override
public Map<String, Object> getReportContext(String code) {
- return reportMapper.getReportContext(code);
+ Map<String, Object> reportContext = reportMapper.getReportContext(code);
+ System.out.println("========================");
+ System.out.println(reportContext);
+ return reportContext;
}
@Override
diff --git a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
index a9a3d21..51f01da 100644
--- a/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
+++ b/inspection-server/src/main/resources/mapper/QualificationRateStatisticsMapper.xml
@@ -13,7 +13,7 @@
INNER JOIN inspection_material im ON i.id = im.inspection_id
where (i.state = 1 and im.state=1)
<if test="dto.beginDate!=null and dto.endDate!=null">
- DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+ and DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
AND #{dto.endDate}
AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
</if>
@@ -56,7 +56,7 @@
AND ipr.test_state is not null
AND ipr.test_state = 0
<if test="dto.beginDate!=null and dto.endDate!=null">
- DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+ and DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
AND #{dto.endDate}
AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
</if>
@@ -87,7 +87,7 @@
AND im.state = 1
AND ipr.state = 1
<if test="dto.beginDate!=null and dto.endDate!=null">
- DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+ and DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
AND #{dto.endDate}
AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
</if>
@@ -124,7 +124,7 @@
INNER JOIN inspection_material im ON i.id = im.inspection_id
where (i.state = 1 and im.state=1)
<if test="dto.beginDate!=null and dto.endDate!=null">
- DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
+ and DATE_FORMAT( i.end_time, '%Y-%m-%d' ) BETWEEN #{dto.beginDate}
AND #{dto.endDate}
AND DATE_FORMAT( i.start_time, '%Y-%m-%d' )>= #{dto.beginDate}
</if>
diff --git a/inspection-server/src/main/resources/mapper/RawMaterialMapper.xml b/inspection-server/src/main/resources/mapper/RawMaterialMapper.xml
index 7ca8063..5ea0eef 100644
--- a/inspection-server/src/main/resources/mapper/RawMaterialMapper.xml
+++ b/inspection-server/src/main/resources/mapper/RawMaterialMapper.xml
@@ -15,7 +15,7 @@
AND r.`type` = #{type}
</if>
<if test="createTime != null and createTime != ''">
- AND DATE_FORMAT(r.`create_time`,'%Y-%m-%d') = #{createTime}
+ AND DATE_FORMAT(r.`date_survey`,'%Y-%m-%d') = #{createTime}
</if>
</select>
<select id="selectRawmaAll" resultType="java.util.Map">
diff --git a/inspection-server/src/main/resources/mapper/ReportMapper.xml b/inspection-server/src/main/resources/mapper/ReportMapper.xml
index 7cd6cc6..25227c5 100644
--- a/inspection-server/src/main/resources/mapper/ReportMapper.xml
+++ b/inspection-server/src/main/resources/mapper/ReportMapper.xml
@@ -45,6 +45,7 @@
<result property="createTime" column="create_time"/>
<result property="checkTime" column="check_time"/>
<result property="inspectionStatus" column="inspection_status"/>
+ <result property="notes" column="notes"/>
<collection property="products" resultMap="products" javaType="java.util.List"/>
</resultMap>
@@ -55,6 +56,7 @@
<result property="required" column="required"/>
<result property="testValue" column="test_value"/>
<result property="testState" column="test_state"/>
+ <result property="ipName" column="ipName"/>
</resultMap>
<select id="getReportContext" resultMap="report">
diff --git a/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml b/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml
index 87445db..c87bc33 100644
--- a/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml
+++ b/laboratory-server/src/main/resources/mapper/MeteringPlanMapper.xml
@@ -26,8 +26,8 @@
<if test="dto.name!=null and dto.name!=''">
and i.`equipment_name` like concat('%',#{dto.name},'%')
</if>
- <if test="dto.name!=null and dto.name!=''">
- and i.measurement_unit like concat('%',#{dto.unit},'%')
+ <if test="dto.unit!=null and dto.unit!=''">
+ and m.measurement_unit like concat('%',#{dto.unit},'%')
</if>
</select>
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Product.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Product.java
index 7cc9533..cdb42b3 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Product.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/pojo/Product.java
@@ -66,5 +66,20 @@
@ApiModelProperty(value = "鍏宠仈 鍨嬪彿id", example = "1", hidden = true)
private Integer specifications_id;
+ public Product() {
+ }
+ public Product(Integer id, String name, String father, String unit, String required, String internal, Integer state, Date createTime, Date updateTime, Integer version, Integer specifications_id) {
+ this.id = id;
+ this.name = name;
+ this.father = father;
+ this.unit = unit;
+ this.required = required;
+ this.internal = internal;
+ this.state = state;
+ this.createTime = createTime;
+ this.updateTime = updateTime;
+ this.version = version;
+ this.specifications_id = specifications_id;
+ }
}
diff --git a/sys/src/main/resources/application-dev.yml b/sys/src/main/resources/application-dev.yml
index c1b729a..bb47ed2 100644
--- a/sys/src/main/resources/application-dev.yml
+++ b/sys/src/main/resources/application-dev.yml
@@ -40,12 +40,12 @@
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
- url: jdbc:mysql://192.168.110.209:3306/lims_laboratory?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
+# url: jdbc:mysql://192.168.110.209:3306/lims_laboratory?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
+# username: user
+# password: 123456
+ url: jdbc:mysql://192.168.73.113:3306/lims_laboratory?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
username: user
password: 123456
-# url: jdbc:mysql://localhost:3306/lims_laboratory?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8
-# username: root
-# password: 123456
druid:
# Druid鏁版嵁婧愰厤缃�
initialSize: 5 # 鍒濆杩炴帴鏁�
@@ -68,10 +68,10 @@
# redis鏁版嵁搴撶储寮�(榛樿涓�0)锛屾垜浠娇鐢ㄧ储寮曚负3鐨勬暟鎹簱锛岄伩鍏嶅拰鍏朵粬鏁版嵁搴撳啿绐�
database: 0
# redis鏈嶅姟鍣ㄥ湴鍧�锛堥粯璁や负localhost锛�
- host: 192.168.110.209
-# host: localhost
+# host: 192.168.110.209
+ host: 192.168.73.113
# redis绔彛锛堥粯璁や负6379锛�
- port: 6380
+ port: 6379
# redis璁块棶瀵嗙爜锛堥粯璁や负绌猴級
password: null
# redis杩炴帴瓒呮椂鏃堕棿锛堝崟浣嶆绉掞級
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java b/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java
index 25eba82..27b1efd 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/mapper/RoleManageMapper.java
@@ -32,6 +32,8 @@
int deleteRoleMenuByRoleId(Long id);
+ List<RoleMenu>getRoleMenuByRoleId(@Param("roleId")Long roleId);
+
RoleAndMenuDto selectAllRoleAndMenuByRoleId(Long roleId);
List<Map<String, Object>> getUserListRole();
diff --git a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
index 90affac..d352830 100644
--- a/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
+++ b/user-server/src/main/java/com/yuanchu/limslaboratory/service/impl/RoleManagerServiceImpl.java
@@ -3,7 +3,7 @@
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.exception.AuthException;
@@ -17,6 +17,7 @@
import com.yuanchu.limslaboratory.pojo.dto.RoleInfoDto;
import com.yuanchu.limslaboratory.pojo.dto.UpdateRoleMenuDto;
import com.yuanchu.limslaboratory.service.RoleManagerService;
+import com.yuanchu.limslaboratory.utils.ArrayListUtil;
import com.yuanchu.limslaboratory.utils.JsonUtil;
import com.yuanchu.limslaboratory.utils.MyUtil;
import lombok.extern.slf4j.Slf4j;
@@ -76,9 +77,7 @@
,createTime
));
});
- if(roleMenuList.size()<1){
- roleMenuList.add(new RoleMenu(null,nextId,39L,true,false,false,false,createTime));
- }
+ roleMenuList.add(new RoleMenu(null,nextId,39L,true,false,false,false,createTime));
//roleMenuAddList.forEach(System.out::println);
int i = roleManageMapper.insertBatchRoleMenu(roleMenuList);
return insert>0&&i>0;
@@ -127,16 +126,24 @@
.set(RoleInfo::getUpdateTime,DateUtil.toLocalDateTime(DateUtil.date()))
.eq(RoleInfo::getId,dto.getRoleId());
int update = roleManageMapper.update(null, updateWrapper);
- //鍒犻櫎role_menu淇℃伅
- int deleteRoleMenuByRoleId = roleManageMapper.deleteRoleMenuByRoleId(dto.getRoleId());
+ List<RoleMenu> roleMenuByRoleId = roleManageMapper.getRoleMenuByRoleId(dto.getRoleId());
+ if (roleMenuByRoleId.size()>1){
+ //鍒犻櫎role_menu淇℃伅
+ update = roleManageMapper.deleteRoleMenuByRoleId(dto.getRoleId());
+ }
//娣诲姞鏈�鏂伴�夋嫨銆�
dto.getMenuData().forEach(l->{
l.setRoleId(dto.getRoleId());
l.setCreateTime(DateUtil.toLocalDateTime(DateUtil.date()));
l.setUpdateTime(DateUtil.toLocalDateTime(DateUtil.date()));
});
- int insertBatchRoleMenu = roleManageMapper.insertBatchRoleMenu(dto.getMenuData());
- return update>0&&deleteRoleMenuByRoleId>0&&insertBatchRoleMenu>0;
+ List<RoleMenu> collect = dto.getMenuData().stream().filter(l -> l.getAdded() == false && l.getDeleted() == false && l.getSelected() == false && l.getUpdated() == false).collect(Collectors.toList());
+ List<RoleMenu> roleMenuList = ArrayListUtil.compareNotEqualListBySingleValue(dto.getMenuData(), collect);
+ if(roleMenuList.size()>0){
+ return update>0&&roleManageMapper.insertBatchRoleMenu(roleMenuList)>0;
+ }else {
+ return update>0;
+ }
}
@Override
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 ddf91db..47b0741 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,6 +12,7 @@
import com.yuanchu.limslaboratory.service.UserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
+import com.yuanchu.limslaboratory.utils.JsonUtil;
import com.yuanchu.limslaboratory.utils.MyUtil;
import com.yuanchu.limslaboratory.utils.RedisUtil;
import com.yuanchu.limslaboratory.pojo.vo.NewPersonnelVo;
@@ -121,13 +122,9 @@
@Override
public Integer addNewPersonnel(NewPersonnelVo newPersonnelVo, String enterpriseId) {
- try {
- User unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(newPersonnelVo), User.class);
- unmarshal.setEnterpriseId(Integer.valueOf(enterpriseId));
- return userMapper.insert(unmarshal);
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
+ User unmarshal = JsonUtil.jsonToPojo(JsonUtil.jsonToString(newPersonnelVo), User.class);
+ unmarshal.setEnterpriseId(Integer.valueOf(enterpriseId));
+ return userMapper.insert(unmarshal);
}
@Override
diff --git a/user-server/src/main/resources/mapper/RoleManangeMapper.xml b/user-server/src/main/resources/mapper/RoleManangeMapper.xml
index 267f62f..f11deab 100644
--- a/user-server/src/main/resources/mapper/RoleManangeMapper.xml
+++ b/user-server/src/main/resources/mapper/RoleManangeMapper.xml
@@ -34,6 +34,7 @@
delete
from role_menu
where role_id = #{id}
+ and menu_id !=39
</delete>
<select id="getAssertName" resultType="com.yuanchu.limslaboratory.pojo.RoleInfo">
select id
@@ -120,6 +121,9 @@
select name, url
from interface_info
</select>
+ <select id="getRoleMenuByRoleId" resultType="com.yuanchu.limslaboratory.pojo.RoleMenu">
+ select id from role_menu where role_id =#{roleId}
+ </select>
<resultMap id="roleAndMenuById" type="com.yuanchu.limslaboratory.pojo.dto.RoleAndMenuDto">
<result property="roleName" column="roleName"/>
<result property="createTime" column="createTime"/>
--
Gitblit v1.9.3