Commit bf203755 authored by spc's avatar spc

merge

parents 0e56e9fa bfca9ac7
...@@ -16,9 +16,10 @@ const { ...@@ -16,9 +16,10 @@ const {
// request.js // request.js
// 通常可以吧 baseUrl 单独放在一个 js 文件了 // 通常可以吧 baseUrl 单独放在一个 js 文件了
// const baseUrl = "http://172.16.230.108:7777/pmall"; // const baseUrl = "http://172.16.230.108:7777/pmall";
const baseUrl = "https://momclub-test.feihe.com/pmall";//测试环境 // const baseUrl = "https://momclub-test.feihe.com/pmall";//测试环境
// const baseUrl = "https://momclub-uat.feihe.com/pmall";//测试环境 // const baseUrl = "https://momclub-uat.feihe.com/pmall";//测试环境
// let baseUrl = "https://momclub.feihe.com/pmall";//生产环境 // const baseUrl = "https://momclub-test.feihe.com/pmall";
let baseUrl = "https://momclub.feihe.com/pmall";//生产环境
// const baseUrl = "https://docs.dui88.com/mock/1956/api";//mock // const baseUrl = "https://docs.dui88.com/mock/1956/api";//mock
// const baseUrl = "https://feihe.m.duibatest.com.cn/pmall" // const baseUrl = "https://feihe.m.duibatest.com.cn/pmall"
......
...@@ -174,14 +174,14 @@ ...@@ -174,14 +174,14 @@
border-radius: 4rpx; border-radius: 4rpx;
text-align: center; text-align: center;
line-height: 36rpx; line-height: 36rpx;
font-size: 16rpx; font-size: 24rpx;
font-weight: bold; font-weight: 400;
} }
.countdown_colon { .countdown_colon {
// 颜色通过内联样式动态设置 // 颜色通过内联样式动态设置
font-size: 16rpx; font-size: 24rpx;
font-weight: bold; font-weight: 400;
margin: 0 2rpx; margin: 0 2rpx;
} }
} }
...@@ -496,6 +496,53 @@ ...@@ -496,6 +496,53 @@
justify-content: space-between; justify-content: space-between;
padding: 40rpx 34rpx; padding: 40rpx 34rpx;
// 正在秒杀状态布局
.single_session_content_ongoing {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
// 未开始/已结束状态布局 - 时间在前,状态在后,无间距
.single_session_content_other {
display: flex;
align-items: center;
justify-content: flex-start;
width: 100%;
gap: 0;
.tab_time_info {
margin: 0;
padding: 0;
display: flex;
align-items: center;
.tab_time_text {
&.start_time_text {
font-size: 28rpx;
font-weight: 400;
// 颜色通过内联样式动态设置
}
}
}
.session_status_tag {
margin: 0;
padding: 0;
margin-left: 0;
.status_text {
&.upcoming_text,
&.ended_text {
// 颜色通过内联样式动态设置
font-weight: 400;
font-size: 28rpx;
}
}
}
}
.session_status_tag { .session_status_tag {
&.ongoing { &.ongoing {
.status_text { .status_text {
...@@ -572,8 +619,8 @@ ...@@ -572,8 +619,8 @@
.countdown_colon { .countdown_colon {
// 颜色通过内联样式动态设置 // 颜色通过内联样式动态设置
font-size: 20rpx; font-size: 24rpx;
font-weight: bold; font-weight: 400;
margin: 0 4rpx; margin: 0 4rpx;
} }
} }
......
...@@ -41,17 +41,17 @@ ...@@ -41,17 +41,17 @@
</view> </view>
</view> </view>
<view class="session_status_tag ongoing"> <view class="session_status_tag ongoing">
<text class="status_text" :style="{ color: getColor('ongoingStatusTextColor')[itemIndex] }">正在秒杀</text> <text class="status_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">正在秒杀</text>
</view> </view>
</view> </view>
<!-- 即将开始/已过期状态:开始时间在上,状态文案在下 --> <!-- 即将开始/已过期状态:开始时间在上,状态文案在下 -->
<view v-else class="tab_content_other"> <view v-else class="tab_content_other">
<view class="tab_time_info"> <view class="tab_time_info">
<text class="tab_time_text start_time_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">{{ getStartTime(session) }}</text> <text class="tab_time_text start_time_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">{{ getStartTime(session) }}</text>
</view> </view>
<view class="session_status_tag" :class="session.status"> <view class="session_status_tag" :class="session.status">
<text v-if="session.status === 'upcoming'" class="status_text upcoming_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">即将开始</text> <text v-if="session.status === 'upcoming'" class="status_text upcoming_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">即将开始</text>
<text v-else class="status_text ended_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">已结束</text> <text v-else class="status_text ended_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">已结束</text>
</view> </view>
</view> </view>
</view> </view>
...@@ -83,17 +83,17 @@ ...@@ -83,17 +83,17 @@
</view> </view>
</view> </view>
<view class="session_status_tag ongoing"> <view class="session_status_tag ongoing">
<text class="status_text" :style="{ color: getColor('ongoingStatusTextColor')[itemIndex] }">正在秒杀</text> <text class="status_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">正在秒杀</text>
</view> </view>
</view> </view>
<!-- 即将开始/已过期状态:开始时间在上,状态文案在下 --> <!-- 即将开始/已过期状态:开始时间在上,状态文案在下 -->
<view v-else class="tab_content_other"> <view v-else class="tab_content_other">
<view class="tab_time_info"> <view class="tab_time_info">
<text class="tab_time_text start_time_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">{{ getStartTime(session) }}</text> <text class="tab_time_text start_time_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">{{ getStartTime(session) }}</text>
</view> </view>
<view class="session_status_tag" :class="session.status"> <view class="session_status_tag" :class="session.status">
<text v-if="session.status === 'upcoming'" class="status_text upcoming_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">即将开始</text> <text v-if="session.status === 'upcoming'" class="status_text upcoming_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">即将开始</text>
<text v-else class="status_text ended_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">已结束</text> <text v-else class="status_text ended_text" :style="{ color: index === currentSessionIndex ? getColor('ongoingStatusTextColor')[itemIndex] : getColor('statusTextColor')[itemIndex] }">已结束</text>
</view> </view>
</view> </view>
</view> </view>
...@@ -102,13 +102,12 @@ ...@@ -102,13 +102,12 @@
<!-- 单场次状态显示 --> <!-- 单场次状态显示 -->
<view class="single_session_status" v-else-if="creditsSaleData.sessions && creditsSaleData.sessions.length === 1"> <view class="single_session_status" v-else-if="creditsSaleData.sessions && creditsSaleData.sessions.length === 1">
<view v-if="creditsSaleData.sessions[0].status === 'ongoing'" class="single_session_content_ongoing">
<view class="session_status_tag" :class="creditsSaleData.sessions[0].status"> <view class="session_status_tag" :class="creditsSaleData.sessions[0].status">
<text v-if="creditsSaleData.sessions[0].status === 'ongoing'" class="status_text" :style="{ color: getColor('ongoingStatusTextColor')[itemIndex] }">正在秒杀</text> <text class="status_text" :style="{ color: getColor('ongoingStatusTextColor')[itemIndex] }">正在秒杀</text>
<text v-else-if="creditsSaleData.sessions[0].status === 'upcoming'" class="status_text upcoming_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">即将开始</text>
<text v-else class="status_text ended_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">已结束</text>
</view> </view>
<view class="tab_time_info"> <view class="tab_time_info">
<view v-if="creditsSaleData.sessions[0].status === 'ongoing'" class="tab_time_text countdown_display"> <view class="tab_time_text countdown_display">
<text class="countdown_label" :style="{ color: getColor('countdownColor')[itemIndex] }">倒计时</text> <text class="countdown_label" :style="{ color: getColor('countdownColor')[itemIndex] }">倒计时</text>
<view class="countdown_numbers"> <view class="countdown_numbers">
<view v-for="(timeUnit, index) in getCountdownUnits(creditsSaleData.sessions[0].countdown)" <view v-for="(timeUnit, index) in getCountdownUnits(creditsSaleData.sessions[0].countdown)"
...@@ -119,7 +118,16 @@ ...@@ -119,7 +118,16 @@
</view> </view>
</view> </view>
</view> </view>
<text v-else class="tab_time_text start_time_text" :style="{ color: getColor('statusTextColor')[itemIndex] }">{{ getStartTime(creditsSaleData.sessions[0]) }}</text> </view>
</view>
<view v-else class="single_session_content_other">
<view class="tab_time_info">
<text class="tab_time_text start_time_text" :style="{ color: getColor('ongoingStatusTextColor')[itemIndex] }">{{ getStartTime(creditsSaleData.sessions[0]) }}</text>
</view>
<view class="session_status_tag" :class="creditsSaleData.sessions[0].status">
<text v-if="creditsSaleData.sessions[0].status === 'upcoming'" class="status_text upcoming_text" :style="{ color: getColor('ongoingStatusTextColor')[itemIndex] }">即将开始</text>
<text v-else class="status_text ended_text" :style="{ color: getColor('ongoingStatusTextColor')[itemIndex] }">已结束</text>
</view>
</view> </view>
</view> </view>
...@@ -221,7 +229,7 @@ const getColor = (type) => { ...@@ -221,7 +229,7 @@ const getColor = (type) => {
colors = ['#B27C1E', '#578EC4', '#7556A8', '#CEA46C', '#E7CCA4']; colors = ['#B27C1E', '#578EC4', '#7556A8', '#CEA46C', '#E7CCA4'];
break; break;
case 'ongoingStatusTextColor': case 'ongoingStatusTextColor':
// 正在秒杀状态文字颜色 // 被选中的tab的文字颜色(status_text和tab_time_text)
colors = ['#1c1c1c', '#1c1c1c', '#1c1c1c', '#1c1c1c', '#FFF0DF']; colors = ['#1c1c1c', '#1c1c1c', '#1c1c1c', '#1c1c1c', '#FFF0DF'];
break; break;
case 'buttonGradientColor': case 'buttonGradientColor':
...@@ -333,7 +341,7 @@ const getGoodButtonInfo = (good, session) => { ...@@ -333,7 +341,7 @@ const getGoodButtonInfo = (good, session) => {
// 未开始场次 // 未开始场次
if (status === 'upcoming') { if (status === 'upcoming') {
return { text: '即将开始', disabled: true }; return { text: '开始', disabled: true };
} }
// 已结束场次 // 已结束场次
...@@ -703,19 +711,19 @@ const generateTestSeckillData = () => { ...@@ -703,19 +711,19 @@ const generateTestSeckillData = () => {
// 第一场:已结束(3小时前开始,2小时前结束) // 第一场:已结束(3小时前开始,2小时前结束)
const session1Start = baseTime - 3 * 60 * 60 * 1000; // 3小时前 const session1Start = baseTime - 3 * 60 * 60 * 1000; // 3小时前
const session1End = baseTime - 2 * 60 * 60 * 1000; // 2小时前 const session1End = baseTime - 1 * 60 * 60 * 1000; // 2小时前
// 第二场:正在秒杀(30分钟前开始,30分钟后结束) // 第二场:正在秒杀(30分钟前开始,30分钟后结束)
const session2Start = baseTime - 30 * 60 * 1000; // 30分钟前 const session2Start = baseTime - 30 * 60 * 1000; // 30分钟前
const session2End = baseTime - 30 * 60 * 1000; // 30分钟后 const session2End = baseTime + 30 * 60 * 1000; // 30分钟后
// 第三场:即将开始(1小时后开始,2小时后结束) // 第三场:即将开始(1小时后开始,2小时后结束)
const session3Start = baseTime - 1 * 60 * 60 * 1000; // 1小时后 const session3Start = baseTime + 1 * 60 * 60 * 1000; // 1小时后
const session3End = baseTime - 2 * 60 * 60 * 1000; // 2小时后 const session3End = baseTime + 2 * 60 * 60 * 1000; // 2小时后
// 第四场:即将开始(2小时后开始,3小时后结束) // 第四场:即将开始(2小时后开始,3小时后结束)
const session4Start = baseTime - 2 * 60 * 60 * 1000; // 2小时后 const session4Start = baseTime + 2 * 60 * 60 * 1000; // 2小时后
const session4End = baseTime - 3 * 60 * 60 * 1000; // 3小时后 const session4End = baseTime + 3 * 60 * 60 * 1000; // 3小时后
return { return {
"code": "000000", "code": "000000",
...@@ -741,22 +749,22 @@ const generateTestSeckillData = () => { ...@@ -741,22 +749,22 @@ const generateTestSeckillData = () => {
"priceSale": "200.00", "priceSale": "200.00",
"stock": 10 "stock": 10
}, },
{ // {
"button": {"key": 1, "text": "立即抢购"}, // "button": {"key": 1, "text": "立即抢购"},
"credits": 150, // "credits": 150,
"creditsType": "CREDITS", // "creditsType": "CREDITS",
"creditsTypeName": "积分", // "creditsTypeName": "积分",
"goods": { // "goods": {
"id": 102, // "id": 102,
"goodsName": "测试商品B - 正在进行中", // "goodsName": "测试商品B - 正在进行中",
"goodsImage": ["https://via.placeholder.com/150/4CAF50/FFFFFF?text=GoodB"], // "goodsImage": ["https://via.placeholder.com/150/4CAF50/FFFFFF?text=GoodB"],
"credits": "150", // "credits": "150",
"priceSale": "300.00", // "priceSale": "300.00",
"stock": 5 // "stock": 5
}, // },
"priceSale": "300.00", // "priceSale": "300.00",
"stock": 5 // "stock": 5
} // }
], ],
"sessionKey": "session_1_ongoing", "sessionKey": "session_1_ongoing",
"start": session1Start "start": session1Start
......
...@@ -66,7 +66,7 @@ ...@@ -66,7 +66,7 @@
margin-left: 0rpx; margin-left: 0rpx;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
box-shadow: 0 2rpx 8rpx rgba(160, 123, 77, 0.3); // box-shadow: 0 2rpx 8rpx rgba(160, 123, 77, 0.3);
transition: transform 0.2s ease; transition: transform 0.2s ease;
.invite_button_text { .invite_button_text {
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
<view class="star_character"> <view class="star_character">
<image <image
class="star_img" class="star_img"
:src="$baseUrl + 'integral/1023/invate_star_character1023.png'" :src="$baseUrl + (itemIndex != 4 ? 'integral/1023/invate_star_character1023.png' : 'integral/1023/invate_star_character102302.png')"
mode="aspectFit" mode="aspectFit"
/> />
</view> </view>
......
...@@ -63,6 +63,23 @@ watch(() => props.visible, (newVal) => { ...@@ -63,6 +63,23 @@ watch(() => props.visible, (newVal) => {
} }
isAnimating.value = false; isAnimating.value = false;
} }
// #ifdef MP-WEIXIN
if (newVal) {
// 弹窗展示时,禁止页面滚动
wx.setPageStyle({
style: {
overflow: 'hidden'
}
});
} else {
// 弹窗关闭时,恢复页面滚动
wx.setPageStyle({
style: {
overflow: 'auto'
}
});
}
}); });
// 关闭弹窗 // 关闭弹窗
......
...@@ -6,7 +6,7 @@ const init = (SENSORS_URL) => { ...@@ -6,7 +6,7 @@ const init = (SENSORS_URL) => {
sensors.setPara({ sensors.setPara({
name: "sensors", name: "sensors",
server_url: SENSORS_URL, server_url: SENSORS_URL,
show_log: false, show_log: true,
autoTrack: { autoTrack: {
appLaunch: true, // 默认为 true,false 则关闭 $MPLaunch 事件采集 appLaunch: true, // 默认为 true,false 则关闭 $MPLaunch 事件采集
appShow: true, // 默认为 true,false 则关闭 $MPShow 事件采集 appShow: true, // 默认为 true,false 则关闭 $MPShow 事件采集
......
...@@ -398,6 +398,74 @@ ...@@ -398,6 +398,74 @@
} }
] ]
}, },
{
"root": "v3",
"pages": [
{
"path": "addressList/addressList",
"style": {
"navigationBarTitleText": "收货地址管理",
"navigationStyle": "default"
}
},
{
"path": "addressList/addressEdit",
"style": {
"navigationBarTitleText": "填写收货地址",
"navigationStyle": "default"
}
},
{
"path": "more/index",
"style": {
"navigationBarTitleText": "更多",
"navigationStyle": "default"
}
},
{
"path": "goodDetail/goodDetail",
"style": {
"navigationBarTitleText": "商品详情"
}
},
{
"path": "settlementCenter/settlementCenter",
"style": {
"navigationBarTitleText": "结算中心"
}
},
{
"path": "orderDetail/orderDetail",
"style": {
"navigationBarTitleText": "订单详情"
}
},
{
"path": "payResultPage/payResultPage",
"style": {
"navigationBarTitleText": "支付结果"
}
},
{
"path": "logoffConfirmPage/logoffConfirmPage",
"style": {
"navigationBarTitleText": "注销账号"
}
},
{
"path": "orderList/orderList",
"style": {
"navigationBarTitleText": "我的订单"
}
},
{
"path": "logisticsPage/logisticsPage",
"style": {
"navigationBarTitleText": ""
}
}
]
},
{ {
"root": "v3", "root": "v3",
"pages": [ "pages": [
......
...@@ -353,9 +353,9 @@ const handleClaim = () => { ...@@ -353,9 +353,9 @@ const handleClaim = () => {
}; };
const gotoIntegral = () => { const gotoIntegral = () => {
jump({
url: '/pages/index/index?pageType=integral', uni.redirectTo({
type: JumpType.INNER url: '/pages/index/index?pageType=integral'
}); });
}; };
......
...@@ -253,7 +253,7 @@ export const useUserStore = defineStore("userInfo", { ...@@ -253,7 +253,7 @@ export const useUserStore = defineStore("userInfo", {
uni.setStorageSync('memberId', data?.memberId) uni.setStorageSync('memberId', data?.memberId)
} }
uni.setStorageSync('loginStatus', data?.memberId == "not_login" ? 0 : 1) uni.setStorageSync('loginStatus', data?.memberId == "not_login" ? 0 : 1)
this.userInfo = data; // this.userInfo = data;
// this.memberInfo = data; // this.memberInfo = data;
// if (data?.memberId !== "not_login") { // if (data?.memberId !== "not_login") {
// this.babyInfo = data; // this.babyInfo = data;
......
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
xcxClick: '我的页面点击', xcxClick: '我的页面点击',
pageName: '我的页面', pageName: '我的页面',
buttonName: '宝宝信息切换', buttonName: '宝宝信息切换',
}"> }" >
<text class="nickname" @click="handleEditProfile">{{ <text class="nickname" @click="handleEditProfile">{{
babyInfo?.babyStage === 0 babyInfo?.babyStage === 0
? "备孕" ? "备孕"
......
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