From edffda2a8434e65e654d6db32e3fec748ed9f786 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E9=B9=8F?= Date: Tue, 7 Jul 2026 15:06:33 +0800 Subject: [PATCH] chore: scaffold linhelp applications --- .gitignore | 21 ++++ README.md | 23 ++++ admin-web/package.json | 27 +++++ admin-web/vite.config.ts | 9 ++ backend/pom.xml | 112 ++++++++++++++++++ .../java/com/linhelp/LinHelpApplication.java | 12 ++ .../src/main/resources/application-dev.yml | 26 ++++ backend/src/main/resources/application.yml | 11 ++ .../com/linhelp/LinHelpApplicationTests.java | 15 +++ deploy/docker-compose.dev.yml | 30 +++++ miniapp/miniprogram/app.js | 6 + miniapp/miniprogram/app.json | 46 +++++++ miniapp/miniprogram/app.wxss | 9 ++ miniapp/miniprogram/pages/address/index.js | 1 + miniapp/miniprogram/pages/address/index.json | 3 + miniapp/miniprogram/pages/address/index.wxml | 1 + miniapp/miniprogram/pages/address/index.wxss | 3 + miniapp/miniprogram/pages/express/create.js | 1 + miniapp/miniprogram/pages/express/create.json | 3 + miniapp/miniprogram/pages/express/create.wxml | 1 + miniapp/miniprogram/pages/express/create.wxss | 3 + miniapp/miniprogram/pages/group-buy/detail.js | 1 + .../miniprogram/pages/group-buy/detail.json | 3 + .../miniprogram/pages/group-buy/detail.wxml | 1 + .../miniprogram/pages/group-buy/detail.wxss | 3 + miniapp/miniprogram/pages/group-buy/index.js | 1 + .../miniprogram/pages/group-buy/index.json | 3 + .../miniprogram/pages/group-buy/index.wxml | 1 + .../miniprogram/pages/group-buy/index.wxss | 3 + miniapp/miniprogram/pages/home/index.js | 1 + miniapp/miniprogram/pages/home/index.json | 3 + miniapp/miniprogram/pages/home/index.wxml | 1 + miniapp/miniprogram/pages/home/index.wxss | 3 + miniapp/miniprogram/pages/notices/index.js | 1 + miniapp/miniprogram/pages/notices/index.json | 3 + miniapp/miniprogram/pages/notices/index.wxml | 1 + miniapp/miniprogram/pages/notices/index.wxss | 3 + miniapp/miniprogram/pages/orders/detail.js | 1 + miniapp/miniprogram/pages/orders/detail.json | 3 + miniapp/miniprogram/pages/orders/detail.wxml | 1 + miniapp/miniprogram/pages/orders/detail.wxss | 3 + miniapp/miniprogram/pages/orders/index.js | 1 + miniapp/miniprogram/pages/orders/index.json | 3 + miniapp/miniprogram/pages/orders/index.wxml | 1 + miniapp/miniprogram/pages/orders/index.wxss | 3 + miniapp/miniprogram/pages/products/detail.js | 1 + .../miniprogram/pages/products/detail.json | 3 + .../miniprogram/pages/products/detail.wxml | 1 + .../miniprogram/pages/products/detail.wxss | 3 + miniapp/miniprogram/pages/products/index.js | 1 + miniapp/miniprogram/pages/products/index.json | 3 + miniapp/miniprogram/pages/products/index.wxml | 1 + miniapp/miniprogram/pages/products/index.wxss | 3 + miniapp/miniprogram/pages/profile/index.js | 1 + miniapp/miniprogram/pages/profile/index.json | 3 + miniapp/miniprogram/pages/profile/index.wxml | 1 + miniapp/miniprogram/pages/profile/index.wxss | 3 + .../miniprogram/pages/second-hand/create.js | 1 + .../miniprogram/pages/second-hand/create.json | 3 + .../miniprogram/pages/second-hand/create.wxml | 1 + .../miniprogram/pages/second-hand/create.wxss | 3 + .../miniprogram/pages/second-hand/index.js | 1 + .../miniprogram/pages/second-hand/index.json | 3 + .../miniprogram/pages/second-hand/index.wxml | 1 + .../miniprogram/pages/second-hand/index.wxss | 3 + miniapp/miniprogram/utils/request.js | 26 ++++ miniapp/package.json | 13 ++ miniapp/project.config.json | 13 ++ rider-h5/package.json | 25 ++++ rider-h5/vite.config.ts | 9 ++ 70 files changed, 537 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 admin-web/package.json create mode 100644 admin-web/vite.config.ts create mode 100644 backend/pom.xml create mode 100644 backend/src/main/java/com/linhelp/LinHelpApplication.java create mode 100644 backend/src/main/resources/application-dev.yml create mode 100644 backend/src/main/resources/application.yml create mode 100644 backend/src/test/java/com/linhelp/LinHelpApplicationTests.java create mode 100644 deploy/docker-compose.dev.yml create mode 100644 miniapp/miniprogram/app.js create mode 100644 miniapp/miniprogram/app.json create mode 100644 miniapp/miniprogram/app.wxss create mode 100644 miniapp/miniprogram/pages/address/index.js create mode 100644 miniapp/miniprogram/pages/address/index.json create mode 100644 miniapp/miniprogram/pages/address/index.wxml create mode 100644 miniapp/miniprogram/pages/address/index.wxss create mode 100644 miniapp/miniprogram/pages/express/create.js create mode 100644 miniapp/miniprogram/pages/express/create.json create mode 100644 miniapp/miniprogram/pages/express/create.wxml create mode 100644 miniapp/miniprogram/pages/express/create.wxss create mode 100644 miniapp/miniprogram/pages/group-buy/detail.js create mode 100644 miniapp/miniprogram/pages/group-buy/detail.json create mode 100644 miniapp/miniprogram/pages/group-buy/detail.wxml create mode 100644 miniapp/miniprogram/pages/group-buy/detail.wxss create mode 100644 miniapp/miniprogram/pages/group-buy/index.js create mode 100644 miniapp/miniprogram/pages/group-buy/index.json create mode 100644 miniapp/miniprogram/pages/group-buy/index.wxml create mode 100644 miniapp/miniprogram/pages/group-buy/index.wxss create mode 100644 miniapp/miniprogram/pages/home/index.js create mode 100644 miniapp/miniprogram/pages/home/index.json create mode 100644 miniapp/miniprogram/pages/home/index.wxml create mode 100644 miniapp/miniprogram/pages/home/index.wxss create mode 100644 miniapp/miniprogram/pages/notices/index.js create mode 100644 miniapp/miniprogram/pages/notices/index.json create mode 100644 miniapp/miniprogram/pages/notices/index.wxml create mode 100644 miniapp/miniprogram/pages/notices/index.wxss create mode 100644 miniapp/miniprogram/pages/orders/detail.js create mode 100644 miniapp/miniprogram/pages/orders/detail.json create mode 100644 miniapp/miniprogram/pages/orders/detail.wxml create mode 100644 miniapp/miniprogram/pages/orders/detail.wxss create mode 100644 miniapp/miniprogram/pages/orders/index.js create mode 100644 miniapp/miniprogram/pages/orders/index.json create mode 100644 miniapp/miniprogram/pages/orders/index.wxml create mode 100644 miniapp/miniprogram/pages/orders/index.wxss create mode 100644 miniapp/miniprogram/pages/products/detail.js create mode 100644 miniapp/miniprogram/pages/products/detail.json create mode 100644 miniapp/miniprogram/pages/products/detail.wxml create mode 100644 miniapp/miniprogram/pages/products/detail.wxss create mode 100644 miniapp/miniprogram/pages/products/index.js create mode 100644 miniapp/miniprogram/pages/products/index.json create mode 100644 miniapp/miniprogram/pages/products/index.wxml create mode 100644 miniapp/miniprogram/pages/products/index.wxss create mode 100644 miniapp/miniprogram/pages/profile/index.js create mode 100644 miniapp/miniprogram/pages/profile/index.json create mode 100644 miniapp/miniprogram/pages/profile/index.wxml create mode 100644 miniapp/miniprogram/pages/profile/index.wxss create mode 100644 miniapp/miniprogram/pages/second-hand/create.js create mode 100644 miniapp/miniprogram/pages/second-hand/create.json create mode 100644 miniapp/miniprogram/pages/second-hand/create.wxml create mode 100644 miniapp/miniprogram/pages/second-hand/create.wxss create mode 100644 miniapp/miniprogram/pages/second-hand/index.js create mode 100644 miniapp/miniprogram/pages/second-hand/index.json create mode 100644 miniapp/miniprogram/pages/second-hand/index.wxml create mode 100644 miniapp/miniprogram/pages/second-hand/index.wxss create mode 100644 miniapp/miniprogram/utils/request.js create mode 100644 miniapp/package.json create mode 100644 miniapp/project.config.json create mode 100644 rider-h5/package.json create mode 100644 rider-h5/vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..519eb29 --- /dev/null +++ b/.gitignore @@ -0,0 +1,21 @@ +.worktrees/ +target/ +*.class +*.log + +node_modules/ +dist/ +.vite/ +coverage/ + +.idea/ +.vscode/ +*.iml + +.env +.env.* + +backend/logs/ +deploy/.data/ +miniapp/miniprogram_npm/ +miniapp/private.* diff --git a/README.md b/README.md new file mode 100644 index 0000000..f68aca2 --- /dev/null +++ b/README.md @@ -0,0 +1,23 @@ +# LinHelp + +LinHelp is the phase-one implementation workspace for "Lin Xiao Bang", a community life service MVP. + +## Stack + +- Backend: Java 8, Spring Boot 2.7.18, MyBatis Plus, Sa-Token, MySQL, Redis, Flyway, Knife4j, MinIO +- Admin web: Vue 3, TypeScript, Vite, Element Plus +- Resident miniapp: WeChat native mini program, WXML, WXSS, JavaScript +- Rider H5: Vue 3, TypeScript, Vite + +## Local Runtime + +```powershell +docker compose -f deploy/docker-compose.dev.yml up -d +cd backend +mvn test +``` + +Project docs: + +- `docs/superpowers/specs/2026-07-07-linxiaobang-prd-design.md` +- `docs/superpowers/plans/2026-07-07-linxiaobang-phase-one-implementation.md` diff --git a/admin-web/package.json b/admin-web/package.json new file mode 100644 index 0000000..35fa6c3 --- /dev/null +++ b/admin-web/package.json @@ -0,0 +1,27 @@ +{ + "name": "linhelp-admin-web", + "version": "0.1.0", + "private": true, + "type": "module", + "scripts": { + "dev": "vite --host 0.0.0.0 --port 5173", + "build": "vue-tsc -b && vite build", + "test": "vitest run", + "lint": "eslint ." + }, + "dependencies": { + "@element-plus/icons-vue": "^2.3.1", + "axios": "^1.7.2", + "element-plus": "^2.7.6", + "pinia": "^2.1.7", + "vue": "^3.4.31", + "vue-router": "^4.4.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.0.5", + "typescript": "^5.5.3", + "vite": "^5.3.3", + "vitest": "^2.0.2", + "vue-tsc": "^2.0.26" + } +} diff --git a/admin-web/vite.config.ts b/admin-web/vite.config.ts new file mode 100644 index 0000000..8084277 --- /dev/null +++ b/admin-web/vite.config.ts @@ -0,0 +1,9 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +export default defineConfig({ + plugins: [vue()], + server: { + port: 5173 + } +}) diff --git a/backend/pom.xml b/backend/pom.xml new file mode 100644 index 0000000..94c88d8 --- /dev/null +++ b/backend/pom.xml @@ -0,0 +1,112 @@ + + 4.0.0 + + com.linhelp + linhelp-backend + 0.1.0-SNAPSHOT + linhelp-backend + + + 1.8 + 1.8 + 1.8 + UTF-8 + 2.7.18 + 3.5.5 + 1.38.0 + 4.4.0 + 8.5.11 + 8.0.33 + 3.11.0 + 2.22.2 + + + + + + org.springframework.boot + spring-boot-dependencies + ${spring-boot.version} + pom + import + + + + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-validation + + + org.springframework.boot + spring-boot-starter-data-redis + + + com.baomidou + mybatis-plus-boot-starter + ${mybatis-plus.version} + + + cn.dev33 + sa-token-spring-boot-starter + ${sa-token.version} + + + com.mysql + mysql-connector-j + ${mysql.version} + runtime + + + org.flywaydb + flyway-core + + + com.github.xiaoymin + knife4j-openapi3-spring-boot-starter + ${knife4j.version} + + + io.minio + minio + ${minio.version} + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 1.8 + 1.8 + UTF-8 + + + + org.springframework.boot + spring-boot-maven-plugin + ${spring-boot.version} + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + + + + diff --git a/backend/src/main/java/com/linhelp/LinHelpApplication.java b/backend/src/main/java/com/linhelp/LinHelpApplication.java new file mode 100644 index 0000000..25e90ee --- /dev/null +++ b/backend/src/main/java/com/linhelp/LinHelpApplication.java @@ -0,0 +1,12 @@ +package com.linhelp; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class LinHelpApplication { + + public static void main(String[] args) { + SpringApplication.run(LinHelpApplication.class, args); + } +} diff --git a/backend/src/main/resources/application-dev.yml b/backend/src/main/resources/application-dev.yml new file mode 100644 index 0000000..2597ef7 --- /dev/null +++ b/backend/src/main/resources/application-dev.yml @@ -0,0 +1,26 @@ +spring: + datasource: + url: jdbc:mysql://localhost:3306/linhelp?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai + username: linhelp + password: linhelp + redis: + host: localhost + port: 6379 + flyway: + enabled: true + locations: classpath:db/migration + +mybatis-plus: + configuration: + map-underscore-to-camel-case: true + +sa-token: + token-name: Authorization + timeout: 2592000 + +linhelp: + storage: + endpoint: http://localhost:9000 + access-key: linhelp + secret-key: linhelp123 + bucket: linhelp diff --git a/backend/src/main/resources/application.yml b/backend/src/main/resources/application.yml new file mode 100644 index 0000000..34bc56f --- /dev/null +++ b/backend/src/main/resources/application.yml @@ -0,0 +1,11 @@ +spring: + profiles: + active: dev + application: + name: linhelp-backend + +server: + port: 8080 + +knife4j: + enable: true diff --git a/backend/src/test/java/com/linhelp/LinHelpApplicationTests.java b/backend/src/test/java/com/linhelp/LinHelpApplicationTests.java new file mode 100644 index 0000000..3c116af --- /dev/null +++ b/backend/src/test/java/com/linhelp/LinHelpApplicationTests.java @@ -0,0 +1,15 @@ +package com.linhelp; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest(properties = { + "spring.flyway.enabled=false", + "spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration" +}) +class LinHelpApplicationTests { + + @Test + void contextLoads() { + } +} diff --git a/deploy/docker-compose.dev.yml b/deploy/docker-compose.dev.yml new file mode 100644 index 0000000..26018cf --- /dev/null +++ b/deploy/docker-compose.dev.yml @@ -0,0 +1,30 @@ +services: + mysql: + image: mysql:8.4 + environment: + MYSQL_ROOT_PASSWORD: root + MYSQL_DATABASE: linhelp + MYSQL_USER: linhelp + MYSQL_PASSWORD: linhelp + ports: + - "3306:3306" + volumes: + - mysql_data:/var/lib/mysql + redis: + image: redis:7 + ports: + - "6379:6379" + minio: + image: minio/minio:RELEASE.2025-04-22T22-12-26Z + command: server /data --console-address ":9001" + environment: + MINIO_ROOT_USER: linhelp + MINIO_ROOT_PASSWORD: linhelp123 + ports: + - "9000:9000" + - "9001:9001" + volumes: + - minio_data:/data +volumes: + mysql_data: + minio_data: diff --git a/miniapp/miniprogram/app.js b/miniapp/miniprogram/app.js new file mode 100644 index 0000000..6da605c --- /dev/null +++ b/miniapp/miniprogram/app.js @@ -0,0 +1,6 @@ +App({ + globalData: { + apiBaseUrl: 'http://localhost:8080', + token: '' + } +}) diff --git a/miniapp/miniprogram/app.json b/miniapp/miniprogram/app.json new file mode 100644 index 0000000..17a85e4 --- /dev/null +++ b/miniapp/miniprogram/app.json @@ -0,0 +1,46 @@ +{ + "pages": [ + "pages/home/index", + "pages/products/index", + "pages/products/detail", + "pages/orders/index", + "pages/orders/detail", + "pages/express/create", + "pages/group-buy/index", + "pages/group-buy/detail", + "pages/second-hand/index", + "pages/second-hand/create", + "pages/notices/index", + "pages/profile/index", + "pages/address/index" + ], + "window": { + "navigationBarTitleText": "邻小帮", + "navigationBarBackgroundColor": "#ffffff", + "navigationBarTextStyle": "black", + "backgroundColor": "#f6f7f9" + }, + "tabBar": { + "color": "#6b7280", + "selectedColor": "#0f766e", + "backgroundColor": "#ffffff", + "list": [ + { + "pagePath": "pages/home/index", + "text": "首页" + }, + { + "pagePath": "pages/group-buy/index", + "text": "团购" + }, + { + "pagePath": "pages/second-hand/index", + "text": "闲置" + }, + { + "pagePath": "pages/profile/index", + "text": "我的" + } + ] + } +} diff --git a/miniapp/miniprogram/app.wxss b/miniapp/miniprogram/app.wxss new file mode 100644 index 0000000..8565793 --- /dev/null +++ b/miniapp/miniprogram/app.wxss @@ -0,0 +1,9 @@ +page { + background: #f6f7f9; + color: #111827; + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif; +} + +.page { + padding: 24rpx; +} diff --git a/miniapp/miniprogram/pages/address/index.js b/miniapp/miniprogram/pages/address/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/address/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/address/index.json b/miniapp/miniprogram/pages/address/index.json new file mode 100644 index 0000000..2fb6367 --- /dev/null +++ b/miniapp/miniprogram/pages/address/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "地址管理" +} diff --git a/miniapp/miniprogram/pages/address/index.wxml b/miniapp/miniprogram/pages/address/index.wxml new file mode 100644 index 0000000..aa13d10 --- /dev/null +++ b/miniapp/miniprogram/pages/address/index.wxml @@ -0,0 +1 @@ +地址管理 diff --git a/miniapp/miniprogram/pages/address/index.wxss b/miniapp/miniprogram/pages/address/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/address/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/express/create.js b/miniapp/miniprogram/pages/express/create.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/express/create.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/express/create.json b/miniapp/miniprogram/pages/express/create.json new file mode 100644 index 0000000..c98ff69 --- /dev/null +++ b/miniapp/miniprogram/pages/express/create.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "代取快递" +} diff --git a/miniapp/miniprogram/pages/express/create.wxml b/miniapp/miniprogram/pages/express/create.wxml new file mode 100644 index 0000000..9c659e1 --- /dev/null +++ b/miniapp/miniprogram/pages/express/create.wxml @@ -0,0 +1 @@ +代取快递 diff --git a/miniapp/miniprogram/pages/express/create.wxss b/miniapp/miniprogram/pages/express/create.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/express/create.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/group-buy/detail.js b/miniapp/miniprogram/pages/group-buy/detail.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/detail.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/group-buy/detail.json b/miniapp/miniprogram/pages/group-buy/detail.json new file mode 100644 index 0000000..5b37aff --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/detail.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "团购详情" +} diff --git a/miniapp/miniprogram/pages/group-buy/detail.wxml b/miniapp/miniprogram/pages/group-buy/detail.wxml new file mode 100644 index 0000000..6447f39 --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/detail.wxml @@ -0,0 +1 @@ +团购详情 diff --git a/miniapp/miniprogram/pages/group-buy/detail.wxss b/miniapp/miniprogram/pages/group-buy/detail.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/detail.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/group-buy/index.js b/miniapp/miniprogram/pages/group-buy/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/group-buy/index.json b/miniapp/miniprogram/pages/group-buy/index.json new file mode 100644 index 0000000..5ba4987 --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "今日团购" +} diff --git a/miniapp/miniprogram/pages/group-buy/index.wxml b/miniapp/miniprogram/pages/group-buy/index.wxml new file mode 100644 index 0000000..587d2d1 --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/index.wxml @@ -0,0 +1 @@ +今日团购 diff --git a/miniapp/miniprogram/pages/group-buy/index.wxss b/miniapp/miniprogram/pages/group-buy/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/group-buy/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/home/index.js b/miniapp/miniprogram/pages/home/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/home/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/home/index.json b/miniapp/miniprogram/pages/home/index.json new file mode 100644 index 0000000..8aba33f --- /dev/null +++ b/miniapp/miniprogram/pages/home/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "邻小帮" +} diff --git a/miniapp/miniprogram/pages/home/index.wxml b/miniapp/miniprogram/pages/home/index.wxml new file mode 100644 index 0000000..475f2a1 --- /dev/null +++ b/miniapp/miniprogram/pages/home/index.wxml @@ -0,0 +1 @@ +邻小帮 diff --git a/miniapp/miniprogram/pages/home/index.wxss b/miniapp/miniprogram/pages/home/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/home/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/notices/index.js b/miniapp/miniprogram/pages/notices/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/notices/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/notices/index.json b/miniapp/miniprogram/pages/notices/index.json new file mode 100644 index 0000000..4254de9 --- /dev/null +++ b/miniapp/miniprogram/pages/notices/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "社区公告" +} diff --git a/miniapp/miniprogram/pages/notices/index.wxml b/miniapp/miniprogram/pages/notices/index.wxml new file mode 100644 index 0000000..8de531a --- /dev/null +++ b/miniapp/miniprogram/pages/notices/index.wxml @@ -0,0 +1 @@ +社区公告 diff --git a/miniapp/miniprogram/pages/notices/index.wxss b/miniapp/miniprogram/pages/notices/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/notices/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/orders/detail.js b/miniapp/miniprogram/pages/orders/detail.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/orders/detail.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/orders/detail.json b/miniapp/miniprogram/pages/orders/detail.json new file mode 100644 index 0000000..44b1678 --- /dev/null +++ b/miniapp/miniprogram/pages/orders/detail.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "订单详情" +} diff --git a/miniapp/miniprogram/pages/orders/detail.wxml b/miniapp/miniprogram/pages/orders/detail.wxml new file mode 100644 index 0000000..d08dd6a --- /dev/null +++ b/miniapp/miniprogram/pages/orders/detail.wxml @@ -0,0 +1 @@ +订单详情 diff --git a/miniapp/miniprogram/pages/orders/detail.wxss b/miniapp/miniprogram/pages/orders/detail.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/orders/detail.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/orders/index.js b/miniapp/miniprogram/pages/orders/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/orders/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/orders/index.json b/miniapp/miniprogram/pages/orders/index.json new file mode 100644 index 0000000..5c1f617 --- /dev/null +++ b/miniapp/miniprogram/pages/orders/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "我的订单" +} diff --git a/miniapp/miniprogram/pages/orders/index.wxml b/miniapp/miniprogram/pages/orders/index.wxml new file mode 100644 index 0000000..19dad6d --- /dev/null +++ b/miniapp/miniprogram/pages/orders/index.wxml @@ -0,0 +1 @@ +我的订单 diff --git a/miniapp/miniprogram/pages/orders/index.wxss b/miniapp/miniprogram/pages/orders/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/orders/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/products/detail.js b/miniapp/miniprogram/pages/products/detail.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/products/detail.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/products/detail.json b/miniapp/miniprogram/pages/products/detail.json new file mode 100644 index 0000000..3d11fbf --- /dev/null +++ b/miniapp/miniprogram/pages/products/detail.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "商品详情" +} diff --git a/miniapp/miniprogram/pages/products/detail.wxml b/miniapp/miniprogram/pages/products/detail.wxml new file mode 100644 index 0000000..c824d67 --- /dev/null +++ b/miniapp/miniprogram/pages/products/detail.wxml @@ -0,0 +1 @@ +商品详情 diff --git a/miniapp/miniprogram/pages/products/detail.wxss b/miniapp/miniprogram/pages/products/detail.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/products/detail.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/products/index.js b/miniapp/miniprogram/pages/products/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/products/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/products/index.json b/miniapp/miniprogram/pages/products/index.json new file mode 100644 index 0000000..3b52e53 --- /dev/null +++ b/miniapp/miniprogram/pages/products/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "商品预定" +} diff --git a/miniapp/miniprogram/pages/products/index.wxml b/miniapp/miniprogram/pages/products/index.wxml new file mode 100644 index 0000000..c05d48a --- /dev/null +++ b/miniapp/miniprogram/pages/products/index.wxml @@ -0,0 +1 @@ +商品预定 diff --git a/miniapp/miniprogram/pages/products/index.wxss b/miniapp/miniprogram/pages/products/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/products/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/profile/index.js b/miniapp/miniprogram/pages/profile/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/profile/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/profile/index.json b/miniapp/miniprogram/pages/profile/index.json new file mode 100644 index 0000000..4ec55be --- /dev/null +++ b/miniapp/miniprogram/pages/profile/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "我的" +} diff --git a/miniapp/miniprogram/pages/profile/index.wxml b/miniapp/miniprogram/pages/profile/index.wxml new file mode 100644 index 0000000..bb386f3 --- /dev/null +++ b/miniapp/miniprogram/pages/profile/index.wxml @@ -0,0 +1 @@ +我的 diff --git a/miniapp/miniprogram/pages/profile/index.wxss b/miniapp/miniprogram/pages/profile/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/profile/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/second-hand/create.js b/miniapp/miniprogram/pages/second-hand/create.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/create.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/second-hand/create.json b/miniapp/miniprogram/pages/second-hand/create.json new file mode 100644 index 0000000..15426ce --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/create.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "发布闲置" +} diff --git a/miniapp/miniprogram/pages/second-hand/create.wxml b/miniapp/miniprogram/pages/second-hand/create.wxml new file mode 100644 index 0000000..63726b1 --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/create.wxml @@ -0,0 +1 @@ +发布闲置 diff --git a/miniapp/miniprogram/pages/second-hand/create.wxss b/miniapp/miniprogram/pages/second-hand/create.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/create.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/pages/second-hand/index.js b/miniapp/miniprogram/pages/second-hand/index.js new file mode 100644 index 0000000..ba76804 --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/index.js @@ -0,0 +1 @@ +Page({}) diff --git a/miniapp/miniprogram/pages/second-hand/index.json b/miniapp/miniprogram/pages/second-hand/index.json new file mode 100644 index 0000000..b04720d --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/index.json @@ -0,0 +1,3 @@ +{ + "navigationBarTitleText": "二手闲置" +} diff --git a/miniapp/miniprogram/pages/second-hand/index.wxml b/miniapp/miniprogram/pages/second-hand/index.wxml new file mode 100644 index 0000000..08c5ef7 --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/index.wxml @@ -0,0 +1 @@ +二手闲置 diff --git a/miniapp/miniprogram/pages/second-hand/index.wxss b/miniapp/miniprogram/pages/second-hand/index.wxss new file mode 100644 index 0000000..67a49e7 --- /dev/null +++ b/miniapp/miniprogram/pages/second-hand/index.wxss @@ -0,0 +1,3 @@ +.page { + min-height: 100vh; +} diff --git a/miniapp/miniprogram/utils/request.js b/miniapp/miniprogram/utils/request.js new file mode 100644 index 0000000..e8e0d23 --- /dev/null +++ b/miniapp/miniprogram/utils/request.js @@ -0,0 +1,26 @@ +function request(options) { + const app = getApp() + const token = app.globalData.token + return new Promise((resolve, reject) => { + wx.request({ + url: app.globalData.apiBaseUrl + options.url, + method: options.method || 'GET', + data: options.data || {}, + header: Object.assign({ + Authorization: token + }, options.header || {}), + success(res) { + if (res.statusCode >= 200 && res.statusCode < 300 && res.data && res.data.code === 0) { + resolve(res.data.data) + return + } + reject(new Error((res.data && res.data.message) || '请求失败')) + }, + fail: reject + }) + }) +} + +module.exports = { + request +} diff --git a/miniapp/package.json b/miniapp/package.json new file mode 100644 index 0000000..507ce94 --- /dev/null +++ b/miniapp/package.json @@ -0,0 +1,13 @@ +{ + "name": "linhelp-miniapp", + "version": "0.1.0", + "private": true, + "scripts": { + "test": "jest --runInBand", + "ci:preview": "miniprogram-ci preview --pp ./project.config.json --robot 1" + }, + "devDependencies": { + "jest": "^29.7.0", + "miniprogram-ci": "^2.0.0" + } +} diff --git a/miniapp/project.config.json b/miniapp/project.config.json new file mode 100644 index 0000000..ce40350 --- /dev/null +++ b/miniapp/project.config.json @@ -0,0 +1,13 @@ +{ + "appid": "touristappid", + "projectname": "linhelp-miniapp", + "miniprogramRoot": "miniprogram/", + "setting": { + "urlCheck": false, + "es6": true, + "enhance": true, + "postcss": true, + "minified": true + }, + "compileType": "miniprogram" +} diff --git a/rider-h5/package.json b/rider-h5/package.json new file mode 100644 index 0000000..10f3990 --- /dev/null +++ b/rider-h5/package.json @@ -0,0 +1,25 @@ +{ + "name": "linhelp-rider-h5", + "version": "0.1.0", + "private": true, + "type": "module", + "scripts": { + "dev": "vite --host 0.0.0.0 --port 5174", + "build": "vue-tsc -b && vite build", + "test": "vitest run", + "lint": "eslint ." + }, + "dependencies": { + "axios": "^1.7.2", + "pinia": "^2.1.7", + "vue": "^3.4.31", + "vue-router": "^4.4.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.0.5", + "typescript": "^5.5.3", + "vite": "^5.3.3", + "vitest": "^2.0.2", + "vue-tsc": "^2.0.26" + } +} diff --git a/rider-h5/vite.config.ts b/rider-h5/vite.config.ts new file mode 100644 index 0000000..d282194 --- /dev/null +++ b/rider-h5/vite.config.ts @@ -0,0 +1,9 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +export default defineConfig({ + plugins: [vue()], + server: { + port: 5174 + } +})