diff --git a/gym-manage-uniapp/.gitignore b/gym-manage-uniapp/.gitignore new file mode 100644 index 0000000..2370852 --- /dev/null +++ b/gym-manage-uniapp/.gitignore @@ -0,0 +1,4 @@ +node_modules/ +unpackage/ +.hbuilderx/ +.DS_Store diff --git a/gym-manage-uniapp/App.vue b/gym-manage-uniapp/App.vue new file mode 100644 index 0000000..589851a --- /dev/null +++ b/gym-manage-uniapp/App.vue @@ -0,0 +1,25 @@ + + + diff --git a/gym-manage-uniapp/exmp/style1.html b/gym-manage-uniapp/exmp/style1.html new file mode 100644 index 0000000..f907f13 --- /dev/null +++ b/gym-manage-uniapp/exmp/style1.html @@ -0,0 +1,624 @@ + + + + + + 健身房预约 · 配色方案展示 + + + + + + + +
+ +
+ 9:41 + 📶 📶 🔋 +
+ + + + + +
+ + +
+
+ 👋 你好,Jason + 🔥 今日 420 kcal +
+
+
+ 68 + 总课时 +
+
+ 12 + 连续打卡 +
+
+ 4.8 + ⭐ 评分 +
+
+
+ + +
+ 全部 + 力量区 + 有氧 + 瑜伽 + 私教 + 团课 +
+ + +
+
+ 12 + 周日 +
+
+ 13 + 周一 +
+
+ 14 + 周二 +
+
+ 15 + 周三 +
+
+ 16 + 周四 +
+
+ + +
+
🏋️
+
+
综合力量训练
+
+ ⏱️ 45 min + 🔥 热门 + 📍 力量区 +
+
+ +
+ + +
+
🧘
+
+
流瑜伽 · 中级
+
+ ⏱️ 60 min + 🧘 瑜伽 + 📍 3号教室 +
+
+ +
+ + +
+
🚴
+
+
动感单车 · 冲刺
+
+ ⏱️ 40 min + ⚡ 有氧 + 📍 单车房 +
+
+ +
+ + +
+
+
J
+
+

Jason Wang

+

🏆 高级会员 · 已练 68 课时

+
+
+ +
+ +
配色方案 · 能量黑 + 荧光绿 · 预约小程序
+
+ + +
+
+ 🏠 + 首页 +
+
+ 📅 + 课程 +
+ +
+ + 预约 +
+
+ 💬 + 消息 +
+
+ 👤 + 我的 +
+
+
+ + \ No newline at end of file diff --git a/gym-manage-uniapp/exmp/style2.html b/gym-manage-uniapp/exmp/style2.html new file mode 100644 index 0000000..14d9474 --- /dev/null +++ b/gym-manage-uniapp/exmp/style2.html @@ -0,0 +1,590 @@ + + + + + + 健身房预约 · 极光紫配色 + + + + + + +
+ +
+ 9:41 + 📶 📶 🔋 +
+ + + + + +
+ +
+
+ 👋 你好,Jason + 🔥 今日 420 kcal +
+
+
+ 68 + 总课时 +
+
+ 12 + 连续打卡 +
+
+ 4.8 + ⭐ 评分 +
+
+
+ + +
+ 全部 + 力量区 + 有氧 + 瑜伽 + 私教 + 团课 +
+ + +
+
+ 12 + 周日 +
+
+ 13 + 周一 +
+
+ 14 + 周二 +
+
+ 15 + 周三 +
+
+ 16 + 周四 +
+
+ + +
+
🏋️
+
+
综合力量训练
+
+ ⏱️ 45 min + 🔥 热门 + 📍 力量区 +
+
+ +
+ + +
+
🧘
+
+
流瑜伽 · 中级
+
+ ⏱️ 60 min + 🧘 瑜伽 + 📍 3号教室 +
+
+ +
+ + +
+
🚴
+
+
动感单车 · 冲刺
+
+ ⏱️ 40 min + ⚡ 有氧 + 📍 单车房 +
+
+ +
+ + +
+
+
J
+
+

Jason Wang

+

🏆 高级会员 · 已练 68 课时

