Browse Source

Merge remote-tracking branch 'origin/dev_resi_event' into develop

master
yinzuomei 4 years ago
parent
commit
3f45136fcd
  1. 4
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/EventProjectInfoDTO.java
  2. 18
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EventDetailResultDTO.java
  3. 9
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java
  4. 9
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventDao.java
  5. 10
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventMentionDao.java
  6. 10
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java
  7. 26
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventReplyServiceImpl.java
  8. 47
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java
  9. 13
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml
  10. 40
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml
  11. 13
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventMentionDao.xml
  12. 9
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventReportOrgDao.xml

4
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/EventProjectInfoDTO.java

@ -1,5 +1,6 @@
package com.epmet.dto; package com.epmet.dto;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@ -29,6 +30,9 @@ public class EventProjectInfoDTO implements Serializable {
*/ */
private String operationTime; private String operationTime;
@JsonIgnore
private String userId;
/** /**
* 报事说明 * 报事说明
*/ */

18
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/EventDetailResultDTO.java

@ -1,6 +1,7 @@
package com.epmet.dto.result; package com.epmet.dto.result;
import com.epmet.dto.EventProjectInfoDTO; import com.epmet.dto.EventProjectInfoDTO;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@ -37,6 +38,9 @@ public class EventDetailResultDTO implements Serializable {
*/ */
private String gridName; private String gridName;
@JsonIgnore
private String gridId;
/** /**
* 是否办结truefalse * 是否办结truefalse
*/ */
@ -62,11 +66,25 @@ public class EventDetailResultDTO implements Serializable {
*/ */
private List<String> eventPerson; private List<String> eventPerson;
/**
* 报事人名字
*/
private String eventPeopleName;
@JsonIgnore
private String eventUserId;
/** /**
* 项目信息 * 项目信息
*/ */
private EventProjectInfoDTO projectInfo; private EventProjectInfoDTO projectInfo;
@JsonIgnore
private String projectId;
@JsonIgnore
private Boolean isProject;
public EventDetailResultDTO() { public EventDetailResultDTO() {
this.eventTime = ""; this.eventTime = "";
this.eventContent = ""; this.eventContent = "";

9
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java

@ -18,6 +18,7 @@
package com.epmet.dao; package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.EventProjectInfoDTO;
import com.epmet.dto.ProjectDTO; import com.epmet.dto.ProjectDTO;
import com.epmet.dto.ProjectStaffDTO; import com.epmet.dto.ProjectStaffDTO;
import com.epmet.dto.form.LatestListFormDTO; import com.epmet.dto.form.LatestListFormDTO;
@ -206,4 +207,12 @@ public interface ProjectDao extends BaseDao<ProjectEntity> {
* @return java.util.List<com.epmet.dto.result.UnResolvedResultDTO> * @return java.util.List<com.epmet.dto.result.UnResolvedResultDTO>
*/ */
List<UnResolvedResultDTO> selectUnResolvedListByGrid(@Param("gridId")String gridId); List<UnResolvedResultDTO> selectUnResolvedListByGrid(@Param("gridId")String gridId);
/**
* @Description 查询报事转项目详情
* @Param projectId
* @author zxc
* @date 2021/8/4 2:43 下午
*/
EventProjectInfoDTO selectEventProjectInfo(@Param("projectId")String projectId);
} }

9
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventDao.java

@ -18,6 +18,7 @@
package com.epmet.dao; package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.result.EventDetailResultDTO;
import com.epmet.dto.result.EventListResultDTO; import com.epmet.dto.result.EventListResultDTO;
import com.epmet.dto.result.MyReportedResultDTO; import com.epmet.dto.result.MyReportedResultDTO;
import com.epmet.entity.ResiEventEntity; import com.epmet.entity.ResiEventEntity;
@ -54,4 +55,12 @@ public interface ResiEventDao extends BaseDao<ResiEventEntity> {
* @date 2021/8/3 23:21 * @date 2021/8/3 23:21
*/ */
List<MyReportedResultDTO> queryMyReported(@Param("userId") String userId, @Param("statusCondition")String statusCondition); List<MyReportedResultDTO> queryMyReported(@Param("userId") String userId, @Param("statusCondition")String statusCondition);
/**
* @Description 查询报事详情
* @Param eventId
* @author zxc
* @date 2021/8/4 2:16 下午
*/
EventDetailResultDTO selectEventDetail(@Param("eventId")String eventId);
} }

10
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventMentionDao.java

@ -55,4 +55,14 @@ public interface ResiEventMentionDao extends BaseDao<ResiEventMentionEntity> {
* @date 2021/8/4 16:37 * @date 2021/8/4 16:37
*/ */
int updateReadFlag(@Param("eventId") String eventId, @Param("userId")String userId); int updateReadFlag(@Param("eventId") String eventId, @Param("userId")String userId);
/**
* 展示红点
*
* @param resiEventId
* @return int
* @author yinzuomei
* @date 2021/8/4 17:41
*/
int updateRedDotShow(@Param("resiEventId") String resiEventId,@Param("excludeUserId")String excludeUserId);
} }

10
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java

@ -41,4 +41,14 @@ public interface ResiEventReportOrgDao extends BaseDao<ResiEventReportOrgEntity>
* @date 2021/8/4 16:40 * @date 2021/8/4 16:40
*/ */
int updateReadFlag(@Param("eventId") String eventId, @Param("orgId") String orgId,@Param("userId") String userId); int updateReadFlag(@Param("eventId") String eventId, @Param("orgId") String orgId,@Param("userId") String userId);
/**
* 展示红点
*
* @param resiEventId
* @return int
* @author yinzuomei
* @date 2021/8/4 17:41
*/
int updateRedDotShow(String resiEventId);
} }

26
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventReplyServiceImpl.java

@ -27,9 +27,7 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.ScanContentUtils; import com.epmet.commons.tools.utils.ScanContentUtils;
import com.epmet.constant.EventConstant; import com.epmet.constant.EventConstant;
import com.epmet.constant.ResiEventAction; import com.epmet.constant.ResiEventAction;
import com.epmet.dao.ResiEventDao; import com.epmet.dao.*;
import com.epmet.dao.ResiEventOperationLogDao;
import com.epmet.dao.ResiEventReplyDao;
import com.epmet.dto.CustomerAgencyDTO; import com.epmet.dto.CustomerAgencyDTO;
import com.epmet.dto.form.ReplyFormDTO; import com.epmet.dto.form.ReplyFormDTO;
import com.epmet.dto.form.ReplyListFormDTO; import com.epmet.dto.form.ReplyListFormDTO;
@ -66,6 +64,10 @@ public class ResiEventReplyServiceImpl extends BaseServiceImpl<ResiEventReplyDao
@Autowired @Autowired
private ResiEventOperationLogDao resiEventOperationLogDao; private ResiEventOperationLogDao resiEventOperationLogDao;
@Autowired @Autowired
private ResiEventMentionDao resiEventMentionDao;
@Autowired
private ResiEventReportOrgDao resiEventReportOrgDao;
@Autowired
private GovOrgOpenFeignClient govOrgOpenFeignClient; private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Autowired @Autowired
private EpmetUserOpenFeignClient epmetUserOpenFeignClient; private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
@ -130,6 +132,12 @@ public class ResiEventReplyServiceImpl extends BaseServiceImpl<ResiEventReplyDao
reCallLog.setActionDesc(ResiEventAction.REPLY.getDesc()); reCallLog.setActionDesc(ResiEventAction.REPLY.getDesc());
reCallLog.setOperateTime(resiEventReplyEntity.getCreatedTime()); reCallLog.setOperateTime(resiEventReplyEntity.getCreatedTime());
resiEventOperationLogDao.insert(reCallLog); resiEventOperationLogDao.insert(reCallLog);
// 1、更新被@的人的红点置为显示
resiEventMentionDao.updateRedDotShow(replyFormDTO.getResiEventId(),null);
// 2、更新报事人的红点置为显示
eventEntity.setRedDot(true);
resiEventDao.updateById(eventEntity);
// 3、组织改为不显示已经在查看详情中操作了 ,目前只有一个组织,如果后面可以报给多个组织,这里入参要增加orgId
} }
private ResiEventEntity queryResiEntity(String resiEventId) { private ResiEventEntity queryResiEntity(String resiEventId) {
@ -186,6 +194,11 @@ public class ResiEventReplyServiceImpl extends BaseServiceImpl<ResiEventReplyDao
reCallLog.setActionDesc(ResiEventAction.REPLY.getDesc()); reCallLog.setActionDesc(ResiEventAction.REPLY.getDesc());
reCallLog.setOperateTime(resiEventReplyEntity.getCreatedTime()); reCallLog.setOperateTime(resiEventReplyEntity.getCreatedTime());
resiEventOperationLogDao.insert(reCallLog); resiEventOperationLogDao.insert(reCallLog);
// 1、更新被@的人的红点置为显示
resiEventMentionDao.updateRedDotShow(formDTO.getResiEventId(),null);
// 2、更新报事人的红点置为不显示已经在查看详情中操作了
// 3、组织改为显示
resiEventReportOrgDao.updateRedDotShow(formDTO.getResiEventId());
} }
/** /**
@ -227,6 +240,13 @@ public class ResiEventReplyServiceImpl extends BaseServiceImpl<ResiEventReplyDao
reCallLog.setActionDesc(ResiEventAction.REPLY.getDesc()); reCallLog.setActionDesc(ResiEventAction.REPLY.getDesc());
reCallLog.setOperateTime(resiEventReplyEntity.getCreatedTime()); reCallLog.setOperateTime(resiEventReplyEntity.getCreatedTime());
resiEventOperationLogDao.insert(reCallLog); resiEventOperationLogDao.insert(reCallLog);
// 1、当前被艾特的人红点不展示已经在查看详情接口操作了,其他被@的人的红点置为显示
resiEventMentionDao.updateRedDotShow(replyFormDTO.getResiEventId(),replyFormDTO.getUserId());
// 2、更新报事人的红点置为显示
eventEntity.setRedDot(true);
resiEventDao.updateById(eventEntity);
// 3、组织改为显示
resiEventReportOrgDao.updateRedDotShow(replyFormDTO.getResiEventId());
} }
private void scanReplyContent(String content) { private void scanReplyContent(String content) {

47
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java

@ -35,11 +35,13 @@ import com.epmet.commons.tools.utils.ScanContentUtils;
import com.epmet.constant.EventConstant; import com.epmet.constant.EventConstant;
import com.epmet.constant.ResiEventAction; import com.epmet.constant.ResiEventAction;
import com.epmet.dao.*; import com.epmet.dao.*;
import com.epmet.dto.EventProjectInfoDTO;
import com.epmet.dto.form.*; import com.epmet.dto.form.*;
import com.epmet.dto.result.*; import com.epmet.dto.result.*;
import com.epmet.entity.*; import com.epmet.entity.*;
import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient;
import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.feign.GovProjectOpenFeignClient;
import com.epmet.service.ResiEventService; import com.epmet.service.ResiEventService;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
@ -82,6 +84,8 @@ public class ResiEventServiceImpl extends BaseServiceImpl<ResiEventDao, ResiEven
private ResiEventMentionDao resiEventMentionDao; private ResiEventMentionDao resiEventMentionDao;
@Autowired @Autowired
private ResiEventOperationLogDao resiEventOperationLogDao; private ResiEventOperationLogDao resiEventOperationLogDao;
@Autowired
private ProjectDao projectDao;
/** /**
* @Description 群众直报待处理处理中已办结列表 * @Description 群众直报待处理处理中已办结列表
@ -144,8 +148,43 @@ public class ResiEventServiceImpl extends BaseServiceImpl<ResiEventDao, ResiEven
*/ */
@Override @Override
public EventDetailResultDTO eventDetail(EventDetailFormDTO formDTO) { public EventDetailResultDTO eventDetail(EventDetailFormDTO formDTO) {
return null; EventDetailResultDTO dto = baseDao.selectEventDetail(formDTO.getEventId());
if (null == dto){
return new EventDetailResultDTO();
}
// 已转项目
if (dto.getIsProject()){
// 查询项目信息
EventProjectInfoDTO eventProjectInfo = projectDao.selectEventProjectInfo(dto.getProjectId());
// 查询操作人的名字
Result<String> staffName = govOrgOpenFeignClient.staffName(eventProjectInfo.getUserId());
if (!staffName.success()){
throw new RenException("查询工作人员名字失败");
}
eventProjectInfo.setOperationName(staffName.getData());
dto.setProjectInfo(eventProjectInfo);
}
// 查询报事人名字
List<String> userIdList = new ArrayList<>();
userIdList.add(dto.getEventUserId());
Result<List<UserBaseInfoResultDTO>> userResult=epmetUserOpenFeignClient.queryUserBaseInfo(userIdList);
if(!userResult.success()|| CollectionUtils.isEmpty(userResult.getData())){
throw new RenException("查询当前用户信息异常");
}
userResult.getData().forEach(u -> {
if (u.getUserId().equals(dto.getEventUserId())){
dto.setEventPeopleName(u.getShowName());
}
});
// 查询所属网格
Result<String> gridNameResult = govOrgOpenFeignClient.gridName(dto.getGridId());
if (!gridNameResult.success()){
throw new RenException("查询所属网格失败");
}
dto.setGridName(gridNameResult.getData());
return dto;
} }
/** /**
* 我要报事-提交 * 我要报事-提交
* *
@ -230,7 +269,8 @@ public class ResiEventServiceImpl extends BaseServiceImpl<ResiEventDao, ResiEven
mentionEntity.setAgencyId(npc.getAgencyId()); mentionEntity.setAgencyId(npc.getAgencyId());
mentionEntity.setPids(npc.getPids()); mentionEntity.setPids(npc.getPids());
mentionEntity.setReadFlag(EventConstant.UN_READ); mentionEntity.setReadFlag(EventConstant.UN_READ);
mentionEntity.setRedDot(true); //默认不展示,因为此时在未读列表中
mentionEntity.setRedDot(false);
list.add(mentionEntity); list.add(mentionEntity);
}); });
return list; return list;
@ -245,7 +285,8 @@ public class ResiEventServiceImpl extends BaseServiceImpl<ResiEventDao, ResiEven
entity.setOrgType(org.getOrgLevel()); entity.setOrgType(org.getOrgLevel());
//默认是未读 //默认是未读
entity.setOrgRead(EventConstant.UN_READ); entity.setOrgRead(EventConstant.UN_READ);
entity.setRedDot(true); //默认是不展示红点,因为此时在待处理中。
entity.setRedDot(false);
list.add(entity); list.add(entity);
}); });
return list; return list;

13
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

@ -379,4 +379,17 @@
ORDER BY a.UPDATED_TIME DESC ORDER BY a.UPDATED_TIME DESC
</select> </select>
<!-- 查询报事转项目详情 -->
<select id="selectEventProjectInfo" resultType="com.epmet.dto.EventProjectInfoDTO">
SELECT
p.ID AS projectId,
IFNULL(DATE_FORMAT(p.CREATED_TIME,'%Y-%m-%d %h-%m-%s'),'') AS operationTime,
p.CREATED_BY AS userId,
IFNULL(pp.PUBLIC_REPLY,'') AS projectDeclare
FROM project p
LEFT JOIN project_process pp ON (pp.PROJECT_ID = p.ID AND pp.DEL_FLAG = '0')
WHERE p.DEL_FLAG = '0'
AND p.ID = #{projectId}
</select>
</mapper> </mapper>

40
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml

@ -88,4 +88,44 @@
</if> </if>
order by re.LATEST_OPERATED_TIME desc order by re.LATEST_OPERATED_TIME desc
</select> </select>
<!-- 报事详情 -->
<resultMap id="selectEventDetailMap" type="com.epmet.dto.result.EventDetailResultDTO">
<result property="isProject" column="isProject"/>
<result property="eventTime" column="eventTime"/>
<result property="eventContent" column="eventContent"/>
<result property="eventAddress" column="eventAddress"/>
<result property="isClosed" column="isClosed"/>
<result property="isResolve" column="isResolve"/>
<result property="isRollback" column="isRollback"/>
<result property="projectId" column="projectId"/>
<result property="gridId" column="gridId"/>
<result property="eventUserId" column="eventUserId"/>
<collection property="eventImgs" ofType="java.lang.String">
<result column="eventImg"/>
</collection>
<collection property="eventPerson" ofType="java.lang.String">
<result column="person"/>
</collection>
</resultMap>
<select id="selectEventDetail" resultMap="selectEventDetailMap">
SELECT
IFNULL(DATE_FORMAT(re.CREATED_TIME,'%Y-%m-%d %H:%i:%s'),'') AS eventTime,
IFNULL(re.EVENT_CONTENT,'') AS eventContent,
IFNULL(re.ADDRESS,'') AS eventAddress,
(CASE WHEN re.`STATUS` = 'processing' THEN FALSE WHEN re.`STATUS` = 'closed_case' THEN TRUE ELSE FALSE END) AS isClosed,
(IF(re.`STATUS` = 'processing', FALSE, (CASE WHEN re.RESOLVE_STATUS = 'resolved' THEN TRUE ELSE FALSE END))) AS isResolve,
(CASE WHEN re.READ_FLAG = 1 THEN FALSE ELSE TRUE END) AS isRollback,
(CASE WHEN re.SHIFT_PROJECT = 1 THEN TRUE ELSE FALSE END) AS isProject,
IFNULL(re.project_id,'') AS projectId,
IFNULL(ea.ATTACHMENT_URL,'') AS eventImg,
concat('人大代表-',IFNULL(em.USER_SHOW_NAME,'')) AS person,
re.GRID_ID AS gridId,
re.CREATED_BY AS eventUserId
FROM resi_event re
LEFT JOIN resi_event_attachment ea ON (ea.RESI_EVENT_ID = re.ID AND ea.DEL_FLAG = '0')
LEFT JOIN resi_event_mention em ON (em.RESI_EVENT_ID = re.ID AND em.DEL_FLAG = '0')
WHERE re.DEL_FLAG = '0'
AND re.ID = #{eventId}
</select>
</mapper> </mapper>

13
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventMentionDao.xml

@ -65,4 +65,17 @@
AND USER_ID = #{userId} AND USER_ID = #{userId}
AND DEL_FLAG = '0' AND DEL_FLAG = '0'
</update> </update>
<!-- 除了当前用户,都置为显示红点 -->
<update id="updateRedDotShow" parameterType="map">
UPDATE resi_event_mention
SET RED_DOT = '1',
UPDATED_TIME = NOW()
WHERE
RESI_EVENT_ID = #{resiEventId}
<if test="excludeUserId != null and excludeUserId.trim() != ''">
and user_id !=#{excludeUserId}
</if>
AND DEL_FLAG = '0'
</update>
</mapper> </mapper>

9
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventReportOrgDao.xml

@ -14,4 +14,13 @@
AND ORG_ID = #{orgId} AND ORG_ID = #{orgId}
AND DEL_FLAG = '0' AND DEL_FLAG = '0'
</update> </update>
<update id="updateRedDotShow" parameterType="java.lang.String">
UPDATE resi_event_report_org
SET RED_DOT = '1',
UPDATED_TIME = NOW()
WHERE
RESI_EVENT_ID = #{resiEventId}
AND DEL_FLAG = '0'
</update>
</mapper> </mapper>
Loading…
Cancel
Save