jcloude/dashboard/src/components/partners/PartnerMembers.vue
2025-12-23 23:05:39 +08:00

66 lines
1.1 KiB
Vue

<template>
<div class="px-2">
<GenericList :options="partnerMembersList" />
</div>
</template>
<script setup>
import { computed } from 'vue';
import GenericList from '../GenericList.vue';
import { createResource } from 'jingrow-ui';
const props = defineProps({
partnerName: String,
});
const partnerMembers = createResource({
url: 'jcloude.api.partner.get_partner_members',
cache: 'partnerMembers',
auto: true,
params: {
partner: props.partnerName,
},
transform(data) {
data = data.map((d) => {
return {
full_name: d.member_name,
email: d.member_email,
course:
d.course == 'jingrow-developer-certification'
? 'Framework'
: 'JERP',
version: d.version,
};
});
return data;
},
});
const partnerMembersList = computed(() => {
return {
data: partnerMembers.data || [],
selectable: false,
columns: [
{
label: 'Name',
fieldname: 'full_name',
},
{
label: 'Email',
fieldname: 'email',
},
{
label: 'Course',
fieldname: 'course',
width: 0.6,
},
{
label: 'Version',
fieldname: 'version',
width: 0.5,
align: 'center',
},
],
};
});
</script>