jeecg-boot中分頁接口用自定義sql和實體實現


1、controller實現

@RequestMapping(value = "/list", method = RequestMethod.GET)
    public Result<Page<SysAnnouncement>> queryPageList(SysAnnouncement sysAnnouncement,
                                      @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                      @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                      HttpServletRequest req) {
        
        Page<SysAnnouncement> page = new Page<SysAnnouncement>(pageNo,pageSize);
        Page<SysAnnouncement> pageList = sysAnnouncementService.querySysCementPageByUserId(page,"","1");//通知公告消息
        log.info("查詢當前頁:"+pageList.getCurrent());
        log.info("查詢當前頁數量:"+pageList.getSize());
        log.info("查詢結果數量:"+pageList.getRecords().size());
        log.info("數據總數:"+pageList.getTotal());
        return Result.ok(pageList);
    }

2、接口實現

public Page<SysAnnouncement> querySysCementPageByUserId(Page<SysAnnouncement> page,String userId,String msgCategory);

3、service實現

@Override
    public Page<SysAnnouncement> querySysCementPageByUserId(Page<SysAnnouncement> page, String userId,String msgCategory) {
         return page.setRecords(sysAnnouncementMapper.querySysCementListByUserId(page, userId, msgCategory));
    }

4、mapper接口

public interface SysAnnouncementMapper extends BaseMapper<SysAnnouncement> {
    List<SysAnnouncement> querySysCementListByUserId(Page<SysAnnouncement> page, String userId,String msgCategory);

}

5、xml

<select id="querySysCementListByUserId" resultMap="org.jeecg.modules.system.entity.SysAnnouncement">
       select sa.* from sys_announcement sa,sys_announcement_send sas 
       where sa.id = sas.annt_id 
       and sa.send_status = '1'
       and sa.del_flag = '0'
       and sas.user_id = #{userId}
       and sa.msg_category = #{msgCategory}
       and sas.read_flag = '0'
    </select>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM