Commit 75f4a2e4 authored by 李智书's avatar 李智书

Merge branch 'develop'

parents f567487f ff4fc2f1
......@@ -341,6 +341,44 @@
"navigationBarBackgroundColor":"#01CB88",
"enablePullDownRefresh": false
}
},
{
"path": "pages/ReceiveMoney/ReceiveMoney",
"style": {
"navigationBarTitleText": "领取红包",
"navigationStyle":"custom",
"enablePullDownRefresh": false
}
}
,{
"path" : "pages/StudentPayment/PayProjectHistoryDetails/PayProjectHistoryDetails",
"style" :
{
"navigationBarTitleText": "缴费详情单",
"navigationStyle":"custom",
"enablePullDownRefresh": false
}
}
,{
"path" : "pages/StudentPayment/PayProgress/PayProgress",
"style" :
{
"navigationBarTitleText": "缴费进度",
"navigationStyle":"custom",
"enablePullDownRefresh": false
}
}
,{
"path" : "pages/StudentPayment/PayProgressDetails/PayProgressDetails",
"style" :
{
"navigationStyle":"custom",
"navigationBarTitleText": "缴费进度",
"enablePullDownRefresh": false
}
}
],
......
This diff is collapsed.
......@@ -97,7 +97,8 @@
>
</view>
<!-- 充值其它金额 -->
<view class="OtherMoney" v-if="isOtherMoney">
<!-- <view class="OtherMoney" v-if="isOtherMoney"> -->
<view class="OtherMoney">
<span></span>
<input
v-model="inputOtherM"
......@@ -321,10 +322,6 @@ export default {
lable: "",
value: 1000,
},
{
lable: "其他金额",
value: "",
},
],
numberList: [],
tempFiles1: "../../static/img/idCardBg1.png", //上传身份证临时选择文件
......@@ -453,6 +450,8 @@ export default {
// 输入限制
inputControl(e) {
let this_ = this;
this_.MoneyIndex = -1;
this_.isOtherMoney = true;
let obj = e.detail;
this.$nextTick(function () {
obj.value = obj.value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
......@@ -636,14 +635,15 @@ export default {
},
// 快捷选择金额
async depotMoney(value, MoneyIndex) {
console.log(value);
if (!value) {
this.isOtherMoney = true;
this.Money = "";
this.MoneyIndex = MoneyIndex;
return;
}
// console.log(value);
// if (!value) {
// this.isOtherMoney = true;
// this.Money = "";
// this.MoneyIndex = MoneyIndex;
// return;
// }
this.isOtherMoney = false;
this.inputOtherM = "";
this.Money = parseInt(value);
this.MoneyIndex = MoneyIndex;
},
......
<template>
<view class="contaner">
<view class="headerbox">
<image src="../../static/ReceiveMoney.png" mode="aspectFit"></image>
</view>
<view class="LoginBox">
<view class="phon">
<input type="number" class="phonNumber" :adjust-position="true" maxlength="11" v-model="phonNumber"
value="" placeholder="请输入手机号" placeholder-class="placeholder" />
</view>
<view class="phon" style="margin-top: 50rpx;">
<input type="text" class="phonNumber" :adjust-position="true" v-model="studentName" value=""
placeholder="请输入学生姓名" placeholder-class="placeholder" />
</view>
<view class="VerificationCode">
<input type="number" class="code" value="" :adjust-position="true" maxlength="6"
v-model="VerificationCode" placeholder="请输入验证码" placeholder-class="placeholder" />
<view class="sendBtn" @click="getVerificationCode">
{{timer?second+'s后获取':'获取验证码'}}
</view>
</view>
<view class="ReceiveMoney" @tap="ReceiveMoney">
领取红包
</view>
</view>
<!-- 温馨提示 -->
<view class="activity">
</view>
</view>
</template>
<script>
export default {
name: "ReceiveMoney",
data() {
return {
phonNumber: "",
VerificationCode: "",
studentName: "",
timer: null,
second: 3
}
},
methods: {
// 获取验证码
async getVerificationCode() {
try {
if (!this.phonNumber) {
this.$toast("请输入手机号码!");
return
}
if (this.timer) {
return
}
this.$toast.loading({
duration: 0,
message: '请稍后...',
forbidClick: true,
loadingType: 'spinner',
});
this.timer = setInterval(() => {
this.second--;
if (!this.second) {
clearInterval(this.timer);
// 手动清除 Toast
this.$toast.clear();
this.second = 60
this.timer = null
}
}, 1000);
} catch (e) {
//TODO handle the exception
console.log(e);
}
},
// 验证手机号码领取红包
async ReceiveMoney() {
try {
if (!this.phonNumber) {
this.$toast("请输入手机号码!");
return
}
if (!this.VerificationCode) {
this.$toast("请输入验证码!");
return
}
this.$toast.loading({
duration: 3000,
message: '请稍后...',
forbidClick: true,
loadingType: 'spinner',
});
await new Promise((res, rej) => {
setTimeout(() => {
res()
}, 3000)
})
await this.$dialog.alert({
title: '系统提示',
message: '领取成功!',
theme: 'round-button',
});
if (typeof WeixinJSBridge !== 'undefined') {
WeixinJSBridge.call('closeWindow');
} else {
window.opener = null;
window.close()
}
} catch (e) {
//TODO handle the exception
console.warn("----", e);
}
}
}
}
</script>
<style>
page {
width: 750pxr;
height: 100vh;
background: linear-gradient(0deg, #790003 0%, #BD000B 100%);
position: relative;
}
.headerbox {
width: 750rpx;
height: 268rpx;
}
.headerbox image {
width: 100%;
height: 100%;
position: relative;
}
.LoginBox {
width: 570rpx;
height: 450rpx;
margin: 0 auto;
position: absolute;
left: 0;
right: 0;
top: 404rpx;
}
.placeholder {
/* width: 310rpx; */
font-size: 30rpx;
font-family: Source Han Sans CN;
font-weight: 400;
color: #999999;
/* padding-left: 31rpx; */
}
.phonNumber {
/* width: 570rpx; */
height: 100rpx;
background: #FFFFFF;
border-radius: 8rpx;
padding-left: 31rpx;
}
.VerificationCode {
display: flex;
justify-content: space-between;
margin-top: 50rpx;
}
.code {
width: 350rpx;
height: 100rpx;
background: #FFFFFF;
border-radius: 8rpx;
padding-left: 31rpx;
}
.sendBtn {
width: 170rpx;
height: 100rpx;
background: #FFE49C;
border-radius: 8rpx;
line-height: 100rpx;
text-align: center;
font-size: 28rpx;
font-family: Source Han Sans CN;
font-weight: 400;
color: #222222;
}
.ReceiveMoney {
width: 570rpx;
height: 100rpx;
background: #FFC948;
border-radius: 8rpx;
line-height: 100rpx;
text-align: center;
font-size: 36rpx;
font-family: Source Han Sans CN;
font-weight: 500;
color: #222222;
margin-top: 100rpx;
}
</style>
......@@ -36,7 +36,7 @@
<text class="name">年级班级:</text>
<text class="value">{{ChargeProDetail.userGrade||""}} {{ChargeProDetail.userClass||""}}</text>
</view>
<view class="rowInfo">
<view class="rowInfo" v-if="false">
<text class="name">订单编号:</text>
<text class="value">{{ChargeProDetail.tradeId||""}}</text>
</view>
......@@ -164,6 +164,12 @@
if (options.PaymentRsults) {
this_.dialogShow = true
this.PaymentRsults = parseInt(options.PaymentRsults);
if (this.PaymentRsults == 1) {
// 支付成功返回交费项目列表
setTimeout(() => {
this_.dialogClosed()
}, 3000)
}
// 上报支付结果
this.returnPaymentResult(uni.getStorageSync("prepayId").tradeId, this.PaymentRsults)
}
......
This diff is collapsed.
......@@ -44,21 +44,30 @@
@tap="PayOrderDetails(item)">
<view class="listitem top">
<view class="title">
2022高一春季收费
{{item.chargeName}}
</view>
<view class="money">
100.00
<view class="money" v-if="false">
{{item.amountMust}}
</view>
</view>
<view class="hairline"
style="width: 686rpx;height: 1rpx; background-color:#E6E6E6;margin-top: 28rpx;">
</view>
<view class="History">
<view class="Historyitem">
<span>实交金额:</span>
<span class="money">{{item.realAmount/100||""}}</span>
</view>
<view class="Historyitem">
<span>交费时间:</span>
<span>{{item.payTime||""}}</span>
</view>
</view>
<view class="listitem center">
<text class="describe">
本次收费需要收取高一春季开学相关费用,并根据
备注输入相关信息。
{{item.descInfo||""}}
</text>
</view>
<view class="listitem botto" style="align-items: baseline;">
<van-icon name="clock-o" /> <text class="Tips">5天后收费结束</text>
</view>
</view>
<view class="bottomtxt">已经到底啦~</view>
</view>
......@@ -66,8 +75,8 @@
<view class="noData" v-else>
<image style="width: 290rpx;height: 242rpx;" :src="ImgUrl+'StudentPayment/development.png'"
mode='widthFix'></image>
<view>程序员正在玩命开发</view>
<view class="bottomtxt">详情请联系客服</view>
<view>正在玩命加载</view>
<view class="bottomtxt">暂无历交费项目</view>
</view>
</view>
</van-tab>
......@@ -116,13 +125,19 @@
onReachBottom: function(e) {
console.log("onReachBottom", e);
this.pageCurrent = this.pageCurrent + 1
if (this.active == 0) {
this.getPayProject()
return
}
this.queryChargeHistoryPage()
},
methods: {
// 切换tab
async PayProjectTab(index) {
try {
this.pageCurrent = 1
if (index > 0) {
this.queryChargeHistoryPage(index)
return
}
this.getPayProject(index)
......@@ -131,6 +146,56 @@
console.log(e);
}
},
// 交费历史记录分页查询
async queryChargeHistoryPage() {
try {
let data = await this.$http.post({
url: orderApi + '/order-charge/app/charge/project/queryChargeHistoryPage'
}, {
"pageCurrent": this.pageCurrent,
"pageSize": this.pageSize,
"schoolId": this.allData.schoolId,
"userId": this.allData.userId || this.allData.userID
})
if (data.code != 200) {
uni.showToast({
icon: "none",
mask: true,
title: data.msg
})
this.PayProjectHistory = []
return
}
if (data.data.records && Array.isArray(data.data.records)) {
let tmp = data.data.records;
let newArr = []
for (let s of tmp) {
s.payTime = dayjs(s.payTime).format("YYYY-MM-DD HH:mm:ss");
newArr.push(s)
}
if (this.pageCurrent == 1) {
this.PayProjectHistory = newArr
return
}
if (this.pageCurrent > 1) {
this.PayProjectHistory.push(...newArr)
return
}
} else {
this.PayProjectHistory = []
}
} catch (e) {
//TODO handle the exception
console.log(e);
uni.showToast({
icon: "none",
mask: true,
title: e.message
})
}
},
// 交费项目信息分页查询
async getPayProject(index) {
try {
......@@ -188,13 +253,19 @@
})
}
},
// 收费项目详情
// 收费项目详情/历史详情
async PayOrderDetails(data) {
try {
console.log(data);
uni.setStorageSync("PayOrderDetails", data)
let url = "../PayOrderDetails/PayOrderDetails?chargeId=" + data.id || ''
if (this.active == 0) {
url = "../PayOrderDetails/PayOrderDetails?chargeId=" + data.id || ''
} else {
url = "../PayProjectHistoryDetails/PayProjectHistoryDetails?chargeId=" + data.id || ''
}
uni.navigateTo({
url: "../PayOrderDetails/PayOrderDetails?chargeId=" + data.id || ''
url
})
} catch (e) {
//TODO handle the exception
......@@ -299,10 +370,50 @@
.Tips {
padding-left: 10rpx;
}
span {
color: #333333;
font-size: 30rpx;
}
}
}
.ProjectHistory {}
.ProjectHistory {
height: 330rpx;
background: #FFFFFF;
border-radius: 16rpx;
.money {
font-size: 36rpx;
font-family: DIN;
font-weight: bold;
color: #01CB88;
}
.money::before {
content: "¥";
font-size: 32rpx;
font-family: PingFang SC;
font-weight: bold;
color: #01CB88;
}
.describe {
padding-top: 20rpx !important;
}
.History {
width: 630rpx;
margin: 0 auto;
.Historyitem {
height: 60rpx;
line-height: 60rpx;
display: flex;
justify-content: space-between;
}
}
}
.listitem {
display: flex;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment