Browse Source

分页查询通知接口

dev
yujintao 6 years ago
parent
commit
3afcb5e883
  1. 6
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/NoticeController.java
  2. 12
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java
  3. 10
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NoticeService.java
  4. 10
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java
  5. 17
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml

6
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/controller/NoticeController.java

@ -55,6 +55,12 @@ public class NoticeController {
return new Result<PageData<NoticeDTO>>().ok(page); return new Result<PageData<NoticeDTO>>().ok(page);
} }
@GetMapping("pageForReadOnly")
public Result<PageData<NoticeDTO>> pageForReadOnly(@RequestParam Map<String, Object> params) {
PageData<NoticeDTO> page = noticeService.pageForReadOnly(params);
return new Result<PageData<NoticeDTO>>().ok(page);
}
@GetMapping("{id}") @GetMapping("{id}")
public Result<NoticeDTO> get(@PathVariable("id") String id) { public Result<NoticeDTO> get(@PathVariable("id") String id) {
NoticeDTO data = noticeService.get(id); NoticeDTO data = noticeService.get(id);

12
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/dao/NoticeDao.java

@ -18,6 +18,7 @@
package com.elink.esua.epdc.dao; package com.elink.esua.epdc.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.NoticeDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcNoticeListFormDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcNoticeListFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcNoticeDetailResultDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcNoticeDetailResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcNoticeListResultDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcNoticeListResultDTO;
@ -26,6 +27,7 @@ import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 通知表 * 通知表
@ -75,4 +77,14 @@ public interface NoticeDao extends BaseDao<NoticeEntity> {
* @date 2019/9/25 14:28 * @date 2019/9/25 14:28
*/ */
int updateNoticeById(NoticeEntity entity); int updateNoticeById(NoticeEntity entity);
/**
* 根据用户数据权限匹配通知部门关系表
*
* @param params
* @return java.util.List<com.elink.esua.epdc.dto.NoticeDTO>
* @author work@yujt.net.cn
* @date 2020/2/1 11:28
*/
List<NoticeDTO> selectListByDeptId(Map<String, Object> params);
} }

10
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/NoticeService.java

@ -137,4 +137,14 @@ public interface NoticeService extends BaseService<NoticeEntity> {
* @date 2019/9/6 15:55 * @date 2019/9/6 15:55
*/ */
Result updateReadingAmount(EpdcNoticeBrowseFormDTO formDto); Result updateReadingAmount(EpdcNoticeBrowseFormDTO formDto);
/**
* 分页查询通知列表
*
* @param params
* @return com.elink.esua.epdc.commons.tools.page.PageData<com.elink.esua.epdc.dto.NoticeDTO>
* @author work@yujt.net.cn
* @date 2020/2/1 11:37
*/
PageData<NoticeDTO> pageForReadOnly(Map<String, Object> params);
} }

10
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java

@ -83,6 +83,16 @@ public class NoticeServiceImpl extends BaseServiceImpl<NoticeDao, NoticeEntity>
return getPageData(page, NoticeDTO.class); return getPageData(page, NoticeDTO.class);
} }
@Override
public PageData<NoticeDTO> pageForReadOnly(Map<String, Object> params) {
String noticeTitle = (String) params.get("noticeTitle");
params.put("noticeTitle", noticeTitle.trim());
params.put("deptIdList", SecurityUser.getUser().getDeptIdList());
IPage<NoticeDTO> page = getPage(params);
List<NoticeDTO> list = baseDao.selectListByDeptId(params);
return new PageData<>(list, page.getTotal());
}
@Override @Override
public List<NoticeDTO> list(Map<String, Object> params) { public List<NoticeDTO> list(Map<String, Object> params) {
List<NoticeEntity> entityList = baseDao.selectList(getWrapper(params)); List<NoticeEntity> entityList = baseDao.selectList(getWrapper(params));

17
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml

@ -54,4 +54,21 @@
dept_name=#{deptName} dept_name=#{deptName}
WHERE id = #{id} AND del_flag = '0' WHERE id = #{id} AND del_flag = '0'
</update> </update>
<select id="selectListByDeptId" resultType="com.elink.esua.epdc.dto.NoticeDTO">
SELECT
n.NOTICE_TITLE,n.CREATED_TIME,n.DEPT_NAME,n.ID,n.ALL_DEPT_NAMES,n.READING_AMOUNT
FROM
( SELECT DISTINCT nd.NOTICE_ID FROM epdc_notice_department nd
WHERE nd.DEPT_ID IN
<foreach collection="deptIdList" open="(" separator="," close=")" item="deptId">#{deptId}</foreach>
AND nd.DEL_FLAG = '0'
GROUP BY nd.NOTICE_ID
) t0
LEFT JOIN epdc_notice n ON t0.NOTICE_ID = n.ID
WHERE
n.ID IS NOT NULL AND n.DEL_FLAG = '0' AND n.NOTICE_TITLE LIKE '%${noticeTitle}%'
ORDER BY n.CREATED_TIME DESC
</select>
</mapper> </mapper>
Loading…
Cancel
Save