|
|
@@ -0,0 +1,121 @@
|
|
|
+<template>
|
|
|
+ <van-form @failed="onFailed" @sumbit="onSubmit">
|
|
|
+ <van-cell-group class="cell-group">
|
|
|
+ <div class="title">
|
|
|
+ <div class="line"></div>
|
|
|
+ <div class="title-info">基本信息</div>
|
|
|
+ </div>
|
|
|
+ <van-field v-model="formDataOneStep.name" label="姓名" name="name" placeholder="请输入姓名"
|
|
|
+ :rules="[{ required: true, message: '请输入您的姓名' }]" required />
|
|
|
+ <van-field name="sex" label="性别" :rules="[{ required: true, message: '请选择您的性别' }]" required>
|
|
|
+ <template #input>
|
|
|
+ <van-radio-group v-model="formDataOneStep.sex" direction="vertical" class="sex-radio">
|
|
|
+ <van-radio :name="1">男士</van-radio>
|
|
|
+ <van-radio :name="0">女士</van-radio>
|
|
|
+ </van-radio-group>
|
|
|
+ </template>
|
|
|
+ </van-field>
|
|
|
+ <van-field v-model="formDataOneStep.name" label="证件号" name="name" placeholder="请输入证件号"
|
|
|
+ :rules="[{ required: true, message: '请输入证件号' }]" required />
|
|
|
+ <van-field v-model="formDataOneStep.name" label="手机号" name="name" placeholder="请输入手机号"
|
|
|
+ :rules="[{ required: true, message: '请输入手机号' }]" required />
|
|
|
+ <van-field v-model="formDataOneStep.name" is-link readonly name="name" label="岗位" placeholder="请选择岗位"
|
|
|
+ @click="showPicker = true" required />
|
|
|
+ <van-popup v-model:show="showPicker" position="bottom">
|
|
|
+ <van-picker :columns="columns" @confirm="onConfirm" @cancel="showPicker = false" />
|
|
|
+ </van-popup>
|
|
|
+ <!-- <van-field name="name" label="文件上传" :rules="[{ required: true, message: '请选择您的性别' }]">
|
|
|
+ <template #input>
|
|
|
+ <van-uploader v-model="formData.name" />
|
|
|
+ </template>
|
|
|
+ </van-field> -->
|
|
|
+ <van-field v-model="formDataOneStep.name" is-link readonly name="name" label="类型" placeholder="请选择招聘类型"
|
|
|
+ @click="showPicker = true" required />
|
|
|
+ <van-popup v-model:show="showPicker" position="bottom">
|
|
|
+ <van-picker :columns="columns" @confirm="onConfirm" @cancel="showPicker = false" />
|
|
|
+ </van-popup>
|
|
|
+ <van-field v-model="formDataOneStep.name" label="工作年限" name="name" placeholder="请输入工作年限"
|
|
|
+ :rules="[{ required: true, message: '请输入工作年限' }]" required />
|
|
|
+ <van-field v-model="formDataOneStep.name" is-link readonly name="name" label="学历" placeholder="请选择最高学历"
|
|
|
+ @click="showArea = true" required />
|
|
|
+ <van-popup v-model:show="showArea" position="bottom">
|
|
|
+ <van-area :area-list="areaList" @confirm="onConfirm" @cancel="showArea = false" />
|
|
|
+ </van-popup>
|
|
|
+ <van-field v-model="formDataOneStep.name" label="学校" name="name" placeholder="请输入毕业院校"
|
|
|
+ :rules="[{ required: true, message: '请输入毕业院校' }]" required />
|
|
|
+ <van-field v-model="formDataOneStep.name" label="专业" name="name" placeholder="请输入所学专业"
|
|
|
+ :rules="[{ required: true, message: '请输入所学专业' }]" required />
|
|
|
+ <van-field v-model="formDataOneStep.name" is-link readonly name="name" label="联系地址" placeholder="请选择联系地址"
|
|
|
+ @click="showArea = true" required />
|
|
|
+ <van-popup v-model:show="showArea" position="bottom">
|
|
|
+ <van-area :area-list="areaList" @confirm="onConfirm" @cancel="showArea = false" />
|
|
|
+ </van-popup>
|
|
|
+ <van-field v-model="formDataOneStep.name" type="textarea" label="详细地址" name="name" placeholder="请输入详细地址"
|
|
|
+ :rules="[{ required: true, message: '请输入详细地址' }]" required />
|
|
|
+ </van-cell-group>
|
|
|
+ <div class="gap"></div>
|
|
|
+ <van-cell-group class="cell-group">
|
|
|
+ <div class="title">
|
|
|
+ <div class="line"></div>
|
|
|
+ <div class="title-info">基本信息-紧急联系人</div>
|
|
|
+ </div>
|
|
|
+ <van-field v-model="formDataOneStep.name" name="name" label="紧急联系人" placeholder="请输入紧急联系人称呼"
|
|
|
+ @click="showArea = true" required />
|
|
|
+ <van-field v-model="formDataOneStep.name" name="name" label="紧急联系人关系" placeholder="请输入紧急联系人关系"
|
|
|
+ @click="showArea = true" required />
|
|
|
+ <van-field v-model="formDataOneStep.name" name="name" label="联系方式" placeholder="请输入联系人手机号" required />
|
|
|
+ </van-cell-group>
|
|
|
+ </van-form>
|
|
|
+</template>
|
|
|
+<script setup>
|
|
|
+import { ref, reactive } from "vue"
|
|
|
+import useBsDict from '/@/utils/dict.js';
|
|
|
+const formDataOneStep = defineModel('formDataOneStep')
|
|
|
+const showArea = ref(false)
|
|
|
+const showPicker = ref(false)
|
|
|
+const columns = []
|
|
|
+const areaList = []
|
|
|
+function onFailed(errorInfo) {
|
|
|
+
|
|
|
+}
|
|
|
+function onConfirm() {
|
|
|
+
|
|
|
+}
|
|
|
+function onSubmit(values) {
|
|
|
+
|
|
|
+}
|
|
|
+</script>
|
|
|
+<style lang="scss" scoped>
|
|
|
+.gap {
|
|
|
+ height: .6rem;
|
|
|
+ background-color: #EBEEF5;
|
|
|
+}
|
|
|
+
|
|
|
+.cell-group {
|
|
|
+ padding: .8rem .5rem;
|
|
|
+}
|
|
|
+
|
|
|
+.title {
|
|
|
+ display: inline-flex;
|
|
|
+ gap: .5rem;
|
|
|
+ margin: 0 1rem;
|
|
|
+
|
|
|
+ .line {
|
|
|
+ width: .3rem;
|
|
|
+ height: 1.3rem;
|
|
|
+ background-color: #2B69F8;
|
|
|
+ }
|
|
|
+
|
|
|
+ .title-info {
|
|
|
+ font-size: 1.3rem;
|
|
|
+ font-weight: 500;
|
|
|
+ font-family: 'PingFang SC';
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+.sex-radio {
|
|
|
+ display: flex;
|
|
|
+ flex: 1;
|
|
|
+ gap: 4rem;
|
|
|
+}
|
|
|
+</style>
|