hookehuyr

fix 二维码功能优化

1 <!-- 1 <!--
2 * @Date: 2024-01-16 10:06:47 2 * @Date: 2024-01-16 10:06:47
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2024-01-25 16:10:17 4 + * @LastEditTime: 2024-01-25 16:26:37
5 * @FilePath: /xysBooking/src/components/qrCode.vue 5 * @FilePath: /xysBooking/src/components/qrCode.vue
6 * @Description: 预约码卡组件 6 * @Description: 预约码卡组件
7 --> 7 -->
...@@ -190,9 +190,13 @@ onMounted(async () => { ...@@ -190,9 +190,13 @@ onMounted(async () => {
190 // 190 //
191 item.datetime = `${str.split(' ')[0]} ${str.split(' ')[1]}-${str.split(' ')[3]}` 191 item.datetime = `${str.split(' ')[0]} ${str.split(' ')[1]}-${str.split(' ')[3]}`
192 }); 192 });
193 + const { code: status_code, data: status_data } = await qrcodeStatusAPI({ qr_code: data[select_index.value]?.qr_code });
194 + if (status_code) {
195 + useStatus.value = status_data.status;
193 // 剔除qr_code为空的二维码 196 // 剔除qr_code为空的二维码
194 userList.value = data.filter(item => item.qr_code !== ''); 197 userList.value = data.filter(item => item.qr_code !== '');
195 } 198 }
199 + }
196 } else { 200 } else {
197 const { code, data } = await billPersonAPI({ pay_id }); 201 const { code, data } = await billPersonAPI({ pay_id });
198 if (code) { 202 if (code) {
...@@ -200,10 +204,14 @@ onMounted(async () => { ...@@ -200,10 +204,14 @@ onMounted(async () => {
200 // 生成二维码地址 204 // 生成二维码地址
201 item.qr_code_url = 'http://oa.onwall.cn/admin?m=srv&a=get_qrcode&key=' + item.qr_code; 205 item.qr_code_url = 'http://oa.onwall.cn/admin?m=srv&a=get_qrcode&key=' + item.qr_code;
202 }); 206 });
207 + const { code: status_code, data: status_data } = await qrcodeStatusAPI({ qr_code: data[select_index.value]?.qr_code });
208 + if (status_code) {
209 + useStatus.value = status_data.status;
203 // 剔除qr_code为空的二维码 210 // 剔除qr_code为空的二维码
204 userList.value = data.filter(item => item.qr_code !== ''); 211 userList.value = data.filter(item => item.qr_code !== '');
205 } 212 }
206 } 213 }
214 + }
207 }); 215 });
208 216
209 // 定义轮询函数 217 // 定义轮询函数
......
1 <!-- 1 <!--
2 * @Date: 2024-01-15 16:25:51 2 * @Date: 2024-01-15 16:25:51
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2024-01-24 17:28:25 4 + * @LastEditTime: 2024-01-25 16:19:42
5 * @FilePath: /xysBooking/src/views/submit.vue 5 * @FilePath: /xysBooking/src/views/submit.vue
6 * @Description: 预约人员信息 6 * @Description: 预约人员信息
7 --> 7 -->
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
23 <div> 23 <div>
24 <p style="color: #A67939;">{{ item.name }}</p> 24 <p style="color: #A67939;">{{ item.name }}</p>
25 <p>证件号:{{ formatId(item.id_number) }}</p> 25 <p>证件号:{{ formatId(item.id_number) }}</p>
26 - <p v-if="item.is_reserve === '1'" style="color: #9C9A9A; font-size: 0.8rem;">*已预约过{{ date }}参观,请不要重复预约</p> 26 + <p v-if="item.is_reserve === RESERVE_STATUS.ENABLE" style="color: #9C9A9A; font-size: 0.8rem;">*已预约过{{ date }}参观,请不要重复预约</p>
27 </div> 27 </div>
28 </div> 28 </div>
29 </div> 29 </div>
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
33 </div> 33 </div>
34 <div style="height: 5rem;"></div> 34 <div style="height: 5rem;"></div>
35 <div class="submit-wrapper"> 35 <div class="submit-wrapper">
36 - <div style="display: flex; justify-content: space-between;"> 36 + <div class="control-wrapper">
37 <div class="left"> 37 <div class="left">
38 <div style="margin-left: 1rem; display: flex;align-items: center;"> 38 <div style="margin-left: 1rem; display: flex;align-items: center;">
39 订单金额&nbsp;&nbsp;<div style="color: #FF1919;display: inline-block;">¥<div style="font-size: 1.5rem;display: inline-block;">&nbsp;{{ total }}</div></div> 39 订单金额&nbsp;&nbsp;<div style="color: #FF1919;display: inline-block;">¥<div style="font-size: 1.5rem;display: inline-block;">&nbsp;{{ total }}</div></div>
...@@ -88,9 +88,13 @@ const formatId = (id) => { ...@@ -88,9 +88,13 @@ const formatId = (id) => {
88 return replaceMiddleCharacters(id); 88 return replaceMiddleCharacters(id);
89 }; 89 };
90 90
91 +const RESERVE_STATUS = {
92 + ENABLE: '1'
93 +}
94 +
91 const checked_visitors = ref([]); 95 const checked_visitors = ref([]);
92 const addVisitor = (item) => { 96 const addVisitor = (item) => {
93 - if (item.is_reserve === '1') { // 今天已经预约 97 + if (item.is_reserve === RESERVE_STATUS.ENABLE) { // 今天已经预约
94 showToast('已预约过参观,请不要重复预约') 98 showToast('已预约过参观,请不要重复预约')
95 return; 99 return;
96 } 100 }
...@@ -125,15 +129,6 @@ const submitBtn = async () => { ...@@ -125,15 +129,6 @@ const submitBtn = async () => {
125 if (code) { 129 if (code) {
126 const pay_url = `/srv/?f=reserve&a=icbc_pay&pay_id=${data.pay_id}`; 130 const pay_url = `/srv/?f=reserve&a=icbc_pay&pay_id=${data.pay_id}`;
127 location.href = pay_url; // 跳转支付页面 131 location.href = pay_url; // 跳转支付页面
128 - // const { code: prepare_code, data: prepare_data } = await payPrepareAPI({ pay_id: data.pay_id });
129 - // if (prepare_code) {
130 - // const { code: callback_code, data: callback_data } = await payCallbackAPI({ pay_id: prepare_data.pay_id, pay_status: 1 });
131 - // if (callback_code) {
132 - // // TODO:看需求,把跳转页换成等待页面
133 - // go('/success', { pay_id: prepare_data.pay_id });
134 - // // go('/waiting', { pay_id: prepare_data.pay_id });
135 - // }
136 - // }
137 } 132 }
138 } 133 }
139 } 134 }
...@@ -202,6 +197,10 @@ onMounted(async () => { ...@@ -202,6 +197,10 @@ onMounted(async () => {
202 // padding: 1rem; 197 // padding: 1rem;
203 justify-content: space-between; 198 justify-content: space-between;
204 flex-direction: column; 199 flex-direction: column;
200 + .control-wrapper {
201 + display: flex;
202 + justify-content: space-between;
203 + }
205 .left { 204 .left {
206 display: flex; 205 display: flex;
207 justify-content: center; 206 justify-content: center;
......