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