TT#43501 Speed up convs requests by using no_count

Change-Id: If367877854734553a512632adc21c9358c10a05f
changes/58/23558/4
raxelsen 7 years ago committed by Hans-Peter Herzog
parent a8e7df6385
commit a14d686590

@ -43,10 +43,14 @@ export function getList(options) {
}
}).then((res) => {
let body = getJsonBody(res.body);
let lastPage = Math.ceil( body.total_count / options.params.rows );
let totalCount = _.get(body, 'total_count', 0);
let lastPage = Math.ceil( totalCount / options.params.rows );
if(options.all === true) {
lastPage = 1;
}
if(lastPage === 0) {
lastPage = null;
}
resolve({
items: _.get(body, options.root, []),
lastPage: lastPage

@ -10,18 +10,20 @@ export function getConversations(options) {
let type = _.get(options, 'type', null);
let params ={
subscriber_id: _.get(options, 'subscriberId'),
page: _.get(options, 'page', 1),
rows: _.get(options, 'rows', 25),
order_by: _.get(options, 'order_by', 'timestamp'),
order_by_direction: 'desc'
order_by_direction: 'desc',
no_count: true,
page: _.get(options, 'page', 1),
rows: _.get(options, 'rows', 25)
};
if(type !== null) {
if (type !== null) {
params.type = type;
}
getList({
path: 'api/conversations/',
root: '_embedded.ngcp:conversations',
params: params
params: params,
all: false
}).then((list)=>{
resolve(list);
}).catch((err)=>{

@ -41,7 +41,7 @@
/>
</q-tabs>
<q-list
v-if="!isNextPageRequesting && items.length > 0"
v-if="items.length > 0"
no-border
inset-separator
sparse
@ -196,7 +196,7 @@
if(!this.isNextPageRequesting && !this.scrollEventEmitted && data.direction === 'down' &&
data.position > scroll.getScrollHeight(this.$refs.page.$el) - window.innerHeight + 30) {
this.scrollEventEmitted = true;
this.nextPage();
this.nextPage(this.selectedTab);
}
else if(data.position <= scroll.getScrollHeight(this.$refs.page.$el) - window.innerHeight + 30) {
this.scrollEventEmitted = false;

@ -58,7 +58,7 @@ export default {
playVoiceMailStates: {},
playVoiceMailErrors: {},
currentPage: 0,
lastPage: null,
reachedLastPage: false,
nextPageState: RequestState.initiated,
nextPageError: null,
items: [],
@ -88,8 +88,8 @@ export default {
currentPage(state) {
return state.currentPage;
},
lastPage(state) {
return state.lastPage;
isLastPage(state) {
return state.reachedLastPage;
},
rowsAlreadyLoaded(state) {
return state.items.length;
@ -174,7 +174,7 @@ export default {
resetList(state) {
state.items = [];
state.currentPage = 0;
state.lastPage = null;
state.reachedLastPage = false;
},
nextPageRequesting(state) {
state.nextPageState = RequestState.requesting;
@ -184,7 +184,7 @@ export default {
state.nextPageState = RequestState.succeeded;
state.nextPageError = null;
state.items = state.items.concat(items.items);
state.lastPage = items.lastPage;
state.reachedLastPage = items.items.length === 0;
state.currentPage = state.currentPage + 1;
linkCallsWithSameId(state);
},
@ -252,12 +252,11 @@ export default {
});
},
nextPage(context, type) {
let page = context.getters.currentPage + 1;
if(context.getters.lastPage === null || page <= context.getters.lastPage) {
if (!context.getters.isLastPage) {
context.commit('nextPageRequesting');
getConversations({
subscriberId: context.getters.getSubscriberId,
page: page,
page: context.getters.currentPage + 1,
rows: ROWS_PER_PAGE,
type: type
}).then((result) => {

Loading…
Cancel
Save