需求分析
给用户提供便捷的预约平台,方便他们查询场馆信息、选择合适时间并进行预约;主要功能包括,展示不同类型和位置的场馆,选择日期和时间,完成场馆预约,用户查看历史订单和预约状态等
功能规划
技术选型
- 前端基于微信小程序平台进行开发
- 后端基于Java Springboot架构开发
- 数据库: MySQL (8.0+)
数据库设计
CREATE TABLE `meetsport_meet` (
`MEET_ID` int NOT NULL AUTO_INCREMENT,
`MEET_TITLE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_CATE_ID` int NOT NULL DEFAULT 0,
`MEET_CATE_NAME` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`MEET_STATUS` int NOT NULL DEFAULT 1,
`MEET_ORDER` int NOT NULL DEFAULT 9999,
`MEET_VOUCH` int NOT NULL DEFAULT 0,
`MEET_DAYS` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_VIEW_CNT` int NOT NULL DEFAULT 0,
`MEET_MAX_CNT` int NOT NULL DEFAULT 0,
`MEET_FORMS` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_OBJ` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`ADD_TIME` bigint NOT NULL DEFAULT 0,
`EDIT_TIME` bigint NOT NULL DEFAULT 0,
PRIMARY KEY (`MEET_ID`) USING BTREE
)
CREATE TABLE `meetsport_meet_join` (
`MEET_JOIN_ID` int NOT NULL AUTO_INCREMENT,
`MEET_JOIN_USER_ID` int NOT NULL DEFAULT 0,
`MEET_JOIN_MEET_ID` int NOT NULL DEFAULT 0,
`MEET_JOIN_CODE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_JOIN_IS_CHECK` int NOT NULL DEFAULT 0,
`MEET_JOIN_CHECK_TIME` bigint NOT NULL DEFAULT 0,
`MEET_JOIN_FORMS` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_JOIN_OBJ` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_JOIN_STATUS` int NOT NULL DEFAULT 0,
`MEET_JOIN_TIME` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_JOIN_DAY` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`MEET_JOIN_MEET_TITLE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`ADD_TIME` bigint NOT NULL DEFAULT 0,
`EDIT_TIME` bigint NOT NULL DEFAULT 0,
PRIMARY KEY (`MEET_JOIN_ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 11783 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;
CREATE TABLE `meetsport_fav` (
`FAV_ID` int NOT NULL AUTO_INCREMENT,
`FAV_USER_ID` int NOT NULL DEFAULT 0,
`FAV_TITLE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`FAV_TYPE` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`FAV_OID` int NOT NULL DEFAULT 0,
`FAV_PATH` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
`ADD_TIME` bigint NOT NULL DEFAULT 0,
`EDIT_TIME` bigint NOT NULL DEFAULT 0,
PRIMARY KEY (`FAV_ID`) USING BTREE
)
核心实现
@Service("MeetSportMeetService")
public class MeetService extends BaseMyCustService {
@Res