Compare commits

..

No commits in common. "master" and "v2026.01" have entirely different histories.

12 changed files with 24 additions and 40 deletions

View File

@ -2,7 +2,7 @@
"name": "芋道商城", "name": "芋道商城",
"appid": "__UNI__460BC4C", "appid": "__UNI__460BC4C",
"description": "基于 uni-app + Vue3 技术驱动的在线商城系统,内含诸多功能与丰富的活动,期待您的使用和反馈。", "description": "基于 uni-app + Vue3 技术驱动的在线商城系统,内含诸多功能与丰富的活动,期待您的使用和反馈。",
"versionName": "2026.04", "versionName": "2026.01",
"versionCode": "183", "versionCode": "183",
"transformPx": false, "transformPx": false,
"app-plus": { "app-plus": {

View File

@ -2,7 +2,7 @@
"id": "shopro", "id": "shopro",
"name": "shopro", "name": "shopro",
"displayName": "芋道商城", "displayName": "芋道商城",
"version": "2026.04", "version": "2026.01",
"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}\""

View File

@ -105,7 +105,7 @@
return; return;
} }
state.pagination.pageNo++; state.pagination.pageNo++;
getRankList(); getList();
} }
// //

View File

@ -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.brokerageOrderCount || 0 }}</text <text class="num">{{ item.orderCount || 0 }}</text
></view ></view
> >
<view> <view>
@ -320,7 +320,6 @@
function setType(e) { function setType(e) {
state.pagination.list = []; state.pagination.list = [];
state.pagination.pageNo = 1;
state.level = e + ''; state.level = e + '';
getTeamList(); getTeamList();
} }

View File

@ -115,7 +115,7 @@
> >
<uni-easyinput <uni-easyinput
:inputBorder="false" :inputBorder="false"
:value="bankNameLabel" :value="state.accountInfo.bankName"
placeholder="请选择银行" placeholder="请选择银行"
suffixIcon="right" suffixIcon="right"
disabled disabled
@ -164,7 +164,7 @@
</template> </template>
<script setup> <script setup>
import { onBeforeMount, reactive, computed } from 'vue'; import { onBeforeMount, reactive } 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,14 +199,6 @@
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;
@ -308,8 +300,7 @@
function bankChange(e) { function bankChange(e) {
const value = e.detail.value; const value = e.detail.value;
state.bankListSelectedIndex = value; state.bankListSelectedIndex = value;
const item = state.bankList[value]; state.accountInfo.bankName = state.bankList[value].label;
state.accountInfo.bankName = item ? item.value : undefined;
} }
onBeforeMount(() => { onBeforeMount(() => {

View File

@ -12,7 +12,6 @@
: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"
/> />
@ -81,11 +80,6 @@
type: String, type: String,
default: 'bg-white', default: 'bg-white',
}, },
// navbar === 'normal'
navbarBackgroundColor: {
type: String,
default: '',
},
color: { color: {
type: String, type: String,
default: '', default: '',
@ -222,13 +216,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>

View File

@ -30,9 +30,8 @@ export default {
} }
// 调用后端接口,获得 JSSDK 初始化所需的签名 // 调用后端接口,获得 JSSDK 初始化所需的签名
// 微信要求签名 URL 与当前页面去掉 hash 后完全一致;不能直接用 location.origin会丢子路径与 query const url = location.origin;
const signUrl = location.href.split('#')[0]; const { code, data } = await AuthUtil.createWeixinMpJsapiSignature(url);
const { code, data } = await AuthUtil.createWeixinMpJsapiSignature(signUrl);
if (code === 0) { if (code === 0) {
jweixin.config({ jweixin.config({
debug: false, debug: false,
@ -58,11 +57,7 @@ export default {
configSuccess = true; configSuccess = true;
jweixin.error((err) => { jweixin.error((err) => {
configSuccess = false; configSuccess = false;
console.error('[wx-jssdk] config error', err, { console.error('微信 JSSDK 初始化失败', err);
href: location.href,
signUrl,
data,
});
$helper.toast('微信JSSDK:' + err.errMsg); $helper.toast('微信JSSDK:' + err.errMsg);
}); });
jweixin.ready(() => { jweixin.ready(() => {

View File

@ -8,7 +8,8 @@ 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('app', { const app = defineStore({
id: 'app',
state: () => ({ state: () => ({
paramsForTabbar: {}, // 为全局tabbar跳转传参用。原因是 tabbar 无法传参,只能通过全局状态传递 paramsForTabbar: {}, // 为全局tabbar跳转传参用。原因是 tabbar 无法传参,只能通过全局状态传递
info: { info: {
@ -73,7 +74,7 @@ const app = defineStore('app', {
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.04', version: '2026.01',
copyright: '全部开源,个人与企业可 100% 免费使用', copyright: '全部开源,个人与企业可 100% 免费使用',
copytime: 'Copyright© 2018-2025', copytime: 'Copyright© 2018-2025',

View File

@ -1,7 +1,8 @@
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('cart', { const cart = defineStore({
id: 'cart',
state: () => ({ state: () => ({
list: [], // 购物车列表invalidList + validList list: [], // 购物车列表invalidList + validList
selectedIds: [], // 已选列表 selectedIds: [], // 已选列表

View File

@ -1,6 +1,7 @@
import { defineStore } from 'pinia'; import { defineStore } from 'pinia';
const modal = defineStore('modal', { const modal = defineStore({
id: 'modal',
state: () => ({ state: () => ({
auth: '', // 授权弹框 accountLogin|smsLogin|resetPassword|changeMobile|changePassword|changeUsername auth: '', // 授权弹框 accountLogin|smsLogin|resetPassword|changeMobile|changePassword|changeUsername
share: false, // 分享弹框 share: false, // 分享弹框

View File

@ -1,7 +1,8 @@
import { defineStore } from 'pinia'; import { defineStore } from 'pinia';
import app from './app'; import app from './app';
const sys = defineStore('sys', { const sys = defineStore({
id: 'sys',
state: () => ({ state: () => ({
theme: '', // 主题, theme: '', // 主题,
mode: 'light', // 明亮模式、暗黑模式(暂未支持) mode: 'light', // 明亮模式、暗黑模式(暂未支持)

View File

@ -36,7 +36,8 @@ const defaultNumData = {
}, },
}; };
const user = defineStore('user', { const user = defineStore({
id: 'user',
state: () => ({ state: () => ({
userInfo: clone(defaultUserInfo), // 用户信息 userInfo: clone(defaultUserInfo), // 用户信息
userWallet: clone(defaultUserWallet), // 用户钱包信息 userWallet: clone(defaultUserWallet), // 用户钱包信息