|
@@ -4,83 +4,72 @@
|
|
|
<v-btn color="primary" :disabled="selected.length ? false : true" variant="tonal" @click="handleInappropriate">不合适</v-btn>
|
|
|
</div>
|
|
|
<v-data-table
|
|
|
+ class="mt-3"
|
|
|
v-model="selected"
|
|
|
:items="items"
|
|
|
- class="mt-3"
|
|
|
:headers="headers"
|
|
|
- show-select
|
|
|
- item-value="id"
|
|
|
hover
|
|
|
+ show-select
|
|
|
height="60vh"
|
|
|
- hide-default-footer
|
|
|
+ item-value="id"
|
|
|
>
|
|
|
<template #bottom></template>
|
|
|
- <template v-slot:item.actions>
|
|
|
+ <template v-slot:item.name="{ item }">
|
|
|
+ <div class="d-flex align-center">
|
|
|
+ <v-badge
|
|
|
+ bordered
|
|
|
+ offset-y="6"
|
|
|
+ :color="badgeColor(item)"
|
|
|
+ :icon="badgeIcon(item)">
|
|
|
+ <v-avatar size="40" :image="item.person.avatar || 'https://minio.citupro.com/dev/menduner/7.png'"></v-avatar>
|
|
|
+ </v-badge>
|
|
|
+ <span class="defaultLink ml-3">{{ item?.person?.name }}</span>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <template v-slot:item.exp="{ item }">
|
|
|
+ <span v-if="Object.keys(item?.jobExperience)">{{ item.jobExperience.positionName }} {{ item.jobExperience.enterpriseName }}</span>
|
|
|
+ <span v-else>未填写工作经历</span>
|
|
|
+ </template>
|
|
|
+ <template v-slot:item.edu="{ item }">
|
|
|
+ <span v-if="Object.keys(item?.eduExperience)">{{ timesTampChange(item.eduExperience.startTime).slice(0, 4) }}-{{ timesTampChange(item.eduExperience.endTime).slice(0, 4) }} {{ item.eduExperience.schoolName }}</span>
|
|
|
+ <span v-else></span>
|
|
|
+ </template>
|
|
|
+ <template v-slot:item.actions="{ item }">
|
|
|
+ <v-btn v-if="tab === '0'" color="primary" variant="text" @click="previewFile(item.url)">附件</v-btn>
|
|
|
<v-btn color="primary" variant="text">不合适</v-btn>
|
|
|
</template>
|
|
|
</v-data-table>
|
|
|
- <CtPagination
|
|
|
- v-if="total > 0"
|
|
|
- :total="total"
|
|
|
- :page="query.pageNo"
|
|
|
- :limit="query.pageSize"
|
|
|
- @handleChange="handleChangePage"
|
|
|
- ></CtPagination>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
defineOptions({ name: 'table-page'})
|
|
|
-import { ref } from 'vue'
|
|
|
+import { ref, computed } from 'vue'
|
|
|
+import { previewFile } from '@/utils'
|
|
|
+import { timesTampChange } from '@/utils/date'
|
|
|
|
|
|
-const selected = ref([])
|
|
|
-const total = ref(3)
|
|
|
-const query = ref({
|
|
|
- pageNo: 1,
|
|
|
- pageSize: 10
|
|
|
+defineProps({
|
|
|
+ tab: String,
|
|
|
+ items: Array
|
|
|
+})
|
|
|
+
|
|
|
+const badgeColor = computed(() => (item) => {
|
|
|
+ return (item.person && item.person.sex) ? (item.person.sex === '1' ? '#1867c0' : 'error') : 'error'
|
|
|
+})
|
|
|
+
|
|
|
+const badgeIcon = computed(() => (item) => {
|
|
|
+ return (item.person && item.person.sex) ? (item.person.sex === '1' ? 'mdi-gender-male' : 'mdi-gender-female') : 'mdi-gender-female'
|
|
|
})
|
|
|
+
|
|
|
+const selected = ref([])
|
|
|
const headers = [
|
|
|
{ title: '牛人', value: 'name' },
|
|
|
- { title: '基本信息', value: 'info' },
|
|
|
- { title: '最近工作经历', value: 'work' },
|
|
|
- { title: '教育经历', key: 'school', value: item => `${item.startYear}-${item.endYear} ${item.school}` },
|
|
|
- { title: '应聘职位', value: 'jobName' },
|
|
|
+ { title: '基本信息', key: 'info', value: item => `${item.eduName}·${ item.expName }` },
|
|
|
+ { title: '最近工作经历', value: 'exp' },
|
|
|
+ { title: '教育经历', key: 'edu' },
|
|
|
+ { title: '应聘职位', value: 'job.name' },
|
|
|
{ title: '操作', value: 'actions' }
|
|
|
]
|
|
|
-const items = [
|
|
|
- {
|
|
|
- name: '黄桐奕',
|
|
|
- info: '本科·21岁·25年应届生·5-8K',
|
|
|
- work: 'Java 江门市天天生活科技有限公司',
|
|
|
- school: '五邑大学',
|
|
|
- jobName: 'Java',
|
|
|
- startYear: '2021',
|
|
|
- id: 1,
|
|
|
- endYear: '2025'
|
|
|
- },
|
|
|
- {
|
|
|
- name: '黄桐奕',
|
|
|
- info: '本科·21岁·25年应届生·5-8K',
|
|
|
- work: 'Java 江门市天天生活科技有限公司',
|
|
|
- school: '五邑大学',
|
|
|
- jobName: 'Java',
|
|
|
- startYear: '2021',
|
|
|
- endYear: '2025',
|
|
|
- id: 2
|
|
|
- },
|
|
|
- {
|
|
|
- name: '黄桐奕',
|
|
|
- info: '本科·21岁·25年应届生·5-8K',
|
|
|
- work: 'Java 江门市天天生活科技有限公司',
|
|
|
- school: '五邑大学',
|
|
|
- jobName: 'Java',
|
|
|
- startYear: '2021',
|
|
|
- endYear: '2025',
|
|
|
- id: 3
|
|
|
- }
|
|
|
-]
|
|
|
-
|
|
|
-const handleChangePage = () => {}
|
|
|
|
|
|
const handleInappropriate = () => {
|
|
|
console.log(selected.value, 'handleInappropriate')
|
|
@@ -92,6 +81,7 @@ const handleInappropriate = () => {
|
|
|
background-color: #f7f8fa !important;
|
|
|
}
|
|
|
:deep(.v-selection-control__input) {
|
|
|
- color: var(--v-primary-base) !important;
|
|
|
+ // color: var(--v-primary-base) !important;
|
|
|
+ color: #767778;
|
|
|
}
|
|
|
</style>
|