| <link rel="icon" type="image/svg+xml" href="/logo_1.jpg" /> | <link rel="icon" type="image/svg+xml" href="/logo_1.jpg" /> | ||||
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||||
| <title>菊城人才市场后台管理</title> | <title>菊城人才市场后台管理</title> | ||||
| <script type="module" crossorigin src="/assets/index-DozG8ZEx.js"></script> | |||||
| <script type="module" crossorigin src="/assets/index-B7CKfjVf.js"></script> | |||||
| <link rel="stylesheet" crossorigin href="/assets/index-4yw9NuJU.css"> | <link rel="stylesheet" crossorigin href="/assets/index-4yw9NuJU.css"> | ||||
| </head> | </head> | ||||
| <body> | <body> |
| export const PostDictDel = postModel(url.DictDel); | export const PostDictDel = postModel(url.DictDel); | ||||
| export const PostDictUpdate = postModel(url.DictUpdate); | export const PostDictUpdate = postModel(url.DictUpdate); | ||||
| export const GetDictList = getModel(url.DictList); | export const GetDictList = getModel(url.DictList); | ||||
| export const GetDictDetail = getModel(url.DictDetail); | |||||
| export const GetDictDetail = getModel(url.DictDetail); | |||||
| // 导出数据 | |||||
| export const PostCompanyExport = PostModel(url.CompanyExport); | |||||
| export const PostJobseekerExport = PostModel(url.JobseekerExport); | |||||
| export const PostJobExport = PostModel(url.JobExport); |
| DictUpdate: String, // 编辑 | DictUpdate: String, // 编辑 | ||||
| DictList: String, // 列表 | DictList: String, // 列表 | ||||
| DictDetail: String, // 详情 | DictDetail: String, // 详情 | ||||
| // 导出数据 | |||||
| CompanyExport: String, // 详情 | |||||
| JobseekerExport: String, // 详情 | |||||
| JobExport: String, // 详情 | |||||
| } | } | ||||
| } | } |
| DictUpdate: common + '/dict/update', // 编辑 | DictUpdate: common + '/dict/update', // 编辑 | ||||
| DictList: common + '/dict/list', // 列表 | DictList: common + '/dict/list', // 列表 | ||||
| DictDetail: common + '/dict/detail', // 详情 | DictDetail: common + '/dict/detail', // 详情 | ||||
| // 导出数据 | |||||
| CompanyExport: admin + '/company/export', | |||||
| JobseekerExport: admin + '/jobseeker/export', | |||||
| JobExport: admin + '/job/export', | |||||
| } | } |
| let { routerTo } = useAsRouter(); | let { routerTo } = useAsRouter(); | ||||
| const download = () => { | const download = () => { | ||||
| PostActivityExportUsers().then(res => { | PostActivityExportUsers().then(res => { | ||||
| let url = 'https://rcsc-test.jcjob.cn/img' + res.data.excel_url; | |||||
| let url = import.meta.env.MODE == 'production' ? 'https://admin1.jcjob.cn/img' + res.data.excel_url : 'https://rcsc-test.jcjob.cn/img' + res.data.excel_url; | |||||
| window.open(url); | window.open(url); | ||||
| }) | }) | ||||
| } | } |
| <template> | <template> | ||||
| <list-search @searchData="searchData" @clearData="clearData" :search_params="commomParams.search"></list-search> | <list-search @searchData="searchData" @clearData="clearData" :search_params="commomParams.search"></list-search> | ||||
| <a-c-operation @refresh="clearData"></a-c-operation> | |||||
| <a-c-operation @refresh="clearData"> | |||||
| <a-col> | |||||
| <a-button type="primary" @click="download">导出数据</a-button> | |||||
| </a-col> | |||||
| </a-c-operation> | |||||
| <a-c-table :data="commomParams.table.data" :columns="commomParams.table.columns" :pagination="commomParams.page" | <a-c-table :data="commomParams.table.data" :columns="commomParams.table.columns" :pagination="commomParams.page" | ||||
| @page="getPage" :loading="loading"> | @page="getPage" :loading="loading"> | ||||
| <template #photo_image="{ record }"> | <template #photo_image="{ record }"> | ||||
| import ListDepartment from '@/views/company/list/department/index.vue'; | import ListDepartment from '@/views/company/list/department/index.vue'; | ||||
| import ListPosition from '@/views/company/list/position/index.vue'; | import ListPosition from '@/views/company/list/position/index.vue'; | ||||
| import ListBind from '@/views/company/list/bind/index.vue'; | import ListBind from '@/views/company/list/bind/index.vue'; | ||||
| import { getCompanyList } from '@/apis/models'; | |||||
| import { getCompanyList , PostCompanyExport} from '@/apis/models'; | |||||
| import { useCommon } from '@/hooks/useCommon'; | import { useCommon } from '@/hooks/useCommon'; | ||||
| import { cols } from '@/views/company/list/columns'; | import { cols } from '@/views/company/list/columns'; | ||||
| import { router } from '@/router'; | import { router } from '@/router'; | ||||
| // getData(); | // getData(); | ||||
| // }) | // }) | ||||
| // } | // } | ||||
| const download = () => { | |||||
| PostCompanyExport().then(res => { | |||||
| let url = import.meta.env.MODE == 'production' ? 'https://admin1.jcjob.cn/img' + res.data.excel_url : 'https://rcsc-test.jcjob.cn/img' + res.data.excel_url; | |||||
| window.open(url); | |||||
| }) | |||||
| } | |||||
| </script> | </script> | ||||
| <style lang="less" scoped> | <style lang="less" scoped> |
| <template> | <template> | ||||
| <position-search @searchData="searchData" @clearData="clearData" | <position-search @searchData="searchData" @clearData="clearData" | ||||
| :search_params="commomParams.search"></position-search> | :search_params="commomParams.search"></position-search> | ||||
| <a-c-operation @refresh="clearData" @add="add"></a-c-operation> | |||||
| <a-c-operation @refresh="clearData" @add="add"> | |||||
| <a-col> | |||||
| <a-button type="primary" @click="download">导出数据</a-button> | |||||
| </a-col> | |||||
| </a-c-operation> | |||||
| <a-c-table :data="commomParams.table.data" :columns="commomParams.table.columns" :pagination="commomParams.page" | <a-c-table :data="commomParams.table.data" :columns="commomParams.table.columns" :pagination="commomParams.page" | ||||
| @page="getPage" :loading="loading"> | @page="getPage" :loading="loading"> | ||||
| <template #default="{ record }"> | <template #default="{ record }"> | ||||
| dfd | dfd | ||||
| </template> | </template> | ||||
| </a-c-table> | </a-c-table> | ||||
| <position-add v-if="openForm" :edit_record="edit_record" @successAdd="successAdd" @closeAdd="closeAdd"></position-add> | |||||
| <position-add v-if="openForm" :edit_record="edit_record" @successAdd="successAdd" | |||||
| @closeAdd="closeAdd"></position-add> | |||||
| </template> | </template> | ||||
| <script lang="ts" setup> | <script lang="ts" setup> | ||||
| import { ref, onMounted, watch, computed, onBeforeUnmount } from 'vue'; | |||||
| import PositionSearch from '@/views/company/position/search/index.vue'; | |||||
| import PositionAdd from '@/views/company/position/add/add.vue'; | |||||
| import { GetCompanyJobList } from '@/apis/models'; | |||||
| import { useCommon } from '@/hooks/useCommon'; | |||||
| import { cols } from '@/views/company/position/columns'; | |||||
| import { message } from 'ant-design-vue'; | |||||
| let { store, commomParams, showModal, showOtherModal1 } = useCommon(); | |||||
| let loading = ref<Boolean>(true); | |||||
| let openForm = ref<Boolean>(false); | |||||
| onMounted(() => { | |||||
| if(sessionStorage.getItem('company_id')) { | |||||
| commomParams.value.search.company_id = sessionStorage.getItem('company_id') | |||||
| } | |||||
| getData(commomParams.value.search); | |||||
| }) | |||||
| onBeforeUnmount(() => { | |||||
| sessionStorage.removeItem('company_id') | |||||
| sessionStorage.removeItem('company_name') | |||||
| openForm.value = false | |||||
| }) | |||||
| const add = (data : object) => { | |||||
| openForm.value = true | |||||
| import { ref, onMounted, watch, computed, onBeforeUnmount } from 'vue'; | |||||
| import PositionSearch from '@/views/company/position/search/index.vue'; | |||||
| import PositionAdd from '@/views/company/position/add/add.vue'; | |||||
| import { GetCompanyJobList, PostJobExport } from '@/apis/models'; | |||||
| import { useCommon } from '@/hooks/useCommon'; | |||||
| import { cols } from '@/views/company/position/columns'; | |||||
| import { message } from 'ant-design-vue'; | |||||
| let { store, commomParams, showModal, showOtherModal1 } = useCommon(); | |||||
| let loading = ref<Boolean>(true); | |||||
| let openForm = ref<Boolean>(false); | |||||
| onMounted(() => { | |||||
| if (sessionStorage.getItem('company_id')) { | |||||
| commomParams.value.search.company_id = sessionStorage.getItem('company_id') | |||||
| } | } | ||||
| getData(commomParams.value.search); | |||||
| }) | |||||
| const searchData = (data : object) => { | |||||
| commomParams.value.search = data | |||||
| getData(); | |||||
| } | |||||
| onBeforeUnmount(() => { | |||||
| sessionStorage.removeItem('company_id') | |||||
| sessionStorage.removeItem('company_name') | |||||
| openForm.value = false | |||||
| }) | |||||
| const clearData = (data : object) => { | |||||
| sessionStorage.removeItem('company_id') | |||||
| sessionStorage.removeItem('company_name') | |||||
| openForm.value = false | |||||
| if (data) { | |||||
| commomParams.value.search = data | |||||
| } else { | |||||
| commomParams.value.search = { | |||||
| page: 1, | |||||
| pagesize: 10, | |||||
| sort: 'id', | |||||
| sortby: 'desc', | |||||
| keyword: '' | |||||
| } | |||||
| } | |||||
| getData(); | |||||
| } | |||||
| const add = (data: object) => { | |||||
| openForm.value = true | |||||
| } | |||||
| const getPage = (data : object) => { | |||||
| commomParams.value.search.page = data.current; | |||||
| commomParams.value.search.pagesize = data.pageSize; | |||||
| getData(); | |||||
| } | |||||
| const getData = async () => { | |||||
| try { | |||||
| loading.value = true; | |||||
| let res = await GetCompanyJobList(commomParams.value.search); | |||||
| loading.value = false; | |||||
| commomParams.value.table.data = res.data.rows; | |||||
| commomParams.value.table.columns = cols; | |||||
| commomParams.value.page = { | |||||
| current: commomParams.value.search.page, | |||||
| pageSize: commomParams.value.search.pagesize, | |||||
| total: res.data.total, | |||||
| pageSizeOptions: ['10', '20', '30', '40'], | |||||
| hideOnSinglePage: false, | |||||
| showSizeChanger: true | |||||
| }; | |||||
| } catch (err) { | |||||
| loading.value = false; | |||||
| const searchData = (data: object) => { | |||||
| commomParams.value.search = data | |||||
| getData(); | |||||
| } | |||||
| const clearData = (data: object) => { | |||||
| sessionStorage.removeItem('company_id') | |||||
| sessionStorage.removeItem('company_name') | |||||
| openForm.value = false | |||||
| if (data) { | |||||
| commomParams.value.search = data | |||||
| } else { | |||||
| commomParams.value.search = { | |||||
| page: 1, | |||||
| pagesize: 10, | |||||
| sort: 'id', | |||||
| sortby: 'desc', | |||||
| keyword: '' | |||||
| } | } | ||||
| } | } | ||||
| getData(); | |||||
| } | |||||
| // 编辑 | |||||
| let edit_record = ref<Object>(null) | |||||
| const edit = (record : object) => { | |||||
| openForm.value = true | |||||
| edit_record.value = record; | |||||
| showModal() | |||||
| } | |||||
| const successAdd = () => { | |||||
| getData(); | |||||
| } | |||||
| const closeAdd = () => { | |||||
| openForm.value = false | |||||
| edit_record.value = null; | |||||
| const getPage = (data: object) => { | |||||
| commomParams.value.search.page = data.current; | |||||
| commomParams.value.search.pagesize = data.pageSize; | |||||
| getData(); | |||||
| } | |||||
| const getData = async () => { | |||||
| try { | |||||
| loading.value = true; | |||||
| let res = await GetCompanyJobList(commomParams.value.search); | |||||
| loading.value = false; | |||||
| commomParams.value.table.data = res.data.rows; | |||||
| commomParams.value.table.columns = cols; | |||||
| commomParams.value.page = { | |||||
| current: commomParams.value.search.page, | |||||
| pageSize: commomParams.value.search.pagesize, | |||||
| total: res.data.total, | |||||
| pageSizeOptions: ['10', '20', '30', '40'], | |||||
| hideOnSinglePage: false, | |||||
| showSizeChanger: true | |||||
| }; | |||||
| } catch (err) { | |||||
| loading.value = false; | |||||
| } | } | ||||
| } | |||||
| // 删除 | |||||
| // const delOneRole = (id: number) => { | |||||
| // commomParams.value.delRecord = { id: id }; | |||||
| // PostRoleDel(commomParams.value.delRecord).then(res => { | |||||
| // message.success('删除成功'); | |||||
| // getData(); | |||||
| // }) | |||||
| // } | |||||
| </script> | |||||
| // 编辑 | |||||
| let edit_record = ref<Object>(null) | |||||
| const edit = (record: object) => { | |||||
| openForm.value = true | |||||
| edit_record.value = record; | |||||
| showModal() | |||||
| } | |||||
| const successAdd = () => { | |||||
| getData(); | |||||
| } | |||||
| const closeAdd = () => { | |||||
| openForm.value = false | |||||
| edit_record.value = null; | |||||
| } | |||||
| <style lang="less" scoped> | |||||
| </style> | |||||
| // 删除 | |||||
| // const delOneRole = (id: number) => { | |||||
| // commomParams.value.delRecord = { id: id }; | |||||
| // PostRoleDel(commomParams.value.delRecord).then(res => { | |||||
| // message.success('删除成功'); | |||||
| // getData(); | |||||
| // }) | |||||
| // } | |||||
| const download = () => { | |||||
| PostJobExport().then(res => { | |||||
| let url = import.meta.env.MODE == 'production' ? 'https://admin1.jcjob.cn/img' + res.data.excel_url : 'https://rcsc-test.jcjob.cn/img' + res.data.excel_url; | |||||
| window.open(url); | |||||
| }) | |||||
| } | |||||
| </script> | |||||
| <style lang="less" scoped></style> |
| <template> | <template> | ||||
| <resume-search @searchData="searchData" @clearData="clearData" :search_params="commomParams.search"></resume-search> | <resume-search @searchData="searchData" @clearData="clearData" :search_params="commomParams.search"></resume-search> | ||||
| <a-c-operation @refresh="clearData" :need_add="false"></a-c-operation> | |||||
| <a-c-operation @refresh="clearData" :need_add="false"> | |||||
| <a-col> | |||||
| <a-button type="primary" @click="download">导出数据</a-button> | |||||
| </a-col> | |||||
| </a-c-operation> | |||||
| <a-c-table :data="commomParams.table.data" :columns="commomParams.table.columns" :pagination="commomParams.page" | <a-c-table :data="commomParams.table.data" :columns="commomParams.table.columns" :pagination="commomParams.page" | ||||
| @page="getPage" :loading="loading"> | @page="getPage" :loading="loading"> | ||||
| <template #status="{ record }"> | <template #status="{ record }"> | ||||
| {{record.status_txt}} | |||||
| <span v-if="record.audit_memo">({{record.audit_memo}})</span> | |||||
| {{ record.status_txt }} | |||||
| <span v-if="record.audit_memo">({{ record.audit_memo }})</span> | |||||
| </template> | </template> | ||||
| <template #default="{ record }"> | <template #default="{ record }"> | ||||
| <a-row :gutter="10"> | <a-row :gutter="10"> | ||||
| <a-popconfirm title="该简历通过审核?" @confirm="pass(record)"> | <a-popconfirm title="该简历通过审核?" @confirm="pass(record)"> | ||||
| <a-col v-if="record.status == 1"><a-button type="primary" size="small">通过</a-button></a-col> | <a-col v-if="record.status == 1"><a-button type="primary" size="small">通过</a-button></a-col> | ||||
| </a-popconfirm> | </a-popconfirm> | ||||
| <a-col v-if="record.status == 1"><a-button type="primary" size="small" @click="interview(record)" | |||||
| <a-col v-if="record.status == 1"><a-button type="primary" size="small" @click="interview(record)" | |||||
| danger>不通过</a-button></a-col> | danger>不通过</a-button></a-col> | ||||
| <!-- <a-popconfirm title="是否要推送该简历到ES?" @confirm="pushEs(record.customer_id)"> | <!-- <a-popconfirm title="是否要推送该简历到ES?" @confirm="pushEs(record.customer_id)"> | ||||
| <a-col><a-button type="primary" size="small" primary>推送该简历到ES</a-button></a-col> | <a-col><a-button type="primary" size="small" primary>推送该简历到ES</a-button></a-col> | ||||
| <a-textarea v-model:value="form.aduit_memo" placeholder="请输入不通过原因" /> | <a-textarea v-model:value="form.aduit_memo" placeholder="请输入不通过原因" /> | ||||
| </a-modal> | </a-modal> | ||||
| </template> | </template> | ||||
| <script lang="ts" setup> | <script lang="ts" setup> | ||||
| import { ref, onMounted, watch, computed, createVNode } from 'vue'; | |||||
| import ResumeSearch from '@/views/jobSeeker/resume/search/index.vue'; | |||||
| import ResumeAdd from '@/views/jobSeeker/resume/add/add.vue'; | |||||
| import ResumeDetail from '@/views/jobSeeker/resume/detail/detail.vue'; | |||||
| import { PostJobseekerList, PostJobapplicantUpdate, PostEsJobseeker, GetCustomerUpdate } from '@/apis/models'; | |||||
| import { useCommon } from '@/hooks/useCommon'; | |||||
| import { cols } from '@/views/jobSeeker/resume/columns'; | |||||
| import { UserOutlined, DownOutlined } from '@ant-design/icons-vue'; | |||||
| let { store, commomParams, showModal, showOtherModal1, message, ExclamationCircleOutlined, Modal } = useCommon(); | |||||
| let loading = ref<Boolean>(true); | |||||
| let openForm = ref<Boolean>(false); | |||||
| onMounted(() => { | |||||
| commomParams.value.search.rand = false | |||||
| commomParams.value.search.sort = 'refreshtime' | |||||
| getData(); | |||||
| }) | |||||
| const searchData = (data : object) => { | |||||
| import { ref, onMounted, watch, computed, createVNode } from 'vue'; | |||||
| import ResumeSearch from '@/views/jobSeeker/resume/search/index.vue'; | |||||
| import ResumeAdd from '@/views/jobSeeker/resume/add/add.vue'; | |||||
| import ResumeDetail from '@/views/jobSeeker/resume/detail/detail.vue'; | |||||
| import { PostJobseekerList, PostJobapplicantUpdate, PostEsJobseeker, GetCustomerUpdate, PostJobseekerExport } from '@/apis/models'; | |||||
| import { useCommon } from '@/hooks/useCommon'; | |||||
| import { cols } from '@/views/jobSeeker/resume/columns'; | |||||
| import { UserOutlined, DownOutlined } from '@ant-design/icons-vue'; | |||||
| let { store, commomParams, showModal, showOtherModal1, message, ExclamationCircleOutlined, Modal } = useCommon(); | |||||
| let loading = ref<Boolean>(true); | |||||
| let openForm = ref<Boolean>(false); | |||||
| onMounted(() => { | |||||
| commomParams.value.search.rand = false | |||||
| commomParams.value.search.sort = 'refreshtime' | |||||
| getData(); | |||||
| }) | |||||
| const searchData = (data: object) => { | |||||
| commomParams.value.search = data | |||||
| getData(); | |||||
| } | |||||
| const clearData = (data: object) => { | |||||
| commomParams.value.search.rand = false | |||||
| if (data) { | |||||
| commomParams.value.search = data | commomParams.value.search = data | ||||
| getData(); | |||||
| } | |||||
| const clearData = (data : object) => { | |||||
| commomParams.value.search.rand = false | |||||
| if (data) { | |||||
| commomParams.value.search = data | |||||
| } else { | |||||
| commomParams.value.search = { | |||||
| page: 1, | |||||
| pagesize: 10, | |||||
| sort: 'refreshtime', | |||||
| sortby: 'desc', | |||||
| keyword: '', | |||||
| rand: false | |||||
| } | |||||
| } | |||||
| getData(); | |||||
| } | |||||
| const getPage = (data : object) => { | |||||
| commomParams.value.search.page = data.current; | |||||
| commomParams.value.search.pagesize = data.pageSize; | |||||
| getData(); | |||||
| } | |||||
| const getData = async () => { | |||||
| try { | |||||
| loading.value = true; | |||||
| let res = await PostJobseekerList(commomParams.value.search); | |||||
| loading.value = false; | |||||
| commomParams.value.table.data = res.data.seekers; | |||||
| commomParams.value.table.columns = cols; | |||||
| commomParams.value.page = { | |||||
| current: commomParams.value.search.page, | |||||
| pageSize: commomParams.value.search.pagesize, | |||||
| total: res.data.total, | |||||
| pageSizeOptions: ['10', '20', '30', '40'], | |||||
| hideOnSinglePage: false, | |||||
| showSizeChanger: true | |||||
| }; | |||||
| } catch { | |||||
| loading.value = false; | |||||
| } else { | |||||
| commomParams.value.search = { | |||||
| page: 1, | |||||
| pagesize: 10, | |||||
| sort: 'refreshtime', | |||||
| sortby: 'desc', | |||||
| keyword: '', | |||||
| rand: false | |||||
| } | } | ||||
| } | } | ||||
| // 编辑 | |||||
| let edit_record = ref<Object>(null) | |||||
| const edit = (record : object) => { | |||||
| openForm.value = true | |||||
| edit_record.value = record; | |||||
| showModal() | |||||
| getData(); | |||||
| } | |||||
| const getPage = (data: object) => { | |||||
| commomParams.value.search.page = data.current; | |||||
| commomParams.value.search.pagesize = data.pageSize; | |||||
| getData(); | |||||
| } | |||||
| const getData = async () => { | |||||
| try { | |||||
| loading.value = true; | |||||
| let res = await PostJobseekerList(commomParams.value.search); | |||||
| loading.value = false; | |||||
| commomParams.value.table.data = res.data.seekers; | |||||
| commomParams.value.table.columns = cols; | |||||
| commomParams.value.page = { | |||||
| current: commomParams.value.search.page, | |||||
| pageSize: commomParams.value.search.pagesize, | |||||
| total: res.data.total, | |||||
| pageSizeOptions: ['10', '20', '30', '40'], | |||||
| hideOnSinglePage: false, | |||||
| showSizeChanger: true | |||||
| }; | |||||
| } catch { | |||||
| loading.value = false; | |||||
| } | } | ||||
| const successAdd = () => { | |||||
| } | |||||
| // 编辑 | |||||
| let edit_record = ref<Object>(null) | |||||
| const edit = (record: object) => { | |||||
| openForm.value = true | |||||
| edit_record.value = record; | |||||
| showModal() | |||||
| } | |||||
| const successAdd = () => { | |||||
| getData(); | |||||
| } | |||||
| const closeAdd = () => { | |||||
| openForm.value = false | |||||
| edit_record.value = null; | |||||
| } | |||||
| // 删除 | |||||
| // const delOneRole = (id : number) => { | |||||
| // commomParams.value.delRecord = { id: id }; | |||||
| // PostRoleDel(commomParams.value.delRecord).then(res => { | |||||
| // message.success('删除成功'); | |||||
| // getData(); | |||||
| // }) | |||||
| // } | |||||
| // 审核 | |||||
| const pass = (record) => { | |||||
| PostJobapplicantUpdate({ customer_id: record.customer_id, id: record.id, status: 2 }).then(res => { | |||||
| message.success('审核通过'); | |||||
| getData(); | getData(); | ||||
| } | |||||
| const closeAdd = () => { | |||||
| openForm.value = false | |||||
| edit_record.value = null; | |||||
| } | |||||
| // 删除 | |||||
| // const delOneRole = (id : number) => { | |||||
| // commomParams.value.delRecord = { id: id }; | |||||
| // PostRoleDel(commomParams.value.delRecord).then(res => { | |||||
| // message.success('删除成功'); | |||||
| // getData(); | |||||
| // }) | |||||
| // } | |||||
| // 审核 | |||||
| const pass = (record) => { | |||||
| PostJobapplicantUpdate({ customer_id: record.customer_id, id: record.id, status: 2 }).then(res => { | |||||
| message.success('审核通过'); | |||||
| getData(); | |||||
| }) | |||||
| } | |||||
| // 邀请面试 | |||||
| let openInterview = ref<Boolean>(false); | |||||
| let form = { | |||||
| id: 0, | |||||
| customer_id: 0, | |||||
| status: 3, | |||||
| aduit_memo: '' | |||||
| } | |||||
| const interview = (record : Object) => { | |||||
| openInterview.value = true | |||||
| form.id = record.id; | |||||
| form.customer_id = record.customer_id; | |||||
| form.status = 3 | |||||
| form.aduit_memo = record.audit_memo ? record.audit_memo : '不通过' | |||||
| } | |||||
| }) | |||||
| } | |||||
| // 邀请面试 | |||||
| let openInterview = ref<Boolean>(false); | |||||
| let form = { | |||||
| id: 0, | |||||
| customer_id: 0, | |||||
| status: 3, | |||||
| aduit_memo: '' | |||||
| } | |||||
| const interview = (record: Object) => { | |||||
| openInterview.value = true | |||||
| form.id = record.id; | |||||
| form.customer_id = record.customer_id; | |||||
| form.status = 3 | |||||
| form.aduit_memo = record.audit_memo ? record.audit_memo : '不通过' | |||||
| } | |||||
| const unpass = () => { | |||||
| PostJobapplicantUpdate(form).then(res => { | |||||
| message.success('审核不通过'); | |||||
| openInterview.value = false | |||||
| getData(); | |||||
| }) | |||||
| } | |||||
| const unpass = () => { | |||||
| PostJobapplicantUpdate(form).then(res => { | |||||
| message.success('审核不通过'); | |||||
| openInterview.value = false | |||||
| getData(); | |||||
| }) | |||||
| } | |||||
| const pushEs = (customer_id) => { | |||||
| PostEsJobseeker({ customer_ids: [customer_id] }).then(res => { | |||||
| message.success('推送成功'); | |||||
| }) | |||||
| } | |||||
| const pushEs = (customer_id) => { | |||||
| PostEsJobseeker({ customer_ids: [customer_id] }).then(res => { | |||||
| message.success('推送成功'); | |||||
| }) | |||||
| } | |||||
| let detail_record = ref<Object>(null) | |||||
| const detail = (record) => { | |||||
| detail_record.value = record; | |||||
| showOtherModal1() | |||||
| } | |||||
| const successPermission = () => { | |||||
| detail_record.value = null; | |||||
| } | |||||
| let detail_record = ref<Object>(null) | |||||
| const detail = (record) => { | |||||
| detail_record.value = record; | |||||
| showOtherModal1() | |||||
| } | |||||
| const successPermission = () => { | |||||
| detail_record.value = null; | |||||
| } | |||||
| const closePermission = () => { | |||||
| detail_record.value = null; | |||||
| } | |||||
| const closePermission = () => { | |||||
| detail_record.value = null; | |||||
| } | |||||
| const download = () => { | |||||
| PostJobseekerExport().then(res => { | |||||
| let url = import.meta.env.MODE == 'production' ? 'https://admin1.jcjob.cn/img' + res.data.excel_url : 'https://rcsc-test.jcjob.cn/img' + res.data.excel_url; | |||||
| window.open(url); | |||||
| }) | |||||
| } | |||||
| </script> | </script> | ||||
| <style lang="less" scoped> | |||||
| </style> | |||||
| <style lang="less" scoped></style> |