CeDo
2021-05-27 bb1b8101a3b31a03cae378bfcb16f4576f154647
代码同步
23个文件已修改
6个文件已添加
1289 ■■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EmergenciesEventAddDTO.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EmergenciesEventEditDTO.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EmergenciesEventReportDTO.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventAddDTO.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventDealDTO.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventRepublicDTO.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventRevokeDTO.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventVerifyDTO.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/PageEventDTO.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/IPageVO.java 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/LoginUserInfoVO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventDetailsVO.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventResourceVO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventTransferRecordVO.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventVO.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/grid/GridService.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventApi.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventGridDataApi.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/dao/EventGridDataMapper.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventDO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventResourceDO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventTransferRecordDO.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventGridDataService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventService.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventGridDataServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java 518 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridDataMapper.xml 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventResourceMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventTransferRecordMapper.xml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EmergenciesEventAddDTO.java
@@ -48,10 +48,10 @@
    @NotNull
    private String eventDes;
    @Max(127)
    @ApiModelProperty(value = "事件类型1治安隐患、2公共服务、3矛盾纠纷、4不稳定因素、5突发事件、6特殊人群信息上报", hidden = false, example = "1", required = true)
    @Length(max=255)
    @ApiModelProperty(value = "事件类型,逗号隔开", hidden = false, example = "邻里纠纷,土地承包租赁", required = true)
    @NotNull
    private Integer eventType;
    private String eventClazz;
    @Max(127)
    @ApiModelProperty(value = "危险级别", hidden = false, example = "1", required = true)
@@ -88,5 +88,11 @@
    @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1")
    private Long userId;
    @ApiModelProperty(value = "(当前操作)用户姓名", hidden = true, example = "张三")
    private String userName;
    @ApiModelProperty(value = "(当前操作)用户电话", hidden = true, example = "18888888888")
    @Length(max = 11)
    private String phone;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EmergenciesEventEditDTO.java
New file
@@ -0,0 +1,101 @@
package com.panzhihua.common.model.dtos.grid;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
 * 创建表单
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * @date 2021-05-26
 * */
@Data
@ApiModel("突发事件编辑请求参数")
public class EmergenciesEventEditDTO {
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "id,如果是新增则不填", hidden = false, example = "1")
    private Long id;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "发生时间", hidden = false, example = "2021-05-01 18:05:50", required = true)
    @NotNull
    private Date happenTime;
    @Length(max=255)
    @ApiModelProperty(value = "发生的精度纬度信息(逗号隔开)", hidden = false, example = "41.40338,2.17403", required = true)
    @NotNull
    private String happentLatLng;
    @Length(max=255)
    @ApiModelProperty(value = "发生地点-位置备注", hidden = false, example = "")
    private String happentAddress;
    //位置备注
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "发生区域-网格ID", hidden = false, example = "1", required = true)
    @NotNull
    private Long gridId;
    @Length(max=255)
    @ApiModelProperty(value = "事件描述", hidden = false, example = "", required = true)
    @NotNull
    private String eventDes;
    @Length(max=255)
    @ApiModelProperty(value = "事件类型,逗号隔开", hidden = false, example = "邻里纠纷,土地承包租赁", required = true)
    @NotNull
    private String eventClazz;
    @Max(127)
    @ApiModelProperty(value = "危险级别", hidden = false, example = "1", required = true)
    @NotNull
    private Integer dangerLevel;
    @Max(9999999999L)
    @ApiModelProperty(value = "死亡人数", hidden = false, example = "1", required = true)
    @NotNull
    private Integer deathsNumber;
    @Max(9999999999L)
    @ApiModelProperty(value = "受伤人数", hidden = false, example = "1", required = true)
    @NotNull
    private Integer injuriesNumber;
    @ApiModelProperty(value = "是否紧急", hidden = false, example = "true", required = true)
    @NotNull
    private Boolean urgent;
    @ApiModelProperty(value = "是否重大", hidden = false, example = "true", required = true)
    @NotNull
    private Boolean major;
    @ApiModelProperty(value = "音频(限1个)", hidden = false, example = "http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.mp3")
    private String audio;
    @ApiModelProperty(value = "视频(限1个)", hidden = false, example = "http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.mp4")
    private String video;
    @ApiModelProperty(value = "图片,逗号隔开(限9张)", hidden = false,
            example = "http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.jpg,http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.jpg")
    private String pics;
    @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1")
    private Long userId;
    @ApiModelProperty(value = "(当前操作)用户姓名", hidden = true, example = "张三")
    private String userName;
    @ApiModelProperty(value = "(当前操作)用户电话", hidden = true, example = "18888888888")
    @Length(max = 11)
    private String phone;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EmergenciesEventReportDTO.java
New file
@@ -0,0 +1,45 @@
package com.panzhihua.common.model.dtos.grid;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
/**
 * 上报社区表单
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * @date 2021-05-26
 * */
@Data
@ApiModel("上报社区请求参数")
public class EmergenciesEventReportDTO {
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "事件ID", hidden = false, example = "1",required = true)
    @NotNull
    private Long eventId;
    @Length(max=255)
    @ApiModelProperty(value = "办理意见", hidden = false, example = "",required = true)
    @NotNull
    private String processResult;
    //事件下游机构或网格员
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "社区ID", hidden = false, example = "1",required = true)
    @NotNull
    private Long toId;
    @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1")
    private Long userId;
    @ApiModelProperty(value = "(当前操作)用户姓名", hidden = true, example = "张三")
    private String userName;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventAddDTO.java
@@ -75,6 +75,11 @@
    private Integer eventType;
    @Length(max=255)
    @ApiModelProperty(value = "事件类型,逗号隔开", hidden = false, example = "邻里纠纷,土地承包租赁", required = true)
    @NotNull
    private String eventClazz;
    @Length(max=255)
    @ApiModelProperty(value = "事件描述", hidden = false, example = "")
    private String eventDes;
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventDealDTO.java
New file
@@ -0,0 +1,51 @@
package com.panzhihua.common.model.dtos.grid;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
 * 创建表单
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * @date 2021-05-26
 * */
@Data
@ApiModel("突发事件处理请求参数")
public class EventDealDTO {
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "事件id", hidden = false, example = "1",required = true)
    @NotNull
    private Long id;
    @Length(max=255)
    @ApiModelProperty(value = "办理意见", hidden = false, example = "",required = true)
    @NotNull
    private String processResult;
    @ApiModelProperty(value = "音频(限1个)", hidden = false, example = "http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.mp3")
    private String audio;
    @ApiModelProperty(value = "视频(限1个)", hidden = false, example = "http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.mp4")
    private String video;
    @ApiModelProperty(value = "图片,逗号隔开(限9张)", hidden = false,
            example = "http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.jpg,http://image.panzhihua.nhys.cdnhxx.com/idcard/8f77d43e8bce47d38b63e2a8ceb0a7c6.jpg")
    private String pics;
    @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1")
    private Long userId;
    @ApiModelProperty(value = "(当前操作)用户姓名", hidden = true, example = "张三")
    private String userName;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventRepublicDTO.java
New file
@@ -0,0 +1,34 @@
package com.panzhihua.common.model.dtos.grid;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
/**
 * 事件重新发布请求参表单
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * @date 2021-05-26
 * */
