Branch_ccc #4

Merged
root merged 7 commits from Branch_ccc into master 2024-10-09 13:58:41 +08:00
16 changed files with 233 additions and 172 deletions
Showing only changes of commit 7c358424a0 - Show all commits

3
.env
View File

@ -3,10 +3,11 @@ SHOPRO_VERSION = v1.8.3
# 后端接口 - 正式环境(通过 process.env.NODE_ENV 非 development # 后端接口 - 正式环境(通过 process.env.NODE_ENV 非 development
SHOPRO_BASE_URL = https://zysc.fjptzykj.com SHOPRO_BASE_URL = https://zysc.fjptzykj.com
#SHOPRO_BASE_URL = http://192.168.1.20:6127
# 后端接口 - 测试环境(通过 process.env.NODE_ENV = development # 后端接口 - 测试环境(通过 process.env.NODE_ENV = development
SHOPRO_DEV_BASE_URL = https://zysc.fjptzykj.com SHOPRO_DEV_BASE_URL = https://zysc.fjptzykj.com
### SHOPRO_DEV_BASE_URL = http://yunai.natapp1.cc #SHOPRO_DEV_BASE_URL = http://192.168.1.20:6127
# 后端接口前缀(一般不建议调整) # 后端接口前缀(一般不建议调整)
SHOPRO_API_PATH = /app-api SHOPRO_API_PATH = /app-api

View File

@ -352,6 +352,16 @@
"title": "编辑地址" "title": "编辑地址"
} }
}, },
{
"path": "goods_details_store/index",
"style": {
"navigationBarTitleText": "门店管理"
},
"meta": {
"auth": true,
"title": "门店管理"
}
},
{ {
"path": "wallet/money", "path": "wallet/money",
"style": { "style": {

View File

@ -88,12 +88,12 @@
// //
.seckill-box { .seckill-box {
background: v-bind(seckillBg) no-repeat; background: url('https://zysc.fjptzykj.com:3000/shangcheng/0796100444273e747b7afc5778081bf8a1f8373707822cccc272cc205e7ad0f3.png') no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
} }
.groupon-box { .groupon-box {
background: v-bind(grouponBg) no-repeat; background: url('https://zysc.fjptzykj.com:3000/shangcheng/0796100444273e747b7afc5778081bf8a1f8373707822cccc272cc205e7ad0f3.png') no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
} }
</style> </style>

File diff suppressed because one or more lines are too long

View File

@ -297,7 +297,7 @@
// height: 320rpx; // height: 320rpx;
background-size: 100% 100%; background-size: 100% 100%;
border-radius: 10rpx; border-radius: 10rpx;
background-image: v-bind(headerBg); background-image: url('@/static/images/seckill-header.png');
background-repeat: no-repeat; background-repeat: no-repeat;
.price-box { .price-box {
@ -445,7 +445,7 @@
font-size: 24rpx; font-size: 24rpx;
font-weight: 600; font-weight: 600;
margin-left: -36rpx; margin-left: -36rpx;
background-image: v-bind(btnBg); background-image: url('@/static/images/groupon-btn.png');
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
color: #ffffff; color: #ffffff;
@ -459,7 +459,7 @@
font-size: 24rpx; font-size: 24rpx;
font-weight: 600; font-weight: 600;
margin-left: -36rpx; margin-left: -36rpx;
background-image: v-bind(disabledBtnBg); background-image: url('@/static/images/activity-btn-disabled.png');
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
color: #999999; color: #999999;

View File

@ -24,12 +24,12 @@
:style="[{ height: pageHeight + 'px' }]" :style="[{ height: pageHeight + 'px' }]"
v-if="state.categoryList?.length" v-if="state.categoryList?.length"
> >
<image <!-- <image
v-if="state.categoryList[state.activeMenu].picUrl" v-if="state.categoryList[state.activeMenu].picUrl"
class="banner-img" class="banner-img"
:src="sheep.$url.cdn(state.categoryList[state.activeMenu].picUrl)" :src="sheep.$url.cdn(state.categoryList[state.activeMenu].picUrl)"
mode="widthFix" mode="widthFix"
/> /> -->
<first-one v-if="state.style === 'first_one'" :pagination="state.pagination" /> <first-one v-if="state.style === 'first_one'" :pagination="state.pagination" />
<first-two v-if="state.style === 'first_two'" :pagination="state.pagination" /> <first-two v-if="state.style === 'first_two'" :pagination="state.pagination" />
<second-one <second-one

View File

@ -8,7 +8,7 @@
:navbarStyle="template.navigationBar" :navbarStyle="template.navigationBar"
onShareAppMessage onShareAppMessage
> >
<image class="seckill" src="@/static/images/seckill-bg.png"></image> <image class="seckill" src="@/static/images/seckilbg.png"></image>
<s-block <s-block
v-for="(item, index) in template.components" v-for="(item, index) in template.components"
:key="index" :key="index"

View File

@ -42,7 +42,7 @@
</view> </view>
<view <view
class="order-item ss-flex ss-col-center ss-row-between" class="order-item ss-flex ss-col-center ss-row-between"
v-if="state.orderInfo.type === 0" v-if="state.orderInfo.type === 0 && state.orderInfo.pointsStatus === 1"
> >
<view class="item-title">积分抵扣</view> <view class="item-title">积分抵扣</view>
<view class="ss-flex ss-col-center"> <view class="ss-flex ss-col-center">
@ -52,7 +52,7 @@
class="score-img" class="score-img"
/> />
<text class="item-value ss-m-r-24"> <text class="item-value ss-m-r-24">
{{ state.pointStatus ? state.orderInfo.totalPoint - state.orderInfo.usePoint : (state.orderInfo.totalPoint || 0) }} {{ state.pointStatus ? state.orderInfo.totalPoint - state.orderInfo.usedPoint : (state.orderInfo.totalPoint || 0) }}
</text> </text>
<checkbox-group @change="changeIntegral"> <checkbox-group @change="changeIntegral">
<checkbox :checked='state.pointStatus' :disabled="!state.orderInfo.totalPoint || state.orderInfo.totalPoint <= 0" /> <checkbox :checked='state.pointStatus' :disabled="!state.orderInfo.totalPoint || state.orderInfo.totalPoint <= 0" />

View File

@ -2,7 +2,13 @@
<template> <template>
<view> <view>
<view class="title"> <view class="title">
订单中心 <span>订单中心</span>
<view class="ff">
<span class="ckgd" @click="sheep.$router.go('/pages/order/list');">查看更多</span>
<span class="ckgd" @click="sheep.$router.go('/pages/order/list');">
<image class="img" src="@/static/images/dayu.png"></image>
</span>
</view>
</view> </view>
<view class="ss-order-menu-wrap ss-flex ss-col-center"> <view class="ss-order-menu-wrap ss-flex ss-col-center">
@ -16,7 +22,7 @@
<image v-if="index == 3" class="item-icon" :src="imag3" mode="aspectFit" /> <image v-if="index == 3" class="item-icon" :src="imag3" mode="aspectFit" />
<image v-if="index == 4" class="item-icon" :src="imag4" mode="aspectFit" /> <image v-if="index == 4" class="item-icon" :src="imag4" mode="aspectFit" />
</uni-badge> </uni-badge>
<view class="menu-title ss-m-t-28">{{ item.title }}</view> <view class="menu-title">{{ item.title }}</view>
</view> </view>
</view> </view>
</view> </view>
@ -44,6 +50,14 @@
type: 'unpaid', type: 'unpaid',
count: 'unpaidCount', count: 'unpaidCount',
}, },
{
title: '待发货',
value: '2',
icon: '/static/img/shop/order/no_take.png',
path: '/pages/order/list',
type: 'take',
count: 'takeCount',
},
{ {
title: '待收货', title: '待收货',
value: '3', value: '3',
@ -61,19 +75,20 @@
count: 'uncommentedCount', count: 'uncommentedCount',
}, },
{ {
title: '售后', title: '退款/售后',
value: '0', value: '0',
icon: '/static/img/shop/order/change_order.png', icon: '/static/img/shop/order/change_order.png',
path: '/pages/order/aftersale/list', path: '/pages/order/aftersale/list',
type: 'aftersale', type: 'aftersale',
count: 'afterSaleCount', count: 'afterSaleCount',
}, }
{ // ,
title: '全部订单', // {
value: '0', // title: '',
icon: '/static/img/shop/order/all_order.png', // value: '0',
path: '/pages/order/list', // icon: '/static/img/shop/order/all_order.png',
}, // path: '/pages/order/list',
// }
]; ];
const numData = computed(() => sheep.$store('user').numData); const numData = computed(() => sheep.$store('user').numData);
@ -87,6 +102,22 @@
font-size: 16px; font-size: 16px;
font-weight: 600; font-weight: 600;
// border-bottom: 1px solid #dcdcdc; // border-bottom: 1px solid #dcdcdc;
display:flex;
justify-content: space-between;
.ff{
display: flex;
align-items: center;
.ckgd{
color: #8a8787;
font-size: 15px;
.img{
width:20px;
height:20px;
margin-top: 3px;
}
}
}
} }
.ss-order-menu-wrap { .ss-order-menu-wrap {
@ -99,6 +130,7 @@
font-size: 24rpx; font-size: 24rpx;
line-height: 24rpx; line-height: 24rpx;
color: #333333; color: #333333;
margin-top:14rpx;
} }
.item-icon { .item-icon {

View File

@ -319,7 +319,7 @@
font-size: 24rpx; font-size: 24rpx;
font-weight: 600; font-weight: 600;
margin-left: -50rpx; margin-left: -50rpx;
background-image: v-bind(headerBg); background-image: url('@/static/images/groupon-btn-long.png');
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
color: #ffffff; color: #ffffff;

View File

@ -103,7 +103,7 @@
showAuthModal(); showAuthModal();
return; return;
} }
console.log(props.shareInfo); console.log(props.shareInfo,"props.shareInfo");
unref(SharePosterRef).getPoster(); unref(SharePosterRef).getPoster();
state.showPosterModal = true; state.showPosterModal = true;
}; };

View File

@ -1,168 +1,179 @@
<!-- 装修用户组件用户卡片 --> <!-- 装修用户组件用户卡片 -->
<template> <template>
<view class="ss-user-info-wrap ss-p-t-50"> <view class="ss-user-info-wrap ss-p-t-50">
<view class="ss-flex ss-col-center ss-row-between ss-m-b-20"> <view class="ss-flex ss-col-center ss-row-between ss-m-b-20">
<view class="left-box ss-flex ss-col-center ss-m-l-36"> <view class="left-box ss-flex ss-col-center ss-m-l-36">
<view class="avatar-box ss-m-r-24"> <view class="avatar-box ss-m-r-24">
<image <image class="avatar-img" :src="
class="avatar-img"
:src="
isLogin isLogin
? sheep.$url.cdn(userInfo.avatar) ? sheep.$url.cdn(userInfo.avatar)
: defaultAvatar : defaultAvatar
" " mode="aspectFill" @tap="sheep.$router.go('/pages/user/info')"></image>
mode="aspectFill" </view>
@tap="sheep.$router.go('/pages/user/info')" <view>
></image> <view class="nickname-box ss-flex ss-col-center">
</view> <view class="nick-name ss-m-r-20">{{ userInfo?.nickname || nickname }}</view>
<view> </view>
<view class="nickname-box ss-flex ss-col-center"> </view>
<view class="nick-name ss-m-r-20">{{ userInfo?.nickname || nickname }}</view> </view>
</view> <view class="right-box ss-m-r-52">
</view> <button class="ss-reset-button" @tap="showShareModal">
</view> <text class="sicon-qrcode"></text>
<view class="right-box ss-m-r-52"> </button>
<button class="ss-reset-button" @tap="showShareModal"> <!-- <view class="qiandao" @click="sheep.$router.go('/pages/app/sign');">
<text class="sicon-qrcode"></text> 签到
</button> </view> -->
</view> </view>
</view> </view>
<!-- 提示绑定手机号 先隐藏 yudao 需要再修改 -->
<!-- 提示绑定手机号 先隐藏 yudao 需要再修改 --> <view class="bind-mobile-box ss-flex ss-row-between ss-col-center" v-if="isLogin && !userInfo.mobile">
<view <view class="ss-flex">
class="bind-mobile-box ss-flex ss-row-between ss-col-center" <text class="cicon-mobile-o" />
v-if="isLogin && !userInfo.mobile" <view class="mobile-title ss-m-l-20"> 点击绑定手机号确保账户安全 </view>
> </view>
<view class="ss-flex"> <button class="ss-reset-button bind-btn" @tap="onBind">去绑定</button>
<text class="cicon-mobile-o" /> </view>
<view class="mobile-title ss-m-l-20"> 点击绑定手机号确保账户安全 </view> </view>
</view>
<button class="ss-reset-button bind-btn" @tap="onBind">去绑定</button>
</view>
</view>
</template> </template>
<script setup> <script setup>
// 使 import // 使 import
import defaultAvatar from '@/static/images/default_avatar.png'; import defaultAvatar from '@/static/images/default_avatar.png';
/** /**
* 用户卡片 * 用户卡片
* *
* @property {Number} leftSpace - 容器左间距 * @property {Number} leftSpace - 容器左间距
* @property {Number} rightSpace - 容器右间距 * @property {Number} rightSpace - 容器右间距
* *
* @property {String} avatar - 头像 * @property {String} avatar - 头像
* @property {String} nickname - 昵称 * @property {String} nickname - 昵称
* @property {String} vip - 等级 * @property {String} vip - 等级
* @property {String} collectNum - 收藏数 * @property {String} collectNum - 收藏数
* @property {String} likeNum - 点赞数 * @property {String} likeNum - 点赞数
* *
* *
*/ */
import { computed, reactive } from 'vue'; import {
import sheep from '@/sheep'; computed,
import { showShareModal, showAuthModal } from '@/sheep/hooks/useModal'; reactive
} from 'vue';
import sheep from '@/sheep';
import {
showShareModal,
showAuthModal
} from '@/sheep/hooks/useModal';
// //
const userInfo = computed(() => sheep.$store('user').userInfo); const userInfo = computed(() => sheep.$store('user').userInfo);
console.log('用户信息', userInfo); console.log('用户信息', userInfo);
// //
const isLogin = computed(() => sheep.$store('user').isLogin); const isLogin = computed(() => sheep.$store('user').isLogin);
// //
const props = defineProps({ const props = defineProps({
background: { background: {
type: String, type: String,
default: '', default: '',
}, },
// //
avatar: { avatar: {
type: String, type: String,
default: '', default: '',
}, },
nickname: { nickname: {
type: String, type: String,
default: '请先登录', default: '请先登录',
}, },
vip: { vip: {
type: [String, Number], type: [String, Number],
default: '1', default: '1',
}, },
collectNum: { collectNum: {
type: [String, Number], type: [String, Number],
default: '1', default: '1',
}, },
likeNum: { likeNum: {
type: [String, Number], type: [String, Number],
default: '1', default: '1',
}, },
}); });
function onBind() { function onBind() {
showAuthModal('changeMobile'); showAuthModal('changeMobile');
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.ss-user-info-wrap { .qiandao{
box-sizing: border-box; width: 50px;
height: 30px;
background: yellow;
text-align: center;
line-height: 30px;
font-weight: 700;
border-radius: 30px 0px 30px 30px;
font-size: 15px;
}
.avatar-box { .ss-user-info-wrap {
width: 100rpx; box-sizing: border-box;
height: 100rpx;
border-radius: 50%;
overflow: hidden;
.avatar-img { .avatar-box {
width: 100%; width: 100rpx;
height: 100%; height: 100rpx;
} border-radius: 50%;
} overflow: hidden;
.nick-name { .avatar-img {
font-size: 34rpx; width: 100%;
font-weight: 400; height: 100%;
color: white; }
line-height: normal; }
}
.vip-img { .nick-name {
width: 30rpx; font-size: 34rpx;
height: 30rpx; font-weight: 400;
} color: white;
line-height: normal;
}
.sicon-qrcode { .vip-img {
font-size: 40rpx; width: 30rpx;
} height: 30rpx;
} }
.bind-mobile-box { .sicon-qrcode {
width: 100%; font-size: 40rpx;
height: 84rpx; }
padding: 0 34rpx 0 44rpx; }
box-sizing: border-box;
background: #ffffff;
box-shadow: 0px -8rpx 9rpx 0px rgba(#e0e0e0, 0.3);
.cicon-mobile-o { .bind-mobile-box {
font-size: 30rpx; width: 100%;
color: #ff690d; height: 84rpx;
} padding: 0 34rpx 0 44rpx;
box-sizing: border-box;
background: #ffffff;
box-shadow: 0px -8rpx 9rpx 0px rgba(#e0e0e0, 0.3);
.mobile-title { .cicon-mobile-o {
font-size: 24rpx; font-size: 30rpx;
font-weight: 500; color: #ff690d;
color: #ff690d; }
}
.bind-btn { .mobile-title {
width: 100rpx; font-size: 24rpx;
height: 50rpx; font-weight: 500;
background: #ff6100; color: #ff690d;
border-radius: 25rpx; }
font-size: 24rpx;
font-weight: 500; .bind-btn {
color: #ffffff; width: 100rpx;
} height: 50rpx;
} background: #ff6100;
</style> border-radius: 25rpx;
font-size: 24rpx;
font-weight: 500;
color: #ffffff;
}
}
</style>

View File

@ -7,7 +7,9 @@
> >
<view class="value-box ss-flex ss-col-bottom"> <view class="value-box ss-flex ss-col-bottom">
<view class="value-text ss-line-1">{{ fen2yuan(userWallet.balance) || '0.00' }}</view> <view class="value-text ss-line-1">{{ fen2yuan(userWallet.balance) || '0.00' }}</view>
<view class="unit-text ss-m-l-6"></view> <view class="unit-text ss-m-l-6">
<!-- -->
</view>
</view> </view>
<view class="menu-title ss-m-t-28">余额</view> <view class="menu-title ss-m-t-28">余额</view>
</view> </view>
@ -22,7 +24,9 @@
> >
<view class="value-box ss-flex ss-col-bottom"> <view class="value-box ss-flex ss-col-bottom">
<view class="value-text">{{ numData.unusedCouponCount }}</view> <view class="value-text">{{ numData.unusedCouponCount }}</view>
<view class="unit-text ss-m-l-6"></view> <view class="unit-text ss-m-l-6">
<!-- -->
</view>
</view> </view>
<view class="menu-title ss-m-t-28">优惠券</view> <view class="menu-title ss-m-t-28">优惠券</view>
</view> </view>
@ -32,7 +36,9 @@
> >
<view class="value-box ss-flex ss-col-bottom"> <view class="value-box ss-flex ss-col-bottom">
<view class="value-text">{{ userInfo.point || 0 }}</view> <view class="value-text">{{ userInfo.point || 0 }}</view>
<view class="unit-text ss-m-l-6"></view> <view class="unit-text ss-m-l-6">
<!-- -->
</view>
</view> </view>
<view class="menu-title ss-m-t-28">积分</view> <view class="menu-title ss-m-t-28">积分</view>
</view> </view>
@ -89,7 +95,8 @@
text-align: center; text-align: center;
.value-text { .value-text {
font-size: 28rpx; font-size: 30rpx;
font-weight: 600;
color: white; color: white;
line-height: 28rpx; line-height: 28rpx;
vertical-align: text-bottom; vertical-align: text-bottom;

BIN
static/images/dayu.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB