master
gongfuxiang 2024-12-13 17:26:15 +08:00
parent 643a0a5c3c
commit 3b82f3678e
5 changed files with 359 additions and 1 deletions

View File

@ -171,7 +171,7 @@
"startLocationUpdate",
"startLocationUpdateBackground"
],
"appid" : "wx60d4d16792b6cf0b",
"appid" : "wxa0bb5a98b71799fa",
"setting" : {
"urlCheck" : false,
"es6" : true,

View File

@ -0,0 +1,156 @@
<template>
<view :class="theme_view">
<block v-if="data_list_loding_status == 3">
<view class="padding-horizontal-main padding-vertical-xxxxl margin-main tc bg-white border-radius-main">
<view class="padding-vertical-xxxxl">
<text class="fw-b cr-price text-size-xxl">{{payment_currency_symbol}}{{data.pay_price}}</text>
</view>
<view class="margin-top-sm padding-bottom-xxxxl">
<view :class="'cr-'+(pay_status == 1 ? 'green' : (pay_status == 2 ? 'red' : 'grey'))">{{pay_msg}}</view>
</view>
<view v-if="pay_status == 2" class="margin-top-xxxxl padding-vertical-xxxxl">
<button class="bg-green br-green cr-white round text-size-sm padding-horizontal-xxxxl" size="mini" hover-class="none" @tap="pay_handle"></button>
</view>
</view>
<view v-if="is_back_btn && pay_status != 0" class="margin-top-xxxxl padding-top-xxxxl tc">
<button class="bg-white br-main cr-main round text-size-sm padding-horizontal-xxxxl" size="mini" hover-class="none" open-type="launchApp" app-parameter="wechat">返回APP</button>
</view>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common" :propIsAppAdmin="false"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
payment_currency_symbol: app.globalData.currency_symbol(),
params: {},
data_list_loding_status: 1,
data_list_loding_msg: '',
scene: 0,
scene_back_arr: [1069, 1038, 1089, 1090, 1001, 1131, 1187],
is_back_btn: false,
data: {},
pay_status: 0,
pay_msg: '',
};
},
components: {
componentCommon,
componentNoData
},
onLoad(params) {
//
app.globalData.page_event_onload_handle(params);
//
params = app.globalData.launch_params_handle(params);
var scene = app.globalData.get_scene_data();
this.setData({
params: params,
scene: scene,
is_back_btn: this.scene_back_arr.indexOf(scene) != -1,
});
//
this.get_data();
},
onShow() {
//
app.globalData.page_event_onshow_handle();
// onshow
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
//
onPullDownRefresh() {
this.get_data();
},
methods: {
//
get_data() {
uni.request({
url: app.globalData.get_request_url("paydata", "cashier"),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0 && (res.data.data || null) != null) {
this.setData({
data_list_loding_status: 3,
data_list_loding_msg: '',
data: res.data.data,
});
//
this.pay_handle();
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
//
pay_handle(e) {
if(this.pay_status != 1)
{
console.log(this.data);
this.setData({
pay_status: 0,
pay_msg: this.$t('common.payment_in_text'),
});
uni.requestPayment({
timeStamp: this.data.pay_data.timeStamp,
nonceStr: this.data.pay_data.nonceStr,
package: this.data.pay_data.package,
signType: this.data.pay_data.signType,
paySign: this.data.pay_data.paySign,
success: (res) => {
this.setData({
pay_status: 1,
pay_msg: this.$t('paytips.paytips.679rxu'),
});
},
fail: (res) => {
console.log(res)
this.setData({
pay_status: 2,
pay_msg: this.$t('paytips.paytips.6y488i'),
});
},
});
}
}
}
};
</script>
<style>
</style>

View File

@ -77,6 +77,13 @@
"enablePullDownRefresh": true,
"navigationBarTitleText": ""
}
},
{
"path": "pages-drug/drug/drug-order-list",
"style": {
"enablePullDownRefresh": true,
"navigationBarTitleText": ""
}
}
],
"subPackages": [
@ -1684,6 +1691,18 @@
}
}
]
},
{
"root": "pages/plugins/form",
"pages": [
{
"path": "check/check",
"style": {
"enablePullDownRefresh": false,
"navigationBarTitleText": ""
}
}
]
}
],
"preloadRule": {

View File

@ -198,6 +198,32 @@
if (temp_list[index]['is_operable'] != 0) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url('receive', 'coupon', 'coupon'),
method: 'POST',
data: {
coupon_id: value,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, 'success');
temp_list[index] = res.data.data.coupon;
this.setData({
data_list: temp_list,
});
} else {
if (app.globalData.is_login_check(res.data, this, 'coupon_receive_event')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}

View File

@ -0,0 +1,157 @@
<template>
<view :class="theme_view">
<view class="padding-main">
<form @submit="form_submit" class="form-container">
<view class="border-radius-main bg-white padding-main padding-bottom-xxxxl spacing-mb">
<view class="title fw-b text-size margin-vertical-xxxl">{{$t('common.verification_text')}}</view>
<view class="flex-row align-c padding-bottom-xl">
<!-- #ifndef H5 -->
<view class="margin-right" @tap="scan_event">
<uni-icons type="scan" size="56rpx" color="#666"></uni-icons>
</view>
<!-- #endif -->
<input type="text" class="wh-auto check-value" :placeholder="$t('common.verification_message')" placeholder-class="cr-grey-c" :value="check_value" @input="check_event" />
</view>
</view>
<view class="padding-main">
<button type="default" form-type="submit" hover-class="none" class="br-main bg-main cr-white round text-size-lg" :disabled="form_submit_loading">{{$t('common.confirm')}}</button>
</view>
<view class="padding-lg margin-top-xl text-size-lg tc">
<text v-if="(error_msg || null) != null" class="cr-red">{{error_msg}}</text>
<text v-if="(success_msg || null) != null" class="cr-green">{{success_msg}}</text>
</view>
</form>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
form_submit_loading: false,
check_value: '',
error_msg: '',
success_msg: ''
};
},
components: {
componentCommon
},
onLoad(params) {
//
app.globalData.page_event_onload_handle(params);
},
onShow() {
//
app.globalData.page_event_onshow_handle();
//
this.init();
// onshow
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
methods: {
//
init() {
app.globalData.get_user_info(this, "init");
},
//
check_event(e) {
this.setData({
check_value: e.detail.value
});
},
//
scan_event(e) {
var self = this;
uni.scanCode({
success: function (res) {
if((res.result || null) != null) {
self.setData({
check_value: res.result
});
self.form_submit();
}
}
});
},
//
form_submit() {
this.setData({
error_msg: '',
success_msg: ''
});
var form_data = {
extraction_code: this.check_value
}
var validation = [
{ fields: 'extraction_code', msg: this.$t('common.verification_message') }
];
if (app.globalData.fields_check(form_data, validation)) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
this.setData({
form_submit_loading: true
});
var temp_code = this.check_value;
uni.request({
url: app.globalData.get_request_url('verification', 'adminorder', 'shop'),
method: 'POST',
data: form_data,
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
this.setData({
form_submit_loading: false,
check_value: '',
error_msg: '',
success_msg: res.data.msg+''+temp_code+'',
});
} else {
if (app.globalData.is_login_check(res.data, this, 'form_submit')) {
this.setData({
form_submit_loading: false,
error_msg: res.data.msg+''+temp_code+'',
success_msg: '',
});
}
}
},
fail: () => {
uni.hideLoading();
this.setData({
form_submit_loading: false,
error_msg: this.$t('common.internet_error_tips')+''+temp_code+'',
success_msg: '',
});
},
});
}
}
}
};
</script>
<style scoped>
input.check-value {
height: 100rpx;
line-height: 100rpx;
font-size: 44rpx;
}
</style>