|
@@ -22,7 +22,7 @@
|
|
|
<el-input v-model="form.name" placeholder="请输入姓名"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="手机号" prop="phone">
|
|
|
- <el-input v-model="form.phone" placeholder="请输入手机号"></el-input>
|
|
|
+ <el-input v-model="form.phone" placeholder="请输入手机号" maxlength="11"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="密码" prop="passwd">
|
|
|
<el-input v-model="form.passwd" placeholder="请输入密码" show-password></el-input>
|
|
@@ -53,7 +53,7 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="担任职务" prop="level_id" v-if="form.type == '0' || form.type == '1'">
|
|
|
- <el-select v-model="form.level_id" filterable @change="selectChild">
|
|
|
+ <el-select v-model="form.level_id" filterable>
|
|
|
<el-option v-for="(item, index) in levelList" :key="index" :value="item.id" :label="item.name"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
@@ -128,6 +128,9 @@ import menus from '@/layout/common/menus.vue';
|
|
|
import foot from '@/layout/common/foot.vue';
|
|
|
import upload from '@/components/uploadone.vue';
|
|
|
import { mapState, createNamespacedHelpers } from 'vuex';
|
|
|
+const { mapActions: registers } = createNamespacedHelpers('registers');
|
|
|
+const { mapActions: department } = createNamespacedHelpers('department');
|
|
|
+const { mapActions: level } = createNamespacedHelpers('level');
|
|
|
export default {
|
|
|
name: 'register',
|
|
|
props: {},
|
|
@@ -168,6 +171,7 @@ export default {
|
|
|
},
|
|
|
// 部门
|
|
|
deptList: [],
|
|
|
+ dept_id: '',
|
|
|
// 职务
|
|
|
levelList: [],
|
|
|
// 学历
|
|
@@ -202,26 +206,45 @@ export default {
|
|
|
],
|
|
|
};
|
|
|
},
|
|
|
- created() {},
|
|
|
+ created() {
|
|
|
+ this.searchInfo();
|
|
|
+ },
|
|
|
methods: {
|
|
|
+ ...registers(['create']),
|
|
|
+ ...department({ departmentQuery: 'query', departmentFetch: 'fetch' }),
|
|
|
+ ...level({ levelQuery: 'query', levelFetch: 'fetch' }),
|
|
|
+ // 部门
|
|
|
+ async searchInfo() {
|
|
|
+ let res = await this.departmentQuery();
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$set(this, `deptList`, res.data);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 职务
|
|
|
+ async selectChild(dept_id) {
|
|
|
+ let res = await this.levelQuery(dept_id);
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$set(this, `levelList`, res.data);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 提交
|
|
|
submitForm(formName) {
|
|
|
- this.$refs[formName].validate(valid => {
|
|
|
+ this.$refs[formName].validate(async valid => {
|
|
|
if (valid) {
|
|
|
- alert('submit!');
|
|
|
+ let res = await this.create(this.form);
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$message({
|
|
|
+ message: '恭喜你,注册成功',
|
|
|
+ type: 'success',
|
|
|
+ });
|
|
|
+ this.$router.push({ path: '/login' });
|
|
|
+ }
|
|
|
} else {
|
|
|
console.log('error submit!!');
|
|
|
return false;
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
- selectChild(type_id) {
|
|
|
- console.log(type_id);
|
|
|
- // let res = this.columnList.filter(fil => fil.id === product_type_id);
|
|
|
- // if (res.length > 0) {
|
|
|
- // this.$set(this.form, `product_type_name`, res[0].name);
|
|
|
- // }
|
|
|
- // this.$forceUpdate();
|
|
|
- },
|
|
|
uploadSuccess({ type, data }) {
|
|
|
this.$set(this.form, `${type}`, data.uri);
|
|
|
},
|