|
@@ -13,15 +13,15 @@
|
|
|
<van-field label="回访类型" @click="onChange('type')" v-model="form.type" readonly input-align="right" :is-link="id || userId ? false : true" placeholder="请选择" />
|
|
|
<van-field label="回访目的" @click="onChange('purpose')" v-model="form.purpose" readonly input-align="right" :is-link="id || userId ? false : true" placeholder="请选择" />
|
|
|
<van-field v-if="form.type == '小课回访'" label="学员状态" @click="onChange('feedbackType')" v-model="form.feedbackTypeName" readonly input-align="right" :is-link="id ? false : true" placeholder="请选择" />
|
|
|
- <!-- <van-field v-if="form.type == '小课回访' && (form.feedbackType == 'THINKING' || form.feedbackType == 'LOST')" label="反馈详情" @click="onChange('feedbackTypeDesc')" v-model="form.feedbackTypeDescName" readonly input-align="right" :is-link="id ? false : true" placeholder="请选择" /> -->
|
|
|
+ <van-field v-if="form.purpose == '考勤申诉'" label="家长反馈" @click="onChange('feedbackTypeDesc')" v-model="form.feedbackTypeDescName" readonly input-align="right" :is-link="id ? false : true" placeholder="请选择" />
|
|
|
<van-field label="问题状态" @click="onChange('probStatus')" v-model="form.probStatusName" readonly input-align="right" :is-link="id ? false : true" placeholder="请选择" />
|
|
|
</van-cell-group>
|
|
|
|
|
|
- <van-cell-group>
|
|
|
+ <van-cell-group v-if="form.purpose!='考勤申诉'">
|
|
|
<div class="dot"></div>
|
|
|
<van-field label="当前学生情况" class="textarea" :readonly="id ? true : false" v-model="form.overview" rows="2" autosize type="textarea" maxlength="400" placeholder="请输入留言" :show-word-limit="id ? false : true" />
|
|
|
</van-cell-group>
|
|
|
- <van-cell-group>
|
|
|
+ <van-cell-group v-if="!form.feedbackTypeDescName || form.feedbackTypeDescName=='其他'">
|
|
|
<div class="dot"></div>
|
|
|
<van-field label="沟通后家长反馈" class="textarea" :readonly="id ? true : false" v-model="form.feedback" rows="2" autosize type="textarea" maxlength="400" placeholder="请输入留言" :show-word-limit="id ? false : true" />
|
|
|
</van-cell-group>
|
|
@@ -116,6 +116,7 @@ export default {
|
|
|
inside: query.inside || 0,
|
|
|
visitFlag: Number(query.visitFlag) || 0,
|
|
|
uploader: [],
|
|
|
+ isAttError:false,
|
|
|
dataForm: {
|
|
|
// 时间下拉框
|
|
|
status: false,
|
|
@@ -148,7 +149,10 @@ export default {
|
|
|
visiterType: "TEACHER",
|
|
|
feedbackTypeDesc: "",
|
|
|
feedbackType: "",
|
|
|
- probStatus: "",
|
|
|
+ probStatus: 0,
|
|
|
+ probStatusName:'待跟进',
|
|
|
+ objectId:''
|
|
|
+
|
|
|
},
|
|
|
loading: false,
|
|
|
finished: false,
|
|
@@ -179,14 +183,10 @@ export default {
|
|
|
{ name: "暂停", value: "PAUSE" },
|
|
|
{ name: "沉睡", value: "SLEEPY" },
|
|
|
{ name: "流失", value: "LOST" },
|
|
|
+ { name: "假期上课", value: "HOLIDAY_COURSE" },
|
|
|
|
|
|
],
|
|
|
- feedbackTypeDescList: [
|
|
|
- { name: "价格原因", value: "PRICE" },
|
|
|
- { name: "时间原因", value: "TIME" },
|
|
|
- { name: "教学不满意", value: "TEACHING" },
|
|
|
- { name: "其他", value: "OTHER" },
|
|
|
- ],
|
|
|
+ feedbackTypeDescList: [{ name: "生病", value: "SICK" }, { name: "有事", value: "SOMETHING" }, { name: "不想参加", value: "NO_PARTICIPATE" }, { name: "其他", value: "OTHER" }],
|
|
|
probStatusList: [
|
|
|
{ name: "已解决", value: 1 },
|
|
|
{ name: "待跟进", value: 0 },
|
|
@@ -202,6 +202,16 @@ export default {
|
|
|
if (browser().android || browser().iPhone) {
|
|
|
this.statusList.headerStatus = false;
|
|
|
}
|
|
|
+ if(params.isAttError){
|
|
|
+
|
|
|
+ this.isAttError = params.isAttError
|
|
|
+ this.studentName= params.info.username || null;
|
|
|
+ // studentPhone: params.phone || null,
|
|
|
+ this.form.studentId = params.info.userId || null;
|
|
|
+ this.form.type = params.info.type
|
|
|
+ this.form.purpose = params.info.purpose
|
|
|
+ this.form.objectId = params.info.objectId
|
|
|
+ }
|
|
|
document.title = this.name || "新增回访记录";
|
|
|
this.__init();
|
|
|
},
|
|
@@ -246,7 +256,8 @@ export default {
|
|
|
if (form.feedbackTypeDesc) {
|
|
|
form.feedbackTypeDescName = "";
|
|
|
this.feedbackTypeDescList.forEach((item) => {
|
|
|
- if (item.value == form.feedbackType) {
|
|
|
+ if (item.value == form.feedbackTypeDesc) {
|
|
|
+
|
|
|
form.feedbackTypeDescName = item.name;
|
|
|
}
|
|
|
});
|
|
@@ -298,11 +309,17 @@ export default {
|
|
|
this.$toast("请选择回访时间");
|
|
|
return;
|
|
|
} else if (!form.feedbackType && form.type == "小课回访") {
|
|
|
+ this.$toast("请选择学员状态");
|
|
|
+ return;
|
|
|
+ } else if (!form.feedbackTypeDesc && form.purpose == "考勤申诉") {
|
|
|
this.$toast("请选择家长反馈");
|
|
|
return;
|
|
|
- } else if (!(form.probStatus + "")) {
|
|
|
+ } else if (!(form.probStatus+'')) {
|
|
|
this.$toast("请选择问题状态");
|
|
|
return;
|
|
|
+ }else if(!form.feedback&&form.feedbackTypeDesc=='OTHER'){
|
|
|
+ this.$toast("请填写家长反馈");
|
|
|
+ return
|
|
|
}
|
|
|
if (this.clickStatus) {
|
|
|
return;
|
|
@@ -318,6 +335,7 @@ export default {
|
|
|
let params = {
|
|
|
...form,
|
|
|
visitTime,
|
|
|
+
|
|
|
attachments: attachmentsList.join(","),
|
|
|
};
|
|
|
// 待回访时要传的参数
|
|
@@ -332,6 +350,8 @@ export default {
|
|
|
setTimeout(() => {
|
|
|
if (this.inside) {
|
|
|
this.onAppBack();
|
|
|
+ }else if(this.isAttError){
|
|
|
+ this.$router.back()
|
|
|
} else if (this.userId) {
|
|
|
let { visitFlag, ...query } = this.$route.query;
|
|
|
visitFlag = 0;
|
|
@@ -369,9 +389,10 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
onCheckStudent() {
|
|
|
- if (this.id || this.userId || this.studentId || this.beforeId) {
|
|
|
+ if (this.id || this.userId || this.studentId || this.beforeId || this.isAttError) {
|
|
|
return;
|
|
|
}
|
|
|
+
|
|
|
this.statusList.studentStatus = true;
|
|
|
},
|
|
|
onChange(type) {
|
|
@@ -381,11 +402,15 @@ export default {
|
|
|
if ((this.userId || this.beforeId) && type != "probStatus") {
|
|
|
return;
|
|
|
}
|
|
|
+ if(this.isAttError && (type=='type' || type=='purpose')){
|
|
|
+ return
|
|
|
+ }
|
|
|
let visit = this.visit;
|
|
|
let form = this.form;
|
|
|
if (type == "type") {
|
|
|
visit.data = this.typeList;
|
|
|
} else if (type == "purpose") {
|
|
|
+
|
|
|
if (form.type == "其它") {
|
|
|
visit.data = [{ name: "其它" }, { name: "会员续费" }];
|
|
|
} else if (form.type == "课程推荐") {
|
|
@@ -474,8 +499,8 @@ export default {
|
|
|
form.purpose = null;
|
|
|
form.feedbackTypeDescName = null;
|
|
|
form.feedbackTypeDesc = null;
|
|
|
- form.probStatus = null;
|
|
|
- form.probStatusName = null;
|
|
|
+ // form.probStatus = 0;
|
|
|
+ // form.probStatusName = null;
|
|
|
form.feedbackTypeDescName = null;
|
|
|
form.feedbackTypeDesc = null;
|
|
|
} else if (visit.type == "purpose") {
|
|
@@ -486,6 +511,7 @@ export default {
|
|
|
} else if (visit.type == "feedbackTypeDesc") {
|
|
|
form.feedbackTypeDescName = value.name;
|
|
|
form.feedbackTypeDesc = value.value;
|
|
|
+ form.feedback = ''
|
|
|
} else if (visit.type == "probStatus") {
|
|
|
form.probStatus = value.value;
|
|
|
form.probStatusName = value.name;
|