commission--yt-commit

This commit is contained in:
yuanteng0011 2025-06-03 21:29:15 +08:00
parent eaf4b6c5e5
commit 361f6a89d3
16 changed files with 538 additions and 104 deletions

View File

@ -20,7 +20,8 @@
"pages/loginModule/forgetPwd/forgetPwd", "pages/loginModule/forgetPwd/forgetPwd",
"pages/personCenter/commissionSetting/commissionSetting", "pages/personCenter/commissionSetting/commissionSetting",
"pages/personCenter/resetPwd/resetPwd", "pages/personCenter/resetPwd/resetPwd",
"pages/personCenter/bindBankCard/bindBankCard" "pages/personCenter/bindBankCard/bindBankCard",
"pages/projectModule/settlement/settlement"
], ],
"window": { "window": {
"navigationBarTextStyle": "black", "navigationBarTextStyle": "black",

View File

@ -1,3 +1,5 @@
import { baseUrl } from "../../../request"
// pages/personCenter/billingDetails/billingDetails.js // pages/personCenter/billingDetails/billingDetails.js
Page({ Page({
@ -5,14 +7,33 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
items: [null, null, null, null] withdrawalList: [],
withdrawalStatus: ['审核中', '提现成功', '提现失败']
}, },
getWithdrawalList() {
wx.request({
url: baseUrl + '/withdrawalApply/query',
method: 'POST',
header: {
Authorization: wx.getStorageSync('token')
},
success: res => {
console.log('账单明细---->',res.data);
console.log('登录token---->',wx.getStorageSync('token'));
if (res.data.code === 1) {
this.setData({
withdrawalList: res.data.data
})
}
}
})
},
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
this.getWithdrawalList()
}, },
/** /**

View File

@ -1,66 +1,268 @@
import { baseUrl } from "../../../request"
// pages/personCenter/bindBankCard/bindBankCard.js // pages/personCenter/bindBankCard/bindBankCard.js
Page({ Page({
/** /**
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
id: 0, // 账户ID
cardHolder: '', // 持卡人
idCardNumber: '', // 身份证号
phoneNumber: '', // 手机号
bankCardNumber: '', // 银行卡号
bankName: '', // 开户银行
isUpdate: false, // 是否更新
},
/**
* 更新按钮点击事件
*/
updateInfo() {
if (this.validateForm()) {
// 构建请求体
const requestData = {
id: this.data.id,
cardHolder: this.data.cardHolder,
idCardNumber: this.data.idCardNumber,
phoneNumber: this.data.phoneNumber,
bankCardNumber: this.data.bankCardNumber,
openBank: this.data.bankName, // 添加开户银行字段
};
// 发送请求到后台接口
wx.request({
url: baseUrl + '/userAccount/update', // 替换成实际接口地址
method: 'POST',
header: {
Authorization: wx.getStorageSync('token')
},
data: requestData,
success(res) {
// console.log('后端返回---->',res.data);
// 成功的回调
wx.showToast({
title: '更新成功',
icon: 'success',
});
// 这里可以跳转到其他页面
wx.reLaunch({
url: '/pages/personCenter/withdrawalAccount/withdrawalAccount',
});
},
fail(err) {
// 失败的回调
wx.showToast({
title: '绑定失败,请重试',
icon: 'none',
});
}
});
}
},
// 获取当前账户信息
getAccountInfo() {
wx.request({
url: baseUrl + '/userAccount/queryById', // 替换为你的后端接口
method: 'POST',
header: {
Authorization: wx.getStorageSync('token'),
},
success: (res) => {
// console.log('当前账户是---->',res.data.data);
if (res.data.code === 1) {
this.setData({
id: res.data.data.id,
cardHolder: res.data.data.cardHolder,
idCardNumber: res.data.data.idCardNumber,
phoneNumber: res.data.data.phoneNumber,
bankCardNumber: res.data.data.bankCardNumber,
bankName: res.data.data.openBank
});
} else {
wx.showToast({
title: '获取数据失败',
icon: 'none'
});
}
},
fail: () => {
wx.showToast({
title: '请求失败',
icon: 'none'
});
}
});
},
/**
* 处理输入框的变化
*/
handleInputChange(e) {
const { field } = e.target.dataset; // 获取字段名
this.setData({
[field]: e.detail.value, // 动态更新输入框数据
});
},
/**
* 验证表单
*/
validateForm() {
const { cardHolder, idCardNumber, phoneNumber, bankCardNumber, bankName } = this.data;
// 检查必填字段是否为空
if (!cardHolder || !idCardNumber || !phoneNumber || !bankCardNumber || !bankName) {
wx.showToast({
title: '用户信息不全',
icon: 'none',
});
return false;
}
// 检查手机号是否为 11 位且只包含数字
const phonePattern = /^[0-9]{11}$/;
if (!phonePattern.test(phoneNumber)) {
wx.showToast({
title: '手机号必须是 11 位数字',
icon: 'none',
});
return false;
}
// 检查身份证号是否为 18 位且只包含数字
const idCardPattern = /^[0-9]{18}$/;
if (!idCardPattern.test(idCardNumber)) {
wx.showToast({
title: '身份证号必须是 18 位数字',
icon: 'none',
});
return false;
}
// 检查银行卡号是否为 16 位且只包含数字
const bankCardPattern = /^[0-9]{16}$/;
if (!bankCardPattern.test(bankCardNumber)) {
wx.showToast({
title: '银行卡号必须是 16 位数字',
icon: 'none',
});
return false;
}
// 检查持卡人不能是纯数字
const cardHolderPattern = /^\d+$/;
if (cardHolderPattern.test(cardHolder)) {
wx.showToast({
title: '持卡人姓名不能是数字',
icon: 'none',
});
return false;
}
// 检查开户银行不能包含字母或数字,只能是中文
const bankNamePattern = /^[\u4e00-\u9fa5]+$/; // 只允许中文字符
if (!bankNamePattern.test(bankName)) {
wx.showToast({
title: '开户银行只能包含中文字符',
icon: 'none',
});
return false;
}
return true;
},
/**
* 保存按钮点击事件
*/
saveInfo() {
if (this.validateForm()) {
// 构建请求体
const requestData = {
cardHolder: this.data.cardHolder,
idCardNumber: this.data.idCardNumber,
phoneNumber: this.data.phoneNumber,
bankCardNumber: this.data.bankCardNumber,
openBank: this.data.bankName, // 添加开户银行字段
};
// 发送请求到后台接口
wx.request({
url: baseUrl + '/userAccount/add', // 替换成实际接口地址
method: 'POST',
header: {
Authorization: wx.getStorageSync('token')
},
data: requestData,
success(res) {
console.log('后端返回---->',res.data);
// 成功的回调
wx.showToast({
title: '绑定成功',
icon: 'success',
});
// 这里可以跳转到其他页面
wx.reLaunch({
url: '/pages/personCenter/withdrawal/withdrawal',
});
},
fail(err) {
// 失败的回调
wx.showToast({
title: '绑定失败,请重试',
icon: 'none',
});
}
});
}
}, },
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
// console.log('---->',options.isUpdate);
this.getAccountInfo()
this.setData({
isUpdate: options.isUpdate
})
}, },
/** /**
* 生命周期函数--监听页面初次渲染完成 * 生命周期函数--监听页面初次渲染完成
*/ */
onReady() { onReady() {},
},
/** /**
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow() { onShow() {},
},
/** /**
* 生命周期函数--监听页面隐藏 * 生命周期函数--监听页面隐藏
*/ */
onHide() { onHide() {},
},
/** /**
* 生命周期函数--监听页面卸载 * 生命周期函数--监听页面卸载
*/ */
onUnload() { onUnload() {},
},
/** /**
* 页面相关事件处理函数--监听用户下拉动作 * 页面相关事件处理函数--监听用户下拉动作
*/ */
onPullDownRefresh() { onPullDownRefresh() {},
},
/** /**
* 页面上拉触底事件的处理函数 * 页面上拉触底事件的处理函数
*/ */
onReachBottom() { onReachBottom() {},
},
/** /**
* 用户点击右上角分享 * 用户点击右上角分享
*/ */
onShareAppMessage() { onShareAppMessage() {},
});
}
})

