| 
									
										
										
										
											2025-04-24 10:06:53 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  | <template> | 
					
						
							|  |  |  |  |   <view class="main"> | 
					
						
							|  |  |  |  |     <u-popup :show="pswShow" | 
					
						
							|  |  |  |  |              class="pspopup" | 
					
						
							|  |  |  |  |              mode="center" | 
					
						
							|  |  |  |  |              closeable | 
					
						
							|  |  |  |  |              @close="pswShow=false"> | 
					
						
							|  |  |  |  |       <view class="t_tit">二级密码</view> | 
					
						
							|  |  |  |  |       <view class="box"> | 
					
						
							|  |  |  |  |         <u--input border="surround" | 
					
						
							|  |  |  |  |                   type="password" | 
					
						
							|  |  |  |  |                   v-model="password"></u--input> | 
					
						
							|  |  |  |  |         <u-button type="success" | 
					
						
							|  |  |  |  |                   class="uBtn" | 
					
						
							|  |  |  |  |                   shape="circle" | 
					
						
							|  |  |  |  |                   loadingText="支付中" | 
					
						
							|  |  |  |  |                   @tap="surePsw" | 
					
						
							| 
									
										
										
										
											2025-04-22 17:47:02 +08:00
										 |  |  |  |                   color="linear-gradient(to right, #005BAC, #005BAC )">{{'立即支付'}} </u-button> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |       </view> | 
					
						
							|  |  |  |  |     </u-popup> | 
					
						
							|  |  |  |  |     <view class="contents"> | 
					
						
							|  |  |  |  |       <view class="height-auto"> | 
					
						
							|  |  |  |  |         <view class="lines"></view> | 
					
						
							|  |  |  |  |         <view class="text">收货信息</view> | 
					
						
							|  |  |  |  |       </view> | 
					
						
							|  |  |  |  |       <u-form :model="addressForm" | 
					
						
							|  |  |  |  |               labelWidth="auto" | 
					
						
							|  |  |  |  |               ref="uForm"> | 
					
						
							|  |  |  |  |         <view class="view-class"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |           <u-form-item :label="'收货人'" | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |                        label-width="100px" | 
					
						
							|  |  |  |  |                        prop="recName"> | 
					
						
							|  |  |  |  |             <u-input v-model="addressForm.recName" | 
					
						
							|  |  |  |  |                      placeholder-class="place-class" | 
					
						
							|  |  |  |  |                      class="border-color" | 
					
						
							|  |  |  |  |                      placeholder="请输入收货人姓名" /> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |           </u-form-item> | 
					
						
							|  |  |  |  |         </view> | 
					
						
							|  |  |  |  |         <view class="view-class"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |           <u-form-item :label="'联系方式'" | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |                        label-width="100px" | 
					
						
							|  |  |  |  |                        prop="recPhone"> | 
					
						
							|  |  |  |  |             <u-input v-model="addressForm.recPhone" | 
					
						
							|  |  |  |  |             :maxlength="userInfo.pkSettleCountry == 1?11:20" | 
					
						
							|  |  |  |  |             type="number" | 
					
						
							|  |  |  |  |                      placeholder-class="place-class" | 
					
						
							|  |  |  |  |                      class="border-color" | 
					
						
							|  |  |  |  |                      placeholder="请输入联系方式" /> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |           </u-form-item> | 
					
						
							|  |  |  |  |         </view> | 
					
						
							|  |  |  |  |         <view class="view-class" | 
					
						
							|  |  |  |  |               @click="getDiqu" | 
					
						
							|  |  |  |  |               style="height: 110rpx;display: flex;align-items: center;"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |           <u-form-item :label="'收货地址'" | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |                        label-width="100px" | 
					
						
							|  |  |  |  |                        prop="recProvince"> | 
					
						
							|  |  |  |  |             <view v-if="address" | 
					
						
							|  |  |  |  |                   style="font-size: 28rpx;color: #333;margin-left: 20rpx;">{{address}}</view> | 
					
						
							|  |  |  |  |             <view style="margin-left: 20rpx;font-size: 28rpx;color: rgb(192, 196, 204);" | 
					
						
							|  |  |  |  |                   v-else>请选择</view> | 
					
						
							|  |  |  |  |           </u-form-item> | 
					
						
							|  |  |  |  |           <view class="drop"> | 
					
						
							|  |  |  |  |             <image src="../../static/images/drop.png"></image> | 
					
						
							|  |  |  |  |           </view> | 
					
						
							|  |  |  |  |         </view> | 
					
						
							|  |  |  |  |         <view class="view-class"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |           <u-form-item :label="'详细地址'" | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |                        class="label-style" | 
					
						
							|  |  |  |  |                        label-width="100px" | 
					
						
							|  |  |  |  |                        prop="recAddress"> | 
					
						
							|  |  |  |  |             <u-input v-model="addressForm.recAddress" | 
					
						
							|  |  |  |  |                      placeholder-class="place-class" | 
					
						
							|  |  |  |  |                      maxlength="200" | 
					
						
							|  |  |  |  |                      class="border-color" | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |                      :placeholder="'请输入详细地址'" /> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |           </u-form-item> | 
					
						
							|  |  |  |  |         </view> | 
					
						
							|  |  |  |  |         <view class="view-class"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |           <u-form-item :label="'备注'" | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |                        label-width="100px" | 
					
						
							|  |  |  |  |                        prop="address"> | 
					
						
							|  |  |  |  |             <u-input v-model="addressForm.remark" | 
					
						
							|  |  |  |  |                      placeholder-class="place-class" | 
					
						
							|  |  |  |  |                      class="border-color" | 
					
						
							|  |  |  |  |                      placeholder="" /> | 
					
						
							|  |  |  |  |           </u-form-item> | 
					
						
							|  |  |  |  |         </view> | 
					
						
							|  |  |  |  |       </u-form> | 
					
						
							|  |  |  |  |     </view> | 
					
						
							|  |  |  |  |     <view style="margin-top: 20rpx;"> | 
					
						
							|  |  |  |  |       <view class="height-auto bgcolors"> | 
					
						
							|  |  |  |  |         <view class="lines color-styles"></view> | 
					
						
							|  |  |  |  |         <view class="text" | 
					
						
							|  |  |  |  |               style="color: #333;">商品信息</view> | 
					
						
							|  |  |  |  |       </view> | 
					
						
							|  |  |  |  |       <view style="background-color: #fff;"> | 
					
						
							|  |  |  |  |         <view class="goods-info1" | 
					
						
							|  |  |  |  |               v-for="item in allData"> | 
					
						
							|  |  |  |  |           <view class="goods-infot"> | 
					
						
							|  |  |  |  |             <img :src="item.cover" | 
					
						
							|  |  |  |  |                  class="cover" | 
					
						
							|  |  |  |  |                  alt=""> | 
					
						
							|  |  |  |  |             <view class="disFlex"> | 
					
						
							|  |  |  |  |               <view style="color: #333;font-size: 28rpx;">{{ item.productName }}</view> | 
					
						
							|  |  |  |  |               <view style="color: #999;font-size: 22rpx;">X{{item.quantity}}</view> | 
					
						
							|  |  |  |  |             </view> | 
					
						
							|  |  |  |  |           </view> | 
					
						
							|  |  |  |  |           <view class="goods_infob" style="color: #999;font-size: 28rpx;">产品规格:{{ item.specsName }}</view> | 
					
						
							|  |  |  |  |         </view> | 
					
						
							|  |  |  |  |         <view class="goods-info" | 
					
						
							|  |  |  |  |               style="border: none;"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |           <view style="color: #333;font-size: 28rpx;">{{'邮费'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |           <view style="color: #333;font-size: 24rpx;">¥{{postage}}</view> | 
					
						
							|  |  |  |  |         </view> | 
					
						
							|  |  |  |  |       </view> | 
					
						
							|  |  |  |  |     </view> | 
					
						
							|  |  |  |  |     <!-- 成功 --> | 
					
						
							|  |  |  |  |     <u-modal :show="showSucce" | 
					
						
							|  |  |  |  |              showConfirmButton | 
					
						
							|  |  |  |  |              :content='content' | 
					
						
							|  |  |  |  |              confirmColor='#DE3932' | 
					
						
							|  |  |  |  |              @confirm="reset" | 
					
						
							|  |  |  |  |              ref="uModal" | 
					
						
							|  |  |  |  |              :asyncClose="true"></u-modal> | 
					
						
							|  |  |  |  |     <!-- 二维码 --> | 
					
						
							|  |  |  |  |     <u-popup :show="wxPopup" | 
					
						
							|  |  |  |  |              mode="center" | 
					
						
							|  |  |  |  |              closeable | 
					
						
							|  |  |  |  |              @close="closewxPopup"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |       <view class="t_tits">{{'微信支付'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |       <view class="pay_code"> | 
					
						
							|  |  |  |  |         <div ref="qrCodeUrlWx" | 
					
						
							|  |  |  |  |              class="qrcode"></div> | 
					
						
							|  |  |  |  |       </view> | 
					
						
							|  |  |  |  |     </u-popup> | 
					
						
							|  |  |  |  |     <v-address ref="address" | 
					
						
							|  |  |  |  |                @getAddressData="AddressData" | 
					
						
							|  |  |  |  |                :defaultCode="defaultCode" | 
					
						
							|  |  |  |  |                @addressData="addressData"></v-address> | 
					
						
							|  |  |  |  |     <u-button type="success" | 
					
						
							|  |  |  |  |               shape="circle" | 
					
						
							|  |  |  |  |               class="btn" | 
					
						
							|  |  |  |  |               @click="paySubmit">购 买</u-button> | 
					
						
							|  |  |  |  |     <view style="height: 20rpx;"></view> | 
					
						
							|  |  |  |  |   </view> | 
					
						
							|  |  |  |  | </template> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | <script> | 
					
						
							|  |  |  |  | var payStatus | 
					
						
							|  |  |  |  | import * as api from '@/config/pay.js' | 
					
						
							|  |  |  |  | import * as apis from '@/config/order.js' | 
					
						
							|  |  |  |  | import { setToken } from '@/config/auth.js' | 
					
						
							|  |  |  |  | import * as min from '@/config/balance.js' | 
					
						
							|  |  |  |  | import address from '@/components/address.vue' | 
					
						
							|  |  |  |  | import store from '@/store' | 
					
						
							|  |  |  |  | export default { | 
					
						
							|  |  |  |  |   data() { | 
					
						
							|  |  |  |  |     return { | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  |  |       content: '支付成功', | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |       showSucce: false, | 
					
						
							|  |  |  |  |       paramsPost: {}, | 
					
						
							|  |  |  |  |       wxPopup: false, | 
					
						
							|  |  |  |  |       postage: 0, | 
					
						
							|  |  |  |  |       password: '', | 
					
						
							|  |  |  |  |       pswShow: false, | 
					
						
							|  |  |  |  |       userInfo: '', | 
					
						
							|  |  |  |  |       check: false, | 
					
						
							|  |  |  |  |       address: '', | 
					
						
							|  |  |  |  |       defaultCode: [], | 
					
						
							|  |  |  |  |       urls: '/member/api/maker-space/update-file', | 
					
						
							|  |  |  |  |       addressForm: { | 
					
						
							|  |  |  |  |         recName: '', | 
					
						
							|  |  |  |  |         recPhone: '', | 
					
						
							|  |  |  |  |         recProvince: '', | 
					
						
							|  |  |  |  |         recCity: '', | 
					
						
							|  |  |  |  |         recCounty: '', | 
					
						
							|  |  |  |  |         recAddress: '', | 
					
						
							|  |  |  |  |         isDefault: 0, | 
					
						
							|  |  |  |  |         pkId: '', | 
					
						
							|  |  |  |  |         postage: 0, | 
					
						
							|  |  |  |  |       }, | 
					
						
							|  |  |  |  |       num: 0, | 
					
						
							|  |  |  |  |       rules: { | 
					
						
							|  |  |  |  |         recName: [ | 
					
						
							|  |  |  |  |           { | 
					
						
							|  |  |  |  |             // 必填项
 | 
					
						
							|  |  |  |  |             required: true, | 
					
						
							|  |  |  |  |             // 提示内容(会出现在u-form-item内的底部)
 | 
					
						
							|  |  |  |  |             message: '姓名不能为空', | 
					
						
							|  |  |  |  |           }, | 
					
						
							|  |  |  |  |         ], | 
					
						
							|  |  |  |  |         recAddress: [ | 
					
						
							|  |  |  |  |           { | 
					
						
							|  |  |  |  |             // 必填项
 | 
					
						
							|  |  |  |  |             required: true, | 
					
						
							|  |  |  |  |             // 提示内容(会出现在u-form-item内的底部)
 | 
					
						
							|  |  |  |  |             message: '详细地址不能为空', | 
					
						
							|  |  |  |  |           }, | 
					
						
							|  |  |  |  |         ], | 
					
						
							|  |  |  |  |         recProvince: [ | 
					
						
							|  |  |  |  |           { | 
					
						
							|  |  |  |  |             // 必填项
 | 
					
						
							|  |  |  |  |             required: true, | 
					
						
							|  |  |  |  |             // 提示内容(会出现在u-form-item内的底部)
 | 
					
						
							|  |  |  |  |             message: '地址不能为空', | 
					
						
							|  |  |  |  |           }, | 
					
						
							|  |  |  |  |         ], | 
					
						
							|  |  |  |  |         recPhone: [ | 
					
						
							|  |  |  |  |           { | 
					
						
							|  |  |  |  |             required: true, | 
					
						
							|  |  |  |  |             message: '请输入手机号', | 
					
						
							|  |  |  |  |             trigger: ['blur'], | 
					
						
							|  |  |  |  |           }, | 
					
						
							| 
									
										
										
										
											2025-05-22 17:47:14 +08:00
										 |  |  |  |           { | 
					
						
							|  |  |  |  |             validator: (rule, value, callback) => { | 
					
						
							|  |  |  |  |               return this.$u.test.mobile(value); | 
					
						
							|  |  |  |  |             }, | 
					
						
							|  |  |  |  |             message: "手机号格式不正确", | 
					
						
							|  |  |  |  |             trigger: ["blur"], | 
					
						
							|  |  |  |  |           }, | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |         ], | 
					
						
							|  |  |  |  |       }, | 
					
						
							|  |  |  |  |       allData: [], | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  |   }, | 
					
						
							|  |  |  |  |   onLoad(option) { | 
					
						
							|  |  |  |  |     let allData = decodeURIComponent(window.location.href).split('=') | 
					
						
							|  |  |  |  |     this.num = allData[2].split('#')[0] | 
					
						
							|  |  |  |  |     // 幂等性
 | 
					
						
							|  |  |  |  |     this.getGenerate() | 
					
						
							|  |  |  |  |     this.getApiList() | 
					
						
							|  |  |  |  |     this.userInfo = uni.getStorageSync('User') | 
					
						
							|  |  |  |  |   }, | 
					
						
							|  |  |  |  |   onUnload() {}, | 
					
						
							|  |  |  |  |   onReady() { | 
					
						
							|  |  |  |  |     this.$refs.uForm.setRules(this.rules) | 
					
						
							|  |  |  |  |   }, | 
					
						
							|  |  |  |  |   components: { | 
					
						
							|  |  |  |  |     'v-address': address, | 
					
						
							|  |  |  |  |   }, | 
					
						
							|  |  |  |  |   methods: { | 
					
						
							|  |  |  |  |     getApiList() { | 
					
						
							|  |  |  |  |       let allData = decodeURIComponent(window.location.href).split('=') | 
					
						
							|  |  |  |  |       let num = allData[2].split('#')[0] | 
					
						
							|  |  |  |  |       apis | 
					
						
							|  |  |  |  |         .pickDetails({ | 
					
						
							|  |  |  |  |           quantity: allData[2].split('#')[0], | 
					
						
							|  |  |  |  |           pkId: allData[1].split('&')[0], | 
					
						
							|  |  |  |  |         }) | 
					
						
							|  |  |  |  |         .then((res) => { | 
					
						
							|  |  |  |  |           if (res.code == '200') { | 
					
						
							|  |  |  |  |             this.allData = res.data.detailList | 
					
						
							|  |  |  |  |           } | 
					
						
							|  |  |  |  |         }) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     getGenerate() { | 
					
						
							|  |  |  |  |       api.generate().then((res) => { | 
					
						
							|  |  |  |  |         uni.setStorageSync('mToken', res.msg) | 
					
						
							|  |  |  |  |       }) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     paySubmit() { | 
					
						
							|  |  |  |  |       this.$refs.uForm.validate().then((res) => { | 
					
						
							|  |  |  |  |         // this.pswShow = true
 | 
					
						
							|  |  |  |  |         let allData = decodeURIComponent(window.location.href).split('=') | 
					
						
							|  |  |  |  |         let obj = { | 
					
						
							|  |  |  |  |           quantity: allData[2].split('#')[0], | 
					
						
							|  |  |  |  |           pkId: allData[1].split('&')[0], | 
					
						
							|  |  |  |  |           recName: this.addressForm.recName, | 
					
						
							|  |  |  |  |           recPhone: this.addressForm.recPhone, | 
					
						
							|  |  |  |  |           recProvince: this.addressForm.recProvince, | 
					
						
							|  |  |  |  |           recCity: this.addressForm.recCity, | 
					
						
							|  |  |  |  |           recCounty: this.addressForm.recCounty, | 
					
						
							|  |  |  |  |           recAddress: this.addressForm.recAddress, | 
					
						
							|  |  |  |  |           remark: this.addressForm.remark, | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         api.payPickOrder(obj).then((res) => { | 
					
						
							|  |  |  |  |           if (res.code == 200) { | 
					
						
							|  |  |  |  |             // this.scanPayBfWx(8)
 | 
					
						
							|  |  |  |  |             this.pswShow = false | 
					
						
							|  |  |  |  |             let paramsPost = { orderCode: res.data, specialArea: 8 } | 
					
						
							|  |  |  |  |             uni.navigateTo({ | 
					
						
							|  |  |  |  |               url: | 
					
						
							|  |  |  |  |                 '/pages/pay/index?paramsPost=' + | 
					
						
							|  |  |  |  |                 JSON.stringify(paramsPost) + | 
					
						
							|  |  |  |  |                 '&businessType=1', | 
					
						
							|  |  |  |  |             }) | 
					
						
							|  |  |  |  |             // this.paramsPost = { orderCode: res.data, specialArea: 8 }
 | 
					
						
							|  |  |  |  |           } | 
					
						
							|  |  |  |  |         }) | 
					
						
							|  |  |  |  |       }) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     reset() { | 
					
						
							|  |  |  |  |       this.$store.dispatch('GetInfo').then((res) => { | 
					
						
							|  |  |  |  |         uni.reLaunch({ | 
					
						
							|  |  |  |  |           url: '/pages/index/index', | 
					
						
							|  |  |  |  |         }) | 
					
						
							|  |  |  |  |       }) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     // 查询订单状态
 | 
					
						
							|  |  |  |  |     checkPayStatus(data) { | 
					
						
							|  |  |  |  |       let that = this | 
					
						
							|  |  |  |  |       // 定时器
 | 
					
						
							|  |  |  |  |       payStatus = setInterval(() => { | 
					
						
							|  |  |  |  |         if (that.sucPay == 1) { | 
					
						
							|  |  |  |  |           // 清除定时器
 | 
					
						
							|  |  |  |  |           clearInterval(payStatus) | 
					
						
							|  |  |  |  |           this.wxPopup = false | 
					
						
							|  |  |  |  |           this.showSucce = true | 
					
						
							|  |  |  |  |         } else { | 
					
						
							|  |  |  |  |           api.payStatus(data).then((res) => { | 
					
						
							|  |  |  |  |             that.sucPay = res.data | 
					
						
							|  |  |  |  |           }) | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |       }, 2000) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     closewxPopup() { | 
					
						
							|  |  |  |  |       this.wxPopup = false | 
					
						
							|  |  |  |  |       this.$refs.qrCodeUrlWx.innerHTML = '' | 
					
						
							|  |  |  |  |       clearInterval(payStatus) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     scanPayBfWx(val) { | 
					
						
							|  |  |  |  |       let params = { | 
					
						
							|  |  |  |  |         businessType: this.businessType, //订单类型充值
 | 
					
						
							|  |  |  |  |         businessCode: this.orderCode, | 
					
						
							|  |  |  |  |         payChannel: val, | 
					
						
							|  |  |  |  |         payType: 2, | 
					
						
							|  |  |  |  |       } | 
					
						
							|  |  |  |  |       api.unifiedorder(params).then((res) => { | 
					
						
							|  |  |  |  |         this.wxPopup = true | 
					
						
							|  |  |  |  |         this.$nextTick(() => { | 
					
						
							|  |  |  |  |           new QRCode( | 
					
						
							|  |  |  |  |             this.$refs.qrCodeUrlWx, | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |               width: 280, | 
					
						
							|  |  |  |  |               height: 280, | 
					
						
							|  |  |  |  |               text: res.data, | 
					
						
							|  |  |  |  |               colorDark: '#000000', | 
					
						
							|  |  |  |  |               colorLight: '#ffffff', | 
					
						
							|  |  |  |  |               correctLevel: QRCode.CorrectLevel.Q, | 
					
						
							|  |  |  |  |               textAlign: 'center', | 
					
						
							|  |  |  |  |             }, | 
					
						
							|  |  |  |  |             1000 | 
					
						
							|  |  |  |  |           ) | 
					
						
							|  |  |  |  |         }) | 
					
						
							|  |  |  |  |       }) | 
					
						
							|  |  |  |  |       this.checkPayStatus(params) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     getPostAge(data) { | 
					
						
							|  |  |  |  |       apis.pickPostAge(data).then((res) => { | 
					
						
							|  |  |  |  |         this.postage = res.data | 
					
						
							|  |  |  |  |         // this.totalAmont =
 | 
					
						
							|  |  |  |  |         //   parseFloat(this.allGoodsData.priceAmount) +
 | 
					
						
							|  |  |  |  |         //   parseFloat(res.data.postage)
 | 
					
						
							|  |  |  |  |       }) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     surePsw() { | 
					
						
							|  |  |  |  |       min | 
					
						
							|  |  |  |  |         .checkPwd({ | 
					
						
							|  |  |  |  |           pwd: this.password, | 
					
						
							|  |  |  |  |         }) | 
					
						
							|  |  |  |  |         .then((res) => { | 
					
						
							|  |  |  |  |           if (res.code == 200) { | 
					
						
							|  |  |  |  |             let allData = decodeURIComponent(window.location.href).split('=') | 
					
						
							|  |  |  |  |             let obj = { | 
					
						
							|  |  |  |  |               quantity: allData[2].split('#')[0], | 
					
						
							|  |  |  |  |               pkId: allData[1].split('&')[0], | 
					
						
							|  |  |  |  |               recName: this.addressForm.recName, | 
					
						
							|  |  |  |  |               recPhone: this.addressForm.recPhone, | 
					
						
							|  |  |  |  |               recProvince: this.addressForm.recProvince, | 
					
						
							|  |  |  |  |               recCity: this.addressForm.recCity, | 
					
						
							|  |  |  |  |               recCounty: this.addressForm.recCounty, | 
					
						
							|  |  |  |  |               recAddress: this.addressForm.recAddress, | 
					
						
							|  |  |  |  |               remark: this.addressForm.remark, | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             api | 
					
						
							|  |  |  |  |               .payPickOrder(obj) | 
					
						
							|  |  |  |  |               .then((res) => { | 
					
						
							|  |  |  |  |                 if (res.code == 200) { | 
					
						
							|  |  |  |  |                   // this.scanPayBfWx(8)
 | 
					
						
							|  |  |  |  |                   this.pswShow = false | 
					
						
							|  |  |  |  |                   let paramsPost = { orderCode: res.data, specialArea: 8 } | 
					
						
							|  |  |  |  |                   uni.navigateTo({ | 
					
						
							|  |  |  |  |                     url: | 
					
						
							|  |  |  |  |                       '/pages/pay/index?paramsPost=' + | 
					
						
							|  |  |  |  |                       JSON.stringify(paramsPost) + | 
					
						
							|  |  |  |  |                       '&businessType=1', | 
					
						
							|  |  |  |  |                   }) | 
					
						
							|  |  |  |  |                   // this.paramsPost = { orderCode: res.data, specialArea: 8 }
 | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |               }) | 
					
						
							|  |  |  |  |               .catch((err) => { | 
					
						
							|  |  |  |  |                 this.isLoading.close() | 
					
						
							|  |  |  |  |               }) | 
					
						
							|  |  |  |  |           } | 
					
						
							|  |  |  |  |         }) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     AddressData(name) { | 
					
						
							|  |  |  |  |       this.address = name | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     getDiqu() { | 
					
						
							|  |  |  |  |       this.$refs.address.setShow() | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     addressData(diqu, obj) { | 
					
						
							|  |  |  |  |       this.address = diqu | 
					
						
							|  |  |  |  |       this.addressForm.recProvince = obj.province | 
					
						
							|  |  |  |  |       this.addressForm.recCity = obj.city | 
					
						
							|  |  |  |  |       this.addressForm.recCounty = obj.county | 
					
						
							|  |  |  |  |       let allData = decodeURIComponent(window.location.href).split('=') | 
					
						
							|  |  |  |  |       let data = { | 
					
						
							|  |  |  |  |         quantity: allData[2].split('#')[0], | 
					
						
							|  |  |  |  |         pkId: allData[1].split('&')[0], | 
					
						
							|  |  |  |  |         recProvince: obj.province, | 
					
						
							|  |  |  |  |         recCity: obj.city, | 
					
						
							|  |  |  |  |       } | 
					
						
							|  |  |  |  |       this.getPostAge(data) | 
					
						
							|  |  |  |  |       this.$forceUpdate() | 
					
						
							|  |  |  |  |       // this.getPostAge()
 | 
					
						
							|  |  |  |  |       // this.queryAdressPostage()
 | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     checkTap() { | 
					
						
							|  |  |  |  |       if (this.addressForm.isDefault == 0) { | 
					
						
							|  |  |  |  |         this.addressForm.isDefault = 1 | 
					
						
							|  |  |  |  |       } else { | 
					
						
							|  |  |  |  |         this.addressForm.isDefault = 0 | 
					
						
							|  |  |  |  |       } | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |     getAddressData(e) { | 
					
						
							|  |  |  |  |       console.error(e) | 
					
						
							|  |  |  |  |     }, | 
					
						
							|  |  |  |  |   }, | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | </script> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | <style lang="scss" scoped> | 
					
						
							|  |  |  |  | .pay_code { | 
					
						
							|  |  |  |  |   text-align: center; | 
					
						
							|  |  |  |  |   margin-top: 20px; | 
					
						
							|  |  |  |  |   padding: 20rpx; | 
					
						
							|  |  |  |  |   .qrcodeWx { | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .qrcode { | 
					
						
							|  |  |  |  |   display: inline-block; | 
					
						
							|  |  |  |  |   img { | 
					
						
							|  |  |  |  |     width: 132px; | 
					
						
							|  |  |  |  |     height: 132px; | 
					
						
							|  |  |  |  |     background-color: #fff; //设置白色背景色
 | 
					
						
							|  |  |  |  |     padding: 6px; // 利用padding的特性,挤出白边
 | 
					
						
							|  |  |  |  |     box-sizing: border-box; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .t_tits { | 
					
						
							|  |  |  |  |   text-align: center; | 
					
						
							|  |  |  |  |   margin-top: 20px; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .goods-info { | 
					
						
							|  |  |  |  |   display: flex; | 
					
						
							|  |  |  |  |   justify-content: space-between; | 
					
						
							|  |  |  |  |   border-top: 1rpx solid #eee; | 
					
						
							|  |  |  |  |   border-bottom: 1rpx solid #eee; | 
					
						
							|  |  |  |  |   // background-color: #fff;
 | 
					
						
							|  |  |  |  |   height: 95rpx; | 
					
						
							|  |  |  |  |   line-height: 95rpx; | 
					
						
							|  |  |  |  |   padding: 0 30rpx; | 
					
						
							|  |  |  |  |   // width: 750rpx;
 | 
					
						
							|  |  |  |  |   margin: 0 20rpx; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .goods-info1 { | 
					
						
							|  |  |  |  |   // display: flex;
 | 
					
						
							|  |  |  |  |   // justify-content: space-between;
 | 
					
						
							|  |  |  |  |   border-top: 1rpx solid #eee; | 
					
						
							|  |  |  |  |   border-bottom: 1rpx solid #eee; | 
					
						
							|  |  |  |  |   // background-color: #fff;
 | 
					
						
							|  |  |  |  |   // height: 95rpx;
 | 
					
						
							|  |  |  |  |   // line-height: 95rpx;
 | 
					
						
							|  |  |  |  |   padding: 0 30rpx; | 
					
						
							|  |  |  |  |   // width: 750rpx;
 | 
					
						
							|  |  |  |  |   margin: 0 20rpx; | 
					
						
							|  |  |  |  |   .goods-infot{ | 
					
						
							|  |  |  |  |     display: flex; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  |   .goods_infob{ | 
					
						
							|  |  |  |  |     padding: 10rpx 0; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  |   .cover { | 
					
						
							|  |  |  |  |     width: 136rpx; | 
					
						
							|  |  |  |  |     height: 136rpx; | 
					
						
							|  |  |  |  |     background: #ffffff; | 
					
						
							|  |  |  |  |     border: 1px solid #eeeeee; | 
					
						
							|  |  |  |  |     border-radius: 10rpx; | 
					
						
							|  |  |  |  |     margin-right: 10px; | 
					
						
							|  |  |  |  |     margin-top: 10px; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  |   .disFlex { | 
					
						
							|  |  |  |  |     flex: 1; | 
					
						
							|  |  |  |  |     display: flex; | 
					
						
							|  |  |  |  |     // align-items: center;
 | 
					
						
							|  |  |  |  |     margin-top: 10px; | 
					
						
							|  |  |  |  |     justify-content: space-between; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .color-styles { | 
					
						
							|  |  |  |  |   background-color: #e03030 !important; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .bgcolors { | 
					
						
							|  |  |  |  |   background-color: #fff !important; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .height-auto { | 
					
						
							|  |  |  |  |   height: 94rpx; | 
					
						
							| 
									
										
										
										
											2025-04-22 17:47:02 +08:00
										 |  |  |  |   background: #005BAC; | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |   line-height: 94rpx; | 
					
						
							|  |  |  |  |   padding: 0 25rpx; | 
					
						
							|  |  |  |  |   display: flex; | 
					
						
							|  |  |  |  |   align-items: center; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .lines { | 
					
						
							|  |  |  |  |   width: 6rpx; | 
					
						
							|  |  |  |  |   height: 24rpx; | 
					
						
							|  |  |  |  |   background: #ffffff; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .text { | 
					
						
							|  |  |  |  |   font-size: 28rpx; | 
					
						
							|  |  |  |  |   color: #fff; | 
					
						
							|  |  |  |  |   margin-left: 10rpx; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .pspopup { | 
					
						
							|  |  |  |  |   // padding: 30rpx;
 | 
					
						
							|  |  |  |  |   .t_tit { | 
					
						
							|  |  |  |  |     text-align: center; | 
					
						
							|  |  |  |  |     margin-top: 40rpx; | 
					
						
							|  |  |  |  |     font-weight: bold; | 
					
						
							|  |  |  |  |     font-size: 32rpx; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |   .c_tit { | 
					
						
							|  |  |  |  |     margin-bottom: 40rpx; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |   .box { | 
					
						
							|  |  |  |  |     padding: 40rpx 40rpx; | 
					
						
							|  |  |  |  |     text-align: center; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |   .uBtn { | 
					
						
							|  |  |  |  |     margin-top: 40rpx; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | } | 
					
						
							| 
									
										
										
										
											2025-04-01 17:06:24 +08:00
										 |  |  |  | :v-deep .u-form-item__body__right__message { | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |   margin-left: 215rpx !important; | 
					
						
							|  |  |  |  |   padding-bottom: 20rpx; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .drop { | 
					
						
							|  |  |  |  |   image { | 
					
						
							|  |  |  |  |     width: 40rpx; | 
					
						
							|  |  |  |  |     height: 40rpx; | 
					
						
							|  |  |  |  |     position: absolute; | 
					
						
							|  |  |  |  |     right: 0; | 
					
						
							|  |  |  |  |     top: 30rpx; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .check { | 
					
						
							|  |  |  |  |   position: relative; | 
					
						
							|  |  |  |  |   view { | 
					
						
							|  |  |  |  |     width: 36rpx; | 
					
						
							|  |  |  |  |     height: 36rpx; | 
					
						
							|  |  |  |  |     border: 1rpx solid #dddddd; | 
					
						
							|  |  |  |  |     border-radius: 50%; | 
					
						
							|  |  |  |  |     margin-top: 25rpx; | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  |   image { | 
					
						
							|  |  |  |  |     width: 40rpx; | 
					
						
							|  |  |  |  |     height: 40rpx; | 
					
						
							|  |  |  |  |     position: absolute; | 
					
						
							|  |  |  |  |     right: 0rpx; | 
					
						
							|  |  |  |  |     top: 25rpx; | 
					
						
							|  |  |  |  |     // margin-top: 20rpx;
 | 
					
						
							|  |  |  |  |   } | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .flex-s { | 
					
						
							|  |  |  |  |   justify-content: space-between; | 
					
						
							|  |  |  |  |   display: flex; | 
					
						
							|  |  |  |  |   height: 90rpx; | 
					
						
							|  |  |  |  |   line-height: 90rpx; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .label-style { | 
					
						
							|  |  |  |  |   display: block !important; | 
					
						
							|  |  |  |  | } | 
					
						
							| 
									
										
										
										
											2025-04-01 17:06:24 +08:00
										 |  |  |  | :v-deep .label-style .u-form-item__body__left { | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |   display: block !important; | 
					
						
							|  |  |  |  |   margin-top: 20rpx; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .uni-textarea { | 
					
						
							|  |  |  |  |   height: 100rpx; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .view-class { | 
					
						
							|  |  |  |  |   border-bottom: 1rpx solid #eee; | 
					
						
							|  |  |  |  |   margin: 0 30rpx; | 
					
						
							|  |  |  |  |   position: relative; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .border-color { | 
					
						
							|  |  |  |  |   border: none; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | page { | 
					
						
							|  |  |  |  |   background-color: #f2f2f2; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .contents { | 
					
						
							|  |  |  |  |   background-color: #fff; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | .btn { | 
					
						
							| 
									
										
										
										
											2025-04-22 17:47:02 +08:00
										 |  |  |  |   background-color: #005BAC; | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  |  |   border: none; | 
					
						
							|  |  |  |  |   height: 92rpx; | 
					
						
							|  |  |  |  |   line-height: 92rpx; | 
					
						
							|  |  |  |  |   font-size: 30rpx; | 
					
						
							|  |  |  |  |   margin: 100rpx auto auto auto; | 
					
						
							|  |  |  |  |   width: 690rpx; | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  | </style> |