Compare commits
13 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
75eed2ba19 | |
|
|
9e7ef1e9f1 | |
|
|
3a27171cda | |
|
|
014b0dd508 | |
|
|
c034b59a7b | |
|
|
0533985189 | |
|
|
43d2d02e8e | |
|
|
b6b0ca3dbd | |
|
|
0d0017eac7 | |
|
|
5c2377b482 | |
|
|
1346f8bf3b | |
|
|
d18d67dd62 | |
|
|
f2bfb2d79b |
|
|
@ -2,7 +2,7 @@
|
||||||
"name": "芋道商城",
|
"name": "芋道商城",
|
||||||
"appid": "__UNI__460BC4C",
|
"appid": "__UNI__460BC4C",
|
||||||
"description": "基于 uni-app + Vue3 技术驱动的在线商城系统,内含诸多功能与丰富的活动,期待您的使用和反馈。",
|
"description": "基于 uni-app + Vue3 技术驱动的在线商城系统,内含诸多功能与丰富的活动,期待您的使用和反馈。",
|
||||||
"versionName": "2026.01",
|
"versionName": "2026.04",
|
||||||
"versionCode": "183",
|
"versionCode": "183",
|
||||||
"transformPx": false,
|
"transformPx": false,
|
||||||
"app-plus": {
|
"app-plus": {
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
"id": "shopro",
|
"id": "shopro",
|
||||||
"name": "shopro",
|
"name": "shopro",
|
||||||
"displayName": "芋道商城",
|
"displayName": "芋道商城",
|
||||||
"version": "2026.01",
|
"version": "2026.04",
|
||||||
"description": "芋道商城,一套代码,同时发行到iOS、Android、H5、微信小程序多个平台,请使用手机扫码快速体验强大功能",
|
"description": "芋道商城,一套代码,同时发行到iOS、Android、H5、微信小程序多个平台,请使用手机扫码快速体验强大功能",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"prettier": "prettier --write \"{pages,sheep}/**/*.{js,json,tsx,css,less,scss,vue,html,md}\""
|
"prettier": "prettier --write \"{pages,sheep}/**/*.{js,json,tsx,css,less,scss,vue,html,md}\""
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
state.pagination.pageNo++;
|
state.pagination.pageNo++;
|
||||||
getList();
|
getRankList();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 上拉加载更多
|
// 上拉加载更多
|
||||||
|
|
|
||||||
|
|
@ -163,7 +163,7 @@
|
||||||
<text class="num font-color">{{ item.brokerageUserCount || 0 }} </text>人
|
<text class="num font-color">{{ item.brokerageUserCount || 0 }} </text>人
|
||||||
</view>
|
</view>
|
||||||
<view>
|
<view>
|
||||||
<text class="num">{{ item.orderCount || 0 }}</text
|
<text class="num">{{ item.brokerageOrderCount || 0 }}</text
|
||||||
>单</view
|
>单</view
|
||||||
>
|
>
|
||||||
<view>
|
<view>
|
||||||
|
|
@ -320,6 +320,7 @@
|
||||||
|
|
||||||
function setType(e) {
|
function setType(e) {
|
||||||
state.pagination.list = [];
|
state.pagination.list = [];
|
||||||
|
state.pagination.pageNo = 1;
|
||||||
state.level = e + '';
|
state.level = e + '';
|
||||||
getTeamList();
|
getTeamList();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -115,7 +115,7 @@
|
||||||
>
|
>
|
||||||
<uni-easyinput
|
<uni-easyinput
|
||||||
:inputBorder="false"
|
:inputBorder="false"
|
||||||
:value="state.accountInfo.bankName"
|
:value="bankNameLabel"
|
||||||
placeholder="请选择银行"
|
placeholder="请选择银行"
|
||||||
suffixIcon="right"
|
suffixIcon="right"
|
||||||
disabled
|
disabled
|
||||||
|
|
@ -164,7 +164,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onBeforeMount, reactive } from 'vue';
|
import { onBeforeMount, reactive, computed } from 'vue';
|
||||||
import sheep from '@/sheep';
|
import sheep from '@/sheep';
|
||||||
import accountTypeSelect from './components/account-type-select.vue';
|
import accountTypeSelect from './components/account-type-select.vue';
|
||||||
import { fen2yuan } from '@/sheep/hooks/useGoods';
|
import { fen2yuan } from '@/sheep/hooks/useGoods';
|
||||||
|
|
@ -199,6 +199,14 @@
|
||||||
bankListSelectedIndex: '', // 选中银行 bankList 的 index
|
bankListSelectedIndex: '', // 选中银行 bankList 的 index
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const bankNameLabel = computed(() => {
|
||||||
|
if (!state.accountInfo.bankName || !state.bankList || state.bankList.length === 0) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
const item = state.bankList.find((it) => it.value === state.accountInfo.bankName);
|
||||||
|
return item ? item.label : '';
|
||||||
|
});
|
||||||
|
|
||||||
// 打开提现方式的弹窗
|
// 打开提现方式的弹窗
|
||||||
const onAccountSelect = (e) => {
|
const onAccountSelect = (e) => {
|
||||||
state.accountSelect = e;
|
state.accountSelect = e;
|
||||||
|
|
@ -300,7 +308,8 @@
|
||||||
function bankChange(e) {
|
function bankChange(e) {
|
||||||
const value = e.detail.value;
|
const value = e.detail.value;
|
||||||
state.bankListSelectedIndex = value;
|
state.bankListSelectedIndex = value;
|
||||||
state.accountInfo.bankName = state.bankList[value].label;
|
const item = state.bankList[value];
|
||||||
|
state.accountInfo.bankName = item ? item.value : undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
onBeforeMount(() => {
|
onBeforeMount(() => {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@
|
||||||
:color="color"
|
:color="color"
|
||||||
:tools="tools"
|
:tools="tools"
|
||||||
:opacityBgUi="opacityBgUi"
|
:opacityBgUi="opacityBgUi"
|
||||||
|
:backgroundColor="navbarBackgroundColor"
|
||||||
@search="(e) => emits('search', e)"
|
@search="(e) => emits('search', e)"
|
||||||
:defaultSearch="defaultSearch"
|
:defaultSearch="defaultSearch"
|
||||||
/>
|
/>
|
||||||
|
|
@ -80,6 +81,11 @@
|
||||||
type: String,
|
type: String,
|
||||||
default: 'bg-white',
|
default: 'bg-white',
|
||||||
},
|
},
|
||||||
|
// 顶部导航栏背景颜色(仅在 navbar === 'normal' 时生效)
|
||||||
|
navbarBackgroundColor: {
|
||||||
|
type: String,
|
||||||
|
default: '',
|
||||||
|
},
|
||||||
color: {
|
color: {
|
||||||
type: String,
|
type: String,
|
||||||
default: '',
|
default: '',
|
||||||
|
|
@ -216,13 +222,13 @@
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
// #ifdef MP-ALIPAY
|
// #ifdef MP-ALIPAY
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: "",
|
title: '',
|
||||||
});
|
});
|
||||||
// #endif
|
// #endif
|
||||||
if (!isEmpty(shareInfo.value)) {
|
if (!isEmpty(shareInfo.value)) {
|
||||||
sheep.$platform.share.updateShareInfo(shareInfo.value);
|
sheep.$platform.share.updateShareInfo(shareInfo.value);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|
|
||||||
|
|
@ -30,8 +30,9 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 调用后端接口,获得 JSSDK 初始化所需的签名
|
// 调用后端接口,获得 JSSDK 初始化所需的签名
|
||||||
const url = location.origin;
|
// 微信要求签名 URL 与当前页面去掉 hash 后完全一致;不能直接用 location.origin(会丢子路径与 query)
|
||||||
const { code, data } = await AuthUtil.createWeixinMpJsapiSignature(url);
|
const signUrl = location.href.split('#')[0];
|
||||||
|
const { code, data } = await AuthUtil.createWeixinMpJsapiSignature(signUrl);
|
||||||
if (code === 0) {
|
if (code === 0) {
|
||||||
jweixin.config({
|
jweixin.config({
|
||||||
debug: false,
|
debug: false,
|
||||||
|
|
@ -57,7 +58,11 @@ export default {
|
||||||
configSuccess = true;
|
configSuccess = true;
|
||||||
jweixin.error((err) => {
|
jweixin.error((err) => {
|
||||||
configSuccess = false;
|
configSuccess = false;
|
||||||
console.error('微信 JSSDK 初始化失败', err);
|
console.error('[wx-jssdk] config error', err, {
|
||||||
|
href: location.href,
|
||||||
|
signUrl,
|
||||||
|
data,
|
||||||
|
});
|
||||||
$helper.toast('微信JSSDK:' + err.errMsg);
|
$helper.toast('微信JSSDK:' + err.errMsg);
|
||||||
});
|
});
|
||||||
jweixin.ready(() => {
|
jweixin.ready(() => {
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,7 @@ import user from './user';
|
||||||
import sys from './sys';
|
import sys from './sys';
|
||||||
import { baseUrl, h5Url } from '@/sheep/config';
|
import { baseUrl, h5Url } from '@/sheep/config';
|
||||||
|
|
||||||
const app = defineStore({
|
const app = defineStore('app', {
|
||||||
id: 'app',
|
|
||||||
state: () => ({
|
state: () => ({
|
||||||
paramsForTabbar: {}, // 为全局tabbar跳转传参用。原因是 tabbar 无法传参,只能通过全局状态传递
|
paramsForTabbar: {}, // 为全局tabbar跳转传参用。原因是 tabbar 无法传参,只能通过全局状态传递
|
||||||
info: {
|
info: {
|
||||||
|
|
@ -74,7 +73,7 @@ const app = defineStore({
|
||||||
this.info = {
|
this.info = {
|
||||||
name: '芋道商城',
|
name: '芋道商城',
|
||||||
logo: 'https://static.iocoder.cn/ruoyi-vue-pro-logo.png',
|
logo: 'https://static.iocoder.cn/ruoyi-vue-pro-logo.png',
|
||||||
version: '2026.01',
|
version: '2026.04',
|
||||||
copyright: '全部开源,个人与企业可 100% 免费使用',
|
copyright: '全部开源,个人与企业可 100% 免费使用',
|
||||||
copytime: 'Copyright© 2018-2025',
|
copytime: 'Copyright© 2018-2025',
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
import { defineStore } from 'pinia';
|
import { defineStore } from 'pinia';
|
||||||
import CartApi from '@/sheep/api/trade/cart';
|
import CartApi from '@/sheep/api/trade/cart';
|
||||||
|
|
||||||
const cart = defineStore({
|
const cart = defineStore('cart', {
|
||||||
id: 'cart',
|
|
||||||
state: () => ({
|
state: () => ({
|
||||||
list: [], // 购物车列表(invalidList + validList)
|
list: [], // 购物车列表(invalidList + validList)
|
||||||
selectedIds: [], // 已选列表
|
selectedIds: [], // 已选列表
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
import { defineStore } from 'pinia';
|
import { defineStore } from 'pinia';
|
||||||
|
|
||||||
const modal = defineStore({
|
const modal = defineStore('modal', {
|
||||||
id: 'modal',
|
|
||||||
state: () => ({
|
state: () => ({
|
||||||
auth: '', // 授权弹框 accountLogin|smsLogin|resetPassword|changeMobile|changePassword|changeUsername
|
auth: '', // 授权弹框 accountLogin|smsLogin|resetPassword|changeMobile|changePassword|changeUsername
|
||||||
share: false, // 分享弹框
|
share: false, // 分享弹框
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
import { defineStore } from 'pinia';
|
import { defineStore } from 'pinia';
|
||||||
import app from './app';
|
import app from './app';
|
||||||
|
|
||||||
const sys = defineStore({
|
const sys = defineStore('sys', {
|
||||||
id: 'sys',
|
|
||||||
state: () => ({
|
state: () => ({
|
||||||
theme: '', // 主题,
|
theme: '', // 主题,
|
||||||
mode: 'light', // 明亮模式、暗黑模式(暂未支持)
|
mode: 'light', // 明亮模式、暗黑模式(暂未支持)
|
||||||
|
|
|
||||||
|
|
@ -36,8 +36,7 @@ const defaultNumData = {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const user = defineStore({
|
const user = defineStore('user', {
|
||||||
id: 'user',
|
|
||||||
state: () => ({
|
state: () => ({
|
||||||
userInfo: clone(defaultUserInfo), // 用户信息
|
userInfo: clone(defaultUserInfo), // 用户信息
|
||||||
userWallet: clone(defaultUserWallet), // 用户钱包信息
|
userWallet: clone(defaultUserWallet), // 用户钱包信息
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue