|
@@ -21,6 +21,7 @@
|
|
|
:rules="[
|
|
|
{ required: true, message: '请选择缴费时间', trigger: 'blur' },
|
|
|
]"
|
|
|
+ ref="paymentDate"
|
|
|
>
|
|
|
<template slot="label">
|
|
|
<p style="position: relative">
|
|
@@ -58,6 +59,7 @@
|
|
|
:rules="[
|
|
|
{ required: true, message: '请输入备注', trigger: 'blur' },
|
|
|
]"
|
|
|
+ ref="memo"
|
|
|
>
|
|
|
<template slot="label">
|
|
|
<p style="position: relative">
|
|
@@ -316,7 +318,7 @@ export default {
|
|
|
maxYearFee: null,
|
|
|
},
|
|
|
dialogSubjectVisible: false, // 预览
|
|
|
- preViewData: {}
|
|
|
+ preViewData: {},
|
|
|
};
|
|
|
},
|
|
|
mounted() {
|
|
@@ -355,14 +357,14 @@ export default {
|
|
|
this.teamActive = false;
|
|
|
this.leBaoDisabled = true;
|
|
|
this.teamActiveDisabled = true;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
}
|
|
|
await this.getCharges(); // 续费的选择缴费类型
|
|
|
await this.formatCourse(); // 临时加课的类型选择以及价格
|
|
|
await this.getMemberList(); // 获取会员(团练保信息)
|
|
|
await this.getLeBao(); // 获取乐保
|
|
|
await this.getActive(); // 获取活动
|
|
|
- await this.getMemberRules()
|
|
|
+ await this.getMemberRules();
|
|
|
if (this.$route.query.calenderId) {
|
|
|
// 说明是修改 查缴项目详情
|
|
|
getMusicGroupPaymentCalenderDetail({
|
|
@@ -391,7 +393,6 @@ export default {
|
|
|
// 团练保
|
|
|
this.member = true;
|
|
|
this.$set(this.form, "memberList", [{ ...res.data.member }]);
|
|
|
-
|
|
|
}
|
|
|
if (res.data.repair) {
|
|
|
this.leBao = true;
|
|
@@ -450,7 +451,6 @@ export default {
|
|
|
if (itemValue) {
|
|
|
this.rulesForm = itemValue;
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
});
|
|
|
} catch (e) {
|
|
@@ -610,7 +610,7 @@ export default {
|
|
|
// this.form.eclass = this.form.eclass.filter((item) => !!item);
|
|
|
},
|
|
|
submitForm() {
|
|
|
- this.$refs.form.validate(async (isok) => {
|
|
|
+ this.$refs.form.validate(async (isok,obj) => {
|
|
|
if (isok) {
|
|
|
// const preViewData = this.formatPreviewData()
|
|
|
// this.preViewData = preViewData
|
|
@@ -634,19 +634,44 @@ export default {
|
|
|
console.log(e);
|
|
|
}
|
|
|
}
|
|
|
+ } else {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.scrollView(obj);
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ scrollView(object) {
|
|
|
+
|
|
|
+ for (const i in object) {
|
|
|
+ let dom = this.$refs[i];
|
|
|
+ // 这里是针对遍历的情况(多个输入框),取值为数组
|
|
|
+ if (Object.prototype.toString.call(dom) !== "[object Object]") {
|
|
|
+
|
|
|
+ dom = dom[0];
|
|
|
+ }
|
|
|
+
|
|
|
+ // 第一种方法(包含动画效果)
|
|
|
+ dom.$el.scrollIntoView({
|
|
|
+ // 滚动到指定节点
|
|
|
+ // 值有start,center,end,nearest,当前显示在视图区域中间
|
|
|
+ block: "center",
|
|
|
+ // 值有auto、instant,smooth,缓动动画(当前是慢速的)
|
|
|
+ behavior: "smooth",
|
|
|
+ });
|
|
|
+ break; // 跳出循环了
|
|
|
+ }
|
|
|
+ },
|
|
|
|
|
|
formatPreviewData() {
|
|
|
// 格式化预览数据
|
|
|
- const form = this.form
|
|
|
+ const form = this.form;
|
|
|
// 重置小班课数据
|
|
|
- let activeList = form.activeList?.length > 0 ? form.activeList : []
|
|
|
- if(activeList.length > 0) {
|
|
|
- activeList.forEach(active => {
|
|
|
- active.categoryName = active.vipGroupCategoryNames
|
|
|
- })
|
|
|
+ let activeList = form.activeList?.length > 0 ? form.activeList : [];
|
|
|
+ if (activeList.length > 0) {
|
|
|
+ activeList.forEach((active) => {
|
|
|
+ active.categoryName = active.vipGroupCategoryNames;
|
|
|
+ });
|
|
|
}
|
|
|
return {
|
|
|
musicGroup: this.musicGroup,
|
|
@@ -655,7 +680,7 @@ export default {
|
|
|
member: form.memberList?.length > 0 ? { ...form.memberList[0] } : null, // 团练宝
|
|
|
memberPrivilegesItemList: [], // 会员基本内容
|
|
|
repair: form.leBaoList?.length > 0 ? { ...form.leBaoList[0] } : null, // 乐保
|
|
|
- }
|
|
|
+ };
|
|
|
},
|
|
|
fommatDate() {
|
|
|
return {
|
|
@@ -684,18 +709,18 @@ export default {
|
|
|
watch: {
|
|
|
teamCourse(val) {
|
|
|
if (!val) {
|
|
|
- this.$set(this.form, "eclass", [{}]);
|
|
|
+ this.$set(this.form, "eclass", [{}]);
|
|
|
this.$set(this.form, "leixing", "2");
|
|
|
}
|
|
|
},
|
|
|
member(val) {
|
|
|
if (!val) {
|
|
|
- this.$set(this.form, "memberList", [{}]);
|
|
|
+ this.$set(this.form, "memberList", [{}]);
|
|
|
}
|
|
|
},
|
|
|
teamActive(val) {
|
|
|
if (!val) {
|
|
|
- this.$set(this.form, "activeList", [{}]);
|
|
|
+ this.$set(this.form, "activeList", [{}]);
|
|
|
}
|
|
|
},
|
|
|
leBao(val) {
|
|
@@ -706,17 +731,16 @@ export default {
|
|
|
async "form.musicGroupOrganizationCourseSettingId"(val) {
|
|
|
// && !this.rowDetail !this.$route.query.calenderId
|
|
|
|
|
|
- if (val && !this.isSetCourseSettingsId ) {
|
|
|
+ if (val && !this.isSetCourseSettingsId) {
|
|
|
try {
|
|
|
const res = await queryByMusicGroupOrganizationCourseSettingsId({
|
|
|
id: val,
|
|
|
});
|
|
|
- let CourseSettingDetail = res.data.map(course=>{
|
|
|
+ let CourseSettingDetail = res.data.map((course) => {
|
|
|
return {
|
|
|
...course,
|
|
|
-
|
|
|
- }
|
|
|
- })
|
|
|
+ };
|
|
|
+ });
|
|
|
this.$set(this.form, "eclass", res.data);
|
|
|
// this.syncAllMoney();
|
|
|
} catch (error) {}
|