|
@@ -17,7 +17,7 @@
|
|
|
职务:{{ item.job }}<span v-if="item.job == '班长' || item.job == '学委'"><i class="el-icon-circle-check"></i></span>
|
|
|
</p>
|
|
|
<el-col :span="24" class="job">性别:{{ item.gender }}</el-col>
|
|
|
- <el-col :span="24" class="job">寝室号:{{ item.bedroom }}</el-col>
|
|
|
+ <p :span="24" class="job" @click="showPopup(item)">寝室号:{{ item.bedroom }}</p>
|
|
|
<el-col :span="24" class="job"
|
|
|
><i class="el-icon-phone"></i><el-link href="tel:01234567890" :underline="false">:{{ item.phone }}</el-link></el-col
|
|
|
>
|
|
@@ -35,7 +35,7 @@
|
|
|
:rules="[{ required: true, message: '请填写用户名' }]"
|
|
|
/>
|
|
|
|
|
|
- <van-field readonly clickable name="picker" :value="newform.job" label="选择器" placeholder="点击选择城市" @click="showPicker = true" />
|
|
|
+ <van-field readonly clickable name="picker" :value="newform.job" label="指派职务" placeholder="点击指派职务" @click="showPicker = true" />
|
|
|
<van-popup v-model="showPicker" position="bottom">
|
|
|
<van-picker show-toolbar :columns="columns" @confirm="onConfirm" @cancel="showPicker = false" />
|
|
|
</van-popup>
|
|
@@ -54,11 +54,40 @@
|
|
|
</div>
|
|
|
</van-form>
|
|
|
</van-popup>
|
|
|
+
|
|
|
+ <van-popup position="bottom" v-model="newshow">
|
|
|
+ <van-form @submit="pssubmit">
|
|
|
+ <van-field
|
|
|
+ v-model="psform.name"
|
|
|
+ disabled
|
|
|
+ name="学生名称"
|
|
|
+ label="学生名称"
|
|
|
+ placeholder="请输入学生名称"
|
|
|
+ :rules="[{ required: true, message: '请填写用户名' }]"
|
|
|
+ />
|
|
|
+
|
|
|
+ <van-field name="radio" label="是否指派为寝室长">
|
|
|
+ <template #input>
|
|
|
+ <van-radio-group v-model="psform.job" direction="horizontal">
|
|
|
+ <van-radio name="普通学生">否</van-radio>
|
|
|
+ <van-radio name="寝室长">是</van-radio>
|
|
|
+ </van-radio-group>
|
|
|
+ </template>
|
|
|
+ </van-field>
|
|
|
+ <div style="margin: 16px;">
|
|
|
+ <van-button round block type="info" native-type="submit">
|
|
|
+ 提交
|
|
|
+ </van-button>
|
|
|
+ </div>
|
|
|
+ </van-form>
|
|
|
+ </van-popup>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import { mapState, createNamespacedHelpers, mapGetters } from 'vuex';
|
|
|
+const { mapActions: bedroom } = createNamespacedHelpers('bedroom');
|
|
|
+const { mapActions: util } = createNamespacedHelpers('util');
|
|
|
export default {
|
|
|
name: 'stuNameList',
|
|
|
props: {
|
|
@@ -67,6 +96,7 @@ export default {
|
|
|
components: {},
|
|
|
data: () => ({
|
|
|
newform: {},
|
|
|
+ psform: {},
|
|
|
form: {},
|
|
|
show: false,
|
|
|
newshow: false,
|
|
@@ -81,11 +111,18 @@ export default {
|
|
|
created() {},
|
|
|
computed: { ...mapState(['user']) },
|
|
|
methods: {
|
|
|
+ ...bedroom({ query: 'query', fetch: 'fetch' }),
|
|
|
+ ...util({ modelFetch: 'fetch' }),
|
|
|
onSubmit(values) {
|
|
|
this.$emit('newsubmit', { data: this.newform });
|
|
|
this.show = false;
|
|
|
},
|
|
|
|
|
|
+ qinshisub(values) {
|
|
|
+ this.$emit('newsubmit', { data: this.newform });
|
|
|
+ this.show = false;
|
|
|
+ },
|
|
|
+
|
|
|
submitinfo(item) {
|
|
|
// this.value = item.job;
|
|
|
|
|
@@ -130,9 +167,20 @@ export default {
|
|
|
this.newshow = true;
|
|
|
},
|
|
|
|
|
|
+ async showPopup(item) {
|
|
|
+ if (item.job == '普通学生') {
|
|
|
+ console.log(item);
|
|
|
+ this.psform = item;
|
|
|
+ const res = await this.modelFetch({ model: 'bedroom', code: item.bedroom });
|
|
|
+ this.newshow = true;
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ pssubmit(values) {
|
|
|
+ console.log(this.psform);
|
|
|
+ },
|
|
|
onConfirm(job) {
|
|
|
this.$set(this.newform, `job`, job);
|
|
|
-
|
|
|
this.showPicker = false;
|
|
|
},
|
|
|
},
|