+
+
+ +
+ +
配色方案 · 极光紫 · 科技感预约小程序
+
+ + +
+
+ 🏠 + 首页 +
+
+ 📅 + 课程 +
+
+ + 预约 +
+
+ 💬 + 消息 +
+
+ 👤 + 我的 +
+
+
+ + \ No newline at end of file diff --git a/gym-manage-uniapp/exmp/style3.html b/gym-manage-uniapp/exmp/style3.html new file mode 100644 index 0000000..cf3fb71 --- /dev/null +++ b/gym-manage-uniapp/exmp/style3.html @@ -0,0 +1,591 @@ + + + + + + 健身房预约 · 珊瑚橙配色 + + + + + + +
+ +
+ 9:41 + 📶 📶 🔋 +
+ + + + + +
+ +
+
+ 👋 你好,Jason + 🔥 今日 420 kcal +
+
+
+ 68 + 总课时 +
+
+ 12 + 连续打卡 +
+
+ 4.8 + ⭐ 评分 +
+
+
+ + +
+ 全部 + 力量区 + 有氧 + 瑜伽 + 私教 + 团课 +
+ + +
+
+ 12 + 周日 +
+
+ 13 + 周一 +
+
+ 14 + 周二 +
+
+ 15 + 周三 +
+
+ 16 + 周四 +
+
+ + +
+
🏋️
+
+
综合力量训练
+
+ ⏱️ 45 min + 🔥 热门 + 📍 力量区 +
+
+ +
+ + +
+
🧘
+
+
流瑜伽 · 中级
+
+ ⏱️ 60 min + 🧘 瑜伽 + 📍 3号教室 +
+
+ +
+ + +
+
🚴
+
+
动感单车 · 冲刺
+
+ ⏱️ 40 min + ⚡ 有氧 + 📍 单车房 +
+
+ +
+ + +
+
+
J
+
+

Jason Wang

+

🏆 高级会员 · 已练 68 课时

