diff --git a/components/payment/payment.vue b/components/payment/payment.vue index 51401847..41d91e4c 100644 --- a/components/payment/payment.vue +++ b/components/payment/payment.vue @@ -230,8 +230,31 @@ this.pay_handle(this.propTempPayValue, this.payment_id); this.$emit('close-payment-poupon', false); }, + // 支付方法 pay_handle(order_id, payment_id) { + var self = this; + this.propPaymentList.forEach((item) => { + if (item.id == payment_id) { + if (item.payment === 'WalletPay') { + uni.showModal({ + title: '温馨提示', + content: '操作后将立即扣除支付费用、确认继续吗?', + confirmText: '确认', + cancelText: '暂不', + success(res) { + if (res.confirm) { + self.pay_handle_event(order_id, payment_id); + } + }, + }); + } else { + this.pay_handle_event(order_id, payment_id); + } + } + }); + }, + pay_handle_event(order_id, payment_id) { // #ifdef H5 // 微信环境判断是否已有web_openid、不存在则不继续执行跳转到插件进行授权 if (!app.globalData.is_user_weixin_web_openid(order_id, payment_id || this.payment_id)) { diff --git a/pages/plugins/scanpay/index/index.css b/pages/plugins/scanpay/index/index.css index 6f552832..3d56adf4 100644 --- a/pages/plugins/scanpay/index/index.css +++ b/pages/plugins/scanpay/index/index.css @@ -22,15 +22,22 @@ } .pay-scroll { - max-height: calc(100vh - 55rem); + max-height: calc(100vh - 1102rpx); + min-height: calc(140rpx); overflow-y: auto; } +::-webkit-scrollbar { + display: none; + ; +} + .sub-key { background-color: transparent !important; box-shadow: none !important; padding: 0; } + .title-padding { padding: 16rpx; } @@ -39,9 +46,9 @@ * 页面底部浮动、增加底部边距 */ .page-pay-fixed { - height: calc(100vh - 536rpx - env(safe-area-inset-bottom) + 40rpx); + padding-bottom: calc(536rpx + env(safe-area-inset-bottom) - 40rpx); /* #ifdef H5 */ - height: calc(100vh - 536rpx) !important; + padding-bottom: 536rpx !important; /* #endif */ } @@ -61,37 +68,60 @@ font-weight: 400; } +.sub-key-content text { + transition: all 0.15s ease-in-out; +} + +.sub-key-content text:active { + background-color: rgba(0, 0, 0, 0.15); +} + /* 弹框 */ -::v-deep .uni-popup__info { - color: #333; - font-weight: 400; +.dialog-container { + width: 600rpx; + border-radius: 22rpx; + background-color: #fff; } -::v-deep .uni-dialog-button-group { - border-top: 0; - padding-bottom: 24rpx; +.dialog-title { + display: flex; + flex-direction: row; + justify-content: center; + padding-top: 30rpx; + font-size: 32rpx; + text-align: center; } -::v-deep .uni-dialog-button { - height: 60rpx; +.dialog-content { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 40rpx; } -::v-deep .uni-dialog-button-text { - color: #999; -} - -::v-deep .uni-button-color { - color: #333; -} - -::v-deep .uni-dialog-input, -::v-deep .uni-dialog-input:focus, -::v-deep .uni-dialog-input:active, -::v-deep .uni-dialog-input:hover, -::v-deep .uni-dialog-input:focus-visible, -::v-deep .uni-dialog-input:visited { - border: 0; - box-shadow: none; - outline: none; +.dialog-input { + flex: 1; + font-size: 28rpx; + border: 2rpx #eee solid; + height: 80rpx; + padding: 0 20rpx; + border-radius: 10rpx; + color: #555; background: #F1F1F1; +} + +.dialog-btn-group { + display: flex; + flex-direction: row; +} + +.dialog-btn { + display: flex; + flex: 1; + flex-direction: row; + justify-content: center; + align-items: center; + height: 90rpx; + font-size: 32rpx; } \ No newline at end of file diff --git a/pages/plugins/scanpay/index/index.vue b/pages/plugins/scanpay/index/index.vue index bfc7530a..0d203656 100644 --- a/pages/plugins/scanpay/index/index.vue +++ b/pages/plugins/scanpay/index/index.vue @@ -24,7 +24,7 @@ 支付方式 - +
@@ -53,40 +53,52 @@ - + + + 备注 + + + + + + 取消 + 确定 + + + - 1 - 2 - 3 - + 1 + 2 + 3 + - + - 4 - 5 - 6 + 4 + 5 + 6 - 7 - 8 - 9 + 7 + 8 + 9 - 0 - . - - - - - 支付 + 0 + . + + + 支付 + + @@ -132,6 +144,7 @@ // 支付失败跳转的页面 // /pages/plugins/wallet/user/user?type=3 to_appoint_page: '', + input_value: '', }; }, @@ -229,10 +242,25 @@ add_desc_event() { this.$refs.inputDialog.open(); }, + + input_change(e) { + this.setData({ + input_value: e.detail.value, + }); + }, + // 提交备注 - input_dialog(val) { + input_dialog_colse(val) { + this.setData({ + input_value: this.form.note, + }); + // 关闭窗口后,恢复默认内容 + this.$refs.inputDialog.close(); + }, + + input_dialog_open() { var new_data = this.form; - new_data.note = val; + new_data.note = this.input_value; this.setData({ form: new_data, });