diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/controller/NoticeController.java b/Pinnacle/src/main/java/com/cfive/pinnacle/controller/NoticeController.java index 5e6a6e9..5d0dc86 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/controller/NoticeController.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/controller/NoticeController.java @@ -39,15 +39,15 @@ public class NoticeController { //分页查询所有公告或分页模糊查询 @GetMapping("/page") @PreAuthorize("hasAuthority('notice:manage:get')") - public ResponseResult> selectPageNotice(Integer currentPage, Integer pageSize, String title, String type, String startTime, String endTime) { - Page noticePage = null; + public ResponseResult> selectPageNotice(Integer currentPage, Integer pageSize, String title, String type, String startTime, String endTime,String userName) { + Page noticePage; if (null != currentPage && null != pageSize) { noticePage = PageDTO.of(currentPage, pageSize); } else { // 不进行分页 noticePage = PageDTO.of(1, -1); } - IPage noticeIPage = noticeService.selectPageNotice(noticePage, title.trim(), type.trim(), startTime.trim(), endTime.trim()); + IPage noticeIPage = noticeService.selectPageNotice(noticePage, title.trim(), type.trim(), startTime.trim(), endTime.trim(),userName.trim()); int code = noticeIPage.getRecords() != null ? ResponseCode.DATABASE_SELECT_OK : ResponseCode.DATABASE_SELECT_ERROR; String msg = noticeIPage.getRecords() != null ? String.valueOf(noticeIPage.getTotal()) : "数据查询失败,请重试!"; return ResponseResult.build(code, msg, noticeIPage.getRecords()); diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/NoticeMapper.java b/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/NoticeMapper.java index 053df07..0ae3f0c 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/NoticeMapper.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/NoticeMapper.java @@ -20,5 +20,6 @@ import java.util.List; public interface NoticeMapper extends BaseMapper { Notice selectByNoticeId(Long nid); - IPage selectPageNotice(IPage page, String title, String type, LocalDateTime startTime, LocalDateTime endTime); + IPage selectPageNotice(IPage page, String title, String type, LocalDateTime startTime, LocalDateTime endTime,String userName); + } diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/service/INoticeService.java b/Pinnacle/src/main/java/com/cfive/pinnacle/service/INoticeService.java index 2afa2f3..7e75fad 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/service/INoticeService.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/service/INoticeService.java @@ -27,5 +27,5 @@ public interface INoticeService extends IService { Boolean addNotice(Notice notice); - IPage selectPageNotice(IPage page, String title, String type, String startTime, String endTime); + IPage selectPageNotice(IPage page, String title, String type, String startTime, String endTime,String userName); } diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/NoticeServiceImpl.java b/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/NoticeServiceImpl.java index 02ac5b4..94871c1 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/NoticeServiceImpl.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/NoticeServiceImpl.java @@ -44,13 +44,13 @@ public class NoticeServiceImpl extends ServiceImpl impleme } @Override - public IPage selectPageNotice(IPage page, String title, String type, String startTime, String endTime) { + public IPage selectPageNotice(IPage page, String title, String type, String startTime, String endTime,String userName) { LocalDateTime start=null,end=null; if (startTime!=""&&endTime!=""){ start= LocalDateTime.parse(startTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); end = LocalDateTime.parse(endTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); } - return noticeMapper.selectPageNotice(page, title, type, start, end); + return noticeMapper.selectPageNotice(page, title, type, start, end,userName); } @Override diff --git a/Pinnacle/src/main/resources/mapper/NoticeMapper.xml b/Pinnacle/src/main/resources/mapper/NoticeMapper.xml index b366e44..295725d 100644 --- a/Pinnacle/src/main/resources/mapper/NoticeMapper.xml +++ b/Pinnacle/src/main/resources/mapper/NoticeMapper.xml @@ -42,16 +42,19 @@ left join t_user u on n.sender_id = u.id - and instr(title,#{title})>0 + and instr(n.title,#{title})>0 and instr(type.name,#{type})>0 - and send_time >= #{startTime} + and n.send_time >= #{startTime} - and end_time < #{endTime} + and n.end_time < #{endTime} + + + and u.username = #{userName} and n.deleted = 0 and n.old = 0 diff --git a/ui/src/components/notice/NoticeHead.vue b/ui/src/components/notice/NoticeHead.vue index 5c52cf4..0b1bdad 100644 --- a/ui/src/components/notice/NoticeHead.vue +++ b/ui/src/components/notice/NoticeHead.vue @@ -108,9 +108,11 @@ export default { title: '', type: '', startTime: '', - endTime: '' + endTime: '', + userName: '' } }) + this.$emit('selectByCond') } }, computed: { diff --git a/ui/src/components/notice/NoticeManageTable.vue b/ui/src/components/notice/NoticeManageTable.vue index 28f3106..812b638 100644 --- a/ui/src/components/notice/NoticeManageTable.vue +++ b/ui/src/components/notice/NoticeManageTable.vue @@ -77,7 +77,7 @@ /> 10) { return title.substring(0, 10) + ' ...' @@ -207,8 +203,19 @@ export default { return title } }, - filterTag(value, row) { - return row.sender.username === value + filterTag(value) { + noticeStore.$patch((state) => { + state.search.userName = value + }) + noticeStore.selectAllNotice( + this.currentPage, + this.pageSize, + this.search.title, + this.search.type, + this.search.startTime, + this.search.endTime, + this.search.userName + ) }, formatDate(row, column) { // 获取单元格数据 @@ -253,7 +260,8 @@ export default { this.search.title, this.search.type, this.search.startTime, - this.search.endTime + this.search.endTime, + this.search.userName ) }, handleCurrentChange(currentPage) { @@ -267,12 +275,13 @@ export default { this.search.title, this.search.type, this.search.startTime, - this.search.endTime + this.search.endTime, + this.search.userName ) } }, mounted() { - noticeStore.selectAllNotice(this.currentPage, this.pageSize, '', '', '', '') + noticeStore.selectAllNotice(this.currentPage, this.pageSize, '', '', '', '', '') }, updated() { this.$refs.tableRef.clearFilter(['sender.username']) diff --git a/ui/src/pages/notice/NoticeManage.vue b/ui/src/pages/notice/NoticeManage.vue index 36d9f27..4d8177c 100644 --- a/ui/src/pages/notice/NoticeManage.vue +++ b/ui/src/pages/notice/NoticeManage.vue @@ -1,7 +1,7 @@