From fe609c99cd295ac64aa76e31eee4ae21bb167302 Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期四, 30 九月 2021 09:11:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/test' into test

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwPatrolRecordServiceImpl.java |  116 ++++++++++++++++++++++++++++++++++------------------------
 1 files changed, 68 insertions(+), 48 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwPatrolRecordServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwPatrolRecordServiceImpl.java
index 0b63600..f3664e9 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwPatrolRecordServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwPatrolRecordServiceImpl.java
@@ -1,7 +1,9 @@
 package com.panzhihua.service_community.service.impl;
 
 import java.text.SimpleDateFormat;
+import java.util.Arrays;
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 import javax.annotation.Resource;
@@ -33,6 +35,9 @@
 import com.panzhihua.service_community.service.ComSwPatrolRecordService;
 
 import lombok.extern.slf4j.Slf4j;
+
+import static java.util.Objects.isNull;
+import static org.apache.commons.lang3.StringUtils.isBlank;
 
 /**
  * @auther txb
@@ -89,20 +94,16 @@
 
     @Override
     public R addPatrolRecord(ComSwPatrolRecordAddDTO comSwPatrolRecordAddDTO) {
-        // 巡查记录
-        ComSwPatrolRecordDO comSwPatrolRecordDO = new ComSwPatrolRecordDO();
-        BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwPatrolRecordDO);
-        Long patrolRecordId = Snowflake.getId();
-        comSwPatrolRecordDO.setId(patrolRecordId);
-        if(StringUtils.isEmpty(comSwPatrolRecordAddDTO.getPatrolTime())){
-            comSwPatrolRecordDO.setPatrolTime(new Date());
-        }else {
-            comSwPatrolRecordDO.setPatrolTime(
-                    DateUtils.stringToDate(comSwPatrolRecordAddDTO.getPatrolTime(), DateUtils.yyyyMMdd_format));
+        String patrolTypeString = comSwPatrolRecordAddDTO.getPatrolType();
+        Integer isHiddenDanger = comSwPatrolRecordAddDTO.getIsHiddenDanger();
+        String hiddenDangerTypeString = comSwPatrolRecordAddDTO.getHiddenDangerType();
+        if (isBlank(patrolTypeString)) {
+            return R.fail("巡查类型不能为空");
         }
-//        comSwPatrolRecordDO.setPatrolTime(new Date());
-        comSwPatrolRecordDO.setSuccessionTime(
-            DateUtils.stringToDate(comSwPatrolRecordAddDTO.getSuccessionTime(), DateUtils.yyyyMMdd_format));
+        if (isNull(isHiddenDanger) || (isHiddenDanger.intValue() == ComSwPatrolRecordAddDTO.isOk.yes
+                && isBlank(hiddenDangerTypeString))) {
+            return R.fail("隐患类型不能为空");
+        }
         StringBuilder nameString = new StringBuilder();
         StringBuilder phoneString = new StringBuilder();
         // 根据传递的巡查人员id查询巡查人员的名字和电话
@@ -120,48 +121,67 @@
                 }
             }
         }
-        comSwPatrolRecordDO.setPersonName(nameString.toString());
-        comSwPatrolRecordDO.setPersonPhone(phoneString.toString());
-        comSwPatrolRecordDAO.insert(comSwPatrolRecordDO);
-        // 巡查记录和关联报告信息
-        ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = new ComSwPatrolRecordReportDO();
-        Long patrolRecordReport = Snowflake.getId();
-        comSwPatrolRecordReportDO.setId(patrolRecordReport);
-        comSwPatrolRecordReportDO.setPatrolRecordId(patrolRecordId);
         if (StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getDangerDescription())) {
             comSwPatrolRecordAddDTO.setDagerDescription(comSwPatrolRecordAddDTO.getDangerDescription());
         }
         if (StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getDagerName())) {
             comSwPatrolRecordAddDTO.setDangerName(comSwPatrolRecordAddDTO.getDagerName());
         }
-        if (comSwPatrolRecordAddDTO.getIsHiddenDanger().intValue() == ComSwPatrolRecordAddDTO.isOk.yes) {
-            // 如果存在安全隐患,自动生成安全隐患报告
-            ComSwDangerReportDO comSwDangerReportDO = new ComSwDangerReportDO();
-            Long dangerReportId = Snowflake.getId();
-            comSwDangerReportDO.setId(dangerReportId);
-            comSwPatrolRecordReportDO.setReportId(dangerReportId);
-            comSwDangerReportDO.setDangerType(comSwPatrolRecordAddDTO.getPatrolType());
-            if (comSwPatrolRecordAddDTO.getIsRectifyImmediately().intValue() == ComSwPatrolRecordAddDTO.isOk.yes
-                && StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getTakeSteps())) {
-                comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.YZG.getCode()));
-                comSwDangerReportDO.setRectifyTime(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
-            } else {
-                comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.DCL.getCode()));
+        List<String> patrolTypes = Arrays.asList(patrolTypeString.split(","));
+        patrolTypes.forEach(patrolType -> {
+            // 巡查记录
+            ComSwPatrolRecordDO comSwPatrolRecordDO = new ComSwPatrolRecordDO();
+            BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwPatrolRecordDO);
+            Long patrolRecordId = Snowflake.getId();
+            comSwPatrolRecordDO.setId(patrolRecordId);
+            comSwPatrolRecordDO.setPatrolType(patrolType);
+            if(StringUtils.isEmpty(comSwPatrolRecordAddDTO.getPatrolTime())){
+                comSwPatrolRecordDO.setPatrolTime(new Date());
+            }else {
+                comSwPatrolRecordDO.setPatrolTime(
+                        DateUtils.stringToDate(comSwPatrolRecordAddDTO.getPatrolTime(), DateUtils.yyyyMMdd_format));
             }
-            BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwDangerReportDO);
-            comSwDangerReportDO.setPersonName(comSwPatrolRecordAddDTO.getDPersonName());
-            comSwDangerReportDO.setPersonPhone(comSwPatrolRecordAddDTO.getDPersonPhone());
-            comSwDangerReportDAO.insert(comSwDangerReportDO);
-        } else {
-            // 不存在安全隐患,生成安全工作记录
-            ComSwSafetyWorkRecordDO comSwSafetyWorkRecordDO = new ComSwSafetyWorkRecordDO();
-            BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwSafetyWorkRecordDO);
-            Long safetyWorkRecord = Snowflake.getId();
-            comSwSafetyWorkRecordDO.setId(safetyWorkRecord);
-            comSwPatrolRecordReportDO.setReportId(safetyWorkRecord);
-            comSwSafetyWorkRecordDAO.insert(comSwSafetyWorkRecordDO);
-        }
-        comSwPatrolRecordReportDAO.insert(comSwPatrolRecordReportDO);
+//        comSwPatrolRecordDO.setPatrolTime(new Date());
+            comSwPatrolRecordDO.setSuccessionTime(
+                    DateUtils.stringToDate(comSwPatrolRecordAddDTO.getSuccessionTime(), DateUtils.yyyyMMdd_format));
+            comSwPatrolRecordDO.setPersonName(nameString.toString());
+            comSwPatrolRecordDO.setPersonPhone(phoneString.toString());
+            comSwPatrolRecordDAO.insert(comSwPatrolRecordDO);
+            // 巡查记录和关联报告信息
+            ComSwPatrolRecordReportDO comSwPatrolRecordReportDO = new ComSwPatrolRecordReportDO();
+            Long patrolRecordReport = Snowflake.getId();
+            comSwPatrolRecordReportDO.setId(patrolRecordReport);
+            comSwPatrolRecordReportDO.setPatrolRecordId(patrolRecordId);
+
+            if (isHiddenDanger.intValue() == ComSwPatrolRecordAddDTO.isOk.yes && hiddenDangerTypeString.contains(patrolType)) {
+                // 如果存在安全隐患,自动生成安全隐患报告
+                ComSwDangerReportDO comSwDangerReportDO = new ComSwDangerReportDO();
+                Long dangerReportId = Snowflake.getId();
+                comSwDangerReportDO.setId(dangerReportId);
+                comSwPatrolRecordReportDO.setReportId(dangerReportId);
+                comSwDangerReportDO.setDangerType(patrolType);
+                if (comSwPatrolRecordAddDTO.getIsRectifyImmediately().intValue() == ComSwPatrolRecordAddDTO.isOk.yes
+                        && StringUtils.isNotEmpty(comSwPatrolRecordAddDTO.getTakeSteps())) {
+                    comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.YZG.getCode()));
+                    comSwDangerReportDO.setRectifyTime(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
+                } else {
+                    comSwDangerReportDO.setStatus(String.valueOf(SafeWordStatusEnum.DCL.getCode()));
+                }
+                BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwDangerReportDO);
+                comSwDangerReportDO.setPersonName(comSwPatrolRecordAddDTO.getDPersonName());
+                comSwDangerReportDO.setPersonPhone(comSwPatrolRecordAddDTO.getDPersonPhone());
+                comSwDangerReportDAO.insert(comSwDangerReportDO);
+            } else {
+                // 不存在安全隐患,生成安全工作记录
+                ComSwSafetyWorkRecordDO comSwSafetyWorkRecordDO = new ComSwSafetyWorkRecordDO();
+                BeanUtils.copyProperties(comSwPatrolRecordAddDTO, comSwSafetyWorkRecordDO);
+                Long safetyWorkRecord = Snowflake.getId();
+                comSwSafetyWorkRecordDO.setId(safetyWorkRecord);
+                comSwPatrolRecordReportDO.setReportId(safetyWorkRecord);
+                comSwSafetyWorkRecordDAO.insert(comSwSafetyWorkRecordDO);
+            }
+            comSwPatrolRecordReportDAO.insert(comSwPatrolRecordReportDO);
+        });
         return R.ok();
     }
 

--
Gitblit v1.7.1