+
+
+ +
+ +
配色方案 · 珊瑚橙 · 温暖活力预约小程序
+
+ + +
+
+ 🏠 + 首页 +
+
+ 📅 + 课程 +
+
+ + 预约 +
+
+ 💬 + 消息 +
+
+ 👤 + 我的 +
+
+
+ + \ No newline at end of file diff --git a/gym-manage-uniapp/index.html b/gym-manage-uniapp/index.html new file mode 100644 index 0000000..b5d330d --- /dev/null +++ b/gym-manage-uniapp/index.html @@ -0,0 +1,20 @@ + + + + + + + + + + +
+ + + diff --git a/gym-manage-uniapp/main.js b/gym-manage-uniapp/main.js new file mode 100644 index 0000000..c1caf36 --- /dev/null +++ b/gym-manage-uniapp/main.js @@ -0,0 +1,22 @@ +import App from './App' + +// #ifndef VUE3 +import Vue from 'vue' +import './uni.promisify.adaptor' +Vue.config.productionTip = false +App.mpType = 'app' +const app = new Vue({ + ...App +}) +app.$mount() +// #endif + +// #ifdef VUE3 +import { createSSRApp } from 'vue' +export function createApp() { + const app = createSSRApp(App) + return { + app + } +} +// #endif \ No newline at end of file diff --git a/gym-manage-uniapp/manifest.json b/gym-manage-uniapp/manifest.json index 39bd84f..66c6a64 100644 --- a/gym-manage-uniapp/manifest.json +++ b/gym-manage-uniapp/manifest.json @@ -1,64 +1,72 @@ { - "name": "gym-manage-uniapp", - "appid": "", - "description": "Gym Management System Mobile App", - "versionName": "1.0.0", - "versionCode": "100", - "transformPx": false, - "app-plus": { - "usingComponents": true, - "nvueStyleCompiler": "uni-app", - "compilerVersion": 3, - "splashscreen": { - "alwaysShowBeforeRender": true, - "waiting": true, - "autoclose": true, - "delay": 0 + "name" : "gym-manage-uniapp", + "appid" : "", + "description" : "", + "versionName" : "1.0.0", + "versionCode" : "100", + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : true, + "waiting" : true, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : {}, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + /* ios打包配置 */ + "ios" : {}, + /* SDK配置 */ + "sdkConfigs" : {} + } }, - "modules": {}, - "distribute": { - "android": { - "permissions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - "ios": {}, - "sdkConfigs": {} - } - }, - "quickapp": {}, - "mp-weixin": { - "appid": "", - "setting": { - "urlCheck": false + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true }, - "usingComponents": true - }, - "mp-alipay": { - "usingComponents": true - }, - "mp-baidu": { - "usingComponents": true - }, - "mp-toutiao": { - "usingComponents": true - }, - "uniStatistics": { - "enable": false - }, - "vueVersion": "3" + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "2" } diff --git a/gym-manage-uniapp/package-lock.json b/gym-manage-uniapp/package-lock.json new file mode 100644 index 0000000..51562fb --- /dev/null +++ b/gym-manage-uniapp/package-lock.json @@ -0,0 +1,22 @@ +{ + "name": "gym-manage-uniapp", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "gym-manage-uniapp", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "@dcloudio/uni-ui": "^1.5.12" + } + }, + "node_modules/@dcloudio/uni-ui": { + "version": "1.5.12", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-ui/-/uni-ui-1.5.12.tgz", + "integrity": "sha512-mGDl2OZSz7D8xcUAzJegWDHOqB4MEFBSW9Esb/oJiu2/3Gk9+P/Z4bA4JZ9jv9VWBYbMrYwaTfK1Z728kABdYg==", + "license": "Apache-2.0" + } + } +} diff --git a/gym-manage-uniapp/package.json b/gym-manage-uniapp/package.json index c3506cd..c6761e7 100644 --- a/gym-manage-uniapp/package.json +++ b/gym-manage-uniapp/package.json @@ -1,19 +1,16 @@ { "name": "gym-manage-uniapp", "version": "1.0.0", - "description": "Gym Management System Mobile App", + "description": "", "main": "main.js", "scripts": { - "dev:mp-weixin": "uni -p mp-weixin", - "build:mp-weixin": "uni build -p mp-weixin", - "dev:h5": "uni", - "build:h5": "uni build" + "test": "echo \"Error: no test specified\" && exit 1" }, - "keywords": [ - "uniapp", - "gym", - "management" - ], - "author": "Novalon", - "license": "MIT" + "keywords": [], + "author": "", + "license": "ISC", + "type": "commonjs", + "dependencies": { + "@dcloudio/uni-ui": "^1.5.12" + } } diff --git a/gym-manage-uniapp/pages.json b/gym-manage-uniapp/pages.json index bd13bd5..9beaa3e 100644 --- a/gym-manage-uniapp/pages.json +++ b/gym-manage-uniapp/pages.json @@ -1,28 +1,66 @@ { - "pages": [ - { - "path": "pages/index/index", - "style": { - "navigationBarTitleText": "首页" - } - } - ], - "globalStyle": { - "navigationBarTextStyle": "black", - "navigationBarTitleText": "健身房管理系统", - "navigationBarBackgroundColor": "#F8F8F8", - "backgroundColor": "#F8F8F8" - }, - "tabBar": { - "color": "#7A7E83", - "selectedColor": "#007AFF", - "borderStyle": "black", - "backgroundColor": "#F8F8F8", - "list": [ - { - "pagePath": "pages/index/index", - "text": "首页" - } - ] - } + "pages": [ + { + "path": "pages/login/login", + "style": { + "navigationBarTitleText": "登录", + "navigationStyle": "custom" + } + }, + { + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "首页", + "navigationStyle": "custom" + } + }, + { + "path": "pages/search/search", + "style": { + "navigationBarTitleText": "团课搜索", + "navigationStyle": "custom" + } + }, + { + "path": "pages/course-detail/course-detail", + "style": { + "navigationBarTitleText": "课程详情", + "navigationStyle": "custom" + } + }, + { + "path": "pages/profile/profile", + "style": { + "navigationBarTitleText": "个人中心", + "navigationStyle": "custom" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "white", + "navigationBarTitleText": "Novalon健身房", + "navigationBarBackgroundColor": "#1A1A1A", + "backgroundColor": "#F5F7FA" + }, + "tabBar": { + "color": "#7A7E84", + "selectedColor": "#00E676", + "backgroundColor": "#1A1A1A", + "borderStyle": "black", + "list": [ + { + "pagePath": "pages/index/index", + "text": "首页" + }, + { + "pagePath": "pages/search/search", + "text": "课程" + }, + { + "pagePath": "pages/profile/profile", + "text": "我的" + } + ] + }, + "uniIdRouter": {} } diff --git a/gym-manage-uniapp/pages/course-detail/course-detail.vue b/gym-manage-uniapp/pages/course-detail/course-detail.vue new file mode 100644 index 0000000..84b7824 --- /dev/null +++ b/gym-manage-uniapp/pages/course-detail/course-detail.vue @@ -0,0 +1,202 @@ + + + + + diff --git a/gym-manage-uniapp/pages/index/index.vue b/gym-manage-uniapp/pages/index/index.vue new file mode 100644 index 0000000..490e6b2 --- /dev/null +++ b/gym-manage-uniapp/pages/index/index.vue @@ -0,0 +1,171 @@ + + + + + diff --git a/gym-manage-uniapp/pages/login/login.vue b/gym-manage-uniapp/pages/login/login.vue new file mode 100644 index 0000000..ced1e1a --- /dev/null +++ b/gym-manage-uniapp/pages/login/login.vue @@ -0,0 +1,101 @@ + + + + + diff --git a/gym-manage-uniapp/pages/profile/profile.vue b/gym-manage-uniapp/pages/profile/profile.vue new file mode 100644 index 0000000..5566267 --- /dev/null +++ b/gym-manage-uniapp/pages/profile/profile.vue @@ -0,0 +1,211 @@ + + + + + diff --git a/gym-manage-uniapp/pages/search/search.vue b/gym-manage-uniapp/pages/search/search.vue new file mode 100644 index 0000000..63e53c4 --- /dev/null +++ b/gym-manage-uniapp/pages/search/search.vue @@ -0,0 +1,241 @@ + + + + + diff --git a/gym-manage-uniapp/src/api/index.js b/gym-manage-uniapp/src/api/index.js deleted file mode 100644 index f29ddad..0000000 --- a/gym-manage-uniapp/src/api/index.js +++ /dev/null @@ -1,29 +0,0 @@ -const BASE_URL = 'http://localhost:8080/api' - -export const request = (options) => { - return new Promise((resolve, reject) => { - uni.request({ - url: BASE_URL + options.url, - method: options.method || 'GET', - data: options.data || {}, - header: { - 'Content-Type': 'application/json', - ...options.header - }, - success: (res) => { - if (res.statusCode === 200) { - resolve(res.data) - } else { - reject(res) - } - }, - fail: (err) => { - reject(err) - } - }) - }) -} - -export default { - request -} diff --git a/gym-manage-uniapp/src/pages/index/index.vue b/gym-manage-uniapp/src/pages/index/index.vue deleted file mode 100644 index 5b7705f..0000000 --- a/gym-manage-uniapp/src/pages/index/index.vue +++ /dev/null @@ -1,40 +0,0 @@ - - - - - diff --git a/gym-manage-uniapp/src/store/index.ts b/gym-manage-uniapp/src/store/index.ts deleted file mode 100644 index 8a05980..0000000 --- a/gym-manage-uniapp/src/store/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { createPinia } from 'pinia' - -const pinia = createPinia() - -export default pinia diff --git a/gym-manage-uniapp/src/store/user.ts b/gym-manage-uniapp/src/store/user.ts deleted file mode 100644 index 6b67a0b..0000000 --- a/gym-manage-uniapp/src/store/user.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { defineStore } from 'pinia' - -export const useUserStore = defineStore('user', { - state: () => ({ - token: '', - userInfo: null - }), - - getters: { - isLoggedIn: (state) => !!state.token - }, - - actions: { - setToken(token) { - this.token = token - }, - - setUserInfo(userInfo) { - this.userInfo = userInfo - }, - - logout() { - this.token = '' - this.userInfo = null - } - } -}) diff --git a/gym-manage-uniapp/static/logo.png b/gym-manage-uniapp/static/logo.png new file mode 100644 index 0000000..b5771e2 Binary files /dev/null and b/gym-manage-uniapp/static/logo.png differ diff --git a/gym-manage-uniapp/style/base/style1.css b/gym-manage-uniapp/style/base/style1.css new file mode 100644 index 0000000..d0ec271 --- /dev/null +++ b/gym-manage-uniapp/style/base/style1.css @@ -0,0 +1,96 @@ +/** + * ============================================================ + * 健身房预约小程序 · 全局配色方案 (CSS Variables) + * ============================================================ + * + * 主题风格:能量黑 + 荧光绿 + 科技灰 + * 适用场景:健身/运动/预约类小程序或移动端H5 + * 设计理念:硬核力量感 + 现代科技感 + 清晰易用 + * + * 使用方式:在项目入口文件中引入本文件,或在 :root 中复制变量 + * 示例:color: var(--primary); background: var(--bg-primary); + * ============================================================ + */ + +:root { + /* ========================================================== + 1. 品牌主色 (Primary) —— 荧光绿 / 能量绿 + 用于核心操作按钮、选中状态、品牌高亮 + ========================================================== */ + + /** 主色:明亮荧光绿,代表活力与健康指标 */ + --primary: #00E676; + + /** 主色按压态:用于按钮点击、加载进度条等反馈 */ + --primary-dark: #00C853; + + /** 主色浅色背景:用于标签、选中态背景、轻量高亮 (半透明) */ + --primary-light: rgba(0, 230, 118, 0.15); + + /** 主色渐变终点:用于数据卡片、图表渐变的辅助色 (蓝绿) */ + --primary-gradient-end: #00BFA5; + + /* ========================================================== + 2. 中性色 (Neutral) —— 深色/灰色/白色 + 用于背景、文字、分割线等基础界面 + ========================================================== */ + + /** 深空黑:顶部导航、底部TabBar、卡片深色背景 */ + --secondary: #1A1A1A; + + /** 全局背景色:浅灰,使主色更突出,视觉干净 */ + --bg-primary: #F5F7FA; + + /** 纯白色:卡片、浮层、按钮文字 */ + --white: #FFFFFF; + + /** 深灰色:用于重要标题、用户名等主要文字 */ + --text-primary: #1E1E1E; + + /** 中灰色:用于次要描述、场馆地址、日期等辅助文字 */ + --text-secondary: #7A7E84; + + /** 浅灰色:用于禁用状态文字、占位符 */ + --text-disabled: #BDBDBD; + + /** 极浅灰:分割线、边框、轻量背景区分 */ + --border-light: #EEEEEE; + + /** 卡片阴影:轻度投影,提升层次感 */ + --shadow-card: 0 4px 12px rgba(0, 0, 0, 0.06); + + /* ========================================================== + 3. 功能色 (Functional) —— 反馈/状态/警告 + 用于提示、错误、成功等交互反馈 + ========================================================== */ + + /** 高亮警告红:未读消息红点、取消预约、倒计时、危险操作 */ + --highlight: #FF5252; + + /** 成功状态:通常复用主色,但独立定义便于统一调整 */ + --success: var(--primary); + + /** 禁用/不可用状态:背景色和文字色 */ + --disabled-bg: #E0E0E0; + --disabled-text: #BDBDBD; + + /* ========================================================== + 4. 圆角 & 尺寸 (Radius & Size) + 便于统一界面风格 + ========================================================== */ + + /** 大圆角:卡片、弹窗、主要容器 */ + --radius-large: 20px; + + /** 中圆角:按钮、输入框、次级卡片 */ + --radius-medium: 12px; + + /** 小圆角:标签、头像、小元素 */ + --radius-small: 8px; + + /** 全圆角:胶囊按钮、标签 */ + --radius-full: 40px; + + /** 底部TabBar高度 */ + --tab-height: 72px; +} diff --git a/gym-manage-uniapp/style/base/style2.css b/gym-manage-uniapp/style/base/style2.css new file mode 100644 index 0000000..8a23849 --- /dev/null +++ b/gym-manage-uniapp/style/base/style2.css @@ -0,0 +1,129 @@ +/** + * ============================================================ + * 健身房预约小程序 · 珊瑚橙配色方案 (CSS Variables) + * ============================================================ + * + * 主题风格:珊瑚橙 (Coral Orange) + * 主色:温暖珊瑚橙 + 柔和米白 + * 性格:亲切、阳光、活力、温暖 + * 适用场景:轻运动、瑜伽、女性友好、社区型健身房 + * + * 使用方式:在项目入口文件中引入本文件,或在 :root 中复制变量 + * 示例:color: var(--primary); background: var(--bg-primary); + * ============================================================ + */ + +:root { + /* ========================================================== + 1. 品牌主色 (Primary) —— 珊瑚橙 / 暖橙渐变 + 用于核心操作按钮、品牌高亮、渐变背景 + ========================================================== */ + + /** 主色:温暖珊瑚橙,代表活力与亲切感 */ + --primary: #FF6B4A; + + /** 主色按压态:深橙,用于按钮点击反馈 */ + --primary-dark: #E55A3A; + + /** 主色浅色背景:半透明橙,用于标签、选中态背景 */ + --primary-light: rgba(255, 107, 74, 0.15); + + /** 主色渐变:珊瑚橙到浅橙红,用于导航栏、欢迎卡片、按钮 */ + --primary-gradient: linear-gradient(135deg, #FF6B4A, #FF8A65); + + /** 渐变辅助色:用于数据卡片或图表的渐变更丰富 */ + --primary-gradient-start: #FF6B4A; + --primary-gradient-end: #FF8A65; + + /* ========================================================== + 2. 中性色 (Neutral) —— 暖色系/米白/暖灰 + 用于背景、文字、分割线等基础界面 + ========================================================== */ + + /** 暖棕黑:底部TabBar、导航栏背景、重要文字 */ + --secondary: #2D1F1A; + + /** 全局背景色:暖白米色,营造温馨舒适感 */ + --bg-primary: #FDF8F5; + + /** 纯白色:卡片、浮层、按钮文字 */ + --white: #FFFFFF; + + /** 暖棕黑:用于重要标题、用户名等主要文字 */ + --text-primary: #2D1F1A; + + /** 暖灰色:用于次要描述、场馆地址、日期等辅助文字 */ + --text-secondary: #8A7A72; + + /** 浅暖灰:用于禁用状态文字、占位符 */ + --text-disabled: #C5B5AD; + + /** 暖色分割线:用于列表、卡片分割 */ + --border-light: #F0E8E3; + + /** 卡片阴影:带有橙色调的轻度投影 */ + --shadow-card: 0 4px 16px rgba(255, 107, 74, 0.12); + + /* ========================================================== + 3. 功能色 (Functional) —— 反馈/状态/警告 + 用于提示、错误、成功等交互反馈 + ========================================================== */ + + /** 高亮警告红:未读消息红点、取消预约、危险操作 */ + --highlight: #FF4757; + + /** 成功状态:翠绿色,用于完成、通过等正向反馈 */ + --success: #2ED573; + + /** 警告状态:琥珀色,用于提醒、注意 */ + --warning: #FFA502; + + /** 信息状态:淡蓝色,用于一般提示 */ + --info: #4A90D9; + + /** 禁用/不可用状态:背景色和文字色 */ + --disabled-bg: #F0E8E3; + --disabled-text: #C5B5AD; + + /* ========================================================== + 4. 圆角 & 尺寸 (Radius & Size) + 便于统一界面风格 + ========================================================== */ + + /** 大圆角:卡片、弹窗、主要容器 */ + --radius-large: 20px; + + /** 中圆角:按钮、输入框、次级卡片 */ + --radius-medium: 12px; + + /** 小圆角:标签、头像、小元素 */ + --radius-small: 8px; + + /** 全圆角:胶囊按钮、标签、头像 */ + --radius-full: 40px; + + /** 底部TabBar高度 */ + --tab-height: 72px; + + /** 导航栏高度 */ + --nav-height: 56px; + + /* ========================================================== + 5. 额外辅助变量 (Extra Utilities) + ========================================================== */ + + /** 主色文字颜色 (通常为白色) */ + --primary-text-color: #FFFFFF; + + /** 渐变背景的文本颜色 (通常为白色) */ + --gradient-text-color: #FFFFFF; + + /** 卡片内边距 (统一) */ + --card-padding: 16px; + + /** 页面左右安全间距 */ + --page-padding: 16px; + + /** 字体家族 */ + --font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; +} diff --git a/gym-manage-uniapp/style/base/style3.css b/gym-manage-uniapp/style/base/style3.css new file mode 100644 index 0000000..c22b80a --- /dev/null +++ b/gym-manage-uniapp/style/base/style3.css @@ -0,0 +1,126 @@ +/** + * ============================================================ + * 健身房预约小程序 · 极光紫配色方案 (CSS Variables) + * ============================================================ + * + * 主题风格:极光紫 (Aurora Purple) + * 主色:深邃紫罗兰 + 霓虹蓝紫渐变 + * 性格:科技感、神秘、高级、时尚 + * 适用场景:高端健身、时尚运动、科技感预约类小程序 + * + * 使用方式:在项目入口文件中引入本文件,或在 :root 中复制变量 + * 示例:color: var(--primary); background: var(--bg-primary); + * ============================================================ + */ + +:root { + /* ========================================================== + 1. 品牌主色 (Primary) —— 极光紫 / 蓝紫渐变 + 用于核心操作按钮、品牌高亮、渐变背景 + ========================================================== */ + + /** 主色:深邃紫罗兰,代表神秘与高级感 */ + --primary: #7C3AED; + + /** 主色按压态:深紫,用于按钮点击反馈 */ + --primary-dark: #5B21B6; + + /** 主色浅色背景:半透明紫,用于标签、选中态背景 */ + --primary-light: rgba(124, 58, 237, 0.15); + + /** 主色渐变:紫罗兰到靛蓝,用于导航栏、欢迎卡片、按钮 */ + --primary-gradient: linear-gradient(135deg, #7C3AED, #4F46E5); + + /** 渐变辅助色:用于数据卡片或图表的渐变更丰富 */ + --primary-gradient-start: #7C3AED; + --primary-gradient-end: #4F46E5; + + /* ========================================================== + 2. 中性色 (Neutral) —— 深色/灰色/白色 + 用于背景、文字、分割线等基础界面 + ========================================================== */ + + /** 深紫黑:底部TabBar、导航栏背景、重要文字 */ + --secondary: #1E1028; + + /** 全局背景色:极浅灰紫,营造柔和科技感 */ + --bg-primary: #F8F7FC; + + /** 纯白色:卡片、浮层、按钮文字 */ + --white: #FFFFFF; + + /** 深紫黑:用于重要标题、用户名等主要文字 */ + --text-primary: #1E1028; + + /** 紫灰色:用于次要描述、场馆地址、日期等辅助文字 */ + --text-secondary: #6B5E7E; + + /** 浅灰紫:用于禁用状态文字、占位符 */ + --text-disabled: #B8AED0; + + /** 浅紫分割线:用于列表、卡片分割 */ + --border-light: #EDE9F5; + + /** 卡片阴影:带有紫色调的轻度投影 */ + --shadow-card: 0 4px 16px rgba(94, 48, 176, 0.10); + + /* ========================================================== + 3. 功能色 (Functional) —— 反馈/状态/警告 + 用于提示、错误、成功等交互反馈 + ========================================================== */ + + /** 高亮警告红:未读消息红点、取消预约、危险操作 */ + --highlight: #EF4444; + + /** 成功状态:翠绿色,用于完成、通过等正向反馈 */ + --success: #10B981; + + /** 警告状态:琥珀色,用于提醒、注意 */ + --warning: #F59E0B; + + /** 信息状态:淡蓝色,用于一般提示 */ + --info: #3B82F6; + + /** 禁用/不可用状态:背景色和文字色 */ + --disabled-bg: #E8E3F0; + --disabled-text: #B8AED0; + + /* ========================================================== + 4. 圆角 & 尺寸 (Radius & Size) + 便于统一界面风格 + ========================================================== */ + + /** 大圆角:卡片、弹窗、主要容器 */ + --radius-large: 20px; + + /** 中圆角:按钮、输入框、次级卡片 */ + --radius-medium: 12px; + + /** 小圆角:标签、头像、小元素 */ + --radius-small: 8px; + + /** 全圆角:胶囊按钮、标签、头像 */ + --radius-full: 40px; + + /** 底部TabBar高度 */ + --tab-height: 72px; + + /** 导航栏高度 */ + --nav-height: 56px; + + /* ========================================================== + 5. 额外辅助变量 (Extra Utilities) + ========================================================== */ + + /** 主色文字颜色 (通常为白色) */ + --primary-text-color: #FFFFFF; + + /** 渐变背景的文本颜色 (通常为白色) */ + --gradient-text-color: #FFFFFF; + + /** 卡片内边距 (统一) */ + --card-padding: 16px; + + /** 页面左右安全间距 */ + --page-padding: 16px; +} diff --git a/gym-manage-uniapp/uni.promisify.adaptor.js b/gym-manage-uniapp/uni.promisify.adaptor.js new file mode 100644 index 0000000..5fec4f3 --- /dev/null +++ b/gym-manage-uniapp/uni.promisify.adaptor.js @@ -0,0 +1,13 @@ +uni.addInterceptor({ + returnValue (res) { + if (!(!!res && (typeof res === "object" || typeof res === "function") && typeof res.then === "function")) { + return res; + } + return new Promise((resolve, reject) => { + res.then((res) => { + if (!res) return resolve(res) + return res[0] ? reject(res[0]) : resolve(res[1]) + }); + }); + }, +}); \ No newline at end of file diff --git a/gym-manage-uniapp/uni.scss b/gym-manage-uniapp/uni.scss new file mode 100644 index 0000000..b9249e9 --- /dev/null +++ b/gym-manage-uniapp/uni.scss @@ -0,0 +1,76 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ + +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ + +/* 颜色变量 */ + +/* 行为相关颜色 */ +$uni-color-primary: #007aff; +$uni-color-success: #4cd964; +$uni-color-warning: #f0ad4e; +$uni-color-error: #dd524d; + +/* 文字基本颜色 */ +$uni-text-color:#333;//基本色 +$uni-text-color-inverse:#fff;//反色 +$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息 +$uni-text-color-placeholder: #808080; +$uni-text-color-disable:#c0c0c0; + +/* 背景颜色 */ +$uni-bg-color:#ffffff; +$uni-bg-color-grey:#f8f8f8; +$uni-bg-color-hover:#f1f1f1;//点击状态颜色 +$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色 + +/* 边框颜色 */ +$uni-border-color:#c8c7cc; + +/* 尺寸变量 */ + +/* 文字尺寸 */ +$uni-font-size-sm:12px; +$uni-font-size-base:14px; +$uni-font-size-lg:16px; + +/* 图片尺寸 */ +$uni-img-size-sm:20px; +$uni-img-size-base:26px; +$uni-img-size-lg:40px; + +/* Border Radius */ +$uni-border-radius-sm: 2px; +$uni-border-radius-base: 3px; +$uni-border-radius-lg: 6px; +$uni-border-radius-circle: 50%; + +/* 水平间距 */ +$uni-spacing-row-sm: 5px; +$uni-spacing-row-base: 10px; +$uni-spacing-row-lg: 15px; + +/* 垂直间距 */ +$uni-spacing-col-sm: 4px; +$uni-spacing-col-base: 8px; +$uni-spacing-col-lg: 12px; + +/* 透明度 */ +$uni-opacity-disabled: 0.3; // 组件禁用态的透明度 + +/* 文章场景相关 */ +$uni-color-title: #2C405A; // 文章标题颜色 +$uni-font-size-title:20px; +$uni-color-subtitle: #555555; // 二级标题颜色 +$uni-font-size-subtitle:26px; +$uni-color-paragraph: #3F536E; // 文章段落颜色 +$uni-font-size-paragraph:15px;