| 
					
				 | 
			
			
				@@ -0,0 +1,835 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <!-- 改签对话框 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-dialog  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    title="订单改签"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    :visible.sync="rebookDialog"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width="900"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    append-to-body  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    class="rebook-dialog" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    :close-on-click-modal="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    :close-on-press-escape="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    :modal="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    :before-close="handleClose" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div class="rebook-box" v-loading="loading"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class="rebook-from"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div class="tip-box"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <p>温馨提示:每张票仅限改签一次,改签成功后原订单费用将原路返回退还给客户,请知悉。</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <el-form :model="rebookForm" ref="rebookForm" label-width="100px" :rules="rules"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item label="选择日期:" prop="performDate"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-date-picker v-model="rebookForm.performDate" type="date" value-format="yyyy-MM-dd" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            placeholder="选择日期" @change="handleDateChange" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item label="选择场次:" prop="performTimeId"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div v-loading="intervalListLoading" element-loading-text="获取场次中..."> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <div class="interval-list"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                <el-button  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                v-for="item in intervalList"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                :key="item.performTimeId" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                :type="rebookForm.performTimeId === item.performTimeId ? 'primary' : ''" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                @click="selectInterval(item)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    {{ item.performInterval }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                </el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-alert 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                v-if="intervalList.length==0" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                title="没有可改签的场次!!!" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                type="error" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                :closable="false" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                :show-icon="false"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            </el-alert> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <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 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> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item label=""> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div style="width: 100%;display: flex;justify-content: center;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-button @click="rebookDialog = false">取 消</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-button type="primary" @click="submitRebook">确认改签</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <!--  支付过程 控制  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div v-if="payStatus" class="increase-viewers-pay-status"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <div class="increase-viewers-pay-status-info" v-if="!loading"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <span style="font-weight: 600;font-size: 20px;">提示</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <span style="padding: 10px 0;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        {{ payStatus==1 ? '生成订单失败!!!' :  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==2 ? '生成订单生成成功,请点击调取扫码盒子' :  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==4 ? '扫码支付失败!!!' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==5 ? '请出示付款码!!!' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==5.5 ? '扫码成功,支付中...' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==5.6 ? '扫码成功,支付中...' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==6 ? '连接扫码器失败!!!' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==7 ? '用户支付失败或未支付,请重新连接支付!!!' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==8 ? '用户支付成功,请点击打印票!!!' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==9 ? '支付超时!!!' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==10 ? '订单已关闭,请重新选择座位,再购买!!!' : 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        payStatus==3 ? '现金支付记录入库失败,请重新提交' : '未知状态' }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <span v-if="payStatus==2">需支付{{ rebookForm.payAmount }}元</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <!-- 重新生成订单 1  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="payStatus==1" style="display: flex;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button @click="payStatus = null" type="success">修改信息</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button @click="orderInfoSubmitFun()" style="margin-left: 20px;" type="primary">重新生成订单</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <!--  生成订单成功 选择支付方式  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!-- 扫码支付 2 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button v-if="payStatus==2" @click="vbar_open(orderId)" type="success">扫码支付</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!-- 扫码支付 4 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button v-if="payStatus==4" @click="vbar_open(orderId)" type="success">重新扫码支付</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!-- 重新支付 3 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button v-if="payStatus==3" @click="gotoCashPayFun(orderId)" type="success">重新提交入库</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!-- 重新支付 6  7 --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button v-if="payStatus==6 || payStatus==7" @click="vbar_open(orderId)" type="success">重新连接扫码支付</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!--   现金支付  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button v-if="payStatus==2" @click="vbar_open(orderId)" type="success">扫码支付</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!--   现金支付  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button v-if="payStatus==2" @click="vbar_open(orderId)" type="success">扫码支付</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <!-- 打印 8  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="payStatus==8"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-select v-model="printListId" placeholder="选择打印机"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            <el-option  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :label="item.deviceName"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :key="item.id"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :value="item.id"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            v-for="(item) in printList"></el-option> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button style="margin-left: 15px" @click="print" type="success">打印门票</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button style="margin-left: 15px" @click="goTicketingCollections" type="success">跳转取票界面</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <!-- 支付超时 9  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="payStatus==9"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!-- <el-button @click="print" type="danger">取消支付</el-button> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button @click="orderInfoSubmitFun()" type="primary">重新扫码</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <!-- 订单被关闭 10  --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="payStatus==10"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <!-- <el-button @click="print" type="danger">取消支付</el-button> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-button @click="handleClose()" type="primary">关闭</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-dialog> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { reSubmitPageList, getDateTimeAll, rebook } from '@/api/windowTicketSales/rebook' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  orderInfoSubmit, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  gotoMicroPay, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  gotoCashPay, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  gotoCorporatePay, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  gotoBalancePay, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  gotoQuotaPay, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  payQuery, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  selectRegion, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  orderInfoCancel, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  factorAuth, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  selectMarketTeamBySourceApi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ } from '@/api/windowTicketSales/ticketingSales' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ import { pageList as getPrintListApi } from "@/api/device/pda"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ import { printApi } from '@/api/windowTicketSales/ticketingCollection' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ import { rebookApi } from '@/api/windowTicketSales/rebook' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ const mathM = require('mathjs') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ const https = require('https'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ const axios = require('axios'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    name: "RebookBox", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 改签对话框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            rebookDialog: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 改签表单 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            rebookForm: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                orderId: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performDate: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performTimeId: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performInterval: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performId: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                auditoriumId: undefined 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            rules: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performDate: [{ required: true, message: '请选择日期', trigger: ['blur','change'] }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performTimeId: [{ required: true, message: '请选择场次', trigger: ['blur','change'] }] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 场次列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            intervalList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            intervalListLoading: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 支付相关 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            payDialog: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            payStatus: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            code: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            websocketData: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            codeTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // 成功对话框 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            successDialog: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            newOrderId: '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            printList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        initData(row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.rebookDialog = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.payStatus = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.rebookForm = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                orderId: row.orderId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performDate: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performTimeId: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performId: row.performId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                auditoriumId: row.auditoriumId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                paymentType: "1", // 支付方式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$nextTick(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$refs.rebookForm.clearValidate() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        handleDialogOpen() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            const today = new Date() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.rebookForm.performDate = this.formatDate(today) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.handleDateChange() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /** 获取场次  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        handleDateChange() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.intervalListLoading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.rebookForm.performTimeId = undefined 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.intervalList = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (!this.rebookForm.performDate) return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            getDateTimeAll({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performDate: this.rebookForm.performDate, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                orderId: this.rebookForm.orderId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                performId: this.rebookForm.performId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                auditoriumId: this.rebookForm.auditoriumId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.intervalList = response.data.list || [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.intervalListLoading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }).catch(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.intervalListLoading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        selectInterval(item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.rebookForm.performTimeId = item.performTimeId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        formatDate(date) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            const year = date.getFullYear() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            const month = String(date.getMonth() + 1).padStart(2, '0') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            const day = String(date.getDate()).padStart(2, '0') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return `${year}-${month}-${day}` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  提交表单 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        submitRebook() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$refs.rebookForm.validate((valid) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (valid) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.orderInfoSubmitFun() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /** 退出窗口 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        handleClose(done) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // if(this.payStatus==8) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //     this.$message.error('请daying'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //     return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$confirm('确认关闭?') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .then(_ => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.orderId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        document.removeEventListener('keydown',this.keydownAdd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.orderInfoCancelFun(true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.dialogVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .catch(_ => {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  取消订单   */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        async orderInfoCancelFun(type){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // let payStatus = this.payStatus 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // this.payStatus = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loadingText = "取消订单中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                orderInfoCancel({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    orderId: this.orderId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }).then((res)=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(res.code==200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if(type){ // 关闭弹窗 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.codeTime) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                clearInterval(this.codeTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            this.orderId = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            this.payStatus = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            this.$emit('clearDialogVisible') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            this.dialogVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            this.payStatus = 9 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }).catch(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('订单关闭失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  生成订单  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        async orderInfoSubmitFun(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.orderId = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loadingText = "生成订单中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await rebookApi({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ...this.rebookForm 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.orderId = res.data.orderId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.ruleForm.paymentType == 2) { // 现金支付 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.gotoCashPayFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }else if(this.ruleForm.paymentType == 3) { // 对公支付 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.gotoCorporatePayFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }else if(this.ruleForm.paymentType == 4){ // 账户余额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.gotoBalancePayFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }else if(this.ruleForm.paymentType == 5){ // 授信余额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.gotoQuotaPayFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        // 扫码支付 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.payStatus = 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('生成订单失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('生成订单失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         /** 调取 订单支付码支付  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         async gotoMicroPayFun(orderId,code){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loadingText = "订单支付中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await gotoMicroPay({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "orderId": orderId, // 订单编号-提交订单返回 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "authCode": code // 微信扫码支付-支付码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTimeNum = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.websocketClear() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTime = setInterval(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.payQueryFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    },1500) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('支付失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('支付失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  对公支付  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        async gotoCorporatePayFun(orderId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loadingText = "订单入库中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await gotoCorporatePay({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "orderId": orderId, // 订单编号-提交订单返回 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "payAmount": this.ruleForm.realPrice 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTimeNum = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTime = setInterval(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.payQueryFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    },1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  授信额度支付  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        async gotoQuotaPayFun(orderId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loadingText = "订单入库中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await gotoQuotaPay({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "orderId": orderId, // 订单编号-提交订单返回 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTimeNum = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTime = setInterval(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.payQueryFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    },1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  余额支付  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        async gotoBalancePayFun(orderId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loadingText = "订单入库中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await gotoBalancePay({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "orderId": orderId, // 订单编号-提交订单返回 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTimeNum = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTime = setInterval(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.payQueryFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    },1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         /**  订单现金支付  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         async gotoCashPayFun(orderId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loadingText = "订单入库中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await gotoCashPay({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "orderId": orderId, // 订单编号-提交订单返回 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    "payAmount": this.ruleForm.realPrice 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTimeNum = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payTime = setInterval(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        this.payQueryFun(this.orderId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    },1000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('订单入库中失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 跳转取票界面 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        goTicketingCollections(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.$router.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                path:"/windowTicketSales/ticketingCollections", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                query:{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    orderId: this.orderId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         /**  查看支付 状态  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         async payQueryFun(orderId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payTimeNum = this.payTimeNum + 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(this.payTimeNum==15){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.orderInfoCancelFun() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(this.ruleForm.paymentType == 2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loadingText = "订单入库中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loadingText = "订单支付中..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await payQuery({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    orderId: orderId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if(res.data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if(res.data.payStatus == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.ruleForm.paymentType == 2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.$message.error('"订单入库中失败"'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                if(res.data.orderStatus == 9 || res.data.orderStatus == 4 || res.data.orderStatus == 5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.$message.error('订单已关闭,请重新选择座位,再购买!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.payStatus = 10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.$message.error('用户未支付!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.payStatus = 7 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }else if(res.data.payStatus == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.ruleForm.paymentType == 2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.$message({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    message: '订单入库成功', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    type: 'success' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                // this.payStatus = 8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                // this.getPrintListApi() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.goTicketingCollections() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.$message({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    message: '用户已支付成功,请打印门票', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    type: 'success' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                // 开始 打印 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                // this.payStatus = 8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                // this.getPrintListApi() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.goTicketingCollections() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }else if(res.data.payStatus == 2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }else if(res.data.payStatus == 3) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.ruleForm.paymentType == 2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.$message.error('"订单入库中失败"'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                if(res.data.orderStatus == 9 || res.data.orderStatus == 4 || res.data.orderStatus == 5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.$message.error('订单已关闭,请重新选择座位,再购买!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.payStatus = 10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.$message.error('用户支付失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.payStatus = 7 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }else if(res.data.payStatus == 4) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.payTime){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                clearInterval(this.payTime) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if(this.ruleForm.paymentType == 2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.$message.error('"订单入库中失败"'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                this.payStatus = 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                if(res.data.orderStatus == 9 || res.data.orderStatus == 4 || res.data.orderStatus == 5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.$message.error('订单已关闭,请重新选择座位,再购买!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.payStatus = 10 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.$message.error('支付退款!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    this.payStatus = 7 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$message.error('支付失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 7 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('支付失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 7 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  连接VBarServer  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        vbar_open() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loadingText = "连接扫码盒子中!!!" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.payStatus =  null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.code = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.websocketClear() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.payStatus = 5 // 连接成功 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            document.addEventListener('keydown',this.keydownAdd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        },   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  连接结果 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        websocket_open_state(message){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log("连接结果 ===== ",message) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.codeTime = setInterval(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.log("检测是否连接") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(this.websocketData.readyState != WebSocket.OPEN) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.payStatus = 6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            },3000) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //document.getElementById('wsocket').value = "已连接"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 拼接字符串 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        keydownAdd(e){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log("e=====",e) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log("this.code=====",this.code) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if( this.payStatus == 5 && e.key != 'Enter') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.code = this.code + e.key 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if( e.key == 'Enter') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                document.removeEventListener('keydown',this.keydownAdd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let codeCopy = this.code 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus == 5.5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.code = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.gotoMicroPayFun(this.orderId,codeCopy) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //接收扫码完整结果处理 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        websocket_decode(code){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log("orderId=========",this.orderId ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log("code=========",code) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(this.orderId && this.payStatus == 5.5 &&  regex.test(code) ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 5.6 // 支付中 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let codeCopy = code.replace("%%%", "").replace("%%%", "") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.gotoMicroPayFun(this.orderId,codeCopy) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }else if(!code){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.payStatus = 5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.code = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /** 关闭通讯 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        websocketClear(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            document.removeEventListener('keydown',this.keydownAdd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  读取身份证 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        readCert(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.idcardLoading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            var result = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let xmlHttp = new XMLHttpRequest(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let Protocol = window.location.protocol.split(':')[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                //获取当前协议,并且分割字符串,得到http或者https 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (Protocol === 'https'){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //创建请求 第一个参数是代表以post方式发送;第二个是请求端口和地址;第三个表示是否异步 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    xmlHttp.open("POST", "http://127.0.0.1:18889/api/readCert?ReadSN=" + 0, false);	  //readCert读卡,生成正反面仿复印件	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //创建请求 第一个参数是代表以post方式发送;第二个是请求端口和地址;第三个表示是否异步 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    xmlHttp.open("POST", "http://127.0.0.1:18889/api/readCert?ReadSN=" + 0, false);	  //readCert读卡,生成正反面仿复印件	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                //发送请求 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                xmlHttp.send(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    result = xmlHttp.responseText; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    xmlHttp.readyState = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.error("e====",e) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let obj = JSON.parse(result) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(obj.resultContent && obj.resultContent.certNumber){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$set(this.tableForm,"idcard",obj.resultContent.certNumber) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$set(this.tableForm,"name",obj.resultContent.partyName) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('读取失败!!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.idcardLoading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            //return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+             console.log(result,obj) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /** 查询打印机列表 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        getPrintListApi() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          getPrintListApi({deviceType:5,pageNum: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          pageSize: 999,}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          .then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.printList = response.data.rows; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }).catch((error)=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log("error===",error) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 打印  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        async print(list = []){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(!this.printListId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$message.error('请选择打印机!!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.loadingText = '打印中...' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.payStatus = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await printApi({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  orderId: this.orderId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  source: 2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  deviceId: this.printListId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.code == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  let url = res.data.linkIp 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  let printInfo = res.data.printInfo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  this.connectPrint(url,printInfo) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  throw new Error(res) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 this.payStatus = 8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                console.error("error=====",error) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+           
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /**  连接打印机  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        connectPrint(url,data){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // 创建忽略 SSL 的 axios 实例 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          const ignoreSSL = axios.create({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            httpsAgent: new https.Agent({   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              rejectUnauthorized: false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            withCredentials: true, // 跨域请求时发送Cookie 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            timeout: 60000, // 请求超时 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            headers: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              "Content-Type": "application/json; charset=UTF-8;" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          ignoreSSL.post(url,  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            { ...data } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ).then(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.dialogVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }).catch(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.payStatus = 8 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // this.dialogVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            // this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // 在 axios 请求时,选择性忽略 SSL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // const agent = new https.Agent({   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   rejectUnauthorized: false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // axios.post( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   url,  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   { httpsAgent: agent,...data } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   ).then(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   this.dialogVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // .catch(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   this.dialogVisible = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          //   this.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          // }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /** 获取授信余额和账户余额  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        async selectMarketTeamBySourceFun(value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            console.log("value===",value) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(!['10','11','13','14','18','19'].includes(value)) return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let res = await selectMarketTeamBySourceApi({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    source: value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.balance = res.data.balance 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(res.data.grantQuota && res.data.grantUsed) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.grantQuota = res.data.grantQuota - res.data.grantUsed 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else if(res.data.grantQuota) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.grantQuota = res.data.grantQuota 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.grantQuota = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } catch (error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.balance = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.grantQuota = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style lang="scss" scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.rebook-dialog ::v-deep .el-dialog__body { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    padding: 0 !important; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.rebook-box { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .rebook-from { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        padding: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.increase-viewers-pay-status { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    z-index: 999; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    background-color: rgba(0,0,0,0.3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    top: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    left: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .increase-viewers-pay-status-info { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        flex-direction: column; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        justify-content: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 |