View File

@ -1,44 +1,88 @@
<view class="flex-col page"> <view class="flex-col page">
<text class="self-center font text">绑定银行卡</text> <text wx:if="{{ isUpdate }}" class="self-center font text">更改银行卡信息</text>
<text wx:else="{{ isUpdate }}" class="self-center font text">绑定银行卡信息</text>
<text class="self-center font_2 text_2">请绑定持卡人本人的银行卡</text> <text class="self-center font_2 text_2">请绑定持卡人本人的银行卡</text>
<view class="flex-col self-stretch group"> <view class="flex-col self-stretch group">
<!-- 持卡人 -->
<view class="self-start group_2"> <view class="self-start group_2">
<text class="font_2">持卡人</text> <text class="font_2">持卡人</text>
<text class="font_3">*</text> <text class="font_3">*</text>
</view> </view>
<view class="flex-col justify-start items-start self-stretch text-wrapper mt-11"> <view class="flex-col justify-start items-start self-stretch text-wrapper mt-11">
<input class="text_3 font" placeholder="请输入持卡人" /> <input
class="text_3 font"
placeholder="请输入持卡人"
data-field="cardHolder"
bindinput="handleInputChange"
value="{{ cardHolder }}"
/>
</view> </view>
<!-- 身份证号 -->
<view class="self-start group_3 mt-11"> <view class="self-start group_3 mt-11">
<text class="font_2 text_4">身份证号</text> <text class="font_2 text_4">身份证号</text>
<text class="font_3">*</text> <text class="font_3">*</text>
</view> </view>
<view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11"> <view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11">
<input class="text_12 font_4" placeholder="请输入持卡人身份证号" /> <input
class="text_12 font_4"
placeholder="请输入持卡人身份证号"
data-field="idCardNumber"
bindinput="handleInputChange"
value="{{ idCardNumber }}"
/>
</view> </view>
<!-- 手机号 -->
<view class="self-start group_4 mt-11"> <view class="self-start group_4 mt-11">
<text class="font_2">手机号</text> <text class="font_2">手机号</text>
<text class="font_3">*</text> <text class="font_3">*</text>
</view> </view>
<view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11"> <view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11">
<input class="text_1 font_4" placeholder="请输入持卡人绑定的手机号" /> <input
class="text_1 font_4"
placeholder="请输入持卡人绑定的手机号"
data-field="phoneNumber"
bindinput="handleInputChange"
value="{{ phoneNumber }}"
/>
</view> </view>
<!-- 银行卡号 -->
<view class="self-start group_5 mt-11"> <view class="self-start group_5 mt-11">
<text class="font_2 text_6">银行卡号</text> <text class="font_2 text_6">银行卡号</text>
<text class="font_3">*</text> <text class="font_3">*</text>
</view> </view>
<view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11"> <view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11">
<input class="text_5 font_4" placeholder="请输入持卡人银行卡号" /> <input
class="text_5 font_4"
placeholder="请输入持卡人银行卡号"
data-field="bankCardNumber"
bindinput="handleInputChange"
value="{{ bankCardNumber }}"
/>
</view> </view>
<view class="self-start group_6 mt-11"> <view class="self-start group_6 mt-11">
<text class="font_2 text_7">开户银行</text> <text class="font_2 text_7">开户银行</text>
<text class="font_3">*</text> <text class="font_3">*</text>
</view> </view>
<view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11"> <view class="flex-col justify-start items-start self-stretch text-wrapper_2 mt-11">
<input class="text_1 font_4" placeholder="请输入开户银行" /> <input
class="text_1 font_4"
placeholder="请输入开户银行"
data-field="bankName"
bindinput="handleInputChange"
value="{{ bankName }}"
/>
</view> </view>
</view> </view>
<view class="flex-col justify-start items-center self-center text-wrapper_3">
<text class="font_2 text_8">保存</text> <!-- 保存按钮 -->
<view wx:if="{{ isUpdate }}" class="flex-col justify-start items-center self-center text-wrapper_3">
<text class="font_2 text_8" bindtap="updateInfo" >更新</text>
</view>
<view wx:else="{{ isUpdate }}" class="flex-col justify-start items-center self-center text-wrapper_3">
<text class="font_2 text_8" bindtap="saveInfo" >保存</text>
</view> </view>
</view> </view>

