05fe6c4e by 杨炀

Merge commit '98abe1b8' into dev

# Conflicts:
#	src/viewsPc/booking/pay.vue
#	src/viewsPc/match/pay.vue
#	src/viewsPc/seat/api/index.js
#	vite.config.js
2 parents c3fb61cf 98abe1b8
...@@ -208,6 +208,7 @@ export function submitCptInvoice(form) { ...@@ -208,6 +208,7 @@ export function submitCptInvoice(form) {
208 data: form 208 data: form
209 }) 209 })
210 } 210 }
211
211 export function editInvoice(form) { 212 export function editInvoice(form) {
212 return request({ 213 return request({
213 url: `/ota/invoice`, 214 url: `/ota/invoice`,
...@@ -215,6 +216,14 @@ export function editInvoice(form) { ...@@ -215,6 +216,14 @@ export function editInvoice(form) {
215 data: form 216 data: form
216 }) 217 })
217 } 218 }
219 export function editInvoiceMatch(form) {
220 return request({
221 url: `/cpt/invoice`,
222 method: 'put',
223 data: form
224 })
225 }
226
218 export function editCptInvoice(form) { 227 export function editCptInvoice(form) {
219 return request({ 228 return request({
220 url: `/cpt/invoice`, 229 url: `/cpt/invoice`,
...@@ -378,6 +387,13 @@ export function getInvoiceDetail(invoiceId) { ...@@ -378,6 +387,13 @@ export function getInvoiceDetail(invoiceId) {
378 method: 'get' 387 method: 'get'
379 }) 388 })
380 } 389 }
390 export function getInvoiceDetailMatch(invoiceId) {
391 return request({
392 url: `/cpt/invoice/${invoiceId}`,
393 method: 'get'
394 })
395 }
396
381 export function getReceipt(query) { 397 export function getReceipt(query) {
382 // type 1是下载 2是发送到邮箱 398 // type 1是下载 2是发送到邮箱
383 return request({ 399 return request({
......
...@@ -9,12 +9,13 @@ ...@@ -9,12 +9,13 @@
9 <el-col :span="24"> 9 <el-col :span="24">
10 <!--已选订单--> 10 <!--已选订单-->
11 <div class="border-info" v-for="b in list" :key="b.id"> 11 <div class="border-info" v-for="b in list" :key="b.id">
12 <label class="blueTag" v-if="b.orderType == 0"> {{ language==0?'酒店订单':'HOTEL' }}</label> 12 <label class="blueTag" v-if="orderType == 0"> {{ language==0?'酒店订单':'HOTEL' }}</label>
13 <label class="orangeTag" v-if="b.orderType == 1"> {{ language==0?'车辆订单':'TRANSPORTATION' }}</label> 13 <label class="orangeTag" v-if="b.orderType == 1"> {{ language==0?'车辆订单':'TRANSPORTATION' }}</label>
14 <label class="purpleTag" v-if="b.orderType == 2"> {{ language==0?'餐饮订单':'DINING' }}</label> 14 <label class="purpleTag" v-if="b.orderType == 2"> {{ language==0?'餐饮订单':'DINING' }}</label>
15 <label class="pinkTag" v-if="b.orderType == 3"> {{ language==0?'化妆订单':'MakeUp' }}</label> 15 <label class="pinkTag" v-if="b.orderType == 3"> {{ language==0?'化妆订单':'MakeUp' }}</label>
16 <label class="yellowTag" v-if="b.orderType == 4"> {{ language==0?'拍摄订单':'Shooting'}}</label> 16 <label class="yellowTag" v-if="b.orderType == 4"> {{ language==0?'拍摄订单':'Shooting'}}</label>
17 <label class="bg-primary" v-if="!b.orderType"> {{ language==0?'赛事报名':'REGISTRATION' }}</label> 17 <label class="yellowTag" v-if="orderType == 6"> {{ language==0?'票务':'Ticket'}}</label>
18 <label class="bg-primary" v-if="orderType==5"> {{ language==0?'赛事报名':'REGISTRATION' }}</label>
18 19
19 <h3 v-if="b.name">{{ b.name }}</h3> 20 <h3 v-if="b.name">{{ b.name }}</h3>
20 <h3 v-if="b.cptName">{{ b.cptName }}</h3> 21 <h3 v-if="b.cptName">{{ b.cptName }}</h3>
...@@ -61,7 +62,7 @@ ...@@ -61,7 +62,7 @@
61 <div class="border-rr mt20 pd20"> 62 <div class="border-rr mt20 pd20">
62 <el-form class="mw500" :model="form" :label-width="language == 0 ?'100':'150'" :rules="rules" ref="formRef"> 63 <el-form class="mw500" :model="form" :label-width="language == 0 ?'100':'150'" :rules="rules" ref="formRef">
63 <el-form-item :label="language == 0 ?'开票金额':'Amount'"> 64 <el-form-item :label="language == 0 ?'开票金额':'Amount'">
64 <span class="bigprice">¥{{totalMoney}}</span> 65 <span class="bigprice">{{paymentType==1?'¥':'€'}}{{totalMoney}}</span>
65 </el-form-item> 66 </el-form-item>
66 67
67 <el-form-item :label="language == 0 ?`发票形式`:'Invoice Form'" required prop="invoiceForm"> 68 <el-form-item :label="language == 0 ?`发票形式`:'Invoice Form'" required prop="invoiceForm">
...@@ -71,9 +72,7 @@ ...@@ -71,9 +72,7 @@
71 <!-- <el-radio value="3" v-if="kpType.indexOf('3')!=-1">{{ language == 0 ? '纸质专票' : 'Paper-special-invoice' }}</el-radio>--> 72 <!-- <el-radio value="3" v-if="kpType.indexOf('3')!=-1">{{ language == 0 ? '纸质专票' : 'Paper-special-invoice' }}</el-radio>-->
72 </el-radio-group> 73 </el-radio-group>
73 </el-form-item> 74 </el-form-item>
74 <!-- <el-form-item :label="`邮箱`" v-if="form.invoiceForm=='1'" required prop="address">--> 75
75 <!-- <el-input v-model="form.address"/>-->
76 <!-- </el-form-item>-->
77 <!-- <el-form-item :label="`邮寄地址`" v-else required>--> 76 <!-- <el-form-item :label="`邮寄地址`" v-else required>-->
78 <!-- <el-button plain type="primary" size="small" v-if="addrList.length==0" @click="goEditAddress">--> 77 <!-- <el-button plain type="primary" size="small" v-if="addrList.length==0" @click="goEditAddress">-->
79 <!-- +{{ language==0?'添加地址':'Add' }}--> 78 <!-- +{{ language==0?'添加地址':'Add' }}-->
...@@ -100,6 +99,9 @@ ...@@ -100,6 +99,9 @@
100 <el-form-item :label="language == 0 ?`税号`:'Duty Paragraph'" required v-if="form.invoiceType=='0'" prop="invoiceTfn"> 99 <el-form-item :label="language == 0 ?`税号`:'Duty Paragraph'" required v-if="form.invoiceType=='0'" prop="invoiceTfn">
101 <el-input v-model="form.invoiceTfn"/> 100 <el-input v-model="form.invoiceTfn"/>
102 </el-form-item> 101 </el-form-item>
102 <el-form-item :label="`邮箱`" v-if="form.invoiceForm=='1'" required prop="invoiceEmail">
103 <el-input v-model="form.invoiceEmail"/>
104 </el-form-item>
103 <div v-if="form.invoiceForm=='3'&&form.invoiceType=='0'"> 105 <div v-if="form.invoiceForm=='3'&&form.invoiceType=='0'">
104 <el-form-item :label="`地址`" required prop="invoiceAddress"> 106 <el-form-item :label="`地址`" required prop="invoiceAddress">
105 <el-input v-model="form.invoiceAddress"/> 107 <el-input v-model="form.invoiceAddress"/>
...@@ -151,13 +153,15 @@ import dayjs from 'dayjs' ...@@ -151,13 +153,15 @@ import dayjs from 'dayjs'
151 import {ElMessage,ElMessageBox} from "element-plus"; 153 import {ElMessage,ElMessageBox} from "element-plus";
152 import useUserStore from "@/store/modules/user"; 154 import useUserStore from "@/store/modules/user";
153 import {getCurrentInstance} from "@vue/runtime-core"; 155 import {getCurrentInstance} from "@vue/runtime-core";
156 import {submitTitckInvoice, invoice, TitckUpdateInvoice} from '@/viewsPc/seat/api/index'
154 import { 157 import {
155 addressList, 158 addressList,
156 editInvoice, 159 editInvoice,
160 editInvoiceMatch,
157 submitInvoice, 161 submitInvoice,
158 getInvoiceDetailBills, 162 getInvoiceDetailBills,
159 getInvoiceDetail, 163 getInvoiceDetail,
160 submitCptInvoice, getBaseInfoByActiveId, getLeagueInvoiceDetail, getLeagueInvoiceDetailPC 164 submitCptInvoice, getBaseInfoByActiveId, getLeagueInvoiceDetail, getLeagueInvoiceDetailPC,getInvoiceDetailMatch
161 } from "@/apiPc/booking"; 165 } from "@/apiPc/booking";
162 const {proxy} = getCurrentInstance() 166 const {proxy} = getCurrentInstance()
163 167
...@@ -169,6 +173,8 @@ const form = ref({ ...@@ -169,6 +173,8 @@ const form = ref({
169 invoiceForm: '1', 173 invoiceForm: '1',
170 invoiceType: '0' 174 invoiceType: '0'
171 }) 175 })
176 const orderType=ref(1)
177 const paymentType=ref(1)
172 const list = ref([]) 178 const list = ref([])
173 const addrList = ref([]) 179 const addrList = ref([])
174 const nowAddress = ref({}) 180 const nowAddress = ref({})
...@@ -179,7 +185,7 @@ const rules = ref({ ...@@ -179,7 +185,7 @@ const rules = ref({
179 invoiceType: [ 185 invoiceType: [
180 {required: true, message: language.value==0?'请选择发票类型':'Please select invoice type', trigger: 'change'} 186 {required: true, message: language.value==0?'请选择发票类型':'Please select invoice type', trigger: 'change'}
181 ], 187 ],
182 address: [ 188 invoiceEmail: [
183 {required: true, message: language.value==0?'请输入邮箱':'Please enter email', trigger: 'blur'} 189 {required: true, message: language.value==0?'请输入邮箱':'Please enter email', trigger: 'blur'}
184 ], 190 ],
185 invoiceForm: [ 191 invoiceForm: [
...@@ -207,15 +213,23 @@ const rules = ref({ ...@@ -207,15 +213,23 @@ const rules = ref({
207 const isEdit = ref(false) 213 const isEdit = ref(false)
208 let invoiceId 214 let invoiceId
209 let cptId 215 let cptId
216
217
210 onMounted(() => { 218 onMounted(() => {
219 console.log(route.query)
220 orderType.value=route.query.orderType
221 paymentType.value=route.query.paymentType
211 if(route.query.orders){ 222 if(route.query.orders){
212 let obj = JSON.parse(decodeURIComponent(route.query.orders)) || {} 223 let obj = JSON.parse(decodeURIComponent(route.query.orders)) || {}
213 if(obj.cptId){ 224 if(obj.cptId){
214 cptId = obj.cptId 225 cptId = obj.cptId
215 } 226 }else if(obj.activeId){
216 if(obj.activeId){
217 cptId = obj.activeId 227 cptId = obj.activeId
228 }else{
229 cptId = '1778253367748993026'
218 } 230 }
231
232 console.log(obj)
219 getRemark() 233 getRemark()
220 let arr = [] 234 let arr = []
221 list.value.push(obj) 235 list.value.push(obj)
...@@ -234,6 +248,7 @@ onMounted(() => { ...@@ -234,6 +248,7 @@ onMounted(() => {
234 totalMoney.value = route.query.totalMoney 248 totalMoney.value = route.query.totalMoney
235 form.value.total = totalMoney.value 249 form.value.total = totalMoney.value
236 } 250 }
251
237 // if(route.query.kpType){ 252 // if(route.query.kpType){
238 // kpType.value = route.query.kpType 253 // kpType.value = route.query.kpType
239 // if(kpType.value.indexOf('2')>-1 || kpType.value.indexOf('3')>-1){ 254 // if(kpType.value.indexOf('2')>-1 || kpType.value.indexOf('3')>-1){
...@@ -247,6 +262,8 @@ onMounted(() => { ...@@ -247,6 +262,8 @@ onMounted(() => {
247 invoiceId = route.query.invoiceId 262 invoiceId = route.query.invoiceId
248 getList() 263 getList()
249 } 264 }
265
266
250 if(user.userName.indexOf('@')>-1){ 267 if(user.userName.indexOf('@')>-1){
251 form.value.address = user.userName 268 form.value.address = user.userName
252 } 269 }
...@@ -257,6 +274,7 @@ function getList() { ...@@ -257,6 +274,7 @@ function getList() {
257 getLeagueInvoiceDetailPC(invoiceId).then(res => { 274 getLeagueInvoiceDetailPC(invoiceId).then(res => {
258 // 订单 275 // 订单
259 list.value = res.data; 276 list.value = res.data;
277 console.log(list.value)
260 cptId = res.rows[0].activeId||res.rows[0].cptId 278 cptId = res.rows[0].activeId||res.rows[0].cptId
261 getRemark() 279 getRemark()
262 for (var bill of list.value) { 280 for (var bill of list.value) {
...@@ -275,14 +293,34 @@ function getList() { ...@@ -275,14 +293,34 @@ function getList() {
275 }); 293 });
276 } 294 }
277 295
278 getInvoiceDetail(invoiceId).then(res => { 296 // 回显
279 form.value = res.data; 297 if (orderType.value==6){
280 totalMoney.value = form.value.total 298 invoice(invoiceId).then(res=>{
281 // if (form.value.invoiceForm == '1') { 299 // console.log(res)
282 // email.value = form.value.address 300 form.value = res.data;
283 // } 301 form.value.invoiceForm='1'
284 // getAddrList() 302 totalMoney.value = form.value.total
285 }); 303 })
304 }else if(orderType.value==5){
305 getInvoiceDetailMatch(invoiceId).then(res => {
306 form.value = res.data;
307 totalMoney.value = form.value.total
308 // if (form.value.invoiceForm == '1') {
309 // email.value = form.value.address
310 // }
311 // getAddrList()
312 });
313 }else{
314 getInvoiceDetail(invoiceId).then(res => {
315 form.value = res.data;
316 totalMoney.value = form.value.total
317 // if (form.value.invoiceForm == '1') {
318 // email.value = form.value.address
319 // }
320 // getAddrList()
321 });
322 }
323
286 } 324 }
287 325
288 function goEditAddress(id) { 326 function goEditAddress(id) {
...@@ -324,6 +362,7 @@ function submit() { ...@@ -324,6 +362,7 @@ function submit() {
324 form.value.activeId = cptId 362 form.value.activeId = cptId
325 form.value.total = totalMoney.value 363 form.value.total = totalMoney.value
326 form.value.version = 2 364 form.value.version = 2
365 form.value.invoicePhone=paymentType.value
327 if (isEdit.value) { 366 if (isEdit.value) {
328 update() 367 update()
329 } else { 368 } else {
...@@ -335,19 +374,35 @@ function submit() { ...@@ -335,19 +374,35 @@ function submit() {
335 } 374 }
336 375
337 function update() { 376 function update() {
338 editInvoice(form.value).then(res=>{ 377 if (orderType.value==6){
339 //返回列表 378 TitckUpdateInvoice(form.value).then(res=>{
340 backList() 379 //返回列表
341 }) 380 backList()
381 })
382 }else if(orderType.value==5){
383 editInvoiceMatch(form.value).then(res=>{
384 //返回列表
385 backList()
386 })
387 }else{
388 editInvoice(form.value).then(res=>{
389 //返回列表
390 backList()
391 })
392 }
393
342 } 394 }
343 function add() { 395 function add() {
344 if(list.value[0].orderType||list.value[0].orderType==0){ 396 if(orderType.value==6){
397 submitTitckInvoice(form.value).then((res)=>{
398 backList()
399 })
400 }else if(list.value[0].orderType||list.value[0].orderType==0){
345 submitInvoice(form.value).then(res=>{ 401 submitInvoice(form.value).then(res=>{
346 //返回列表 402 //返回列表
347 backList() 403 backList()
348 }) 404 })
349 } else { 405 } else {
350 console.log(list.value[0].orderType,'2')
351 submitCptInvoice(form.value).then(res=>{ 406 submitCptInvoice(form.value).then(res=>{
352 //返回列表 407 //返回列表
353 backList() 408 backList()
......
...@@ -61,17 +61,7 @@ ...@@ -61,17 +61,7 @@
61 <span v-if="form.invoiceForm=='2'">纸质普票</span> 61 <span v-if="form.invoiceForm=='2'">纸质普票</span>
62 <span v-if="form.invoiceForm=='3'">纸质专票</span> 62 <span v-if="form.invoiceForm=='3'">纸质专票</span>
63 </el-form-item> 63 </el-form-item>
64 <el-form-item :label="`邮箱`" v-if="form.invoiceForm=='1'" required prop="address"> 64
65 {{form.address}}
66 </el-form-item>
67 <el-form-item :label="`邮寄地址`" v-else required>
68 <div class="flexCenter">
69 <div>
70 <div class="bigSize">{{nowAddress.contact}} {{nowAddress.phone}}</div>
71 <div class="smallSize">{{nowAddress.addName}}</div>
72 </div>
73 </div>
74 </el-form-item>
75 <el-form-item :label="`发票类型`" required prop="invoiceType"> 65 <el-form-item :label="`发票类型`" required prop="invoiceType">
76 <span v-show="form.invoiceType=='0'"> 企业</span> 66 <span v-show="form.invoiceType=='0'"> 企业</span>
77 <span v-show="form.invoiceType=='1'"> 个人非企业</span> 67 <span v-show="form.invoiceType=='1'"> 个人非企业</span>
...@@ -82,6 +72,17 @@ ...@@ -82,6 +72,17 @@
82 <el-form-item :label="`税号`" required v-if="form.invoiceType=='0'" prop="invoiceTfn"> 72 <el-form-item :label="`税号`" required v-if="form.invoiceType=='0'" prop="invoiceTfn">
83 {{form.invoiceTfn}} 73 {{form.invoiceTfn}}
84 </el-form-item> 74 </el-form-item>
75 <el-form-item :label="`邮箱`" v-if="form.invoiceForm=='1'" required prop="invoiceEmail">
76 {{form.invoiceEmail}}
77 </el-form-item>
78 <el-form-item :label="`邮寄地址`" v-else required>
79 <div class="flexCenter">
80 <div>
81 <div class="bigSize">{{nowAddress.contact}} {{nowAddress.phone}}</div>
82 <div class="smallSize">{{nowAddress.addName}}</div>
83 </div>
84 </div>
85 </el-form-item>
85 <div v-if="form.invoiceForm=='3'&&form.invoiceType=='0'"> 86 <div v-if="form.invoiceForm=='3'&&form.invoiceType=='0'">
86 <el-form-item :label="`地址`" required prop="invoiceAddress"> 87 <el-form-item :label="`地址`" required prop="invoiceAddress">
87 {{form.invoiceAddress}} 88 {{form.invoiceAddress}}
...@@ -119,7 +120,9 @@ import dayjs from 'dayjs' ...@@ -119,7 +120,9 @@ import dayjs from 'dayjs'
119 import {ElMessage,ElMessageBox} from "element-plus"; 120 import {ElMessage,ElMessageBox} from "element-plus";
120 import useUserStore from "@/store/modules/user"; 121 import useUserStore from "@/store/modules/user";
121 import {getCurrentInstance} from "@vue/runtime-core"; 122 import {getCurrentInstance} from "@vue/runtime-core";
122 import {addressList, editInvoice, submitInvoice,getInvoiceDetailBills,getInvoiceDetail} from "@/apiPc/booking"; 123 import {addressList, editInvoice, submitInvoice,getInvoiceDetailBills,getInvoiceDetail,getInvoiceDetailMatch} from "@/apiPc/booking";
124 import {submitTitckInvoice, invoice, TitckUpdateInvoice} from '@/viewsPc/seat/api/index'
125
123 const {proxy} = getCurrentInstance() 126 const {proxy} = getCurrentInstance()
124 127
125 const user = useUserStore().user 128 const user = useUserStore().user
...@@ -130,12 +133,13 @@ const list = ref([]) ...@@ -130,12 +133,13 @@ const list = ref([])
130 const addrList = ref([]) 133 const addrList = ref([])
131 const nowAddress = ref({}) 134 const nowAddress = ref({})
132 const totalMoney = ref(0) 135 const totalMoney = ref(0)
136 const orderType=ref(0)
133 const form = ref({}) 137 const form = ref({})
134 const rules = ref({ 138 const rules = ref({
135 invoiceType: [ 139 invoiceType: [
136 {required: true, message: language.value==0?'请选择发票类型':'Please select invoice type', trigger: 'change'} 140 {required: true, message: language.value==0?'请选择发票类型':'Please select invoice type', trigger: 'change'}
137 ], 141 ],
138 address: [ 142 invoiceEmail: [
139 {required: true, message: language.value==0?'请输入邮箱':'Please enter email', trigger: 'blur'} 143 {required: true, message: language.value==0?'请输入邮箱':'Please enter email', trigger: 'blur'}
140 ], 144 ],
141 invoiceForm: [ 145 invoiceForm: [
...@@ -166,6 +170,7 @@ onMounted(() => { ...@@ -166,6 +170,7 @@ onMounted(() => {
166 if(route.query.activeId){ 170 if(route.query.activeId){
167 form.value.activeId = route.query.activeId 171 form.value.activeId = route.query.activeId
168 } 172 }
173 orderType.value=route.query.orderType
169 invoiceId = route.query.invoiceId 174 invoiceId = route.query.invoiceId
170 getList() 175 getList()
171 176
...@@ -178,14 +183,33 @@ function getList() { ...@@ -178,14 +183,33 @@ function getList() {
178 bill.messageObj = JSON.parse(bill.message) 183 bill.messageObj = JSON.parse(bill.message)
179 } 184 }
180 }); 185 });
181 getInvoiceDetail(invoiceId).then(res => { 186 if (orderType.value==6){
182 form.value = res.data; 187 invoice(invoiceId).then(res=>{
183 totalMoney.value = form.value.total 188 // console.log(res)
184 if (form.value.invoiceForm == '1') { 189 form.value = res.data;
185 email.value = form.value.address 190 form.value.invoiceForm=1
186 } 191 totalMoney.value = form.value.total
187 getAddrList() 192 })
188 }); 193 }else if(orderType.value==5){
194 getInvoiceDetailMatch(invoiceId).then(res => {
195 form.value = res.data;
196 totalMoney.value = form.value.total
197 if (form.value.invoiceForm == '1') {
198 email.value = form.value.address
199 }
200 getAddrList()
201 });
202 }else{
203 getInvoiceDetail(invoiceId).then(res => {
204 form.value = res.data;
205 totalMoney.value = form.value.total
206 if (form.value.invoiceForm == '1') {
207 email.value = form.value.address
208 }
209 getAddrList()
210 });
211 }
212
189 } 213 }
190 function getAddrList() { 214 function getAddrList() {
191 addressList(user.userId).then(res=>{ 215 addressList(user.userId).then(res=>{
......
...@@ -156,13 +156,13 @@ const menus = ref([ ...@@ -156,13 +156,13 @@ const menus = ref([
156 picUrl2: '/img/nav_30_dwn.png', 156 picUrl2: '/img/nav_30_dwn.png',
157 isActive: false 157 isActive: false
158 }, 158 },
159 // { 159 {
160 // name: language.value==0?'发票申请':'Electronic invoice', 160 name: language.value==0?'发票申请':'Electronic invoice',
161 // routeName: 'myKP', 161 routeName: 'myKP',
162 // picUrl1: '/img/fp.svg', 162 picUrl1: '/img/fp.svg',
163 // picUrl2: '/img/fp_dwn.svg', 163 picUrl2: '/img/fp_dwn.svg',
164 // isActive: false 164 isActive: false
165 // } 165 }
166 ]) 166 ])
167 const menusEn = ref([ 167 const menusEn = ref([
168 { 168 {
...@@ -251,13 +251,13 @@ const menus3 = ref([ ...@@ -251,13 +251,13 @@ const menus3 = ref([
251 picUrl2: '/img/c7.png', 251 picUrl2: '/img/c7.png',
252 isActive: false 252 isActive: false
253 }, 253 },
254 // { 254 {
255 // name: language.value==0?'发票申请':'Electronic invoice', 255 name: language.value==0?'发票申请':'Electronic invoice',
256 // routeName: 'myKP', 256 routeName: 'myKP',
257 // picUrl1: '/img/fp.svg', 257 picUrl1: '/img/fp.svg',
258 // picUrl2: '/img/fp_dwn.svg', 258 picUrl2: '/img/fp_dwn.svg',
259 // isActive: false 259 isActive: false
260 // } 260 }
261 ]) 261 ])
262 const menus3En = ref([ 262 const menus3En = ref([
263 { 263 {
...@@ -332,13 +332,13 @@ const menusPersonal = ref([ ...@@ -332,13 +332,13 @@ const menusPersonal = ref([
332 picUrl2: '/img/nav_30_dwn.png', 332 picUrl2: '/img/nav_30_dwn.png',
333 isActive: false 333 isActive: false
334 }, 334 },
335 // { 335 {
336 // name: language.value==0?'发票申请':'Electronic invoice', 336 name: language.value==0?'发票申请':'Electronic invoice',
337 // routeName: 'myKP', 337 routeName: 'myKP',
338 // picUrl1: '/img/fp.svg', 338 picUrl1: '/img/fp.svg',
339 // picUrl2: '/img/fp_dwn.svg', 339 picUrl2: '/img/fp_dwn.svg',
340 // isActive: false 340 isActive: false
341 // } 341 }
342 ]) 342 ])
343 const menusPersonalEn = ref([ 343 const menusPersonalEn = ref([
344 { 344 {
...@@ -386,6 +386,7 @@ const menusPersonalEn = ref([ ...@@ -386,6 +386,7 @@ const menusPersonalEn = ref([
386 ]) 386 ])
387 let currMenu 387 let currMenu
388 onMounted(() => { 388 onMounted(() => {
389 console.log(route.query)
389 if(!user.utype){ 390 if(!user.utype){
390 router.push({name: 'home'}) 391 router.push({name: 'home'})
391 return 392 return
......
...@@ -14,12 +14,32 @@ ...@@ -14,12 +14,32 @@
14 <el-tab-pane :label="language==0?'餐饮订单':'DINING'" name="2"></el-tab-pane> 14 <el-tab-pane :label="language==0?'餐饮订单':'DINING'" name="2"></el-tab-pane>
15 <el-tab-pane :label="language==0?'摄像订单':'Shooting'" name="4"></el-tab-pane> 15 <el-tab-pane :label="language==0?'摄像订单':'Shooting'" name="4"></el-tab-pane>
16 </el-tabs> 16 </el-tabs>
17 <div>
18 <el-form label-width="90" size="small">
19 <el-form-item label="开票状态">
20 <el-select
21 v-model="query.invoiced"
22 clearable
23 placeholder="选择发票状态"
24 style="width: 200px"
25 @change="getList"
26 >
27 <el-option label="全部" value="0" />
28 <el-option label="未申请发票" value="1" />
29 <el-option label="已申请发票" value="2" />
30 <el-option label="已开发票" value="3" />
31 </el-select>
32 </el-form-item>
33 </el-form>
34 <div v-show="list&&list.length>0" style="padding-left: 28px;color: red;font-size: 15px">温馨提示:发票申请成功后,将以电子发票的形式发送至您邮箱,请注意查收!</div>
35 </div>
17 <el-empty :image="`/img/order_no.png`" :image-size="228" v-if="list?.length == 0"/> 36 <el-empty :image="`/img/order_no.png`" :image-size="228" v-if="list?.length == 0"/>
18 <div v-if="activeName=='6'" class="pd20"> 37 <div v-if="activeName=='6'" class="pd20">
19 <div v-for="b in list" class="item" v-loading="loading"> 38 <div v-for="b in list" class="item" v-loading="loading">
20 <div class="title"> 39 <div class="title">
21 <label class="orangeTag"> {{ language==0?'票务':'Ticket' }} </label> 40 <label class="orangeTag"> {{ language==0?'票务':'Ticket' }} </label>
22 <span>{{b.orderSn}}</span> 41 <span>{{b.orderSn}}</span>
42 <span class="fr text-warning status">{{b.invoiceStr}}</span>
23 </div> 43 </div>
24 44
25 <el-row class="pd20 mt10" justify="space-between" align="middle"> 45 <el-row class="pd20 mt10" justify="space-between" align="middle">
...@@ -40,13 +60,13 @@ ...@@ -40,13 +60,13 @@
40 <el-col :lg="6" :md="16" :sm="16" :xs="16"> 60 <el-col :lg="6" :md="16" :sm="16" :xs="16">
41 <div class="text-right"> 61 <div class="text-right">
42 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&!b.invoiceId&&b.payType!='2'" @click.stop="gokp(b)"> 62 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&!b.invoiceId&&b.payType!='2'" @click.stop="gokp(b)">
43 {{ language == 0 ? '开发票' : 'Invoice' }} 63 {{ language == 0 ? '申请开票' : 'Invoice' }}
44 </el-button> 64 </el-button>
45 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&b.invoiceId&&b.payType!='2'" @click.stop="editkp(b)"> 65 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&b.invoiceId&&b.payType!='2'" @click.stop="editkp(b)">
46 {{ language == 0 ? '重开发票' : 'Rebilling' }} 66 {{ language == 0 ? '重新申请' : 'Rebilling' }}
47 </el-button> 67 </el-button>
48 <el-button type="primary" plain round v-if="b.invoiceId&&b.paymentType!='3'" 68 <el-button type="primary" plain round v-if="b.invoiceId&&b.paymentType!='3'"
49 @click.stop="showDetail(b)">{{ language == 0 ? '查看发票' : 'Detail' }} 69 @click.stop="showDetail(b)">{{ language == 0 ? '发票信息' : 'Detail' }}
50 </el-button> 70 </el-button>
51 </div> 71 </div>
52 </el-col> 72 </el-col>
...@@ -76,13 +96,13 @@ ...@@ -76,13 +96,13 @@
76 <el-col :lg="6" :md="16" :sm="16" :xs="16"> 96 <el-col :lg="6" :md="16" :sm="16" :xs="16">
77 <div class="text-right"> 97 <div class="text-right">
78 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&!b.invoiceId&&b.languageSource=='100'" @click.stop="gokp(b)"> 98 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&!b.invoiceId&&b.languageSource=='100'" @click.stop="gokp(b)">
79 {{ language == 0 ? '开发票' : 'Invoice' }} 99 {{ language == 0 ? '申请开票' : 'Invoice' }}
80 </el-button> 100 </el-button>
81 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&b.invoiceId&&b.languageSource=='100'" @click.stop="editkp(b)"> 101 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&b.invoiceId&&b.languageSource=='100'" @click.stop="editkp(b)">
82 {{ language == 0 ? '重开发票' : 'Rebilling' }} 102 {{ language == 0 ? '重新申请' : 'Rebilling' }}
83 </el-button> 103 </el-button>
84 <el-button type="primary" plain round v-if="b.invoiceId&&b.languageSource=='100'" 104 <el-button type="primary" plain round v-if="b.invoiceId&&b.languageSource=='100'"
85 @click.stop="showDetail(b)">{{ language == 0 ? '查看发票' : 'Detail' }} 105 @click.stop="showDetail(b)">{{ language == 0 ? '发票信息' : 'Detail' }}
86 </el-button> 106 </el-button>
87 <el-button type="primary" v-if="b.isInvoice == '0'&&!b.invoiceId&&b.languageSource!='100'" plain round @click.stop="goSj(b)"> 107 <el-button type="primary" v-if="b.isInvoice == '0'&&!b.invoiceId&&b.languageSource!='100'" plain round @click.stop="goSj(b)">
88 {{ language == 0 ? '开收据' : 'Receipt' }} 108 {{ language == 0 ? '开收据' : 'Receipt' }}
...@@ -145,13 +165,13 @@ ...@@ -145,13 +165,13 @@
145 <el-col :lg="6" :md="16" :sm="16" :xs="16"> 165 <el-col :lg="6" :md="16" :sm="16" :xs="16">
146 <div class="text-right"> 166 <div class="text-right">
147 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&!b.invoiceId&&b.paymentType!='3'" @click.stop="gokp(b)"> 167 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&!b.invoiceId&&b.paymentType!='3'" @click.stop="gokp(b)">
148 {{ language == 0 ? '开发票' : 'Invoice' }} 168 {{ language == 0 ? '申请开票' : 'Invoice' }}
149 </el-button> 169 </el-button>
150 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&b.invoiceId&&b.paymentType!='3'" @click.stop="editkp(b)"> 170 <el-button type="primary" plain round v-if="b.isInvoice == '0'&&b.invoiceId&&b.paymentType!='3'" @click.stop="editkp(b)">
151 {{ language == 0 ? '重开发票' : 'Rebilling' }} 171 {{ language == 0 ? '重新申请' : 'Rebilling' }}
152 </el-button> 172 </el-button>
153 <el-button type="primary" plain round v-if="b.invoiceId&&b.paymentType!='3'" 173 <el-button type="primary" plain round v-if="b.invoiceId&&b.paymentType!='3'"
154 @click.stop="showDetail(b)">{{ language == 0 ? '查看发票' : 'Detail' }} 174 @click.stop="showDetail(b)">{{ language == 0 ? '发票信息' : 'Detail' }}
155 </el-button> 175 </el-button>
156 <!-- <el-button type="primary" v-if="b.isInvoice == '0'&&!b.invoiceId&&b.paymentType=='3'" plain round @click.stop="goSj(b)">--> 176 <!-- <el-button type="primary" v-if="b.isInvoice == '0'&&!b.invoiceId&&b.paymentType=='3'" plain round @click.stop="goSj(b)">-->
157 <!-- {{ language == 0 ? '开收据' : 'Receipt' }}--> 177 <!-- {{ language == 0 ? '开收据' : 'Receipt' }}-->
...@@ -213,7 +233,8 @@ const user = useUserStore().user || {} ...@@ -213,7 +233,8 @@ const user = useUserStore().user || {}
213 const userStore = useUserStore(); 233 const userStore = useUserStore();
214 const query = ref({ 234 const query = ref({
215 createById: user.userId, 235 createById: user.userId,
216 orderType:'5' 236 orderType:'5',
237 invoiced:'0'
217 }) 238 })
218 const {proxy} = getCurrentInstance() 239 const {proxy} = getCurrentInstance()
219 const list = ref([]) 240 const list = ref([])
...@@ -228,14 +249,13 @@ onMounted(() => { ...@@ -228,14 +249,13 @@ onMounted(() => {
228 const getList = () => { 249 const getList = () => {
229 loading.value = true 250 loading.value = true
230 if(query.value.orderType=='5'){ 251 if(query.value.orderType=='5'){
231 getCanInvoiceBm().then(res=>{ 252 getCanInvoiceBm(query.value).then(res=>{
232 list.value = res.rows 253 list.value = res.rows
233 loading.value = false 254 loading.value = false
234 }) 255 })
235 }else if(query.value.orderType=='6'){ 256 }else if(query.value.orderType=='6'){
236 login() 257 login()
237 }else { 258 }else {
238 query.value.invoiced = 1
239 getCanInvoiceBills(query.value).then(res=>{ 259 getCanInvoiceBills(query.value).then(res=>{
240 list.value = res.rows 260 list.value = res.rows
241 for (let b of list.value) { 261 for (let b of list.value) {
...@@ -247,6 +267,7 @@ const getList = () => { ...@@ -247,6 +267,7 @@ const getList = () => {
247 267
248 } 268 }
249 const login = async () => { 269 const login = async () => {
270 // 票务
250 const userId = userStore.user?.userId; 271 const userId = userStore.user?.userId;
251 const sign = md5(`uid=${userId}lgo1acfkw51jfo`, 32); 272 const sign = md5(`uid=${userId}lgo1acfkw51jfo`, 32);
252 return loginFree({ 273 return loginFree({
...@@ -254,16 +275,18 @@ const login = async () => { ...@@ -254,16 +275,18 @@ const login = async () => {
254 sign, 275 sign,
255 }).then((res) => { 276 }).then((res) => {
256 setToken(res.data.token); 277 setToken(res.data.token);
257 getCanInvoiceTicket().then(res=>{ 278 getCanInvoiceTicket(query.value).then(res=>{
258 loading.value = false 279 loading.value = false
259 list.value = res.data.lists 280 list.value = res.data.lists
260 }) 281 })
261 }) 282 })
262 } 283 }
284
263 const handleClick = (e) => { 285 const handleClick = (e) => {
264 console.log(e.paneName) 286 console.log(e.paneName)
265 query.value.orderType = e.paneName 287 query.value.orderType = e.paneName
266 list.value = [] 288 list.value = []
289 query.value.invoiced='0'
267 getList() 290 getList()
268 } 291 }
269 const gokp = (item) => { 292 const gokp = (item) => {
...@@ -271,7 +294,9 @@ const gokp = (item) => { ...@@ -271,7 +294,9 @@ const gokp = (item) => {
271 path: '/booking/addInvoice', 294 path: '/booking/addInvoice',
272 query: { 295 query: {
273 orders: encodeURIComponent(JSON.stringify(item)), 296 orders: encodeURIComponent(JSON.stringify(item)),
274 totalMoney:item.total||item.totalPayAmount 297 totalMoney:item.total||item.totalPayAmount||item.payAmount,
298 paymentType:query.value.orderType==6||query.value.orderType==5?item.payType:item.paymentType,
299 orderType:query.value.orderType
275 } 300 }
276 }) 301 })
277 } 302 }
...@@ -279,9 +304,11 @@ const editkp = (item) => { ...@@ -279,9 +304,11 @@ const editkp = (item) => {
279 router.push({ 304 router.push({
280 name:'addInvoice', 305 name:'addInvoice',
281 query:{ 306 query:{
282 invoiceId:item.invoiceId, 307 invoiceId:query.value.orderType==6?item.invoiceIdStr :item.invoiceId,
283 type:activeName.value, 308 type:activeName.value,
284 isEdit:true 309 isEdit:true,
310 orderType:query.value.orderType,
311 paymentType:query.value.orderType==6||query.value.orderType==5?item.payType:item.paymentType,
285 } 312 }
286 }) 313 })
287 } 314 }
...@@ -289,8 +316,10 @@ const showDetail = (item) => { ...@@ -289,8 +316,10 @@ const showDetail = (item) => {
289 router.push({ 316 router.push({
290 name:'invoiceDetail', 317 name:'invoiceDetail',
291 query:{ 318 query:{
292 invoiceId:item.invoiceId, 319 invoiceId:query.value.orderType==6?item.invoiceIdStr :item.invoiceId,
293 type:activeName.value, 320 type:activeName.value,
321 orderType:query.value.orderType,
322 paymentType:query.value.orderType==6?item.payType:item.paymentType,
294 } 323 }
295 }) 324 })
296 } 325 }
......
...@@ -152,8 +152,7 @@ function goDetail(b) { ...@@ -152,8 +152,7 @@ function goDetail(b) {
152 name: 'bookingPay', 152 name: 'bookingPay',
153 query: { 153 query: {
154 orderId: b.id, 154 orderId: b.id,
155 orderType: b.orderType, 155 orderType: b.orderType
156 activeId:b.activeId
157 } 156 }
158 }) 157 })
159 } 158 }
......
1 <template> 1 <template>
2 <el-dialog 2 <el-dialog
3 v-model="show" :close-on-click-modal="false" :title="language==0?'背号查询':'Competition Number'" append-to-body 3 v-model="show" :close-on-click-modal="false" :title="language==0?'背号查询':'Back Number'" append-to-body
4 center class="pcloginpop" 4 center class="pcloginpop"
5 close-icon="CircleClose" destroy-on-close 5 close-icon="CircleClose" destroy-on-close
6 width="460px" 6 width="460px"
...@@ -8,8 +8,8 @@ ...@@ -8,8 +8,8 @@
8 <div style="min-height: 300px"> 8 <div style="min-height: 300px">
9 9
10 <div v-if="!type||type==''"> 10 <div v-if="!type||type==''">
11 <div @click="type='0'" class="rItem">{{ language == 0 ? '个人查询':'Personal Query' }}</div> 11 <div @click="type='0'" class="rItem">个人查询</div>
12 <div @click="type='1'" class="rItem">{{ language == 0 ? '团队查询':'Team Query' }}</div> 12 <div @click="type='1'" class="rItem">团队查询</div>
13 </div> 13 </div>
14 14
15 <div v-if="type=='0'"> 15 <div v-if="type=='0'">
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
59 {{language == 0 ? '查询' : 'Search' }} 59 {{language == 0 ? '查询' : 'Search' }}
60 </el-button> 60 </el-button>
61 </div> 61 </div>
62 <span class="tip">*{{ language == 0 ?'模糊查询':'Fuzzy query' }}</span> 62 <span class="tip">*模糊查询</span>
63 63
64 <div v-if="teamlist.length>0" class="temell mt20"> 64 <div v-if="teamlist.length>0" class="temell mt20">
65 <el-collapse v-model="activeNames" accordion> 65 <el-collapse v-model="activeNames" accordion>
......
...@@ -313,7 +313,7 @@ ...@@ -313,7 +313,7 @@
313 </div> 313 </div>
314 <div> 314 <div>
315 <a target="_blank" class="text-primary" 315 <a target="_blank" class="text-primary"
316 href="https://wdsfwuxicenter.com/stage-api/fs/file/WUXI_COMPETITION_TIMETABLE.pdf"> 316 href="https://wdsfwuxicenter.com/stage-api/fs/file/Schedule-WDSF_ASIAN_DANCESPORT_FESTIVAL_2024.WUXI.pdf">
317 <el-icon style="position: relative;top: 2px"> 317 <el-icon style="position: relative;top: 2px">
318 <download/> 318 <download/>
319 </el-icon> 319 </el-icon>
......
...@@ -142,7 +142,7 @@ ...@@ -142,7 +142,7 @@
142 <!-- <a class="zn-btn ml20 btn-q forPc" v-show="matchData?.id=='1778253367748993026'" style="font-size: 15px;margin-right: 20px" @click="popMaster">--> 142 <!-- <a class="zn-btn ml20 btn-q forPc" v-show="matchData?.id=='1778253367748993026'" style="font-size: 15px;margin-right: 20px" @click="popMaster">-->
143 <!-- Junior &Youth Camp REGISTER<el-icon><Edit /></el-icon>--> 143 <!-- Junior &Youth Camp REGISTER<el-icon><Edit /></el-icon>-->
144 <!-- </a>--> 144 <!-- </a>-->
145 <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">Competition Number</a> 145 <a class="zn-btn ml20 btn-q" v-show="matchData?.id=='1778253367748993026'" @click="backNumberSearch">Back Number</a>
146 <!-- <div>--> 146 <!-- <div>-->
147 <!-- <a class=" ding" style="font-size: 15px;margin-top: 10px" @click="handlePickup">Pick-up/drop-off service--> 147 <!-- <a class=" ding" style="font-size: 15px;margin-top: 10px" @click="handlePickup">Pick-up/drop-off service-->
148 <!-- </a>--> 148 <!-- </a>-->
......
...@@ -54,3 +54,13 @@ export const payCallback = (data) => ...@@ -54,3 +54,13 @@ export const payCallback = (data) =>
54 request("POST", `/api/order/palPayTicket/callback/`, data); 54 request("POST", `/api/order/palPayTicket/callback/`, data);
55 export const getCanInvoiceTicket = (data) => 55 export const getCanInvoiceTicket = (data) =>
56 request("GET", `/api/order/getOrderInvoiceList`, data); 56 request("GET", `/api/order/getOrderInvoiceList`, data);
57 // 票务
58 export const submitTitckInvoice = (data) =>
59 request("POST", `/api/invoice/makeInvoice`,data);
60 // 重新开票回显
61 export const invoice = (data) =>
62 request("GET", `/api/invoice/${data}`);
63
64 export const TitckUpdateInvoice = (data) =>
65 request("POST", `/api/invoice/updateInvoice`,data);
66
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!