Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
89f8ab72dc
19
app.js
19
app.js
|
@ -1,19 +1,6 @@
|
||||||
// app.js
|
const { checkLogin } = require('./utils/logcheck');
|
||||||
App({
|
App({
|
||||||
onLaunch() {
|
onLaunch() {
|
||||||
// 展示本地存储能力
|
checkLogin();
|
||||||
const logs = wx.getStorageSync('logs') || []
|
|
||||||
logs.unshift(Date.now())
|
|
||||||
wx.setStorageSync('logs', logs)
|
|
||||||
|
|
||||||
// 登录
|
|
||||||
wx.login({
|
|
||||||
success: res => {
|
|
||||||
// 发送 res.code 到后台换取 openId, sessionKey, unionId
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
globalData: {
|
|
||||||
userInfo: null
|
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
|
|
2
app.json
2
app.json
|
@ -1,8 +1,8 @@
|
||||||
{
|
{
|
||||||
"pages": [
|
"pages": [
|
||||||
|
"pages/jiedan/jiedan",
|
||||||
"pages/logain/logain",
|
"pages/logain/logain",
|
||||||
"pages/logs/logs",
|
"pages/logs/logs",
|
||||||
"pages/jiedan/jiedan",
|
|
||||||
"pages/mypage/mypage",
|
"pages/mypage/mypage",
|
||||||
"pages/shop/shop",
|
"pages/shop/shop",
|
||||||
"pages/find/find",
|
"pages/find/find",
|
||||||
|
|
1
app.wxss
1
app.wxss
|
@ -25,7 +25,6 @@ text {
|
||||||
.flex-row {
|
.flex-row {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-col {
|
.flex-col {
|
||||||
|
|
BIN
image/20250515110258.jpg
Normal file
BIN
image/20250515110258.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 35 KiB |
BIN
image/close.png
Normal file
BIN
image/close.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.6 KiB |
31
miniprogram_npm/futext.js
Normal file
31
miniprogram_npm/futext.js
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
// miniprogram_npm/rich-text.js
|
||||||
|
Component({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
settlementDesc: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
xiangmuname: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
4
miniprogram_npm/futext.json
Normal file
4
miniprogram_npm/futext.json
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {}
|
||||||
|
}
|
12
miniprogram_npm/futext.wxml
Normal file
12
miniprogram_npm/futext.wxml
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
|
||||||
|
<view class="fenbu">
|
||||||
|
<view class="xiangqing">
|
||||||
|
<view class="titlemessgae">
|
||||||
|
<image style="width: 20px;height: 20px;margin-left: 20rpx;" src="/image/close.png" mode=""/>
|
||||||
|
<text style="margin-left: 10rpx; color: #ff8d1a;">{{xiangmuname}}</text>
|
||||||
|
</view>
|
||||||
|
<view class="richtext">
|
||||||
|
<rich-text user-select="true" nodes="{{settlementDesc}}"/>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
27
miniprogram_npm/futext.wxss
Normal file
27
miniprogram_npm/futext.wxss
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
.xiangqing{
|
||||||
|
width: 95%;
|
||||||
|
margin-top: 20rpx;
|
||||||
|
border-radius: 20px;
|
||||||
|
background-color: #F8F8F8;
|
||||||
|
}
|
||||||
|
.titlemessgae{
|
||||||
|
width: 100%;
|
||||||
|
height: 50px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.richtext {
|
||||||
|
padding: 0rpx 24rpx 24rpx 0rpx;
|
||||||
|
border-radius: 16rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
color: #333;
|
||||||
|
line-height: 1.8;
|
||||||
|
box-shadow: 0 4rpx 10rpx rgba(0, 0, 0, 0.05);
|
||||||
|
}
|
||||||
|
.fenbu{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
17
package-lock.json
generated
Normal file
17
package-lock.json
generated
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name": "青橙",
|
||||||
|
"lockfileVersion": 3,
|
||||||
|
"requires": true,
|
||||||
|
"packages": {
|
||||||
|
"": {
|
||||||
|
"dependencies": {
|
||||||
|
"mp-html": "^2.5.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/mp-html": {
|
||||||
|
"version": "2.5.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/mp-html/-/mp-html-2.5.1.tgz",
|
||||||
|
"integrity": "sha512-7BEH8dnQ89kOIyjdoYni8zcc0QAg+lgEWg0n9or9q2D4l26JNG+KPzHfttDyisC/5S7aPBblpXrFTYQv475w/Q=="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
6
package.json
Normal file
6
package.json
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"dependencies": {
|
||||||
|
"mp-html": "^2.5.1"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
// pages/find/find.js
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -48,7 +48,7 @@ Page({
|
||||||
* 生命周期函数--监听页面显示
|
* 生命周期函数--监听页面显示
|
||||||
*/
|
*/
|
||||||
onShow() {
|
onShow() {
|
||||||
|
checkLogin();
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// pages/findxiangqing/findxiangqing.js
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -26,7 +26,7 @@ Page({
|
||||||
* 生命周期函数--监听页面显示
|
* 生命周期函数--监听页面显示
|
||||||
*/
|
*/
|
||||||
onShow() {
|
onShow() {
|
||||||
|
checkLogin();
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import {url} from '../../request'
|
import {url} from '../../request'
|
||||||
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
data: {
|
data: {
|
||||||
list:[],
|
list:[],
|
||||||
|
@ -40,6 +41,7 @@ Page({
|
||||||
* 生命周期函数--监听页面显示
|
* 生命周期函数--监听页面显示
|
||||||
*/
|
*/
|
||||||
onShow() {
|
onShow() {
|
||||||
|
checkLogin();
|
||||||
const that = this
|
const that = this
|
||||||
wx.getStorage({
|
wx.getStorage({
|
||||||
key: "logmessage",
|
key: "logmessage",
|
||||||
|
|
|
@ -4,6 +4,35 @@ Page({
|
||||||
show: true,
|
show: true,
|
||||||
morenshow: false,
|
morenshow: false,
|
||||||
currentTab: 'code',
|
currentTab: 'code',
|
||||||
|
countdown: 60, // 设置倒计时时长(秒)
|
||||||
|
timer: null, // 存储计时器
|
||||||
|
},
|
||||||
|
startCountdown() {
|
||||||
|
this.setData({
|
||||||
|
isCountingDown: true,
|
||||||
|
countdown: 60
|
||||||
|
});
|
||||||
|
|
||||||
|
this.data.timer = setInterval(() => {
|
||||||
|
let count = this.data.countdown;
|
||||||
|
if (count <= 1) {
|
||||||
|
clearInterval(this.data.timer);
|
||||||
|
this.setData({
|
||||||
|
isCountingDown: false,
|
||||||
|
countdown: 60
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.setData({
|
||||||
|
countdown: count - 1
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
|
},
|
||||||
|
onUnload() {
|
||||||
|
// 页面卸载时清除定时器
|
||||||
|
if (this.data.timer) {
|
||||||
|
clearInterval(this.data.timer);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
// 初始加载
|
// 初始加载
|
||||||
onShow(){
|
onShow(){
|
||||||
|
@ -118,15 +147,14 @@ submit(){
|
||||||
icon: 'success',
|
icon: 'success',
|
||||||
duration: 2000
|
duration: 2000
|
||||||
});
|
});
|
||||||
wx.setStorage({
|
try {
|
||||||
key: "logmessage",
|
wx.setStorageSync('logmessage', {
|
||||||
data: {
|
Authorization: res.data.data
|
||||||
Authorization:res.data.data
|
});
|
||||||
},
|
console.log("信息存储成功");
|
||||||
success() {
|
} catch (e) {
|
||||||
console.log("信息存储成功");
|
console.error("存储失败", e);
|
||||||
}
|
}
|
||||||
})
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
that.setmessage();
|
that.setmessage();
|
||||||
wx.switchTab({
|
wx.switchTab({
|
||||||
|
@ -135,7 +163,7 @@ submit(){
|
||||||
}, 2000);
|
}, 2000);
|
||||||
}else{
|
}else{
|
||||||
wx.showToast({
|
wx.showToast({
|
||||||
title: res.data.message,
|
title: res.data.message||res.data.error,
|
||||||
icon: 'error',
|
icon: 'error',
|
||||||
duration: 2000
|
duration: 2000
|
||||||
});
|
});
|
||||||
|
@ -183,7 +211,7 @@ getcode(){
|
||||||
}else{
|
}else{
|
||||||
wx.showToast({
|
wx.showToast({
|
||||||
title: res.data.message,
|
title: res.data.message,
|
||||||
icon: 'success',
|
icon: 'error',
|
||||||
duration: 2000
|
duration: 2000
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -192,6 +220,7 @@ getcode(){
|
||||||
console.error('请求失败', err);
|
console.error('请求失败', err);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
this.startCountdown();
|
||||||
},
|
},
|
||||||
// 验证码登录提交
|
// 验证码登录提交
|
||||||
submityanzhengma(){
|
submityanzhengma(){
|
||||||
|
@ -230,15 +259,14 @@ submityanzhengma(){
|
||||||
icon: 'success',
|
icon: 'success',
|
||||||
duration: 2000
|
duration: 2000
|
||||||
});
|
});
|
||||||
wx.setStorage({
|
try {
|
||||||
key: "logmessage",
|
wx.setStorageSync('logmessage', {
|
||||||
data: {
|
Authorization: res.data.data
|
||||||
Authorization:res.data.data
|
});
|
||||||
},
|
console.log("信息存储成功");
|
||||||
success() {
|
} catch (e) {
|
||||||
console.log("信息存储成功");
|
console.error("存储失败", e);
|
||||||
}
|
}
|
||||||
})
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
_this.setmessage();
|
_this.setmessage();
|
||||||
wx.switchTab({
|
wx.switchTab({
|
||||||
|
@ -247,7 +275,7 @@ submityanzhengma(){
|
||||||
}, 2000);
|
}, 2000);
|
||||||
}else{
|
}else{
|
||||||
wx.showToast({
|
wx.showToast({
|
||||||
title: res.data.message,
|
title: res.data.message||res.data.error,
|
||||||
icon: 'error',
|
icon: 'error',
|
||||||
duration: 2000
|
duration: 2000
|
||||||
});
|
});
|
||||||
|
@ -278,19 +306,18 @@ setmessage() {
|
||||||
success(res) {
|
success(res) {
|
||||||
console.log('查询成功', res);
|
console.log('查询成功', res);
|
||||||
if (res.data.code==1) {
|
if (res.data.code==1) {
|
||||||
wx.setStorage({
|
try {
|
||||||
key: "usermessage",
|
wx.setStorageSync("usermessage", {
|
||||||
data: {
|
nickName: res.data.data.nickName,
|
||||||
nickName:res.data.data.nickName,
|
phoneNumber: res.data.data.phoneNumber,
|
||||||
phoneNumber:res.data.data.phoneNumber,
|
userRole: res.data.data.userRole,
|
||||||
userRole:res.data.data.userRole,
|
invitationCode: res.data.data.invitationCode,
|
||||||
invitationCode:res.data.data.invitationCode,
|
userAvatar: res.data.data.userAvatar
|
||||||
userAvatar:res.data.data.userAvatar
|
});
|
||||||
},
|
console.log("信息存储成功");
|
||||||
success() {
|
} catch (e) {
|
||||||
console.log("信息存储成功");
|
console.error("信息存储失败", e);
|
||||||
}
|
}
|
||||||
})
|
|
||||||
} else {
|
} else {
|
||||||
wx.showToast({
|
wx.showToast({
|
||||||
title: res.data.message,
|
title: res.data.message,
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
</view>
|
</view>
|
||||||
<view class="flex-row justify-between section mt-21">
|
<view class="flex-row justify-between section mt-21">
|
||||||
<input class="font_4 text_5" bindinput="yanzhengcode" placeholder="请输入验证码" />
|
<input class="font_4 text_5" bindinput="yanzhengcode" placeholder="请输入验证码" />
|
||||||
<text bind:tap="getcode" class="font_2 text_6">获取验证码</text>
|
<text bind:tap="{{isCountingDown ? '' : 'getcode'}}"style="color: {{isCountingDown ? '#ccc' : '#ff8d1a'}};" class="font_2 text_6"> {{ isCountingDown ? countdown + '秒后重试' : '获取验证码' }}</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view wx:if="{{morenshow==true}}" class="flex-col self-stretch">
|
<view wx:if="{{morenshow==true}}" class="flex-col self-stretch">
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
</view>
|
</view>
|
||||||
<view class="flex-col self-stretch group_3">
|
<view class="flex-col self-stretch group_3">
|
||||||
<view class="flex-row items-center self-start">
|
<view class="flex-row items-center self-start">
|
||||||
<radio class="radio" color="#ff8d1a" bind:tap="onAgreeChange"></radio>
|
<checkbox class="radio" color="#ff8d1a" bind:tap="onAgreeChange" value="cb" />
|
||||||
<text class="shrink-0 font_5 text_9">我已阅读并同意</text>
|
<text class="shrink-0 font_5 text_9">我已阅读并同意</text>
|
||||||
<text class="font_5 text_10">用户服务协议、隐私政策</text>
|
<text class="font_5 text_10">用户服务协议、隐私政策</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
@ -106,9 +106,12 @@
|
||||||
line-height: 26.92rpx;
|
line-height: 26.92rpx;
|
||||||
}
|
}
|
||||||
.text_9 {
|
.text_9 {
|
||||||
margin-left: 50.94rpx;
|
margin-left: 20.94rpx;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
}
|
}
|
||||||
|
.radio{
|
||||||
|
margin-left: 30rpx;
|
||||||
|
}
|
||||||
.text_10 {
|
.text_10 {
|
||||||
color: #d43030;
|
color: #d43030;
|
||||||
margin-left: 10rpx;
|
margin-left: 10rpx;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// pages/mingxi/mingxi.js
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -12,7 +12,7 @@ Page({
|
||||||
* 生命周期函数--监听页面加载
|
* 生命周期函数--监听页面加载
|
||||||
*/
|
*/
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
|
checkLogin();
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
|
|
||||||
|
|
||||||
data: {
|
data: {
|
||||||
|
userAvatar:'https://tse2-mm.cn.bing.net/th/id/OIP-C.jHUH4s7TQ48X_B-1iozuJgHaHa?w=207&h=207&c=7&r=0&o=5&dpr=1.5&pid=1.7',
|
||||||
|
nickName:'请登录'
|
||||||
},
|
},
|
||||||
|
|
||||||
myteam(){
|
myteam(){
|
||||||
|
@ -19,21 +20,19 @@ Page({
|
||||||
},
|
},
|
||||||
|
|
||||||
onShow() {
|
onShow() {
|
||||||
console.log("askjda");
|
console.log("页面展示 onShow");
|
||||||
const that = this
|
try {
|
||||||
wx.getStorage({
|
const userInfo = wx.getStorageSync('usermessage');
|
||||||
key: "usermessage",
|
console.log('用户信息:', userInfo);
|
||||||
success(res) {
|
this.setData({
|
||||||
console.log(res.data,'aslkdjas');
|
nickName: userInfo.nickName || '',
|
||||||
const userInfo = res.data
|
phoneNumber: userInfo.phoneNumber || '',
|
||||||
that.setData({
|
invitationCode: userInfo.invitationCode || '',
|
||||||
nickName : userInfo.nickName,
|
userAvatar: userInfo.userAvatar || 'https://tse2-mm.cn.bing.net/th/id/OIP-C.jHUH4s7TQ48X_B-1iozuJgHaHa?w=207&h=207&c=7&r=0&o=5&dpr=1.5&pid=1.7'
|
||||||
phoneNumber: userInfo.phoneNumber,
|
});
|
||||||
invitationCode:userInfo.invitationCode,
|
} catch (e) {
|
||||||
userAvatar:userInfo.userAvatar
|
console.error('读取缓存失败:', e);
|
||||||
});
|
}
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
wodejiedan(){
|
wodejiedan(){
|
||||||
wx.navigateTo({
|
wx.navigateTo({
|
||||||
|
|
|
@ -146,6 +146,39 @@ getcode(){
|
||||||
console.error('请求失败', err);
|
console.error('请求失败', err);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
this.startCountdown();
|
||||||
},
|
},
|
||||||
|
startCountdown() {
|
||||||
|
this.setData({
|
||||||
|
isCountingDown: true,
|
||||||
|
countdown: 60
|
||||||
|
});
|
||||||
|
|
||||||
|
this.data.timer = setInterval(() => {
|
||||||
|
let count = this.data.countdown;
|
||||||
|
if (count <= 1) {
|
||||||
|
clearInterval(this.data.timer);
|
||||||
|
this.setData({
|
||||||
|
isCountingDown: false,
|
||||||
|
countdown: 60
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.setData({
|
||||||
|
countdown: count - 1
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
|
},
|
||||||
|
onUnload() {
|
||||||
|
// 页面卸载时清除定时器
|
||||||
|
if (this.data.timer) {
|
||||||
|
clearInterval(this.data.timer);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
back(){
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/logain/logain',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
})
|
})
|
|
@ -10,14 +10,14 @@
|
||||||
<view class="flex-col justify-start items-start text-wrapper_1"><input class="text_1 font_2 text_4" bindinput="phone" placeholder="请输入手机号" /></view>
|
<view class="flex-col justify-start items-start text-wrapper_1"><input class="text_1 font_2 text_4" bindinput="phone" placeholder="请输入手机号" /></view>
|
||||||
<view class="flex-row justify-between section mt-20">
|
<view class="flex-row justify-between section mt-20">
|
||||||
<input class="font_2 text_5" bindinput="yanzhengma" placeholder="请输入验证码" />
|
<input class="font_2 text_5" bindinput="yanzhengma" placeholder="请输入验证码" />
|
||||||
<text class="font_2 text_6" bind:tap="getcode">获取验证码</text>
|
<text class="font_2 text_6"style="color: {{isCountingDown ? '#ccc' : '#ff8d1a'}};" bind:tap="{{isCountingDown ? '' : 'getcode'}}"> {{ isCountingDown ? countdown + '秒后重试' : '获取验证码' }}</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex-col justify-start items-start text-wrapper_2 mt-20"><input class="text_1 font_2" bindinput="password" password type="text" placeholder="请输入密码" /></view>
|
<view class="flex-col justify-start items-start text-wrapper_2 mt-20"><input class="text_1 font_2" bindinput="password" password type="text" placeholder="请输入密码" /></view>
|
||||||
<view class="flex-col justify-start items-start text-wrapper_4 mt-20">
|
<view class="flex-col justify-start items-start text-wrapper_4 mt-20">
|
||||||
<input class="text_1 font_2 text_7" bindinput="passwordagain" password type="text" placeholder="请再次输入密码" />
|
<input class="text_1 font_2 text_7" bindinput="passwordagain" password type="text" placeholder="请再次输入密码" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<text class="self-end text_8 mt-16">登陆账号</text>
|
<text class="self-end text_8 mt-16" bind:tap="back">登陆账号</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex-col justify-start items-center self-stretch text-wrapper_3" bind:tap="subimt">
|
<view class="flex-col justify-start items-center self-stretch text-wrapper_3" bind:tap="subimt">
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
import {url} from '../../request'
|
import {url} from '../../request'
|
||||||
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
data: {
|
data: {
|
||||||
items: [null, null, null,null],
|
items: [null, null, null,null],
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
|
checkLogin();
|
||||||
},
|
},
|
||||||
onReady() {
|
onReady() {
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// pages/wodetuandui/wodetuandui.js
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -12,7 +12,7 @@ Page({
|
||||||
* 生命周期函数--监听页面加载
|
* 生命周期函数--监听页面加载
|
||||||
*/
|
*/
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
|
checkLogin();
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
import {url} from '../../request'
|
import {url} from '../../request'
|
||||||
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
data: {
|
data: {
|
||||||
|
|
||||||
},
|
},
|
||||||
onLoad(options){
|
onLoad(options){
|
||||||
|
checkLogin();
|
||||||
const id = options.id
|
const id = options.id
|
||||||
this.setData({
|
this.setData({
|
||||||
id:id
|
id:id
|
||||||
|
@ -47,6 +49,9 @@ Page({
|
||||||
icon: 'sucess',
|
icon: 'sucess',
|
||||||
duration: 2000
|
duration: 2000
|
||||||
})
|
})
|
||||||
|
wx.navigateBack({
|
||||||
|
delta: 1
|
||||||
|
})
|
||||||
}else{
|
}else{
|
||||||
wx.showToast({
|
wx.showToast({
|
||||||
title: res.data.message,
|
title: res.data.message,
|
||||||
|
|
|
@ -7,7 +7,9 @@
|
||||||
<input class="flex-col justify-start items-start text-wrapper_1 mt-10 input_1" bindinput="phone" />
|
<input class="flex-col justify-start items-start text-wrapper_1 mt-10 input_1" bindinput="phone" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex-col justify-start items-center text-wrapper_2 mt-609" bind:tap="submit">
|
<view class="bottoma">
|
||||||
<text class="text_3">申请资料报备</text>
|
<view class="youbuttonm" bind:tap="jiedan">
|
||||||
</view>
|
<text style="color: white;">申请资料报备</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
|
@ -1,8 +1,22 @@
|
||||||
.ml-124 {
|
.ml-124 {
|
||||||
margin-left: 238.46rpx;
|
margin-left: 238.46rpx;
|
||||||
}
|
}
|
||||||
.mt-609 {
|
.bottoma{
|
||||||
margin-top: 1171.15rpx;
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
display: flex;
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: 999;
|
||||||
|
}
|
||||||
|
.youbuttonm{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-color: #ff8d1a;
|
||||||
}
|
}
|
||||||
.page {
|
.page {
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
import {url} from '../../request'
|
import {url} from '../../request'
|
||||||
|
const { checkLogin } = require('../../utils/logcheck');
|
||||||
Page({
|
Page({
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -8,12 +9,9 @@ Page({
|
||||||
projectImage:"",
|
projectImage:"",
|
||||||
selected: 'detail',
|
selected: 'detail',
|
||||||
show:false,
|
show:false,
|
||||||
promoCodeApplyVOList:[]
|
promoCodeApplyVOList:[],
|
||||||
|
mashow:false
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
|
||||||
* 生命周期函数--监听页面加载
|
|
||||||
*/
|
|
||||||
onSelect(e) {
|
onSelect(e) {
|
||||||
const key = e.currentTarget.dataset.key;
|
const key = e.currentTarget.dataset.key;
|
||||||
console.log(key,'dianjile');
|
console.log(key,'dianjile');
|
||||||
|
@ -33,7 +31,13 @@ Page({
|
||||||
url: '/pages/mingxi/mingxi',
|
url: '/pages/mingxi/mingxi',
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
xianshi(){
|
||||||
|
this.setData({
|
||||||
|
mashow:true
|
||||||
|
})
|
||||||
|
},
|
||||||
onLoad(options) {
|
onLoad(options) {
|
||||||
|
checkLogin();
|
||||||
const that = this
|
const that = this
|
||||||
const id = options.id
|
const id = options.id
|
||||||
wx.getStorage({
|
wx.getStorage({
|
||||||
|
@ -81,6 +85,11 @@ Page({
|
||||||
wx.navigateBack({
|
wx.navigateBack({
|
||||||
delta: 1
|
delta: 1
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
clossma(){
|
||||||
|
this.setData({
|
||||||
|
mashow:false
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
|
@ -1,4 +1,6 @@
|
||||||
{
|
{
|
||||||
"navigationBarTitleText": "项目详情",
|
"navigationBarTitleText": "项目详情",
|
||||||
"usingComponents": {}
|
"usingComponents": {
|
||||||
|
"futext":"/miniprogram_npm/futext"
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -1,69 +1,38 @@
|
||||||
<view class="flex-col page">
|
<view class="maxbox">
|
||||||
|
<view class="kuang">
|
||||||
<view class="mt-34 flex-col group">
|
<view class="shopimage">
|
||||||
<view class="flex-row relative">
|
<image class="imagesizeshop" src="{{projectImage}}" mode="aspectFill"/>
|
||||||
<image
|
|
||||||
class="image_2"
|
|
||||||
src="{{projectImage}}"
|
|
||||||
mode="aspectFill"
|
|
||||||
/>
|
|
||||||
<text class="self-start font text_2">{{projectName}}</text>
|
|
||||||
<view class="flex-col justify-start items-start group_2 pos">
|
|
||||||
<text class="font_2 text_4">{{projectDescription}}</text>
|
|
||||||
<view class="flex-col justify-start items-center text-wrapper pos_2" bind:tap="mingxi">
|
|
||||||
<text class="font_2 text_3">结算明细</text>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
<view class="textbox">
|
||||||
</view>
|
<text style="font-size: 16px;margin: 10rpx 0 0 0rpx;">{{projectName}}</text>
|
||||||
<view class="flex-row items-baseline group_3 mt-7">
|
<text style="font-size: 12px;color: #585857;margin: 10rpx 0 0 0rpx;">{{projectDescription}}</text>
|
||||||
<text class="text_5">最高价</text>
|
|
||||||
<text class="text_6 ml-3">¥{{projectPrice}}</text>
|
|
||||||
</view>
|
|
||||||
</view>
|
|
||||||
<view class="mt-34 flex-col">
|
|
||||||
<view class="flex-col group_4">
|
|
||||||
<view class="flex-row justify-between self-stretch group_5">
|
|
||||||
<view>
|
|
||||||
<text class="font_3 text_7" bindtap="onSelect"
|
|
||||||
data-key="detail"
|
|
||||||
class="{{ selected === 'detail' ? 'active' : '' }}" >项目详情</text>
|
|
||||||
<view wx:if="{{selected=='detail'}}" class="self-start section_2" style="margin-top: 10rpx;"></view>
|
|
||||||
</view>
|
|
||||||
<view>
|
<view>
|
||||||
<text class="font_3 text_8"
|
<text class="text_5">最高价</text>
|
||||||
bindtap="onSelect"
|
<text class="text_6 ml-3">¥{{projectPrice}}</text>
|
||||||
data-key="code"
|
|
||||||
class="{{ selected === 'code' ? 'active' : '' }}" >我的推广码</text>
|
|
||||||
<view wx:if="{{selected=='code'}}" class="self-start section_2" style="margin-top: 10rpx;"></view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="mingxi">
|
||||||
</view>
|
<view class="colorkuang" bind:tap="mingxi">
|
||||||
<view wx:if="{{selected=='detail'}}" class="flex-col mt-19">
|
<text style="color: #ffffff;font-size: 12px;">结算明细</text>
|
||||||
<view class="flex-col group_6">
|
|
||||||
<view class="mt-18 flex-col section_4">
|
|
||||||
<text class="self-start font_3 text_100 color" >结算说明:</text>
|
|
||||||
<view style="margin-top: 30rpx;">
|
|
||||||
<rich-text nodes="{{settlementDesc}}"></rich-text>
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
|
||||||
<view class="mt-18 flex-col section_5">
|
|
||||||
<text class="self-start font_3 text_12 color">项目说明:</text>
|
|
||||||
<rich-text style="margin-top: 30rpx;" nodes="{{projectDesc}}"></rich-text>
|
|
||||||
</view>
|
|
||||||
<view class="mt-18 flex-col section_6">
|
|
||||||
<text class="self-start font_3 text_15 color">项目流程:</text>
|
|
||||||
<rich-text style="margin-top: 30rpx;" nodes="{{projectFlow}}"></rich-text>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="mt-18 flex-row">
|
</view>
|
||||||
<view class="flex-col justify-start items-center text-wrapper_2" bind:tap="back">
|
<view class="lan">
|
||||||
<text class="font_5 text_16">再想想</text>
|
<view class="zuolan">
|
||||||
</view>
|
<text
|
||||||
<view class="flex-col justify-start items-center text-wrapper_3" bind:tap="jiedan">
|
bindtap="onSelect"
|
||||||
<text class="font_5 text_17">申请推广码</text>
|
data-key="detail"
|
||||||
</view>
|
class="{{ selected === 'detail' ? 'active' : '' }}">项目详情</text>
|
||||||
|
<view wx:if="{{selected=='detail'}}" class="section_2" style="margin-top: 10rpx;"></view>
|
||||||
|
</view>
|
||||||
|
<view class="youlan">
|
||||||
|
<text
|
||||||
|
bindtap="onSelect"
|
||||||
|
data-key="code"
|
||||||
|
class="{{ selected === 'code' ? 'active' : '' }}"
|
||||||
|
>我的推广码</text>
|
||||||
|
<view wx:if="{{selected=='code'}}" class="section_2" style="margin-top: 10rpx;"></view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 无数据部分 -->
|
<!-- 无数据部分 -->
|
||||||
|
@ -71,6 +40,12 @@
|
||||||
<image class="imagesize" src="/image/4ec3ad48669184342e84e3641589c19b.png" mode="aspectFill"/>
|
<image class="imagesize" src="/image/4ec3ad48669184342e84e3641589c19b.png" mode="aspectFill"/>
|
||||||
<text>暂无数据</text>
|
<text>暂无数据</text>
|
||||||
</view>
|
</view>
|
||||||
|
<!-- 项目详情 -->
|
||||||
|
<view class="xinxibox" wx:if="{{selected=='detail'}}">
|
||||||
|
<futext xiangmuname="结算说明:" settlementDesc="{{settlementDesc}}"></futext>
|
||||||
|
<futext xiangmuname="项目说明:" settlementDesc="{{projectDesc}}"></futext>
|
||||||
|
<futext xiangmuname="项目流程:" settlementDesc="{{projectFlow}}"></futext>
|
||||||
|
</view>
|
||||||
<!-- 二维码部分 -->
|
<!-- 二维码部分 -->
|
||||||
<view class="mabox" wx:if="{{selected == 'code' && promoCodeApplyVOList.length > 0}}">
|
<view class="mabox" wx:if="{{selected == 'code' && promoCodeApplyVOList.length > 0}}">
|
||||||
<view class="messagebox" wx:for="{{promoCodeApplyVOList}}">
|
<view class="messagebox" wx:for="{{promoCodeApplyVOList}}">
|
||||||
|
@ -92,12 +67,39 @@
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="youbox">
|
<view class="youbox" bind:tap="xianshi">
|
||||||
<image class="imagesize1" src="{{item.projectImage}}" mode="aspectFill"/>
|
<image class="imagesize1" src="{{item.projectImage}}" mode="aspectFill"/>
|
||||||
<text style="margin-top: 10rpx;">查看推广码</text>
|
<text style="margin-top: 10rpx;">查看推广码</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="bottoma">
|
||||||
|
<view class="zuobuttonm" bind:tap="back">
|
||||||
|
<text style="color: #D43030;">再想想</text>
|
||||||
|
</view>
|
||||||
|
<view class="youbuttonm" bind:tap="jiedan">
|
||||||
|
<text>我要接单</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- 项目推广码详情 -->
|
||||||
|
<view class="tanhcuann" wx:if="{{mashow}}">
|
||||||
|
<view class="renwuma">
|
||||||
|
<view class="titlema">
|
||||||
|
<text style="color: #ff8d1a;font-size: 30px;">项目推广码</text>
|
||||||
|
<text style="margin-top:50rpx; color: #ff8d1a;">引导用户通过扫描此码来完成相应的任务</text>
|
||||||
|
</view>
|
||||||
|
<view class="imagebox">
|
||||||
|
<image class="masize" src="/image/20250515110258.jpg" mode=""/>
|
||||||
|
</view>
|
||||||
|
<view class="erweimacopy">
|
||||||
|
<view class="copy">
|
||||||
|
<text>复制推广码</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="closs" bind:tap="clossma">
|
||||||
|
<image class="closssize" src="/image/close.png" mode=""/>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
|
@ -1,245 +1,6 @@
|
||||||
.ml-123 {
|
|
||||||
margin-left: 236.54rpx;
|
|
||||||
}
|
|
||||||
.mt-7 {
|
|
||||||
margin-top: 13.46rpx;
|
|
||||||
}
|
|
||||||
.ml-3 {
|
.ml-3 {
|
||||||
margin-left: 5.77rpx;
|
margin-left: 5.77rpx;
|
||||||
}
|
}
|
||||||
.mt-19 {
|
|
||||||
margin-top: 36.54rpx;
|
|
||||||
}
|
|
||||||
.mt-3 {
|
|
||||||
margin-top: 5.77rpx;
|
|
||||||
}
|
|
||||||
.page {
|
|
||||||
background-color: #ffffff;
|
|
||||||
width: 100%;
|
|
||||||
overflow-y: auto;
|
|
||||||
overflow-x: hidden;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
.section {
|
|
||||||
padding: 34.62rpx 23.08rpx;
|
|
||||||
background-color: #f8f8f8;
|
|
||||||
}
|
|
||||||
.image {
|
|
||||||
width: 34.62rpx;
|
|
||||||
height: 19.23rpx;
|
|
||||||
}
|
|
||||||
.font {
|
|
||||||
font-size: 25rpx;
|
|
||||||
font-family: SourceHanSansCN;
|
|
||||||
line-height: 23.1rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.text {
|
|
||||||
font-size: 26.92rpx;
|
|
||||||
line-height: 24.83rpx;
|
|
||||||
}
|
|
||||||
.group {
|
|
||||||
padding-left: 57.69rpx;
|
|
||||||
padding-right: 25rpx;
|
|
||||||
}
|
|
||||||
.image_2 {
|
|
||||||
width: 103.85rpx;
|
|
||||||
height: 103.85rpx;
|
|
||||||
}
|
|
||||||
.text_2 {
|
|
||||||
margin-left: 38.46rpx;
|
|
||||||
margin-top: 11.54rpx;
|
|
||||||
font-size: 26.92rpx;
|
|
||||||
line-height: 24.9rpx;
|
|
||||||
}
|
|
||||||
.group_2 {
|
|
||||||
padding-top: 38.46rpx;
|
|
||||||
width: 526rpx;
|
|
||||||
}
|
|
||||||
.pos {
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: 15.38rpx;
|
|
||||||
}
|
|
||||||
.font_2 {
|
|
||||||
font-size: 23.08rpx;
|
|
||||||
font-family: SourceHanSansCN;
|
|
||||||
line-height: 23.1rpx;
|
|
||||||
}
|
|
||||||
.text_4 {
|
|
||||||
color: #00000080;
|
|
||||||
font-size: 21.15rpx;
|
|
||||||
line-height: 21.75rpx;
|
|
||||||
}
|
|
||||||
.text-wrapper {
|
|
||||||
padding: 15.38rpx 0;
|
|
||||||
background-color: #a5d63fcc;
|
|
||||||
border-radius: 19.23rpx;
|
|
||||||
width: 126.92rpx;
|
|
||||||
}
|
|
||||||
.pos_2 {
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: 50%;
|
|
||||||
transform: translateY(-50%);
|
|
||||||
}
|
|
||||||
.text_3 {
|
|
||||||
color: #ffffff;
|
|
||||||
line-height: 21.5rpx;
|
|
||||||
}
|
|
||||||
.group_3 {
|
|
||||||
padding: 0 142.31rpx;
|
|
||||||
}
|
|
||||||
.text_5 {
|
|
||||||
color: #00000080;
|
|
||||||
font-size: 15.38rpx;
|
|
||||||
font-family: HarmonyOSSansTC;
|
|
||||||
line-height: 14.42rpx;
|
|
||||||
}
|
|
||||||
.text_6 {
|
|
||||||
color: #e33c64;
|
|
||||||
font-size: 17.31rpx;
|
|
||||||
font-family: SourceHanSansCN;
|
|
||||||
line-height: 13.13rpx;
|
|
||||||
}
|
|
||||||
.group_4 {
|
|
||||||
padding-left: 138.46rpx;
|
|
||||||
padding-right: 134.62rpx;
|
|
||||||
}
|
|
||||||
.group_5 {
|
|
||||||
padding-bottom: 11.54rpx;
|
|
||||||
}
|
|
||||||
.section_2 {
|
|
||||||
margin-left: 26.92rpx;
|
|
||||||
background-color: #ff8d1a;
|
|
||||||
width: 48.08rpx;
|
|
||||||
height: 3.85rpx;
|
|
||||||
}
|
|
||||||
.group_6 {
|
|
||||||
padding-left: 32.69rpx;
|
|
||||||
padding-right: 25rpx;
|
|
||||||
}
|
|
||||||
.section_3 {
|
|
||||||
margin-right: 13.46rpx;
|
|
||||||
padding: 21.15rpx 25rpx 284.62rpx;
|
|
||||||
background-color: #f8f8f8;
|
|
||||||
border-radius: 19.23rpx;
|
|
||||||
}
|
|
||||||
.image_3 {
|
|
||||||
width: 34.62rpx;
|
|
||||||
height: 38.46rpx;
|
|
||||||
}
|
|
||||||
.font_3 {
|
|
||||||
font-size: 25rpx;
|
|
||||||
font-family: HarmonyOSSansTC;
|
|
||||||
line-height: 23.1rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.text_8 {
|
|
||||||
line-height: 23.56rpx;
|
|
||||||
}
|
|
||||||
.text_7 {
|
|
||||||
color: #ff8d1a;
|
|
||||||
line-height: 23.06rpx;
|
|
||||||
}
|
|
||||||
.text_9 {
|
|
||||||
line-height: 23.19rpx;
|
|
||||||
}
|
|
||||||
.section_4 {
|
|
||||||
margin-left: 13.46rpx;
|
|
||||||
padding: 15.38rpx 30.77rpx 36.54rpx;
|
|
||||||
background-color: #f8f8f8;
|
|
||||||
border-radius: 19.23rpx;
|
|
||||||
}
|
|
||||||
.text_10 {
|
|
||||||
margin-left: 34.62rpx;
|
|
||||||
line-height: 23.52rpx;
|
|
||||||
}
|
|
||||||
.text_100 {
|
|
||||||
line-height: 23.52rpx;
|
|
||||||
}
|
|
||||||
.font_4 {
|
|
||||||
font-size: 23.08rpx;
|
|
||||||
font-family: SourceHanSansCN;
|
|
||||||
line-height: 26.92rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.text_11 {
|
|
||||||
line-height: 21.69rpx;
|
|
||||||
}
|
|
||||||
.equal-division {
|
|
||||||
align-self: stretch;
|
|
||||||
margin: 0 15.38rpx;
|
|
||||||
}
|
|
||||||
.image_4 {
|
|
||||||
flex: 1 1 292.31rpx;
|
|
||||||
}
|
|
||||||
.equal-division-item {
|
|
||||||
height: 403.85rpx;
|
|
||||||
}
|
|
||||||
.section_5 {
|
|
||||||
margin-left: 13.46rpx;
|
|
||||||
padding: 23.08rpx 26.92rpx 30.77rpx;
|
|
||||||
background-color: #f8f8f8;
|
|
||||||
border-radius: 19.23rpx;
|
|
||||||
}
|
|
||||||
.text_12 {
|
|
||||||
margin-left: 0.46rpx;
|
|
||||||
}
|
|
||||||
.group_7 {
|
|
||||||
margin-top: 23.08rpx;
|
|
||||||
}
|
|
||||||
.text_13 {
|
|
||||||
text-indent: 0rpx;
|
|
||||||
}
|
|
||||||
.text_14 {
|
|
||||||
margin-top: 38.46rpx;
|
|
||||||
}
|
|
||||||
.section_6 {
|
|
||||||
margin-left: 13.46rpx;
|
|
||||||
padding: 30.77rpx 46.15rpx 40.38rpx;
|
|
||||||
background-color: #f8f8f8;
|
|
||||||
border-radius: 30.81rpx;
|
|
||||||
}
|
|
||||||
.text_15 {
|
|
||||||
|
|
||||||
line-height: 22.88rpx;
|
|
||||||
}
|
|
||||||
.image_5 {
|
|
||||||
flex: 1 1 292.31rpx;
|
|
||||||
}
|
|
||||||
.image_6 {
|
|
||||||
margin-left: -7.69rpx;
|
|
||||||
margin-right: 7.69rpx;
|
|
||||||
flex: 1 1 292.31rpx;
|
|
||||||
}
|
|
||||||
.equal-division_2 {
|
|
||||||
align-self: stretch;
|
|
||||||
}
|
|
||||||
.text-wrapper_2 {
|
|
||||||
padding: 26.92rpx 0;
|
|
||||||
flex: 1 1 375rpx;
|
|
||||||
background-color: #cccccc;
|
|
||||||
height: 84.62rpx;
|
|
||||||
}
|
|
||||||
.font_5 {
|
|
||||||
font-size: 30.77rpx;
|
|
||||||
font-family: SourceHanSansCN;
|
|
||||||
line-height: 26.92rpx;
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.text_16 {
|
|
||||||
line-height: 28.31rpx;
|
|
||||||
}
|
|
||||||
.text-wrapper_3 {
|
|
||||||
padding: 26.92rpx 0;
|
|
||||||
flex: 1 1 375rpx;
|
|
||||||
background-color: #ff8d1a;
|
|
||||||
height: 84.62rpx;
|
|
||||||
}
|
|
||||||
.text_17 {
|
|
||||||
line-height: 28.37rpx;
|
|
||||||
}
|
|
||||||
.active {
|
.active {
|
||||||
color: #ff8d1a;
|
color: #ff8d1a;
|
||||||
}
|
}
|
||||||
|
@ -264,10 +25,85 @@
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
align-items: center;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
}
|
||||||
|
.xinxibox{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
padding-bottom: 60px;
|
||||||
|
}
|
||||||
|
.xiangqing{
|
||||||
|
width: 95%;
|
||||||
|
background-color: #cccccc;
|
||||||
|
margin-top: 20rpx;
|
||||||
|
border-radius: 20px;
|
||||||
|
}
|
||||||
|
.bottoma{
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
background-color: aqua;
|
||||||
|
display: flex;
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: 999;
|
||||||
|
}
|
||||||
|
.zuobuttonm{
|
||||||
|
width: 50%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-color: rgb(255, 255, 255);
|
||||||
|
}
|
||||||
|
.youbuttonm{
|
||||||
|
width: 50%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-color: #ff8d1a;
|
||||||
|
}
|
||||||
|
.richtext {
|
||||||
|
padding: 24rpx;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-radius: 16rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
color: #333;
|
||||||
|
line-height: 1.8;
|
||||||
|
box-shadow: 0 4rpx 10rpx rgba(0, 0, 0, 0.05);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 去掉 li 的黑点 */
|
||||||
|
.richtext li {
|
||||||
|
list-style: none;
|
||||||
|
padding-left: 0;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 美化段落和图片 */
|
||||||
|
.richtext p {
|
||||||
|
margin-bottom: 16rpx;
|
||||||
|
}
|
||||||
|
.richtext img {
|
||||||
|
max-width: 100%;
|
||||||
|
border-radius: 8rpx;
|
||||||
|
margin: 12rpx 0;
|
||||||
|
}
|
||||||
|
.richtext h1, .richtext h2, .richtext h3 {
|
||||||
|
font-weight: bold;
|
||||||
|
margin: 20rpx 0 12rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titlemessgae{
|
||||||
|
width: 100%;
|
||||||
|
height: 50px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
.messagebox{
|
.messagebox{
|
||||||
width: 90%;
|
width: 90%;
|
||||||
height: 200px;
|
height: 200px;
|
||||||
|
@ -308,4 +144,147 @@
|
||||||
.imagesize1{
|
.imagesize1{
|
||||||
width: 100px;
|
width: 100px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
|
}
|
||||||
|
.renwuma{
|
||||||
|
width: 90%;
|
||||||
|
height: 80%;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
.tanhcuann{
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
background-color: rgba(138, 135, 135, 0.5);
|
||||||
|
}
|
||||||
|
.titlema{
|
||||||
|
width: 100%;
|
||||||
|
height: 30%;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border-bottom: 1px solid #a09d9d ;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.imagebox{
|
||||||
|
width: 100%;
|
||||||
|
height: 40%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-color: #ffffff;
|
||||||
|
}
|
||||||
|
.masize{
|
||||||
|
width: 200px;
|
||||||
|
height: 200px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.erweimacopy{
|
||||||
|
width: 100%;
|
||||||
|
height: 20%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
background-color: #ffffff;
|
||||||
|
}
|
||||||
|
.copy{
|
||||||
|
width: 180px;
|
||||||
|
height: 40px;
|
||||||
|
background-color: rgb(17, 17, 240);
|
||||||
|
border-radius: 20px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
.closs{
|
||||||
|
width: 100%;
|
||||||
|
height: 10%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.closssize{
|
||||||
|
width: 80rpx;
|
||||||
|
height: 80rpx;
|
||||||
|
}
|
||||||
|
.maxbox{
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.kuang{
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
margin-top: 30rpx;
|
||||||
|
}
|
||||||
|
.lan{
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
.zuolan{
|
||||||
|
width: 50%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.youlan{
|
||||||
|
width: 50%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.shopimage{
|
||||||
|
width: 23%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.textbox{
|
||||||
|
width: 57%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.mingxi{
|
||||||
|
width: 20%;
|
||||||
|
height: 150rpx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
.colorkuang{
|
||||||
|
width: 70px;
|
||||||
|
height: 30px;
|
||||||
|
background-color: #A5D63F;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
border-radius: 10rpx;
|
||||||
|
}
|
||||||
|
.imagesizeshop{
|
||||||
|
width: 70px;
|
||||||
|
height: 70px;
|
||||||
|
border-radius: 20rpx;
|
||||||
|
}
|
||||||
|
.text_5 {
|
||||||
|
color: #585857;
|
||||||
|
font-size: 20rpx;
|
||||||
|
}
|
||||||
|
.text_6 {
|
||||||
|
color: #e33c64;
|
||||||
|
font-size: 20rpx;
|
||||||
|
}
|
||||||
|
.section_2 {
|
||||||
|
background-color: #ff8d1a;
|
||||||
|
width: 100rpx;
|
||||||
|
height: 4rpx;
|
||||||
}
|
}
|
|
@ -5,7 +5,8 @@ Page({
|
||||||
* 页面的初始数据
|
* 页面的初始数据
|
||||||
*/
|
*/
|
||||||
data: {
|
data: {
|
||||||
|
countdown: 60, // 设置倒计时时长(秒)
|
||||||
|
timer: null, // 存储计时器
|
||||||
},
|
},
|
||||||
|
|
||||||
name(e){
|
name(e){
|
||||||
|
@ -76,6 +77,34 @@ Page({
|
||||||
console.error('请求失败', err);
|
console.error('请求失败', err);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
this.startCountdown();
|
||||||
|
},
|
||||||
|
startCountdown() {
|
||||||
|
this.setData({
|
||||||
|
isCountingDown: true,
|
||||||
|
countdown: 60
|
||||||
|
});
|
||||||
|
|
||||||
|
this.data.timer = setInterval(() => {
|
||||||
|
let count = this.data.countdown;
|
||||||
|
if (count <= 1) {
|
||||||
|
clearInterval(this.data.timer);
|
||||||
|
this.setData({
|
||||||
|
isCountingDown: false,
|
||||||
|
countdown: 60
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.setData({
|
||||||
|
countdown: count - 1
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
|
},
|
||||||
|
onUnload() {
|
||||||
|
// 页面卸载时清除定时器
|
||||||
|
if (this.data.timer) {
|
||||||
|
clearInterval(this.data.timer);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
// 注册
|
// 注册
|
||||||
submit(){
|
submit(){
|
||||||
|
@ -161,6 +190,7 @@ Page({
|
||||||
icon: 'error',
|
icon: 'error',
|
||||||
duration: 2000
|
duration: 2000
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
fail(err) {
|
fail(err) {
|
||||||
|
|
|
@ -13,11 +13,11 @@
|
||||||
<text class="font_2 text_7" bind:tap="getcode">获取验证码</text>
|
<text class="font_2 text_7" bind:tap="getcode">获取验证码</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex-col justify-start items-start view_2"><input class="text_3 font_3 text_8" bindinput="code" placeholder="请输入邀请码" /></view>
|
<view class="flex-col justify-start items-start view_2"><input class="text_3 font_3 text_8" bindinput="code" placeholder="请输入邀请码" /></view>
|
||||||
<view class="flex-col justify-start items-start view_3"><input class="text_3 font_3 text_9" bindinput="password" placeholder="请设置密码" /></view>
|
<view class="flex-col justify-start items-start view_3"><input class="text_3 font_3 text_9" bindinput="password" password type="text" placeholder="请设置密码" /></view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex-row items-center self-start group_2">
|
<view class="flex-row items-center self-start group_2">
|
||||||
<radio class="radio" color="#ff8d1a" bind:tap="onAgreeChange"></radio>
|
<checkbox class="radio" color="#ff8d1a" bind:tap="onAgreeChange" />
|
||||||
<text class="shrink-0 font_4 text_10">我已阅读并同意</text>
|
<text class="shrink-0 font_4 text_10">我已阅读并同意</text>
|
||||||
<text class="flex-1 font_4 text_11">青橙用户服务协议、隐私政策</text>
|
<text class="flex-1 font_4 text_11">青橙用户服务协议、隐私政策</text>
|
||||||
</view>
|
</view>
|
||||||
|
|
|
@ -112,9 +112,12 @@
|
||||||
line-height: 26.92rpx;
|
line-height: 26.92rpx;
|
||||||
}
|
}
|
||||||
.text_10 {
|
.text_10 {
|
||||||
margin-left: 35.56rpx;
|
margin-left: 15.56rpx;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
}
|
}
|
||||||
|
.radio{
|
||||||
|
margin-left: 30rpx;
|
||||||
|
}
|
||||||
.text_11 {
|
.text_11 {
|
||||||
color: #d43030;
|
color: #d43030;
|
||||||
margin-left: 10rpx;
|
margin-left: 10rpx;
|
||||||
|
@ -148,4 +151,4 @@
|
||||||
.imagesize{
|
.imagesize{
|
||||||
width: 150px;
|
width: 150px;
|
||||||
height: 150px;
|
height: 150px;
|
||||||
}
|
}
|
||||||
|
|
25
utils/logcheck.js
Normal file
25
utils/logcheck.js
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
function checkLogin() {
|
||||||
|
try {
|
||||||
|
const user = wx.getStorageSync('usermessage');
|
||||||
|
if (!user || (typeof user === 'object' && Object.keys(user).length === 0)) {
|
||||||
|
wx.showToast({
|
||||||
|
title: '您未登录请先登录',
|
||||||
|
icon:'error',
|
||||||
|
duration:2000
|
||||||
|
})
|
||||||
|
setTimeout(() => {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/logain/logain',
|
||||||
|
});
|
||||||
|
}, 2000);
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/logain/logain',
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
checkLogin
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user