三重炉小程序是为共居别墅社区打造的综合性服务平台,项目方在多个城市租赁别墅并打造成共居社区,每个别墅作为一个独立的共居社区,包含多个可租赁房间。平台通过兴趣爱好作为卖点,吸引兴趣同质化的年轻人租房,实现商业变现。
- 租房运营:别墅房间分租,提供住宿服务
- 社区运营:组织各类主题活动(单身交友、创业交流、桌游娱乐等)
- 商业变现:房租收入 + 活动费用 + 周边商城销售
- 主要用户:别墅住户、潜在租客
- 管理用户:社区运营者、活动组织者
- 次要用户:活动参与者(非住户)1
功能描述:展示社区推荐、搭子匹配、故事分享、好物推荐等核心入口
主要功能:
- 社区搜索:支持按社区名称搜索
- 推荐社区:展示热门社区列表,包含社区图片、名称、类型、价格
- 找搭子:随机匹配功能,当前无合适搭子时显示提示
- 四大模块入口:社区、搭子、故事、好物
接口设计:
GET /api/community/recommend- 获取推荐社区列表GET /api/community/search- 社区搜索GET /api/partner/random- 随机搭子匹配
功能描述:社区展示、活动管理、社区内容展示
主要功能:
- 社区详情:社区介绍、成员数量、入住详情
- 房间信息:房间列表、房间详情、价格展示
- 公共区域:客厅、厨房、花园、车位等公共设施
- 社区活动:活动列表、活动详情、报名功能2
- 社区故事:社区内容分享
- 社区好物:商品展示和购买
接口设计:
GET /api/community/{id}- 获取社区详情GET /api/community/{id}/rooms- 获取社区房间列表GET /api/community/{id}/activities- 获取社区活动GET /api/community/{id}/stories- 获取社区故事GET /api/community/{id}/products- 获取社区好物
功能描述:房间信息展示、租房申请、室友信息
主要功能:
- 房间详情:房间图片、价格、设施、状态
- 室友信息:当前室友展示
- 租房申请:在线申请租房
- 公共区域:展示包含的公共设施
接口设计:
GET /api/room/{id}- 获取房间详情POST /api/room/{id}/apply- 提交租房申请GET /api/room/{id}/roommates- 获取室友信息
功能描述:活动发布、报名、管理
主要功能:
- 活动列表:展示社区活动
- 活动详情:活动信息、时间、地点、参与人数
- 活动报名:在线报名参与活动
- 活动管理:活动创建、编辑、删除
接口设计:
GET /api/activity/list- 获取活动列表GET /api/activity/{id}- 获取活动详情POST /api/activity/{id}/register- 活动报名POST /api/activity- 创建活动PUT /api/activity/{id}- 更新活动DELETE /api/activity/{id}- 删除活动
功能描述:社区动态分享、互动
主要功能:
- 动态发布:图片、文字内容发布
- 动态展示:瀑布流展示用户动态
- 互动功能:点赞、评论
- 关注社区:关注感兴趣的社区
接口设计:
GET /api/moment/list- 获取动态列表POST /api/moment- 发布动态POST /api/moment/{id}/like- 点赞动态POST /api/moment/{id}/comment- 评论动态
功能描述:寻找兴趣相投的伙伴
主要功能:
- 搭子匹配:基于兴趣爱好匹配
- 搭子列表:展示可匹配的搭子
- 搭子详情:查看搭子信息
接口设计:
GET /api/partner/list- 获取搭子列表GET /api/partner/match- 搭子匹配POST /api/partner/connect- 连接搭子
功能描述:社区周边商品销售
主要功能:
- 商品展示:商品列表、详情
- 购物车:商品加购、管理
- 订单管理:下单、支付、配送
- 商品评价:购买后评价
接口设计:
GET /api/product/list- 获取商品列表GET /api/product/{id}- 获取商品详情POST /api/cart/add- 添加购物车POST /api/order- 创建订单POST /api/order/{id}/pay- 订单支付
功能描述:个人信息管理、订单管理
主要功能:
- 个人信息:头像、昵称、标签管理
- 我的订单:订单查看、管理
- 我的活动:参与的活动记录
- 消息通知:系统消息、活动通知
- 设置中心:隐私设置、通知设置
接口设计:
GET /api/user/profile- 获取用户信息PUT /api/user/profile- 更新用户信息GET /api/user/orders- 获取用户订单GET /api/user/activities- 获取用户活动GET /api/user/messages- 获取用户消息
CREATE TABLE `user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`openid` varchar(64) NOT NULL COMMENT '微信openid',
`nickname` varchar(50) DEFAULT NULL COMMENT '用户昵称',
`avatar_url` varchar(255) DEFAULT NULL COMMENT '头像URL',
`phone` varchar(20) DEFAULT NULL COMMENT '手机号',
`id_card` varchar(20) DEFAULT NULL COMMENT '身份证号',
`tags` varchar(255) DEFAULT NULL COMMENT '用户标签',
`self_intro` text COMMENT '自我介绍',
`notification_enabled` tinyint(1) DEFAULT 1 COMMENT '是否开启通知',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_openid` (`openid`)
);CREATE TABLE `community` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '社区ID',
`name` varchar(100) NOT NULL COMMENT '社区名称',
`type` varchar(50) DEFAULT NULL COMMENT '社区类型',
`description` text COMMENT '社区描述',
`cover_image` varchar(255) DEFAULT NULL COMMENT '社区封面',
`location` varchar(255) DEFAULT NULL COMMENT '社区位置',
`member_count` int(11) DEFAULT 0 COMMENT '成员数量',
`status` tinyint(1) DEFAULT 1 COMMENT '状态:1-正常,0-禁用',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
);CREATE TABLE `room` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '房间ID',1
`community_id` bigint(20) NOT NULL COMMENT '社区ID',
`room_no` varchar(20) NOT NULL COMMENT '房间号',
`room_type` varchar(50) DEFAULT NULL COMMENT '房间类型',
`price` decimal(10,2) NOT NULL COMMENT '房间价格',
`area` decimal(8,2) DEFAULT NULL COMMENT '房间面积',
`description` text COMMENT '房间描述',
`images` text COMMENT '房间图片JSON',
`facilities` text COMMENT '房间设施JSON',
`status` tinyint(1) DEFAULT 1 COMMENT '状态:1-可租,2-已租,0-维护',
`rent_end_time` datetime DEFAULT NULL COMMENT '租期结束时间',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `idx_community_id` (`community_id`)
);CREATE TABLE `activity` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '活动ID',
`community_id` bigint(20) DEFAULT NULL COMMENT '社区ID',
`title` varchar(100) NOT NULL COMMENT '活动标题',
`description` text COMMENT '活动描述',
`activity_time` datetime NOT NULL COMMENT '活动时间',
`location` varchar(255) DEFAULT NULL COMMENT '活动地点',
`max_participants` int(11) DEFAULT NULL COMMENT '最大参与人数',
`current_participants` int(11) DEFAULT 0 COMMENT '当前参与人数',
`fee` decimal(10,2) DEFAULT 0.00 COMMENT '活动费用',
`poster_url` varchar(255) DEFAULT NULL COMMENT '活动海报',
`organizer_id` bigint(20) NOT NULL COMMENT '组织者ID',
`status` tinyint(1) DEFAULT 1 COMMENT '状态:1-报名中,2-进行中,3-已结束,0-已取消',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `idx_community_id` (`community_id`),
KEY `idx_organizer_id` (`organizer_id`)
);CREATE TABLE `moment` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '动态ID',
`user_id` bigint(20) NOT NULL COMMENT '用户ID',
`community_id` bigint(20) DEFAULT NULL COMMENT '社区ID',
`title` varchar(100) DEFAULT NULL COMMENT '动态标题',
`content` text COMMENT '动态内容',
`images` text COMMENT '图片JSON',
`like_count` int(11) DEFAULT 0 COMMENT '点赞数',
`comment_count` int(11) DEFAULT 0 COMMENT '评论数',
`type` tinyint(1) DEFAULT 1 COMMENT '类型:1-普通动态,2-社区故事',
`status` tinyint(1) DEFAULT 1 COMMENT '状态:1-正常,0-删除',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_community_id` (`community_id`)
);CREATE TABLE `product` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '商品ID',
`community_id` bigint(20) DEFAULT NULL COMMENT '社区ID',
`name` varchar(100) NOT NULL COMMENT '商品名称',
`description` text COMMENT '商品描述',
`price` decimal(10,2) NOT NULL COMMENT '商品价格',
`images` text COMMENT '商品图片JSON',
`category` varchar(50) DEFAULT NULL COMMENT '商品分类',
`stock` int(11) DEFAULT 0 COMMENT '库存数量',
`sales` int(11) DEFAULT 0 COMMENT '销量',
`rating` decimal(3,2) DEFAULT 0.00 COMMENT '评分',
`status` tinyint(1) DEFAULT 1 COMMENT '状态:1-上架,0-下架',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `idx_community_id` (`community_id`)
);CREATE TABLE `community_member` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`community_id` bigint(20) NOT NULL COMMENT '社区ID',
`user_id` bigint(20) NOT NULL COMMENT '用户ID',
`role` tinyint(1) DEFAULT 1 COMMENT '角色:1-普通成员,2-管理员',
`join_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '加入时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_community_user` (`community_id`, `user_id`)
);CREATE TABLE `activity_participant` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`activity_id` bigint(20) NOT NULL COMMENT '活动ID',
`user_id` bigint(20) NOT NULL COMMENT '用户ID',
`register_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '报名时间',
`status` tinyint(1) DEFAULT 1 COMMENT '状态:1-已报名,2-已签到,0-已取消',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_activity_user` (`activity_id`, `user_id`)
);- 开发语言:Java 8
- 框架:Spring Boot 2.7.x
- ORM框架:MyBatis Plus 3.5.x
- 数据库:MySQL 8.0 + Redis 6.x
- 安全框架:Spring Security + JWT
- 文档工具:Swagger 3.x
- 构建工具:Maven 3.6+
- 框架:微信小程序原生开发
- UI组件:Vant Weapp
- 状态管理:全局状态管理
- 网络请求:wx.request封装
- 支付:微信支付
- 地图:腾讯地图API
- 消息推送:微信模板消息
- 文件存储:腾讯云COS
- 实名认证:第三方身份验证服务
triple-forge/
├── src/main/java/com/tripleforge/
│ ├── TripleForgeApplication.java # 启动类
│ ├── config/ # 配置类
│ │ ├── MybatisPlusConfig.java
│ │ ├── RedisConfig.java
│ │ └── SwaggerConfig.java
│ ├── controller/ # 控制器
│ │ ├── CommunityController.java
│ │ ├── RoomController.java
│ │ ├── ActivityController.java
│ │ ├── MomentController.java
│ │ ├── ProductController.java
│ │ └── UserController.java
│ ├── service/ # 服务层
│ │ ├── CommunityService.java
│ │ ├── RoomService.java
│ │ ├── ActivityService.java
│ │ ├── MomentService.java
│ │ ├── ProductService.java
│ │ └── UserService.java
│ ├── mapper/ # 数据访问层
│ │ ├── CommunityMapper.java
│ │ ├── RoomMapper.java
│ │ ├── ActivityMapper.java
│ │ ├── MomentMapper.java
│ │ ├── ProductMapper.java
│ │ └── UserMapper.java
│ ├── entity/ # 实体类
│ │ ├── User.java
│ │ ├── Community.java
│ │ ├── Room.java
│ │ ├── Activity.java
│ │ ├── Moment.java
│ │ └── Product.java
│ ├── dto/ # 数据传输对象
│ ├── vo/ # 视图对象
│ ├── common/ # 公共类
│ │ ├── Result.java
│ │ ├── PageResult.java
│ │ └── Constants.java
│ └── util/ # 工具类
├── src/main/resources/
│ ├── application.yml # 配置文件
│ ├── mapper/ # MyBatis映射文件
│ └── db/ # 数据库脚本
└── pom.xml # Maven配置
- 用户登录注册
- 社区信息展示
- 房间信息展示
- 基础活动功能
- 个人中心基础功能
- 支付功能集成
- 社区动态功能
- 商城模块
- 搭子系统
- 高级功能优化
- JDK 8+
- MySQL 8.0+
- Redis 6.0+
- Maven 3.6+
- 数据库连接配置
- Redis连接配置
- 微信小程序配置
- 第三方服务配置
本文档将随着项目开发进度持续更新,确保与实际功能保持同步。