From ce7ff0effee22807c8d29a31d6f5f2713d3bf95c Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期四, 11 九月 2025 17:39:51 +0800 Subject: [PATCH] Merge branch 'master' into dev-v1.1 --- src/views/CPersonManage/components/SignDetailView.vue | 127 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 127 insertions(+), 0 deletions(-) diff --git a/src/views/CPersonManage/components/SignDetailView.vue b/src/views/CPersonManage/components/SignDetailView.vue new file mode 100644 index 0000000..a4d2ddd --- /dev/null +++ b/src/views/CPersonManage/components/SignDetailView.vue @@ -0,0 +1,127 @@ +<template> + <ProTableV2 + v-bind="proTableProps" + :columns="column" + :show-operation-column="false" + :auto-height="false" + :table-props="{ + height: '400px', + }" + > + <template #contractUrl="{ row }"> + <PreviewBtn + v-if="row.userSignContractStatus === EnumTaskUserSignContractStatus.Pass && row.contractUrl" + :show-download-btn="false" + :url="setOSSLink(row.contractUrl)" + > + </PreviewBtn> + </template> + </ProTableV2> +</template> + +<script setup lang="ts"> +import { useTable, ProTableV2, defineColumns } from '@bole-core/components'; +import { setOSSLink } from '@/utils'; +import { + EnumTaskUserSignContractStatus, + EnumTaskUserHireStatusText, + EnumTaskUserSignContractStatusText, +} from '@/constants'; +import * as userServices from '@/services/api/user'; + +defineOptions({ + name: 'SignDetailView', +}); + +type Form = { + id: string; +}; + +const form = defineModel<Form>('form'); + +const isLoading = ref(false); + +const column = defineColumns([ + { + id: '1', + enCode: 'enterpriseName', + name: '鎵�灞炲鎴�', + }, + { + id: '2', + enCode: 'applyTime', + name: '鎶ュ悕鏃堕棿', + }, + { + id: '3', + enCode: 'hireStatus', + name: '褰曠敤鐘舵��', + }, + { + id: '4', + enCode: 'hireTime', + name: '褰曠敤鏃堕棿', + }, + { + id: '5', + enCode: 'userSignContractStatus', + name: '绛剧害鐘舵��', + }, + { + id: '6', + enCode: 'enterpriseSignContractStatus', + name: '浼佷笟绛剧害鐘舵��', + }, + { + id: '7', + enCode: 'enterpriseSignContractTime', + name: '浼佷笟绛剧害鏃堕棿', + }, + { + id: '8', + enCode: 'contractUrl', + name: '鐢靛瓙鍚堝悓', + }, +]); + +const { + getDataSource: getList, + proTableProps, + paginationState, + extraParamState, +} = useTable( + async ({ pageIndex, pageSize }, extraParamState) => { + try { + let params: API.GetPersonalUserInfoSignContractsQuery = { + pageModel: { + rows: pageSize, + page: pageIndex, + orderInput: extraParamState.orderInput, + }, + id: form.value.id, + }; + let res = await userServices.getPersonalUserInfoSignContracts(params); + return res; + } catch (error) {} + }, + { + defaultExtraParams: { + orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }], + }, + columnsRenderProps: { + applyTime: { type: 'date' }, + hireTime: { type: 'date' }, + enterpriseSignContractTime: { type: 'date' }, + hireStatus: { type: 'enum', valueEnum: EnumTaskUserHireStatusText }, + userSignContractStatus: { type: 'enum', valueEnum: EnumTaskUserSignContractStatusText }, + enterpriseSignContractStatus: { type: 'enum', valueEnum: EnumTaskUserSignContractStatusText }, + }, + } +); + +onMounted(async () => { + isLoading.value = true; + await getList(); + isLoading.value = false; +}); +</script> -- Gitblit v1.9.1