|
@@ -113,7 +113,7 @@
|
|
|
<img src="../images/checkIcon2.png" alt="" />
|
|
|
</div>
|
|
|
<div class="checkRight">
|
|
|
- <p>云练习</p>
|
|
|
+ <p>学练宝</p>
|
|
|
<p class="checkSubTitle">乐团练习工具</p>
|
|
|
</div>
|
|
|
<div class="checTriangle" v-if="member">
|
|
@@ -203,6 +203,8 @@
|
|
|
<payMember
|
|
|
ref="payMember"
|
|
|
:memberRankList="memberRankList"
|
|
|
+ @create="addPayMember"
|
|
|
+ @remove="removePayMember"
|
|
|
@moneyChange="syncAllMoney"
|
|
|
@priceChange="priceChange"
|
|
|
:rulesForm="rulesForm"
|
|
@@ -444,7 +446,7 @@ import { getSysTenantConfig } from "@/views/courseRulersManager/api";
|
|
|
import { sysConfigList } from "@/api/generalSettings";
|
|
|
import {
|
|
|
queryByMusicGroupOrganizationCourseSettingsId,
|
|
|
- getAllmemberRank,
|
|
|
+ getMemberRankTree,
|
|
|
musicGroupcreateCalender,
|
|
|
musicGroupresetCalender,
|
|
|
getAutoActivationFlag
|
|
@@ -665,7 +667,13 @@ export default {
|
|
|
if (res.data.member) {
|
|
|
// 团练保
|
|
|
this.member = true;
|
|
|
- this.$set(this.form, "memberList", [{ ...res.data.member }]);
|
|
|
+
|
|
|
+ const tempMember = res.data?.member || []
|
|
|
+ tempMember.forEach(m => {
|
|
|
+ m.memberRankSettingId = this.formatParentId(m.memberRankSettingId, this.memberRankList)
|
|
|
+ })
|
|
|
+
|
|
|
+ this.$set(this.form, "memberList", tempMember);
|
|
|
}
|
|
|
if (res.data.repair) {
|
|
|
this.leBao = true;
|
|
@@ -681,11 +689,11 @@ export default {
|
|
|
this.teamCourse = true;
|
|
|
|
|
|
this.$set(this.form, "eclass", res.data?.course);
|
|
|
- console.log(
|
|
|
- [...res.data?.course],
|
|
|
- "res.data?.course",
|
|
|
- this.form
|
|
|
- );
|
|
|
+ // console.log(
|
|
|
+ // [...res.data?.course],
|
|
|
+ // "res.data?.course",
|
|
|
+ // this.form
|
|
|
+ // );
|
|
|
this.initDetail = true;
|
|
|
this.$set(
|
|
|
this.form,
|
|
@@ -788,6 +796,24 @@ export default {
|
|
|
console.log(e);
|
|
|
}
|
|
|
},
|
|
|
+ formatParentId(id, list, ids = []) {
|
|
|
+ for (const item of list) {
|
|
|
+ if (item.children) {
|
|
|
+ const cIds = this.formatParentId(
|
|
|
+ id,
|
|
|
+ item.children,
|
|
|
+ [...ids, item.id]
|
|
|
+ );
|
|
|
+ if (cIds.includes(id)) {
|
|
|
+ return cIds;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (item.id === id) {
|
|
|
+ return [...ids, id];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return ids;
|
|
|
+ },
|
|
|
async getLeBao() {
|
|
|
try {
|
|
|
const res = await getSysTenantConfig({ group: "MUSIC_REPAIR" });
|
|
@@ -804,8 +830,9 @@ export default {
|
|
|
},
|
|
|
async getMemberList() {
|
|
|
try {
|
|
|
- const res = await getAllmemberRank({ isDefault: 0 });
|
|
|
- this.memberRankList = res.data;
|
|
|
+ const musicGroupId = this.$route.query.id;
|
|
|
+ const {data} = await getMemberRankTree({ musicGroupId })
|
|
|
+ this.memberRankList = data || [];
|
|
|
// 获取是否展示会员是否自动生效
|
|
|
const memberRes = await getAutoActivationFlag();
|
|
|
this.showAutoActivationFlag = memberRes.data;
|
|
@@ -872,11 +899,11 @@ export default {
|
|
|
// 格式化课程类型
|
|
|
const organId = this.musicGroup?.organId;
|
|
|
const courseViewType = this.musicGroup?.courseViewType;
|
|
|
- console.log(
|
|
|
- this.musicGroup.courseViewType,
|
|
|
- "musicGroup.courseViewType",
|
|
|
- this.organizationCourseUnitPriceSettings
|
|
|
- );
|
|
|
+ // console.log(
|
|
|
+ // this.musicGroup.courseViewType,
|
|
|
+ // "musicGroup.courseViewType",
|
|
|
+ // this.organizationCourseUnitPriceSettings
|
|
|
+ // );
|
|
|
const _ = {};
|
|
|
const list = (this.organizationCourseUnitPriceSettings || []).filter(
|
|
|
item =>
|
|
@@ -885,7 +912,7 @@ export default {
|
|
|
courseViewType != null &&
|
|
|
courseViewType == item.courseViewType
|
|
|
);
|
|
|
- console.log(list, "list");
|
|
|
+ // console.log(list, "list");
|
|
|
for (const item of list) {
|
|
|
_[item.courseType] = item;
|
|
|
}
|
|
@@ -949,6 +976,17 @@ export default {
|
|
|
addActive() {
|
|
|
this.form.activeList.push({});
|
|
|
},
|
|
|
+ addPayMember() {
|
|
|
+ this.form.memberList.push({
|
|
|
+ period: "",
|
|
|
+ num: "",
|
|
|
+ name: "",
|
|
|
+ actualAmount: "",
|
|
|
+ memberRankSettingId: "",
|
|
|
+ optionalFlag: null,
|
|
|
+ autoActivationFlag: false
|
|
|
+ })
|
|
|
+ },
|
|
|
removeActive(index) {
|
|
|
this.form.activeList[index] = null;
|
|
|
this.$set(
|
|
@@ -962,6 +1000,10 @@ export default {
|
|
|
this.$set(this.form, "eclass", this.form.eclass.filter(item => !!item));
|
|
|
// this.form.eclass = this.form.eclass.filter((item) => !!item);
|
|
|
},
|
|
|
+ removePayMember(index) {
|
|
|
+ this.form.memberList[index] = null;
|
|
|
+ this.$set(this.form, 'memberList', this.form.memberList.filter(item => !!item))
|
|
|
+ },
|
|
|
async onPreview() {
|
|
|
// 开始预览
|
|
|
const musicGroupId = this.$route.query.id;
|
|
@@ -1081,7 +1123,7 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
scrollView(object) {
|
|
|
- console.log(object);
|
|
|
+ // console.log(object);
|
|
|
for (const i in object) {
|
|
|
let dom = this.$refs[i];
|
|
|
// 这里是针对遍历的情况(多个输入框),取值为数组
|
|
@@ -1117,17 +1159,18 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
- let memberObj =
|
|
|
- form.memberList?.length > 0 ? { ...form.memberList[0] } : null;
|
|
|
- // 获取会员名称
|
|
|
- if (memberObj) {
|
|
|
- this.memberRankList.forEach(item => {
|
|
|
- if (item.id == memberObj.memberRankSettingId) {
|
|
|
- memberObj.name = item.name;
|
|
|
+ let memberObj = JSON.parse(JSON.stringify(form.memberList))
|
|
|
+ // // 获取会员名称
|
|
|
+ if (memberObj && memberObj.length > 0) {
|
|
|
+ memberObj.forEach(item => {
|
|
|
+ item.memberRankSettingId = item.memberRankSettingId.length > 0 ? item.memberRankSettingId[item.memberRankSettingId.length - 1] : null
|
|
|
+ const n = this.memberRankList.find(c => c.id = item.memberRankSettingId)
|
|
|
+ if(n) {
|
|
|
+ item.name = n.name;
|
|
|
+ item.intro = n.intro
|
|
|
}
|
|
|
- });
|
|
|
+ })
|
|
|
}
|
|
|
- console.log(memberObj, "memberObj", activeList, form.eclass);
|
|
|
let tempCourseList = form.eclass?.length > 0 ? form.eclass : [];
|
|
|
let courseList = [];
|
|
|
if (tempCourseList.length > 0) {
|
|
@@ -1164,6 +1207,15 @@ export default {
|
|
|
},
|
|
|
fommatDate() {
|
|
|
if (this.$route.query.payUserType == "STUDENT") {
|
|
|
+ const tempMemberList = this.form.memberList || []
|
|
|
+ const calenderMember = []
|
|
|
+ tempMemberList.forEach(item => {
|
|
|
+ const { memberRankSettingId, ...more } = item
|
|
|
+ calenderMember.push({
|
|
|
+ ...more,
|
|
|
+ memberRankSettingId: memberRankSettingId.length > 0 ? memberRankSettingId[memberRankSettingId.length - 1] : null
|
|
|
+ })
|
|
|
+ })
|
|
|
return {
|
|
|
payUserType: this.$route.query.payUserType,
|
|
|
musicGroupOrganizationCourseSettingId:
|
|
@@ -1177,11 +1229,12 @@ export default {
|
|
|
this.form.leBaoList?.length > 0
|
|
|
? { ...this.form.leBaoList[0] }
|
|
|
: null,
|
|
|
- calenderMember:
|
|
|
- this.form.memberList?.length > 0 &&
|
|
|
- this.form.memberList[0]?.memberRankSettingId
|
|
|
- ? { ...this.form.memberList[0] }
|
|
|
- : null,
|
|
|
+ // calenderMember:
|
|
|
+ // this.form.memberList?.length > 0 &&
|
|
|
+ // this.form.memberList[0]?.memberRankSettingId
|
|
|
+ // ? { ...this.form.memberList[0] }
|
|
|
+ // : null,
|
|
|
+ calenderMemberList: calenderMember.length > 0 ? calenderMember : [],
|
|
|
musicGroupPaymentCalenderCourseSettingsList:
|
|
|
this.form.eclass?.length > 0 ? this.form.eclass : null,
|
|
|
musicGroupId: this.$route.query.id,
|
|
@@ -1198,7 +1251,15 @@ export default {
|
|
|
if (this.form.calenderFeeType == "TEACHER") {
|
|
|
calenderFeeJson.teacherFeeList = this.form.teacherFeeList;
|
|
|
}
|
|
|
-
|
|
|
+ const tempMemberList = this.form.memberList || []
|
|
|
+ const calenderMember = []
|
|
|
+ tempMemberList.forEach(item => {
|
|
|
+ const { memberRankSettingId, ...more } = item
|
|
|
+ calenderMember.push({
|
|
|
+ ...more,
|
|
|
+ memberRankSettingId: memberRankSettingId.length > 0 ? memberRankSettingId[memberRankSettingId.length - 1] : null
|
|
|
+ })
|
|
|
+ })
|
|
|
return {
|
|
|
payUserType: this.$route.query.payUserType,
|
|
|
musicGroupOrganizationCourseSettingId:
|
|
@@ -1212,11 +1273,12 @@ export default {
|
|
|
this.form.leBaoList?.length > 0
|
|
|
? { ...this.form.leBaoList[0] }
|
|
|
: null,
|
|
|
- calenderMember:
|
|
|
- this.form.memberList?.length > 0 &&
|
|
|
- this.form.memberList[0]?.memberRankSettingId
|
|
|
- ? { ...this.form.memberList[0] }
|
|
|
- : null,
|
|
|
+ // calenderMember:
|
|
|
+ // this.form.memberList?.length > 0 &&
|
|
|
+ // this.form.memberList[0]?.memberRankSettingId
|
|
|
+ // ? { ...this.form.memberList[0] }
|
|
|
+ // : null,
|
|
|
+ calenderMemberList: calenderMember.length > 0 ? calenderMember : [],
|
|
|
musicGroupPaymentCalenderCourseSettingsList:
|
|
|
this.form.eclass?.length > 0 ? this.form.eclass : null,
|
|
|
musicGroupId: this.$route.query.id,
|
|
@@ -1304,7 +1366,6 @@ export default {
|
|
|
courseCurrentPrice: 0
|
|
|
});
|
|
|
});
|
|
|
- console.log("type", newValue, oldValue);
|
|
|
this.$set(this.form, "teacherFeeList", arr);
|
|
|
}
|
|
|
},
|
|
@@ -1331,7 +1392,7 @@ export default {
|
|
|
// this.$forceUpdate()
|
|
|
},
|
|
|
"form.calenderFeeType"(val, oldValue) {
|
|
|
- console.log(val, oldValue, this.initDetail);
|
|
|
+ // console.log(val, oldValue, this.initDetail);
|
|
|
if (val == "TEACHER" && !this.initDetail) {
|
|
|
let arr = [];
|
|
|
this.form.eclass.forEach(item => {
|
|
@@ -1342,7 +1403,7 @@ export default {
|
|
|
courseCurrentPrice: 0
|
|
|
});
|
|
|
});
|
|
|
- console.log("calenderFeeType", val, oldValue);
|
|
|
+ // console.log("calenderFeeType", val, oldValue);
|
|
|
this.$set(this.form, "teacherFeeList", arr);
|
|
|
}
|
|
|
},
|