From 53e7dce8d55487cbac64e4374ec9aa1b52a6c6ed Mon Sep 17 00:00:00 2001
From: SZH <szh_hello@163.com>
Date: 星期四, 09 三月 2023 21:16:43 +0800
Subject: [PATCH] 解决npe问题
---
emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java | 48 ++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 44 insertions(+), 4 deletions(-)
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java
index cf32b34..6f4a884 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencyPlanServiceImpl.java
@@ -6,10 +6,12 @@
import com.gkhy.safePlatform.commons.enums.ResultCodes;
import com.gkhy.safePlatform.commons.query.PageQuery;
import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
+import com.gkhy.safePlatform.commons.utils.StringUtils;
import com.gkhy.safePlatform.commons.vo.ResultVO;
import com.gkhy.safePlatform.commons.vo.SearchResultVO;
import com.gkhy.safePlatform.emergency.entity.*;
import com.gkhy.safePlatform.emergency.enums.ApproveStatus;
+import com.gkhy.safePlatform.emergency.enums.EmergencyPlanTypeEnum;
import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes;
import com.gkhy.safePlatform.emergency.excepiton.EmergencyException;
import com.gkhy.safePlatform.emergency.model.dto.req.*;
@@ -70,11 +72,12 @@
//获取对应的审批记录
Integer type = ApproveStatus.EMERGENCY.getStatus();
- List<EmergencyWorkApproveInfoPageDO> emergencyWorkApproveInfoPageDOList = emergencyWorkApproveInfoService.selectWorkApproveByRelateTypeAndRelateId(type,emergencyPlanPageRespDTO.getId());
+ List<EmergencyWorkApproveInfoDetailDO> emergencyWorkApproveInfoDetailDOList = emergencyWorkApproveInfoService.selectWorkApproveByRelateTypeAndRelateId(type,emergencyPlanPageRespDTO.getId());
- if (!CollectionUtils.isEmpty(emergencyWorkApproveInfoPageDOList)) {
- emergencyPlanPageRespDTO.setApproveStatus(emergencyWorkApproveInfoPageDOList.get(0).getApproveStatus());
- emergencyPlanPageRespDTO.setApprovePersonId(emergencyWorkApproveInfoPageDOList.get(0).getApprovePersonId());
+ if (!CollectionUtils.isEmpty(emergencyWorkApproveInfoDetailDOList)) {
+ emergencyPlanPageRespDTO.setApproveId(emergencyWorkApproveInfoDetailDOList.get(0).getId());
+ emergencyPlanPageRespDTO.setApproveStatus(emergencyWorkApproveInfoDetailDOList.get(0).getApproveStatus());
+ emergencyPlanPageRespDTO.setApprovePersonId(emergencyWorkApproveInfoDetailDOList.get(0).getApprovePersonId());
// 审批中 判断审批人是否人与当前登录人
if (emergencyPlanPageRespDTO.getApproveStatus()!=null && emergencyPlanPageRespDTO.getApproveStatus()==2){
emergencyPlanPageRespDTO.setCheckApprove(emergencyPlanPageRespDTO.getApprovePersonId().equals(uid));
@@ -94,6 +97,13 @@
@Override
public ResultVO addEmergencyPlan(Long uid, EmergencyPlanReqDTO emergencyPlanReqDTO) {
+ // 验证必填
+ checkRequired(emergencyPlanReqDTO);
+ // 验证枚举
+ checkEnum(emergencyPlanReqDTO);
+
+
+
Date nowDate = new Date();
// 新增应急预案
EmergencyPlanInfo emergencyPlanInfo = new EmergencyPlanInfo();
@@ -101,6 +111,7 @@
emergencyPlanInfo.setDelFlag(false);
emergencyPlanInfo.setCreateUid(uid);
emergencyPlanInfo.setGmtCreate(nowDate);
+ emergencyPlanInfo.setAbolishStatus(false);
emergencyPlanInfoService.addEmergencyPlan(emergencyPlanInfo);
// 新增应急预案区域表
if (!CollectionUtils.isEmpty(emergencyPlanReqDTO.getAreaList())) {
@@ -230,6 +241,11 @@
@Override
public ResultVO updateEmergencyPlan(Long uid, EmergencyPlanReqDTO emergencyPlanReqDTO) {
+ // 验证必填
+ checkRequired(emergencyPlanReqDTO);
+ // 验证枚举
+ checkEnum(emergencyPlanReqDTO);
+
Date nowDate = new Date();
// 查询是否存在
EmergencyPlanInfoDetailDO emergencyPlanInfoDetailDO = emergencyPlanInfoService.selectEmergencyPlanById(emergencyPlanReqDTO.getId());
@@ -460,4 +476,28 @@
emergencyPlanTeamInfoService.deleteEmergencyPlanTeamByPlanId(PlanId);
}
}
+
+ /**
+ * 验证必填项
+ * @return
+ */
+ private void checkRequired(EmergencyPlanReqDTO emergencyPlanReqDTO) {
+ //名称
+ if (StringUtils.isBlank(emergencyPlanReqDTO.getName())) {
+ throw new EmergencyException(EmergencyResultCodes.PLAN_NAME_NULL);
+ }
+ }
+
+ /**
+ * 验证枚举
+ */
+ private void checkEnum(EmergencyPlanReqDTO emergencyPlanReqDTO){
+ if (EmergencyPlanTypeEnum.getByCode(emergencyPlanReqDTO.getType())==null){
+ throw new EmergencyException(EmergencyResultCodes.PLAN_ENUM_TYPE_NOT_EXIST);
+ }
+ if (EmergencyPlanTypeEnum.getByCode(emergencyPlanReqDTO.getLevel())==null){
+ throw new EmergencyException(EmergencyResultCodes.PLAN_ENUM_LEVEL_NOT_EXIST);
+ }
+ }
+
}
--
Gitblit v1.9.2