@Data
@ApiModel("事件重新发布请求参数")
public class EventRepublicDTO {
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "事件id", hidden = false, example = "1", required = true)
    @NotNull
    private Long id;
    @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1")
    private Long userId;
    @ApiModelProperty(value = "(当前操作)用户姓名", hidden = true, example = "张三")
    private String userName;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventRevokeDTO.java
New file
@@ -0,0 +1,30 @@
package com.panzhihua.common.model.dtos.grid;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
/**
 * 编辑表单
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * @date 2021-05-26
 * */
@Data
@ApiModel("撤销事件请求参数")
public class EventRevokeDTO {
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "id", hidden = false, example = "1", required = true)
    @NotNull
    private Long id;
    @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1")
    private Long userId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/EventVerifyDTO.java
New file
@@ -0,0 +1,40 @@
package com.panzhihua.common.model.dtos.grid;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.URL;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
/**
 * 创建表单
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * @date 2021-05-26
 * */
@Data
@ApiModel("突发事件处理请求参数")
public class EventVerifyDTO {
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "事件id", hidden = false, example = "1")
    private Long id;
    @Length(max=255)
    @ApiModelProperty(value = "办理意见", hidden = false, example = "",required = true)
    @NotNull
    private String processResult;
    @ApiModelProperty(value = "(当前操作)用户ID", hidden = true, example = "1")
    private Long userId;
    @ApiModelProperty(value = "(当前操作)用户姓名", hidden = true, example = "张三")
    private String userName;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/PageEventDTO.java
@@ -26,6 +26,11 @@
@ApiModel("查询事件请求参数")
public class PageEventDTO {
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "网格ID", hidden = false, example = "1", required = true)
    @NotNull
    private Long gridId;
    @ApiModelProperty(value = "分页-当前页数", example = "1")
    private Long pageNum = 1L;
@@ -68,11 +73,6 @@
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "网格员所处社区", hidden = false, example = "1")
    private Long gridMemberCommunity;
    @Max(9223372036854775807L)
    @ApiModelProperty(value = "网格ID", hidden = false, example = "1")
    private Long gridId;
    @Max(9223372036854775807L)
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/IPageVO.java
@@ -28,14 +28,14 @@
 * @author
 * @since
 */
public interface IPageVO<T> extends Serializable {
public class IPageVO<T> implements Serializable {
    /**
     * 获取排序信息,排序的字段和正反序
     *
     * @return 排序信息
     */
    List<Object> orders();
    List<Object> orders(){return null;}
    /**
     * KEY/VALUE 条件
@@ -44,7 +44,7 @@
     * @deprecated 3.4.0 @2020-06-30
     */
    @Deprecated
    default Map<Object, Object> condition() {
     Map<Object, Object> condition() {
        return null;
    }
@@ -53,7 +53,7 @@
     *
     * @return true 是 / false 否
     */
    default boolean optimizeCountSql() {
     boolean optimizeCountSql() {
        return true;
    }
@@ -62,14 +62,14 @@
     *
     * @return true 是 / false 否
     */
    default boolean isSearchCount() {
     boolean isSearchCount() {
        return true;
    }
    /**
     * 计算当前分页偏移量
     */
    default long offset() {
     long offset() {
        long current = getCurrent();
        if (current <= 1L) {
            return 0L;
@@ -82,14 +82,14 @@
     *
     * @since 3.4.0 @2020-07-17
     */
    default Long maxLimit() {
     Long maxLimit() {
        return null;
    }
    /**
     * 当前分页总页数
     */
    default long getPages() {
     long getPages() {
        if (getSize() == 0) {
            return 0L;
        }
@@ -104,7 +104,7 @@
     * 内部什么也不干
     * <p>只是为了 json 反序列化时不报错</p>
     */
    default IPageVO<T> setPages(long pages) {
     IPageVO<T> setPages(long pages) {
        // to do nothing
        return this;
    }
@@ -117,7 +117,7 @@
     * @deprecated 3.4.0 @2020-06-30 缓存遵循mybatis的一或二缓
     */
    @Deprecated
    default void hitCount(boolean hit) {
     void hitCount(boolean hit) {
    }
@@ -129,7 +129,7 @@
     * @deprecated 3.4.0 @2020-06-30 缓存遵循mybatis的一或二缓
     */
    @Deprecated
    default boolean isHitCount() {
     boolean isHitCount() {
        return false;
    }
@@ -138,48 +138,48 @@
     *
     * @return 分页对象记录列表
     */
    List<T> getRecords();
    List<T> getRecords(){return null;}
    /**
     * 设置分页记录列表
     */
    IPageVO<T> setRecords(List<T> records);
    IPageVO<T> setRecords(List<T> records){return null;}
    /**
     * 当前满足条件总行数
     *
     * @return 总条数
     */
    long getTotal();
    long getTotal(){return 0l;}
    /**
     * 设置当前满足条件总行数
     */
    IPageVO<T> setTotal(long total);
    IPageVO<T> setTotal(long total){return null;}
    /**
     * 获取每页显示条数
     *
     * @return 每页显示条数
     */
    long getSize();
    long getSize(){return 0;}
    /**
     * 设置每页显示条数
     */
    IPageVO<T> setSize(long size);
    IPageVO<T> setSize(long size){return null;}
    /**
     * 当前页
     *
     * @return 当前页
     */
    long getCurrent();
    long getCurrent(){return 0l;}
    /**
     * 设置当前页
     */
    IPageVO<T> setCurrent(long current);
    IPageVO<T> setCurrent(long current){return null;}
    /**
     * IPageVO 的泛型转换
@@ -189,7 +189,7 @@
     * @return 转换泛型后的 IPageVO
     */
    @SuppressWarnings("unchecked")
    default <R> IPageVO<R> convert(Function<? super T, ? extends R> mapper) {
     <R> IPageVO<R> convert(Function<? super T, ? extends R> mapper) {
        List<R> collect = this.getRecords().stream().map(mapper).collect(toList());
        return ((IPageVO<R>) this).setRecords(collect);
    }
@@ -202,7 +202,7 @@
     * @return id
     * @since 3.4.0 @2020-06-19
     */
    default String countId() {
     String countId() {
        return null;
    }
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/LoginUserInfoVO.java
@@ -78,7 +78,7 @@
    @ApiModelProperty("头像")
    private String imageUrl;
    @ApiModelProperty(value = "用户类型 1 小程序 2 运营平台 3 社区平台")
    @ApiModelProperty(value = "用户类型 1 小程序 2 运营平台 3 社区平台 5 商家后台 6 网格综治APP 7 网格综治后台")
    private Integer type;
    @ApiModelProperty("职业")
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventDetailsVO.java
@@ -154,4 +154,19 @@
    private Date updateAt;
    @ApiModelProperty(value = "音频")
    private List<EventResourceVO> audios;
    @ApiModelProperty(value = "视频")
    private List<EventResourceVO> videos;
    @ApiModelProperty(value = "图片")
    private List<EventResourceVO> pics;
    @ApiModelProperty(value = "事件处理数据")
    private List<EventTransferRecordVO> trans;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventResourceVO.java
@@ -18,7 +18,7 @@
@ApiModel("事件或者走访中关联的图片音频和视频文件返回参数")
public class EventResourceVO {
    @ApiModelProperty(value = "分类(1、事件 2、走访)")
    @ApiModelProperty(value = "分类(1、事件 2、走访 3、事件流转))")
    private Integer classification;
    @ApiModelProperty(value = "事件或者走访任务关联ID")
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventTransferRecordVO.java
@@ -37,7 +37,7 @@
    private Integer toType;
    @ApiModelProperty(value = "事件下游机构或网格员")
    private Long to;
    private Long toId;
    @ApiModelProperty(value = "需要办理人路径名称")
    private String toName;
@@ -53,5 +53,13 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createAt;
    @ApiModelProperty(value = "音频")
    private List<EventResourceVO> audios;
    @ApiModelProperty(value = "视频")
    private List<EventResourceVO> videos;
    @ApiModelProperty(value = "图片")
    private List<EventResourceVO> pics;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/grid/EventVO.java
@@ -153,5 +153,14 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateAt;
    @ApiModelProperty(value = "音频")
    private List<EventResourceVO> audios;
    @ApiModelProperty(value = "视频")
    private List<EventResourceVO> videos;
    @ApiModelProperty(value = "图片")
    private List<EventResourceVO> pics;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/grid/GridService.java
@@ -460,4 +460,68 @@
     */
    @PostMapping("/eventgridmembergpslog/{id}")
    R<EventGridMemberGpsLogDetailsVO> eventGridMemberGpsLogDetails(@PathVariable("id") Long id);
    /**
     * 添加突发事件
     * @param emergenciesEventAddDTO
     * @return
     */
    @PostMapping("/event/addEmergencies")
    R addEmergencies(@RequestBody EmergenciesEventAddDTO emergenciesEventAddDTO);
    /**
     * 保存突发事件草稿
     * @param emergenciesEventEditDTO
     * @return
     */
    @PostMapping("/event/saveEmergenciesDraft")
    R saveEmergenciesDraft(@RequestBody EmergenciesEventEditDTO emergenciesEventEditDTO);
    /**
     * 突发事件上报社区
     * @param emergenciesEventReportDTO
     * @return
     */
    @PostMapping("/event/emergenciesReport")
    R emergenciesReport(@RequestBody EmergenciesEventReportDTO emergenciesEventReportDTO);
    /**
     * 突发事件撤销
     * @param eventRevokeDTO
     * @return
     */
    @PostMapping("/event/emergenciesRevoke")
    R emergenciesRevoke(@RequestBody EventRevokeDTO eventRevokeDTO);
    /**
     * 查询用户网格
     * @param pageEventGridDataDTO
     * @return
     */
    @PostMapping("/eventgriddata/userGrid")
    R userGrid(@RequestBody PageEventGridDataDTO pageEventGridDataDTO);
    /**
     * 处理事件
     * @param eventDealDTO
     * @return
     */
    @PostMapping("/event/dealEvent")
    R dealEvent(@RequestBody EventDealDTO eventDealDTO);
    /**
     * 处理事件
     * @param eventVerifyDTO
     * @return
     */
    @PostMapping("/event/verify")
    R verifyEvent(@RequestBody EventVerifyDTO eventVerifyDTO);
    /**
     * 处理事件
     * @param eventRepublicDTO
     * @return
     */
    @PostMapping("/event/republish")
    R republishEvent(@RequestBody EventRepublicDTO eventRepublicDTO);
}
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventApi.java
@@ -2,15 +2,18 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.panzhihua.common.model.dtos.grid.EventAddDTO;
import com.panzhihua.common.model.dtos.grid.EventDeleteDTO;
import com.panzhihua.common.model.dtos.grid.EventEditDTO;
import com.panzhihua.common.model.dtos.grid.PageEventDTO;
import com.panzhihua.common.model.dtos.grid.*;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.grid.EventDetailsVO;
import com.panzhihua.common.model.vos.grid.EventVO;
import com.panzhihua.service_grid.model.dos.EventResourceDO;
import com.panzhihua.service_grid.service.EventResourceService;
import com.panzhihua.service_grid.service.EventService;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@@ -80,4 +83,74 @@
        return eventService.eventDetails(id);
    };
    /**
     * 添加突发事件
     * @param emergenciesEventAddDTO
     * @return 新增结果
     */
    @PostMapping("/addEmergencies")
    R addEmergencies(@RequestBody EmergenciesEventAddDTO emergenciesEventAddDTO){
        return eventService.addEmergencies(emergenciesEventAddDTO);
    };
    /**
     * 保存草稿
     * @param {classNameFirstLower}AddDTO 添加事件传递对象
     * @return 新增结果
     */
    @PostMapping("/saveEmergenciesDraft")
    R saveEmergenciesDraft(@RequestBody EmergenciesEventEditDTO emergenciesEventEditDTO){
        return eventService.saveEmergenciesDraft(emergenciesEventEditDTO);
    }
    /**
     * 突发事件上报社区
     * @param emergenciesEventReportDTO
     * @return
     */
    @PostMapping("/emergenciesReport")
    R emergenciesReport(@RequestBody EmergenciesEventReportDTO emergenciesEventReportDTO){
        return eventService.emergenciesReport(emergenciesEventReportDTO);
    }
    /**
     * 突发事件撤销
     * @param eventRevokeDTO
     * @return
     */
    @PostMapping("/emergenciesRevoke")
    R emergenciesRevoke(@RequestBody EventRevokeDTO eventRevokeDTO){
        return eventService.emergenciesRevoke(eventRevokeDTO);
    }
    /**
     * 处理事件
     * @param eventDealDTO
     * @return
     */
    @PostMapping("/dealEvent")
    R dealEvent(@RequestBody EventDealDTO eventDealDTO){
        return eventService.dealEvent(eventDealDTO);
    }
    /**
     * 处理事件
     * @param eventVerifyDTO
     * @return
     */
    @PostMapping("/verify")
    R verifyEvent(@RequestBody EventVerifyDTO eventVerifyDTO){
        return eventService.verifyEvent(eventVerifyDTO);
    }
    /**
     * 重新发布事件
     * @param eventRepublicDTO
     * @return
     */
    @PostMapping("/republish")
    R republishEvent(@RequestBody EventRepublicDTO eventRepublicDTO){
        return eventService.republishEvent(eventRepublicDTO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventGridDataApi.java
@@ -30,6 +30,17 @@
    @Resource
    private EventGridDataService eventGridDataService;
    /**
     * 查询用户网格
     * @param pageEventGridDataDTO
     * @return
     */
    @PostMapping("/userGrid")
    R userGrid(@RequestBody PageEventGridDataDTO pageEventGridDataDTO){
        return eventGridDataService.getUserGrid(pageEventGridDataDTO);
    }
    /**
     * 新增区县/街道/社区/网格员网格数据管理
     * @param eventGridDataAddDTO
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/dao/EventGridDataMapper.java
@@ -1,11 +1,11 @@
package com.panzhihua.service_grid.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.dtos.grid.PageEventGridDataDTO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.service_grid.model.dos.EventGridDataDO;
import com.panzhihua.common.model.vos.grid.EventGridDataVO;
import org.apache.ibatis.annotations.Mapper;
@@ -16,17 +16,26 @@
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * @date 2021-05-26
 * */
 * @since 1.0
 */
@Mapper
public interface EventGridDataMapper extends BaseMapper<EventGridDataDO> {
        /**
         * 分页查询
         * @param pageEventGridDataDTO
         * @return
         */
        IPage<EventGridDataVO> findByPage(Page page, @Param("pageEventGridDataDTO")PageEventGridDataDTO pageEventGridDataDTO);
    /**
     * 分页查询
     *
     * @param pageEventGridDataDTO
     * @return
     */
    IPage<EventGridDataVO> findByPage(Page page, @Param("pageEventGridDataDTO") PageEventGridDataDTO pageEventGridDataDTO);
    /**
     * 分页查询网格员所在网格
     *
     * @param pageEventGridDataDTO
     * @return
     */
    IPage<EventGridDataVO> selectUserGrid(Page page, @Param("pageEventGridDataDTO") PageEventGridDataDTO pageEventGridDataDTO);
}
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventDO.java
@@ -74,10 +74,14 @@
     */
    private Date propagandaTime;
    /**
     * 当event_type_category是1填写事件类型1治安隐患、2公共服务、3矛盾纠纷、4不稳定因素、5突发事件、6特殊人群信息上报   列: event_type
     * 当event_type_category是1填写事件分类1治安隐患、2公共服务、3矛盾纠纷、4不稳定因素、5突发事件、6特殊人群信息上报   列: event_type
     */
    private Integer eventType;
    /**
     * 事件类型   列: event_clazz
     */
    private Integer eventClazz;
    /**
     * 事件描述   列: event_des
     */
    private String eventDes;
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventResourceDO.java
@@ -29,11 +29,15 @@
     */
    private Integer classification;
    /**
     * 事件或者走访任务关联ID   列: id
     * ID   列: id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
     * 事件或者走访任务关联ID   列: id
     */
    private Long refId;
    /**
     * 事件上传的资源类型(1是图片2是音频3是是视频)   列: type
     */
    private Integer type;
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventTransferRecordDO.java
@@ -38,9 +38,9 @@
     */
    private Integer fromType;
    /**
     * 事件来源机构或网格员   列: from
     * 事件来源机构或网格员   列: from_id
     */
    private Long from;
    private Long fromId;
    /**
     * 转交办理人路径名称   列: from_name
     */
@@ -50,9 +50,9 @@
     */
    private Integer toType;
    /**
     * 事件下游机构或网格员   列: to
     * 事件下游机构或网格员   列: to_id
     */
    private Long to;
    private Long toId;
    /**
     * 需要办理人路径名称   列: to_name
     */
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventGridDataService.java
@@ -57,4 +57,10 @@
    R<EventGridDataDetailsVO> eventGridDataDetails(Long id);
    /**
     * 查询用户网格数据管理
     * @param pageEventGridDataDTO dto
     * @return 查找结果
     */
    R getUserGrid(PageEventGridDataDTO pageEventGridDataDTO);
}
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventService.java
@@ -2,14 +2,12 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.common.model.dtos.grid.EventAddDTO;
import com.panzhihua.common.model.dtos.grid.EventDeleteDTO;
import com.panzhihua.common.model.dtos.grid.EventEditDTO;
import com.panzhihua.common.model.dtos.grid.PageEventDTO;
import com.panzhihua.common.model.dtos.grid.*;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.grid.EventDetailsVO;
import com.panzhihua.common.model.vos.grid.EventVO;
import com.panzhihua.service_grid.model.dos.EventDO;
import org.springframework.transaction.annotation.Transactional;
/**
 * 事件 service
@@ -56,5 +54,51 @@
     */
    R<EventDetailsVO> eventDetails(Long id);
    /**
     * 添加突发事件
     * @param emergenciesEventAddDTO
     * @return
     */
    R addEmergencies(EmergenciesEventAddDTO emergenciesEventAddDTO);
    /**
     * 保存突发事件草稿
     * @param emergenciesEventEditDTO
     * @return
     */
    R saveEmergenciesDraft(EmergenciesEventEditDTO emergenciesEventEditDTO);
    /**
     * 突发事件上报
     * @param emergenciesEventReportDTO
     * @return
     */
    R emergenciesReport(EmergenciesEventReportDTO emergenciesEventReportDTO);
    /**
     * 突发事件撤销
     * @param eventRevokeDTO
     * @return
     */
    R emergenciesRevoke(EventRevokeDTO eventRevokeDTO);
    /**
     * 处理事件
     * @param eventDealDTO
     * @return
     */
    R dealEvent(EventDealDTO eventDealDTO);
    /**
     * 确认事件
     * @param eventVerifyDTO
     * @return
     */
    R verifyEvent(EventVerifyDTO eventVerifyDTO);
    /**
     * 重新发布事件
     * @param eventRepublicDTO
     * @return
     */
    R republishEvent(EventRepublicDTO eventRepublicDTO);
}
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventGridDataServiceImpl.java
@@ -101,4 +101,17 @@
        return R.fail();
    }
    @Override
    public R getUserGrid(PageEventGridDataDTO pageEventGridDataDTO) {
        Page page = new Page(1,10);
        if(pageEventGridDataDTO.getPageNum()!=null) {
            page.setCurrent(pageEventGridDataDTO.getPageNum());
        }
        if(pageEventGridDataDTO.getPageSize()!=null) {
            page.setSize(pageEventGridDataDTO.getPageSize());
        }
        return R.ok(eventGridDataMapper.selectUserGrid(page, pageEventGridDataDTO));
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java
@@ -1,24 +1,31 @@
package com.panzhihua.service_grid.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.panzhihua.common.model.dtos.grid.EventAddDTO;
import com.panzhihua.common.model.dtos.grid.EventDeleteDTO;
import com.panzhihua.common.model.dtos.grid.EventEditDTO;
import com.panzhihua.common.model.dtos.grid.PageEventDTO;
import com.panzhihua.common.exceptions.ServiceException;
import com.panzhihua.common.model.dtos.grid.*;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.grid.EventDetailsVO;
import com.panzhihua.common.model.vos.grid.EventResourceVO;
import com.panzhihua.common.model.vos.grid.EventTransferRecordVO;
import com.panzhihua.common.model.vos.grid.EventVO;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.service_grid.dao.*;
import com.panzhihua.service_grid.model.dos.*;
import com.panzhihua.service_grid.service.EventResourceService;
import com.panzhihua.service_grid.service.EventService;
import com.panzhihua.service_grid.service.EventTransferRecordService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.beans.BeanUtils;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * @auther lyq
@@ -31,6 +38,12 @@
    @Resource
    private EventMapper eventMapper;
    @Resource
    private EventResourceService eventResourceService;
    @Resource
    private EventTransferRecordService eventTransferRecordService;
    /**
     * 新增事件
     * @param eventAddDTO
@@ -74,7 +87,44 @@
        if(pageEventDTO.getPageSize()!=null) {
            page.setSize(pageEventDTO.getPageSize());
        }
        return R.ok(eventMapper.findByPage(page, pageEventDTO));
        IPage<EventVO> ipage = eventMapper.findByPage(page, pageEventDTO);
        if(ipage!=null){
            List<EventVO> eventVOList = ipage.getRecords();
            eventVOList.forEach(eventVO -> {
                List<EventResourceDO> eventResourceDOList =
                        eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>()
                                .eq(EventResourceDO::getClassification, 1)
                                .eq(EventResourceDO::getRefId, eventVO.getId())
                        );
                List<EventResourceVO> picList = new ArrayList<>();
                List<EventResourceVO> audioList = new ArrayList<>();
                List<EventResourceVO> videoList = new ArrayList<>();
                eventResourceDOList.forEach(eventResourceDO -> {
                    switch (eventResourceDO.getType()){
                        case 1:
                            EventResourceVO picEventResourceVO = new EventResourceVO();
                            BeanUtils.copyProperties(eventResourceDO, picEventResourceVO);
                            picList.add(picEventResourceVO);
                            break;
                        case 2:
                            EventResourceVO audioResourceVO = new EventResourceVO();
                            BeanUtils.copyProperties(eventResourceDO, audioResourceVO);
                            audioList.add(audioResourceVO);
                            break;
                        case 3:
                            EventResourceVO videoResourceVO = new EventResourceVO();
                            BeanUtils.copyProperties(eventResourceDO, videoResourceVO);
                            videoList.add(videoResourceVO);
                            break;
                    }
                });
                eventVO.setAudios(audioList);
                eventVO.setPics(picList);
                eventVO.setVideos(videoList);
            });
            return R.ok(ipage);
        }
        return R.fail();
    }
    /**
@@ -96,9 +146,467 @@
        if(eventDO!=null) {
            EventDetailsVO eventDetailsVO = new EventDetailsVO();
            BeanUtils.copyProperties(eventDO, eventDetailsVO);
            //查询事件关联附件
            List<EventResourceDO> eventResourceDOList =
                    eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>()
                            .eq(EventResourceDO::getClassification, 1)
                            .eq(EventResourceDO::getRefId, id)
                    );
            List<EventResourceVO> picList = new ArrayList<>();
            List<EventResourceVO> audioList = new ArrayList<>();
            List<EventResourceVO> videoList = new ArrayList<>();
            eventResourceDOList.forEach(eventResourceDO -> {
                switch (eventResourceDO.getType()){
                    case 1:
                        EventResourceVO picEventResourceVO = new EventResourceVO();
                        BeanUtils.copyProperties(eventResourceDO, picEventResourceVO);
                        picList.add(picEventResourceVO);
                        break;
                    case 2:
                        EventResourceVO audioResourceVO = new EventResourceVO();
                        BeanUtils.copyProperties(eventResourceDO, audioResourceVO);
                        audioList.add(audioResourceVO);
                        break;
                    case 3:
                        EventResourceVO videoResourceVO = new EventResourceVO();
                        BeanUtils.copyProperties(eventResourceDO, videoResourceVO);
                        videoList.add(videoResourceVO);
                        break;
                }
            });
            eventDetailsVO.setAudios(audioList);
            eventDetailsVO.setPics(picList);
            eventDetailsVO.setVideos(videoList);
            //查询事件流转记录
            List<EventTransferRecordDO> eventTransferRecordDOList = eventTransferRecordService.getBaseMapper()
                    .selectList(new LambdaQueryWrapper<EventTransferRecordDO>()
                            .eq(EventTransferRecordDO::getEventId, id)
                    );
            List<EventTransferRecordVO> eventTransferRecordVOS = new ArrayList<>();
            for (EventTransferRecordDO eventTransferRecordDO : eventTransferRecordDOList) {
                EventTransferRecordVO eventTransferRecordVO = new EventTransferRecordVO();
                BeanUtils.copyProperties(eventTransferRecordDO, eventTransferRecordVO);
                List<EventResourceDO> eventTransferResourceDOList =
                        eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>()
                                .eq(EventResourceDO::getClassification, 3)
                                .eq(EventResourceDO::getRefId, eventTransferRecordDO.getId())
                        );
                List<EventResourceVO> transferPicList = new ArrayList<>();
                List<EventResourceVO> transferAudioList = new ArrayList<>();
                List<EventResourceVO> transferVideoList = new ArrayList<>();
                eventTransferResourceDOList.forEach(eventResourceDO -> {
                    switch (eventResourceDO.getType()){
                        case 1:
                            EventResourceVO picEventResourceVO = new EventResourceVO();
                            BeanUtils.copyProperties(eventResourceDO, picEventResourceVO);
                            transferPicList.add(picEventResourceVO);
                            break;
                        case 2:
                            EventResourceVO audioResourceVO = new EventResourceVO();
                            BeanUtils.copyProperties(eventResourceDO, audioResourceVO);
                            transferAudioList.add(audioResourceVO);
                            break;
                        case 3:
                            EventResourceVO videoResourceVO = new EventResourceVO();
                            BeanUtils.copyProperties(eventResourceDO, videoResourceVO);
                            transferVideoList.add(videoResourceVO);
                            break;
                    }
                });
                eventTransferRecordVO.setAudios(transferAudioList);
                eventTransferRecordVO.setPics(transferPicList);
                eventTransferRecordVO.setVideos(transferVideoList);
                eventTransferRecordVOS.add(eventTransferRecordVO);
            }
            eventDetailsVO.setTrans(eventTransferRecordVOS);
            return R.ok(eventDetailsVO);
        }
        return R.fail();
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R addEmergencies(EmergenciesEventAddDTO emergenciesEventAddDTO) {
        EventDO eventDO = new EventDO();
        BeanUtils.copyProperties(emergenciesEventAddDTO, eventDO);
        eventDO.setGridMemberId(emergenciesEventAddDTO.getUserId());
        eventDO.setEventCategory(1l);//办件事件
        eventDO.setEventType(5);//突发事件分类
        eventDO.setEventStatus(2);//事件状态 2发布
        eventDO.setProcessType(1);//网格员处理
        eventDO.setCommunityProcess(0);//非 社区处理
        eventDO.setEventProcessStatus(1);
        eventDO.setGridMemberId(emergenciesEventAddDTO.getUserId());
        eventDO.setGridMemberName(emergenciesEventAddDTO.getUserName());
        eventDO.setGridMemberTelephone(emergenciesEventAddDTO.getPhone());
        eventDO.setCreateBy(emergenciesEventAddDTO.getUserId());
        if(eventMapper.insert(eventDO)==1){
            //添加音频
            if(StringUtils.isNotEmpty(emergenciesEventAddDTO.getAudio())){
                EventResourceDO eventResourceDO = new EventResourceDO();
                eventResourceDO.setClassification(1);
                eventResourceDO.setType(2);
                eventResourceDO.setUrl(emergenciesEventAddDTO.getAudio());
                eventResourceDO.setRefId(eventDO.getId());
                eventResourceDO.setCreateBy(emergenciesEventAddDTO.getUserId());
                int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                if(audioAdd!=1){
                    throw new ServiceException("添加音频失败");
                }
            }
            //添加视频
            if(StringUtils.isNotEmpty(emergenciesEventAddDTO.getVideo())){
                EventResourceDO eventResourceDO = new EventResourceDO();
                eventResourceDO.setClassification(1);
                eventResourceDO.setType(3);
                eventResourceDO.setUrl(emergenciesEventAddDTO.getVideo());
                eventResourceDO.setRefId(eventDO.getId());
                eventResourceDO.setCreateBy(emergenciesEventAddDTO.getUserId());
                int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                if(videoAdd!=1){
                    throw new ServiceException("添加视频失败");
                }
            }
            //添加图片
            if(StringUtils.isNotEmpty(emergenciesEventAddDTO.getPics())){
                String[] pica = emergenciesEventAddDTO.getPics().split(",");
                for (int i = 0; i < pica.length; i++) {
                    EventResourceDO eventResourceDO = new EventResourceDO();
                    eventResourceDO.setClassification(1);
                    eventResourceDO.setType(1);
                    eventResourceDO.setUrl(pica[i]);
                    eventResourceDO.setRefId(eventDO.getId());
                    eventResourceDO.setCreateBy(emergenciesEventAddDTO.getUserId());
                    int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                    if(picAdd!=1){
                        throw new ServiceException("添加图片失败");
                    }
                }
            }
            return R.ok();
        }
        return R.fail();
    }
    @Override
    public R saveEmergenciesDraft(EmergenciesEventEditDTO emergenciesEventEditDTO) {
        if(emergenciesEventEditDTO.getId()==null) {
            EventDO eventDO = new EventDO();
            BeanUtils.copyProperties(emergenciesEventEditDTO, eventDO);
            eventDO.setGridMemberId(emergenciesEventEditDTO.getUserId());
            eventDO.setEventCategory(1l);//办件事件
            eventDO.setEventType(5);//突发事件分类
            eventDO.setEventStatus(1);//事件状态 1草稿
            eventDO.setProcessType(1);//网格员处理
            eventDO.setCommunityProcess(0);//非 社区处理
            eventDO.setCreateBy(emergenciesEventEditDTO.getUserId());
            if (eventMapper.insert(eventDO) > 0) {
                //添加音频
                if (StringUtils.isNotEmpty(emergenciesEventEditDTO.getAudio())) {
                    EventResourceDO eventResourceDO = new EventResourceDO();
                    eventResourceDO.setClassification(1);
                    eventResourceDO.setType(2);
                    eventResourceDO.setRefId(eventDO.getId());
                    eventResourceDO.setUrl(emergenciesEventEditDTO.getAudio());
                    eventResourceDO.setCreateBy(emergenciesEventEditDTO.getUserId());
                    int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                    if (audioAdd != 1) {
                        throw new ServiceException("添加音频失败");
                    }
                }
                //添加视频
                if (StringUtils.isNotEmpty(emergenciesEventEditDTO.getVideo())) {
                    EventResourceDO eventResourceDO = new EventResourceDO();
                    eventResourceDO.setClassification(1);
                    eventResourceDO.setType(3);
                    eventResourceDO.setRefId(eventDO.getId());
                    eventResourceDO.setUrl(emergenciesEventEditDTO.getVideo());
                    eventResourceDO.setCreateBy(emergenciesEventEditDTO.getUserId());
                    int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                    if (videoAdd != 1) {
                        throw new ServiceException("添加视频失败");
                    }
                }
                //添加图片
                if (StringUtils.isNotEmpty(emergenciesEventEditDTO.getPics())) {
                    String[] pica = emergenciesEventEditDTO.getPics().split(",");
                    for (int i = 0; i < pica.length; i++) {
                        EventResourceDO eventResourceDO = new EventResourceDO();
                        eventResourceDO.setClassification(1);
                        eventResourceDO.setType(1);
                        eventResourceDO.setRefId(eventDO.getId());
                        eventResourceDO.setUrl(pica[i]);
                        eventResourceDO.setCreateBy(emergenciesEventEditDTO.getUserId());
                        int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                        if (picAdd != 1) {
                            throw new ServiceException("添加图片失败");
                        }
                    }
                }
                return R.ok();
            }
            return R.fail();
        }else{
            //编辑原来的
            EventDO eventDO = eventMapper.selectById(emergenciesEventEditDTO.getId());
            BeanUtils.copyProperties(emergenciesEventEditDTO, eventDO);
            eventDO.setGridMemberId(emergenciesEventEditDTO.getUserId());
            eventDO.setEventCategory(1l);//办件事件
            eventDO.setEventType(5);//突发事件分类
            eventDO.setEventStatus(1);//事件状态 2发布
            eventDO.setProcessType(1);//网格员处理
            eventDO.setCommunityProcess(0);//非 社区处理
            eventDO.setUpdateBy(emergenciesEventEditDTO.getUserId());
            if (eventMapper.updateById(eventDO) > 0) {
                int deleted = eventResourceService.getBaseMapper()
                        .delete(new LambdaQueryWrapper<EventResourceDO>()
                                .eq(EventResourceDO::getClassification,1)
                                .eq(EventResourceDO::getRefId, eventDO.getId()));
                //添加音频
                if (StringUtils.isNotEmpty(emergenciesEventEditDTO.getAudio())) {
                    EventResourceDO eventResourceDO = new EventResourceDO();
                    eventResourceDO.setClassification(1);
                    eventResourceDO.setType(2);
                    eventResourceDO.setRefId(eventDO.getId());
                    eventResourceDO.setUrl(emergenciesEventEditDTO.getAudio());
                    eventResourceDO.setCreateBy(emergenciesEventEditDTO.getUserId());
                    int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                    if (audioAdd != 1) {
                        throw new ServiceException("添加音频失败");
                    }
                }
                //添加视频
                if (StringUtils.isNotEmpty(emergenciesEventEditDTO.getVideo())) {
                    EventResourceDO eventResourceDO = new EventResourceDO();
                    eventResourceDO.setClassification(1);
                    eventResourceDO.setType(3);
                    eventResourceDO.setRefId(eventDO.getId());
                    eventResourceDO.setUrl(emergenciesEventEditDTO.getVideo());
                    eventResourceDO.setCreateBy(emergenciesEventEditDTO.getUserId());
                    int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                    if (videoAdd != 1) {
                        throw new ServiceException("添加视频失败");
                    }
                }
                //添加图片
                if (StringUtils.isNotEmpty(emergenciesEventEditDTO.getPics())) {
                    String[] pica = emergenciesEventEditDTO.getPics().split(",");
                    for (int i = 0; i < pica.length; i++) {
                        EventResourceDO eventResourceDO = new EventResourceDO();
                        eventResourceDO.setClassification(1);
                        eventResourceDO.setType(1);
                        eventResourceDO.setRefId(eventDO.getId());
                        eventResourceDO.setUrl(pica[i]);
                        eventResourceDO.setCreateBy(emergenciesEventEditDTO.getUserId());
                        int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                        if (picAdd != 1) {
                            throw new ServiceException("添加图片失败");
                        }
                    }
                }
                return R.ok();
            }
            return R.fail();
        }
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R emergenciesReport(EmergenciesEventReportDTO emergenciesEventReportDTO) {
        EventDO eventDO = this.getBaseMapper().selectById(emergenciesEventReportDTO.getEventId());
        if(eventDO==null){
            return R.fail("事件不存在");
        }
        if(eventDO.getEventStatus()!=2){
            return R.fail("当前事件不能上报社区");
        }
        if(eventDO.getProcessType()==2){
            return R.fail("当前事件已交由社区处理");
        }
        eventDO.setCommunityProcess(1);
        eventDO.setProcessType(2);
        eventDO.setEventProcessStatus(1);
        eventDO.setUpdateBy(emergenciesEventReportDTO.getUserId());
        int updated = this.getBaseMapper().updateById(eventDO);
        if(updated!=1){
            throw new ServiceException("更新突发事件状态更新失败");
        }
        EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO();
        BeanUtils.copyProperties(emergenciesEventReportDTO, eventTransferRecordDO);
        eventTransferRecordDO.setFromType(1);
        eventTransferRecordDO.setFromId(emergenciesEventReportDTO.getUserId());
        eventTransferRecordDO.setFromName(emergenciesEventReportDTO.getUserName());
        eventTransferRecordDO.setToType(2);
        eventTransferRecordDO.setProcessDate(new Date());
        int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO);
        return inserted==1?R.ok():R.fail();
    }
    @Override
    public R emergenciesRevoke(EventRevokeDTO eventRevokeDTO) {
        EventDO eventDO = this.getBaseMapper().selectById(eventRevokeDTO.getId());
        if(eventDO==null){
            return R.fail("事件不存在");
        }
        boolean canRevoke = eventDO.getEventStatus()==2 && eventDO.getCommunityProcess()==0;
        if(!canRevoke){
            return R.fail("当前事件不允许撤销");
        }
        eventDO.setEventStatus(4);
        eventDO.setUpdateBy(eventRevokeDTO.getUserId());
        int updated = this.getBaseMapper().updateById(eventDO);
        return updated==1?R.ok():R.fail();
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R dealEvent(EventDealDTO eventDealDTO) {
        EventDO eventDO = this.getBaseMapper().selectById(eventDealDTO.getId());
        boolean canDealByUser = eventDO.getEventStatus()==2 && eventDO.getEventProcessStatus()==1;
        if(!canDealByUser){
            if(eventDO.getEventStatus()!=2){
                return R.fail("事件不是发布状态");
            }
            if(eventDO.getEventProcessStatus()!=1){
                return R.fail("事件不是待处理状态");
            }
            return R.fail("事件当前不可自处理");
        }
        eventDO.setEventProcessStatus(2);//2已解决
        eventDO.setUpdateBy(eventDealDTO.getUserId());
        int updated = this.getBaseMapper().updateById(eventDO);
        if(updated!=1){
            return R.fail("更新事件状态失败");
        }
        EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO();
        BeanUtils.copyProperties(eventDealDTO, eventTransferRecordDO);
        eventTransferRecordDO.setFromType(1);
        eventTransferRecordDO.setFromId(eventDealDTO.getUserId());
        eventTransferRecordDO.setFromName(eventDealDTO.getUserName());
        eventTransferRecordDO.setToType(1);
        eventTransferRecordDO.setToId(eventDealDTO.getUserId());
        eventTransferRecordDO.setProcessDate(new Date());
        eventTransferRecordDO.setEventId(eventDO.getId());
        int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO);
        if(inserted==1){
            //添加音频
            if(StringUtils.isNotEmpty(eventDealDTO.getAudio())){
                EventResourceDO eventResourceDO = new EventResourceDO();
                eventResourceDO.setClassification(3);
                eventResourceDO.setType(2);
                eventResourceDO.setUrl(eventDealDTO.getAudio());
                eventResourceDO.setRefId(eventTransferRecordDO.getId());
                eventResourceDO.setCreateBy(eventDealDTO.getUserId());
                int audioAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                if(audioAdd!=1){
                    throw new ServiceException("添加音频失败");
                }
            }
            //添加视频
            if(StringUtils.isNotEmpty(eventDealDTO.getVideo())){
                EventResourceDO eventResourceDO = new EventResourceDO();
                eventResourceDO.setClassification(3);
                eventResourceDO.setType(3);
                eventResourceDO.setUrl(eventDealDTO.getVideo());
                eventResourceDO.setRefId(eventTransferRecordDO.getId());
                eventResourceDO.setCreateBy(eventDealDTO.getUserId());
                int videoAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                if(videoAdd!=1){
                    throw new ServiceException("添加视频失败");
                }
            }
            //添加图片
            if(StringUtils.isNotEmpty(eventDealDTO.getPics())){
                String[] pica = eventDealDTO.getPics().split(",");
                for (int i = 0; i < pica.length; i++) {
                    EventResourceDO eventResourceDO = new EventResourceDO();
                    eventResourceDO.setClassification(3);
                    eventResourceDO.setType(1);
                    eventResourceDO.setUrl(pica[i]);
                    eventResourceDO.setRefId(eventTransferRecordDO.getId());
                    eventResourceDO.setCreateBy(eventDealDTO.getUserId());
                    int picAdd = eventResourceService.getBaseMapper().insert(eventResourceDO);
                    if(picAdd!=1){
                        throw new ServiceException("添加图片失败");
                    }
                }
            }
            return R.ok();
        }else{
            throw new ServiceException("处理事件记录出错");
        }
    }
    @Override
    public R verifyEvent(EventVerifyDTO eventVerifyDTO) {
        EventDO eventDO = this.getBaseMapper().selectById(eventVerifyDTO.getId());
        boolean canVerifyByUser = eventDO.getEventProcessStatus()==3;
        if(!canVerifyByUser){
            return R.fail("当前不是待验证状态");
        }
        boolean processTypeRight = eventDO.getProcessType()==1;
        if(!processTypeRight){
            return R.fail("当前处理对象不是网格员");
        }
        eventDO.setEventProcessStatus(2);//2已解决
        eventDO.setUpdateBy(eventVerifyDTO.getUserId());
        int updated = this.getBaseMapper().updateById(eventDO);
        if(updated!=1){
            return R.fail("更新事件状态失败");
        }
        EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO();
        eventTransferRecordDO.setFromType(1);
        eventTransferRecordDO.setFromId(eventVerifyDTO.getUserId());
        eventTransferRecordDO.setFromName(eventVerifyDTO.getUserName());
        eventTransferRecordDO.setToType(1);
        eventTransferRecordDO.setToId(eventVerifyDTO.getUserId());
        eventTransferRecordDO.setProcessDate(new Date());
        eventTransferRecordDO.setToName(eventVerifyDTO.getUserName());
        eventTransferRecordDO.setEventId(eventDO.getId());
        int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO);
        if(inserted==1){
            return R.ok();
        }else{
            throw new ServiceException("事件处理添加出错");
        }
    }
    @Override
    public R republishEvent(EventRepublicDTO eventRepublicDTO) {
        EventDO eventDO = this.getBaseMapper().selectById(eventRepublicDTO.getId());
        boolean canRepublishByUser = eventDO.getEventStatus()==4;
        if(!canRepublishByUser){
            return R.fail("当前不是撤销状态");
        }
        eventDO.setEventStatus(2);//2已解决
        eventDO.setUpdateBy(eventRepublicDTO.getUserId());
        int updated = this.getBaseMapper().updateById(eventDO);
        if(updated!=1){
            return R.fail("更新事件状态失败");
        }
        EventTransferRecordDO eventTransferRecordDO = new EventTransferRecordDO();
        eventTransferRecordDO.setFromType(1);
        eventTransferRecordDO.setFromId(eventRepublicDTO.getUserId());
        eventTransferRecordDO.setFromName(eventRepublicDTO.getUserName());
        eventTransferRecordDO.setToType(1);
        eventTransferRecordDO.setToId(eventRepublicDTO.getUserId());
        eventTransferRecordDO.setProcessDate(new Date());
        eventTransferRecordDO.setEventId(eventDO.getId());
        int inserted = eventTransferRecordService.getBaseMapper().insert(eventTransferRecordDO);
        if(inserted==1){
            return R.ok();
        }else{
            throw new ServiceException("事件处理添加出错");
        }
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridDataMapper.xml
@@ -98,5 +98,76 @@
            ORDER BY ${pageEventGridDataDTO.sortColumns} ${pageEventGridDataDTO.sortType}
        </if>
    </select>
    <select id="selectUserGrid" resultType="com.panzhihua.common.model.vos.grid.EventGridDataVO"
            parameterType="com.panzhihua.common.model.dtos.grid.PageEventGridDataDTO">
        SELECT gd.id, gd.type, gd.zone_id, gd.grid_street_id, gd.grid_community_id, gd.grid_name, gd.map_level, gd.area, gd.line_color,
            gd.line_broadband, gd.fill_color, gd.remarks, gd.data, gd.create_by, gd.create_at, gd.update_by, gd.update_at
        FROM event_grid_data gd left join event_grid_member_relation gdr on gd.id = gdr.grid_id
        <where>
            <if test="pageEventGridDataDTO.userId!=null">
                AND gdr.grid_member_id = #{pageEventGridDataDTO.userId}
            </if>
            <if test="pageEventGridDataDTO.id!=null">
                AND gd.id = #{pageEventGridDataDTO.id}
            </if>
            <if test="pageEventGridDataDTO.type!=null">
                AND gd.type = #{pageEventGridDataDTO.type}
            </if>
            <if test="pageEventGridDataDTO.zoneId!=null">
                AND gd.zone_id = #{pageEventGridDataDTO.zoneId}
            </if>
            <if test="pageEventGridDataDTO.gridStreetId!=null">
                AND gd.grid_street_id = #{pageEventGridDataDTO.gridStreetId}
            </if>
            <if test="pageEventGridDataDTO.gridCommunityId!=null">
                AND gd.grid_community_id = #{pageEventGridDataDTO.gridCommunityId}
            </if>
            <if test="pageEventGridDataDTO.gridName!=null">
                AND gd.grid_name = #{pageEventGridDataDTO.gridName}
            </if>
            <if test="pageEventGridDataDTO.mapLevel!=null">
                AND gd.map_level = #{pageEventGridDataDTO.mapLevel}
            </if>
            <if test="pageEventGridDataDTO.area!=null">
                AND gd.area = #{pageEventGridDataDTO.area}
            </if>
            <if test="pageEventGridDataDTO.lineColor!=null">
                AND gd.line_color = #{pageEventGridDataDTO.lineColor}
            </if>
            <if test="pageEventGridDataDTO.lineBroadband!=null">
                AND gd.line_broadband = #{pageEventGridDataDTO.lineBroadband}
            </if>
            <if test="pageEventGridDataDTO.fillColor!=null">
                AND gd.fill_color = #{pageEventGridDataDTO.fillColor}
            </if>
            <if test="pageEventGridDataDTO.remarks!=null">
                AND gd.remarks = #{pageEventGridDataDTO.remarks}
            </if>
            <if test="pageEventGridDataDTO.data!=null">
                AND gd.data = #{pageEventGridDataDTO.data}
            </if>
            <if test="pageEventGridDataDTO.createBy!=null">
                AND gd.create_by = #{pageEventGridDataDTO.createBy}
            </if>
            <if test="pageEventGridDataDTO.createAtBegin!=null">
                AND gd.create_at >= #{pageEventGridDataDTO.createAtBegin}
            </if>
            <if test="pageEventGridDataDTO.createAtEnd!=null">
                AND gd.create_at &lt;= #{pageEventGridDataDTO.createAtEnd}
            </if>
            <if test="pageEventGridDataDTO.updateBy!=null">
                AND gd.update_by = #{pageEventGridDataDTO.updateBy}
            </if>
            <if test="pageEventGridDataDTO.updateAtBegin!=null">
                AND gd.update_at >= #{pageEventGridDataDTO.updateAtBegin}
            </if>
            <if test="pageEventGridDataDTO.updateAtEnd!=null">
                AND gd.update_at &lt;= #{pageEventGridDataDTO.updateAtEnd}
            </if>
        </where>
        <if test="pageEventGridDataDTO.sortColumns!=null">
            ORDER BY ${pageEventGridDataDTO.sortColumns} ${pageEventGridDataDTO.sortType}
        </if>
    </select>
</mapper>
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventResourceMapper.xml
@@ -5,8 +5,9 @@
<mapper namespace="com.panzhihua.service_grid.dao.EventResourceMapper">
     <resultMap id="baseResult" type="com.panzhihua.service_grid.model.dos.EventResourceDO">
        <result property="classification" column="classification"/>
        <result property="id" column="id"/>
        <result property="classification" column="classification"/>
        <result property="refId" column="ref_id"/>
        <result property="type" column="type"/>
        <result property="resourceName" column="resource_name"/>
        <result property="resourceSize" column="resource_size"/>
@@ -17,7 +18,7 @@
    <sql id="columns">
    <![CDATA[
        classification,id,type,resource_name,resource_size,url,create_by,create_at
        id,classification,ref_id,type,resource_name,resource_size,url,create_by,create_at
    ]]>
    </sql>
@@ -33,6 +34,9 @@
           <if test="pageEventResourceDTO.id!=null">
                AND id = #{pageEventResourceDTO.id}
            </if>
            <if test="pageEventResourceDTO.refId!=null">
                AND ref_id = #{pageEventResourceDTO.refId}
            </if>
           <if test="pageEventResourceDTO.type!=null">
                AND type = #{pageEventResourceDTO.type}
            </if>
springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventTransferRecordMapper.xml
@@ -8,10 +8,10 @@
        <result property="id" column="id"/>
        <result property="eventId" column="event_id"/>
        <result property="fromType" column="from_type"/>
        <result property="from" column="from"/>
        <result property="fromId" column="from_id"/>
        <result property="fromName" column="from_name"/>
        <result property="toType" column="to_type"/>
        <result property="to" column="to"/>
        <result property="toId" column="to_id"/>
        <result property="toName" column="to_name"/>
        <result property="processResult" column="process_result"/>
        <result property="processDate" column="process_date"/>
@@ -20,7 +20,7 @@
    <sql id="columns">
    <![CDATA[
        id,event_id,from_type,from,from_name,to_type,to,to_name,process_result,process_date,create_at
        id,event_id,from_type,from_id,from_name,to_type,to_id,to_name,process_result,process_date,create_at
    ]]>
    </sql>
@@ -40,7 +40,7 @@
                AND from_type = #{pageEventTransferRecordDTO.fromType}
            </if>
           <if test="pageEventTransferRecordDTO.from!=null">
                AND from = #{pageEventTransferRecordDTO.from}
                AND from_id = #{pageEventTransferRecordDTO.fromId}
            </if>
           <if test="pageEventTransferRecordDTO.fromName!=null">
                AND from_name = #{pageEventTransferRecordDTO.fromName}
@@ -49,7 +49,7 @@
                AND to_type = #{pageEventTransferRecordDTO.toType}
            </if>
           <if test="pageEventTransferRecordDTO.to!=null">
                AND to = #{pageEventTransferRecordDTO.to}
                AND to_id = #{pageEventTransferRecordDTO.toId}
            </if>
           <if test="pageEventTransferRecordDTO.toName!=null">
                AND to_name = #{pageEventTransferRecordDTO.toName}