|
@@ -0,0 +1,154 @@
|
|
|
|
+<template>
|
|
|
|
+ <div id="pinfo">
|
|
|
|
+ <el-row>
|
|
|
|
+ <el-col :span="24">
|
|
|
|
+ <el-form ref="form" :model="form" label-width="120px" :rules="rules">
|
|
|
|
+ <el-form-item label="用户名:" prop="name">
|
|
|
|
+ <el-input v-model="form.name"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="手机号:" prop="phone">
|
|
|
|
+ <el-input v-model="form.phone"></el-input
|
|
|
|
+ ><span style="color:red;"
|
|
|
|
+ ><i class="el-icon-warning" style="margin-right:5px;"></i>如果您修改手机号,那么登录时使用的手机号也会发生变更,请谨慎修改!</span
|
|
|
|
+ >
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="身份证号:" prop="id_number">
|
|
|
|
+ <el-input v-model="form.id_number" @input="inputIdnumber()"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="出生年月" prop="birthday">
|
|
|
|
+ <el-date-picker disabled v-model="form.birthday" type="date" format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="请选择选择日期">
|
|
|
|
+ </el-date-picker>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="性别" prop="gender">
|
|
|
|
+ <el-radio-group disabled v-model="form.gender">
|
|
|
|
+ <el-radio label="男">男</el-radio>
|
|
|
|
+ <el-radio label="女">女</el-radio>
|
|
|
|
+ </el-radio-group>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="家庭住址:">
|
|
|
|
+ <el-input v-model="form.address"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="部门:">
|
|
|
|
+ <el-select v-model="form.dept_id" filterable placeholder="请选择部门">
|
|
|
|
+ <el-option v-for="(item, index) in deptList" :key="index" :label="item.name" :value="item._id"></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="职务:">
|
|
|
|
+ <el-select v-model="form.level_id" filterable placeholder="请选择职务">
|
|
|
|
+ <el-option v-for="(item, index) in levelList" :key="index" :label="item.name" :value="item._id"></el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="邮箱" prop="email">
|
|
|
|
+ <el-input v-model="form.email"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="头像" prop="img_url">
|
|
|
|
+ <upload :limit="1" :data="form.img_url" type="img_url" :url="'/files/count/upload'" @upload="uploadSuccess"></upload>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="职称级别">
|
|
|
|
+ <el-input v-model="form.level"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="职称名称">
|
|
|
|
+ <el-input v-model="form.levelname"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="院校">
|
|
|
|
+ <el-input v-model="form.school"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="学历">
|
|
|
|
+ <el-select v-model="form.education" placeholder="请选择学历">
|
|
|
|
+ <el-option v-for="(item, index) in educationList" :key="index" :label="item.name" :value="item.name"> </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="学位">
|
|
|
|
+ <el-select v-model="form.degree" placeholder="请选择学位">
|
|
|
|
+ <el-option v-for="(item, index) in degreeList" :key="index" :label="item.name" :value="item.name"> </el-option>
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="专业">
|
|
|
|
+ <el-input v-model="form.major"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="从事专业">
|
|
|
|
+ <el-input v-model="form.profession"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="工作简历">
|
|
|
|
+ <el-input v-model="form.resume" type="textarea"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="项目">
|
|
|
|
+ <el-input v-model="form.project" type="textarea"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="学术成就">
|
|
|
|
+ <el-input v-model="form.academic" type="textarea"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item>
|
|
|
|
+ <el-button type="primary" @click="onSubmit">提交</el-button>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+ </div>
|
|
|
|
+</template>
|
|
|
|
+
|
|
|
|
+<script>
|
|
|
|
+import upload from '@/components/uploadone.vue';
|
|
|
|
+export default {
|
|
|
|
+ name: 'pinfo',
|
|
|
|
+ props: {},
|
|
|
|
+ components: { upload },
|
|
|
|
+ data: () => ({
|
|
|
|
+ form: {},
|
|
|
|
+ deptList: [],
|
|
|
|
+ levelList: [],
|
|
|
|
+ educationList: [{ name: '中专及以上' }, { name: '大专及以上' }, { name: '本科及以上' }, { name: '研究生及以上' }],
|
|
|
|
+ degreeList: [{ name: '博士学位' }, { name: '硕士学位' }, { name: '学士学位' }, { name: '其他' }],
|
|
|
|
+ rules: {
|
|
|
|
+ name: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
|
|
|
|
+ id_number: [
|
|
|
|
+ { required: true, message: '请输入身份证号', trigger: 'blur' },
|
|
|
|
+ {
|
|
|
|
+ pattern: /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/,
|
|
|
|
+ message: '请输入有效的身份证号',
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ phone: [
|
|
|
|
+ { required: true, message: '请输入手机号', trigger: 'blur' },
|
|
|
|
+ { pattern: /^1\d{10}$/, message: '请输入有效的手机号' },
|
|
|
|
+ ],
|
|
|
|
+ gender: [{ required: true, message: '请选择性别', trigger: 'blur' }],
|
|
|
|
+ birthday: [{ required: true, message: '请选择出生年月', trigger: 'blur' }],
|
|
|
|
+ email: [{ required: false }, { pattern: /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/, message: '请输入有效的邮箱' }],
|
|
|
|
+ },
|
|
|
|
+ }),
|
|
|
|
+ created() {},
|
|
|
|
+ computed: {},
|
|
|
|
+ methods: {
|
|
|
|
+ inputIdnumber() {
|
|
|
|
+ let card = this.form.id_number;
|
|
|
|
+ if (card.length == 18) {
|
|
|
|
+ let birth = card.substring(6, 10) + '-' + card.substring(10, 12) + '-' + card.substring(12, 14);
|
|
|
|
+ let gender = parseInt(card.substr(16, 1)) % 2 == 1 ? '男' : '女';
|
|
|
|
+ let myDate = new Date();
|
|
|
|
+ let month = myDate.getMonth() + 1;
|
|
|
|
+ let day = myDate.getDate();
|
|
|
|
+ let age = myDate.getFullYear() - card.substring(6, 10) - 1;
|
|
|
|
+ if (card.substring(10, 12) < month || (card.substring(10, 12) == month && card.substring(12, 14) <= day)) {
|
|
|
|
+ age++;
|
|
|
|
+ }
|
|
|
|
+ this.form.birthday = birth;
|
|
|
|
+ this.form.gender = gender;
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ onSubmit() {},
|
|
|
|
+ uploadSuccess({ type, data }) {
|
|
|
|
+ this.$set(this.form, `${type}`, data.uri);
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+};
|
|
|
|
+</script>
|
|
|
|
+
|
|
|
|
+<style lang="less" scoped>
|
|
|
|
+/deep/.el-input__inner {
|
|
|
|
+ width: 600px;
|
|
|
|
+}
|
|
|
|
+/deep/ .el-textarea__inner {
|
|
|
|
+ width: 600px;
|
|
|
|
+}
|
|
|
|
+</style>
|