|
@@ -231,15 +231,15 @@
|
|
|
<repeat-course-history-drawer ref="repeatCourseHistoryDrawer" />
|
|
<repeat-course-history-drawer ref="repeatCourseHistoryDrawer" />
|
|
|
|
|
|
|
|
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
|
- <el-form ref="form" :model="form" label-width="100px">
|
|
|
|
|
|
|
+ <el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
|
|
<el-form-item label="是否拉黑" prop="manageStatus">
|
|
<el-form-item label="是否拉黑" prop="manageStatus">
|
|
|
- <el-select v-model="form.manageStatus" placeholder="请选择管理状态" clearable size="small">
|
|
|
|
|
|
|
+ <el-select v-model="form.manageStatus" placeholder="请选择管理状态" clearable size="small" @change="handleManageStatusChange">
|
|
|
<el-option label="否" :value="1" />
|
|
<el-option label="否" :value="1" />
|
|
|
<el-option label="是" :value="2" />
|
|
<el-option label="是" :value="2" />
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
- <el-form-item label="拉黑原因" prop="manageRemark">
|
|
|
|
|
- <el-input v-model="form.manageRemark" placeholder="请输入拉黑原因" type="textarea"/>
|
|
|
|
|
|
|
+ <el-form-item :label="manageRemarkLabel" prop="manageRemark" :required="form.manageStatus === 2">
|
|
|
|
|
+ <el-input v-model="form.manageRemark" :placeholder="manageRemarkPlaceholder" type="textarea"/>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-form>
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
<div slot="footer" class="dialog-footer">
|
|
@@ -291,8 +291,30 @@ export default {
|
|
|
open: false,
|
|
open: false,
|
|
|
title: "",
|
|
title: "",
|
|
|
form: {},
|
|
form: {},
|
|
|
|
|
+ rules: {
|
|
|
|
|
+ manageRemark: [
|
|
|
|
|
+ {
|
|
|
|
|
+ validator: (rule, value, callback) => {
|
|
|
|
|
+ if (Number(this.form.manageStatus) === 2 && !value) {
|
|
|
|
|
+ callback(new Error("请输入拉黑原因"));
|
|
|
|
|
+ } else {
|
|
|
|
|
+ callback();
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ trigger: "blur"
|
|
|
|
|
+ }
|
|
|
|
|
+ ]
|
|
|
|
|
+ },
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
|
|
+ computed: {
|
|
|
|
|
+ manageRemarkLabel() {
|
|
|
|
|
+ return Number(this.form.manageStatus) === 2 ? "拉黑原因" : "提示";
|
|
|
|
|
+ },
|
|
|
|
|
+ manageRemarkPlaceholder() {
|
|
|
|
|
+ return Number(this.form.manageStatus) === 2 ? "请输入拉黑原因" : "请输入原因";
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
created() {
|
|
created() {
|
|
|
//用户类别
|
|
//用户类别
|
|
|
this.getDicts("sys_qw_externalContact_type").then(response => {
|
|
this.getDicts("sys_qw_externalContact_type").then(response => {
|
|
@@ -404,6 +426,18 @@ export default {
|
|
|
this.single = selection.length!==1
|
|
this.single = selection.length!==1
|
|
|
this.multiple = !selection.length
|
|
this.multiple = !selection.length
|
|
|
},
|
|
},
|
|
|
|
|
+ handleManageStatusChange() {
|
|
|
|
|
+ this.$nextTick(() => {
|
|
|
|
|
+ if (!this.$refs.form) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (Number(this.form.manageStatus) === 2) {
|
|
|
|
|
+ this.$refs.form.validateField("manageRemark");
|
|
|
|
|
+ } else {
|
|
|
|
|
+ this.$refs.form.clearValidate("manageRemark");
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
cancel() {
|
|
cancel() {
|
|
|
this.open = false;
|
|
this.open = false;
|
|
|
this.reset();
|
|
this.reset();
|