Browse Source

兴趣群话题PC页面

hotfix/yujt_opt
zhangyuan 5 years ago
parent
commit
fbf32972bc
  1. 35
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/controller/TopicController.java
  2. 10
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/dao/GroupTopicDao.java
  3. 20
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/service/TopicService.java
  4. 42
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/service/impl/TopicServiceImpl.java
  5. 52
      epdc-cloud-property/src/main/resources/mapper/smile/topic/GroupTopicDao.xml

35
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/controller/TopicController.java

@ -27,12 +27,12 @@ import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.modules.smile.topic.excel.TopicExcel;
import com.elink.esua.epdc.modules.smile.topic.service.TopicService;
import com.elink.esua.epdc.smile.dto.topic.TopicDTO;
import com.elink.esua.epdc.smile.dto.topic.TopicDetailDTO;
import com.elink.esua.epdc.smile.dto.topic.form.TopicCloseFormDTO;
import com.elink.esua.epdc.smile.dto.topic.form.TopicReviewFormDTO;
import com.elink.esua.epdc.modules.smile.topic.excel.TopicExcel;
import com.elink.esua.epdc.modules.smile.topic.service.TopicService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -84,6 +84,21 @@ public class TopicController {
return new Result<PageData<TopicDTO>>().ok(page);
}
/**
* PC端 - 兴趣群话题管理 - 列表分页
*
* @param params
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.commons.tools.page.PageData < com.elink.esua.epdc.smile.dto.topic.TopicDTO>>
* @author work@yujt.net.cn
* @date 2020/7/3 17:32
*/
@GetMapping("interestpage")
@DataFilter(tableAlias = "temp", deptId = "grid_id", prefix = "AND", isPendingCreator = false)
public Result<PageData<TopicDTO>> interestPage(@RequestParam Map<String, Object> params) {
PageData<TopicDTO> page = topicService.listInterestTopic(params);
return new Result<PageData<TopicDTO>>().ok(page);
}
@GetMapping("{id}")
public Result<TopicDTO> get(@PathVariable("id") String id) {
TopicDTO data = topicService.get(id);
@ -146,6 +161,22 @@ public class TopicController {
ExcelUtils.exportExcelToTarget(response, null, list, TopicExcel.class);
}
/**
* PC端 - 兴趣群话题管理 - 导出
*
* @param params
* @param response
* @return void
* @author
* @date 2020/7/3 17:33
*/
@GetMapping("interestexport")
@DataFilter(tableAlias = "temp", deptId = "grid_id", prefix = "AND", isPendingCreator = false)
public void exportInterest(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<TopicDTO> list = topicService.listInterest(params);
ExcelUtils.exportExcelToTarget(response, null, list, TopicExcel.class);
}
/**
* 关闭话题
*

10
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/dao/GroupTopicDao.java

@ -95,6 +95,16 @@ public interface GroupTopicDao extends BaseDao<TopicEntity> {
*/
List<TopicDTO> selectPoliceListTopic(Map<String, Object> params);
/**
* 兴趣群话题列表
*
* @return java.util.List<com.elink.esua.epdc.smile.dto.topic.TopicDTO>
* @params [params]
* @author liuchuang
* @since 2019/11/12 9:45
*/
List<TopicDTO> selectInterestListTopic(Map<String, Object> params);
/**
* 话题详情
*

20
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/service/TopicService.java

@ -71,6 +71,16 @@ public interface TopicService extends BaseService<TopicEntity> {
*/
PageData<TopicDTO> listPoliceTopic(Map<String, Object> params);
/**
* 兴趣群话题列表
*
* @return com.elink.esua.epdc.commons.tools.page.PageData<com.elink.esua.epdc.smile.dto.topic.TopicDTO>
* @params [params]
* @author liuchuang
* @since 2019/11/12 9:43
*/
PageData<TopicDTO> listInterestTopic(Map<String, Object> params);
/**
* 默认查询
*
@ -91,6 +101,16 @@ public interface TopicService extends BaseService<TopicEntity> {
*/
List<TopicDTO> listPolice(Map<String, Object> params);
/**
* 兴趣默认查询
*
* @param params
* @return java.util.List<TopicDTO>
* @author generator
* @date 2019-10-10
*/
List<TopicDTO> listInterest(Map<String, Object> params);
/**
* 移动端-话题列表
*

42
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/smile/topic/service/impl/TopicServiceImpl.java

@ -27,6 +27,21 @@ import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.DateUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
import com.elink.esua.epdc.modules.smile.async.NewsTask;
import com.elink.esua.epdc.modules.smile.async.TopicChangeToIssueTask;
import com.elink.esua.epdc.modules.smile.comment.service.TopicCommentService;
import com.elink.esua.epdc.modules.smile.feign.EventFeignClient;
import com.elink.esua.epdc.modules.smile.group.service.GroupService;
import com.elink.esua.epdc.modules.smile.group.service.UserGroupService;
import com.elink.esua.epdc.modules.smile.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.modules.smile.topic.dao.GroupTopicDao;
import com.elink.esua.epdc.modules.smile.topic.entity.GroupTopicUserReadEntity;
import com.elink.esua.epdc.modules.smile.topic.entity.TopicAuditRecordEntity;
import com.elink.esua.epdc.modules.smile.topic.entity.TopicEntity;
import com.elink.esua.epdc.modules.smile.topic.service.GroupTopicUserReadService;
import com.elink.esua.epdc.modules.smile.topic.service.TopicAuditRecordService;
import com.elink.esua.epdc.modules.smile.topic.service.TopicImgService;
import com.elink.esua.epdc.modules.smile.topic.service.TopicService;
import com.elink.esua.epdc.smile.dto.comment.EpdcCommentsAndAttitudeFromTopicFormDTO;
import com.elink.esua.epdc.smile.dto.comment.EventCommentDTO;
import com.elink.esua.epdc.smile.dto.comment.EventCommentUserAttitudeDTO;
@ -47,21 +62,6 @@ import com.elink.esua.epdc.smile.dto.topic.TopicDetailDTO;
import com.elink.esua.epdc.smile.dto.topic.form.*;
import com.elink.esua.epdc.smile.dto.topic.result.TopicDetailResultDTO;
import com.elink.esua.epdc.smile.dto.topic.result.TopicListResultDTO;
import com.elink.esua.epdc.modules.smile.async.NewsTask;
import com.elink.esua.epdc.modules.smile.async.TopicChangeToIssueTask;
import com.elink.esua.epdc.modules.smile.comment.service.TopicCommentService;
import com.elink.esua.epdc.modules.smile.feign.EventFeignClient;
import com.elink.esua.epdc.modules.smile.group.service.GroupService;
import com.elink.esua.epdc.modules.smile.group.service.UserGroupService;
import com.elink.esua.epdc.modules.smile.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.modules.smile.topic.dao.GroupTopicDao;
import com.elink.esua.epdc.modules.smile.topic.entity.GroupTopicUserReadEntity;
import com.elink.esua.epdc.modules.smile.topic.entity.TopicAuditRecordEntity;
import com.elink.esua.epdc.modules.smile.topic.entity.TopicEntity;
import com.elink.esua.epdc.modules.smile.topic.service.GroupTopicUserReadService;
import com.elink.esua.epdc.modules.smile.topic.service.TopicAuditRecordService;
import com.elink.esua.epdc.modules.smile.topic.service.TopicImgService;
import com.elink.esua.epdc.modules.smile.topic.service.TopicService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -128,6 +128,13 @@ public class TopicServiceImpl extends BaseServiceImpl<GroupTopicDao, TopicEntity
return new PageData<>(list, page.getTotal());
}
@Override
public PageData<TopicDTO> listInterestTopic(Map<String, Object> params) {
IPage<TopicDTO> page = getPage(params);
List<TopicDTO> list = baseDao.selectInterestListTopic(params);
return new PageData<>(list, page.getTotal());
}
@Override
public List<TopicDTO> list(Map<String, Object> params) {
return baseDao.selectListTopic(params);
@ -138,6 +145,11 @@ public class TopicServiceImpl extends BaseServiceImpl<GroupTopicDao, TopicEntity
return baseDao.selectPoliceListTopic(params);
}
@Override
public List<TopicDTO> listInterest(Map<String, Object> params) {
return baseDao.selectInterestListTopic(params);
}
private QueryWrapper<TopicEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);

52
epdc-cloud-property/src/main/resources/mapper/smile/topic/GroupTopicDao.xml

@ -289,6 +289,58 @@
</if>
</select>
<select id="selectInterestListTopic" resultType="com.elink.esua.epdc.smile.dto.topic.TopicDTO">
SELECT
temp.ID,
temp.NICKNAME,
temp.CREATED_TIME,
temp.TOPIC_CONTENT,
temp.COMMENT_NUM,
temp.BROWSE_NUM,
( temp.BROWSE_NUM + temp.COMMENT_NUM ) AS participantsNum,
temp.STATE
FROM
epdc_topic temp
WHERE
temp.DEL_FLAG = '0'
AND temp.STATE IN ( 0, 5, 20)
AND temp.SECTION_CODE = 'interest_group'
<if test="associatedType != null and associatedType != ''">
AND temp.STATE in (0,5,10,15)
</if>
<if test="streetId != null and streetId != ''">
AND (find_in_set(#{streetId},temp.PARENT_DEPT_IDS)
OR find_in_set(#{streetId},temp.ALL_DEPT_IDS))
</if>
<if test="communityId != null and communityId != ''">
AND (find_in_set(#{communityId},temp.PARENT_DEPT_IDS)
OR find_in_set(#{communityId},temp.ALL_DEPT_IDS))
</if>
<if test="gridId != null and gridId != ''">
AND (temp.GRID_ID = #{gridId}
OR find_in_set(#{gridId},temp.ALL_DEPT_IDS))
</if>
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
AND DATE_FORMAT( temp.CREATED_TIME, '%Y-%m-%d' ) BETWEEN #{startTime} AND #{endTime}
</if>
<if test="groupId != null and groupId != ''">
AND temp.GROUP_ID = #{groupId}
</if>
<if test="keyword != null and keyword != ''">
AND temp.TOPIC_CONTENT like concat('%', trim(#{keyword}), '%')
</if>
ORDER BY
<if test="orderType == 0">
temp.CREATED_TIME DESC
</if>
<if test="orderType == 1">
temp.BROWSE_NUM DESC
</if>
<if test="orderType == 2">
temp.COMMENT_NUM DESC
</if>
</select>
<resultMap id="topicDetail" type="com.elink.esua.epdc.smile.dto.topic.TopicDetailDTO">
<result property="nickname" column="NICKNAME"/>
<result property="createdTime" column="CREATED_TIME"/>

Loading…
Cancel
Save