|
@@ -19,8 +19,16 @@
|
|
|
<p>温馨提示:每张票仅限改签一次,改签成功后原订单费用将原路返回退还给客户,请知悉。</p>
|
|
|
</div>
|
|
|
<el-form :model="rebookForm" ref="rebookForm" label-width="100px" :rules="rules">
|
|
|
-
|
|
|
-
|
|
|
+ <el-form-item label="剧目名称:">
|
|
|
+ <span>{{ rebookForm.performName }}</span>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="票务名称:">
|
|
|
+ <span>{{ rebookForm.goodsName }}</span>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="座位类型:">
|
|
|
+ <span>{{ rebookForm.seatTypeName }}</span>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
<el-form-item label="选择日期:" prop="performDate">
|
|
|
<el-date-picker
|
|
|
v-model="rebookForm.performDate"
|
|
@@ -34,7 +42,7 @@
|
|
|
v-model="rebookForm.performTimeId"
|
|
|
placeholder="选择场次"
|
|
|
style="width: 100%"
|
|
|
- @change="querySeatListFun"
|
|
|
+ @change="selectRegionFun"
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="item in intervalList"
|
|
@@ -47,7 +55,7 @@
|
|
|
<el-form-item label="支付方式 :" prop="paymentType">
|
|
|
<el-radio-group v-model="rebookForm.paymentType">
|
|
|
<el-radio label="1">扫码支付</el-radio>
|
|
|
- <!-- <el-radio label="2">现金支付</el-radio> -->
|
|
|
+ <el-radio label="2">现金支付</el-radio>
|
|
|
<!-- <el-radio v-if="['10','11','13','14','18','19'].includes(ruleForm.source)" label="3">对公支付</el-radio> -->
|
|
|
<!-- <el-radio v-if="['10','11','13','14','18','19'].includes(ruleForm.source)" label="4">账户余额({{ balance }})</el-radio>
|
|
|
<el-radio v-if="['10','11','13','14','18','19'].includes(ruleForm.source)" label="5">授信余额({{ grantQuota }})</el-radio> -->
|
|
@@ -55,7 +63,7 @@
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
- <div class="rebook1_seat">
|
|
|
+ <div class="rebook1_seat" v-loading="seatLoading" :element-loading-text="seatLoadText">
|
|
|
<seatBox
|
|
|
ref="seatBox"
|
|
|
:seatTypeLimit="configStockNumObj"
|
|
@@ -151,7 +159,8 @@ import {
|
|
|
selectRegion,
|
|
|
orderInfoCancel,
|
|
|
factorAuth,
|
|
|
- selectMarketTeamBySourceApi
|
|
|
+ selectMarketTeamBySourceApi,
|
|
|
+ querySeatListNew
|
|
|
} from '@/api/windowTicketSales/ticketingSales'
|
|
|
import { pageList as getPrintListApi } from "@/api/device/pda";
|
|
|
import { printApi } from '@/api/windowTicketSales/ticketingCollection'
|
|
@@ -203,6 +212,9 @@ export default {
|
|
|
configStockNumObj: {},
|
|
|
countBySeatTypList:[],
|
|
|
seatTypeListAll: [],
|
|
|
+
|
|
|
+ seatLoading: false,
|
|
|
+ seatLoadText: '获取座位中...',
|
|
|
setList: [],
|
|
|
}
|
|
|
},
|
|
@@ -214,6 +226,11 @@ export default {
|
|
|
this.rebookDialog = true
|
|
|
this.payStatus = null
|
|
|
this.rebookForm = {
|
|
|
+ performName: row.performName,
|
|
|
+ goodsName: row.goodsName,
|
|
|
+ seatTypeName: row.seatTypeName,
|
|
|
+ seatTypeId: row.seatTypeId,
|
|
|
+ goodsId: row.goodsId,
|
|
|
orderId: row.orderId,
|
|
|
performDate: undefined,
|
|
|
performTimeId: undefined,
|
|
@@ -286,6 +303,7 @@ export default {
|
|
|
document.removeEventListener('keydown',this.keydownAdd);
|
|
|
this.orderInfoCancelFun(true)
|
|
|
}else {
|
|
|
+ this.$refs.seatBox.querySeatListFun(true,[],[],[])
|
|
|
this.rebookDialog = false
|
|
|
}
|
|
|
})
|
|
@@ -834,12 +852,56 @@ export default {
|
|
|
},
|
|
|
|
|
|
|
|
|
+
|
|
|
+ /** 获取票务信息 */
|
|
|
+ async selectRegionFun(){
|
|
|
+ try {
|
|
|
+ this.seatLoading = true
|
|
|
+ this.seatLoadText = "获取座位中..."
|
|
|
+ let res = await selectRegion({
|
|
|
+ "auditoriumId": this.rebookForm.auditoriumId, // 演艺厅ID
|
|
|
+ "goodsId": this.rebookForm.goodsId, // 商品ID
|
|
|
+ "performId": this.rebookForm.performId, // 上一界面节目ID
|
|
|
+ "performTimeId": this.rebookForm.timeId, // 时段ID
|
|
|
+ "retailId": "" // 分销ID
|
|
|
+ })
|
|
|
+ if(res.code == 200) {
|
|
|
+ if(res.data.regionPriceList &&res.data.regionPriceList.length>0){
|
|
|
+ let obj = {}
|
|
|
+ res.data.regionPriceList.forEach((item,index)=>{
|
|
|
+ if(this.rebookForm.seatTypeId == item.seatTypeId) {
|
|
|
+ obj = item
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if(JSON.stringify(obj) != '{}'){
|
|
|
+ this.querySeatListFun()
|
|
|
+ }else {
|
|
|
+ this.$message.error('存在座位未设置价格,请选择其他票!!!');
|
|
|
+ this.seatLoading = false
|
|
|
+ }
|
|
|
+
|
|
|
+ }else {
|
|
|
+ this.$message.error('存在座位未设置价格,请选择其他票!!!');
|
|
|
+ this.seatLoading = false
|
|
|
+ }
|
|
|
+ console.log("res====",res)
|
|
|
+ }else {
|
|
|
+ this.$message.error(res.msg);
|
|
|
+ this.seatLoading = false
|
|
|
+ }
|
|
|
+ } catch (error) {
|
|
|
+ console.error("error=====",error)
|
|
|
+ this.$message.error('价格查询出错');
|
|
|
+ this.seatLoading = false
|
|
|
+ }
|
|
|
+ },
|
|
|
/** 获取座位 */
|
|
|
async querySeatListFun(type){
|
|
|
try {
|
|
|
let res = await querySeatList({
|
|
|
auditoriumId: this.rebookForm.auditoriumId,
|
|
|
timeId: this.rebookForm.performTimeId,
|
|
|
+ goodsId: this.rebookForm.goodsId,
|
|
|
})
|
|
|
if(res.code == 200){
|
|
|
this.setList = res.data;
|
|
@@ -876,8 +938,13 @@ export default {
|
|
|
obj['seatNum_'+item.seatTypeId] = {
|
|
|
stockTotal: item.stock,
|
|
|
stockSelect: item.stock,
|
|
|
- stockYes: 0,
|
|
|
+ stockYes: item.stock,
|
|
|
stockNo: 0,
|
|
|
+ isNoSelect: true,
|
|
|
+ }
|
|
|
+ if(item.seatTypeId == this.rebookForm.seatTypeId){
|
|
|
+ obj['seatNum_'+item.seatTypeId].stockYes = item.stock-1
|
|
|
+ obj['seatNum_'+item.seatTypeId].isNoSelect = false
|
|
|
}
|
|
|
})
|
|
|
this.configStockNumObj = obj
|