c18acc6e by lttnew
2 parents 3915c951 9a38e7d0
...@@ -1780,7 +1780,7 @@ export function cancelPay(id) { ...@@ -1780,7 +1780,7 @@ export function cancelPay(id) {
1780 1780
1781 export const outputInvoiceNo = (data) => { 1781 export const outputInvoiceNo = (data) => {
1782 return request({ 1782 return request({
1783 url: `/common/order/outputInvoiceNo/${data.id}`, 1783 url: `/common/order/outputInvoiceNo/${data.id}?taxno=${data.taxno}&phone=${data.phone}&name=${data.name}&invoiceType=${data.invoiceType}&amount=${data.amount}`,
1784 method: 'post', 1784 method: 'post',
1785 params: data 1785 params: data
1786 }) 1786 })
......
1 // dev 1 // dev
2 // const baseUrl_api = 'http://192.168.1.125:8787' 2 // const baseUrl_api = 'http://192.168.1.125:8787'
3 const baseUrl_api = 'https://tk001.wxjylt.com/stage-api/' 3 const baseUrl_api = 'http://47.98.186.233:8787'
4 // const baseUrl_api = 'https://tk001.wxjylt.com/stage-api/'
4 const loginImage_api = 'https://tk001.wxjylt.com/stage-api' 5 const loginImage_api = 'https://tk001.wxjylt.com/stage-api'
5 const payUrl = 'https://wxpay.cmbc.com.cn/mobilePlatform/appserver/lcbpPay.do' 6 const payUrl = 'https://wxpay.cmbc.com.cn/mobilePlatform/appserver/lcbpPay.do'
6 7
......
...@@ -6,9 +6,9 @@ ...@@ -6,9 +6,9 @@
6 <text class="label">发票类型</text> 6 <text class="label">发票类型</text>
7 <view class="type-select"> 7 <view class="type-select">
8 <view 8 <view
9 :class="{ active: form.invoiceType === '2' }"
9 class="type-option" 10 class="type-option"
10 :class="{ active: form.invoiceType === '1' }" 11 @click="form.invoiceType = '2'"
11 @click="form.invoiceType = '1'"
12 > 12 >
13 <view class="type-icon"></view> 13 <view class="type-icon"></view>
14 <view class="type-info"> 14 <view class="type-info">
...@@ -17,9 +17,10 @@ ...@@ -17,9 +17,10 @@
17 </view> 17 </view>
18 </view> 18 </view>
19 <view 19 <view
20 v-if="type==0"
21 :class="{ active: form.invoiceType === '1' }"
20 class="type-option" 22 class="type-option"
21 :class="{ active: form.invoiceType === '2' }" 23 @click="form.invoiceType = '1'"
22 @click="form.invoiceType = '2'"
23 > 24 >
24 <view class="type-icon enterprise"></view> 25 <view class="type-icon enterprise"></view>
25 <view class="type-info"> 26 <view class="type-info">
...@@ -34,21 +35,21 @@ ...@@ -34,21 +35,21 @@
34 <view class="form-item column"> 35 <view class="form-item column">
35 <text class="label">发票抬头</text> 36 <text class="label">发票抬头</text>
36 <input 37 <input
37 class="input"
38 v-model="form.name" 38 v-model="form.name"
39 class="input"
39 placeholder="请输入公司全称或个人姓名" 40 placeholder="请输入公司全称或个人姓名"
40 /> 41 />
41 <text class="hint">请确保发票抬头与公司营业执照或个人身份证上的名称一致。</text> 42 <text class="hint">请确保发票抬头与公司营业执照或个人身份证上的名称一致。</text>
42 </view> 43 </view>
43 44
44 <!-- 纳税人识别号(企业才显示) --> 45 <!-- 纳税人识别号(企业才显示) -->
45 <view class="form-item column" v-if="form.invoiceType === '2'"> 46 <view v-if="form.invoiceType === '1'" class="form-item column">
46 <text class="label">纳税人识别号</text> 47 <text class="label">纳税人识别号</text>
47 <input 48 <input
48 class="input"
49 v-model="form.taxno" 49 v-model="form.taxno"
50 placeholder="请输入纳税人识别号" 50 class="input"
51 maxlength="20" 51 maxlength="20"
52 placeholder="请输入纳税人识别号"
52 /> 53 />
53 <text class="hint">企业税务登记证上的号码,一般为 15、18 或 20 位</text> 54 <text class="hint">企业税务登记证上的号码,一般为 15、18 或 20 位</text>
54 </view> 55 </view>
...@@ -78,8 +79,8 @@ ...@@ -78,8 +79,8 @@
78 <view class="form-item column"> 79 <view class="form-item column">
79 <text class="label">接收邮箱号码</text> 80 <text class="label">接收邮箱号码</text>
80 <input 81 <input
81 class="input"
82 v-model="form.phone" 82 v-model="form.phone"
83 class="input"
83 placeholder="请输入接收发票的邮箱号码" 84 placeholder="请输入接收发票的邮箱号码"
84 type="text" 85 type="text"
85 /> 86 />
...@@ -89,7 +90,7 @@ ...@@ -89,7 +90,7 @@
89 90
90 <!-- 提交按钮 --> 91 <!-- 提交按钮 -->
91 <view class="btn-wrap"> 92 <view class="btn-wrap">
92 <view class="submit-btn" :class="{ loading: submitting }" @click="handleSubmit"> 93 <view :class="{ loading: submitting }" class="submit-btn" @click="handleSubmit">
93 {{ submitting ? '提交中...' : '提交申请' }} 94 {{ submitting ? '提交中...' : '提交申请' }}
94 </view> 95 </view>
95 </view> 96 </view>
...@@ -97,15 +98,15 @@ ...@@ -97,15 +98,15 @@
97 </template> 98 </template>
98 99
99 <script setup> 100 <script setup>
100 import { ref, reactive } from 'vue'; 101 import {ref, reactive} from 'vue';
101 import { onLoad } from '@dcloudio/uni-app'; 102 import {onLoad} from '@dcloudio/uni-app';
102 import { outputInvoiceNo } from '@/common/api.js'; 103 import {outputInvoiceNo} from '@/common/api.js';
103 104
104 const submitting = ref(false); 105 const submitting = ref(false);
105 106 const type = ref(0) //1个人订单只开普票
106 // 表单数据(与PC端字段完全对齐) 107 // 表单数据(与PC端字段完全对齐)
107 const form = reactive({ 108 const form = reactive({
108 invoiceType: '1', // 1=个人 2=企业 109 invoiceType: '2', // 1=企业 2=个人
109 deliveryMethod: '1', // 接收方式:1=电子发票 110 deliveryMethod: '1', // 接收方式:1=电子发票
110 name: '', // 发票抬头 111 name: '', // 发票抬头
111 taxno: '', // 纳税人识别号 112 taxno: '', // 纳税人识别号
...@@ -123,43 +124,45 @@ onLoad((options) => { ...@@ -123,43 +124,45 @@ onLoad((options) => {
123 if (options.invoiceType) { 124 if (options.invoiceType) {
124 form.invoiceType = options.invoiceType; 125 form.invoiceType = options.invoiceType;
125 } 126 }
127 type.value = options.type ?? 0
128 console.log(options)
126 }); 129 });
127 130
128 // 表单验证 131 // 表单验证
129 const validateForm = () => { 132 const validateForm = () => {
130 // 发票抬头校验 133 // 发票抬头校验
131 if (!form.name) { 134 if (!form.name) {
132 uni.showToast({ title: '请输入发票抬头', icon: 'none' }); 135 uni.showToast({title: '请输入发票抬头', icon: 'none'});
133 return false; 136 return false;
134 } 137 }
135 if (form.name.length < 2 || form.name.length > 100) { 138 if (form.name.length < 2 || form.name.length > 100) {
136 uni.showToast({ title: '发票抬头长度在2-100个字符之间', icon: 'none' }); 139 uni.showToast({title: '发票抬头长度在2-100个字符之间', icon: 'none'});
137 return false; 140 return false;
138 } 141 }
139 142
140 // 企业必须填纳税人识别号 143 // 企业必须填纳税人识别号
141 if (form.invoiceType === '2' && !form.taxno) { 144 if (form.invoiceType === '1' && !form.taxno) {
142 uni.showToast({ title: '请输入纳税人识别号', icon: 'none' }); 145 uni.showToast({title: '请输入纳税人识别号', icon: 'none'});
143 return false; 146 return false;
144 } 147 }
145 148
146 // 纳税人识别号格式校验(同PC) 149 // 纳税人识别号格式校验(同PC)
147 if (form.invoiceType === '2') { 150 if (form.invoiceType === '1') {
148 const taxReg = /^[A-Z0-9]{15}$|^[A-Z0-9]{18}$|^[A-Z0-9]{20}$/; 151 const taxReg = /^[A-Z0-9]{15}$|^[A-Z0-9]{18}$|^[A-Z0-9]{20}$/;
149 if (!taxReg.test(form.taxno)) { 152 if (!taxReg.test(form.taxno)) {
150 uni.showToast({ title: '纳税人识别号格式不正确', icon: 'none' }); 153 uni.showToast({title: '纳税人识别号格式不正确', icon: 'none'});
151 return false; 154 return false;
152 } 155 }
153 } 156 }
154 157
155 // 邮箱校验 158 // 邮箱校验
156 if (!form.phone) { 159 if (!form.phone) {
157 uni.showToast({ title: '请输入接收邮箱', icon: 'none' }); 160 uni.showToast({title: '请输入接收邮箱', icon: 'none'});
158 return false; 161 return false;
159 } 162 }
160 const phoneReg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; 163 const phoneReg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
161 if (!phoneReg.test(form.phone)) { 164 if (!phoneReg.test(form.phone)) {
162 uni.showToast({ title: '请输入正确的邮箱地址', icon: 'none' }); 165 uni.showToast({title: '请输入正确的邮箱地址', icon: 'none'});
163 return false; 166 return false;
164 } 167 }
165 168
...@@ -183,6 +186,7 @@ const handleSubmit = async () => { ...@@ -183,6 +186,7 @@ const handleSubmit = async () => {
183 uni.navigateBack(); 186 uni.navigateBack();
184 }, 1500); 187 }, 1500);
185 } catch (error) { 188 } catch (error) {
189 console.log(error)
186 submitting.value = false; 190 submitting.value = false;
187 // 错误已由 request.js 处理 191 // 错误已由 request.js 处理
188 } finally { 192 } finally {
......
...@@ -5,13 +5,15 @@ ...@@ -5,13 +5,15 @@
5 <view class="yearRow"> 5 <view class="yearRow">
6 <view class="label">缴费年限</view> 6 <view class="label">缴费年限</view>
7 <view class="control"> 7 <view class="control">
8 <image class="icon" @click="minusYear" :src="config.baseUrl_api + '/fs/static/dd_02.png'" mode="widthFix" 8 <image v-if="form.payYear > 1" :src="config.baseUrl_api + '/fs/static/dd_02.png'" class="icon"
9 v-if="form.payYear > 1"></image> 9 mode="widthFix"
10 <image class="icon" :src="config.baseUrl_api + '/fs/static/dd_02_g.png'" mode="widthFix" v-else></image> 10 @click="minusYear"></image>
11 <image v-else :src="config.baseUrl_api + '/fs/static/dd_02_g.png'" class="icon" mode="widthFix"></image>
11 <text class="num">{{ form.payYear }}</text> 12 <text class="num">{{ form.payYear }}</text>
12 <image class="icon" :src="config.baseUrl_api + '/fs/static/btn_03.png'" mode="widthFix" @click="plusYear" 13 <image v-if="form.payYear < 5" :src="config.baseUrl_api + '/fs/static/btn_03.png'" class="icon"
13 v-if="form.payYear < 5"></image> 14 mode="widthFix"
14 <image class="icon" :src="config.baseUrl_api + '/fs/static/btn_03_g.png'" mode="widthFix" v-else></image> 15 @click="plusYear"></image>
16 <image v-else :src="config.baseUrl_api + '/fs/static/btn_03_g.png'" class="icon" mode="widthFix"></image>
15 </view> 17 </view>
16 </view> 18 </view>
17 </view> 19 </view>
...@@ -27,9 +29,9 @@ ...@@ -27,9 +29,9 @@
27 <view class="payRow "> 29 <view class="payRow ">
28 <radio-group @change="onPayTypeChange"> 30 <radio-group @change="onPayTypeChange">
29 <label class="radioItem"> 31 <label class="radioItem">
30 <radio value="1" :checked="payType === '1'" class="custom-radio" /> 32 <radio :checked="payType === '1'" class="custom-radio" value="1"/>
31 <view class="payInfo"> 33 <view class="payInfo">
32 <image class="icon" :src="config.baseUrl_api + '/fs/static/min.png'" mode="widthFix"></image> 34 <image :src="config.baseUrl_api + '/fs/static/min.png'" class="icon" mode="widthFix"></image>
33 <text>民生付</text> 35 <text>民生付</text>
34 </view> 36 </view>
35 </label> 37 </label>
...@@ -44,42 +46,43 @@ ...@@ -44,42 +46,43 @@
44 </view> 46 </view>
45 47
46 <view class="bottomBtn"> 48 <view class="bottomBtn">
47 <button class="payBtn" @click="handelPay" :loading="isPaying">立即支付 ¥{{ memberTotalFee }}</button> 49 <button :loading="isPaying" class="payBtn" @click="handelPay">立即支付 ¥{{ memberTotalFee }}</button>
48 </view> 50 </view>
49 51
50 </view> 52 </view>
51 </template> 53 </template>
52 54
53 <script setup> 55 <script setup>
54 import { 56 import {
55 ref, 57 ref,
56 computed, 58 computed,
57 onMounted 59 onMounted
58 } from 'vue' 60 } from 'vue'
59 import { 61 import {
60 onLoad 62 onLoad
61 } from '@dcloudio/uni-app'; 63 } from '@dcloudio/uni-app';
62 import to from 'await-to-js' 64 import to from 'await-to-js'
63 import * as api from '@/common/api.js' 65 import * as api from '@/common/api.js'
64 import { 66 import {
65 minShengPay 67 minShengPay
66 } from '@/common/pay.js' 68 } from '@/common/pay.js'
67 import config from '@/config.js' 69 import config from '@/config.js'
68 const form = ref({ 70
71 const form = ref({
69 payYear: 1 72 payYear: 1
70 }) 73 })
71 74
72 // 支付方式 75 // 支付方式
73 const payType = ref('1') 76 const payType = ref('1')
74 const isPaying = ref(false) 77 const isPaying = ref(false)
75 78
76 // 费用与优惠 79 // 费用与优惠
77 const memberFee = ref(0) 80 const memberFee = ref(0)
78 const memberTotalFee = computed(() => { 81 const memberTotalFee = computed(() => {
79 return memberFee.value * form.value.payYear 82 return memberFee.value * form.value.payYear
80 83
81 }) 84 })
82 onLoad((options) => { 85 onLoad((options) => {
83 if (options.baseFormData) { 86 if (options.baseFormData) {
84 const data = JSON.parse(decodeURIComponent(options.baseFormData)) 87 const data = JSON.parse(decodeURIComponent(options.baseFormData))
85 form.value = { 88 form.value = {
...@@ -89,30 +92,29 @@ import config from '@/config.js' ...@@ -89,30 +92,29 @@ import config from '@/config.js'
89 } 92 }
90 // 初始化接口 93 // 初始化接口
91 getMyMemberCertUnitFeeApi() 94 getMyMemberCertUnitFeeApi()
92 }) 95 })
93
94 96
95 97
96 // 减年限 98 // 减年限
97 const minusYear = () => { 99 const minusYear = () => {
98 if (form.value.payYear > 1) { 100 if (form.value.payYear > 1) {
99 form.value.payYear-- 101 form.value.payYear--
100 } 102 }
101 } 103 }
102 104
103 // 加年限(最大 5 年) 105 // 加年限(最大 5 年)
104 const plusYear = () => { 106 const plusYear = () => {
105 if (form.value.payYear < 5) { 107 if (form.value.payYear < 5) {
106 form.value.payYear++ 108 form.value.payYear++
107 } 109 }
108 } 110 }
109 111
110 // 支付方式切换 112 // 支付方式切换
111 const onPayTypeChange = (e) => { 113 const onPayTypeChange = (e) => {
112 payType.value = e.detail.value 114 payType.value = e.detail.value
113 } 115 }
114 116
115 const handelPay = async () => { 117 const handelPay = async () => {
116 if (memberTotalFee.value <= 0) { 118 if (memberTotalFee.value <= 0) {
117 uni.showToast({ 119 uni.showToast({
118 title: '支付金额异常', 120 title: '支付金额异常',
...@@ -127,13 +129,13 @@ import config from '@/config.js' ...@@ -127,13 +129,13 @@ import config from '@/config.js'
127 mask: true 129 mask: true
128 }) 130 })
129 isPaying.value = true 131 isPaying.value = true
130 132 form.value.validityDate = undefined
131 // 拼接完整参数 133 // 拼接完整参数
132 const postData = { 134 const postData = {
133 ...form.value, 135 ...form.value,
134 payYear: form.value.payYear, 136 payYear: form.value.payYear,
135 payType: payType.value, 137 payType: payType.value,
136 totalFee: memberTotalFee.value 138 totalFee: memberTotalFee.value,
137 } 139 }
138 140
139 // 创建订单 141 // 创建订单
...@@ -172,95 +174,94 @@ import config from '@/config.js' ...@@ -172,95 +174,94 @@ import config from '@/config.js'
172 uni.redirectTo({ 174 uni.redirectTo({
173 url: `/personal/sucPay?orderId=${orderRes.data.orderId}` 175 url: `/personal/sucPay?orderId=${orderRes.data.orderId}`
174 }) 176 })
175 } 177 }
176
177 178
178 179
179 // 获取会员费 180 // 获取会员费
180 async function getMyMemberCertUnitFeeApi() { 181 async function getMyMemberCertUnitFeeApi() {
181 const res = await api.getZtxFeeConfig() 182 const res = await api.getZtxFeeConfig()
182 memberFee.value = Number(res.data.personMemberFee || 1500) 183 memberFee.value = Number(res.data.personMemberFee || 1500)
183 } 184 }
184 </script> 185 </script>
185 186
186 <style scoped> 187 <style scoped>
187 .container { 188 .container {
188 min-height: 100vh; 189 min-height: 100vh;
189 background-color: #f7f7f7; 190 background-color: #f7f7f7;
190 } 191 }
191 192
192 .content { 193 .content {
193 padding: 20rpx 20rpx 120rpx; 194 padding: 20rpx 20rpx 120rpx;
194 } 195 }
195 196
196 .card { 197 .card {
197 background: #fff; 198 background: #fff;
198 border-radius: 8rpx; 199 border-radius: 8rpx;
199 padding: 25rpx 20rpx; 200 padding: 25rpx 20rpx;
200 margin-bottom: 20rpx; 201 margin-bottom: 20rpx;
201 } 202 }
202 203
203 .yearRow { 204 .yearRow {
204 display: flex; 205 display: flex;
205 align-items: center; 206 align-items: center;
206 justify-content: space-between; 207 justify-content: space-between;
207 margin-bottom: 20rpx; 208 margin-bottom: 20rpx;
208 } 209 }
209 210
210 .yearRow .label { 211 .yearRow .label {
211 font-size: 28rpx; 212 font-size: 28rpx;
212 color: #333; 213 color: #333;
213 } 214 }
214 215
215 .yearRow .control { 216 .yearRow .control {
216 display: flex; 217 display: flex;
217 align-items: center; 218 align-items: center;
218 } 219 }
219 220
220 .control image { 221 .control image {
221 width: 50rpx; 222 width: 50rpx;
222 height: 50rpx; 223 height: 50rpx;
223 } 224 }
224 225
225 .yearRow .num { 226 .yearRow .num {
226 font-size: 28rpx; 227 font-size: 28rpx;
227 color: #333; 228 color: #333;
228 min-width: 80rpx; 229 min-width: 80rpx;
229 text-align: center; 230 text-align: center;
230 margin: 0 10rpx; 231 margin: 0 10rpx;
231 } 232 }
232 233
233 .row { 234 .row {
234 display: flex; 235 display: flex;
235 justify-content: space-between; 236 justify-content: space-between;
236 align-items: center; 237 align-items: center;
237 } 238 }
238 239
239 .row .label { 240 .row .label {
240 font-size: 28rpx; 241 font-size: 28rpx;
241 color: #333; 242 color: #333;
242 } 243 }
243 244
244 .row .value { 245 .row .value {
245 font-size: 30rpx; 246 font-size: 30rpx;
246 color: #C4121B; 247 color: #C4121B;
247 font-weight: 500; 248 font-weight: 500;
248 } 249 }
249 250
250 .hintRow { 251 .hintRow {
251 display: flex; 252 display: flex;
252 align-items: flex-start; 253 align-items: flex-start;
253 font-size: 24rpx; 254 font-size: 24rpx;
254 line-height: 1.4; 255 line-height: 1.4;
255 } 256 }
256 257
257 .hintRow .hintText { 258 .hintRow .hintText {
258 color: #FF8124; 259 color: #FF8124;
259 flex: 1; 260 flex: 1;
260 margin-top: 10rpx; 261 margin-top: 10rpx;
261 } 262 }
262 263
263 .deductRow { 264 .deductRow {
264 background: #fff; 265 background: #fff;
265 padding: 20rpx 20rpx; 266 padding: 20rpx 20rpx;
266 display: flex; 267 display: flex;
...@@ -268,48 +269,48 @@ import config from '@/config.js' ...@@ -268,48 +269,48 @@ import config from '@/config.js'
268 align-items: center; 269 align-items: center;
269 margin-bottom: 10rpx; 270 margin-bottom: 10rpx;
270 border-radius: 8rpx; 271 border-radius: 8rpx;
271 } 272 }
272 273
273 .deductRow .label { 274 .deductRow .label {
274 font-size: 28rpx; 275 font-size: 28rpx;
275 color: #333; 276 color: #333;
276 } 277 }
277 278
278 .deductRow .value { 279 .deductRow .value {
279 font-size: 30rpx; 280 font-size: 30rpx;
280 color: #C4121B; 281 color: #C4121B;
281 } 282 }
282 283
283 .payRow { 284 .payRow {
284 background: #fff; 285 background: #fff;
285 border-radius: 8rpx; 286 border-radius: 8rpx;
286 padding: 20rpx 20rpx; 287 padding: 20rpx 20rpx;
287 margin-bottom: 20rpx; 288 margin-bottom: 20rpx;
288 } 289 }
289 290
290 .radioItem { 291 .radioItem {
291 display: flex; 292 display: flex;
292 align-items: center; 293 align-items: center;
293 } 294 }
294 295
295 .payInfo { 296 .payInfo {
296 display: flex; 297 display: flex;
297 align-items: center; 298 align-items: center;
298 margin-left: 15rpx; 299 margin-left: 15rpx;
299 } 300 }
300 301
301 .payInfo .icon { 302 .payInfo .icon {
302 width: 40rpx; 303 width: 40rpx;
303 height: 40rpx; 304 height: 40rpx;
304 margin-right: 10rpx; 305 margin-right: 10rpx;
305 } 306 }
306 307
307 .payInfo text { 308 .payInfo text {
308 font-size: 28rpx; 309 font-size: 28rpx;
309 color: #333; 310 color: #333;
310 } 311 }
311 312
312 .totalRow { 313 .totalRow {
313 background: #fff; 314 background: #fff;
314 border-radius: 8rpx; 315 border-radius: 8rpx;
315 padding: 20rpx 20rpx; 316 padding: 20rpx 20rpx;
...@@ -317,20 +318,20 @@ import config from '@/config.js' ...@@ -317,20 +318,20 @@ import config from '@/config.js'
317 justify-content: space-between; 318 justify-content: space-between;
318 align-items: center; 319 align-items: center;
319 margin-top: 10rpx; 320 margin-top: 10rpx;
320 } 321 }
321 322
322 .totalRow .label { 323 .totalRow .label {
323 font-size: 28rpx; 324 font-size: 28rpx;
324 color: #333; 325 color: #333;
325 } 326 }
326 327
327 .redBig { 328 .redBig {
328 font-size: 32rpx; 329 font-size: 32rpx;
329 color: #C4121B; 330 color: #C4121B;
330 font-weight: bold; 331 font-weight: bold;
331 } 332 }
332 333
333 .bottomBtn { 334 .bottomBtn {
334 position: fixed; 335 position: fixed;
335 bottom: 0; 336 bottom: 0;
336 left: 0; 337 left: 0;
...@@ -338,9 +339,9 @@ import config from '@/config.js' ...@@ -338,9 +339,9 @@ import config from '@/config.js'
338 padding: 20rpx 20rpx; 339 padding: 20rpx 20rpx;
339 background: #fff; 340 background: #fff;
340 border-top: 1rpx solid #eee; 341 border-top: 1rpx solid #eee;
341 } 342 }
342 343
343 .payBtn { 344 .payBtn {
344 width: 100%; 345 width: 100%;
345 height: 88rpx; 346 height: 88rpx;
346 line-height: 88rpx; 347 line-height: 88rpx;
...@@ -350,30 +351,30 @@ import config from '@/config.js' ...@@ -350,30 +351,30 @@ import config from '@/config.js'
350 font-size: 32rpx; 351 font-size: 32rpx;
351 text-align: center; 352 text-align: center;
352 border: none; 353 border: none;
353 } 354 }
354 355
355 .payBtn[disabled] { 356 .payBtn[disabled] {
356 background-color: #ccc; 357 background-color: #ccc;
357 color: #999; 358 color: #999;
358 } 359 }
359 360
360 .red { 361 .red {
361 color: #C4121B; 362 color: #C4121B;
362 } 363 }
363 364
364 .icon { 365 .icon {
365 width: 30px; 366 width: 30px;
366 } 367 }
367 368
368 ::v-deep .custom-radio .wx-radio-input { 369 ::v-deep .custom-radio .wx-radio-input {
369 width: 30rpx; 370 width: 30rpx;
370 height: 30rpx; 371 height: 30rpx;
371 border-radius: 50%; 372 border-radius: 50%;
372 border: 2rpx solid #ccc; 373 border: 2rpx solid #ccc;
373 } 374 }
374 375
375 ::v-deep .custom-radio .wx-radio-input.wx-radio-input-checked { 376 ::v-deep .custom-radio .wx-radio-input.wx-radio-input-checked {
376 border-color: #C4121B !important; 377 border-color: #C4121B !important;
377 background: #C4121B !important; 378 background: #C4121B !important;
378 } 379 }
379 </style> 380 </style>
......
...@@ -141,6 +141,7 @@ const queryParams = reactive({ ...@@ -141,6 +141,7 @@ const queryParams = reactive({
141 pageNum: 1, 141 pageNum: 1,
142 pageSize: 10, 142 pageSize: 10,
143 type: '0', // 0表示个人会员 143 type: '0', // 0表示个人会员
144 subType: '1', //0道馆 1个人
144 // queryType: '1', 145 // queryType: '1',
145 // payStatus: '', 146 // payStatus: '',
146 perId: '' 147 perId: ''
...@@ -269,7 +270,7 @@ const handlePay = async (item) => { ...@@ -269,7 +270,7 @@ const handlePay = async (item) => {
269 270
270 // 申请开票 271 // 申请开票
271 const makeInvoiceFN = (item) => { 272 const makeInvoiceFN = (item) => {
272 uni.navigateTo({url: `/pages/invoice/apply?orderId=${item.id}amount=${item.price}`}); 273 uni.navigateTo({url: `/pages/invoice/apply?orderId=${item.id}&amount=${item.price}&type=1`});
273 }; 274 };
274 275
275 // 取消订单 276 // 取消订单
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!