Commit 6f0a6329 authored by zhengke's avatar zhengke
parents 96bed70e dbf06a39
......@@ -8,18 +8,62 @@
right: -5px;
top: -5px;
}
.activityStuForm .selectClass {
width: 1026px;
border: 1px dashed #E1E1E5;
padding-top: 12px;
border-radius: 4px;
padding: 12px 4px 0 4px;
margin-top: 5px;
}
.activityStuForm .selectClass span {
display: inline-block;
background: #F2F5FA;
padding: 0 10px;
height: 26px;
line-height: 26px;
border-radius: 14px;
color: #181E33;
margin-left: 10px;
margin-bottom: 12px;
position: relative;
font-size: 12px;
cursor: pointer;
}
.activityStuForm .selectClass span i {
position: absolute;
right: -8px;
top: -10px;
display: none;
color: gray;
cursor: pointer;
}
.activityStuForm .selectClass span:hover i {
display: block;
}
</style>
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale" transition-hide="scale">
<q-card style="width: 500px;max-width:500px;">
<q-card style="width: 500px;max-width:500px;" class="activityStuForm">
<q-card-section>
<div class="text-h6">{{addMsg.ID==0?'选择学员':'修改学员'}}</div>
<div class="text-h6">{{addMsg.Id==0?'选择学员':'修改学员'}}</div>
</q-card-section>
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<div class="row wrap">
<q-select filled stack-label clearable use-input option-value="Id" option-label="AccountName"
v-model="addMsg.GuestId" :options="filterstudentList" @filter="filterStudentFn" label="学员编号" ref="GuestId"
:rules="[val => !!val || '请选择学员']" class="col-12 q-pb-lg" emit-value map-options />
<q-btn color="accent" size="sm" @click="showClassStu" class="q-mr-md" label="选择学员" v-if="addMsg.Id==0"   />
<br />
<div class="selectClass" v-if="addMsg.GuestIdList&&addMsg.GuestIdList.length>0">
<span v-for="(item,index) in addMsg.GuestIdList" :key="index" style="padding-left:5px;">{{item.GuestName}}
<i class="iconfont icon-shanchu1" @click="delStudentName(index)" v-if="addMsg.Id==0" ></i>
</span>
</div>
</div>
<div class="row wrap" style="margin-top:10px;">
<div class="col-12 q-pb-lg">
<q-input filled v-model="addMsg.StartTime" mask="####-##-## ##:##:##" ref="StartTime" label="开始时间"
:rules="[val => !!val || '请选择开始时间']">
......@@ -61,6 +105,9 @@
@click="saveActive" />
</q-card-actions>
</q-card>
<classstutreeForm v-if="isShowClassStu" :sendStudent="sendStudent"  @close="closeClassStuForm"
 @success="getClassStuList">
</classstutreeForm>
</q-dialog>
</template>
<script>
......@@ -69,6 +116,7 @@
getActivitySurveyGuestModule,
getAccountStudentList
} from '../../api/studentmsg/index'
import classstutreeForm from '../exam/classstutree-form'
export default {
props: {
saveObj: {
......@@ -80,17 +128,23 @@
default: null
}
},
components: {
classstutreeForm,
},
data() {
return {
persistent: true,
addMsg: {
Id: 0, //新增传0
GuestType: 2, //客户类型(1-小程序用户,2-学员用户)
GuestIdList: [], //学员编号
GuestId: '', //学员编号
StartTime: "", //开始时间
EndTime: "", //结束时间
SurveyId: 0 //意见调查表编号
},
isShowClassStu: false, //是否显示学员弹窗
sendStudent: [], //已选择的学员信息
saveLoading: false,
studentAccountList: [],
filterstudentList: [],
......@@ -101,6 +155,31 @@
this.initObj();
},
methods: {
//选择学员
showClassStu() {
this.isShowClassStu = true;
},
//刷新页面
getClassStuList(array) {
this.addMsg.GuestIdList = [];
if (array && array.length > 0) {
array.forEach(item => {
this.addMsg.GuestIdList.push({
GuestId: item.Account_Id,
GuestName: item.Name,
});
})
}
this.isShowClassStu = false;
},
//删除学员
delStudentName(index) {
this.addMsg.GuestIdList.splice(index, 1);
},
//关闭选择学员弹窗
closeClassStuForm() {
this.isShowClassStu = false;
},
//初始化表单
initObj() {
this.addMsg.SurveyId = this.ID
......@@ -113,12 +192,14 @@
this.addMsg.GuestId = tempData.GuestId;
this.addMsg.StartTime = tempData.StartTime;
this.addMsg.EndTime = tempData.EndTime;
this.addMsg.GuestIdList = tempData.GuestIdList;
})
} else {
this.addMsg.Id = 0;
this.addMsg.GuestId = '';
this.addMsg.StartTime = '';
this.addMsg.EndTime = '';
this.addMsg.GuestIdList = [];
}
},
//意见调查开始时间
......@@ -142,31 +223,28 @@
},
//保存数据
saveActive() {
this.$refs.GuestId.validate();
this.$refs.StartTime.validate();
this.$refs.EndTime.validate();
//&& !this.$refs.StartTime.hasError && !this.$refs.EndTime.hasError
if (!this.$refs.GuestId.hasError ) {
setActivitySurveyGuest(this.addMsg).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.$emit('close');
this.$emit('success');
} else {
this.$q.notify({
type: 'negative',
position: "top",
message: res.Data.message
})
}
})
}
setActivitySurveyGuest(this.addMsg).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.$emit('close');
this.$emit('success');
} else {
this.$q.notify({
type: 'negative',
position: "top",
message: res.Data.message
})
}
})
},
// 学生编号
studentAccount() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment