puhanshu
2021-09-29 322cc854477b0c0cded86d719564c616a38e2673
防火防汛社区反馈修改
2个文件已修改
131 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/ComSwPatrolRecordAddDTO.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSwPatrolRecordServiceImpl.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/ComSwPatrolRecordAddDTO.java
@@ -119,6 +119,12 @@
    private Integer isHiddenDanger;
    /**
     * 隐患类型(1.火灾隐患2.汛情隐患3.疫情隐患)
     */
    @ApiModelProperty("隐患类型(1.火灾隐患2.汛情隐患3.疫情隐患),多条以逗号隔开")
    private String hiddenDangerType;
    /**
     * 隐患名称
     */
    @ApiModelProperty("隐患名称")
@@ -200,6 +206,15 @@
    }
    /**
     * 巡查类型
     */
    public interface hiddenDangerType {
        int huo = 1;
        int xun = 2;
        int yi = 3;
    }
    /**
     * 是否
     */
    public interface isOk {
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();
    }