From 964dd88319269c16d4ebb99007a954b51e625ef2 Mon Sep 17 00:00:00 2001
From: 16639036659 <577530412@qq.com>
Date: 星期二, 14 五月 2024 09:41:49 +0800
Subject: [PATCH] 旧数据增删改查,导入导出功能初步完成
---
src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentDeviceServiceImpl.java | 15
src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessQueryRespDTO.java | 52 +++
src/main/java/com/gkhy/labRiskManage/domain/basic/repository/jpa/OldRiskAssessRepository.java | 15
src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessImportReqBO.java | 35 ++
src/main/java/com/gkhy/labRiskManage/domain/basic/entity/OldRiskAssess.java | 55 +++
src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicRiskUnitServiceImpl.java | 13
src/main/java/com/gkhy/labRiskManage/api/controller/basic/OldRiskAssessController.java | 155 +++++++++
pom.xml | 26 +
src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/OldRiskAssessServiceImpl.java | 504 +++++++++++++++++++++++++++++
src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessQueryReqBO.java | 29 +
src/main/java/com/gkhy/labRiskManage/domain/riskReport/utils/SearchAuthUtils.java | 19 +
src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentStuffServiceImpl.java | 13
src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentPersonServiceImpl.java | 12
src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessExportRespDTO.java | 37 ++
src/main/java/com/gkhy/labRiskManage/domain/basic/service/OldRiskAssessService.java | 22 +
src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentSiteServiceImpl.java | 11
16 files changed, 1,001 insertions(+), 12 deletions(-)
diff --git a/pom.xml b/pom.xml
index e6d57e9..0f925bb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -122,6 +122,32 @@
<artifactId>lombok</artifactId>
</dependency>
+ <!--poi 03版本依赖-->
+ <dependency>
+ <groupId>org.apache.poi</groupId>
+ <artifactId>poi</artifactId>
+ <version>4.1.2</version>
+ </dependency>
+ <!--单元测试-->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.13.2</version>
+ <scope>test</scope>
+ </dependency>
+ <!--日期-->
+ <dependency>
+ <groupId>joda-time</groupId>
+ <artifactId>joda-time</artifactId>
+ <version>2.10.10</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.poi</groupId>
+ <artifactId>poi-ooxml</artifactId>
+ <version>4.1.2</version>
+ </dependency>
+
</dependencies>
<build>
diff --git a/src/main/java/com/gkhy/labRiskManage/api/controller/basic/OldRiskAssessController.java b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/OldRiskAssessController.java
new file mode 100644
index 0000000..52d5f77
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/OldRiskAssessController.java
@@ -0,0 +1,155 @@
+package com.gkhy.labRiskManage.api.controller.basic;
+
+import cn.hutool.json.JSONObject;
+import cn.hutool.poi.excel.ExcelUtil;
+import com.gkhy.labRiskManage.api.controller.basic.dto.repDto.BasicExperimentDeviceInsertReqBO;
+import com.gkhy.labRiskManage.api.controller.basic.dto.repDto.BasicExperimentDeviceUpdateReqBO;
+import com.gkhy.labRiskManage.api.controller.basic.dto.repDto.OldRiskAssessQueryReqBO;
+import com.gkhy.labRiskManage.api.controller.basic.dto.respDto.*;
+import com.gkhy.labRiskManage.api.controller.common.BaseController;
+import com.gkhy.labRiskManage.application.basic.dto.dto.*;
+import com.gkhy.labRiskManage.commons.domain.Result;
+import com.gkhy.labRiskManage.commons.domain.SearchResult;
+import com.gkhy.labRiskManage.commons.enums.ResultCode;
+import com.gkhy.labRiskManage.commons.exception.BusinessException;
+import com.gkhy.labRiskManage.commons.utils.BeanCopyUtils;
+import com.gkhy.labRiskManage.domain.basic.entity.OldRiskAssess;
+import com.gkhy.labRiskManage.domain.basic.service.OldRiskAssessService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import java.io.FileInputStream;
+
+/**
+ * 风险评价因子
+ */
+@RestController
+@RequestMapping("basic")
+public class OldRiskAssessController extends BaseController {
+
+ @Autowired
+ private OldRiskAssessService oldRiskAssessService;
+
+
+ @PostMapping("/insert/insertOldRiskAssess")
+ public Result insertOldRiskAssess(@RequestBody OldRiskAssess oldRiskAssess){
+
+ Result result = new Result();
+ result.setCode(ResultCode.OK);
+ result.setMsg("新增成功");
+
+ int insertResult = oldRiskAssessService.insertOldRiskAssess(getCurrentUserId(), oldRiskAssess);
+
+ result.setCount(insertResult);
+ if (insertResult < 1){
+ result.setCode(ResultCode.NOT_OK);
+ result.setMsg("新增失败");
+ }
+ result.setCount(insertResult);
+
+ return result;
+ }
+
+ @PostMapping("/select/getOldRiskAssessPage")
+ public SearchResult<OldRiskAssessQueryRespDTO> getOldRiskAssessPage(@RequestBody OldRiskAssessQueryReqBO queryReqDO){
+
+ SearchResult result = new SearchResult();
+ result.setCode(ResultCode.OK);
+ result.setMsg("查询成功");
+
+ SearchResult<OldRiskAssessQueryRespDTO> queryDTO = oldRiskAssessService.getOldRiskAssessPage(getCurrentUserId(), queryReqDO);
+
+ Object data = queryDTO.getData();
+
+ result.setPageIndex(queryDTO.getPageIndex());
+ result.setPageSize(queryDTO.getPageSize());
+ result.setTotal(queryDTO.getTotal());
+ result.setCount(queryDTO.getTotal().intValue());
+
+ result.setData(BeanCopyUtils.copyDeviceQueryRespList(data, BasicExperimentDeviceQueryRespDTO.class));
+
+ return result;
+ }
+
+ @PostMapping("/update/updateOldRiskAssess")
+ public Result updateOldRiskAssess(@RequestBody OldRiskAssess oldRiskAssess){
+
+ Result result = new Result();
+ result.setCode(ResultCode.OK);
+ result.setMsg("修改成功");
+
+ int updateResult = oldRiskAssessService.updateOldRiskAssess(getCurrentUserId(), oldRiskAssess);
+
+ if (updateResult < 1){
+ result.setCode(ResultCode.NOT_OK);
+ result.setMsg("修改失败");
+ }
+ result.setCount(updateResult);
+
+ return result;
+ }
+
+ @PostMapping("/delete/deleteOldRiskAssess")
+ public Result deleteOldRiskAssess(@RequestBody JSONObject jsonObject){
+
+ Result result = new Result();
+ result.setCode(ResultCode.OK);
+ result.setMsg("删除成功");
+
+ int deleteResult = oldRiskAssessService.deleteOldRiskAssess(getCurrentUserId(), jsonObject.getLong("id"));
+
+ if (deleteResult < 1){
+ result.setCode(ResultCode.NOT_OK);
+ result.setMsg("删除失败");
+ }
+ result.setCount(deleteResult);
+
+ return result;
+ }
+
+ @PostMapping("/insert/importOldRiskAssess")
+ public Result importOldRiskAssess(@RequestParam("file") MultipartFile file){
+
+ Result result = new Result();
+ result.setCode(ResultCode.OK);
+ result.setMsg("导入成功");
+
+ if (file.isEmpty()){
+ result.setCode(ResultCode.NOT_OK);
+ result.setMsg("文件为空");
+ return result;
+ }
+
+ int importResult = oldRiskAssessService.importOldRiskAssess(getCurrentUserId(), file);
+
+ if (importResult < 1){
+ result.setCode(ResultCode.NOT_OK);
+ result.setMsg("导入失败");
+ }
+ result.setCount(importResult);
+
+ return result;
+ }
+
+ @PostMapping("/select/exportOldRiskAssess")
+ public Result exportOldRiskAssess(@RequestBody OldRiskAssessQueryReqBO queryReqDO){
+
+ Result result = new Result();
+ result.setCode(ResultCode.OK);
+ result.setMsg("导出成功");
+
+
+ int importResult = oldRiskAssessService.exportOldRiskAssess(getCurrentUserId(), queryReqDO);
+
+ if (importResult < 1){
+ result.setCode(ResultCode.NOT_OK);
+ result.setMsg("导出失败");
+ }
+ result.setCount(importResult);
+
+ return result;
+ }
+
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessImportReqBO.java b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessImportReqBO.java
new file mode 100644
index 0000000..bd8a05b
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessImportReqBO.java
@@ -0,0 +1,35 @@
+package com.gkhy.labRiskManage.api.controller.basic.dto.repDto;
+
+import lombok.Data;
+
+@Data
+public class OldRiskAssessImportReqBO {
+
+ private String region;
+
+ private String potentialAccident;
+
+ private String dangerReason;
+
+ private String triggerFactor;
+
+ private String accidentResult;
+
+ private String l;
+
+ private String e;
+
+ private String c;
+
+ private String d;
+
+ private String dangerLevel;
+
+ private String controlMeasure;
+
+ private String controlLevel;
+
+ private Long createByUserId;
+
+ private Long updateByUserId;
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessQueryReqBO.java b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessQueryReqBO.java
new file mode 100644
index 0000000..98bd23c
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/repDto/OldRiskAssessQueryReqBO.java
@@ -0,0 +1,29 @@
+package com.gkhy.labRiskManage.api.controller.basic.dto.repDto;
+
+import lombok.Data;
+
+@Data
+public class OldRiskAssessQueryReqBO {
+
+ private Integer pageIndex;
+
+ private Integer pageSize;
+
+ private String region;
+
+ private String potentialAccident;
+
+ private String dangerReason;
+
+ private String triggerFactor;
+
+ private String accidentResult;
+
+ private String dangerLevel;
+
+ private String controlMeasure;
+
+ private String controlLevel;
+
+}
+
diff --git a/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessExportRespDTO.java b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessExportRespDTO.java
new file mode 100644
index 0000000..20655ac
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessExportRespDTO.java
@@ -0,0 +1,37 @@
+package com.gkhy.labRiskManage.api.controller.basic.dto.respDto;
+
+import lombok.Data;
+
+@Data
+public class OldRiskAssessExportRespDTO {
+
+ private int id;
+
+ private String region;
+
+ private String potentialAccident;
+
+ private String dangerReason;
+
+ private String triggerFactor;
+
+ private String accidentResult;
+
+ private String l;
+
+ private String e;
+
+ private String c;
+
+ private String d;
+
+ private String dangerLevel;
+
+ private String controlMeasure;
+
+ private String controlLevel;
+
+ private Long createByUserId;
+
+ private Long updateByUserId;
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessQueryRespDTO.java b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessQueryRespDTO.java
new file mode 100644
index 0000000..1a917e4
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/api/controller/basic/dto/respDto/OldRiskAssessQueryRespDTO.java
@@ -0,0 +1,52 @@
+package com.gkhy.labRiskManage.api.controller.basic.dto.respDto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+
+@Data
+public class OldRiskAssessQueryRespDTO implements Serializable {
+
+
+ private Long id;
+
+ private String region;
+
+ private String potentialAccident;
+
+ private String dangerReason;
+
+ private String triggerFactor;
+
+ private String accidentResult;
+
+ private String l;
+
+ private String e;
+
+ private String c;
+
+ private String d;
+
+ private String dangerLevel;
+
+ private String controlMeasure;
+
+ private String controlLevel;
+
+ private LocalDateTime createTime;
+
+ private Long createByUserId;
+
+ private String createByUserName;
+
+ private LocalDateTime updateTime;
+
+ private Long updateByUserId;
+
+ private String updateByUserName;
+
+}
+
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/entity/OldRiskAssess.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/entity/OldRiskAssess.java
new file mode 100644
index 0000000..f893f8a
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/entity/OldRiskAssess.java
@@ -0,0 +1,55 @@
+package com.gkhy.labRiskManage.domain.basic.entity;
+
+import lombok.Data;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+
+@Entity
+@Data
+@Table(name = "old_risk_assess")
+public class OldRiskAssess implements Serializable {
+ private static final long serialVersionUID = -55333598853895257L;
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Long id;
+ //区域
+ private String region;
+ //
+ private String potentialAccident;
+
+ private String dangerReason;
+
+ private String triggerFactor;
+
+ private String accidentResult;
+
+ private String l;
+
+ private String e;
+
+ private String c;
+
+ private String d;
+
+ private String dangerLevel;
+
+ private String controlMeasure;
+
+ private String controlLevel;
+
+ private Byte deleteStatus;
+
+ private LocalDateTime createTime;
+
+ private Long createByUserId;
+
+ private LocalDateTime updateTime;
+
+ private Long updateByUserId;
+
+}
+
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/repository/jpa/OldRiskAssessRepository.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/repository/jpa/OldRiskAssessRepository.java
new file mode 100644
index 0000000..6ce9c9b
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/repository/jpa/OldRiskAssessRepository.java
@@ -0,0 +1,15 @@
+package com.gkhy.labRiskManage.domain.basic.repository.jpa;
+
+import com.gkhy.labRiskManage.domain.basic.entity.OldRiskAssess;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface OldRiskAssessRepository extends JpaRepository<OldRiskAssess, Long>, JpaSpecificationExecutor<OldRiskAssess> {
+
+
+ @Query(value = "select t from OldRiskAssess t where t.id = :id and t.deleteStatus = 0")
+ OldRiskAssess getOldRiskAssessById(Long id);
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/OldRiskAssessService.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/OldRiskAssessService.java
new file mode 100644
index 0000000..75e5159
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/OldRiskAssessService.java
@@ -0,0 +1,22 @@
+package com.gkhy.labRiskManage.domain.basic.service;
+
+import com.gkhy.labRiskManage.api.controller.basic.dto.repDto.OldRiskAssessQueryReqBO;
+import com.gkhy.labRiskManage.api.controller.basic.dto.respDto.OldRiskAssessQueryRespDTO;
+import com.gkhy.labRiskManage.commons.domain.SearchResult;
+import com.gkhy.labRiskManage.domain.basic.entity.OldRiskAssess;
+import org.springframework.web.multipart.MultipartFile;
+
+public interface OldRiskAssessService {
+
+ SearchResult<OldRiskAssessQueryRespDTO> getOldRiskAssessPage(Long currentUserId, OldRiskAssessQueryReqBO queryReqDO);
+
+ int insertOldRiskAssess(Long currentUserId, OldRiskAssess oldRiskAssess);
+
+ int updateOldRiskAssess(Long currentUserId, OldRiskAssess oldRiskAssess);
+
+ int deleteOldRiskAssess(Long currentUserId, Long id);
+
+ int importOldRiskAssess(Long currentUserId, MultipartFile file);
+
+ int exportOldRiskAssess(Long currentUserId, OldRiskAssessQueryReqBO queryReqDO);
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentDeviceServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentDeviceServiceImpl.java
index d116619..9f3afb2 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentDeviceServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentDeviceServiceImpl.java
@@ -25,6 +25,7 @@
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentDeviceService;
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentDeviceTypeService;
import com.gkhy.labRiskManage.domain.riskReport.utils.GetRoleTagUtils;
+import com.gkhy.labRiskManage.domain.riskReport.utils.SearchAuthUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
@@ -175,7 +176,6 @@
UserInfoDomainDTO user = userDomainService.getUserById(currentUserId);
int roleTag = GetRoleTagUtils.GetRoleTagUtils(user);
-
//组装查询条件
Specification<BasicExperimentDevice> specification = new Specification<BasicExperimentDevice>() {
@Override
@@ -193,8 +193,10 @@
if (deviceQueryBO.getSpecialDevice() != null && !deviceQueryBO.getSpecialDevice().equals("")){
predicateList.add(criteriaBuilder.equal(root.get("specialDevice"), deviceQueryBO.getSpecialDevice()));
}
- if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
- predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ if (SearchAuthUtils.basicSearchAuth() == 1){
+ if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
+ predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ }
}
predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"),StatusEnum.DELETE_NOT.getCode()));
//返回组装的条件
@@ -363,12 +365,17 @@
int roleTag = GetRoleTagUtils.GetRoleTagUtils(user);
List<BasicExperimentDevice> deviceList = new ArrayList<>();
+ if (SearchAuthUtils.basicSearchAuth() == 0){
+ deviceList = basicExperimentDeviceRepository.listDevice();
+ return BeanCopyUtils.copyBeanList(deviceList, BasicExperimentDeviceAppListDTO.class);
+ }
+
+
if (roleTag != UserTagEnum.USER_TAG_0.getCode()){
deviceList = basicExperimentDeviceRepository.listDevice();
}else {
deviceList = basicExperimentDeviceRepository.listDeviceByUserId(currentUserId);
}
-
return BeanCopyUtils.copyBeanList(deviceList, BasicExperimentDeviceAppListDTO.class);
}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentPersonServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentPersonServiceImpl.java
index 2679d08..590a1e4 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentPersonServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentPersonServiceImpl.java
@@ -20,6 +20,7 @@
import com.gkhy.labRiskManage.domain.basic.repository.jpa.BasicExperimentPersonRepository;
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentPersonService;
import com.gkhy.labRiskManage.domain.riskReport.utils.GetRoleTagUtils;
+import com.gkhy.labRiskManage.domain.riskReport.utils.SearchAuthUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
@@ -157,8 +158,10 @@
if (queryPageParam.getTraining() != null && !queryPageParam.getTraining().equals("")){
predicateList.add(criteriaBuilder.equal(root.get("training"), queryPageParam.getTraining()));
}
- if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
- predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ if (SearchAuthUtils.basicSearchAuth() == 1){
+ if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
+ predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ }
}
predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"),StatusEnum.DELETE_NOT.getCode()));
return criteriaBuilder.and(predicateList.toArray(new Predicate[0]));
@@ -298,6 +301,11 @@
int roleTag = GetRoleTagUtils.GetRoleTagUtils(user);
List<BasicExperimentPerson> peopleList = new ArrayList<>();
+ if (SearchAuthUtils.basicSearchAuth() == 0){
+ peopleList = personRepository.listPerson(currentUserId);
+ return BeanCopyUtils.copyBeanList(peopleList, PersonListDTO.class);
+ }
+
if (roleTag != UserTagEnum.USER_TAG_0.getCode()){
peopleList = personRepository.listPerson(currentUserId);
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentSiteServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentSiteServiceImpl.java
index cf006ec..14ed85d 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentSiteServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentSiteServiceImpl.java
@@ -19,6 +19,7 @@
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentSiteService;
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentSiteTypeService;
import com.gkhy.labRiskManage.domain.riskReport.utils.GetRoleTagUtils;
+import com.gkhy.labRiskManage.domain.riskReport.utils.SearchAuthUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
@@ -168,8 +169,10 @@
if (queryParam.getRoom() != null && !queryParam.getRoom().equals("")){
predicateList.add(criteriaBuilder.equal(root.get("room"), queryParam.getRoom()));
}
- if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
- predicateList.add(criteriaBuilder.equal(root.get("createByUserId"),currentUserId));
+ if (SearchAuthUtils.basicSearchAuth() == 1){
+ if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
+ predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ }
}
predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"),StatusEnum.DELETE_NOT.getCode()));
return criteriaBuilder.and(predicateList.toArray(new Predicate[0]));
@@ -324,6 +327,10 @@
int roleTag = GetRoleTagUtils.GetRoleTagUtils(user);
List<BasicExperimentSite> basicExperimentSites = new ArrayList<>();
+ if (SearchAuthUtils.basicSearchAuth() == 0){
+ basicExperimentSites = siteRepository.listSite();
+ return BeanCopyUtils.copyBeanList(basicExperimentSites, SiteListDTO.class);
+ }
if (roleTag != UserTagEnum.USER_TAG_0.getCode()){
basicExperimentSites = siteRepository.listSite();
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentStuffServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentStuffServiceImpl.java
index 1ab9b47..310f26a 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentStuffServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentStuffServiceImpl.java
@@ -16,6 +16,7 @@
import com.gkhy.labRiskManage.domain.basic.repository.jpa.BasicExperimentStuffRepository;
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentStuffService;
import com.gkhy.labRiskManage.domain.riskReport.utils.GetRoleTagUtils;
+import com.gkhy.labRiskManage.domain.riskReport.utils.SearchAuthUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
@@ -142,8 +143,10 @@
predicateList.add(criteriaBuilder.equal(root.get("stuffType"), queryParam.getStuffType()));
}
- if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
- predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ if (SearchAuthUtils.basicSearchAuth() == 1){
+ if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
+ predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ }
}
predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"),StatusEnum.DELETE_NOT.getCode()));
return criteriaBuilder.and(predicateList.toArray(new Predicate[0]));
@@ -270,6 +273,12 @@
List<BasicExperimentStuff> listResult = new ArrayList<>();
+ if (SearchAuthUtils.basicSearchAuth() == 0){
+ listResult = stuffRepository.listStuff(currentUserId);
+ return BeanCopyUtils.copyBeanList(listResult, StuffListDTO.class);
+ }
+
+
if (roleTag != UserTagEnum.USER_TAG_0.getCode()){
listResult = stuffRepository.listStuff(currentUserId);
}else {
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicRiskUnitServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicRiskUnitServiceImpl.java
index c73e289..f85cce5 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicRiskUnitServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicRiskUnitServiceImpl.java
@@ -21,6 +21,7 @@
import com.gkhy.labRiskManage.domain.basic.service.BasicRiskUnitService;
import com.gkhy.labRiskManage.domain.riskReport.entity.RiskUnit;
import com.gkhy.labRiskManage.domain.riskReport.utils.GetRoleTagUtils;
+import com.gkhy.labRiskManage.domain.riskReport.utils.SearchAuthUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
@@ -142,8 +143,10 @@
if (queryParam.getRiskSourceType() != null && !queryParam.getRiskSourceType().equals("")){
predicateList.add(criteriaBuilder.equal(root.get("riskSourceType"), queryParam.getRiskSourceType()));
}
- if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
- predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ if (SearchAuthUtils.basicSearchAuth() == 1){
+ if (roleTag == UserTagEnum.USER_TAG_0.getCode()){
+ predicateList.add(criteriaBuilder.equal(root.get("createByUserId"), currentUserId));
+ }
}
predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"),StatusEnum.DELETE_NOT.getCode()));
return criteriaBuilder.and(predicateList.toArray(new Predicate[0]));
@@ -295,6 +298,12 @@
int roleTag = GetRoleTagUtils.GetRoleTagUtils(user);
List<BasicRiskUnit> listResult = new ArrayList<>();
+ if (SearchAuthUtils.basicSearchAuth() == 0){
+ listResult = riskUnitRepository.listRiskUnit();
+ return BeanCopyUtils.copyBeanList(listResult, RiskUnitListDTO.class);
+ }
+
+
if (roleTag != UserTagEnum.USER_TAG_0.getCode()){
listResult = riskUnitRepository.listRiskUnit();
}else {
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/OldRiskAssessServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/OldRiskAssessServiceImpl.java
new file mode 100644
index 0000000..517e209
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/OldRiskAssessServiceImpl.java
@@ -0,0 +1,504 @@
+package com.gkhy.labRiskManage.domain.basic.service.impl;
+
+import com.gkhy.labRiskManage.api.controller.basic.dto.repDto.OldRiskAssessQueryReqBO;
+import com.gkhy.labRiskManage.api.controller.basic.dto.respDto.OldRiskAssessQueryRespDTO;
+import com.gkhy.labRiskManage.commons.domain.SearchResult;
+import com.gkhy.labRiskManage.commons.enums.ResultCode;
+import com.gkhy.labRiskManage.commons.enums.StatusEnum;
+import com.gkhy.labRiskManage.commons.exception.BusinessException;
+import com.gkhy.labRiskManage.commons.utils.BeanCopyUtils;
+import com.gkhy.labRiskManage.domain.account.model.dto.UserInfoDomainDTO;
+import com.gkhy.labRiskManage.domain.account.service.UserDomainService;
+import com.gkhy.labRiskManage.domain.basic.entity.OldRiskAssess;
+import com.gkhy.labRiskManage.domain.basic.repository.jpa.OldRiskAssessRepository;
+import com.gkhy.labRiskManage.domain.basic.service.OldRiskAssessService;
+import org.apache.poi.hssf.usermodel.*;
+import org.apache.poi.ss.usermodel.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.data.domain.Sort;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.NumberFormat;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * 基础仪器设备表
+ */
+@Service
+public class OldRiskAssessServiceImpl implements OldRiskAssessService {
+
+ @Autowired
+ private UserDomainService userDomainService;
+
+ @Autowired
+ private OldRiskAssessRepository repository;
+
+
+
+ @Override
+ public int insertOldRiskAssess(Long currentUserId, OldRiskAssess oldRiskAssess) {
+
+ if (ObjectUtils.isEmpty(oldRiskAssess)){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"要保存的数据不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getRegion())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"区域不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getPotentialAccident())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"潜在事故不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getDangerReason())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"危险、危害因素不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getTriggerFactor())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"触发条件不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getAccidentResult())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"事故后果不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getL())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"L数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getD())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"D数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getC())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"C数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getE())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"E数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getDangerLevel())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"危险等级不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getControlMeasure())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"现有安全控制措施不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getControlLevel())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"管控层级不能为空");
+ }
+
+ LocalDateTime nowDate = LocalDateTime.now();
+ oldRiskAssess.setUpdateTime(nowDate);
+ oldRiskAssess.setCreateTime(nowDate);
+ oldRiskAssess.setCreateByUserId(currentUserId);
+ oldRiskAssess.setUpdateByUserId(currentUserId);
+ oldRiskAssess.setDeleteStatus((byte)0);
+
+ OldRiskAssess saveResult = repository.save(oldRiskAssess);
+ if (ObjectUtils.isEmpty(saveResult)){
+ return StatusEnum.FAIL.getCode();
+ }
+
+ return StatusEnum.SUCCESS.getCode();
+ }
+
+ @Override
+ public int updateOldRiskAssess(Long currentUserId, OldRiskAssess oldRiskAssess) {
+
+ OldRiskAssess oldRiskAssessById = repository.getOldRiskAssessById(oldRiskAssess.getId());
+ if (ObjectUtils.isEmpty(oldRiskAssessById)){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"要修改的数据不存在,或已被删除");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getRegion())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"区域不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getPotentialAccident())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"潜在事故不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getDangerReason())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"危险、危害因素不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getTriggerFactor())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"触发条件不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getAccidentResult())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"事故后果不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getL())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"L数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getD())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"D数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getC())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"C数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getE())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"E数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getDangerLevel())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"危险等级不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getControlMeasure())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"现有安全控制措施不能为空");
+ }
+ if (ObjectUtils.isEmpty(oldRiskAssess.getControlLevel())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"管控层级不能为空");
+ }
+
+ LocalDateTime nowDate = LocalDateTime.now();
+ oldRiskAssessById.setUpdateTime(nowDate);
+ oldRiskAssessById.setDeleteStatus((byte)0);
+ oldRiskAssessById.setUpdateByUserId(currentUserId);
+ oldRiskAssessById.setUpdateTime(nowDate);
+
+ oldRiskAssessById.setRegion(oldRiskAssess.getRegion());
+ oldRiskAssessById.setPotentialAccident(oldRiskAssess.getPotentialAccident());
+ oldRiskAssessById.setDangerReason(oldRiskAssess.getDangerReason());
+ oldRiskAssessById.setTriggerFactor(oldRiskAssess.getTriggerFactor());
+ oldRiskAssessById.setAccidentResult(oldRiskAssess.getAccidentResult());
+ oldRiskAssessById.setL(oldRiskAssess.getL());
+ oldRiskAssessById.setE(oldRiskAssess.getE());
+ oldRiskAssessById.setD(oldRiskAssess.getD());
+ oldRiskAssessById.setC(oldRiskAssess.getC());
+ oldRiskAssessById.setDangerLevel(oldRiskAssess.getDangerLevel());
+ oldRiskAssessById.setControlMeasure(oldRiskAssess.getControlMeasure());
+ oldRiskAssessById.setControlLevel(oldRiskAssess.getControlLevel());
+
+ OldRiskAssess saveResult = repository.save(oldRiskAssessById);
+ if (ObjectUtils.isEmpty(saveResult)){
+ return StatusEnum.FAIL.getCode();
+ }
+
+ return StatusEnum.SUCCESS.getCode();
+ }
+
+ @Override
+ public int deleteOldRiskAssess(Long currentUserId, Long id) {
+ if (currentUserId < 0){
+ throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"当前用户无效,请重新登陆");
+ }
+ if (ObjectUtils.isEmpty(id)){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR_NULL.getCode() ,"请选择正常的数据进行删除");
+ }
+ OldRiskAssess oldRiskAssessById = repository.getOldRiskAssessById(id);
+ if (ObjectUtils.isEmpty(oldRiskAssessById)){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"要删除的数据不存在,或已被删除");
+ }
+ UserInfoDomainDTO userInfoById = userDomainService.getUserInfoById(currentUserId);
+
+ LocalDateTime date = LocalDateTime.now();
+ //设置数据为删除
+ oldRiskAssessById.setDeleteStatus(StatusEnum.DELETED.getCode().byteValue());
+ oldRiskAssessById.setUpdateByUserId(userInfoById.getId());
+ oldRiskAssessById.setUpdateTime(date);
+
+ OldRiskAssess deleteResult = repository.save(oldRiskAssessById);
+
+ if (ObjectUtils.isEmpty(deleteResult)){
+ return StatusEnum.FAIL.getCode();
+ }
+
+ return StatusEnum.SUCCESS.getCode();
+ }
+
+ @Transactional
+ @Override
+ public int importOldRiskAssess(Long currentUserId, MultipartFile file) {
+
+ if (currentUserId < 0){
+ throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"当前用户无效,请重新登陆");
+ }
+ //根据路径获取这个操作excel的实例
+ HSSFWorkbook wb = null;
+ List<OldRiskAssess> list = new ArrayList<>();
+ try {
+ wb = new HSSFWorkbook(file.getInputStream());
+ //根据页面index 获取sheet页
+ HSSFSheet sheet = wb.getSheetAt(0);
+ HSSFRow row = null;
+ //循环sheet页中数据从第二行开始,第一行是标题
+
+ LocalDateTime nowDate = LocalDateTime.now();
+ for (int i = 1; i <= sheet.getPhysicalNumberOfRows()-1; i++) {
+ //获取每一行数据
+ row = sheet.getRow(i);
+ OldRiskAssess oldRiskAssess = new OldRiskAssess();
+ oldRiskAssess.setUpdateTime(nowDate);
+ oldRiskAssess.setCreateTime(nowDate);
+ oldRiskAssess.setCreateByUserId(currentUserId);
+ oldRiskAssess.setUpdateByUserId(currentUserId);
+ oldRiskAssess.setDeleteStatus((byte)0);
+
+ if (ObjectUtils.isEmpty(row.getCell(1))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() , "第"+ (i+1) +"行:区域不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(2))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:潜在事故不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(3))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:危险、危害因素不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(4))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:触发条件不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(5))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:事故后果不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(6))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:L数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(7))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:D数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(8))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:C数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(9))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:E数值不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(10))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:危险等级不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(11))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:现有安全控制措施不能为空");
+ }
+ if (ObjectUtils.isEmpty(row.getCell(12))){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"第"+ (i+1) +"行:管控层级不能为空");
+ }
+
+ oldRiskAssess.setRegion(row.getCell(1).toString());
+ oldRiskAssess.setPotentialAccident(row.getCell(2).toString());
+ oldRiskAssess.setDangerReason(row.getCell(3).toString());
+ oldRiskAssess.setTriggerFactor(row.getCell(4).toString());
+ oldRiskAssess.setAccidentResult(row.getCell(5).toString());
+ oldRiskAssess.setDangerLevel(row.getCell(10).toString());
+ oldRiskAssess.setControlMeasure(row.getCell(11).toString());
+ oldRiskAssess.setControlLevel(row.getCell(12).toString());
+
+ double cellL = row.getCell(6).getNumericCellValue();
+ double cellE = row.getCell(7).getNumericCellValue();
+ double cellC = row.getCell(8).getNumericCellValue();
+ double cellD = row.getCell(9).getNumericCellValue();
+ NumberFormat nf = NumberFormat.getInstance();
+ String L = nf.format(cellL);
+ String E = nf.format(cellE);
+ String C = nf.format(cellC);
+ String D = nf.format(cellD);
+// if (L.indexOf(",") >= 0) {
+// L = L.replace(",", "");
+// }
+ oldRiskAssess.setL(L);
+ oldRiskAssess.setE(E);
+ oldRiskAssess.setC(C);
+ oldRiskAssess.setD(D);
+
+ list.add(oldRiskAssess);
+ }
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+
+ for (OldRiskAssess oldRiskAssess : list) {
+ OldRiskAssess save = repository.save(oldRiskAssess);
+ if (ObjectUtils.isEmpty(save)){
+ throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"导入出错");
+ }
+ }
+
+ return StatusEnum.SUCCESS.getCode();
+ }
+
+ @Override
+ public int exportOldRiskAssess(Long currentUserId, OldRiskAssessQueryReqBO queryReqDO) {
+
+ //组装查询条件
+ Specification<OldRiskAssess> specification = new Specification<OldRiskAssess>() {
+ @Override
+ public Predicate toPredicate(Root<OldRiskAssess> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) {
+ List<Predicate> predicateList = new ArrayList<>();
+ if(queryReqDO.getRegion() != null && !queryReqDO.getRegion().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("region"),'%'+ queryReqDO.getRegion() +'%'));
+ }
+ if(queryReqDO.getPotentialAccident() != null && !queryReqDO.getPotentialAccident().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("potentialAccident"),'%'+queryReqDO.getPotentialAccident() +'%'));
+ }
+ if(queryReqDO.getDangerReason() != null && !queryReqDO.getDangerReason().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("dangerReason"),'%'+queryReqDO.getDangerReason() +'%'));
+ }
+ if(queryReqDO.getTriggerFactor() != null && !queryReqDO.getTriggerFactor().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("triggerFactor"),'%'+queryReqDO.getTriggerFactor() +'%'));
+ }
+ if(queryReqDO.getAccidentResult() != null && !queryReqDO.getAccidentResult().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("accidentResult"),'%'+queryReqDO.getAccidentResult() +'%'));
+ }
+ if(queryReqDO.getDangerLevel() != null && !queryReqDO.getDangerLevel().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("dangerLevel"),'%'+queryReqDO.getDangerLevel() +'%'));
+ }
+ if(queryReqDO.getControlMeasure() != null && !queryReqDO.getControlMeasure().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("controlMeasure"),'%'+queryReqDO.getControlMeasure() +'%'));
+ }
+ if(queryReqDO.getControlLevel() != null && !queryReqDO.getControlLevel().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("controlLevel"),'%'+queryReqDO.getControlLevel() +'%'));
+ }
+ predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"),StatusEnum.DELETE_NOT.getCode()));
+ //返回组装的条件
+ return criteriaBuilder.and(predicateList.toArray(predicateList.toArray(new Predicate[0])));
+ }
+ };
+ List<OldRiskAssess> list = repository.findAll(specification);
+
+ //创建工作薄
+ HSSFWorkbook workbook = new HSSFWorkbook();
+ //创建sheet
+ HSSFSheet sheet=workbook.createSheet("评分标准");
+ //创建第一行
+ HSSFRow header = sheet.createRow(0);
+ //创建单元格并插入表头
+ HSSFCell cell = null;
+ String[] infos={"编号","区域","潜在事故","危险、有害因素","触发条件","事故后果","L","E","C","D",
+ "危险等级","现有安全控制措施(工程技术、管理、培训教育、个体防护、应急处置)","管控层级(公司级、部门级、岗位级)"};
+ for(int i = 0; i < infos.length; i++){
+ cell = header.createCell(i);
+ cell.setCellValue(infos[i]);
+ }
+
+ //写入数据
+ for (int j = 1; j < list.size(); j++) {
+ OldRiskAssess oldRiskAssess = list.get(j - 1);
+ HSSFRow row = sheet.createRow(j);
+ cell= row.createCell(0);
+ cell.setCellValue(j);
+ cell = row.createCell(1);
+ cell.setCellValue(oldRiskAssess.getRegion());
+ cell = row.createCell(2);
+ cell.setCellValue(oldRiskAssess.getPotentialAccident());
+ cell = row.createCell(3);
+ cell.setCellValue(oldRiskAssess.getDangerReason());
+ cell = row.createCell(4);
+ cell.setCellValue(oldRiskAssess.getTriggerFactor());
+ cell = row.createCell(5);
+ cell.setCellValue(oldRiskAssess.getAccidentResult());
+ cell = row.createCell(6);
+ cell.setCellValue(oldRiskAssess.getL());
+ cell = row.createCell(7);
+ cell.setCellValue(oldRiskAssess.getE());
+ cell = row.createCell(8);
+ cell.setCellValue(oldRiskAssess.getC());
+ cell = row.createCell(9);
+ cell.setCellValue(oldRiskAssess.getD());
+ cell = row.createCell(10);
+ cell.setCellValue(oldRiskAssess.getDangerLevel());
+ cell = row.createCell(11);
+ cell.setCellValue(oldRiskAssess.getControlMeasure());
+ cell = row.createCell(12);
+ cell.setCellValue(oldRiskAssess.getControlLevel());
+ }
+
+ // 保存Excel文件
+ try{
+ // 获取桌面路径
+ String desktopPath = System.getProperty("user.home") + "/Desktop/";
+ // 导出文件名
+ String fileName = desktopPath + "评分标准.xlsx";
+ FileOutputStream fileOutputStream = new FileOutputStream(new File(fileName));
+ // 将工作簿写入文件
+ workbook.write(fileOutputStream);
+ workbook.close();
+ fileOutputStream.close();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }finally{
+ if (workbook != null){
+ try {
+ workbook.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ return StatusEnum.SUCCESS.getCode();
+ }
+
+ @Override
+ public SearchResult<OldRiskAssessQueryRespDTO> getOldRiskAssessPage(Long currentUserId, OldRiskAssessQueryReqBO queryReqDO) {
+
+ //校验参数
+ if (ObjectUtils.isEmpty(queryReqDO.getPageSize())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"分页信息不能为空");
+ }
+ if (ObjectUtils.isEmpty(queryReqDO.getPageIndex())){
+ throw new BusinessException(this.getClass(), ResultCode.PARAM_ERROR.getCode() ,"分页信息不能为空");
+ }
+ SearchResult searchResult = new SearchResult<>();
+
+ //组装查询条件
+ Specification<OldRiskAssess> specification = new Specification<OldRiskAssess>() {
+ @Override
+ public Predicate toPredicate(Root<OldRiskAssess> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) {
+ List<Predicate> predicateList = new ArrayList<>();
+ if(queryReqDO.getRegion() != null && !queryReqDO.getRegion().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("region"),'%'+ queryReqDO.getRegion() +'%'));
+ }
+ if(queryReqDO.getPotentialAccident() != null && !queryReqDO.getPotentialAccident().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("potentialAccident"),'%'+queryReqDO.getPotentialAccident() +'%'));
+ }
+ if(queryReqDO.getDangerReason() != null && !queryReqDO.getDangerReason().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("dangerReason"),'%'+queryReqDO.getDangerReason() +'%'));
+ }
+ if(queryReqDO.getTriggerFactor() != null && !queryReqDO.getTriggerFactor().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("triggerFactor"),'%'+queryReqDO.getTriggerFactor() +'%'));
+ }
+ if(queryReqDO.getAccidentResult() != null && !queryReqDO.getAccidentResult().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("accidentResult"),'%'+queryReqDO.getAccidentResult() +'%'));
+ }
+ if(queryReqDO.getDangerLevel() != null && !queryReqDO.getDangerLevel().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("dangerLevel"),'%'+queryReqDO.getDangerLevel() +'%'));
+ }
+ if(queryReqDO.getControlMeasure() != null && !queryReqDO.getControlMeasure().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("controlMeasure"),'%'+queryReqDO.getControlMeasure() +'%'));
+ }
+ if(queryReqDO.getControlLevel() != null && !queryReqDO.getControlLevel().equals("")){
+ predicateList.add(criteriaBuilder.like(root.get("controlLevel"),'%'+queryReqDO.getControlLevel() +'%'));
+ }
+ predicateList.add(criteriaBuilder.equal(root.get("deleteStatus"),StatusEnum.DELETE_NOT.getCode()));
+ //返回组装的条件
+ return criteriaBuilder.and(predicateList.toArray(predicateList.toArray(new Predicate[0])));
+ }
+ };
+
+ PageRequest page = PageRequest.of(queryReqDO.getPageIndex() - 1, queryReqDO.getPageSize(), Sort.Direction.DESC, "updateTime");
+
+ Page<OldRiskAssess> pageResult = repository.findAll(specification, page);
+ List<OldRiskAssessQueryRespDTO> oldRiskAssessQueryRespDTO = BeanCopyUtils.copyBeanList(pageResult.getContent(), OldRiskAssessQueryRespDTO.class);
+
+ List<UserInfoDomainDTO> userList = userDomainService.getUserList();
+ for (OldRiskAssessQueryRespDTO oldRiskAssess : oldRiskAssessQueryRespDTO) {
+ for (UserInfoDomainDTO userInfo : userList) {
+ if (userInfo.getId() == oldRiskAssess.getCreateByUserId()){
+ oldRiskAssess.setCreateByUserName(userInfo.getRealName());
+ }
+ if (userInfo.getId() == oldRiskAssess.getUpdateByUserId()){
+ oldRiskAssess.setUpdateByUserName(userInfo.getRealName());
+ }
+ }
+ }
+
+
+ searchResult.setTotal(pageResult.getTotalElements());
+ searchResult.setData(oldRiskAssessQueryRespDTO);
+
+ return searchResult;
+ }
+
+
+
+
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/riskReport/utils/SearchAuthUtils.java b/src/main/java/com/gkhy/labRiskManage/domain/riskReport/utils/SearchAuthUtils.java
new file mode 100644
index 0000000..d02daab
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/riskReport/utils/SearchAuthUtils.java
@@ -0,0 +1,19 @@
+package com.gkhy.labRiskManage.domain.riskReport.utils;
+
+import org.springframework.stereotype.Component;
+
+@Component
+public class SearchAuthUtils {
+
+ public static int basicSearchAuth(){
+
+ /**
+ * 0:基础信息查询不处理
+ * 1:基础信息查询,限制为创建人
+ * */
+ int authFlag = 0;
+
+ return authFlag;
+ }
+
+}
--
Gitblit v1.9.2