123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224 |
- <template>
- <div id="index">
- <el-row>
- <el-col :span="24" class="style">
- <el-col :span="24" class="top">
- <NavBar v-show="navShow" :title="title" :isleftarrow="isleftarrow"> </NavBar>
- </el-col>
- <el-col :span="24" class="main">
- <van-row>
- <van-col class="title" span="24"></van-col>
- <van-form @submit="onSubmit" v-model="form" :show-error-message="false">
- <van-field
- required
- v-model="form.name"
- left-icon="manager-o"
- name="name"
- label="用户名"
- placeholder="请填写用户名"
- :rules="[{ required: true, message: '请填写用户名' }]"
- />
- <van-field required left-icon="eye-o" v-model="form.age" name="age" label="年龄" type="digit" placeholder="请填写年龄" />
- <van-field name="gender" left-icon="friends-o" label="性别">
- <template #input>
- <van-radio-group v-model="form.gender" direction="horizontal">
- <van-radio name="男">男</van-radio>
- <van-radio name="女">女</van-radio>
- </van-radio-group>
- </template>
- </van-field>
- <van-field
- required
- v-model="form.idnumber"
- name="idnumber"
- label="身份证号"
- left-icon="vip-card-o"
- placeholder="请填写身份证号"
- :rules="[{ required: true, message: '请填写身份证号' }]"
- />
- <van-field
- required
- v-model="form.phone"
- name="phone"
- label="手机号"
- left-icon="phone-o"
- placeholder="请填写手机号"
- :rules="[{ required: true, message: '请填写手机号' }]"
- />
- <van-field v-model="form.hosname" left-icon="wap-home-o" name="hosname" label="单位" placeholder="请填写单位标准全称" />
- <van-field v-model="form.deptname" left-icon="apps-o" name="deptname" label="科室" placeholder="请填写学员所在科室" />
- <van-field v-model="form.level" left-icon="gem-o" name="level" label="职称" placeholder="请填写职称" />
- <van-field v-model="form.major" left-icon="user-o" name="major" label="专业" placeholder="请填写所属专业名称" />
- <van-field v-model="form.isxf" name="isxf" left-icon="star-o" label="学分" placeholder="请填写需要授予学分" />
- <van-field name="isjc" left-icon="points" label="是否来自基层">
- <template #input>
- <van-switch v-model="form.isjc" size="20" />
- </template>
- </van-field>
- <van-field
- left-icon="location-o"
- readonly
- clickable
- name="address"
- :value="form.address"
- label="地址"
- placeholder="点击选择单位所在地"
- @click="showPicker = true"
- />
- <van-popup round v-model="showPicker" position="bottom">
- <van-picker show-toolbar :columns="addresslist" @confirm="onConfirm" @cancel="showPicker = false" />
- </van-popup>
- <!-- <van-field
- v-model="form.title"
- name="title"
- label="简介"
- left-icon="like-o"
- placeholder="请填写个人简介"
- type="textarea"
- rows="2"
- autosize
- maxlength="500"
- show-word-limit
- /> -->
- <!-- <van-field
- v-model="form.remark"
- name="remark"
- left-icon="description"
- label="备注"
- placeholder="请填写备注"
- type="textarea"
- rows="2"
- autosize
- maxlength="500"
- show-word-limit
- /> -->
- <div style="margin: 16px;">
- <van-button round block type="info" native-type="submit">
- 提交
- </van-button>
- </div>
- </van-form>
- </van-row>
- </el-col>
- </el-col>
- </el-row>
- </div>
- </template>
- <script>
- import Vue from 'vue';
- import { mapState, createNamespacedHelpers } from 'vuex';
- import NavBar from '@/layout/common/topInfo.vue';
- const { mapActions: onliveUser } = createNamespacedHelpers('onliveUser');
- export default {
- name: 'index',
- props: {},
- components: {
- NavBar,
- },
- data: function() {
- return {
- // 头部标题
- title: '',
- // meta为true
- isleftarrow: '',
- // 返回
- navShow: true,
- addresslist: ['省直', '黄石', '鄂州', '孝感', '黄冈', '咸宁'],
- showPicker: false,
- imgUrl: require('@/assets/test.jpg'),
- form: {},
- };
- },
- created() {
- this.searchInfo();
- },
- methods: {
- ...onliveUser(['roomuserfetch', 'roomuserupdate']),
- onConfirm(value) {
- this.form.address = value;
- this.showPicker = false;
- },
- async searchInfo() {
- // this.user.uid = '5ee84acb778c700c98d8bf35';
- const res = await this.roomuserfetch(this.user.uid);
- if (this.$checkRes(res)) {
- console.log(res.data);
- this.$set(this, `form`, res.data);
- }
- },
- async onSubmit() {
- const res = await this.roomuserupdate(this.form);
- if (this.$checkRes(res)) {
- this.$message({
- message: '修改信息成功',
- type: 'success',
- });
- this.back();
- }
- },
- // 返回
- back() {
- this.$router.push({ path: '/live/index' });
- },
- },
- computed: {
- ...mapState(['user']),
- pageTitle() {
- return `${this.$route.meta.title}`;
- },
- },
- mounted() {
- this.title = this.$route.meta.title;
- this.isleftarrow = this.$route.meta.isleftarrow;
- },
- };
- </script>
- <style lang="less" scoped>
- .style {
- width: 100%;
- min-height: 667px;
- position: relative;
- background-color: #f9fafc;
- }
- .top {
- height: 46px;
- overflow: hidden;
- position: relative;
- z-index: 999;
- }
- .main {
- min-height: 570px;
- .newsList {
- margin: 10px;
- border-bottom: 1px dashed #ccc;
- width: 95%;
- .image {
- .el-image {
- border-radius: 10px;
- }
- }
- .text {
- padding: 0 10px;
- .title {
- padding: 10px 0;
- }
- .type {
- font-size: 14px;
- color: #ccc;
- padding: 5px 0;
- }
- .time {
- font-size: 14px;
- color: #ccc;
- padding: 5px 0;
- }
- }
- }
- }
- /deep/.van-field__control {
- margin: 5px 10px;
- }
- </style>
|