|
@@ -0,0 +1,156 @@
|
|
|
+<template>
|
|
|
+ <ion-page class="list-page">
|
|
|
+ <ion-header class="header-theme2">
|
|
|
+ <ion-toolbar>
|
|
|
+ <ion-buttons slot="start">
|
|
|
+ <ion-icon :icon="arrowBackOutline" @click="onBack"></ion-icon>
|
|
|
+ </ion-buttons>
|
|
|
+ <ion-title>推荐详情信息</ion-title>
|
|
|
+ </ion-toolbar>
|
|
|
+ </ion-header>
|
|
|
+ <ion-content>
|
|
|
+ <div class="bw-vue-form">
|
|
|
+ <div class="form-title">推荐详情</div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>求职人</ion-label>
|
|
|
+ <ion-text>{{ dataModel.name }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>求职岗位</ion-label>
|
|
|
+ <ion-text>{{ dataModel.qzProfessionName }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>招聘企业</ion-label>
|
|
|
+ <ion-text>{{ dataModel.companyName }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>招聘岗位</ion-label>
|
|
|
+ <ion-text>{{ dataModel.zpProfessionName }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>求职人联系电话</ion-label>
|
|
|
+ <ion-text>{{ dataModel.userMobile }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>企业联系人</ion-label>
|
|
|
+ <ion-text>{{ dataModel.companyUserName }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>企业联系电话</ion-label>
|
|
|
+ <ion-text>{{ dataModel.companyMobile }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>入职状态</ion-label>
|
|
|
+ <ion-text>{{ dataModel.entryStateName }}</ion-text>
|
|
|
+ </div>
|
|
|
+ <div class="form-detail">
|
|
|
+ <ion-label>推送时间</ion-label>
|
|
|
+ <ion-text>{{ dayjs(dataModel.createTime).format('YYYY-MM-DD') }}</ion-text>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </ion-content>
|
|
|
+ <ion-footer>
|
|
|
+ <ion-button shape="round" expand="block"
|
|
|
+ @click="onSetEntryState(dataModel.recommendMgtID, dataModel.entryState!=1?'1':'0')">
|
|
|
+ {{ dataModel.entryState != 1 ? '已入职' : '已离职' }}
|
|
|
+ </ion-button>
|
|
|
+ </ion-footer>
|
|
|
+ </ion-page>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script lang="ts">
|
|
|
+import {defineComponent, ref} from 'vue';
|
|
|
+import dayjs from "dayjs";
|
|
|
+import {useRoute, useRouter} from "vue-router";
|
|
|
+import {arrowBackOutline} from 'ionicons/icons';
|
|
|
+import {getListById, setEntryState} from '@/api/recommendmgt/index'
|
|
|
+
|
|
|
+interface RecommendModel {
|
|
|
+ companyMobile: string,
|
|
|
+ companyName: string,
|
|
|
+ companyUserName: string,
|
|
|
+ entryState: any,
|
|
|
+ entryStateName: string,
|
|
|
+ genderName: string,
|
|
|
+ jobHuntID: string,
|
|
|
+ jobPeopleIsRead: string,
|
|
|
+ jobPeopleIsReadName: string,
|
|
|
+ name: string,
|
|
|
+ officialAccountsID: string,
|
|
|
+ postID: string,
|
|
|
+ postIsRead: string,
|
|
|
+ postIsReadName: string,
|
|
|
+ pushName: string,
|
|
|
+ qzProfessionName: string,
|
|
|
+ recommendMgtID: string,
|
|
|
+ recommendType: any,
|
|
|
+ recommendTypeName: string,
|
|
|
+ userMobile: string,
|
|
|
+ zpProfessionName: string
|
|
|
+}
|
|
|
+
|
|
|
+export default defineComponent({
|
|
|
+ name: "RecommendDetail",
|
|
|
+ setup() {
|
|
|
+ const loading = ref(true);
|
|
|
+ const dataModel = ref<RecommendModel>({
|
|
|
+ companyMobile: "",
|
|
|
+ companyName: "",
|
|
|
+ companyUserName: "",
|
|
|
+ entryState: null,
|
|
|
+ entryStateName: "",
|
|
|
+ genderName: "",
|
|
|
+ jobHuntID: "",
|
|
|
+ jobPeopleIsRead: "",
|
|
|
+ jobPeopleIsReadName: "",
|
|
|
+ name: "",
|
|
|
+ officialAccountsID: "",
|
|
|
+ postID: "",
|
|
|
+ postIsRead: "",
|
|
|
+ postIsReadName: "",
|
|
|
+ pushName: "",
|
|
|
+ qzProfessionName: "",
|
|
|
+ recommendMgtID: "",
|
|
|
+ recommendType: null,
|
|
|
+ recommendTypeName: "",
|
|
|
+ userMobile: "",
|
|
|
+ zpProfessionName: ""
|
|
|
+ });
|
|
|
+ const router = useRouter();
|
|
|
+ const route = useRoute();
|
|
|
+ const loadData = async function (id: any) {
|
|
|
+ loading.value = true;
|
|
|
+ getListById(id).then((data) => {
|
|
|
+ debugger;
|
|
|
+ dataModel.value = data;
|
|
|
+ })
|
|
|
+ loading.value = false;
|
|
|
+ }
|
|
|
+
|
|
|
+ const onSetEntryState = async (recommendMgtID: any, entryState: any) => {
|
|
|
+ setEntryState({recommendMgtID: recommendMgtID, entryState: entryState}).then(() => {
|
|
|
+ loadData(route.query.recommendMgtID);
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ const onBack = () => {
|
|
|
+ router.push({path: './list', query: {reload: 1}});
|
|
|
+ }
|
|
|
+
|
|
|
+ return {
|
|
|
+ dataModel,
|
|
|
+ arrowBackOutline,
|
|
|
+ dayjs,
|
|
|
+ route,
|
|
|
+ loadData,
|
|
|
+ onSetEntryState,
|
|
|
+ onBack
|
|
|
+ }
|
|
|
+ }, created() {
|
|
|
+ this.loadData(this.route.query.recommendMgtID);
|
|
|
+ }
|
|
|
+});
|
|
|
+</script>
|
|
|
+<style lang="less">
|
|
|
+
|
|
|
+</style>
|