View File

@ -7,15 +7,15 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
items: [null, null], items: [null],
nickName: "", nickName: "",
userAvatar: "", userAvatar: "",
phoneNumber: "", phoneNumber: "",
userAccount: "", userAccount: "",
invitationCode: "", invitationCode: "",
currentBalance: "", // 当前余额 currentBalance: "", // 当前余额
withdrawalAmount: "", // 提现中的余额 withdrawalingBalance: 0, // 提现中的余额
withdrawnAmount: "", // 已提现的余额 withdrawaledAmount: "", // 已提现的余额
totalIncome:"", // 累计收入 totalIncome:"", // 累计收入
showPopup: false, // 控制弹窗显示与否 showPopup: false, // 控制弹窗显示与否
qrcode: "https://img.picui.cn/free/2025/05/29/6837c53582068.gif", // 设置二维码图片的路径 qrcode: "https://img.picui.cn/free/2025/05/29/6837c53582068.gif", // 设置二维码图片的路径
@ -98,8 +98,8 @@ Page({
if (res.data.code === 1) { if (res.data.code === 1) {
this.setData({ this.setData({
currentBalance: res.data.data.currentBalance, // 当前余额 currentBalance: res.data.data.currentBalance, // 当前余额
withdrawalAmount: res.data.data.withdrawalAmount, // 提现中的余额 withdrawalingBalance: res.data.data.withdrawalAmount, // 提现中的余额
withdrawnAmount: res.data.data.withdrawnAmount, // 已提现的余额 withdrawaledAmount: res.data.data.withdrawnAmount, // 已提现的余额
totalIncome: res.data.data.totalIncome // 累计收入 totalIncome: res.data.data.totalIncome // 累计收入
}) })
} else { } else {

View File

@ -2,17 +2,17 @@
<view class="flex-col relative section"> <view class="flex-col relative section">
<view class="flex-row justify-between items-center group"> <view class="flex-row justify-between items-center group">
<view class="flex-col"> <view class="flex-col">
<text class="self-start font text">qingcheng</text> <text class="self-start font text">{{ nickName }}</text>
<view class="flex-row items-center self-stretch group_2 mt-9"> <view class="flex-row items-center self-stretch group_2 mt-9">
<image <image
class="image_3" class="image_3"
src="./images/dianhua.png" src="./images/dianhua.png"
mode="aspectFill" mode="aspectFill"
/> />
<text class="font_2 text_2 ml-7">15214547473</text> <text class="font_2 text_2 ml-7">{{ phoneNumber }}</text>
</view> </view>
<view class="flex-row items-center self-stretch section_2 mt-9"> <view class="flex-row items-center self-stretch section_2 mt-9">
<text class="font_3 text_3">邀请码:123445</text> <text class="font_3 text_3">邀请码:{{ invitationCode }}</text>
<image <image
class="shrink-0 image_4" class="shrink-0 image_4"
src="./images/fuzhi.png" src="./images/fuzhi.png"
@ -34,7 +34,7 @@
<view class="flex-row justify-between items-center group_4"> <view class="flex-row justify-between items-center group_4">
<view class="group_5"> <view class="group_5">
<text class="font_2 text_6">当前金额:</text> <text class="font_2 text_6">当前金额:</text>
<text class="text_5">¥5.00</text> <text class="text_5">¥{{ currentBalance }}</text>
</view> </view>
<view class="flex-row items-center section_3" bind:tap="lijitixian"> <view class="flex-row items-center section_3" bind:tap="lijitixian">
<image <image
@ -47,15 +47,15 @@
<view class="flex-row items-start equal-division section_4"> <view class="flex-row items-start equal-division section_4">
<view class="flex-col items-center equal-division-item_8"> <view class="flex-col items-center equal-division-item_8">
<text class="font_2 text_8">提现中</text> <text class="font_2 text_8">提现中</text>
<text class="font_4 mt-15">¥0.00</text> <text class="font_4 mt-15">¥{{ withdrawalingBalance }}</text>
</view> </view>
<view class="flex-col items-center group_6 equal-division-item"> <view class="flex-col items-center group_6 equal-division-item">
<text class="font_2 text_9">已提现</text> <text class="font_2 text_9">已提现</text>
<text class="font_4 mt-15">¥0.00</text> <text class="font_4 mt-15">¥{{ withdrawaledAmount }}</text>
</view> </view>
<view class="flex-col items-center group_7 equal-division-item_8"> <view class="flex-col items-center group_7 equal-division-item_8">
<text class="font_2 text_10">累计收入</text> <text class="font_2 text_10">累计收入</text>
<text class="font_4 mt-15">¥0.00</text> <text class="font_4 mt-15">¥{{ totalIncome }}</text>
</view> </view>
</view> </view>
</view> </view>

View File

@ -1,66 +1,92 @@
import { baseUrl } from "../../../request";
// pages/personCenter/withdrawal/withdrawal.js // pages/personCenter/withdrawal/withdrawal.js
Page({ Page({
/** /**
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
withdrawalAccount: '', // 这里保存提现账户信息
},
// 获取当前账户信息
getAccountInfo() {
wx.request({
url: baseUrl + '/userAccount/queryById', // 替换为你的后端接口
method: 'POST',
header: {
Authorization: wx.getStorageSync('token'),
},
success: (res) => {
console.log('当前账户是---->',res.data.data);
if (res.data.code === 1) {
this.setData({
withdrawalAccount: res.data.data.bankCardNumber,
});
} else {
wx.showToast({
title: '获取数据失败',
icon: 'none'
});
}
},
fail: () => {
wx.showToast({
title: '请求失败',
icon: 'none'
});
}
});
}, },
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
this.getAccountInfo()
},
/**
* 跳转到添加提现账户页面
*/
goToAddAccount() {
wx.navigateTo({
url: '/pages/personCenter/bindBankCard/bindBankCard', // 自定义的添加提现账户页面
});
}, },
/** /**
* 生命周期函数--监听页面初次渲染完成 * 生命周期函数--监听页面初次渲染完成
*/ */
onReady() { onReady() {},
},
/** /**
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow() { onShow() {},
},
/** /**
* 生命周期函数--监听页面隐藏 * 生命周期函数--监听页面隐藏
*/ */
onHide() { onHide() {},
},
/** /**
* 生命周期函数--监听页面卸载 * 生命周期函数--监听页面卸载
*/ */
onUnload() { onUnload() {},
},
/** /**
* 页面相关事件处理函数--监听用户下拉动作 * 页面相关事件处理函数--监听用户下拉动作
*/ */
onPullDownRefresh() { onPullDownRefresh() {},
},
/** /**
* 页面上拉触底事件的处理函数 * 页面上拉触底事件的处理函数
*/ */
onReachBottom() { onReachBottom() {},
},
/** /**
* 用户点击右上角分享 * 用户点击右上角分享
*/ */
onShareAppMessage() { onShareAppMessage() {},
});
}
})

View File

@ -2,11 +2,15 @@
<view class="flex-col self-stretch section"> <view class="flex-col self-stretch section">
<text class="self-start font">提现账户</text> <text class="self-start font">提现账户</text>
<view class="flex-row items-center self-stretch section_2 mt-11"> <view class="flex-row items-center self-stretch section_2 mt-11">
<image <!-- 判断是否有提现账户信息 -->
class="image" <block wx:if="{{withdrawalAccount}}">
src="./images/zh.png" <image class="image" src="./images/zh.png" />
/> <text class="font_2 text ml-10">{{withdrawalAccount}}</text>
<text class="font_2 text ml-10">622031207006363442</text> </block>
<block wx:else>
<!-- 没有提现账户时显示“去添加”按钮 -->
<button class="add-btn" bindtap="goToAddAccount">去添加</button>
</block>
</view> </view>
</view> </view>
<view class="flex-col self-stretch section_3"> <view class="flex-col self-stretch section_3">

View File

@ -89,3 +89,11 @@
color: #ffffff; color: #ffffff;
line-height: 28.36rpx; line-height: 28.36rpx;
} }
.add-btn {
background-color: #ff8d1a;
color: #ffffff;
font-size: 26.72rpx;
padding: 10rpx 20rpx;
border-radius: 10rpx;
border: none;
}

View File

@ -1,3 +1,5 @@
import { baseUrl } from "../../../request";
// pages/personCenter/withdrawalAccount/withdrawalAccount.js // pages/personCenter/withdrawalAccount/withdrawalAccount.js
Page({ Page({
@ -5,18 +7,58 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
cardHolder: '', // 姓名
idCardNumber: '', // 身份证号
phoneNumber: '', // 手机号
bankCardNumber: '', // 银行卡号
openBank: '' // 开户银行
}, },
// 获取当前账户信息
getAccountInfo() {
wx.request({
url: baseUrl + '/userAccount/queryById', // 替换为你的后端接口
method: 'POST',
header: {
Authorization: wx.getStorageSync('token'),
},
success: (res) => {
console.log('当前账户是---->',res.data);
if (res.data.code === 1) {
this.setData({
cardHolder: res.data.data.cardHolder,
idCardNumber: res.data.data.idCardNumber,
phoneNumber: res.data.data.phoneNumber,
bankCardNumber: res.data.data.bankCardNumber,
openBank: res.data.data.openBank
});
} else {
wx.showToast({
title: '获取数据失败',
icon: 'none'
});
}
},
fail: () => {
wx.showToast({
title: '请求失败',
icon: 'none'
});
}
});
},
gotoEditBankCardInfo() { gotoEditBankCardInfo() {
wx.navigateTo({ wx.navigateTo({
url: '/pages/personCenter/bindBankCard/bindBankCard', url: `/pages/personCenter/bindBankCard/bindBankCard?isUpdate=${true}`,
}) })
}, },
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
this.getAccountInfo()
}, },
/** /**

View File

@ -6,25 +6,25 @@
<view class="flex-col self-stretch group"> <view class="flex-col self-stretch group">
<view class="flex-row justify-between group_2"> <view class="flex-row justify-between group_2">
<text class="font text">姓名</text> <text class="font text">姓名</text>
<text class="font text_2">陈新知</text> <text class="font text_2">{{cardHolder}}</text> <!-- 绑定姓名 -->
</view> </view>
<view class="flex-row justify-between items-center group_2 mt-27"> <view class="flex-row justify-between items-center group_2 mt-27">
<text class="font text_3">手机号</text> <text class="font text_3">手机号</text>
<text class="font_2 text_4">15888610253</text> <text class="font_2 text_4">{{phoneNumber}}</text> <!-- 绑定手机号 -->
</view> </view>
<view class="flex-col mt-27"> <view class="flex-col mt-27">
<view class="flex-row justify-between items-center group_3"> <view class="flex-row justify-between items-center group_3">
<text class="font">身份证号</text> <text class="font">身份证号</text>
<text class="font_2">33100420******50910</text> <text class="font_2">{{idCardNumber}}</text> <!-- 绑定身份证号 -->
</view> </view>
<view class="flex-row justify-between items-center group_4"> <view class="flex-row justify-between items-center group_4">
<text class="font">开户银行</text> <text class="font">开户银行</text>
<text class="font_2 text_5">浙江省台州市中国工商银行台州蓬街支行</text> <text class="font_2 text_5">{{openBank}}</text> <!-- 绑定开户银行 -->
</view> </view>
</view> </view>
<view class="flex-row justify-between mt-27"> <view class="flex-row justify-between mt-27">
<text class="font text_6">银行卡号</text> <text class="font text_6">银行卡号</text>
<text class="font_2">62220********363442</text> <text class="font_2">{{bankCardNumber}}</text> <!-- 绑定银行卡号 -->
</view> </view>
</view> </view>
<view class="flex-col justify-start items-center self-center text-wrapper" bind:tap="gotoEditBankCardInfo"> <view class="flex-col justify-start items-center self-center text-wrapper" bind:tap="gotoEditBankCardInfo">

View File

@ -1,3 +1,5 @@
import { baseUrl } from "../../../request";
// pages/projectModule/settlement/settlement.js // pages/projectModule/settlement/settlement.js
Page({ Page({
@ -5,14 +7,61 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
items: [null, null], pid: 0, // 项目id
projectSettlementList: [], // 项目结算列表
},
// 获取项目明细列表
getProjectSettlementList() {
const pid = this.data.pid
wx.request({
url: baseUrl + '/projectSettlement/query/all/settle',
method: 'POST',
header: {
Authorization: wx.getStorageSync('token')
},
data: {
id: pid
},
success: res =>{
console.log('---->',res.data);
if (res.data.code === 1) {
}
}
})
}, },
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
this.setData({ pid: options.id })
console.log('项目id--->',options.id);
this.getProjectSettlementList()
// 模拟后端响应数据
const response = {
code: 0,
data: [
{
id: 1,
projectDetailName: "新用户完成首单",
settlementQuantity: 2,
settlementRevenue: 2.34,
workTime: "2025-05-20", // 示例作业时间
settlementTime: "2025-05-22", // 示例结算时间
revenueSource: false
}
],
message: ""
};
if (response.code === 0) {
// 将后端返回的数据赋值给 projectSettlementList
this.setData({
projectSettlementList: response.data
});
}
}, },
/** /**
@ -63,4 +112,4 @@ Page({
onShareAppMessage() { onShareAppMessage() {
} }
}) });

View File

@ -1,14 +1,14 @@
<view class="flex-col page"> <view class="flex-col page">
<view class="flex-col justify-start items-start text-wrapper"><text class="text">项目:饿了么-超吃卡</text></view> <view class="flex-col justify-start items-start text-wrapper"><text class="text">项目:饿了么-超吃卡</text></view>
<view class="flex-col mt-11"> <view class="flex-col mt-11">
<view class="flex-col list-item mt-20" wx:for="{{items}}" wx:for-item="item" wx:for-index="index" wx:key="index"> <view class="flex-col list-item mt-20" wx:for="{{ projectSettlementList }}" wx:for-item="item" wx:for-index="index" wx:key="index">
<view class="flex-row items-center group"> <view class="flex-row items-center group">
<view class="flex-row items-center flex-1"> <view class="flex-row items-center flex-1">
<image <image
class="shrink-0 image" class="shrink-0 image"
src="https://ide.code.fun/api/image?token=68368d354ae84d001230f4d1&name=1ca23eeec01596125d5539fcda13702d.png" src="https://ide.code.fun/api/image?token=68368d354ae84d001230f4d1&name=1ca23eeec01596125d5539fcda13702d.png"
/> />
<text class="font text_2 ml-14">美团神券包-春季活动</text> <text class="font text_2 ml-14">{{ projectSettlementList.projectDetailName}}</text>
</view> </view>
<text class="font text_3 ml-21">业务员:陈新知</text> <text class="font text_3 ml-21">业务员:陈新知</text>
</view> </view>
@ -20,20 +20,20 @@
</view> </view>
<view class="flex-col justify-start group_2 mt-10"> <view class="flex-col justify-start group_2 mt-10">
<view class="flex-row justify-center items-center relative section_2"> <view class="flex-row justify-center items-center relative section_2">
<text class="font_3 text_6 pos">3.6元购买券</text> <text class="font_3 text_6 pos">{{ projectSettlementList.settlementQuantity }}元购买券</text>
<text class="font_4">10</text> <text class="font_4">{{ projectSettlementList.settlementQuantity }}</text>
<text class="font_5 pos_2">¥3.00</text> <text class="font_5 pos_2">¥{{ projectSettlementList.settlementRevenue.toFixed(2) }}</text>
</view> </view>
</view> </view>
</view> </view>
<view class="flex-row group_1"> <view class="flex-row group_1">
<view class="group_3"> <view class="group_3">
<text class="font_6 text_7">作业时间:</text> <text class="font_6 text_7">作业时间:</text>
<text class="font_5">2025-05-20</text> <text class="font_5">{{ projectSettlementList.workTime || '暂无' }}</text>
</view> </view>
<view class="group_4 ml-47"> <view class="group_4 ml-47">
<text class="font_6">结算时间:</text> <text class="font_6">结算时间:</text>
<text class="font_5">2025-05-22</text> <text class="font_5">{{ projectSettlementList.settlementTime || '暂无' }}</text>
</view> </view>
</view> </view>
</view> </view>

View File

@ -1,3 +1,5 @@
import { baseUrl } from "../../../request"
// pages/projectModule/userProject/userProject.js // pages/projectModule/userProject/userProject.js
Page({ Page({
@ -6,18 +8,53 @@ Page({
*/ */
data: { data: {
items: [null, null, null], userProjectList: [],
promotionCode: true // 推广码开启
}, },
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad(options) {
this.getProgram();
}, },
tiaozhuan(){
// 结算记录
gotoSubSettlement(e) {
const projectId = e.currentTarget.dataset.id;
wx.navigateTo({ wx.navigateTo({
url: '/pages/projectModule/projectDetail/projectDetail', url: `/pages/projectModule/settlement/settlement?id=${projectId}`,
})
},
// 获取项目列表
getProgram() {
wx.request({
url: baseUrl + '/project/query/card',
method: 'POST',
header: {
Authorization: wx.getStorageSync('token')
},
success: res => {
// console.log(res.data);
if(res.data.code === 1) {
this.setData({
userProjectList: res.data.data
})
}
}
})
},
// 跳转项目明细
gotoProjectDetail(e){
// 获取data-id中的值
const projectId = e.currentTarget.dataset.id;
wx.navigateTo({
url: `/pages/projectModule/projectDetail/projectDetail?id=${projectId}`,
}) })
}, },
/** /**

View File

@ -16,18 +16,18 @@
class="image_2" class="image_2"
src="./images/yjt.png" src="./images/yjt.png"
bind:tap="gotoProjectDetail" bind:tap="gotoProjectDetail"
data-id="{{ item.projectId }}" data-id="{{ item.id }}"
/> />
</view> </view>
<view class="mt-14 flex-row group_2 equal-division"> <view class="mt-14 flex-row group_2 equal-division">
<view class="flex-row justify-center items-center section equal-division-item"> <view class="flex-row justify-center items-center section equal-division-item" bind:tap="gotoProjectDetail" data-id="{{ item.id }}" data-promotionCode="{{ promotionCode }}">
<image <image
class="image_3" class="image_3"
src="./images/tgm.png" src="./images/tgm.png"
/> />
<text class="ml-4 font_3">推广码</text> <text class="ml-4 font_3">推广码</text>
</view> </view>
<view class="ml-14 flex-row items-center section equal-division-item_2" bind:tap="gotoSubSettlement"> <view class="ml-14 flex-row items-center section equal-division-item_2" bind:tap="gotoSubSettlement" data-id="{{ item.id }}">
<image <image
class="shrink-0 image_4" class="shrink-0 image_4"
src="./images/jsmx.png" src="./images/jsmx.png"

View File

@ -1,3 +1,3 @@
export const local='http://localhost:3456'; export const local='http://localhost:3456';
export const ip = 'http://1.94.237.210:3457'; export const ip = 'http://1.94.237.210:3457';
export const baseUrl = ip; export const baseUrl = local;