Browse Source

详情增加返参;回复、立项、转服务、办结增加红点提示

master
sunyuchao 3 years ago
parent
commit
06bb4971bf
  1. 82
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/IcEventListResultDTO.java
  2. 15
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/IcEventServiceImpl.java
  3. 55
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/IcEventDao.xml

82
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/IcEventListResultDTO.java

@ -30,9 +30,13 @@ public class IcEventListResultDTO implements Serializable {
*/
private String gridName;
/**
* 事件内容
* 网格的所属组织
*/
private String eventContent;
private String agencyId;
/**
* 报事的人居民端/pc端居民Id可为空
*/
private String reportUserId;
/**
* 图片[url集合]
*/
@ -42,18 +46,17 @@ public class IcEventListResultDTO implements Serializable {
*/
private List<String> voiceList;
/**
* 上报渠道[字典表]
* 上报渠道
*/
private String sourceType;
private String sourceTypeName;
/**
* 发生时间
* 纬度
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date happenTime;
private String latitude;
/**
* 上报渠道
* 经度
*/
private String sourceTypeName;
private String longitude;
/**
* 地址
*/
@ -66,6 +69,23 @@ public class IcEventListResultDTO implements Serializable {
* 手机号
*/
private String mobile;
/**
* 身份证号
*/
private String idCard;
/**
* 上报渠道[字典表]
*/
private String sourceType;
/**
* 发生时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date happenTime;
/**
* 事件内容
*/
private String eventContent;
/**
* 群众满意度[满意度 - 不满意:bad基本满意:good非常满意:perfect]
*/
@ -91,7 +111,49 @@ public class IcEventListResultDTO implements Serializable {
* 事件创建人
*/
private String createdUserId;
/**
* 办结时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date closeCaseTime;
/**
* 0:已回复 1:已转项目 1:已转需求
*/
private String operationType;
/**
* 项目需求ID
*/
private String operationId;
/**
* 事件是否被阅读过;1已读针对报事人待处理列表
*/
private Integer readFlag;
/**
* 报事人的红点:展示1不展示0人大代表回复工作人员回复/立项/转需求/办结更新为1;
*/
private Integer redDot;
/**
* 最近一次操作时间回复立项转需求办结更新此列
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date latestOperatedTime;
/**
* 是否解决已解决 resolved未解决 un_solved
*/
private String resolveStatus;
/**
* 结案说明
*/
private String closeRemark;
/**
* 评论人
*/
private String commentUserId;
/**
* 评论时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date commentTime;
/**
* 上级分类ID 顶级此列存储0
*/

15
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/IcEventServiceImpl.java

@ -1,6 +1,7 @@
package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.AppClientConstant;
import com.epmet.commons.tools.constant.FieldConstant;
@ -210,10 +211,14 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
}
}
String icEventId = UUID.randomUUID().toString().replace("-", "");
//事件Id
String icEventId = IdWorker.getIdStr();
//事件表红点,回复、立项、转服务、办结展示红点【0不展示 1展示】
int redDot = 0;
//2.判断是否立项或转需求
//2-1.项目立项
if (StringUtils.isNotBlank(formDTO.getOperationType()) && "1".equals(formDTO.getOperationType())) {
redDot = 1;
IcEventToProjectFormDTO toProject = formDTO.getProject();
toProject.setCustomerId(formDTO.getCustomerId());
toProject.setUserId(formDTO.getUserId());
@ -225,6 +230,7 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
}
//2-2.转需求
if (StringUtils.isNotBlank(formDTO.getOperationType()) && "2".equals(formDTO.getOperationType())) {
redDot = 1;
IcDemandFormDTO dto = formDTO.getDemand();
//需求人默认是当前用户id
dto.setDemandUserId(formDTO.getUserId());
@ -249,7 +255,7 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
if("closed_case".equals(formDTO.getStatus())){
entity.setCloseCaseTime(new Date());
}
insert(entity);
//insert(entity);
//3-2.附件数据保存
List<IcEventAttachmentEntity> imageEntityList = new ArrayList<>();
if (!CollectionUtils.isEmpty(formDTO.getImageList())) {
@ -294,6 +300,7 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
Date date = new Date();
//3-5.回复数据保存
if (StringUtils.isNotBlank(formDTO.getContent())) {
redDot = 1;
IcEventReplyEntity replyEntity = new IcEventReplyEntity();
replyEntity.setCustomerId(formDTO.getCustomerId());
replyEntity.setIcEventId(entity.getId());
@ -316,10 +323,14 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
}
//选择了已完成
if (StringUtils.isNotBlank(formDTO.getOperationType()) && "closed_case".equals(formDTO.getStatus())) {
redDot = 1;
date.setTime(date.getTime() + 6000 * 1);
logList.add(logEntity(formDTO.getCustomerId(), entity.getId(), formDTO.getUserId(), date, "close_case", "close_case"));
}
icEventOperationLogService.insertBatch(logList);
entity.setRedDot(redDot);
insert(entity);
}
/**

55
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/IcEventDao.xml

@ -87,17 +87,33 @@
<resultMap id="icEventMap" type="com.epmet.dto.result.IcEventListResultDTO">
<id property="icEventId" column="icEventId"/>
<result property="agencyId" column="agency_id"/>
<result property="gridId" column="grid_id"/>
<result property="sourceType" column="source_type" />
<result property="address" column="address" />
<result property="reportUserId" column="report_user_id"/>
<result property="name" column="name" />
<result property="mobile" column="mobile" />
<result property="satisfaction" column="satisfaction" />
<result property="idCard" column="id_card" />
<result property="sourceType" column="source_type"/>
<result property="happenTime" column="happen_time"/>
<result property="eventContent" column="event_content"/>
<result property="latitude" column="latitude"/>
<result property="longitude" column="longitude"/>
<result property="address" column="address"/>
<result property="status" column="status"/>
<result property="statusName" column="statusName" />
<result property="closeCaseTime" column="close_case_time"/>
<result property="satisfaction" column="satisfaction"/>
<result property="satisfactionName" column="satisfactionName" />
<result property="operationType" column="operation_type"/>
<result property="operationId" column="operation_id"/>
<result property="readFlag" column="read_flag"/>
<result property="redDot" column="red_dot"/>
<result property="latestOperatedTime" column="latest_operated_time"/>
<result property="resolveStatus" column="resolve_status"/>
<result property="closeRemark" column="close_remark"/>
<result property="commentUserId" column="comment_user_id"/>
<result property="commentTime" column="satisfactionName" />
<result property="createdTime" column="created_time" />
<result property="status" column="status" />
<result property="statusName" column="statusName" />
<result property="happenTime" column="happen_time" />
<result property="createdUserId" column="created_by" />
<result property="categoryId" column="category_id" />
<collection property="attachmentList" ofType="com.epmet.dto.result.IcEventListResultDTO$Attachment"
@ -122,18 +138,33 @@
<select id="icEventList" parameterType="map" resultMap="icEventMap">
SELECT
ie.id icEventId,
ie.agency_id,
ie.grid_id,
ie.event_content,
ie.source_type,
ie.address,
ie.report_user_id,
ie.`name`,
ie.mobile,
ie.id_card,
ie.source_type,
ie.happen_time,
ie.event_content,
ie.latitude,
ie.longitude,
ie.address,
ie.`status`,
IF(ie.status = 'processing','处理中',IF (ie.status = 'closed_case','已办结',''))statusName,
ie.close_case_time,
ie.satisfaction,
IF(ie.satisfaction = 'bad','不满意',IF (ie.satisfaction = 'good','基本满意',IF (ie.satisfaction = 'perfect','非常满意','')))satisfactionName,
ie.operation_type,
ie.operation_id,
ie.read_flag,
ie.red_dot,
ie.latest_operated_time,
ie.resolve_status,
ie.close_remark,
ie.comment_user_id,
ie.comment_time,
ie.created_time,
ie.`status`,
IF(ie.status = 'processing','处理中',IF (ie.status = 'closed_case','已办结',''))statusName,
ie.happen_time,
ie.created_by,
iec.category_id
FROM

Loading…
Cancel
Save