|
@@ -7,7 +7,13 @@
|
|
|
<el-form-item label="原教辅" prop="name">
|
|
|
<span>{{originalAccessoriesGoods}}</span>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="更改声部" prop="name">
|
|
|
+ <el-form-item
|
|
|
+ label="更改声部"
|
|
|
+ prop="subjectId"
|
|
|
+ :rules="[
|
|
|
+ { required: true, message: '请选择更改声部', trigger: 'change' }
|
|
|
+ ]"
|
|
|
+ >
|
|
|
<el-select
|
|
|
style="width: 100%!important"
|
|
|
v-model="form.subjectId"
|
|
@@ -25,7 +31,13 @@
|
|
|
</el-select>
|
|
|
<span v-else>{{detail.subjectName}}</span>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="更改乐器" prop="name">
|
|
|
+ <el-form-item
|
|
|
+ label="更改乐器"
|
|
|
+ prop="musicalGoods"
|
|
|
+ :rules="[
|
|
|
+ { required: true, message: '请选择更改乐器', trigger: 'change' }
|
|
|
+ ]"
|
|
|
+ >
|
|
|
<el-select
|
|
|
style="width: 100%!important"
|
|
|
v-model="form.musicalGoods"
|
|
@@ -121,12 +133,17 @@ const formatAllGoods = (data, kitGroupPurchaseType) => {
|
|
|
for (const item of types[key]) {
|
|
|
if (key === 'INSTRUMENT') {
|
|
|
let json = {}
|
|
|
+ let courseJson = {}
|
|
|
try {
|
|
|
json = JSON.parse(item.kitGroupPurchaseTypeJson)
|
|
|
} catch (error) {}
|
|
|
+ try {
|
|
|
+ courseJson = JSON.parse(item.coursePurchaseTypeJson)
|
|
|
+ } catch (error) {}
|
|
|
const _item = {
|
|
|
...item,
|
|
|
- kitGroupPurchaseTypePrice: json[kitGroupPurchaseType]
|
|
|
+ kitGroupPurchaseTypePrice: json[kitGroupPurchaseType],
|
|
|
+ coursePurchaseTypeJsonTypePrice: courseJson[kitGroupPurchaseType]
|
|
|
}
|
|
|
musicalGoods.push(_item)
|
|
|
musicalGoodsById[item.goodsIdList] = _item
|
|
@@ -177,6 +194,7 @@ export default {
|
|
|
selectAccessories: [],
|
|
|
selectAccessoriesMoney: 0,
|
|
|
kitGroupPurchaseTypePrice: 0,
|
|
|
+ coursePurchaseTypeJsonTypePrice: 0,
|
|
|
form: {
|
|
|
subjectId: '',
|
|
|
accessories: '',
|
|
@@ -219,15 +237,29 @@ export default {
|
|
|
return (data.changeMusicalPrice || 0) + (data.changeAccessoriesPrice || 0) + (data.changeCourseFee || 0) - payed
|
|
|
},
|
|
|
spread() {
|
|
|
- return (
|
|
|
+ const money = (
|
|
|
this.musicalPrice +
|
|
|
this.selectAccessoriesMoney +
|
|
|
this.musicGroupSubjectPlanFee -
|
|
|
this.originalAccessoriesPrice -
|
|
|
this.originalMusicalPrice -
|
|
|
this.originalCourseFee -
|
|
|
+ this.coursePurchaseTypeJsonTypePrice -
|
|
|
this.kitGroupPurchaseTypePrice
|
|
|
)
|
|
|
+ // console.log(
|
|
|
+ // this.item.kitGroupPurchaseType,
|
|
|
+ // '乐器价格', this.musicalPrice,
|
|
|
+ // '已选附件价格', this.selectAccessoriesMoney,
|
|
|
+ // '选择课程费用', this.musicGroupSubjectPlanFee,
|
|
|
+ // '原附件价格', this.originalAccessoriesPrice,
|
|
|
+ // '原乐器价格', this.originalMusicalPrice,
|
|
|
+ // '原课程费用', this.originalCourseFee,
|
|
|
+ // '原课程减免费用', this.coursePurchaseTypeJsonTypePrice,
|
|
|
+ // '乐器减免费用', this.kitGroupPurchaseTypePrice,
|
|
|
+ // '结果价格', money
|
|
|
+ // )
|
|
|
+ return money
|
|
|
}
|
|
|
},
|
|
|
mounted() {
|
|
@@ -283,11 +315,19 @@ export default {
|
|
|
this[key] = item
|
|
|
}
|
|
|
}
|
|
|
+ this.musicalGoodsChange()
|
|
|
},
|
|
|
musicalGoodsChange(val) {
|
|
|
const item = this.musicalGoodsById[val]
|
|
|
- this.musicalPrice = this.numFormat(item.price)
|
|
|
- this.kitGroupPurchaseTypePrice = this.numFormat(item.kitGroupPurchaseTypePrice)
|
|
|
+ if (item) {
|
|
|
+ this.musicalPrice = this.numFormat(item.price)
|
|
|
+ this.kitGroupPurchaseTypePrice = this.numFormat(item.kitGroupPurchaseTypePrice)
|
|
|
+ this.coursePurchaseTypeJsonTypePrice = this.numFormat(item.coursePurchaseTypeJsonTypePrice)
|
|
|
+ } else {
|
|
|
+ this.musicalPrice = 0
|
|
|
+ this.kitGroupPurchaseTypePrice = 0
|
|
|
+ this.coursePurchaseTypeJsonTypePrice = 0
|
|
|
+ }
|
|
|
},
|
|
|
accessoriesChange(ids, money) {
|
|
|
this.selectAccessories = ids
|
|
@@ -301,31 +341,35 @@ export default {
|
|
|
return Math.floor(_num * 100) / 100
|
|
|
},
|
|
|
submit() {
|
|
|
- subjectChangeAdd({
|
|
|
- changeCourseFee: this.numFormat(this.musicGroupSubjectPlanFee),
|
|
|
- changeAccessories: this.selectAccessories.join(','),
|
|
|
- changeAccessoriesPrice: this.numFormat(this.selectAccessoriesMoney),
|
|
|
- changeMusicalPrice: this.numFormat(this.musicalPrice - this.kitGroupPurchaseTypePrice),
|
|
|
- originalCourseFee: this.originalCourseFee,
|
|
|
- originalMusicalPrice: this.originalMusicalPrice,
|
|
|
- originalMusical: this.item.originalMusical,
|
|
|
- originalAccessories: this.item.originalAccessories,
|
|
|
- originalAccessoriesPrice: this.originalAccessoriesPrice,
|
|
|
- cooperationOrganId: this.item.cooperationOrganId,
|
|
|
- kitGroupPurchaseType: this.item.kitGroupPurchaseType,
|
|
|
- musicGroupId: this.musicGroupId,
|
|
|
- studentId: this.detail.studentId,
|
|
|
- changeMusical: this.form.musicalGoods,
|
|
|
- originalCost: this.item.originalCost,
|
|
|
- organId: this.item.organId,
|
|
|
- originalSubjectId: this.detail.actualSubjectId,
|
|
|
- changeSubjectId: this.form.subjectId,
|
|
|
+ this.$refs['form'].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ subjectChangeAdd({
|
|
|
+ changeCourseFee: this.numFormat(this.musicGroupSubjectPlanFee - this.coursePurchaseTypeJsonTypePrice),
|
|
|
+ changeAccessories: this.selectAccessories.join(','),
|
|
|
+ changeAccessoriesPrice: this.numFormat(this.selectAccessoriesMoney),
|
|
|
+ changeMusicalPrice: this.numFormat(this.musicalPrice - this.kitGroupPurchaseTypePrice),
|
|
|
+ originalCourseFee: this.originalCourseFee,
|
|
|
+ originalMusicalPrice: this.originalMusicalPrice,
|
|
|
+ originalMusical: this.item.originalMusical,
|
|
|
+ originalAccessories: this.item.originalAccessories,
|
|
|
+ originalAccessoriesPrice: this.originalAccessoriesPrice,
|
|
|
+ cooperationOrganId: this.item.cooperationOrganId,
|
|
|
+ kitGroupPurchaseType: this.item.kitGroupPurchaseType,
|
|
|
+ musicGroupId: this.musicGroupId,
|
|
|
+ studentId: this.detail.studentId,
|
|
|
+ changeMusical: this.form.musicalGoods,
|
|
|
+ originalCost: this.item.originalCost,
|
|
|
+ organId: this.item.organId,
|
|
|
+ originalSubjectId: this.detail.actualSubjectId,
|
|
|
+ changeSubjectId: this.form.subjectId,
|
|
|
+ })
|
|
|
+ .then(res => {
|
|
|
+ this.$listeners.close()
|
|
|
+ this.$listeners.submited()
|
|
|
+ this.$message.success('提交成功!')
|
|
|
+ })
|
|
|
+ }
|
|
|
})
|
|
|
- .then(res => {
|
|
|
- this.$listeners.close()
|
|
|
- this.$listeners.submited()
|
|
|
- this.$message.success('提交成功!')
|
|
|
- })
|
|
|
},
|
|
|
cancel() {
|
|
|
this.$confirm('是否确认取消订单?', '提示', {
|