24c59e8d by zhangmeng

旅游

1 parent 82d4fb2e
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
3 <el-row> 3 <el-row>
4 <el-col v-for="(d,i) in listData" :key="i" :lg="24" :sm="24"> 4 <el-col v-for="(d,i) in listData" :key="i" :lg="24" :sm="24">
5 <div class="person-item"> 5 <div class="person-item">
6 <img v-if="d.photo" class="photo" :src="fillImgUrl(d.photo)"> 6 <img v-if="d.photo" :src="fillImgUrl(d.photo)" class="photo">
7 <img v-else class="photo" style="object-fit: contain;background: #fff;" src="@/assets/v1/default.png"> 7 <img v-else class="photo" src="@/assets/v1/default.png" style="object-fit: contain;background: #fff;">
8 <div class="info"> 8 <div class="info">
9 <div class="name">{{ d.name }} 9 <div class="name">{{ d.name }}
10 <el-image v-if="d.sex=='0'||d.sex=='1'" :src="d.sex=='0'?male:female" /> 10 <el-image v-if="d.sex=='0'||d.sex=='1'" :src="d.sex=='0'?male:female" />
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
15 <el-form-item label="所属省份:">{{ d.provinceName }}</el-form-item> 15 <el-form-item label="所属省份:">{{ d.provinceName }}</el-form-item>
16 </div> 16 </div>
17 <div> 17 <div>
18 <!-- <el-form-item label="有效期开始:">{{ parseTime(d.createTime, '{y}-{m}-{d}') }}</el-form-item>--> 18 <!-- <el-form-item label="有效期开始:">{{ parseTime(d.createTime, '{y}-{m}-{d}') }}</el-form-item>-->
19 <el-form-item label="有效期结束:">{{ parseTime(d.validityDate, '{y}-{m}-{d}') }}</el-form-item> 19 <el-form-item label="有效期结束:">{{ parseTime(d.validityDate, '{y}-{m}-{d}') }}</el-form-item>
20 </div> 20 </div>
21 <div> 21 <div>
...@@ -64,22 +64,23 @@ const loading = ref(false) ...@@ -64,22 +64,23 @@ const loading = ref(false)
64 function handleQuery() { 64 function handleQuery() {
65 loading.value = true 65 loading.value = true
66 queryParams.pageNum++ 66 queryParams.pageNum++
67 67
68 authentic.query(queryParams).then((res) => { 68 authentic.query(queryParams).then((res) => {
69 _.each(res.data.personalList.rows, (r) => { 69 _.each(res.data.personalList.rows, (r) => {
70 listData.value.push(r) 70 listData.value.push(r)
71 }) 71 })
72 72
73 showMore.value = listData.value.length < res.data.personalList.total 73 showMore.value = listData.value.length < res.data.personalList.total
74 loading.value = false 74 loading.value = false
75 }) 75 })
76 } 76 }
77 77
78 function vipDownLoad(perId) { 78 function vipDownLoad(perId) {
79 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf') 79 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf', {}, 'application/pdf')
80 } 80 }
81 81
82 let queryParams = {} 82 let queryParams = {}
83
83 function init() { 84 function init() {
84 queryParams = { 85 queryParams = {
85 pageNum: 0, 86 pageNum: 0,
...@@ -88,7 +89,7 @@ function init() { ...@@ -88,7 +89,7 @@ function init() {
88 name: props.query.name 89 name: props.query.name
89 } 90 }
90 listData.value = [] 91 listData.value = []
91 92
92 handleQuery() 93 handleQuery()
93 } 94 }
94 95
...@@ -97,7 +98,7 @@ defineExpose({ ...@@ -97,7 +98,7 @@ defineExpose({
97 }) 98 })
98 </script> 99 </script>
99 100
100 <style scoped lang="scss"> 101 <style lang="scss" scoped>
101 .flex { 102 .flex {
102 display: flex; 103 display: flex;
103 justify-content: space-between; 104 justify-content: space-between;
...@@ -110,28 +111,28 @@ defineExpose({ ...@@ -110,28 +111,28 @@ defineExpose({
110 background: #F5F7F9; 111 background: #F5F7F9;
111 border-radius: 2px; 112 border-radius: 2px;
112 padding: 10px 20px; 113 padding: 10px 20px;
113 114
114 .photo { 115 .photo {
115 width: 100px; 116 width: 100px;
116 height: 130px 117 height: 130px
117 } 118 }
118 119
119 .info { 120 .info {
120 margin-left: 20px; 121 margin-left: 20px;
121 width: 90%; 122 width: 90%;
122 123
123 .name { 124 .name {
124 font-size: 24px; 125 font-size: 24px;
125 display: flex; 126 display: flex;
126 align-items: center; 127 align-items: center;
127 margin: 10px 0; 128 margin: 10px 0;
128 } 129 }
129 130
130 .el-form-item--default { 131 .el-form-item--default {
131 margin-bottom: 0; 132 margin-bottom: 0;
132 } 133 }
133 } 134 }
134 135
135 .el-form-item__content { 136 .el-form-item__content {
136 font-size: 18px; 137 font-size: 18px;
137 color: #95A1A6; 138 color: #95A1A6;
...@@ -141,15 +142,15 @@ defineExpose({ ...@@ -141,15 +142,15 @@ defineExpose({
141 @media (max-width: 500px) { 142 @media (max-width: 500px) {
142 .person-item { 143 .person-item {
143 margin: 15px 0; 144 margin: 15px 0;
144 145
145 .photo { 146 .photo {
146 width: 120px; 147 width: 120px;
147 height: 140px; 148 height: 140px;
148 } 149 }
149 150
150 .info { 151 .info {
151 margin-left: 15px; 152 margin-left: 15px;
152 153
153 .name { 154 .name {
154 font-size: 18px 155 font-size: 18px
155 } 156 }
......
...@@ -3,13 +3,13 @@ ...@@ -3,13 +3,13 @@
3 <el-row> 3 <el-row>
4 <el-col v-for="(d,i) in listData" :key="i" :lg="24" :sm="24"> 4 <el-col v-for="(d,i) in listData" :key="i" :lg="24" :sm="24">
5 <div class="person-item"> 5 <div class="person-item">
6 <img v-if="d.photo" class="photo" :src="fillImgUrl(d.photo)"> 6 <img v-if="d.photo" :src="fillImgUrl(d.photo)" class="photo">
7 <img v-else class="photo" style="object-fit: contain;background: #fff;" src="@/assets/v1/default.png"> 7 <img v-else class="photo" src="@/assets/v1/default.png" style="object-fit: contain;background: #fff;">
8 <div class="info"> 8 <div class="info">
9 <div class="name">{{ d.name }} 9 <div class="name">{{ d.name }}
10 <el-image 10 <el-image
11 v-if="d.sex=='0'||d.sex=='1'" style="width: 20px;height: 20px;margin-left: 10px" 11 v-if="d.sex=='0'||d.sex=='1'" :src="d.sex=='0'?male:female"
12 :src="d.sex=='0'?male:female" 12 style="width: 20px;height: 20px;margin-left: 10px"
13 /> 13 />
14 </div> 14 </div>
15 <div class="flex"> 15 <div class="flex">
...@@ -18,12 +18,12 @@ ...@@ -18,12 +18,12 @@
18 <el-form-item label="所属省份:">{{ d.provinceName }}</el-form-item> 18 <el-form-item label="所属省份:">{{ d.provinceName }}</el-form-item>
19 </div> 19 </div>
20 <div> 20 <div>
21 <!-- <el-form-item label="有效期开始:">{{ parseTime(d.createTime, '{y}-{m}-{d}') }}</el-form-item>--> 21 <!-- <el-form-item label="有效期开始:">{{ parseTime(d.createTime, '{y}-{m}-{d}') }}</el-form-item>-->
22 <el-form-item label="有效期结束:">{{ parseTime(d.validityDate, '{y}-{m}-{d}')||'--' }}</el-form-item> 22 <el-form-item label="有效期结束:">{{ parseTime(d.validityDate, '{y}-{m}-{d}') || '--' }}</el-form-item>
23 </div> 23 </div>
24 <div> 24 <div>
25 <el-form-item label="考官类型:">{{ d.examinerTypeStr }}</el-form-item> 25 <el-form-item label="考官类型:">{{ d.examinerTypeStr }}</el-form-item>
26 26
27 </div> 27 </div>
28 <div style="width: 170px"> 28 <div style="width: 170px">
29 <div v-if="d.canDownCert=='1'" class="vipDownLoad" @click="vipDownLoad(d.perId)"> 29 <div v-if="d.canDownCert=='1'" class="vipDownLoad" @click="vipDownLoad(d.perId)">
...@@ -68,22 +68,23 @@ const loading = ref(false) ...@@ -68,22 +68,23 @@ const loading = ref(false)
68 function handleQuery() { 68 function handleQuery() {
69 loading.value = true 69 loading.value = true
70 queryParams.pageNum++ 70 queryParams.pageNum++
71 71
72 authentic.query(queryParams).then((res) => { 72 authentic.query(queryParams).then((res) => {
73 _.each(res.data.personalList.rows, (r) => { 73 _.each(res.data.personalList.rows, (r) => {
74 listData.value.push(r) 74 listData.value.push(r)
75 }) 75 })
76 76
77 showMore.value = listData.value.length < res.data.personalList.total 77 showMore.value = listData.value.length < res.data.personalList.total
78 loading.value = false 78 loading.value = false
79 }) 79 })
80 } 80 }
81 81
82 function vipDownLoad(perId) { 82 function vipDownLoad(perId) {
83 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf') 83 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf', {}, 'application/pdf')
84 } 84 }
85 85
86 let queryParams = {} 86 let queryParams = {}
87
87 function init() { 88 function init() {
88 queryParams = { 89 queryParams = {
89 pageNum: 0, 90 pageNum: 0,
...@@ -92,7 +93,7 @@ function init() { ...@@ -92,7 +93,7 @@ function init() {
92 name: props.query.name 93 name: props.query.name
93 } 94 }
94 listData.value = [] 95 listData.value = []
95 96
96 handleQuery() 97 handleQuery()
97 } 98 }
98 99
...@@ -101,7 +102,7 @@ defineExpose({ ...@@ -101,7 +102,7 @@ defineExpose({
101 }) 102 })
102 </script> 103 </script>
103 104
104 <style scoped lang="scss"> 105 <style lang="scss" scoped>
105 .flex { 106 .flex {
106 display: flex; 107 display: flex;
107 justify-content: space-between; 108 justify-content: space-between;
...@@ -114,28 +115,28 @@ defineExpose({ ...@@ -114,28 +115,28 @@ defineExpose({
114 background: #F5F7F9; 115 background: #F5F7F9;
115 border-radius: 2px; 116 border-radius: 2px;
116 padding: 10px 20px; 117 padding: 10px 20px;
117 118
118 .photo { 119 .photo {
119 width: 100px; 120 width: 100px;
120 height: 130px 121 height: 130px
121 } 122 }
122 123
123 .info { 124 .info {
124 margin-left: 20px; 125 margin-left: 20px;
125 width: 90%; 126 width: 90%;
126 127
127 .name { 128 .name {
128 font-size: 24px; 129 font-size: 24px;
129 display: flex; 130 display: flex;
130 align-items: center; 131 align-items: center;
131 margin: 10px 0; 132 margin: 10px 0;
132 } 133 }
133 134
134 .el-form-item--default { 135 .el-form-item--default {
135 margin-bottom: 0; 136 margin-bottom: 0;
136 } 137 }
137 } 138 }
138 139
139 .el-form-item__content { 140 .el-form-item__content {
140 font-size: 18px; 141 font-size: 18px;
141 color: #95A1A6; 142 color: #95A1A6;
...@@ -145,15 +146,15 @@ defineExpose({ ...@@ -145,15 +146,15 @@ defineExpose({
145 @media (max-width: 500px) { 146 @media (max-width: 500px) {
146 .person-item { 147 .person-item {
147 margin: 15px 0; 148 margin: 15px 0;
148 149
149 .photo { 150 .photo {
150 width: 120px; 151 width: 120px;
151 height: 140px; 152 height: 140px;
152 } 153 }
153 154
154 .info { 155 .info {
155 margin-left: 15px; 156 margin-left: 15px;
156 157
157 .name { 158 .name {
158 font-size: 18px 159 font-size: 18px
159 } 160 }
......
...@@ -117,7 +117,7 @@ function handleQuery() { ...@@ -117,7 +117,7 @@ function handleQuery() {
117 } 117 }
118 118
119 function vipDownLoad(perId) { 119 function vipDownLoad(perId) {
120 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf') 120 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf', {}, 'application/pdf')
121 } 121 }
122 122
123 let queryParams = {} 123 let queryParams = {}
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
3 <el-row> 3 <el-row>
4 <el-col v-for="(d,i) in listData" :key="i" :lg="24" :sm="24"> 4 <el-col v-for="(d,i) in listData" :key="i" :lg="24" :sm="24">
5 <div class="person-item"> 5 <div class="person-item">
6 <img v-if="d.photo" class="photo" :src="fillImgUrl(d.photo)"> 6 <img v-if="d.photo" :src="fillImgUrl(d.photo)" class="photo">
7 <img v-else class="photo" style="object-fit: contain;background: #fff;" src="@/assets/v1/default.png"> 7 <img v-else class="photo" src="@/assets/v1/default.png" style="object-fit: contain;background: #fff;">
8 <div class="info"> 8 <div class="info">
9 <div class="name">{{ d.name }} 9 <div class="name">{{ d.name }}
10 <el-image v-if="d.sex=='0'||d.sex=='1'" :src="d.sex=='0'?male:female" /> 10 <el-image v-if="d.sex=='0'||d.sex=='1'" :src="d.sex=='0'?male:female" />
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
15 <el-form-item label="所属省份:">{{ d.provinceName }}</el-form-item> 15 <el-form-item label="所属省份:">{{ d.provinceName }}</el-form-item>
16 </div> 16 </div>
17 <div> 17 <div>
18 <!-- <el-form-item label="有效期开始:">{{ parseTime(d.createTime, '{y}-{m}-{d}') }}</el-form-item>--> 18 <!-- <el-form-item label="有效期开始:">{{ parseTime(d.createTime, '{y}-{m}-{d}') }}</el-form-item>-->
19 <el-form-item label="有效期结束:">{{ parseTime(d.validityDate, '{y}-{m}-{d}') }}</el-form-item> 19 <el-form-item label="有效期结束:">{{ parseTime(d.validityDate, '{y}-{m}-{d}') }}</el-form-item>
20 </div> 20 </div>
21 <div> 21 <div>
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
26 <i />会员证 26 <i />会员证
27 </div> 27 </div>
28 </div> 28 </div>
29 29
30 </div> 30 </div>
31 </div> 31 </div>
32 </div> 32 </div>
...@@ -65,22 +65,23 @@ const loading = ref(false) ...@@ -65,22 +65,23 @@ const loading = ref(false)
65 function handleQuery() { 65 function handleQuery() {
66 loading.value = true 66 loading.value = true
67 queryParams.pageNum++ 67 queryParams.pageNum++
68 68
69 authentic.query(queryParams).then((res) => { 69 authentic.query(queryParams).then((res) => {
70 _.each(res.data.personalList.rows, (r) => { 70 _.each(res.data.personalList.rows, (r) => {
71 listData.value.push(r) 71 listData.value.push(r)
72 }) 72 })
73 73
74 showMore.value = listData.value.length < res.data.personalList.total 74 showMore.value = listData.value.length < res.data.personalList.total
75 loading.value = false 75 loading.value = false
76 }) 76 })
77 } 77 }
78 78
79 function vipDownLoad(perId) { 79 function vipDownLoad(perId) {
80 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf') 80 proxy.download(`/person/info/downStuCert/${perId}`, {}, '会员证.pdf', {}, 'application/pdf')
81 } 81 }
82 82
83 let queryParams = {} 83 let queryParams = {}
84
84 function init() { 85 function init() {
85 queryParams = { 86 queryParams = {
86 pageNum: 0, 87 pageNum: 0,
...@@ -89,7 +90,7 @@ function init() { ...@@ -89,7 +90,7 @@ function init() {
89 name: props.query.name 90 name: props.query.name
90 } 91 }
91 listData.value = [] 92 listData.value = []
92 93
93 handleQuery() 94 handleQuery()
94 } 95 }
95 96
...@@ -97,33 +98,59 @@ defineExpose({ ...@@ -97,33 +98,59 @@ defineExpose({
97 init 98 init
98 }) 99 })
99 </script> 100 </script>
100 <style scoped lang="scss"> 101 <style lang="scss" scoped>
101 .flex{display: flex;justify-content: space-between;} 102 .flex {
102 .person-item{position:relative; 103 display: flex;
103 display: flex;margin: 30px 0;background: #F5F7F9; 104 justify-content: space-between;
104 border-radius: 2px;padding: 10px 20px; 105 }
105 .photo{width: 100px; height: 130px} 106
106 .info{margin-left: 20px;width: 90%; 107 .person-item {
107 .name{font-size: 24px;display: flex;align-items: center; 108 position: relative;
108 margin: 10px 0;} 109 display: flex;
109 .el-form-item--default{margin-bottom: 0;} 110 margin: 30px 0;
111 background: #F5F7F9;
112 border-radius: 2px;
113 padding: 10px 20px;
114
115 .photo {
116 width: 100px;
117 height: 130px
110 } 118 }
111 .el-form-item__content{ 119
120 .info {
121 margin-left: 20px;
122 width: 90%;
123
124 .name {
125 font-size: 24px;
126 display: flex;
127 align-items: center;
128 margin: 10px 0;
129 }
130
131 .el-form-item--default {
132 margin-bottom: 0;
133 }
134 }
135
136 .el-form-item__content {
112 font-size: 18px; 137 font-size: 18px;
113 color: #95A1A6;} 138 color: #95A1A6;
139 }
114 } 140 }
141
115 @media (max-width: 500px) { 142 @media (max-width: 500px) {
116 .person-item { 143 .person-item {
117 margin: 15px 0; 144 margin: 15px 0;
118 145
119 .photo { 146 .photo {
120 width: 120px; 147 width: 120px;
121 height: 140px; 148 height: 140px;
122 } 149 }
123 150
124 .info { 151 .info {
125 margin-left: 15px; 152 margin-left: 15px;
126 153
127 .name { 154 .name {
128 font-size: 18px 155 font-size: 18px
129 } 156 }
......
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
33 <div class="border-info mt20"> 33 <div class="border-info mt20">
34 <div class="flex aic"> 34 <div class="flex aic">
35 <h3 class="esp">{{ form.checkIn }}</h3> 35 <h3 class="esp">{{ form.checkIn }}</h3>
36 <img class="w40px mlr20 " src="@/assets/booking/wf.png" style="height: 40px;"/> 36 <img class="w40px mlr20 " src="@/assets/booking/wf.png" style="height: 40px;">
37 <h3 class="esp">{{ form.checkOut }}</h3> 37 <h3 class="esp">{{ form.checkOut }}</h3>
38 </div> 38 </div>
39 </div> 39 </div>
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
46 <el-row> 46 <el-row>
47 <el-col :lg="12" :md="12" :sm="12" :xs="24"> 47 <el-col :lg="12" :md="12" :sm="12" :xs="24">
48 <div class="mb10">{{ language == 0 ? '送餐地址' : 'Delivery Address' }}{{ 48 <div class="mb10">{{ language == 0 ? '送餐地址' : 'Delivery Address' }}{{
49 form.address || '-' 49 form.address || '-'
50 }} 50 }}
51 </div> 51 </div>
52 </el-col> 52 </el-col>
53 <el-col :lg="12" :md="12" :sm="12" :xs="24"> 53 <el-col :lg="12" :md="12" :sm="12" :xs="24">
...@@ -67,11 +67,13 @@ ...@@ -67,11 +67,13 @@
67 </el-col> 67 </el-col>
68 <el-col> 68 <el-col>
69 {{ language == 0 ? '套餐' : 'Package' }}{{ formInfo.mealName }} <span 69 {{ language == 0 ? '套餐' : 'Package' }}{{ formInfo.mealName }} <span
70 style="margin-left: 40px">{{ language == 0 ? '价格' : 'Price' }}</span><span 70 style="margin-left: 40px"
71 class="price">{{ language == 0 ? '¥' + formInfo.mealPrice : '€' + formInfo.mealPriceEn }}</span> 71 >{{ language == 0 ? '价格' : 'Price' }}</span><span
72 class="price"
73 >{{ language == 0 ? '¥' + formInfo.mealPrice : '€' + formInfo.mealPriceEn }}</span>
72 <span style="margin-left: 40px">{{ 74 <span style="margin-left: 40px">{{
73 language == 0 ? '工作室电话' : 'Studio phone number' 75 language == 0 ? '工作室电话' : 'Studio phone number'
74 }}{{ formInfo.contact }}</span> 76 }}{{ formInfo.contact }}</span>
75 </el-col> 77 </el-col>
76 <el-col> 78 <el-col>
77 <div class="esp_3 s" @click="handleView()"> 79 <div class="esp_3 s" @click="handleView()">
...@@ -101,8 +103,10 @@ ...@@ -101,8 +103,10 @@
101 </el-col> 103 </el-col>
102 <el-col> 104 <el-col>
103 {{ language == 0 ? '套餐' : 'Package' }}{{ formInfo.photoName }} <span 105 {{ language == 0 ? '套餐' : 'Package' }}{{ formInfo.photoName }} <span
104 style="margin-left: 40px">{{ language == 0 ? '价格' : 'Price' }}</span><span 106 style="margin-left: 40px"
105 class="price">{{ language == 0 ? '¥' + formInfo.photoPrice : '€' + formInfo.photoPriceEn }}</span> 107 >{{ language == 0 ? '价格' : 'Price' }}</span><span
108 class="price"
109 >{{ language == 0 ? '¥' + formInfo.photoPrice : '€' + formInfo.photoPriceEn }}</span>
106 </el-col> 110 </el-col>
107 <el-col> 111 <el-col>
108 {{ language == 0 ? '套餐说明' : 'Package Description' }}{{ formInfo.introduction }} 112 {{ language == 0 ? '套餐说明' : 'Package Description' }}{{ formInfo.introduction }}
...@@ -155,23 +159,23 @@ ...@@ -155,23 +159,23 @@
155 <!-- }}{{ language == 0 ? '元' : 'Euro' }} x 1--> 159 <!-- }}{{ language == 0 ? '元' : 'Euro' }} x 1-->
156 <!-- {{ language == 0 ? '张' : 'Tickets' }}--> 160 <!-- {{ language == 0 ? '张' : 'Tickets' }}-->
157 <!-- </el-col>--> 161 <!-- </el-col>-->
158 162
159 </el-row> 163 </el-row>
160 </div> 164 </div>
161 </div> 165 </div>
162 166
163 <div class="leftboderTT">{{ language == 0 ? '预订信息' : 'Booking information' }}</div> 167 <div class="leftboderTT">{{ language == 0 ? '预订信息' : 'Booking information' }}</div>
164 168
165 <div class="border-info mt20"> 169 <div class="border-info mt20">
166 <el-row v-if="type == 'hotel'"> 170 <el-row v-if="type == 'hotel'">
167 <el-col :lg="8" :md="12" :sm="12" :xs="24"> 171 <el-col :lg="8" :md="12" :sm="12" :xs="24">
168 <div>{{ language == 0 ? '入住人' : 'Check-in Person' }}{{ form.rzUsers }}</div> 172 <div>{{ language == 0 ? '入住人' : 'Check-in Person' }}{{ form.rzUsers }}</div>
169 </el-col> 173 </el-col>
170 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ 174 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{
171 language == 0 ? '联系方式' : 'Contact Information' 175 language == 0 ? '联系方式' : 'Contact Information'
172 }}{{ form.phone }} 176 }}{{ form.phone }}
173 </el-col> 177 </el-col>
174 <el-col :lg="8" :md="12" :sm="12" :xs="24"></el-col> 178 <el-col :lg="8" :md="12" :sm="12" :xs="24" />
175 </el-row> 179 </el-row>
176 <el-row v-if="type == 'car'"> 180 <el-row v-if="type == 'car'">
177 <el-col v-if="form.pickUpBo?.revTime" :lg="12" :md="12" :sm="12" :xs="24"> 181 <el-col v-if="form.pickUpBo?.revTime" :lg="12" :md="12" :sm="12" :xs="24">
...@@ -184,12 +188,12 @@ ...@@ -184,12 +188,12 @@
184 <el-tag class="mr10">{{ car.carSeat }} {{ language == 0 ? '座 ' : 'Sets' }}</el-tag> 188 <el-tag class="mr10">{{ car.carSeat }} {{ language == 0 ? '座 ' : 'Sets' }}</el-tag>
185 <el-tag>{{ car.carColor }}</el-tag> 189 <el-tag>{{ car.carColor }}</el-tag>
186 </div> 190 </div>
187 191
188 <span v-if="car.num > 0"> {{ car.num }}{{ 192 <span v-if="car.num > 0"> {{ car.num }}{{
189 language == 0 ? '辆' : 'Cars' 193 language == 0 ? '辆' : 'Cars'
190 }} * {{ language == 0 ? '¥' : '€' }}{{ car.price }}</span> 194 }} * {{ language == 0 ? '¥' : '€' }}{{ car.price }}</span>
191 </div> 195 </div>
192 196
193 <div>{{ language == 0 ? '人数' : 'People' }} {{ form.pickUpBo.count }}</div> 197 <div>{{ language == 0 ? '人数' : 'People' }} {{ form.pickUpBo.count }}</div>
194 <div>{{ language == 0 ? '航班/火车班次' : 'Flight/Train' }} {{ form.pickUpBo.no }}</div> 198 <div>{{ language == 0 ? '航班/火车班次' : 'Flight/Train' }} {{ form.pickUpBo.no }}</div>
195 <div>{{ language == 0 ? '接机/接站地点' : 'Pick-up/Drop-off Place' }} 199 <div>{{ language == 0 ? '接机/接站地点' : 'Pick-up/Drop-off Place' }}
...@@ -211,10 +215,10 @@ ...@@ -211,10 +215,10 @@
211 <el-tag class="mr10">{{ car.carSeat }} {{ language == 0 ? '座 ' : 'Sets' }}</el-tag> 215 <el-tag class="mr10">{{ car.carSeat }} {{ language == 0 ? '座 ' : 'Sets' }}</el-tag>
212 <el-tag>{{ car.carColor }}</el-tag> 216 <el-tag>{{ car.carColor }}</el-tag>
213 </div> 217 </div>
214 218
215 <span v-if="car.num > 0"> {{ car.num }}{{ 219 <span v-if="car.num > 0"> {{ car.num }}{{
216 language == 0 ? '辆' : 'Cars' 220 language == 0 ? '辆' : 'Cars'
217 }} * {{ language == 0 ? '¥' : '€' }}{{ car.price }}</span> 221 }} * {{ language == 0 ? '¥' : '€' }}{{ car.price }}</span>
218 </div> 222 </div>
219 <div>{{ language == 0 ? '人数' : 'Counts' }}{{ form.dropOffBo.count }}</div> 223 <div>{{ language == 0 ? '人数' : 'Counts' }}{{ form.dropOffBo.count }}</div>
220 <div>{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.dropOffBo.contacts }}</div> 224 <div>{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.dropOffBo.contacts }}</div>
...@@ -234,16 +238,16 @@ ...@@ -234,16 +238,16 @@
234 </el-col> 238 </el-col>
235 <el-col :lg="12" :md="12" :sm="12" :xs="24"> 239 <el-col :lg="12" :md="12" :sm="12" :xs="24">
236 <div class="mb10">{{ 240 <div class="mb10">{{
237 language == 0 ? '订餐周期' : 'Check-in date' 241 language == 0 ? '订餐周期' : 'Check-in date'
238 }}{{ form.extJsonObj?.dcStart || '-' }} ~ {{ form.extJsonObj?.dcEnd || '-' }} 242 }}{{ form.extJsonObj?.dcStart || '-' }} ~ {{ form.extJsonObj?.dcEnd || '-' }}
239 </div> 243 </div>
240 </el-col> 244 </el-col>
241 <el-col :lg="8" :md="12" :sm="12" :xs="24"> 245 <el-col :lg="8" :md="12" :sm="12" :xs="24">
242 <div class="mb10">{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.contacts }}</div> 246 <div class="mb10">{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.contacts }}</div>
243 </el-col> 247 </el-col>
244 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ 248 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{
245 language == 0 ? '联系方式' : 'Contact Phone' 249 language == 0 ? '联系方式' : 'Contact Phone'
246 }}{{ form.phone }} 250 }}{{ form.phone }}
247 </el-col> 251 </el-col>
248 <el-col :span="24">{{ language == 0 ? '备注' : 'Remarks' }}{{ form.remarks || '-' }}</el-col> 252 <el-col :span="24">{{ language == 0 ? '备注' : 'Remarks' }}{{ form.remarks || '-' }}</el-col>
249 </el-row> 253 </el-row>
...@@ -261,7 +265,7 @@ ...@@ -261,7 +265,7 @@
261 <el-col :lg="8" :md="12" :sm="12" :xs="24"> 265 <el-col :lg="8" :md="12" :sm="12" :xs="24">
262 <div class="mb10">{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.contacts }}</div> 266 <div class="mb10">{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.contacts }}</div>
263 </el-col> 267 </el-col>
264 <el-col :lg=12 :md="12" :sm="12" :xs="24"> 268 <el-col :lg="12" :md="12" :sm="12" :xs="24">
265 <div class="mb10"> 269 <div class="mb10">
266 {{ language == 0 ? '联系方式' : 'Contact Phone' }}{{ form.phone }} 270 {{ language == 0 ? '联系方式' : 'Contact Phone' }}{{ form.phone }}
267 </div> 271 </div>
...@@ -291,8 +295,8 @@ ...@@ -291,8 +295,8 @@
291 <div class="mb10">{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.contacts }}</div> 295 <div class="mb10">{{ language == 0 ? '联系人' : 'Contact Person' }}{{ form.contacts }}</div>
292 </el-col> 296 </el-col>
293 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ 297 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{
294 language == 0 ? '联系方式' : 'Contact Phone' 298 language == 0 ? '联系方式' : 'Contact Phone'
295 }}{{ form.phone }} 299 }}{{ form.phone }}
296 </el-col> 300 </el-col>
297 <el-col :span="24">{{ language == 0 ? '备注' : 'Remarks' }}{{ form.remarks }}</el-col> 301 <el-col :span="24">{{ language == 0 ? '备注' : 'Remarks' }}{{ form.remarks }}</el-col>
298 </el-row> 302 </el-row>
...@@ -330,13 +334,13 @@ ...@@ -330,13 +334,13 @@
330 <el-row style="width: 100%"> 334 <el-row style="width: 100%">
331 <el-col :lg="8" :md="12" :sm="12" :xs="24"> 335 <el-col :lg="8" :md="12" :sm="12" :xs="24">
332 <div>{{ 336 <div>{{
333 language == 0 ? '购票数量' : 'Number of tickets purchased' 337 language == 0 ? '购票数量' : 'Number of tickets purchased'
334 }}{{ form.num }}{{ language == 0 ? '张' : 'Tickets' }} 338 }}{{ form.num }}{{ language == 0 ? '张' : 'Tickets' }}
335 </div> 339 </div>
336 </el-col> 340 </el-col>
337 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{ 341 <el-col :lg="8" :md="12" :sm="12" :xs="24">{{
338 language == 0 ? '联系方式' : 'Contact Information' 342 language == 0 ? '联系方式' : 'Contact Information'
339 }}{{ form.phone }} 343 }}{{ form.phone }}
340 </el-col> 344 </el-col>
341 <el-col :lg="8" :md="12" :sm="12" :xs="24"> 345 <el-col :lg="8" :md="12" :sm="12" :xs="24">
342 {{ language == 0 ? '共计' : 'total' }}:{{ 346 {{ language == 0 ? '共计' : 'total' }}:{{
...@@ -344,11 +348,11 @@ ...@@ -344,11 +348,11 @@
344 }}{{ Number(totalFee).toFixed(2) }} 348 }}{{ Number(totalFee).toFixed(2) }}
345 </el-col> 349 </el-col>
346 </el-row> 350 </el-row>
347 351
348 </el-row> 352 </el-row>
349 353
350 </div> 354 </div>
351 355
352 <el-row align="middle" justify="space-between"> 356 <el-row align="middle" justify="space-between">
353 <el-col :lg="12"> 357 <el-col :lg="12">
354 <div v-if="form.payDate">{{ language == 0 ? '支付时间' : 'Payment Time' }}{{ form.payDate }}</div> 358 <div v-if="form.payDate">{{ language == 0 ? '支付时间' : 'Payment Time' }}{{ form.payDate }}</div>
...@@ -377,12 +381,14 @@ ...@@ -377,12 +381,14 @@
377 </el-col> 381 </el-col>
378 <el-col :lg="24"> 382 <el-col :lg="24">
379 <div class="text-center"> 383 <div class="text-center">
380 <el-button v-if="(form.viewStatus=='1'||form.viewStatus=='5')&&type == 'hotel'" class="mt20 btn-lineG" 384 <el-button
381 round 385 v-if="(form.viewStatus=='1'||form.viewStatus=='5')&&type == 'hotel'" class="mt20 btn-lineG"
382 size="large" type="primary" 386 round
383 @click="exportPdf"> 387 size="large" type="primary"
388 @click="exportPdf"
389 >
384 <el-icon> 390 <el-icon>
385 <Upload/> 391 <Upload />
386 </el-icon> 392 </el-icon>
387 {{ language == 0 ? '导出酒店预订单' : 'Export PDF' }} 393 {{ language == 0 ? '导出酒店预订单' : 'Export PDF' }}
388 </el-button> 394 </el-button>
...@@ -391,9 +397,10 @@ ...@@ -391,9 +397,10 @@
391 class="mt20 btn-lineG" round 397 class="mt20 btn-lineG" round
392 size="large" 398 size="large"
393 type="primary" 399 type="primary"
394 @click="downInvoice"> 400 @click="downInvoice"
401 >
395 <el-icon> 402 <el-icon>
396 <Download/> 403 <Download />
397 </el-icon> 404 </el-icon>
398 {{ language == 0 ? '下载收据' : 'DownLoad Invoice' }} 405 {{ language == 0 ? '下载收据' : 'DownLoad Invoice' }}
399 </el-button> 406 </el-button>
...@@ -403,69 +410,85 @@ ...@@ -403,69 +410,85 @@
403 </div> 410 </div>
404 </div> 411 </div>
405 <div v-else class="pd20 skeletonBox"> 412 <div v-else class="pd20 skeletonBox">
406 <el-skeleton :rows="8"/> 413 <el-skeleton :rows="8" />
407 <el-button :style="language == 0 ?'width:200px':'width:400px'" class="btn-lineG" round size="large" 414 <el-button
408 type="primary" @click="showLogin"> 415 :style="language == 0 ?'width:200px':'width:400px'" class="btn-lineG" round size="large"
416 type="primary" @click="showLogin"
417 >
409 {{ language == 0 ? '登录后查看明细' : 'View detailed information after logging in' }} 418 {{ language == 0 ? '登录后查看明细' : 'View detailed information after logging in' }}
410 </el-button> 419 </el-button>
411 </div> 420 </div>
412 421
413 <div v-if="form.viewStatus == '0'&&(form.surplus!='0,0'&&form.surplus!='0')" class="pd20"> 422 <div v-if="form.viewStatus == '0'&&(form.surplus!='0,0'&&form.surplus!='0')" class="pd20">
414 423
415 <div class="leftboderTT">{{ language == 0 ? '选择支付方式' : 'Choose payment method' }}</div> 424 <div class="leftboderTT">{{ language == 0 ? '选择支付方式' : 'Choose payment method' }}</div>
416 <div class="mt20"> 425 <div class="mt20">
417 <el-radio-group v-model="payType"> 426 <el-radio-group v-model="payType">
418 <el-radio v-if="language==0" border value="2"> 427 <el-radio v-if="language==0" border value="2">
419 <!-- 微信--> 428 <!-- 微信-->
420 <svg class="icon" height="40" p-id="24747" t="1709002960407" 429 <svg
421 version="1.1" viewBox="0 0 3152 1024" width="94" xmlns="http://www.w3.org/2000/svg"> 430 class="icon" height="40" p-id="24747" t="1709002960407"
431 version="1.1" viewBox="0 0 3152 1024" width="94" xmlns="http://www.w3.org/2000/svg"
432 >
422 <path 433 <path
423 d="M381.998922 630.960647c-4.416173 2.208086-8.832345 3.312129-14.352561 3.312129-12.144474 0-22.080863-7.17628-28.1531-17.66469l-2.208086-4.968194-87.771428-204.247978c-1.104043-2.208086-1.104043-4.416173-1.104043-6.624259 0-9.384367 6.624259-16.560647 15.456603-16.560647 3.312129 0 6.624259 1.104043 9.936388 3.312129l103.780054 78.387062c7.728302 4.968194 16.560647 8.280323 26.497035 8.280324 5.520216 0 11.040431-1.104043 16.560647-3.312129l486.330998-230.192992C819.752022 131.381132 676.226415 60.17035 513.380054 60.17035 248.409704 59.618329 32.017251 250.61779 32.017251 486.883019c0 128.069003 64.586523 244.545553 166.15849 322.932614 7.728302 6.072237 13.248518 16.560647 13.248518 27.601079 0 3.312129-1.104043 7.17628-2.208086 10.488409-7.728302 32.017251-20.976819 84.459299-20.97682 86.667386-1.104043 3.312129-2.208086 8.280323-2.208086 13.248517 0 9.384367 6.624259 16.560647 15.456604 16.560647 3.312129 0 6.624259-1.104043 8.832345-3.312129l104.884097-65.138545c7.728302-4.968194 16.560647-8.280323 25.392992-8.280323 4.416173 0 9.936388 1.104043 14.35256 2.208086 49.129919 15.456604 102.676011 23.736927 157.326146 23.736927 265.522372 0 481.362803-191.551482 481.362803-427.816711 0-71.210782-19.872776-139.109434-54.650135-198.175741L385.863073 628.752561l-3.864151 2.208086z" 434 d="M381.998922 630.960647c-4.416173 2.208086-8.832345 3.312129-14.352561 3.312129-12.144474 0-22.080863-7.17628-28.1531-17.66469l-2.208086-4.968194-87.771428-204.247978c-1.104043-2.208086-1.104043-4.416173-1.104043-6.624259 0-9.384367 6.624259-16.560647 15.456603-16.560647 3.312129 0 6.624259 1.104043 9.936388 3.312129l103.780054 78.387062c7.728302 4.968194 16.560647 8.280323 26.497035 8.280324 5.520216 0 11.040431-1.104043 16.560647-3.312129l486.330998-230.192992C819.752022 131.381132 676.226415 60.17035 513.380054 60.17035 248.409704 59.618329 32.017251 250.61779 32.017251 486.883019c0 128.069003 64.586523 244.545553 166.15849 322.932614 7.728302 6.072237 13.248518 16.560647 13.248518 27.601079 0 3.312129-1.104043 7.17628-2.208086 10.488409-7.728302 32.017251-20.976819 84.459299-20.97682 86.667386-1.104043 3.312129-2.208086 8.280323-2.208086 13.248517 0 9.384367 6.624259 16.560647 15.456604 16.560647 3.312129 0 6.624259-1.104043 8.832345-3.312129l104.884097-65.138545c7.728302-4.968194 16.560647-8.280323 25.392992-8.280323 4.416173 0 9.936388 1.104043 14.35256 2.208086 49.129919 15.456604 102.676011 23.736927 157.326146 23.736927 265.522372 0 481.362803-191.551482 481.362803-427.816711 0-71.210782-19.872776-139.109434-54.650135-198.175741L385.863073 628.752561l-3.864151 2.208086z"
424 fill="#09BB07" p-id="24748"></path> 435 fill="#09BB07" p-id="24748"
436 />
425 <path 437 <path
426 d="M1398.822642 381.998922c-9.384367 19.320755-20.424798 38.641509-32.017251 57.962264v263.866307h-31.465229V485.226954c-13.248518 18.216712-27.049057 34.225337-40.297574 48.025876-3.864151-7.17628-14.352561-23.736927-20.424798-30.361186 34.777358-33.673315 71.210782-82.803235 93.843666-131.933153l30.361186 11.040431z m-8.280324-91.63558c-22.632884 36.985445-59.066307 78.939084-91.635579 105.98814-4.416173-7.17628-13.248518-19.320755-19.320755-25.945013 29.809164-23.736927 62.378437-61.274394 78.939083-92.187601l32.017251 12.144474z m181.615094 289.811321c1.656065 7.728302 6.072237 19.320755 8.832345 24.84097-55.754178 37.537466-66.242588 46.369811-72.866846 54.650135-1.656065-7.728302-8.280323-22.080863-12.696496-28.705121 4.968194-3.312129 12.696496-10.48841 12.696496-28.705121v-54.098114h-60.17035v27.049057c0 38.641509-7.728302 91.083558-42.505661 128.069003-4.416173-7.17628-16.560647-19.320755-22.632884-23.184906 29.809164-31.465229 34.225337-72.866846 34.225337-105.436119v-54.098113h118.684636v82.251213l36.433423-22.632884z m123.100809-176.094879c-9.384367 73.970889-23.184906 136.349326-48.025876 187.687332 16.560647 36.433423 39.193531 66.242588 67.346631 83.355256-7.17628 6.072237-17.112668 18.216712-22.632884 27.049057-25.945013-18.216712-46.369811-45.265768-62.930459-78.939084-20.424798 32.017251-45.81779 59.066307-78.939083 81.699191-3.864151-6.624259-13.248518-19.872776-19.872776-25.392992 36.985445-22.632884 64.034501-52.99407 83.907277-89.979514-12.696496-34.777358-22.080863-73.418868-28.705121-115.372507-4.968194 11.040431-10.48841 22.632884-16.560647 31.465229-3.864151-4.416173-10.48841-13.248518-17.112668-20.424798v5.520216h-154.014017v-29.809165h154.014017v9.384367c24.84097-49.129919 37.537466-118.684636 44.713746-191.551483l31.465229 4.968195c-3.864151 31.465229-8.280323 61.274394-13.800539 90.531536h96.051752v29.809164h-14.904582z m-142.973585 22.632884h-145.181671v-110.404312h24.84097v82.251213h35.32938V278.770889h26.497035v119.78868h33.673316V316.308356h25.392992v110.404312z m55.202156-22.632884c-1.656065 6.624259-3.312129 12.696496-4.416172 18.768734 6.072237 46.369811 14.904582 91.083558 28.1531 130.277088 16.560647-43.057682 26.497035-91.63558 32.569272-149.045822h-56.3062zM1882.393531 289.259299c-10.48841 31.465229-24.288949 62.378437-39.193531 91.63558v324.036657h-32.017251V437.201078c-13.800539 22.632884-29.257143 42.50566-44.161725 60.170351-3.312129-7.728302-13.248518-24.288949-19.320754-32.017251 41.953639-45.265768 80.043127-114.820485 103.780053-184.927224l30.913208 8.832345z m288.707278 65.690566v29.257143h-294.779515v-29.257143h294.779515z m-267.730459 199.831806h235.713208v147.941779h-30.913208v-16.560647h-174.438814v18.216712h-30.361186v-149.597844z m231.297035-104.332075H1909.994609v-28.1531h224.672776v28.1531zM1909.994609 486.883019h224.672776v28.1531H1909.994609v-28.1531z m23.736927 96.603773V656.90566h174.438814v-73.418868h-174.438814z m81.699192-231.297035c-6.072237-16.560647-20.424798-43.057682-32.017251-61.826415l29.257143-12.144474c13.248518 19.320755 27.601078 44.161725 34.225337 60.722372l-31.465229 13.248517zM2586.221024 468.114286c-26.497035 63.48248-69.002695 111.508356-122.548787 147.941779 50.785984 25.945013 110.956334 43.609704 180.511051 52.442048-7.728302 8.280323-16.560647 23.184906-21.528841 33.673316-75.074933-11.592453-139.661456-32.569272-192.655525-64.034502-57.962264 32.017251-125.308895 52.99407-195.415634 66.794609-3.312129-9.384367-12.696496-25.392992-19.320754-33.121293 66.242588-10.48841 129.173046-28.1531 183.271159-55.202157-44.161725-32.017251-78.939084-72.866846-103.780054-123.65283l10.48841-3.864151h-49.12992v-34.225337h155.670081V383.654987h-176.6469v-34.225337h176.6469V278.770889h35.32938v70.658761h177.750944v34.225337h-177.750944v71.210781H2555.859838l7.176281-1.656064 23.184905 14.904582z m-255.033962 20.976819c23.184906 43.609704 56.858221 80.043127 100.467925 108.748248 44.161725-28.1531 80.043127-63.48248 104.332075-108.748248h-204.8zM2834.630728 292.571429c-13.800539 34.777358-30.361186 69.554717-49.129919 101.571967v308.580054h-34.225337V447.689488c-14.904582 20.976819-31.465229 40.297574-46.921833 56.306199-4.416173-7.728302-14.904582-25.945013-21.528841-34.225337 47.473854-45.265768 91.63558-115.924528 118.132614-188.239353l33.673316 11.040432z m270.490566 123.65283h-58.514286v240.12938c0 25.945013-7.728302 36.985445-24.84097 41.953639-18.216712 5.520216-49.129919 6.072237-99.915903 5.520215-1.656065-8.832345-8.280323-24.84097-13.248518-34.225337 39.193531 1.656065 77.283019 1.656065 88.32345 1.104043 10.48841-1.104043 14.352561-3.864151 14.352561-14.35256V416.224259h-187.687332v-34.225337h187.687332V283.739084h34.777359v97.707816h58.514285v34.777359z m-184.375202 178.854986c-13.800539-28.705121-43.609704-78.939084-67.346631-115.924528l29.809164-13.800539c24.288949 35.881402 55.202156 84.459299 70.106739 112.612399l-32.569272 17.112668z" 438 d="M1398.822642 381.998922c-9.384367 19.320755-20.424798 38.641509-32.017251 57.962264v263.866307h-31.465229V485.226954c-13.248518 18.216712-27.049057 34.225337-40.297574 48.025876-3.864151-7.17628-14.352561-23.736927-20.424798-30.361186 34.777358-33.673315 71.210782-82.803235 93.843666-131.933153l30.361186 11.040431z m-8.280324-91.63558c-22.632884 36.985445-59.066307 78.939084-91.635579 105.98814-4.416173-7.17628-13.248518-19.320755-19.320755-25.945013 29.809164-23.736927 62.378437-61.274394 78.939083-92.187601l32.017251 12.144474z m181.615094 289.811321c1.656065 7.728302 6.072237 19.320755 8.832345 24.84097-55.754178 37.537466-66.242588 46.369811-72.866846 54.650135-1.656065-7.728302-8.280323-22.080863-12.696496-28.705121 4.968194-3.312129 12.696496-10.48841 12.696496-28.705121v-54.098114h-60.17035v27.049057c0 38.641509-7.728302 91.083558-42.505661 128.069003-4.416173-7.17628-16.560647-19.320755-22.632884-23.184906 29.809164-31.465229 34.225337-72.866846 34.225337-105.436119v-54.098113h118.684636v82.251213l36.433423-22.632884z m123.100809-176.094879c-9.384367 73.970889-23.184906 136.349326-48.025876 187.687332 16.560647 36.433423 39.193531 66.242588 67.346631 83.355256-7.17628 6.072237-17.112668 18.216712-22.632884 27.049057-25.945013-18.216712-46.369811-45.265768-62.930459-78.939084-20.424798 32.017251-45.81779 59.066307-78.939083 81.699191-3.864151-6.624259-13.248518-19.872776-19.872776-25.392992 36.985445-22.632884 64.034501-52.99407 83.907277-89.979514-12.696496-34.777358-22.080863-73.418868-28.705121-115.372507-4.968194 11.040431-10.48841 22.632884-16.560647 31.465229-3.864151-4.416173-10.48841-13.248518-17.112668-20.424798v5.520216h-154.014017v-29.809165h154.014017v9.384367c24.84097-49.129919 37.537466-118.684636 44.713746-191.551483l31.465229 4.968195c-3.864151 31.465229-8.280323 61.274394-13.800539 90.531536h96.051752v29.809164h-14.904582z m-142.973585 22.632884h-145.181671v-110.404312h24.84097v82.251213h35.32938V278.770889h26.497035v119.78868h33.673316V316.308356h25.392992v110.404312z m55.202156-22.632884c-1.656065 6.624259-3.312129 12.696496-4.416172 18.768734 6.072237 46.369811 14.904582 91.083558 28.1531 130.277088 16.560647-43.057682 26.497035-91.63558 32.569272-149.045822h-56.3062zM1882.393531 289.259299c-10.48841 31.465229-24.288949 62.378437-39.193531 91.63558v324.036657h-32.017251V437.201078c-13.800539 22.632884-29.257143 42.50566-44.161725 60.170351-3.312129-7.728302-13.248518-24.288949-19.320754-32.017251 41.953639-45.265768 80.043127-114.820485 103.780053-184.927224l30.913208 8.832345z m288.707278 65.690566v29.257143h-294.779515v-29.257143h294.779515z m-267.730459 199.831806h235.713208v147.941779h-30.913208v-16.560647h-174.438814v18.216712h-30.361186v-149.597844z m231.297035-104.332075H1909.994609v-28.1531h224.672776v28.1531zM1909.994609 486.883019h224.672776v28.1531H1909.994609v-28.1531z m23.736927 96.603773V656.90566h174.438814v-73.418868h-174.438814z m81.699192-231.297035c-6.072237-16.560647-20.424798-43.057682-32.017251-61.826415l29.257143-12.144474c13.248518 19.320755 27.601078 44.161725 34.225337 60.722372l-31.465229 13.248517zM2586.221024 468.114286c-26.497035 63.48248-69.002695 111.508356-122.548787 147.941779 50.785984 25.945013 110.956334 43.609704 180.511051 52.442048-7.728302 8.280323-16.560647 23.184906-21.528841 33.673316-75.074933-11.592453-139.661456-32.569272-192.655525-64.034502-57.962264 32.017251-125.308895 52.99407-195.415634 66.794609-3.312129-9.384367-12.696496-25.392992-19.320754-33.121293 66.242588-10.48841 129.173046-28.1531 183.271159-55.202157-44.161725-32.017251-78.939084-72.866846-103.780054-123.65283l10.48841-3.864151h-49.12992v-34.225337h155.670081V383.654987h-176.6469v-34.225337h176.6469V278.770889h35.32938v70.658761h177.750944v34.225337h-177.750944v71.210781H2555.859838l7.176281-1.656064 23.184905 14.904582z m-255.033962 20.976819c23.184906 43.609704 56.858221 80.043127 100.467925 108.748248 44.161725-28.1531 80.043127-63.48248 104.332075-108.748248h-204.8zM2834.630728 292.571429c-13.800539 34.777358-30.361186 69.554717-49.129919 101.571967v308.580054h-34.225337V447.689488c-14.904582 20.976819-31.465229 40.297574-46.921833 56.306199-4.416173-7.728302-14.904582-25.945013-21.528841-34.225337 47.473854-45.265768 91.63558-115.924528 118.132614-188.239353l33.673316 11.040432z m270.490566 123.65283h-58.514286v240.12938c0 25.945013-7.728302 36.985445-24.84097 41.953639-18.216712 5.520216-49.129919 6.072237-99.915903 5.520215-1.656065-8.832345-8.280323-24.84097-13.248518-34.225337 39.193531 1.656065 77.283019 1.656065 88.32345 1.104043 10.48841-1.104043 14.352561-3.864151 14.352561-14.35256V416.224259h-187.687332v-34.225337h187.687332V283.739084h34.777359v97.707816h58.514285v34.777359z m-184.375202 178.854986c-13.800539-28.705121-43.609704-78.939084-67.346631-115.924528l29.809164-13.800539c24.288949 35.881402 55.202156 84.459299 70.106739 112.612399l-32.569272 17.112668z"
427 fill="#595757" p-id="24749"></path> 439 fill="#595757" p-id="24749"
440 />
428 </svg> 441 </svg>
429 </el-radio> 442 </el-radio>
430 <el-radio v-if="language==1" border value="3"> 443 <el-radio v-if="language==1" border value="3">
431 <!--paypal--> 444 <!--paypal-->
432 <svg class="icon" height="40" p-id="22654" t="1709002828937" 445 <svg
433 version="1.1" viewBox="0 0 4220 1024" width="94" xmlns="http://www.w3.org/2000/svg"> 446 class="icon" height="40" p-id="22654" t="1709002828937"
447 version="1.1" viewBox="0 0 4220 1024" width="94" xmlns="http://www.w3.org/2000/svg"
448 >
434 <path 449 <path
435 d="M3249.722604 229.409369h-232.537679c-15.641548 0-29.197556 11.470468-32.325865 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h118.875764c11.470468 0 20.855397-8.342159 21.898167-18.769858l27.112016-168.928717c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641547c41.710794 0 81.336049 0 102.191447 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731z" 450 d="M3249.722604 229.409369h-232.537679c-15.641548 0-29.197556 11.470468-32.325865 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h118.875764c11.470468 0 20.855397-8.342159 21.898167-18.769858l27.112016-168.928717c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641547c41.710794 0 81.336049 0 102.191447 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731z"
436 fill="#009CDE" p-id="22655"></path> 451 fill="#009CDE" p-id="22655"
452 />
437 <path 453 <path
438 d="M1594.84684 229.409369h-232.537678c-15.641548 0-29.197556 11.470468-32.325866 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h110.533605c15.641548 0 29.197556-11.470468 32.325866-27.112017l25.026476-160.586558c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641548c41.710794 0 81.336049 0 102.191446 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731zM2288.288795 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.213849 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710794 171.014257 34.411405 39.625255 82.378819 56.309572 139.731161 56.309572 99.063136 0 153.287169-63.608961 153.287169-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480652-380.610998c2.08554-10.427699-6.256619-21.898167-18.769858-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.079429-30.240326-16.684318-19.812627-22.940937-46.924644-17.727088-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z" 454 d="M1594.84684 229.409369h-232.537678c-15.641548 0-29.197556 11.470468-32.325866 27.112016l-93.849287 595.421589c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h110.533605c15.641548 0 29.197556-11.470468 32.325866-27.112017l25.026476-160.586558c2.08554-15.641548 15.641548-27.112016 32.325866-27.112016h72.99389c153.287169 0 240.879837-74.03666 263.820774-221.06721 10.427699-63.608961 0-114.704684-29.197556-150.158859-31.283096-38.582485-89.678208-58.395112-167.885947-58.395112z m27.112016 216.89613c-12.513238 83.421589-76.1222 83.421589-137.645621 83.421589h-35.454175l25.026476-155.372709c1.04277-9.384929 9.384929-16.684318 18.769858-16.684318h15.641548c41.710794 0 81.336049 0 102.191446 23.983707 12.513238 14.598778 15.641548 35.454175 11.470468 64.651731zM2288.288795 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.213849 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710794 171.014257 34.411405 39.625255 82.378819 56.309572 139.731161 56.309572 99.063136 0 153.287169-63.608961 153.287169-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480652-380.610998c2.08554-10.427699-6.256619-21.898167-18.769858-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.079429-30.240326-16.684318-19.812627-22.940937-46.924644-17.727088-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z"
439 fill="#003087" p-id="22656"></path> 455 fill="#003087" p-id="22656"
456 />
440 <path 457 <path
441 d="M3943.164559 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.21385 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710795 171.014257 34.411405 39.625255 82.378819 56.309572 139.73116 56.309572 99.063136 0 153.287169-63.608961 153.28717-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480651-380.610998c2.08554-10.427699-6.256619-21.898167-18.769857-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.07943-30.240326-16.684318-19.812627-22.940937-46.924644-17.727087-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z" 458 d="M3943.164559 443.177189h-111.576375c-9.384929 0-17.727088 7.299389-18.769857 16.684318l-5.21385 31.283096-7.299389-11.470469c-23.983707-34.411405-77.164969-46.924644-131.389002-46.924643-123.046843 0-227.323829 92.806517-248.179226 223.152749-10.427699 64.651731 4.171079 127.217923 41.710795 171.014257 34.411405 39.625255 82.378819 56.309572 139.73116 56.309572 99.063136 0 153.287169-63.608961 153.28717-63.608961l-5.21385 31.283096c-2.08554 11.470468 7.299389 21.898167 18.769858 21.898167h100.105906c15.641548 0 29.197556-11.470468 32.325866-27.112017l60.480651-380.610998c2.08554-10.427699-6.256619-21.898167-18.769857-21.898167z m-154.329939 216.896131c-10.427699 63.608961-61.523422 106.362525-125.132383 106.362525-32.325866 0-58.395112-10.427699-75.07943-30.240326-16.684318-19.812627-22.940937-46.924644-17.727087-78.207739 10.427699-62.566191 61.523422-107.405295 124.089613-107.405295 31.283096 0 57.352342 10.427699 74.03666 30.240326 17.727088 20.855397 25.026477 47.967413 19.812627 79.250509z"
442 fill="#009CDE" p-id="22657"></path> 459 fill="#009CDE" p-id="22657"
460 />
443 <path 461 <path
444 d="M2880.582074 443.177189h-111.576375c-10.427699 0-20.855397 5.213849-27.112016 14.598778l-154.329939 227.323829-65.694501-217.9389c-4.171079-13.556008-16.684318-22.940937-31.283096-22.940937h-109.490835c-13.556008 0-22.940937 13.556008-18.769857 26.069247l123.046843 360.79837-115.747454 162.672098c-9.384929 12.513238 0 30.240326 15.641548 30.240326h111.576375c10.427699 0 20.855397-5.213849 26.069246-13.556008l371.226069-535.983707c11.470468-13.556008 2.08554-31.283096-13.556008-31.283096z" 462 d="M2880.582074 443.177189h-111.576375c-10.427699 0-20.855397 5.213849-27.112016 14.598778l-154.329939 227.323829-65.694501-217.9389c-4.171079-13.556008-16.684318-22.940937-31.283096-22.940937h-109.490835c-13.556008 0-22.940937 13.556008-18.769857 26.069247l123.046843 360.79837-115.747454 162.672098c-9.384929 12.513238 0 30.240326 15.641548 30.240326h111.576375c10.427699 0 20.855397-5.213849 26.069246-13.556008l371.226069-535.983707c11.470468-13.556008 2.08554-31.283096-13.556008-31.283096z"
445 fill="#003087" p-id="22658"></path> 463 fill="#003087" p-id="22658"
464 />
446 <path 465 <path
447 d="M4074.553561 245.050916l-94.892057 605.849288c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h95.934827c15.641548 0 29.197556-11.470468 32.325866-27.112017l93.849287-595.421588c2.08554-11.470468-7.299389-21.898167-18.769857-21.898167h-107.405296c-10.427699 1.04277-18.769857 7.299389-19.812627 16.684317z" 466 d="M4074.553561 245.050916l-94.892057 605.849288c-2.08554 11.470468 7.299389 21.898167 18.769857 21.898167h95.934827c15.641548 0 29.197556-11.470468 32.325866-27.112017l93.849287-595.421588c2.08554-11.470468-7.299389-21.898167-18.769857-21.898167h-107.405296c-10.427699 1.04277-18.769857 7.299389-19.812627 16.684317z"
448 fill="#009CDE" p-id="22659"></path> 467 fill="#009CDE" p-id="22659"
468 />
449 <path 469 <path
450 d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l-13.556008 85.507128c-2.08554 14.598778 9.384929 27.112016 23.983707 27.112016h165.800407c19.812627 0 36.496945-14.598778 39.625255-33.368635l2.08554-8.342159 31.283095-198.126273 2.08554-10.427699c3.12831-19.812627 19.812627-33.368635 39.625255-33.368635h25.026476c160.586558 0 285.718941-64.651731 322.215886-253.393075 15.641548-79.250509 7.299389-144.94501-33.368635-190.826884-12.513238-13.556008-28.154786-26.069246-45.881874-35.454175" 470 d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l-13.556008 85.507128c-2.08554 14.598778 9.384929 27.112016 23.983707 27.112016h165.800407c19.812627 0 36.496945-14.598778 39.625255-33.368635l2.08554-8.342159 31.283095-198.126273 2.08554-10.427699c3.12831-19.812627 19.812627-33.368635 39.625255-33.368635h25.026476c160.586558 0 285.718941-64.651731 322.215886-253.393075 15.641548-79.250509 7.299389-144.94501-33.368635-190.826884-12.513238-13.556008-28.154786-26.069246-45.881874-35.454175"
451 fill="#009CDE" p-id="22660"></path> 471 fill="#009CDE" p-id="22660"
472 />
452 <path 473 <path
453 d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958-1.04277 9.384929c3.12831-21.898167 21.898167-38.582485 44.839104-38.582485h93.849287c183.527495 0 327.429735-74.03666 369.140529-289.89002l3.12831-18.769857" 474 d="M782.529121 259.649695c12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958-1.04277 9.384929c3.12831-21.898167 21.898167-38.582485 44.839104-38.582485h93.849287c183.527495 0 327.429735-74.03666 369.140529-289.89002l3.12831-18.769857"
454 fill="#012169" p-id="22661"></path> 475 fill="#012169" p-id="22661"
476 />
455 <path 477 <path
456 d="M326.838693 260.692464c2.08554-13.556008 10.427699-23.983707 21.898167-30.240326 5.213849-2.08554 11.470468-4.171079 16.684318-4.171079h250.264766c29.197556 0 57.352342 2.08554 82.378819 6.256619 7.299389 1.04277 14.598778 2.08554 20.855397 4.17108 7.299389 1.04277 13.556008 3.12831 19.812627 5.213849l9.384929 3.128309c12.513238 4.171079 23.983707 9.384929 34.411405 14.598779 12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958L326.838693 260.692464z" 478 d="M326.838693 260.692464c2.08554-13.556008 10.427699-23.983707 21.898167-30.240326 5.213849-2.08554 11.470468-4.171079 16.684318-4.171079h250.264766c29.197556 0 57.352342 2.08554 82.378819 6.256619 7.299389 1.04277 14.598778 2.08554 20.855397 4.17108 7.299389 1.04277 13.556008 3.12831 19.812627 5.213849l9.384929 3.128309c12.513238 4.171079 23.983707 9.384929 34.411405 14.598779 12.513238-79.250509 0-133.474542-42.753564-182.484726C691.808143 22.940937 606.301015 0 496.81018 0H178.765374c-21.898167 0-41.710794 16.684318-44.839104 38.582485L0.451728 879.05499c-3.12831 16.684318 10.427699 31.283096 27.112016 31.283096h196.040733l49.010184-312.830958L326.838693 260.692464z"
457 fill="#003087" p-id="22662"></path> 479 fill="#003087" p-id="22662"
480 />
458 </svg> 481 </svg>
459 </el-radio> 482 </el-radio>
460 </el-radio-group> 483 </el-radio-group>
461 <div v-if="payType == '2'&&wePayCodeUrl"> 484 <div v-if="payType == '2'&&wePayCodeUrl">
462 <div class="payImgbox flexCenter"> 485 <div class="payImgbox flexCenter">
463 <div> 486 <div>
464 <img :src="wePayCodeUrl" class="border" width="260"/> 487 <img :src="wePayCodeUrl" class="border" width="260">
465 <img class="mt20" src="@/assets/img/sm.png"/> 488 <img class="mt20" src="@/assets/img/sm.png">
466 </div> 489 </div>
467 <div class="ml20"> 490 <div class="ml20">
468 <img height="360" src="@/assets/img/rr.jpg"/> 491 <img height="360" src="@/assets/img/rr.jpg">
469 </div> 492 </div>
470 </div> 493 </div>
471 <div v-if="language==0" class="tip text-center text-danger"> 494 <div v-if="language==0" class="tip text-center text-danger">
...@@ -474,7 +497,7 @@ ...@@ -474,7 +497,7 @@
474 </div> 497 </div>
475 <div v-else class="tip text-center text-danger"> 498 <div v-else class="tip text-center text-danger">
476 After payment, do not close this window and wait for confirmation of successful payment. 499 After payment, do not close this window and wait for confirmation of successful payment.
477 <br/> 500 <br>
478 If you have not received a notification of successful payment for a long time, 501 If you have not received a notification of successful payment for a long time,
479 please refresh the page 502 please refresh the page
480 </div> 503 </div>
...@@ -483,8 +506,10 @@ ...@@ -483,8 +506,10 @@
483 </div> 506 </div>
484 <el-row align="middle" class="mt20 mb60" justify="center"> 507 <el-row align="middle" class="mt20 mb60" justify="center">
485 <el-col :span="24" class="text-center"> 508 <el-col :span="24" class="text-center">
486 <el-button v-if="!hideconfirmbtn&&form.viewStatus == '0'" class="btn-lineG w200px" round type="primary" 509 <el-button
487 @click="goPay"> 510 v-if="!hideconfirmbtn&&form.viewStatus == '0'" class="btn-lineG w200px" round type="primary"
511 @click="goPay"
512 >
488 {{ language == 0 ? '确定' : 'Submit' }} 513 {{ language == 0 ? '确定' : 'Submit' }}
489 </el-button> 514 </el-button>
490 <el-button v-if="form.viewStatus == '5'" round @click="unsubscribe"> 515 <el-button v-if="form.viewStatus == '5'" round @click="unsubscribe">
...@@ -495,11 +520,11 @@ ...@@ -495,11 +520,11 @@
495 </el-button> 520 </el-button>
496 </el-col> 521 </el-col>
497 </el-row> 522 </el-row>
498 523
499 <div v-if="form.payDate&&form.viewStatus=='1'"> 524 <div v-if="form.payDate&&form.viewStatus=='1'">
500 <div class="text-center"> 525 <div class="text-center">
501 <el-icon color="#32B16C" size="80"> 526 <el-icon color="#32B16C" size="80">
502 <SuccessFilled/> 527 <SuccessFilled />
503 </el-icon> 528 </el-icon>
504 <p class="text-success">{{ language == 0 ? '支付成功' : 'successful!' }}</p> 529 <p class="text-success">{{ language == 0 ? '支付成功' : 'successful!' }}</p>
505 <h3 class="wePrice">{{ language == 0 ? '¥' : '€' }}{{ totalFee || 0 }}</h3> 530 <h3 class="wePrice">{{ language == 0 ? '¥' : '€' }}{{ totalFee || 0 }}</h3>
...@@ -507,7 +532,7 @@ ...@@ -507,7 +532,7 @@
507 </div> 532 </div>
508 </el-card> 533 </el-card>
509 </div> 534 </div>
510 535
511 <div v-if="errorBox" class="box"> 536 <div v-if="errorBox" class="box">
512 <el-result 537 <el-result
513 :sub-title="language==0?'请确认订单号是否正确':'Please confirm if the order number is correct'" 538 :sub-title="language==0?'请确认订单号是否正确':'Please confirm if the order number is correct'"
...@@ -521,14 +546,16 @@ ...@@ -521,14 +546,16 @@
521 </template> 546 </template>
522 </el-result> 547 </el-result>
523 </div> 548 </div>
524 <Dialog ref="DialogRef"/> 549 <Dialog ref="DialogRef" />
525 550
526 <el-dialog v-model="showSJDialog" :close-on-click-modal="false" :close-on-press-escape="false" 551 <el-dialog
527 :title="language==0?'开收据':'Issue a receipt'" width="460px"> 552 v-model="showSJDialog" :close-on-click-modal="false" :close-on-press-escape="false"
553 :title="language==0?'开收据':'Issue a receipt'" width="460px"
554 >
528 <div class="flex"> 555 <div class="flex">
529 <el-form-item :label="language==0?'开票人':'Name'"> 556 <el-form-item :label="language==0?'开票人':'Name'">
530 <div class="flex"> 557 <div class="flex">
531 <el-input v-model="lpName" :placeholder="language==0?'请输入开票人':'Please enter your name'"></el-input> 558 <el-input v-model="lpName" :placeholder="language==0?'请输入开票人':'Please enter your name'" />
532 <el-button type="primary" @click="submitSJ">{{ language == 0 ? '提交并下载' : 'Submit' }}</el-button> 559 <el-button type="primary" @click="submitSJ">{{ language == 0 ? '提交并下载' : 'Submit' }}</el-button>
533 </div> 560 </div>
534 </el-form-item> 561 </el-form-item>
...@@ -544,16 +571,16 @@ ...@@ -544,16 +571,16 @@
544 </template> 571 </template>
545 572
546 <script setup> 573 <script setup>
547 import {Search} from "@element-plus/icons-vue" 574 import { Search } from '@element-plus/icons-vue'
548 import {getCurrentInstance, ref} from 'vue' 575 import { getCurrentInstance, ref } from 'vue'
549 import {onMounted} from "@vue/runtime-core" 576 import { onMounted } from '@vue/runtime-core'
550 import {useRoute, useRouter} from "vue-router" 577 import { useRoute, useRouter } from 'vue-router'
551 import * as booking from "@/apiPc/booking" 578 import * as booking from '@/apiPc/booking'
552 import Dialog from '@/viewsPc/booking/component/dailog.vue' 579 import Dialog from '@/viewsPc/booking/component/dailog.vue'
553 import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row"; 580 import MatchInfoRow from '@/viewsPc/match/components/matchInfo-row'
554 581
555 582
556 const {proxy} = getCurrentInstance() 583 const { proxy } = getCurrentInstance()
557 const route = useRoute() 584 const route = useRoute()
558 const router = useRouter() 585 const router = useRouter()
559 const matchInfo = ref({}) 586 const matchInfo = ref({})
...@@ -563,19 +590,19 @@ const payType = ref('2') ...@@ -563,19 +590,19 @@ const payType = ref('2')
563 const orderId = ref(route.query.orderId) 590 const orderId = ref(route.query.orderId)
564 const matchId = ref() 591 const matchId = ref()
565 const groupId = ref() 592 const groupId = ref()
566 import useUserStore from "@/store/modules/user"; 593 import useUserStore from '@/store/modules/user'
567 import FileUpload from "@/components/FileUpload"; 594 import FileUpload from '@/components/FileUpload'
568 import {useStorage} from "@vueuse/core/index"; 595 import { useStorage } from '@vueuse/core/index'
569 import {ElMessage, ElMessageBox} from "element-plus"; 596 import { ElMessage, ElMessageBox } from 'element-plus'
570 import { 597 import {
571 cancelOrder, 598 cancelOrder,
572 cancelOrder2, getBaseInfoByActiveId, 599 cancelOrder2, getBaseInfoByActiveId,
573 getCarBilldetailbyId, 600 getCarBilldetailbyId,
574 getFoodBilldetailbyId, 601 getFoodBilldetailbyId,
575 getMealOrderInfoByLogex, getPhotoOrderInfo, getPhotoOrderInfoByLogex, getTicketInfoByActivityId, getTicketOrderInfo, 602 getMealOrderInfoByLogex, getPhotoOrderInfo, getPhotoOrderInfoByLogex, getTicketInfoByActivityId, getTicketOrderInfo
576 } from "@/apiPc/booking"; 603 } from '@/apiPc/booking'
577 import dayjs from 'dayjs' 604 import dayjs from 'dayjs'
578 import {delPerson} from "@/api/exam/person"; 605 import { delPerson } from '@/api/exam/person'
579 606
580 const isLogin = ref(false) 607 const isLogin = ref(false)
581 const language = useStorage('language', 0) 608 const language = useStorage('language', 0)
...@@ -635,7 +662,7 @@ onMounted(() => { ...@@ -635,7 +662,7 @@ onMounted(() => {
635 662
636 function getData() { 663 function getData() {
637 if (type.value == 'car') { 664 if (type.value == 'car') {
638 return booking.getCarBilldetailbyId({orderId: orderId.value}).then(res => { 665 return booking.getCarBilldetailbyId({ orderId: orderId.value }).then(res => {
639 form.value = res.data 666 form.value = res.data
640 if (language.value == 0) { 667 if (language.value == 0) {
641 totalFee.value = res.data.total 668 totalFee.value = res.data.total
...@@ -648,7 +675,7 @@ function getData() { ...@@ -648,7 +675,7 @@ function getData() {
648 }) 675 })
649 } 676 }
650 if (type.value == 'food') { 677 if (type.value == 'food') {
651 return booking.getFoodBilldetailbyId({orderId: orderId.value}).then(res => { 678 return booking.getFoodBilldetailbyId({ orderId: orderId.value }).then(res => {
652 if (language.value == 0) { 679 if (language.value == 0) {
653 totalFee.value = res.data.total 680 totalFee.value = res.data.total
654 } else { 681 } else {
...@@ -661,7 +688,7 @@ function getData() { ...@@ -661,7 +688,7 @@ function getData() {
661 }) 688 })
662 } 689 }
663 if (type.value == 'hotel') { 690 if (type.value == 'hotel') {
664 return booking.getRoomBilldetailbyId({orderId: orderId.value}).then(res => { 691 return booking.getRoomBilldetailbyId({ orderId: orderId.value }).then(res => {
665 if (language.value == 0) { 692 if (language.value == 0) {
666 totalFee.value = res.data.total 693 totalFee.value = res.data.total
667 } else { 694 } else {
...@@ -692,7 +719,7 @@ function getData() { ...@@ -692,7 +719,7 @@ function getData() {
692 719
693 // 票务订单详情 720 // 票务订单详情
694 async function getTicketOrderInfoFN() { 721 async function getTicketOrderInfoFN() {
695 const res = await getTicketOrderInfo({orderId: orderId.value}) 722 const res = await getTicketOrderInfo({ orderId: orderId.value })
696 form.value = res.data 723 form.value = res.data
697 form.value.extJson = JSON.parse(form.value.extJson) 724 form.value.extJson = JSON.parse(form.value.extJson)
698 try { 725 try {
...@@ -701,19 +728,18 @@ async function getTicketOrderInfoFN() { ...@@ -701,19 +728,18 @@ async function getTicketOrderInfoFN() {
701 form.value.extJson.message = JSON.parse(form.value.extJson.message) 728 form.value.extJson.message = JSON.parse(form.value.extJson.message)
702 await getDetail(form.value.extJson.ticketDate.activityId) 729 await getDetail(form.value.extJson.ticketDate.activityId)
703 matchId.value = form.value.extJson.ticketDate.activityId 730 matchId.value = form.value.extJson.ticketDate.activityId
704 731
705 totalFee.value = language.value == 0 ? form.value.total : form.value.totalEn 732 totalFee.value = language.value == 0 ? form.value.total : form.value.totalEn
706 } catch (e) { 733 } catch (e) {
707 console.log(e) 734 console.log(e)
708 } finally { 735 } finally {
709 736
710 } 737 }
711 console.log(form.value) 738 console.log(form.value)
712
713 } 739 }
714 740
715 async function getDetail(activeId) { 741 async function getDetail(activeId) {
716 const res = await getTicketInfoByActivityId({activityId: activeId}) 742 const res = await getTicketInfoByActivityId({ activityId: activeId })
717 matchForm.value = res.data 743 matchForm.value = res.data
718 console.log(matchForm.value) 744 console.log(matchForm.value)
719 } 745 }
...@@ -725,14 +751,14 @@ function goHome() { ...@@ -725,14 +751,14 @@ function goHome() {
725 751
726 function goPay() { 752 function goPay() {
727 if (payType.value == '2') { 753 if (payType.value == '2') {
728 booking.createWePay({orderId: orderId.value}).then(res => { 754 booking.createWePay({ orderId: orderId.value }).then(res => {
729 wePayCodeUrl.value = res.data 755 wePayCodeUrl.value = res.data
730 hideconfirmbtn.value = true 756 hideconfirmbtn.value = true
731 startforGetData() 757 startforGetData()
732 }) 758 })
733 } 759 }
734 if (payType.value == '3') { 760 if (payType.value == '3') {
735 booking.createPalPay({orderId: orderId.value}).then(res => { 761 booking.createPalPay({ orderId: orderId.value }).then(res => {
736 if (res.data) { 762 if (res.data) {
737 location.href = res.data 763 location.href = res.data
738 } 764 }
...@@ -740,7 +766,7 @@ function goPay() { ...@@ -740,7 +766,7 @@ function goPay() {
740 } 766 }
741 } 767 }
742 768
743 let handle; 769 let handle
744 770
745 function startforGetData() { 771 function startforGetData() {
746 handle = setTimeout(() => { 772 handle = setTimeout(() => {
...@@ -798,7 +824,7 @@ function showLogin() { ...@@ -798,7 +824,7 @@ function showLogin() {
798 824
799 825
800 function MakeUpOrder() { 826 function MakeUpOrder() {
801 return booking.getMealOrderInfo({orderId: orderId.value}).then(res => { 827 return booking.getMealOrderInfo({ orderId: orderId.value }).then(res => {
802 form.value = res.data 828 form.value = res.data
803 totalFee.value = language.value == 0 ? form.value.total : form.value.totalEn 829 totalFee.value = language.value == 0 ? form.value.total : form.value.totalEn
804 matchId.value = form.value.activeId 830 matchId.value = form.value.activeId
...@@ -811,10 +837,10 @@ function MakeUpOrder() { ...@@ -811,10 +837,10 @@ function MakeUpOrder() {
811 } 837 }
812 838
813 function MakeUpIno() { 839 function MakeUpIno() {
814 booking.getMealOrderInfoByLogex({asmId: form.value.asmId}).then(res => { 840 booking.getMealOrderInfoByLogex({ asmId: form.value.asmId }).then(res => {
815 formInfo.value = res.data 841 formInfo.value = res.data
816 console.log(res) 842 console.log(res)
817 }) 843 })
818 .catch((e) => { 844 .catch((e) => {
819 console.log(e) 845 console.log(e)
820 errorBox.value = true 846 errorBox.value = true
...@@ -823,7 +849,7 @@ function MakeUpIno() { ...@@ -823,7 +849,7 @@ function MakeUpIno() {
823 849
824 850
825 function photographyOrder() { 851 function photographyOrder() {
826 return booking.getPhotoOrderInfo({orderId: orderId.value}).then(res => { 852 return booking.getPhotoOrderInfo({ orderId: orderId.value }).then(res => {
827 form.value = res.data 853 form.value = res.data
828 totalFee.value = language.value == 0 ? form.value.total : form.value.totalEn 854 totalFee.value = language.value == 0 ? form.value.total : form.value.totalEn
829 photographyInfo() 855 photographyInfo()
...@@ -834,7 +860,7 @@ function photographyOrder() { ...@@ -834,7 +860,7 @@ function photographyOrder() {
834 } 860 }
835 861
836 function photographyInfo() { 862 function photographyInfo() {
837 booking.getPhotoOrderInfoByLogex({aspId: form.value.aspId}).then(res => { 863 booking.getPhotoOrderInfoByLogex({ aspId: form.value.aspId }).then(res => {
838 formInfo.value = res.data 864 formInfo.value = res.data
839 }) 865 })
840 // .catch((e) => { 866 // .catch((e) => {
...@@ -844,7 +870,7 @@ function photographyInfo() { ...@@ -844,7 +870,7 @@ function photographyInfo() {
844 } 870 }
845 871
846 const cancel = () => { 872 const cancel = () => {
847 //取消订单 873 // 取消订单
848 proxy.$modal.confirm(language.value == 0 ? '确定取消订单吗 ?' : `Are you sure to cancel the order?`).then(() => { 874 proxy.$modal.confirm(language.value == 0 ? '确定取消订单吗 ?' : `Are you sure to cancel the order?`).then(() => {
849 return cancelOrder2(orderId.value).then(res => { 875 return cancelOrder2(orderId.value).then(res => {
850 getData() 876 getData()
...@@ -874,13 +900,12 @@ function exportPdf() { ...@@ -874,13 +900,12 @@ function exportPdf() {
874 if (language.value == 0) { 900 if (language.value == 0) {
875 proxy.download('/ota/orderRoom/downRoomConfirmation', { 901 proxy.download('/ota/orderRoom/downRoomConfirmation', {
876 ...obj 902 ...obj
877 }, `订房确认书.pdf`) 903 }, `订房确认书.pdf`, {}, 'application/pdf')
878 } else { 904 } else {
879 proxy.download('/ota/orderRoom/downRoomConfirmation', { 905 proxy.download('/ota/orderRoom/downRoomConfirmation', {
880 ...obj 906 ...obj
881 }, `Hotel Reservation.pdf`) 907 }, `Hotel Reservation.pdf`, {}, 'application/pdf')
882 } 908 }
883
884 } 909 }
885 910
886 // 套餐详情 911 // 套餐详情
...@@ -934,11 +959,11 @@ const showSJ = () => { ...@@ -934,11 +959,11 @@ const showSJ = () => {
934 // proxy.download(`/ota/norder/getReceipt/${obj.orderId}`, { 959 // proxy.download(`/ota/norder/getReceipt/${obj.orderId}`, {
935 // ...obj 960 // ...obj
936 // }, `Receipt_${new Date().getTime()}.pdf`) 961 // }, `Receipt_${new Date().getTime()}.pdf`)
937 962
938 // 报名 963 // 报名
939 proxy.download(`/ota/norder/getReceipt/${obj.orderId}`, { 964 proxy.download(`/ota/norder/getReceipt/${obj.orderId}`, {
940 ...obj 965 ...obj
941 }, `Receipt_${new Date().getTime()}.pdf`) 966 }, `Receipt_${new Date().getTime()}.pdf`, {}, 'application/pdf')
942 showSJDialog.value = false 967 showSJDialog.value = false
943 getData() 968 getData()
944 } 969 }
...@@ -985,27 +1010,27 @@ const showSJ = () => { ...@@ -985,27 +1010,27 @@ const showSJ = () => {
985 width: 100%; 1010 width: 100%;
986 max-width: 1000px; 1011 max-width: 1000px;
987 margin: 20px auto; 1012 margin: 20px auto;
988 1013
989 .head { 1014 .head {
990 background: #EFF2F7; 1015 background: #EFF2F7;
991 height: 50px; 1016 height: 50px;
992 font-size: 16px; 1017 font-size: 16px;
993 font-weight: 400; 1018 font-weight: 400;
994 } 1019 }
995 1020
996 th { 1021 th {
997 background: #FAFBFD; 1022 background: #FAFBFD;
998 font-size: 14px; 1023 font-size: 14px;
999 border-bottom: 1px solid #E5E5E5; 1024 border-bottom: 1px solid #E5E5E5;
1000 border-right: 1px solid #E5E5E5; 1025 border-right: 1px solid #E5E5E5;
1001 } 1026 }
1002 1027
1003 td { 1028 td {
1004 border-bottom: 1px solid #E5E5E5; 1029 border-bottom: 1px solid #E5E5E5;
1005 border-right: 1px solid #E5E5E5; 1030 border-right: 1px solid #E5E5E5;
1006 padding: 10px; 1031 padding: 10px;
1007 } 1032 }
1008 1033
1009 &.table-border { 1034 &.table-border {
1010 border-top: 1px solid #E5E5E5; 1035 border-top: 1px solid #E5E5E5;
1011 border-left: 1px solid #E5E5E5; 1036 border-left: 1px solid #E5E5E5;
...@@ -1024,23 +1049,23 @@ const showSJ = () => { ...@@ -1024,23 +1049,23 @@ const showSJ = () => {
1024 1049
1025 .result { 1050 .result {
1026 font-size: 22px; 1051 font-size: 22px;
1027 1052
1028 .flex { 1053 .flex {
1029 display: flex; 1054 display: flex;
1030 align-items: center; 1055 align-items: center;
1031 font-weight: 500; 1056 font-weight: 500;
1032 1057
1033 img { 1058 img {
1034 margin-right: 10px 1059 margin-right: 10px
1035 } 1060 }
1036 } 1061 }
1037 1062
1038 .priceb { 1063 .priceb {
1039 color: #7B7F83; 1064 color: #7B7F83;
1040 font-size: 16px; 1065 font-size: 16px;
1041 text-align: right; 1066 text-align: right;
1042 line-height: 50px; 1067 line-height: 50px;
1043 1068
1044 span { 1069 span {
1045 font-weight: bold; 1070 font-weight: bold;
1046 font-size: 22px; 1071 font-size: 22px;
...@@ -1053,7 +1078,7 @@ const showSJ = () => { ...@@ -1053,7 +1078,7 @@ const showSJ = () => {
1053 .skeletonBox { 1078 .skeletonBox {
1054 position: relative; 1079 position: relative;
1055 overflow: hidden; 1080 overflow: hidden;
1056 1081
1057 .btn-lineG { 1082 .btn-lineG {
1058 position: absolute; 1083 position: absolute;
1059 left: 0; 1084 left: 0;
...@@ -1063,7 +1088,7 @@ const showSJ = () => { ...@@ -1063,7 +1088,7 @@ const showSJ = () => {
1063 bottom: 0; 1088 bottom: 0;
1064 width: 200px; 1089 width: 200px;
1065 box-shadow: 0 0 1000px 500px rgba(255, 255, 255, 0.5); 1090 box-shadow: 0 0 1000px 500px rgba(255, 255, 255, 0.5);
1066 1091
1067 } 1092 }
1068 } 1093 }
1069 1094
...@@ -1075,26 +1100,26 @@ const showSJ = () => { ...@@ -1075,26 +1100,26 @@ const showSJ = () => {
1075 1100
1076 .priceBar { 1101 .priceBar {
1077 padding: 0 0 20px; 1102 padding: 0 0 20px;
1078 1103
1079 .flex { 1104 .flex {
1080 display: flex; 1105 display: flex;
1081 justify-content: right; 1106 justify-content: right;
1082 align-items: baseline; 1107 align-items: baseline;
1083 1108
1084 .item { 1109 .item {
1085 font-size: 16px; 1110 font-size: 16px;
1086 margin-right: 15px; 1111 margin-right: 15px;
1087 1112
1088 label { 1113 label {
1089 color: #95A1A6; 1114 color: #95A1A6;
1090 } 1115 }
1091 1116
1092 span { 1117 span {
1093 font-family: DIN Alternate; 1118 font-family: DIN Alternate;
1094 } 1119 }
1095 } 1120 }
1096 } 1121 }
1097 1122
1098 .size26 { 1123 .size26 {
1099 font-size: 26px; 1124 font-size: 26px;
1100 } 1125 }
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
40 <span>{{ b.id }}</span> 40 <span>{{ b.id }}</span>
41 <span class="fr text-warning status">{{ b.invoiceStr }}</span> 41 <span class="fr text-warning status">{{ b.invoiceStr }}</span>
42 </div> 42 </div>
43 43
44 <el-row align="middle" class="pd20 mt10" justify="space-between"> 44 <el-row align="middle" class="pd20 mt10" justify="space-between">
45 <el-col :lg="9" :md="12" :sm="12" :xs="24"> 45 <el-col :lg="9" :md="12" :sm="12" :xs="24">
46 <h3 class="m0">{{ b.name }}</h3> 46 <h3 class="m0">{{ b.name }}</h3>
...@@ -48,7 +48,9 @@ ...@@ -48,7 +48,9 @@
48 <!-- b.messageObj.ticketDate.name--> 48 <!-- b.messageObj.ticketDate.name-->
49 <!-- }}</p>--> 49 <!-- }}</p>-->
50 <p class="common"> 50 <p class="common">
51 {{ language == 0 ? "张数" : "Location" }}{{ b.messageObj.touristList.length }}{{ language == 0 ? "张" : "tickets" }} 51 {{ language == 0 ? "张数" : "Location" }}{{
52 b.messageObj.touristList.length
53 }}{{ language == 0 ? "张" : "tickets" }}
52 </p> 54 </p>
53 </el-col> 55 </el-col>
54 <el-col :lg="3" :md="6" :sm="6" :xs="6" class="text-center"> 56 <el-col :lg="3" :md="6" :sm="6" :xs="6" class="text-center">
...@@ -81,7 +83,7 @@ ...@@ -81,7 +83,7 @@
81 <span>{{ b.id }}</span> 83 <span>{{ b.id }}</span>
82 <span class="fr text-warning status">{{ b.invoiceStr }}</span> 84 <span class="fr text-warning status">{{ b.invoiceStr }}</span>
83 </div> 85 </div>
84 86
85 <el-row align="middle" class="pd20 mt10" justify="space-between"> 87 <el-row align="middle" class="pd20 mt10" justify="space-between">
86 <el-col :lg="9" :md="12" :sm="12" :xs="24"> 88 <el-col :lg="9" :md="12" :sm="12" :xs="24">
87 <h3 class="m0">{{ b.name }}</h3> 89 <h3 class="m0">{{ b.name }}</h3>
...@@ -89,7 +91,9 @@ ...@@ -89,7 +91,9 @@
89 b.messageObj.atName 91 b.messageObj.atName
90 }}</p> 92 }}</p>
91 <p class="common"> 93 <p class="common">
92 {{ language == 0 ? "张数" : "Location" }}{{ b.messageObj.orderCustomerList.length }}{{ language == 0 ? "张" : "tickets" }} 94 {{ language == 0 ? "张数" : "Location" }}{{
95 b.messageObj.orderCustomerList.length
96 }}{{ language == 0 ? "张" : "tickets" }}
93 </p> 97 </p>
94 </el-col> 98 </el-col>
95 <el-col :lg="3" :md="6" :sm="6" :xs="6" class="text-center"> 99 <el-col :lg="3" :md="6" :sm="6" :xs="6" class="text-center">
...@@ -174,7 +178,7 @@ ...@@ -174,7 +178,7 @@
174 <span>{{ language == 0 ? '订单编号:' : 'No.' }} {{ b.id }}</span> 178 <span>{{ language == 0 ? '订单编号:' : 'No.' }} {{ b.id }}</span>
175 <span class="fr text-warning status">{{ b.invoiceStr }}</span> 179 <span class="fr text-warning status">{{ b.invoiceStr }}</span>
176 </div> 180 </div>
177 181
178 <el-row align="middle" class="pd20 mt10" justify="space-between"> 182 <el-row align="middle" class="pd20 mt10" justify="space-between">
179 <el-col :lg="9" :md="12" :sm="12" :xs="24"> 183 <el-col :lg="9" :md="12" :sm="12" :xs="24">
180 <div v-if="b.orderType == 0"> 184 <div v-if="b.orderType == 0">
...@@ -239,7 +243,7 @@ ...@@ -239,7 +243,7 @@
239 </div> 243 </div>
240 </div> 244 </div>
241 </el-card> 245 </el-card>
242 246
243 <el-dialog 247 <el-dialog
244 v-model="showSJDialog" :close-on-click-modal="false" :close-on-press-escape="false" 248 v-model="showSJDialog" :close-on-click-modal="false" :close-on-press-escape="false"
245 :title="language==0?'开收据':'Issue a receipt'" width="460px" 249 :title="language==0?'开收据':'Issue a receipt'" width="460px"
...@@ -258,7 +262,7 @@ ...@@ -258,7 +262,7 @@
258 {{ remark }} 262 {{ remark }}
259 </div> 263 </div>
260 </div> 264 </div>
261 265
262 </el-dialog> 266 </el-dialog>
263 </div> 267 </div>
264 </template> 268 </template>
...@@ -313,10 +317,12 @@ onMounted(() => { ...@@ -313,10 +317,12 @@ onMounted(() => {
313 getList() 317 getList()
314 route.query.orderSn && getDataInfo() 318 route.query.orderSn && getDataInfo()
315 }) 319 })
320
316 async function getDataInfo() { 321 async function getDataInfo() {
317 const res = await getOrderDetail({ orderSn: route.query.orderSn }) 322 const res = await getOrderDetail({ orderSn: route.query.orderSn })
318 formDate.value = res.data 323 formDate.value = res.data
319 } 324 }
325
320 const getList = () => { 326 const getList = () => {
321 loading.value = true 327 loading.value = true
322 if (query.value.orderType == '5') { 328 if (query.value.orderType == '5') {
...@@ -489,12 +495,12 @@ const showSJ = (item) => { ...@@ -489,12 +495,12 @@ const showSJ = (item) => {
489 // 预约 495 // 预约
490 proxy.download(`/ota/norder/getReceipt/${obj.orderId}`, { 496 proxy.download(`/ota/norder/getReceipt/${obj.orderId}`, {
491 ...obj 497 ...obj
492 }, `Receipt_${new Date().getTime()}.pdf`) 498 }, `Receipt_${new Date().getTime()}.pdf`, {}, 'application/pdf')
493 } else { 499 } else {
494 // 报名 500 // 报名
495 proxy.download(`/ota/signOrder/getReceipt/${obj.orderId}`, { 501 proxy.download(`/ota/signOrder/getReceipt/${obj.orderId}`, {
496 ...obj 502 ...obj
497 }, `Receipt_${new Date().getTime()}.pdf`) 503 }, `Receipt_${new Date().getTime()}.pdf`, {}, 'application/pdf')
498 } 504 }
499 } 505 }
500 const submitSJ = () => { 506 const submitSJ = () => {
...@@ -559,11 +565,11 @@ const downloadAndSend = () => { ...@@ -559,11 +565,11 @@ const downloadAndSend = () => {
559 overflow: visible; 565 overflow: visible;
560 padding: 0 20px 15px; 566 padding: 0 20px 15px;
561 border-bottom: 1px solid #e5e5e5; 567 border-bottom: 1px solid #e5e5e5;
562 568
563 .fr { 569 .fr {
564 margin: -8px 0 0 570 margin: -8px 0 0
565 } 571 }
566 572
567 h3 { 573 h3 {
568 display: inline-block; 574 display: inline-block;
569 font-size: 16px; 575 font-size: 16px;
...@@ -587,28 +593,28 @@ const downloadAndSend = () => { ...@@ -587,28 +593,28 @@ const downloadAndSend = () => {
587 top: 0; 593 top: 0;
588 font-size: 12px; 594 font-size: 12px;
589 color: #FFFFFF; 595 color: #FFFFFF;
590 596
591 span { 597 span {
592 border-radius: 0px 10px 0px 10px; 598 border-radius: 0px 10px 0px 10px;
593 padding: 4px 10px; 599 padding: 4px 10px;
594 } 600 }
595 601
596 .bg-danger { 602 .bg-danger {
597 background: #E60012; 603 background: #E60012;
598 } 604 }
599 605
600 .bg-warning { 606 .bg-warning {
601 background: #e89f39; 607 background: #e89f39;
602 } 608 }
603 609
604 .bg-pink { 610 .bg-pink {
605 background: #F740A6; 611 background: #F740A6;
606 } 612 }
607 613
608 .bg-primary { 614 .bg-primary {
609 background: var(--el-color-primary) 615 background: var(--el-color-primary)
610 } 616 }
611 617
612 .bg-blue { 618 .bg-blue {
613 background: #00a0e9 619 background: #00a0e9
614 } 620 }
...@@ -620,38 +626,38 @@ const downloadAndSend = () => { ...@@ -620,38 +626,38 @@ const downloadAndSend = () => {
620 color: #000000; 626 color: #000000;
621 margin: 0 0 10px; 627 margin: 0 0 10px;
622 } 628 }
623 629
624 p { 630 p {
625 margin: 8px 0 0; 631 margin: 8px 0 0;
626 color: #707070; 632 color: #707070;
627 font-size: 14px; 633 font-size: 14px;
628 } 634 }
629 635
630 margin: 0 0 20px; 636 margin: 0 0 20px;
631 border: 1px solid #E5E5E5; 637 border: 1px solid #E5E5E5;
632 border-radius: 10px; 638 border-radius: 10px;
633 position: relative; 639 position: relative;
634 640
635 .bbody { 641 .bbody {
636 padding: 0 15px 20px; 642 padding: 0 15px 20px;
637 } 643 }
638 644
639 .title { 645 .title {
640 background: #F7F7F7; 646 background: #F7F7F7;
641 border-bottom: 1px solid #E5E5E5; 647 border-bottom: 1px solid #E5E5E5;
642 648
643 span { 649 span {
644 font-size: 14px; 650 font-size: 14px;
645 color: #4C5359; 651 color: #4C5359;
646 } 652 }
647 653
648 .status { 654 .status {
649 font-size: 12px; 655 font-size: 12px;
650 font-weight: bold; 656 font-weight: bold;
651 padding: 2px 10px; 657 padding: 2px 10px;
652 } 658 }
653 } 659 }
654 660
655 .title label { 661 .title label {
656 border-radius: 5px 0 5px 0; 662 border-radius: 5px 0 5px 0;
657 font-size: 12px; 663 font-size: 12px;
...@@ -659,15 +665,15 @@ const downloadAndSend = () => { ...@@ -659,15 +665,15 @@ const downloadAndSend = () => {
659 padding: 4px 10px; 665 padding: 4px 10px;
660 margin-right: 10px; 666 margin-right: 10px;
661 } 667 }
662 668
663 .blueTag { 669 .blueTag {
664 background-color: #1EC886; 670 background-color: #1EC886;
665 } 671 }
666 672
667 .purpleTag { 673 .purpleTag {
668 background-color: #717bef; 674 background-color: #717bef;
669 } 675 }
670 676
671 .orangeTag { 677 .orangeTag {
672 background-color: #ff8124; 678 background-color: #ff8124;
673 } 679 }
......
...@@ -3,90 +3,100 @@ ...@@ -3,90 +3,100 @@
3 <!-- 个人报名-国外--> 3 <!-- 个人报名-国外-->
4 <div class="box ph-30"> 4 <div class="box ph-30">
5 <el-card class="mb20"> 5 <el-card class="mb20">
6 <single-sign-step :activeStep="1" :language="language"/> 6 <single-sign-step :active-step="1" :language="language" />
7 </el-card> 7 </el-card>
8 8
9 <el-card :body-style="{'padding': '0'}"> 9 <el-card :body-style="{'padding': '0'}">
10 <match-info-row :match-id="matchId"/> 10 <match-info-row :match-id="matchId" />
11 <div class="pd20"> 11 <div class="pd20">
12 <el-row :gutter="20"> 12 <el-row :gutter="20">
13 <el-col :lg="6"> 13 <el-col :lg="6">
14 <div class="panel border"> 14 <div class="panel border">
15 <div class="panel-header "> 15 <div class="panel-header ">
16 <h3 class="panel-title" v-if="language==0">完善我的信息</h3> 16 <h3 v-if="language==0" class="panel-title">完善我的信息</h3>
17 <h3 class="panel-title" v-else>My Information</h3> 17 <h3 v-else class="panel-title">My Information</h3>
18 </div> 18 </div>
19 <div class="panel-body"> 19 <div class="panel-body">
20 <div v-if="form.danceMate"> 20 <div v-if="form.danceMate">
21 <div class="text-danger fontsize14 mb10" v-if="language==0">*如果您报名双人舞项目,请勾选您的舞伴</div> 21 <div v-if="language==0" class="text-danger fontsize14 mb10">*如果您报名双人舞项目,请勾选您的舞伴
22 <div class="text-danger fontsize14 mb10" v-else> 22 </div>
23 <div v-else class="text-danger fontsize14 mb10">
23 *Please select your dance partner if you are registering for a couple event 24 *Please select your dance partner if you are registering for a couple event
24 </div> 25 </div>
25 </div> 26 </div>
26 <div class="chooseForm" style="display: flex;flex-wrap: wrap;"> 27 <div class="chooseForm" style="display: flex;flex-wrap: wrap;">
27 <div @click="editPerson" class="mb20" style="width: 50%;text-align: center;"> 28 <div class="mb20" style="width: 50%;text-align: center;" @click="editPerson">
28 <el-avatar fit="cover" v-if="form.picUrl" :size="60" :src="fillImgUrl(form.picUrl)"/> 29 <el-avatar v-if="form.picUrl" :size="60" :src="fillImgUrl(form.picUrl)" fit="cover" />
29 <div v-else> 30 <div v-else>
30 <el-avatar fit="cover" v-if="form.sex == 0" :size="60" src="/img/head1.png"/> 31 <el-avatar v-if="form.sex == 0" :size="60" fit="cover" src="/img/head1.png" />
31 <el-avatar fit="cover" v-if="form.sex == 1" :size="60" src="/img/head0.png"/> 32 <el-avatar v-if="form.sex == 1" :size="60" fit="cover" src="/img/head0.png" />
32 </div> 33 </div>
33 <div class="text-center mt10"> 34 <div class="text-center mt10">
34 <span class="mName">{{ form.realName }}</span> 35 <span class="mName">{{ form.realName }}</span>
35 <el-icon size="20"> 36 <el-icon size="20">
36 <Edit/> 37 <Edit />
37 </el-icon> 38 </el-icon>
38 </div> 39 </div>
39 </div> 40 </div>
40 <!--舞伴--> 41 <!--舞伴-->
41 <div style="width:50%;text-align: center;" v-if="form.danceMate"> 42 <div v-if="form.danceMate" style="width:50%;text-align: center;">
42 <el-checkbox-group v-model="mateChosed" @change="changeMate"> 43 <el-checkbox-group v-model="mateChosed" @change="changeMate">
43 <el-checkbox :label="form.danceMate.id"> 44 <el-checkbox :label="form.danceMate.id">
44 <div> 45 <div>
45 <el-avatar fit="cover" v-if="form.danceMate.picUrl" :size="60" :src="fillImgUrl(form.danceMate.picUrl)"/> 46 <el-avatar
46 <el-avatar fit="cover" v-else-if="form.danceMate.sex == 0" :size="60" 47 v-if="form.danceMate.picUrl" :size="60" :src="fillImgUrl(form.danceMate.picUrl)"
47 src="/img/head1.png"/> 48 fit="cover"
48 <el-avatar fit="cover" v-else-if="form.danceMate.sex == 1" :size="60" 49 />
49 src="/img/head0.png"/> 50 <el-avatar
51 v-else-if="form.danceMate.sex == 0" :size="60" fit="cover"
52 src="/img/head1.png"
53 />
54 <el-avatar
55 v-else-if="form.danceMate.sex == 1" :size="60" fit="cover"
56 src="/img/head0.png"
57 />
50 <div class="text-center mt10" @click="editMate(form.danceMate)"> 58 <div class="text-center mt10" @click="editMate(form.danceMate)">
51 <span class="mName">{{ form.danceMate.realName }}</span> 59 <span class="mName">{{ form.danceMate.realName }}</span>
52 <el-icon @click.stop="editMate(form.danceMate)" size="20"> 60 <el-icon size="20" @click.stop="editMate(form.danceMate)">
53 <Edit/> 61 <Edit />
54 </el-icon> 62 </el-icon>
55 <!-- <el-icon @click.stop="delMate(form.danceMate)">--> 63 <!-- <el-icon @click.stop="delMate(form.danceMate)">-->
56 <!-- <Delete/>--> 64 <!-- <Delete/>-->
57 <!-- </el-icon>--> 65 <!-- </el-icon>-->
58 </div> 66 </div>
59 </div> 67 </div>
60 </el-checkbox> 68 </el-checkbox>
61 </el-checkbox-group> 69 </el-checkbox-group>
62 </div> 70 </div>
63 <!-- <div style="min-width:50%;" v-else @click="addMate" hidden>--> 71 <!-- <div style="min-width:50%;" v-else @click="addMate" hidden>-->
64 <!-- <div class="addBttn" style="margin: 0 auto">+</div>--> 72 <!-- <div class="addBttn" style="margin: 0 auto">+</div>-->
65 <!-- <div class="text-center mt10 text-primary text-sm">--> 73 <!-- <div class="text-center mt10 text-primary text-sm">-->
66 <!-- Please add your partner--> 74 <!-- Please add your partner-->
67 <!-- <el-icon>--> 75 <!-- <el-icon>-->
68 <!-- <Edit/>--> 76 <!-- <Edit/>-->
69 <!-- </el-icon>--> 77 <!-- </el-icon>-->
70 <!-- </div>--> 78 <!-- </div>-->
71 <!-- </div>--> 79 <!-- </div>-->
72 </div> 80 </div>
73 </div> 81 </div>
74 </div> 82 </div>
75 </el-col> 83 </el-col>
76 84
77 <el-col :lg="18"> 85 <el-col :lg="18">
78 <div class="panel border"> 86 <div class="panel border">
79 <div class="panel-header "> 87 <div class="panel-header ">
80 <h3 class="panel-title" v-if="language==0">可参与报名的项目</h3> 88 <h3 v-if="language==0" class="panel-title">可参与报名的项目</h3>
81 <h3 class="panel-title" v-else>Search Events</h3> 89 <h3 v-else class="panel-title">Search Events</h3>
82 <div class="fr"> 90 <div class="fr">
83 <el-input size="small" v-model="projectQuery.name" :prefix-icon="Search" @change="getProjectList" 91 <el-input
84 clearable/> 92 v-model="projectQuery.name" :prefix-icon="Search" clearable size="small"
93 @change="getProjectList"
94 />
85 </div> 95 </div>
86 </div> 96 </div>
87 <div v-loading="loadingProject" style="height: 55vh;overflow: auto;"> 97 <div v-loading="loadingProject" style="height: 55vh;overflow: auto;">
88 <el-checkbox-group v-model="projectIds"> 98 <el-checkbox-group v-model="projectIds">
89 <el-checkbox class="flexBetweenBox" v-for="c in projectList" :label="c.id" :key="c.id"> 99 <el-checkbox v-for="c in projectList" :key="c.id" :label="c.id" class="flexBetweenBox">
90 <div class="flexBetween w100"> 100 <div class="flexBetween w100">
91 <div class="l"> 101 <div class="l">
92 {{ c.code }}:{{ c.name }} 102 {{ c.code }}:{{ c.name }}
...@@ -96,8 +106,10 @@ ...@@ -96,8 +106,10 @@
96 </div> 106 </div>
97 </el-checkbox> 107 </el-checkbox>
98 </el-checkbox-group> 108 </el-checkbox-group>
99 <el-empty v-if="projectList.length==0" :image="`/img/order_no.png`" :image-size="228" 109 <el-empty
100 :description="language==0?'无可选项目':''"/> 110 v-if="projectList.length==0" :description="language==0?'无可选项目':''" :image="`/img/order_no.png`"
111 :image-size="228"
112 />
101 </div> 113 </div>
102 </div> 114 </div>
103 </el-col> 115 </el-col>
...@@ -106,13 +118,13 @@ ...@@ -106,13 +118,13 @@
106 <el-row class="mt20"> 118 <el-row class="mt20">
107 <el-col :span="24"> 119 <el-col :span="24">
108 <div class="text-center"> 120 <div class="text-center">
109 <el-button type="primary" class="btn-lineG w200px" round @click="signUp"> 121 <el-button class="btn-lineG w200px" round type="primary" @click="signUp">
110 {{ language == 0 ? '确定' : 'Confirm' }} 122 {{ language == 0 ? '确定' : 'Confirm' }}
111 </el-button> 123 </el-button>
112 </div> 124 </div>
113 </el-col> 125 </el-col>
114 </el-row> 126 </el-row>
115 127
116 <div class="m20"> 128 <div class="m20">
117 <!-- <el-button type="success" @click="importSportman">批量导入人员</el-button>--> 129 <!-- <el-button type="success" @click="importSportman">批量导入人员</el-button>-->
118 <!-- <el-button type="success" @click="addCoach">新增运动员</el-button>--> 130 <!-- <el-button type="success" @click="addCoach">新增运动员</el-button>-->
...@@ -124,27 +136,29 @@ ...@@ -124,27 +136,29 @@
124 {{ language == 0 ? '按人员查看报项' : 'Check Registrations by Participant' }} 136 {{ language == 0 ? '按人员查看报项' : 'Check Registrations by Participant' }}
125 </div> 137 </div>
126 </div> 138 </div>
127 <sign-info-table v-if="tableType==0" :match-id="matchId" 139 <sign-info-table
128 :extraform="extraform" :language="language" :list="signInfoList" 140 v-if="tableType==0" :extraform="extraform"
129 @editExtra="goPersonInfo"/> 141 :language="language" :list="signInfoList" :match-id="matchId"
130 <zu-table v-else :list="zuTableList" :language="language" @delete="removeThis"/> 142 @editExtra="goPersonInfo"
131 143 />
144 <zu-table v-else :language="language" :list="zuTableList" @delete="removeThis" />
145
132 <div v-if="showPersonList||myMemberTable.length>0"> 146 <div v-if="showPersonList||myMemberTable.length>0">
133 <el-row class="mt20"> 147 <el-row class="mt20">
134 <el-col :span="24"> 148 <el-col :span="24">
135 <el-button @click="addAccompany" type="primary" plain> 149 <el-button plain type="primary" @click="addAccompany">
136 {{ language == 0 ? '添加随行人员' : 'Add accompanying personnel' }} 150 {{ language == 0 ? '添加随行人员' : 'Add accompanying personnel' }}
137 </el-button> 151 </el-button>
138 </el-col> 152 </el-col>
139 </el-row> 153 </el-row>
140 <el-table class="mt20" :data="myMemberTable" border> 154 <el-table :data="myMemberTable" border class="mt20">
141 <el-table-column type="index" :label="language==0?'序号':'Index'" width="70" align="center"/> 155 <el-table-column :label="language==0?'序号':'Index'" align="center" type="index" width="70" />
142 <el-table-column :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/> 156 <el-table-column :label="language==0?'姓氏':'Surname'" min-width="100" prop="xing" />
143 <el-table-column :label="language==0?'名':'Name'" prop="ming" min-width="100"/> 157 <el-table-column :label="language==0?'名':'Name'" min-width="100" prop="ming" />
144 <el-table-column :label="language==0?'国家/地区':'Nationality'" prop="countryName" min-width="100"/> 158 <el-table-column :label="language==0?'国家/地区':'Nationality'" min-width="100" prop="countryName" />
145 <!-- <el-table-column :label="language==0?'证件号':'Valid Documents'" prop="idcCode" min-width="120"/>--> 159 <!-- <el-table-column :label="language==0?'证件号':'Valid Documents'" prop="idcCode" min-width="120"/>-->
146 <!-- <el-table-column label="Birthday" prop="birth"/>--> 160 <!-- <el-table-column label="Birthday" prop="birth"/>-->
147 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/> 161 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr" />
148 <el-table-column :label="language==0?'会员角色':'Role'" min-width="160"> 162 <el-table-column :label="language==0?'会员角色':'Role'" min-width="160">
149 <template #default="scope"> 163 <template #default="scope">
150 <div class="roletd"> 164 <div class="roletd">
...@@ -169,59 +183,59 @@ ...@@ -169,59 +183,59 @@
169 </el-table-column> 183 </el-table-column>
170 </el-table> 184 </el-table>
171 </div> 185 </div>
172 186
173 <div class="text-center mt20"> 187 <div class="text-center mt20">
174 <el-button type="primary" class="btn-lineG w200px" round @click="submitForm()"> 188 <el-button class="btn-lineG w200px" round type="primary" @click="submitForm()">
175 {{ language == 0 ? '预览报名信息' : 'Preview Registration Information' }} 189 {{ language == 0 ? '预览报名信息' : 'Preview Registration Information' }}
176 </el-button> 190 </el-button>
177 </div> 191 </div>
178 <!-- <div class="text-center mt20">--> 192 <!-- <div class="text-center mt20">-->
179 <!-- <el-button type="primary" class="" plain round @click="submitForm(0)">--> 193 <!-- <el-button type="primary" class="" plain round @click="submitForm(0)">-->
180 <!-- {{ language == 0 ? '保存暂不提交审核' : 'Save, Do Not Submit for Review Yet' }}--> 194 <!-- {{ language == 0 ? '保存暂不提交审核' : 'Save, Do Not Submit for Review Yet' }}-->
181 <!-- </el-button>--> 195 <!-- </el-button>-->
182 <!-- <el-button type="primary" class="btn-lineG w200px" round @click="submitForm(1)">--> 196 <!-- <el-button type="primary" class="btn-lineG w200px" round @click="submitForm(1)">-->
183 <!-- {{ language == 0 ? '提交审核' : 'Submit for review' }}--> 197 <!-- {{ language == 0 ? '提交审核' : 'Submit for review' }}-->
184 <!-- </el-button>--> 198 <!-- </el-button>-->
185 <!-- </div>--> 199 <!-- </div>-->
186 </div> 200 </div>
187 </el-card> 201 </el-card>
188 </div> 202 </div>
189 203
190 <dialogEditWdsf ref="dialogEditWdsfRef" @submitForm="changeMeDone"/> 204 <dialogEditWdsf ref="dialogEditWdsfRef" @submitForm="changeMeDone" />
191 <dialogEditAccompany ref="dialogEditAccompanyRef" @submitForm="getMyMemberTable"/> 205 <dialogEditAccompany ref="dialogEditAccompanyRef" @submitForm="getMyMemberTable" />
192 <addCoachEn ref="dialogAddCoachEnRef" @submitForm="getMyMemberTable"/> 206 <addCoachEn ref="dialogAddCoachEnRef" @submitForm="getMyMemberTable" />
193 <dialogExtraForm ref="popExtraForm" @submitForm="getSignInfoList"/> 207 <dialogExtraForm ref="popExtraForm" @submitForm="getSignInfoList" />
194 </div> 208 </div>
195 </template> 209 </template>
196 210
197 <script setup> 211 <script setup>
198 import {ref, reactive, toRefs} from 'vue' 212 import { ref, reactive, toRefs } from 'vue'
199 import * as match from '@/apiPc/match' 213 import * as match from '@/apiPc/match'
200 import {getCurrentInstance, onMounted} from '@vue/runtime-core' 214 import { getCurrentInstance, onMounted } from '@vue/runtime-core'
201 import DialogEditWdsf from './components/addWdsf' 215 import DialogEditWdsf from './components/addWdsf'
202 import DialogEditAccompany from './components/addAccompany' 216 import DialogEditAccompany from './components/addAccompany'
203 import AddCoachEn from './components/addCoach_en' 217 import AddCoachEn from './components/addCoach_en'
204 import DialogAllSportsmanList from './components/allSportsmanList' 218 import DialogAllSportsmanList from './components/allSportsmanList'
205 import DialogExtraForm from './components/extraForm' 219 import DialogExtraForm from './components/extraForm'
206 import {Search, Switch} from "@element-plus/icons-vue"; 220 import { Search, Switch } from '@element-plus/icons-vue'
207 221
208 const {proxy} = getCurrentInstance() 222 const { proxy } = getCurrentInstance()
209 const router = useRouter() 223 const router = useRouter()
210 const route = useRoute() 224 const route = useRoute()
211 import _ from 'lodash' 225 import _ from 'lodash'
212 import {ElMessage, ElMessageBox} from 'element-plus' 226 import { ElMessage, ElMessageBox } from 'element-plus'
213 import cache from "@/plugins/cache" 227 import cache from '@/plugins/cache'
214 import TeamSignStep from "@/viewsPc/match/components/teamSignStep" 228 import TeamSignStep from '@/viewsPc/match/components/teamSignStep'
215 import CoachInfoRow from "@/viewsPc/match/components/coachInfo-row" 229 import CoachInfoRow from '@/viewsPc/match/components/coachInfo-row'
216 import SignInfoTable from "@/viewsPc/match/components/signInfo-table" 230 import SignInfoTable from '@/viewsPc/match/components/signInfo-table'
217 import ZuTable from '@/viewsPc/match/components/zu-table' 231 import ZuTable from '@/viewsPc/match/components/zu-table'
218 import SingleSignStep from "@/viewsPc/match/components/singleSignStep"; 232 import SingleSignStep from '@/viewsPc/match/components/singleSignStep'
219 import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row"; 233 import MatchInfoRow from '@/viewsPc/match/components/matchInfo-row'
220 import useUserStore from "@/store/modules/user"; 234 import useUserStore from '@/store/modules/user'
221 import {getPerPersonList} from "@/apiPc/match"; 235 import { getPerPersonList } from '@/apiPc/match'
222 import {useStorage} from "@vueuse/core/index"; 236 import { useStorage } from '@vueuse/core/index'
223 237
224 const language= useStorage('language',0) 238 const language = useStorage('language', 0)
225 239
226 const data = reactive({ 240 const data = reactive({
227 coachForm: {}, activeStep: 2, 241 coachForm: {}, activeStep: 2,
...@@ -247,7 +261,7 @@ const data = reactive({ ...@@ -247,7 +261,7 @@ const data = reactive({
247 mateChosed: [], 261 mateChosed: [],
248 projectIds: [], 262 projectIds: [],
249 projectList: [], 263 projectList: [],
250 choosed2List: [], projectQuery: {}, tableType: 1, 264 choosed2List: [], projectQuery: {}, tableType: 1
251 }) 265 })
252 const { 266 const {
253 activeTeam, 267 activeTeam,
...@@ -303,15 +317,15 @@ function getMyInfo() { ...@@ -303,15 +317,15 @@ function getMyInfo() {
303 myId.value = res.data.id 317 myId.value = res.data.id
304 getProjectList() 318 getProjectList()
305 }).catch(err => { 319 }).catch(err => {
306 router.push({name: 'home'}) 320 router.push({ name: 'home' })
307 }) 321 })
308 } 322 }
309 323
310 function getMyMemberTable() { 324 function getMyMemberTable() {
311 // 325 //
312 match.getPerPersonList({cptId: matchId.value, searchLabels: '1,2,3,4,5,6'}, userId.value).then(res => { 326 match.getPerPersonList({ cptId: matchId.value, searchLabels: '1,2,3,4,5,6' }, userId.value).then(res => {
313 myMemberTable.value = res.rows 327 myMemberTable.value = res.rows
314 if(res.rows.length > 0){ 328 if (res.rows.length > 0) {
315 showPersonList.value = true 329 showPersonList.value = true
316 } 330 }
317 }) 331 })
...@@ -376,15 +390,15 @@ function submitForm(n) { ...@@ -376,15 +390,15 @@ function submitForm(n) {
376 } 390 }
377 return 391 return
378 } 392 }
379 393
380 if (signInfoType == '1') { 394 if (signInfoType == '1') {
381 ElMessageBox.confirm(language.value==0?'已报项,前往我的报项':'Reported items, go to my submission', 395 ElMessageBox.confirm(language.value == 0 ? '已报项,前往我的报项' : 'Reported items, go to my submission',
382 language.value==0?'提示':'Tips', { 396 language.value == 0 ? '提示' : 'Tips', {
383 confirmButtonText: language.value==0?'确定':'OK', 397 confirmButtonText: language.value == 0 ? '确定' : 'OK',
384 cancelButtonText: language.value==0?'取消':'Cancel', 398 cancelButtonText: language.value == 0 ? '取消' : 'Cancel',
385 type: 'warning' 399 type: 'warning'
386 }).then(() => { 400 }).then(() => {
387 router.push({name: 'myMatch'}) 401 router.push({ name: 'myMatch' })
388 }) 402 })
389 return 403 return
390 } 404 }
...@@ -406,12 +420,12 @@ function submitForm(n) { ...@@ -406,12 +420,12 @@ function submitForm(n) {
406 if (showPersonList.value) { 420 if (showPersonList.value) {
407 if (myMemberTable.value.length == 0) { 421 if (myMemberTable.value.length == 0) {
408 ElMessageBox.confirm(language.value == 0 ? '是否继续添加随行人员?' : 'Do you want to add casual personnel?', 422 ElMessageBox.confirm(language.value == 0 ? '是否继续添加随行人员?' : 'Do you want to add casual personnel?',
409 language.value == 0 ? '提示' : 'Tip', { 423 language.value == 0 ? '提示' : 'Tip', {
410 confirmButtonText: language.value == 0 ? '是' : 'Yes', 424 confirmButtonText: language.value == 0 ? '是' : 'Yes',
411 cancelButtonText: language.value == 0 ? '否,进入下一步' : 'NO,Go Next', 425 cancelButtonText: language.value == 0 ? '否,进入下一步' : 'NO,Go Next',
412 type: 'warning' 426 type: 'warning'
413 }).then(() => { 427 }).then(() => {
414 428
415 }).catch(() => { 429 }).catch(() => {
416 commit() 430 commit()
417 }) 431 })
...@@ -420,11 +434,11 @@ function submitForm(n) { ...@@ -420,11 +434,11 @@ function submitForm(n) {
420 } 434 }
421 } else { 435 } else {
422 ElMessageBox.confirm(language.value == 0 ? '是否添加随行人员?' : 'Do you want to add casual personnel?', 436 ElMessageBox.confirm(language.value == 0 ? '是否添加随行人员?' : 'Do you want to add casual personnel?',
423 language.value == 0 ? '提示' : 'Tip', { 437 language.value == 0 ? '提示' : 'Tip', {
424 confirmButtonText: language.value == 0 ? '是' : 'Yes', 438 confirmButtonText: language.value == 0 ? '是' : 'Yes',
425 cancelButtonText: language.value == 0 ? '否,进入下一步' : 'NO,Go Next', 439 cancelButtonText: language.value == 0 ? '否,进入下一步' : 'NO,Go Next',
426 type: 'warning' 440 type: 'warning'
427 }).then(() => { 441 }).then(() => {
428 showPersonList.value = true 442 showPersonList.value = true
429 }).catch(() => { 443 }).catch(() => {
430 commit() 444 commit()
...@@ -473,13 +487,12 @@ function commit() { ...@@ -473,13 +487,12 @@ function commit() {
473 // }) 487 // })
474 // })} 488 // })}
475 // ) 489 // )
476
477 } 490 }
478 491
479 function getProjectList() { 492 function getProjectList() {
480 projectIds.value = [] 493 projectIds.value = []
481 loadingProject.value = true 494 loadingProject.value = true
482 //根据已选人员id 获取项目列表 495 // 根据已选人员id 获取项目列表
483 var obj = {} 496 var obj = {}
484 if (mateChosed.value.length > 0 && form.value.danceMate) { 497 if (mateChosed.value.length > 0 && form.value.danceMate) {
485 obj = { 498 obj = {
...@@ -532,7 +545,7 @@ function addCoach() { ...@@ -532,7 +545,7 @@ function addCoach() {
532 } 545 }
533 546
534 function delperson(p) { 547 function delperson(p) {
535 //删除团队下的人 548 // 删除团队下的人
536 let text = '' 549 let text = ''
537 let t = '提示' 550 let t = '提示'
538 let s = '确定' 551 let s = '确定'
...@@ -562,21 +575,21 @@ function delperson(p) { ...@@ -562,21 +575,21 @@ function delperson(p) {
562 575
563 function signUp() { 576 function signUp() {
564 if (projectIds.value.length == 0) { 577 if (projectIds.value.length == 0) {
565 if (language.value == 0) { 578 if (language.value == 0) {
566 ElMessage.warning('请选择项目') 579 ElMessage.warning('请选择项目')
567 } else { 580 } else {
568 ElMessage.warning('Please select project') 581 ElMessage.warning('Please select project')
569 } 582 }
570 return 583 return
571 } 584 }
572 let obj = { 585 const obj = {
573 projectIds: projectIds.value.toString(), 586 projectIds: projectIds.value.toString(),
574 groupId: 0 587 groupId: 0
575 } 588 }
576 if (mateChosed.value.length > 0 && form.value.danceMate) { 589 if (mateChosed.value.length > 0 && form.value.danceMate) {
577 obj.athleteIds= `${myId.value},${form.value.danceMate?.id}` 590 obj.athleteIds = `${myId.value},${form.value.danceMate?.id}`
578 } else { 591 } else {
579 obj.athleteIds= myId.value 592 obj.athleteIds = myId.value
580 } 593 }
581 match.sportsmanDone(obj).then(res => { 594 match.sportsmanDone(obj).then(res => {
582 getSignInfoList() 595 getSignInfoList()
...@@ -586,11 +599,11 @@ function signUp() { ...@@ -586,11 +599,11 @@ function signUp() {
586 599
587 function removeThis(id) { 600 function removeThis(id) {
588 ElMessageBox.confirm(language.value == 0 ? '确定移除这条报项吗?' : 'Are you sure to remove this report item', 601 ElMessageBox.confirm(language.value == 0 ? '确定移除这条报项吗?' : 'Are you sure to remove this report item',
589 language.value == 0 ? '提示' : 'Tips', { 602 language.value == 0 ? '提示' : 'Tips', {
590 confirmButtonText: language.value == 0 ? '确定' : 'Confirm', 603 confirmButtonText: language.value == 0 ? '确定' : 'Confirm',
591 cancelButtonText: language.value == 0 ? '取消' : 'Cancel', 604 cancelButtonText: language.value == 0 ? '取消' : 'Cancel',
592 type: 'warning' 605 type: 'warning'
593 }).then(() => { 606 }).then(() => {
594 match.deleteSign(id).then(res => { 607 match.deleteSign(id).then(res => {
595 // 重新获取已报名信息 608 // 重新获取已报名信息
596 ElMessage.success(language.value == 0 ? '已移除该报项' : 'success') 609 ElMessage.success(language.value == 0 ? '已移除该报项' : 'success')
...@@ -620,13 +633,13 @@ function goMySign() { ...@@ -620,13 +633,13 @@ function goMySign() {
620 const goPersonInfo = (row) => { 633 const goPersonInfo = (row) => {
621 if (signInfoType == '1') { 634 if (signInfoType == '1') {
622 ElMessageBox.alert( 635 ElMessageBox.alert(
623 language.value == 0 ? '已报项,前往我的报项' : 'Reported items, go to my submission', 636 language.value == 0 ? '已报项,前往我的报项' : 'Reported items, go to my submission',
624 language.value == 0 ? '提示' : 'Tips', { 637 language.value == 0 ? '提示' : 'Tips', {
625 confirmButtonText: 'OK', 638 confirmButtonText: 'OK',
626 callback: (Action) => { 639 callback: (Action) => {
627 router.push({name: 'myMatch'}) 640 router.push({ name: 'myMatch' })
628 } 641 }
629 }) 642 })
630 return 643 return
631 } 644 }
632 // 完善补充信息 645 // 完善补充信息
...@@ -634,12 +647,12 @@ const goPersonInfo = (row) => { ...@@ -634,12 +647,12 @@ const goPersonInfo = (row) => {
634 // debugger 647 // debugger
635 const params = { 648 const params = {
636 matchId: matchId.value, 649 matchId: matchId.value,
637 title: language.value==0?'完善补充信息':'Complete the supplementary information', 650 title: language.value == 0 ? '完善补充信息' : 'Complete the supplementary information',
638 participantsInfoArr: extraform.value, 651 participantsInfoArr: extraform.value,
639 personId: row.personInfo.id, 652 personId: row.personInfo.id,
640 extraId: row.extraPersonInfo?.id || 0, 653 extraId: row.extraPersonInfo?.id || 0,
641 isNational:true 654 isNational: true
642 655
643 } 656 }
644 proxy.$refs['popExtraForm'].open(_.cloneDeep(params)) 657 proxy.$refs['popExtraForm'].open(_.cloneDeep(params))
645 } 658 }
...@@ -647,7 +660,7 @@ const goPersonInfo = (row) => { ...@@ -647,7 +660,7 @@ const goPersonInfo = (row) => {
647 function downloadVoucher() { 660 function downloadVoucher() {
648 // 下载凭证 661 // 下载凭证
649 proxy.download( 662 proxy.download(
650 `/pdf/getPayedOrderPdf/${matchId.value}/${groupId.value || 0}`, {}, '报项凭证.pdf' 663 `/pdf/getPayedOrderPdf/${matchId.value}/${groupId.value || 0}`, {}, '报项凭证.pdf', {}, 'application/pdf'
651 ) 664 )
652 } 665 }
653 666
...@@ -662,16 +675,17 @@ function addMate() { ...@@ -662,16 +675,17 @@ function addMate() {
662 proxy.$refs['dialogEditWdsfRef'].open({ 675 proxy.$refs['dialogEditWdsfRef'].open({
663 title: language.value == 0 ? '添加舞伴' : 'Add My Mate', 676 title: language.value == 0 ? '添加舞伴' : 'Add My Mate',
664 isMe: false, 677 isMe: false,
665 cptId:matchId.value, 678 cptId: matchId.value,
666 id: 0 679 id: 0
667 }) 680 })
668 } 681 }
682
669 function editMate(obj) { 683 function editMate(obj) {
670 proxy.$refs['dialogEditWdsfRef'].open({ 684 proxy.$refs['dialogEditWdsfRef'].open({
671 title: language.value == 0 ? '编辑舞伴' : 'Edit My Mate', 685 title: language.value == 0 ? '编辑舞伴' : 'Edit My Mate',
672 isMe: false, 686 isMe: false,
673 form: obj || {}, 687 form: obj || {},
674 cptId:matchId.value, 688 cptId: matchId.value,
675 id: obj?.id || 0 689 id: obj?.id || 0
676 }) 690 })
677 } 691 }
...@@ -689,19 +703,18 @@ function delMate(mate) { ...@@ -689,19 +703,18 @@ function delMate(mate) {
689 } 703 }
690 704
691 function changeMate(e) { 705 function changeMate(e) {
692 console.log(e, mateChosed.value,form.value.danceMate.passportUrl) 706 console.log(e, mateChosed.value, form.value.danceMate.passportUrl)
693 if(form.value.danceMate.passportUrl==''||!form.value.danceMate.passportUrl){ 707 if (form.value.danceMate.passportUrl == '' || !form.value.danceMate.passportUrl) {
694 mateChosed.value = [] 708 mateChosed.value = []
695 ElMessageBox.confirm(language.value == 0 ? '请先上传舞伴的有效证件' : 'Please upload the valid certificate of the teammate', 709 ElMessageBox.confirm(language.value == 0 ? '请先上传舞伴的有效证件' : 'Please upload the valid certificate of the teammate',
696 language.value == 0 ? '提示' : 'Tip', 710 language.value == 0 ? '提示' : 'Tip',
697 { 711 {
698 confirmButtonText: language.value == 0 ? '确定' : 'Yes', 712 confirmButtonText: language.value == 0 ? '确定' : 'Yes',
699 cancelButtonText: language.value == 0 ? '取消' : 'Cancel', 713 cancelButtonText: language.value == 0 ? '取消' : 'Cancel'
700 }).then(()=>{ 714 }).then(() => {
701 editMate(form.value.danceMate) 715 editMate(form.value.danceMate)
702 return 716 }).catch(() => {
703 }).catch(()=>{ 717
704 return
705 }) 718 })
706 } 719 }
707 getProjectList() 720 getProjectList()
...@@ -716,13 +729,14 @@ function switchTabletype() { ...@@ -716,13 +729,14 @@ function switchTabletype() {
716 } 729 }
717 </script> 730 </script>
718 731
719 <style scoped lang="scss"> 732 <style lang="scss" scoped>
720 :deep(.el-checkbox__label) { 733 :deep(.el-checkbox__label) {
721 flex: 1 1 auto; 734 flex: 1 1 auto;
722 } 735 }
723 736
724 .flexBetweenBox { 737 .flexBetweenBox {
725 width: 100%;margin-right: 0; 738 width: 100%;
739 margin-right: 0;
726 height: auto; 740 height: auto;
727 border-bottom: 1px solid #eee; 741 border-bottom: 1px solid #eee;
728 padding: 0 10px; 742 padding: 0 10px;
...@@ -735,7 +749,7 @@ function switchTabletype() { ...@@ -735,7 +749,7 @@ function switchTabletype() {
735 .flexBetween { 749 .flexBetween {
736 padding: 10px; 750 padding: 10px;
737 border-left: 1px solid #eee; 751 border-left: 1px solid #eee;
738 752
739 .l { 753 .l {
740 div { 754 div {
741 margin: 4px 0 0; 755 margin: 4px 0 0;
...@@ -766,16 +780,16 @@ function switchTabletype() { ...@@ -766,16 +780,16 @@ function switchTabletype() {
766 margin: 0 0 20px; 780 margin: 0 0 20px;
767 display: flex; 781 display: flex;
768 justify-content: space-between; 782 justify-content: space-between;
769 783
770 button { 784 button {
771 position: relative; 785 position: relative;
772 margin: 10px; 786 margin: 10px;
773 } 787 }
774 788
775 .choseItem { 789 .choseItem {
776 margin: 10px; 790 margin: 10px;
777 position: relative; 791 position: relative;
778 792
779 .poClose { 793 .poClose {
780 position: absolute; 794 position: absolute;
781 right: -6px; 795 right: -6px;
...@@ -790,18 +804,18 @@ function switchTabletype() { ...@@ -790,18 +804,18 @@ function switchTabletype() {
790 background: rgba(245, 247, 249, 0.38); 804 background: rgba(245, 247, 249, 0.38);
791 padding: 20px 40px 10px; 805 padding: 20px 40px 10px;
792 } 806 }
793 807
794 .el-checkbox { 808 .el-checkbox {
795 height: auto; 809 height: auto;
796 margin-right: 20px; 810 margin-right: 20px;
797 } 811 }
798 812
799 :deep(.el-checkbox__input) { 813 :deep(.el-checkbox__input) {
800 position: absolute; 814 position: absolute;
801 right: 0; 815 right: 0;
802 top: 0; 816 top: 0;
803 } 817 }
804 818
805 .name { 819 .name {
806 text-align: center; 820 text-align: center;
807 } 821 }
...@@ -820,7 +834,7 @@ function switchTabletype() { ...@@ -820,7 +834,7 @@ function switchTabletype() {
820 margin: 5px 0; 834 margin: 5px 0;
821 color: #4C5359; 835 color: #4C5359;
822 font-size: 14px; 836 font-size: 14px;
823 837
824 label { 838 label {
825 font-size: 14px; 839 font-size: 14px;
826 margin-right: 14px 840 margin-right: 14px
...@@ -833,13 +847,13 @@ function switchTabletype() { ...@@ -833,13 +847,13 @@ function switchTabletype() {
833 color: #4C5359; 847 color: #4C5359;
834 display: flex; 848 display: flex;
835 justify-content: center; 849 justify-content: center;
836 850
837 div { 851 div {
838 padding: 20px; 852 padding: 20px;
839 position: relative; 853 position: relative;
840 cursor: pointer; 854 cursor: pointer;
841 } 855 }
842 856
843 div:first-child::after { 857 div:first-child::after {
844 content: ''; 858 content: '';
845 position: absolute; 859 position: absolute;
...@@ -851,10 +865,10 @@ function switchTabletype() { ...@@ -851,10 +865,10 @@ function switchTabletype() {
851 bottom: 0; 865 bottom: 0;
852 margin: auto; 866 margin: auto;
853 } 867 }
854 868
855 .active { 869 .active {
856 color: var(--el-color-primary); 870 color: var(--el-color-primary);
857 871
858 &::before { 872 &::before {
859 width: 33px; 873 width: 33px;
860 content: ''; 874 content: '';
...@@ -875,6 +889,13 @@ function switchTabletype() { ...@@ -875,6 +889,13 @@ function switchTabletype() {
875 display: inline-block 889 display: inline-block
876 } 890 }
877 } 891 }
878 .mName{color: #000;font-size: 15px;display: inline-block;max-width: 6.5em;text-overflow: ellipsis; 892
879 overflow: hidden;} 893 .mName {
894 color: #000;
895 font-size: 15px;
896 display: inline-block;
897 max-width: 6.5em;
898 text-overflow: ellipsis;
899 overflow: hidden;
900 }
880 </style> 901 </style>
......
...@@ -711,7 +711,7 @@ const goPersonInfo = (row) => { ...@@ -711,7 +711,7 @@ const goPersonInfo = (row) => {
711 function downloadVoucher() { 711 function downloadVoucher() {
712 // 下载凭证 712 // 下载凭证
713 proxy.download( 713 proxy.download(
714 `/pdf/getPayedOrderPdf/${matchId.value}/${groupId.value || 0}`, {}, '报项凭证.pdf' 714 `/pdf/getPayedOrderPdf/${matchId.value}/${groupId.value || 0}`, {}, '报项凭证.pdf', {}, 'application/pdf'
715 ) 715 )
716 } 716 }
717 717
......
...@@ -2,32 +2,37 @@ ...@@ -2,32 +2,37 @@
2 <div> 2 <div>
3 <div class="box ph-30"> 3 <div class="box ph-30">
4 <el-card class="mb20"> 4 <el-card class="mb20">
5 <team-sign-step :activeStep="activeStep" :language="language"/> 5 <team-sign-step :active-step="activeStep" :language="language" />
6 </el-card> 6 </el-card>
7 7
8 <el-card :body-style="{'padding-top': '0'}"> 8 <el-card :body-style="{'padding-top': '0'}">
9 <el-row class="mt20" :gutter="20"> 9 <el-row :gutter="20" class="mt20">
10 <el-col :lg="8"> 10 <el-col :lg="8">
11 <div class="panel border"> 11 <div class="panel border">
12 <div class="panel-header "> 12 <div class="panel-header ">
13 <h3 class="panel-title" v-if="language==0">选择参赛运动员清单</h3> 13 <h3 v-if="language==0" class="panel-title">选择参赛运动员清单</h3>
14 <h3 class="panel-title" v-else>Select list of participating athletes</h3> 14 <h3 v-else class="panel-title">Select list of participating athletes</h3>
15 <a class="fr" @click="emptyChoosed">{{ language == 0 ? '清空' : 'Empty' }}</a> 15 <a class="fr" @click="emptyChoosed">{{ language == 0 ? '清空' : 'Empty' }}</a>
16 </div> 16 </div>
17 <div class="panel-body" style="padding: 10px"> 17 <div class="panel-body" style="padding: 10px">
18 <div style="margin: 0 4px 10px"> 18 <div style="margin: 0 4px 10px">
19 <el-input size="small" v-model="athletesQuery.name" :prefix-icon="Search" 19 <el-input
20 @change="queryAthletes" 20 v-model="athletesQuery.name" :prefix-icon="Search" clearable
21 clearable/> 21 size="small"
22 @change="queryAthletes"
23 />
22 </div> 24 </div>
23 <div class="noPicChooseForm" id="chooseArr"> 25 <div id="chooseArr" class="noPicChooseForm">
24 <el-checkbox-group v-model="choosedchoosed" @change="changechoosed"> 26 <el-checkbox-group v-model="choosedchoosed" @change="changechoosed">
25 <el-button id="addRef" plain @click="chooseSportman">+{{ language == 0 ? '选择' : 'add' }}</el-button> 27 <el-button id="addRef" plain @click="chooseSportman">+{{
28 language == 0 ? '选择' : 'add'
29 }}
30 </el-button>
26 <el-checkbox v-for="c in choosedListBak" :value="c.id" border> 31 <el-checkbox v-for="c in choosedListBak" :value="c.id" border>
27 <p class="name">{{ c.realName }} 32 <p class="name">{{ c.realName }}
28 <!-- ({{ c.sexStr }})--> 33 <!-- ({{ c.sexStr }})-->
29 <img v-if="c.sex=='0'" src="@/assets/img/female.png"/> 34 <img v-if="c.sex=='0'" src="@/assets/img/female.png">
30 <img v-if="c.sex=='1'" src="@/assets/img/male.png"/> 35 <img v-if="c.sex=='1'" src="@/assets/img/male.png">
31 </p> 36 </p>
32 </el-checkbox> 37 </el-checkbox>
33 </el-checkbox-group> 38 </el-checkbox-group>
...@@ -38,25 +43,27 @@ ...@@ -38,25 +43,27 @@
38 <el-col :lg="8"> 43 <el-col :lg="8">
39 <div class="panel border"> 44 <div class="panel border">
40 <div class="panel-header "> 45 <div class="panel-header ">
41 <h3 class="panel-title" v-if="language==0">选择一个参赛组合</h3> 46 <h3 v-if="language==0" class="panel-title">选择一个参赛组合</h3>
42 <h3 class="panel-title" v-else>Select a Participating team</h3> 47 <h3 v-else class="panel-title">Select a Participating team</h3>
43 <a class="fr" @click="emptyChangechoosed">{{ language == 0 ? '清空' : 'Empty' }}</a> 48 <a class="fr" @click="emptyChangechoosed">{{ language == 0 ? '清空' : 'Empty' }}</a>
44 </div> 49 </div>
45 <div class="panel-body" style="padding: 10px"> 50 <div class="panel-body" style="padding: 10px">
46 <div class="mb20"> 51 <div class="mb20">
47 <el-input size="small" v-model="zuQuery.name" :prefix-icon="Search" 52 <el-input
48 @change="queryTeam" clearable/> 53 v-model="zuQuery.name" :prefix-icon="Search" clearable
54 size="small" @change="queryTeam"
55 />
49 </div> 56 </div>
50 <div class="chooseForm"> 57 <div class="chooseForm">
51 <el-checkbox-group v-model="choosedchoosed" @change="changechoosed"> 58 <el-checkbox-group v-model="choosedchoosed" @change="changechoosed">
52 <!-- v-show="choosedchoosed.indexOf(c.id) !== -1"--> 59 <!-- v-show="choosedchoosed.indexOf(c.id) !== -1"-->
53 <el-checkbox v-for="c in choosed2Listbak" :value="c.id" checked> 60 <el-checkbox v-for="c in choosed2Listbak" :value="c.id" checked>
54 <el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/> 61 <el-avatar v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)" fit="cover" />
55 <el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/> 62 <el-avatar v-else-if="c.sex == 0" :size="60" fit="cover" src="/img/head1.png" />
56 <el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/> 63 <el-avatar v-else-if="c.sex == 1" :size="60" fit="cover" src="/img/head0.png" />
57 <p class="name">{{ c.realName }} 64 <p class="name">{{ c.realName }}
58 <img v-if="c.sex=='0'" src="@/assets/img/female.png"/> 65 <img v-if="c.sex=='0'" src="@/assets/img/female.png">
59 <img v-if="c.sex=='1'" src="@/assets/img/male.png"/> 66 <img v-if="c.sex=='1'" src="@/assets/img/male.png">
60 <!-- <el-icon @click.stop="editPerson(c.id)">--> 67 <!-- <el-icon @click.stop="editPerson(c.id)">-->
61 <!-- <Edit/>--> 68 <!-- <Edit/>-->
62 <!-- </el-icon>--> 69 <!-- </el-icon>-->
...@@ -70,17 +77,19 @@ ...@@ -70,17 +77,19 @@
70 <el-col :lg="8"> 77 <el-col :lg="8">
71 <div class="panel border"> 78 <div class="panel border">
72 <div class="panel-header "> 79 <div class="panel-header ">
73 <h3 class="panel-title" v-if="language==0">可参与报名的项目</h3> 80 <h3 v-if="language==0" class="panel-title">可参与报名的项目</h3>
74 <h3 class="panel-title" v-else>Search Events</h3> 81 <h3 v-else class="panel-title">Search Events</h3>
75 <div class="fr"> 82 <div class="fr">
76 <el-input size="small" v-model="projectQuery.name" :prefix-icon="Search" 83 <el-input
77 @change="getProjectList" 84 v-model="projectQuery.name" :prefix-icon="Search" clearable
78 clearable/> 85 size="small"
86 @change="getProjectList"
87 />
79 </div> 88 </div>
80 </div> 89 </div>
81 <div v-loading="loadingProject" id="projectbox" style="height: 60vh;overflow: auto;"> 90 <div id="projectbox" v-loading="loadingProject" style="height: 60vh;overflow: auto;">
82 <el-checkbox-group v-model="projectIds" @change="changeProject"> 91 <el-checkbox-group v-model="projectIds" @change="changeProject">
83 <el-checkbox class="flexBetweenBox" v-for="c in projectList" :value="c.id" :key="c.id"> 92 <el-checkbox v-for="c in projectList" :key="c.id" :value="c.id" class="flexBetweenBox">
84 <div class="flexBetween w100"> 93 <div class="flexBetween w100">
85 <div class="l"> 94 <div class="l">
86 {{ c.code }}:{{ c.name }} 95 {{ c.code }}:{{ c.name }}
...@@ -90,8 +99,10 @@ ...@@ -90,8 +99,10 @@
90 </div> 99 </div>
91 </el-checkbox> 100 </el-checkbox>
92 </el-checkbox-group> 101 </el-checkbox-group>
93 <el-empty v-if="projectList.length==0" :image="`/img/order_no.png`" :image-size="228" 102 <el-empty
94 :description="language==0?'无可选项目':''"/> 103 v-if="projectList.length==0" :description="language==0?'无可选项目':''" :image="`/img/order_no.png`"
104 :image-size="228"
105 />
95 </div> 106 </div>
96 </div> 107 </div>
97 </el-col> 108 </el-col>
...@@ -99,17 +110,19 @@ ...@@ -99,17 +110,19 @@
99 <el-row class="mt20"> 110 <el-row class="mt20">
100 <el-col :span="24"> 111 <el-col :span="24">
101 <div class="text-center"> 112 <div class="text-center">
102 <el-button type="primary" class="btn-lineG w200px" id="signUpBtn" 113 <el-button
103 :disabled="projectIds.length==0||choosedchoosed.length==0" round @click="signUp"> 114 id="signUpBtn" :disabled="projectIds.length==0||choosedchoosed.length==0" class="btn-lineG w200px"
115 round type="primary" @click="signUp"
116 >
104 {{ language == 0 ? '确定' : 'Confirm' }} 117 {{ language == 0 ? '确定' : 'Confirm' }}
105 </el-button> 118 </el-button>
106 </div> 119 </div>
107 </el-col> 120 </el-col>
108 </el-row> 121 </el-row>
109 </el-card> 122 </el-card>
110 123
111 <el-card class="mt20" :body-style="{'padding': '0'}"> 124 <el-card :body-style="{'padding': '0'}" class="mt20">
112 <coach-info-row :match-id="matchId" :group-id="groupId" :language="language"/> 125 <coach-info-row :group-id="groupId" :language="language" :match-id="matchId" />
113 <div class="m20"> 126 <div class="m20">
114 <!-- <el-button type="success" @click="importSportman">批量导入人员</el-button>--> 127 <!-- <el-button type="success" @click="importSportman">批量导入人员</el-button>-->
115 <!-- <el-button type="success" @click="addCoach">新增运动员</el-button>--> 128 <!-- <el-button type="success" @click="addCoach">新增运动员</el-button>-->
...@@ -129,71 +142,75 @@ ...@@ -129,71 +142,75 @@
129 <!-- {{ language == 0 ? '按组别查看报项' : 'Check Registrations by Group' }}--> 142 <!-- {{ language == 0 ? '按组别查看报项' : 'Check Registrations by Group' }}-->
130 <!-- </el-button>--> 143 <!-- </el-button>-->
131 <!-- </div>--> 144 <!-- </div>-->
132 <sign-info-table v-if="tableType==0" :match-id="matchId" 145 <sign-info-table
133 :extraform="extraform" :list="signInfoList" 146 v-if="tableType==0" :extraform="extraform"
134 @editExtra="goPersonInfo"/> 147 :list="signInfoList" :match-id="matchId"
135 <zu-table v-else :list="zuTableList" @delete="removeThis"/> 148 @editExtra="goPersonInfo"
149 />
150 <zu-table v-else :list="zuTableList" @delete="removeThis" />
136 <div class="text-center mt20"> 151 <div class="text-center mt20">
137 <el-button type="primary" class="w200px" plain round @click="goPrev()"> 152 <el-button class="w200px" plain round type="primary" @click="goPrev()">
138 {{ language == 0 ? "上一步" : 'Go back' }} 153 {{ language == 0 ? "上一步" : 'Go back' }}
139 </el-button> 154 </el-button>
140 <el-button type="primary" class="btn-lineG w200px" round @click="submitForm()"> 155 <el-button class="btn-lineG w200px" round type="primary" @click="submitForm()">
141 {{ language == 0 ? '预览报名信息' : 'Preview registration information' }} 156 {{ language == 0 ? '预览报名信息' : 'Preview registration information' }}
142 </el-button> 157 </el-button>
143 </div> 158 </div>
144 </div> 159 </div>
145 </el-card> 160 </el-card>
146 </div> 161 </div>
147 162
148 <dialogAddCoach ref="dialogAddCoachRef"/> 163 <dialogAddCoach ref="dialogAddCoachRef" />
149 <dialogAllSportsmanList ref="dialogAllSportsmanListRef" @transfer="getChoosed" @submitForm="getSignInfoList"/> 164 <dialogAllSportsmanList ref="dialogAllSportsmanListRef" @submitForm="getSignInfoList" @transfer="getChoosed" />
150 <dialogImport ref="dialogImportProps" @submitForm="getMySignInfo"/> 165 <dialogImport ref="dialogImportProps" @submitForm="getMySignInfo" />
151 <el-dialog v-model="showResult" :close-on-click-modal="false" :show-close="false"> 166 <el-dialog v-model="showResult" :close-on-click-modal="false" :show-close="false">
152 <el-result icon="success" :title="language==0?'报名成功':'Sign up successful'"> 167 <el-result :title="language==0?'报名成功':'Sign up successful'" icon="success">
153 <template #extra> 168 <template #extra>
154 <el-button type="primary" @click="downloadVoucher">下载凭证</el-button> 169 <el-button type="primary" @click="downloadVoucher">下载凭证</el-button>
155 <el-button type="primary" @click="goMySign">{{ language == 0 ? '查看报项' : 'View Entries' }}</el-button> 170 <el-button type="primary" @click="goMySign">{{ language == 0 ? '查看报项' : 'View Entries' }}</el-button>
156 </template> 171 </template>
157 </el-result> 172 </el-result>
158 173
159 </el-dialog> 174 </el-dialog>
160 <dialogExtraForm ref="popExtraForm" @submitForm="getSignInfoList"/> 175 <dialogExtraForm ref="popExtraForm" @submitForm="getSignInfoList" />
161 <dialogWdsf ref="popWdsf" @submitForm="getSignInfoList"/> 176 <dialogWdsf ref="popWdsf" @submitForm="getSignInfoList" />
162 <el-tour v-model="openTour" :current="tourCurrent"> 177 <el-tour v-model="openTour" :current="tourCurrent">
163 <el-tour-step target="#addRef" title="第一步" description="点击选择运动员" :next-button-props="nextButtonProps"/> 178 <el-tour-step :next-button-props="nextButtonProps" description="点击选择运动员" target="#addRef" title="第一步" />
164 <el-tour-step v-if="choosedList.length>0" target="#chooseArr" title="第二步" description="勾选报项运动员"/> 179 <el-tour-step v-if="choosedList.length>0" description="勾选报项运动员" target="#chooseArr" title="第二步" />
165 <el-tour-step v-if="projectList.length>0" target="#projectbox" title="第三步" description="选择报名项目"/> 180 <el-tour-step v-if="projectList.length>0" description="选择报名项目" target="#projectbox" title="第三步" />
166 <el-tour-step v-if="projectIds.length>0" target="#signUpBtn" title="第四步" description="点击报项"/> 181 <el-tour-step v-if="projectIds.length>0" description="点击报项" target="#signUpBtn" title="第四步" />
167 </el-tour> 182 </el-tour>
168 </div> 183 </div>
169 </template> 184 </template>
170 185
171 <script setup> 186 <script setup>
172 import {ref, reactive, toRefs, watch} from 'vue' 187 import { ref, reactive, toRefs, watch } from 'vue'
173 import * as match from '@/apiPc/match' 188 import * as match from '@/apiPc/match'
174 import {getCurrentInstance, onMounted} from '@vue/runtime-core' 189 import { getCurrentInstance, onMounted } from '@vue/runtime-core'
175 import DialogAddCoach from './components/addCoach' 190 import DialogAddCoach from './components/addCoach'
176 import DialogAllSportsmanList from './components/allSportsmanList' 191 import DialogAllSportsmanList from './components/allSportsmanList'
177 import DialogImport from './components/import' 192 import DialogImport from './components/import'
178 import DialogExtraForm from './components/extraForm' 193 import DialogExtraForm from './components/extraForm'
179 import DialogWdsf from './components/wdsfForm' 194 import DialogWdsf from './components/wdsfForm'
180 import {Search, Switch} from "@element-plus/icons-vue"; 195 import { Search, Switch } from '@element-plus/icons-vue'
181 const {proxy} = getCurrentInstance() 196
197 const { proxy } = getCurrentInstance()
182 const router = useRouter() 198 const router = useRouter()
183 const route = useRoute() 199 const route = useRoute()
184 import _ from 'lodash' 200 import _ from 'lodash'
185 import {ElMessage, ElMessageBox} from 'element-plus' 201 import { ElMessage, ElMessageBox } from 'element-plus'
186 import cache from "@/plugins/cache" 202 import cache from '@/plugins/cache'
187 import TeamSignStep from "@/viewsPc/match/components/teamSignStep" 203 import TeamSignStep from '@/viewsPc/match/components/teamSignStep'
188 import CoachInfoRow from "@/viewsPc/match/components/coachInfo-row" 204 import CoachInfoRow from '@/viewsPc/match/components/coachInfo-row'
189 import SignInfoTable from "@/viewsPc/match/components/signInfo-table" 205 import SignInfoTable from '@/viewsPc/match/components/signInfo-table'
190 import ZuTable from '@/viewsPc/match/components/zu-table' 206 import ZuTable from '@/viewsPc/match/components/zu-table'
191 import {signgetSignInfoConflict} from "@/apiPc/match"; 207 import { signgetSignInfoConflict } from '@/apiPc/match'
192 import {useStorage} from "@vueuse/core/index"; 208 import { useStorage } from '@vueuse/core/index'
193 const language= useStorage('language',0) 209
210 const language = useStorage('language', 0)
194 const data = reactive({ 211 const data = reactive({
195 coachForm: {}, activeStep: 2, 212 coachForm: {}, activeStep: 2,
196 tourCurrent:0, 213 tourCurrent: 0,
197 tableData: [], 214 tableData: [],
198 signInfoList: [], 215 signInfoList: [],
199 zuTableList: [], 216 zuTableList: [],
...@@ -223,12 +240,35 @@ const data = reactive({ ...@@ -223,12 +240,35 @@ const data = reactive({
223 choosed2List: [], 240 choosed2List: [],
224 choosed2Listbak: [], 241 choosed2Listbak: [],
225 projectQuery: {}, tableType: 1, 242 projectQuery: {}, tableType: 1,
226 openTour:false 243 openTour: false
227 }) 244 })
228 const { 245 const {
229 activeTeam, names, tableData, signInfoList, zuTableList, choosedList,choosedListBak, 246 activeTeam,
230 extraform, groupId, signType, coachOrLeaderFlag, showResult, noPhotoCanSign, projectIds, choosedchoosed, activeStep, projectList, choosed2List,choosed2Listbak, loadingProject, 247 names,
231 projectQuery, tableType, athletesQuery, zuQuery,openTour,tourCurrent 248 tableData,
249 signInfoList,
250 zuTableList,
251 choosedList,
252 choosedListBak,
253 extraform,
254 groupId,
255 signType,
256 coachOrLeaderFlag,
257 showResult,
258 noPhotoCanSign,
259 projectIds,
260 choosedchoosed,
261 activeStep,
262 projectList,
263 choosed2List,
264 choosed2Listbak,
265 loadingProject,
266 projectQuery,
267 tableType,
268 athletesQuery,
269 zuQuery,
270 openTour,
271 tourCurrent
232 } = toRefs(data) 272 } = toRefs(data)
233 const nextButtonProps = ref({}) 273 const nextButtonProps = ref({})
234 const matchId = ref(route.query.matchId) 274 const matchId = ref(route.query.matchId)
...@@ -278,12 +318,12 @@ function getSignInfoList() { ...@@ -278,12 +318,12 @@ function getSignInfoList() {
278 function submitForm() { 318 function submitForm() {
279 if (signInfoType == '1') { 319 if (signInfoType == '1') {
280 ElMessageBox.confirm(language.value == 0 ? '已报项,前往我的报项' : 'Reported items, go to my submission', 320 ElMessageBox.confirm(language.value == 0 ? '已报项,前往我的报项' : 'Reported items, go to my submission',
281 language.value == 0 ? '提示' : 'Tips', { 321 language.value == 0 ? '提示' : 'Tips', {
282 confirmButtonText: language.value == 0 ? '确定' : 'OK', 322 confirmButtonText: language.value == 0 ? '确定' : 'OK',
283 cancelButtonText: language.value == 0 ? '取消' : 'Cancel', 323 cancelButtonText: language.value == 0 ? '取消' : 'Cancel',
284 type: 'warning' 324 type: 'warning'
285 }).then(() => { 325 }).then(() => {
286 router.push({name: 'myMatch'}) 326 router.push({ name: 'myMatch' })
287 }) 327 })
288 return 328 return
289 } 329 }
...@@ -346,7 +386,7 @@ function changechoosed(e) { ...@@ -346,7 +386,7 @@ function changechoosed(e) {
346 // console.log(e) 386 // console.log(e)
347 choosed2List.value = [] 387 choosed2List.value = []
348 choosed2Listbak.value = [] 388 choosed2Listbak.value = []
349 389
350 for (var c of choosedList.value) { 390 for (var c of choosedList.value) {
351 if (choosedchoosed.value.indexOf(c.id) > -1) { 391 if (choosedchoosed.value.indexOf(c.id) > -1) {
352 choosed2List.value.push(c) 392 choosed2List.value.push(c)
...@@ -362,13 +402,13 @@ function getProjectList() { ...@@ -362,13 +402,13 @@ function getProjectList() {
362 return 402 return
363 } 403 }
364 loadingProject.value = true 404 loadingProject.value = true
365 //根据已选人员id 获取项目列表 405 // 根据已选人员id 获取项目列表
366 projectQuery.value.cptId = matchId.value 406 projectQuery.value.cptId = matchId.value
367 projectQuery.value.perIds = choosedchoosed.value.toString() 407 projectQuery.value.perIds = choosedchoosed.value.toString()
368 match.getProjectPageByPerIds(projectQuery.value).then(res => { 408 match.getProjectPageByPerIds(projectQuery.value).then(res => {
369 projectList.value = res.rows 409 projectList.value = res.rows
370 loadingProject.value = false 410 loadingProject.value = false
371 if(choosed2Listbak.value.length>0 && projectList.value.length>0){ 411 if (choosed2Listbak.value.length > 0 && projectList.value.length > 0) {
372 tourCurrent.value = 2 412 tourCurrent.value = 2
373 } 413 }
374 }).catch(err => { 414 }).catch(err => {
...@@ -378,32 +418,32 @@ function getProjectList() { ...@@ -378,32 +418,32 @@ function getProjectList() {
378 } 418 }
379 419
380 function queryAthletes() { 420 function queryAthletes() {
381 choosedListBak.value = [] 421 choosedListBak.value = []
382 for (var t of choosedList.value) { 422 for (var t of choosedList.value) {
383 if (t.realName.indexOf(athletesQuery.value.name) > -1) { 423 if (t.realName.indexOf(athletesQuery.value.name) > -1) {
384 // 筛选 424 // 筛选
385 choosedListBak.value.push(t) 425 choosedListBak.value.push(t)
386 }
387 } 426 }
427 }
388 } 428 }
389 429
390 function queryTeam() { 430 function queryTeam() {
391 choosed2Listbak.value = [] 431 choosed2Listbak.value = []
392 choosedchoosed.value = [] 432 choosedchoosed.value = []
393 for (var t of choosed2List.value) { 433 for (var t of choosed2List.value) {
394 if (t.realName.indexOf(zuQuery.value.name) > -1) { 434 if (t.realName.indexOf(zuQuery.value.name) > -1) {
395 // 筛选 435 // 筛选
396 choosed2Listbak.value.push(t) 436 choosed2Listbak.value.push(t)
397 choosedchoosed.value.push(t.id) 437 choosedchoosed.value.push(t.id)
398 }
399 } 438 }
439 }
400 } 440 }
401 441
402 function getChoosed(list) { 442 function getChoosed(list) {
403 console.log(list) 443 console.log(list)
404 choosedList.value = list 444 choosedList.value = list
405 choosedListBak.value = list 445 choosedListBak.value = list
406 if(list.length>0){ 446 if (list.length > 0) {
407 // openTour.value = false 447 // openTour.value = false
408 tourCurrent.value = 1 448 tourCurrent.value = 1
409 } 449 }
...@@ -516,7 +556,7 @@ const goPersonInfo = (row) => { ...@@ -516,7 +556,7 @@ const goPersonInfo = (row) => {
516 ElMessageBox.alert('已报项,前往我的报项', '提示', { 556 ElMessageBox.alert('已报项,前往我的报项', '提示', {
517 confirmButtonText: 'OK', 557 confirmButtonText: 'OK',
518 callback: (Action) => { 558 callback: (Action) => {
519 router.push({name: 'myMatch'}) 559 router.push({ name: 'myMatch' })
520 } 560 }
521 }) 561 })
522 return 562 return
...@@ -525,7 +565,7 @@ const goPersonInfo = (row) => { ...@@ -525,7 +565,7 @@ const goPersonInfo = (row) => {
525 console.log(row) 565 console.log(row)
526 // debugger 566 // debugger
527 const params = { 567 const params = {
528 matchId:matchId.value, 568 matchId: matchId.value,
529 title: language.value == 0 ? '完善补充信息' : 'Complete the supplementary information', 569 title: language.value == 0 ? '完善补充信息' : 'Complete the supplementary information',
530 participantsInfoArr: extraform.value, 570 participantsInfoArr: extraform.value,
531 personId: row.personInfo.id, 571 personId: row.personInfo.id,
...@@ -537,7 +577,7 @@ const goPersonInfo = (row) => { ...@@ -537,7 +577,7 @@ const goPersonInfo = (row) => {
537 function downloadVoucher() { 577 function downloadVoucher() {
538 // 下载凭证 578 // 下载凭证
539 proxy.download( 579 proxy.download(
540 `/pdf/getPayedOrderPdf/${matchId.value}/${groupId.value || 0}`, {}, '报项凭证.pdf' 580 `/pdf/getPayedOrderPdf/${matchId.value}/${groupId.value || 0}`, {}, '报项凭证.pdf', {}, 'application/pdf'
541 ) 581 )
542 } 582 }
543 583
...@@ -558,45 +598,45 @@ function switchTabletype() { ...@@ -558,45 +598,45 @@ function switchTabletype() {
558 } 598 }
559 599
560 function changeProject(e) { 600 function changeProject(e) {
561 console.log(projectIds.value,e) 601 console.log(projectIds.value, e)
562 var obj 602 var obj
563 obj = _.find(projectList.value, (c) => { 603 obj = _.find(projectList.value, (c) => {
564 return e.indexOf(c.id)>-1 604 return e.indexOf(c.id) > -1
565 }) 605 })
566 // if(obj.majorFlag==1){ 606 // if(obj.majorFlag==1){
567 // 需要填wdsf 607 // 需要填wdsf
568 const params = { 608 const params = {
569 title: '验证WDSF', 609 title: '验证WDSF',
570 list:choosed2Listbak.value 610 list: choosed2Listbak.value
571 } 611 }
572 proxy.$refs['popWdsf'].open(_.cloneDeep(params)) 612 proxy.$refs['popWdsf'].open(_.cloneDeep(params))
573 // } 613 // }
574 } 614 }
615
575 watch(choosedchoosed, (newVal, oldVal) => { 616 watch(choosedchoosed, (newVal, oldVal) => {
576 // console.log(choosedchoosed.value) 617 // console.log(choosedchoosed.value)
577 if(newVal.length>oldVal.length){ 618 if (newVal.length > oldVal.length) {
578 match.signgetSignInfoConflict({ 619 match.signgetSignInfoConflict({
579 cptId: matchId.value, 620 cptId: matchId.value,
580 perId: _.last(newVal), 621 perId: _.last(newVal),
581 groupId: groupId.value 622 groupId: groupId.value
582 }).then(res => { 623 }).then(res => {
583 if(!res.data){ 624 if (!res.data) {
584 ElMessage.warning(language.value==0?'该人员已在其他团队中报名,请重新选择':'This person has already registered in another team, please select again') 625 ElMessage.warning(language.value == 0 ? '该人员已在其他团队中报名,请重新选择' : 'This person has already registered in another team, please select again')
585 choosedchoosed.value = _.without(choosedchoosed.value,_.last(newVal)) 626 choosedchoosed.value = _.without(choosedchoosed.value, _.last(newVal))
586 627
587 for(var c of choosed2List.value){ 628 for (var c of choosed2List.value) {
588 if(c.id == _.last(newVal)){ 629 if (c.id == _.last(newVal)) {
589 choosed2List.value = _.without(choosed2List.value,c) 630 choosed2List.value = _.without(choosed2List.value, c)
590 }
591 } 631 }
592 for(var c of choosed2Listbak.value){ 632 }
593 if(c.id == _.last(newVal)){ 633 for (var c of choosed2Listbak.value) {
594 choosed2Listbak.value = _.without(choosed2Listbak.value,c) 634 if (c.id == _.last(newVal)) {
595 } 635 choosed2Listbak.value = _.without(choosed2Listbak.value, c)
596 } 636 }
597 projectList.value = [] 637 }
598 console.log(choosedchoosed.value,choosed2List.value,choosed2Listbak.value) 638 projectList.value = []
599 return 639 console.log(choosedchoosed.value, choosed2List.value, choosed2Listbak.value)
600 } else { 640 } else {
601 getProjectList() 641 getProjectList()
602 } 642 }
...@@ -607,14 +647,15 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -607,14 +647,15 @@ watch(choosedchoosed, (newVal, oldVal) => {
607 }) 647 })
608 </script> 648 </script>
609 649
610 <style scoped lang="scss"> 650 <style lang="scss" scoped>
611 :deep(.el-checkbox__label) { 651 :deep(.el-checkbox__label) {
612 flex: 1 1 auto; 652 flex: 1 1 auto;
613 } 653 }
614 654
615 .flexBetweenBox { 655 .flexBetweenBox {
616 width: 100%; 656 width: 100%;
617 height: auto;margin-right: 0; 657 height: auto;
658 margin-right: 0;
618 border-bottom: 1px solid #eee; 659 border-bottom: 1px solid #eee;
619 padding: 0 10px; 660 padding: 0 10px;
620 } 661 }
...@@ -623,10 +664,11 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -623,10 +664,11 @@ watch(choosedchoosed, (newVal, oldVal) => {
623 background: #FAFBFD; 664 background: #FAFBFD;
624 } 665 }
625 666
626 .flexBetween {white-space: normal; 667 .flexBetween {
668 white-space: normal;
627 padding: 10px; 669 padding: 10px;
628 border-left: 1px solid #eee; 670 border-left: 1px solid #eee;
629 671
630 .l { 672 .l {
631 div { 673 div {
632 margin: 4px 0 0; 674 margin: 4px 0 0;
...@@ -657,16 +699,16 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -657,16 +699,16 @@ watch(choosedchoosed, (newVal, oldVal) => {
657 margin: 0 0 20px; 699 margin: 0 0 20px;
658 display: flex; 700 display: flex;
659 justify-content: space-between; 701 justify-content: space-between;
660 702
661 button { 703 button {
662 position: relative; 704 position: relative;
663 margin: 10px; 705 margin: 10px;
664 } 706 }
665 707
666 .choseItem { 708 .choseItem {
667 margin: 10px; 709 margin: 10px;
668 position: relative; 710 position: relative;
669 711
670 .poClose { 712 .poClose {
671 position: absolute; 713 position: absolute;
672 right: -6px; 714 right: -6px;
...@@ -681,18 +723,18 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -681,18 +723,18 @@ watch(choosedchoosed, (newVal, oldVal) => {
681 background: rgba(245, 247, 249, 0.38); 723 background: rgba(245, 247, 249, 0.38);
682 padding: 20px 40px 10px; 724 padding: 20px 40px 10px;
683 } 725 }
684 726
685 .el-checkbox { 727 .el-checkbox {
686 height: auto; 728 height: auto;
687 margin-right: 20px; 729 margin-right: 20px;
688 } 730 }
689 731
690 :deep(.el-checkbox__input) { 732 :deep(.el-checkbox__input) {
691 position: absolute; 733 position: absolute;
692 right: 0; 734 right: 0;
693 top: 0; 735 top: 0;
694 } 736 }
695 737
696 .name { 738 .name {
697 text-align: center; 739 text-align: center;
698 } 740 }
...@@ -711,7 +753,7 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -711,7 +753,7 @@ watch(choosedchoosed, (newVal, oldVal) => {
711 margin: 5px 0; 753 margin: 5px 0;
712 color: #4C5359; 754 color: #4C5359;
713 font-size: 14px; 755 font-size: 14px;
714 756
715 label { 757 label {
716 font-size: 14px; 758 font-size: 14px;
717 margin-right: 14px 759 margin-right: 14px
...@@ -724,13 +766,13 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -724,13 +766,13 @@ watch(choosedchoosed, (newVal, oldVal) => {
724 color: #4C5359; 766 color: #4C5359;
725 display: flex; 767 display: flex;
726 justify-content: center; 768 justify-content: center;
727 769
728 div { 770 div {
729 padding: 20px; 771 padding: 20px;
730 position: relative; 772 position: relative;
731 cursor: pointer; 773 cursor: pointer;
732 } 774 }
733 775
734 div:first-child::after { 776 div:first-child::after {
735 content: ''; 777 content: '';
736 position: absolute; 778 position: absolute;
...@@ -742,10 +784,10 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -742,10 +784,10 @@ watch(choosedchoosed, (newVal, oldVal) => {
742 bottom: 0; 784 bottom: 0;
743 margin: auto; 785 margin: auto;
744 } 786 }
745 787
746 .active { 788 .active {
747 color: var(--el-color-primary); 789 color: var(--el-color-primary);
748 790
749 &::before { 791 &::before {
750 width: 33px; 792 width: 33px;
751 content: ''; 793 content: '';
...@@ -764,23 +806,23 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -764,23 +806,23 @@ watch(choosedchoosed, (newVal, oldVal) => {
764 .noPicChooseForm { 806 .noPicChooseForm {
765 overflow: auto; 807 overflow: auto;
766 //height: 70vh; 808 //height: 70vh;
767 809
768 .el-checkbox-group { 810 .el-checkbox-group {
769 display: flex; 811 display: flex;
770 flex-wrap: wrap; 812 flex-wrap: wrap;
771 text-align: justify; 813 text-align: justify;
772 814
773 .el-button { 815 .el-button {
774 width: 31%; 816 width: 31%;
775 margin: 1%; 817 margin: 1%;
776 } 818 }
777 819
778 .el-checkbox { 820 .el-checkbox {
779 margin: 1%; 821 margin: 1%;
780 width: 31%; 822 width: 31%;
781 overflow: hidden; 823 overflow: hidden;
782 } 824 }
783 825
784 .name { 826 .name {
785 justify-content: left; 827 justify-content: left;
786 } 828 }
...@@ -791,7 +833,7 @@ watch(choosedchoosed, (newVal, oldVal) => { ...@@ -791,7 +833,7 @@ watch(choosedchoosed, (newVal, oldVal) => {
791 display: flex; 833 display: flex;
792 align-items: center; 834 align-items: center;
793 justify-content: center; 835 justify-content: center;
794 836
795 img { 837 img {
796 height: 20px; 838 height: 20px;
797 margin-left: 4px; 839 margin-left: 4px;
......
...@@ -713,7 +713,7 @@ function exportPdf() { ...@@ -713,7 +713,7 @@ function exportPdf() {
713 fileName = '设项报名清单' 713 fileName = '设项报名清单'
714 proxy.download('/pdf/exportMySignInfoList', { 714 proxy.download('/pdf/exportMySignInfoList', {
715 ...obj 715 ...obj
716 }, `${fileName}_${new Date().getTime()}.pdf`, {}, 'application/pdf') 716 }, `${fileName}_${new Date().getTime()}.pdf`, {}, 'application/pdf', {}, 'application/pdf')
717 } else { 717 } else {
718 fileName = 'LIST OF REGISTERED COMPETITIONS' 718 fileName = 'LIST OF REGISTERED COMPETITIONS'
719 proxy.download('/pdf/exportMySignInfoList', { 719 proxy.download('/pdf/exportMySignInfoList', {
......
...@@ -317,7 +317,7 @@ function exportSignList(n) { ...@@ -317,7 +317,7 @@ function exportSignList(n) {
317 } 317 }
318 proxy.download('/league/sign/exportCn', { 318 proxy.download('/league/sign/exportCn', {
319 ...obj 319 ...obj
320 }, `${fileName}_${new Date().getTime()}.xlsx`) 320 }, `${fileName}_${new Date().getTime()}.xlsx`, {}, 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
321 } else { 321 } else {
322 if (n == 1) { 322 if (n == 1) {
323 fileName = 'Participant List' 323 fileName = 'Participant List'
...@@ -326,7 +326,7 @@ function exportSignList(n) { ...@@ -326,7 +326,7 @@ function exportSignList(n) {
326 } 326 }
327 proxy.download('/league/sign/exportEn', { 327 proxy.download('/league/sign/exportEn', {
328 ...obj 328 ...obj
329 }, `${fileName}_${new Date().getTime()}.xlsx`) 329 }, `${fileName}_${new Date().getTime()}.xlsx`, {}, 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
330 } 330 }
331 } 331 }
332 332
...@@ -341,12 +341,12 @@ function exportPdf() { ...@@ -341,12 +341,12 @@ function exportPdf() {
341 fileName = '设项报名清单' 341 fileName = '设项报名清单'
342 proxy.download('/pdf/exportMySignInfoList', { 342 proxy.download('/pdf/exportMySignInfoList', {
343 ...obj 343 ...obj
344 }, `${fileName}_${new Date().getTime()}.pdf`) 344 }, `${fileName}_${new Date().getTime()}.pdf`, {}, 'application/pdf', {}, 'application/pdf')
345 } else { 345 } else {
346 fileName = 'LIST OF REGISTERED COMPETITIONS' 346 fileName = 'LIST OF REGISTERED COMPETITIONS'
347 proxy.download('/pdf/exportMySignInfoList', { 347 proxy.download('/pdf/exportMySignInfoList', {
348 ...obj 348 ...obj
349 }, `${fileName}_${new Date().getTime()}.pdf`) 349 }, `${fileName}_${new Date().getTime()}.pdf`, {}, 'application/pdf')
350 } 350 }
351 } 351 }
352 </script> 352 </script>
......
...@@ -84,8 +84,8 @@ export default defineConfig(({ mode, command }) => { ...@@ -84,8 +84,8 @@ export default defineConfig(({ mode, command }) => {
84 }, 84 },
85 '/dev-api': { 85 '/dev-api': {
86 // target: 'http://192.168.1.213:8081/', 86 // target: 'http://192.168.1.213:8081/',
87 // target: 'http://192.168.1.118:8081', 87 target: 'http://192.168.1.169:8081',
88 target: 'https://jijin.wtwuxicenter.com/stage-api', 88 // target: 'https://jijin.wtwuxicenter.com/stage-api',
89 // target: 'https://wdsfwuxicenter.com/stage-api/', 89 // target: 'https://wdsfwuxicenter.com/stage-api/',
90 changeOrigin: true, 90 changeOrigin: true,
91 rewrite: (p) => p.replace(/^\/dev-api/, '') 91 rewrite: (p) => p.replace(/^\/dev-api/, '')
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!