From 1e51af385909adcb72b97e96edcbbb0412fa7de4 Mon Sep 17 00:00:00 2001
From: 16639036659 <577530412@qq.com>
Date: 星期一, 28 八月 2023 09:08:45 +0800
Subject: [PATCH] 多次评定初版
---
src/main/java/com/gkhy/labRiskManage/application/experiment/dto/dto/ExperimentInfoAppQueryDTO.java | 2
src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentAssessLogServiceImpl.java | 26 ++++++++
src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/ReportRiskAssessInfoServiceImpl.java | 35 ++++++++++-
src/main/java/com/gkhy/labRiskManage/domain/basic/service/impl/BasicExperimentPersonServiceImpl.java | 3 +
src/main/java/com/gkhy/labRiskManage/domain/experiment/entity/ExperimentAssessLog.java | 44 ++++++++++++++
src/main/java/com/gkhy/labRiskManage/domain/experiment/model/dto/ExperimentInfoDTO.java | 2
src/main/java/com/gkhy/labRiskManage/domain/experiment/service/ExperimentAssessLogService.java | 12 ++++
src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/resp/ExperimentInfoRespDTO.java | 2
src/main/java/com/gkhy/labRiskManage/application/experiment/service/impl/ExperimentAppServiceImpl.java | 10 +++
src/main/java/com/gkhy/labRiskManage/domain/experiment/repository/jpa/ExperimentAssessLogRepository.java | 16 +++++
10 files changed, 147 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/resp/ExperimentInfoRespDTO.java b/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/resp/ExperimentInfoRespDTO.java
index c0f3f32..84ade6d 100644
--- a/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/resp/ExperimentInfoRespDTO.java
+++ b/src/main/java/com/gkhy/labRiskManage/api/controller/experiment/dto/resp/ExperimentInfoRespDTO.java
@@ -2,6 +2,7 @@
import com.gkhy.labRiskManage.api.controller.experiment.dto.req.ExperimentAndEmergencyInsertReqBO;
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
import lombok.Data;
import java.time.LocalDateTime;
@@ -213,5 +214,6 @@
private List<ExperimentAndEmergencyRespDTO> emergencyList;
+ private List<ExperimentAssessLog> experimentAssessLogs;
}
diff --git a/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/dto/ExperimentInfoAppQueryDTO.java b/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/dto/ExperimentInfoAppQueryDTO.java
index 8988f4c..af88864 100644
--- a/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/dto/ExperimentInfoAppQueryDTO.java
+++ b/src/main/java/com/gkhy/labRiskManage/application/experiment/dto/dto/ExperimentInfoAppQueryDTO.java
@@ -2,6 +2,7 @@
import com.gkhy.labRiskManage.api.controller.experiment.dto.resp.ExperimentAndEmergencyRespDTO;
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
import lombok.Data;
import java.time.LocalDateTime;
@@ -214,6 +215,7 @@
*/
private List<ExperimentAndEmergencyRespDTO> emergencies;
+ private List<ExperimentAssessLog> experimentAssessLogs;
}
diff --git a/src/main/java/com/gkhy/labRiskManage/application/experiment/service/impl/ExperimentAppServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/application/experiment/service/impl/ExperimentAppServiceImpl.java
index 93de098..7d5b191 100644
--- a/src/main/java/com/gkhy/labRiskManage/application/experiment/service/impl/ExperimentAppServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/application/experiment/service/impl/ExperimentAppServiceImpl.java
@@ -13,6 +13,7 @@
import com.gkhy.labRiskManage.commons.exception.BusinessException;
import com.gkhy.labRiskManage.commons.model.PageQuery;
import com.gkhy.labRiskManage.commons.utils.BeanCopyUtils;
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentInfo;
import com.gkhy.labRiskManage.domain.experiment.enums.ExperimentStatusEnum;
import com.gkhy.labRiskManage.domain.experiment.enums.ExperimentTagEnum;
@@ -53,7 +54,8 @@
private ExperimentAndEmergencyService experimentAndEmergencyService;
@Autowired
private ExperimentAppConverter experimentAppConverter;
-
+ @Autowired
+ private ExperimentAssessLogService experimentAssessLogService;
@Transactional
@Override
public int save(Long currentUserId, ExperimentInsertReqBO experimentInsertReqBO) {
@@ -174,6 +176,12 @@
BeanUtils.copyProperties(searchResult,result);
}
List<ExperimentInfoDTO> experimentInfoDTOS = (List<ExperimentInfoDTO>)searchResult.getData();
+ for (ExperimentInfoDTO experimentInfo : experimentInfoDTOS) {
+ List<ExperimentAssessLog> assessLogs = experimentAssessLogService.getAssessLogs(experimentInfo.getExperimentCode());
+ if (assessLogs.size() > 0){
+ experimentInfo.setExperimentAssessLogs(assessLogs);
+ }
+ }
result.setData(getExperimentInfoAppQueryDTO(experimentInfoDTOS));
//获取分页数据
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 b50d9f2..2679d08 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
@@ -168,6 +168,9 @@
Page<BasicExperimentPerson> pageResult = personRepository.findAll(specification, pageParam);
List<PersonQueryDTO> personQueryDTOS = BeanCopyUtils.copyBeanList(pageResult.getContent(), PersonQueryDTO.class);
+// BasicExperimentPerson person = new BasicExperimentPerson();
+// person.set
+// personQueryDTOS.add()
List<UserInfoDomainDTO> userList = userDomainService.getUserList();
for (PersonQueryDTO personQueryDTO : personQueryDTOS) {
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/experiment/entity/ExperimentAssessLog.java b/src/main/java/com/gkhy/labRiskManage/domain/experiment/entity/ExperimentAssessLog.java
new file mode 100644
index 0000000..0e00ba6
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/experiment/entity/ExperimentAssessLog.java
@@ -0,0 +1,44 @@
+package com.gkhy.labRiskManage.domain.experiment.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.data.jpa.domain.support.AuditingEntityListener;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * 实验与设备
+ */
+@Entity
+@Table(name = "experiment_assess_log")
+@Data
+public class ExperimentAssessLog implements Serializable {
+ private static final long serialVersionUID = -74398808654954420L;
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Long id;
+ /**
+ * 实验Code
+ */
+ @Column(name = "experiment_code")
+ private String experimentCode;
+
+ /**
+ * 评价时间
+ */
+ @JsonFormat
+ private LocalDateTime assessTime;
+ /**
+ * 评估结果:2-通过;3-不通过
+ */
+ private Byte assessResult;
+ /**
+ * 评估人
+ */
+ private String assessUser;
+
+}
+
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/experiment/model/dto/ExperimentInfoDTO.java b/src/main/java/com/gkhy/labRiskManage/domain/experiment/model/dto/ExperimentInfoDTO.java
index a6c8a09..3ab6aa8 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/experiment/model/dto/ExperimentInfoDTO.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/experiment/model/dto/ExperimentInfoDTO.java
@@ -1,5 +1,6 @@
package com.gkhy.labRiskManage.domain.experiment.model.dto;
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
import lombok.Data;
import javax.persistence.*;
@@ -208,5 +209,6 @@
private List<ExperimentAndEmergencyDTO> emergencies;
+ private List<ExperimentAssessLog> experimentAssessLogs;
}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/experiment/repository/jpa/ExperimentAssessLogRepository.java b/src/main/java/com/gkhy/labRiskManage/domain/experiment/repository/jpa/ExperimentAssessLogRepository.java
new file mode 100644
index 0000000..9c776fc
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/experiment/repository/jpa/ExperimentAssessLogRepository.java
@@ -0,0 +1,16 @@
+package com.gkhy.labRiskManage.domain.experiment.repository.jpa;
+
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository
+public interface ExperimentAssessLogRepository extends JpaRepository<ExperimentAssessLog, Long> {
+
+ @Query(value = "select * from experiment_assess_log e where e.experiment_code = :experimentCode ",nativeQuery = true)
+ List<ExperimentAssessLog> getAssessLogs(String experimentCode);
+
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/ExperimentAssessLogService.java b/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/ExperimentAssessLogService.java
new file mode 100644
index 0000000..7648f97
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/ExperimentAssessLogService.java
@@ -0,0 +1,12 @@
+package com.gkhy.labRiskManage.domain.experiment.service;
+
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
+
+import java.util.List;
+
+public interface ExperimentAssessLogService {
+
+ ExperimentAssessLog saveExperimentAssessLog(ExperimentAssessLog experimentAssessLog);
+
+ List<ExperimentAssessLog> getAssessLogs(String experimentCode);
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentAssessLogServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentAssessLogServiceImpl.java
new file mode 100644
index 0000000..47099c0
--- /dev/null
+++ b/src/main/java/com/gkhy/labRiskManage/domain/experiment/service/impl/ExperimentAssessLogServiceImpl.java
@@ -0,0 +1,26 @@
+package com.gkhy.labRiskManage.domain.experiment.service.impl;
+
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
+import com.gkhy.labRiskManage.domain.experiment.repository.jpa.ExperimentAssessLogRepository;
+import com.gkhy.labRiskManage.domain.experiment.service.ExperimentAssessLogService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class ExperimentAssessLogServiceImpl implements ExperimentAssessLogService {
+
+ @Autowired
+ private ExperimentAssessLogRepository experimentAssessLogRepository;
+
+ @Override
+ public ExperimentAssessLog saveExperimentAssessLog(ExperimentAssessLog experimentAssessLog) {
+ return experimentAssessLogRepository.save(experimentAssessLog);
+ }
+
+ @Override
+ public List<ExperimentAssessLog> getAssessLogs(String experimentCode) {
+ return experimentAssessLogRepository.getAssessLogs(experimentCode);
+ }
+}
diff --git a/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/ReportRiskAssessInfoServiceImpl.java b/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/ReportRiskAssessInfoServiceImpl.java
index 4d42004..2c2aa9e 100644
--- a/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/ReportRiskAssessInfoServiceImpl.java
+++ b/src/main/java/com/gkhy/labRiskManage/domain/riskReport/service/impl/ReportRiskAssessInfoServiceImpl.java
@@ -19,17 +19,18 @@
import com.gkhy.labRiskManage.domain.account.model.dto.UserInfoDomainDTO;
import com.gkhy.labRiskManage.domain.account.service.UserDomainService;
import com.gkhy.labRiskManage.domain.basic.entity.BasicRiskUnitType;
-import com.gkhy.labRiskManage.domain.basic.model.dto.PersonQueryDTO;
import com.gkhy.labRiskManage.domain.basic.model.dto.SiteQueryDTO;
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentPersonService;
import com.gkhy.labRiskManage.domain.basic.service.BasicExperimentSiteService;
import com.gkhy.labRiskManage.domain.basic.service.BasicRiskUnitTypeService;
import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAndSite;
+import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentAssessLog;
import com.gkhy.labRiskManage.domain.experiment.entity.ExperimentInfo;
import com.gkhy.labRiskManage.domain.experiment.enums.ExperimentApprovalStatusEnum;
import com.gkhy.labRiskManage.domain.experiment.enums.ExperimentRectifyStatusEnum;
import com.gkhy.labRiskManage.domain.experiment.model.dto.ExperimentInfoDTO;
import com.gkhy.labRiskManage.domain.experiment.service.ExperimentAndSiteService;
+import com.gkhy.labRiskManage.domain.experiment.service.ExperimentAssessLogService;
import com.gkhy.labRiskManage.domain.experiment.service.ExperimentInfoService;
import com.gkhy.labRiskManage.domain.riskReport.entity.*;
import com.gkhy.labRiskManage.domain.riskReport.model.bo.ReportQueryBO;
@@ -39,7 +40,6 @@
import com.gkhy.labRiskManage.domain.riskReport.service.*;
import com.gkhy.labRiskManage.domain.riskReport.utils.GetRoleTagUtils;
import com.gkhy.labRiskManage.domain.riskReport.utils.RiskSourceTypeUtils;
-import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
@@ -53,10 +53,8 @@
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;
-import java.nio.charset.StandardCharsets;
import java.time.LocalDateTime;
import java.util.ArrayList;
-import java.util.Date;
import java.util.List;
@@ -91,6 +89,8 @@
private ReportExperimentRiskSourceTypeService reportSourceTypeService;
@Autowired
private ReportExperimentRiskSourceService reportSourceService;
+ @Autowired
+ private ExperimentAssessLogService experimentAssessLogService;
@Autowired
private UserDomainService userDomainService;
@@ -820,6 +820,19 @@
if (ObjectUtils.isEmpty(experimentInfo)){
throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"实验信息状态修改失败");
}
+
+ //添加评估记录
+ ExperimentAssessLog experimentAssessLog = new ExperimentAssessLog();
+ experimentAssessLog.setExperimentCode(experimentInfo.getExperimentCode());
+ experimentAssessLog.setAssessTime(date);
+ experimentAssessLog.setAssessUser(user.getRealName());
+ experimentAssessLog.setAssessResult(StatusEnum.APPROVED_PASS.getCode().byteValue());
+ ExperimentAssessLog experimentAssessLogResult = experimentAssessLogService.saveExperimentAssessLog(experimentAssessLog);
+ if (ObjectUtils.isEmpty(experimentAssessLogResult)){
+ throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"实验信息评估记录写入失败");
+ }
+ }else {
+ throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"无操作权限");
}
}
@@ -843,6 +856,8 @@
if (ObjectUtils.isEmpty(assessPerson)){
throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"审核信息保存失败");
}
+ }else {
+ throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"无操作权限");
}
//修改报告状态
reportById.setApprovePlanStatus(StatusEnum.REPORT_NOT_APPROVED.getCode().byteValue());
@@ -860,6 +875,18 @@
if (ObjectUtils.isEmpty(experimentInfo)){
throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"实验信息状态修改失败");
}
+
+
+ //添加评估记录
+ ExperimentAssessLog experimentAssessLog = new ExperimentAssessLog();
+ experimentAssessLog.setExperimentCode(experimentInfo.getExperimentCode());
+ experimentAssessLog.setAssessTime(date);
+ experimentAssessLog.setAssessUser(user.getRealName());
+ experimentAssessLog.setAssessResult(StatusEnum.APPROVED_NOT_PASS.getCode().byteValue());
+ ExperimentAssessLog experimentAssessLogResult = experimentAssessLogService.saveExperimentAssessLog(experimentAssessLog);
+ if (ObjectUtils.isEmpty(experimentAssessLogResult)){
+ throw new BusinessException(this.getClass(), ResultCode.BUSINESS_ERROR_NOT_ALLOWED.getCode() ,"实验信息评估记录写入失败");
+ }
}
return StatusEnum.SUCCESS.getCode();
--
Gitblit v1.9.2