Sfoglia il codice sorgente

学生-企业推荐信

Xiao_123 2 mesi fa
parent
commit
ca371b0f55

+ 9 - 0
src/api/recruit/personal/student.js

@@ -0,0 +1,9 @@
+import request from '@/config/axios'
+
+// 获取企业推荐信列表
+export const getRecommendationList = async (data) => {
+	return await request.post({
+		url: '/app-api/flames/student/recommendation/list',
+		data
+	})
+}

+ 75 - 1
src/views/recruit/personal/PersonalCenter/student/EnterpriseRecommendationLetter/index.vue

@@ -1,9 +1,83 @@
 <template>
-	<div>xxx</div>
+	<div class="resume-box">
+		<div class="resume-header">
+      <div class="resume-title">企业推荐信</div>
+    </div>
+		<CtTable
+      class="mt-3"
+      :items="list"
+      :headers="headers"
+      :loading="loading"
+      :elevation="0"
+      :isTools="false"
+      :showPage="true"
+      :showSelect="false"
+      itemKey="id"
+			:total="total"
+			:page-info="query"
+			@pageHandleChange="handleChangePage"
+    >
+      <template #actions="{ item }">
+        <v-btn color="primary" @click.stop="previewFile(item.url)" variant="text">预览</v-btn>
+        <v-btn color="primary" @click.stop="handleDownload(item)" variant="text">下载</v-btn>
+      </template>
+    </CtTable>
+	</div>
 </template>
 
 <script setup>
 defineOptions({ name: 'EnterpriseRecommendationLetter' })
+import { ref } from 'vue'
+import { getBlob, saveAs, previewFile } from '@/utils'
+import { timesTampChange } from '@/utils/date'
+import { getRecommendationList } from '@/api/recruit/personal/student'
+
+const loading = ref(false)
+const list = ref([
+	{
+		enterpriseName: '企业1',
+		createTime: 1668476800000,
+		url: 'https://menduner.citupro.com:3443/dev/person/1893630489546350594/attachment/7cde29dc69c1403649be55d4c2bfd3d8304c088dc79ab25afe9c4bf55d3b382f.docx'
+	},
+	{
+		enterpriseName: '企业2',
+		createTime: 1668476800000,
+		url: 'https://menduner.citupro.com:3443/dev/person/1893630489546350594/attachment/7cde29dc69c1403649be55d4c2bfd3d8304c088dc79ab25afe9c4bf55d3b382f.docx'
+	}
+])
+const total = ref(2)
+const query = ref({
+	pageNo: 1,
+	pageSize: 10
+})
+
+const headers = [
+  { title: '推荐方企业', key: 'enterpriseName', sortable: false },
+  { title: '创建时间', key: 'createTime', sortable: false, value: item => timesTampChange(item.createTime, 'Y-M-D h:m') },
+  { title: '操作', key: 'actions', sortable: false }
+]
+
+const getList = async () => {
+	loading.value = true
+	try {
+		const result = await getRecommendationList(query.value)
+		console.log(result, '企业推荐信')
+	} finally {
+		loading.value = false
+	}
+}
+
+const handleChangePage = (val) => {
+	query.value.pageNo = val
+	getList()
+}
+
+// 下载附件
+const handleDownload = (k) => {
+  getBlob(k.url).then(blob => {
+    saveAs(blob, k.title)
+  })
+}
 </script>
 
 <style scoped lang="scss">