diff --git a/packages/euler/src/stores/personal.ts b/packages/euler/src/stores/personal.ts index 38d13876fc3b2397e4b21268b45eeaf9d6112380..e4d86e6bb0e42229c1751605d7adfe5ffa5b767d 100644 --- a/packages/euler/src/stores/personal.ts +++ b/packages/euler/src/stores/personal.ts @@ -15,6 +15,7 @@ export const usePersonalStore = defineStore('personal', { contributeType: 'pr', timeRange: 'lastonemonth', } as Form, + checkedComment: [] as any, }), actions: { async getPersonalData() { @@ -26,10 +27,32 @@ export const usePersonalStore = defineStore('personal', { try { const res = await queryUserContribute(params); if (res.code === 200) { - const { data } = res; - const userList = data.sort(sortExp('contribute', false)); - this.personalData = userList.slice(0, 20); - this.personalMaxNum = userList[0].contribute; + if (this.personalForm.contributeType === 'comment') { + const { data } = res; + if ( + JSON.stringify(this.checkedComment) === + JSON.stringify(['General']) + ) { + const GeneralList = data.sort(sortExp('valid_comment', false)); + this.personalData = GeneralList.slice(0, 20); + this.personalMaxNum = GeneralList[0].valid_comment; + } else if ( + JSON.stringify(this.checkedComment) === JSON.stringify(['Order']) + ) { + const OrderList = data.sort(sortExp('invalid_comment', false)); + this.personalData = OrderList.slice(0, 20); + this.personalMaxNum = OrderList[0].invalid_comment; + } else { + const List = data.sort(sortExp('contribute', false)); + this.personalData = List.slice(0, 20); + this.personalMaxNum = List[0].contribute; + } + } else { + const { data } = res; + const userList = data.sort(sortExp('contribute', false)); + this.personalData = userList.slice(0, 20); + this.personalMaxNum = userList[0].contribute; + } } } catch (error) { console.log(error); diff --git a/packages/euler/src/views/contributors/Index.vue b/packages/euler/src/views/contributors/Index.vue index cc78d3911264ce4b1dc2e1678457ce68f5dc9751..83213ba1c4faab70c7a8eb8f2abdfd5ebcdde624 100644 --- a/packages/euler/src/views/contributors/Index.vue +++ b/packages/euler/src/views/contributors/Index.vue @@ -126,6 +126,31 @@ const goToUser = (data: IObject) => { }); window.open(routeData.href, '_blank'); }; +const checkedComment = ref(['General']); +const commentValue = ['General', 'Order']; +watch( + () => checkedComment.value, + () => { + usePersonal.checkedComment = checkedComment.value; + usePersonal.getPersonalData(); + }, + { immediate: true } +); +const contributeValue = (val: any) => { + if ( + JSON.stringify(checkedComment.value) === JSON.stringify(['General']) && + usePersonal.personalForm.contributeType === 'comment' + ) { + return val.valid_comment; + } else if ( + JSON.stringify(checkedComment.value) === JSON.stringify(['Order']) && + usePersonal.personalForm.contributeType === 'comment' + ) { + return val.invalid_comment; + } else { + return val.contribute; + } +}; @@ -202,16 +227,27 @@ const goToUser = (data: IObject) => { - + + + + {{ t(item) }} + + - {{ scope.row.contribute }} + {{ contributeValue(scope.row) }} - + @@ -250,15 +286,27 @@ const goToUser = (data: IObject) => { - + + + + {{ t(item) }} + + - {{ scope.row.contribute }} - + {{ contributeValue(scope.row) }} + +