Controller
@GetMapping("/myRoomRecord")
@ApiOperation("历史记录")
@Encrypt(params = {"pageNo", "pageSize"})
public AjaxResult myRoomRecord(
@ApiParam(value = "页码", name = "pageNo") @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo,
@ApiParam(value = "页幅", name = "pageSize") @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize) {
CscpUserDetail user= SecurityUtils.getCurrentUser().get();
String userId=String.valueOf(user.getId());
Page<Map<String, Object>> myExamineList = callRoomService.myRoomRecord(new Page<>(pageNo, pageSize), userId);
return AjaxResult.success(myExamineList);
}
Service
public interface CallRoomService extends IService<CallRoom> {
Page<Map<String, Object>> myRoomRecord(Page<Map<String, Object>> page,String userId);
}
ServiceImpl
@Service
public class CallRoomServiceImpl extends ServiceImpl<CallRoomMapper, CallRoom> implements CallRoomService {
@Resource
CallRoomMapper callRoomMapper;
@Override
public Page<Map<String, Object>> myRoomRecord(Page<Map<String, Object>> page, String userId) {
page.setSearchCount(true);
List<Map<String, Object>> examineList = callRoomMapper.myRoomRecord(page, userId);
return page.setRecords(examineList);
}
}
Mapper
@Mapper
public interface CallRoomMapper extends BaseMapper<CallRoom> {
List<Map<String, Object>> myRoomRecord(Page<Map<String, Object>> page, @Param("userId") String userId);
}
Mapper.xml里面的SQL语句
<select id="myRoomRecord" resultType="java.util.Map">
SELECT t.ROOM_ID,r.CREATE_TIME,t.IS_KICK_OUT,t.KICK_TIME,t.IS_REJECT_CALL,t.REJECT_CALL_TIME,r.ROOM_NAME,r.EXIT_TIME,r.ROOM_STATUS,r.ROOM_TYPE
FROM tbl_call_room_user t
LEFT JOIN tbl_call_room r ON t.ROOM_ID=r.ROOM_ID
WHERE t.USER_ID=#{userId} AND t.USER_TYPE='2' ORDER BY r.CREATE_TIME DESC
</select>