diff --git a/README.md b/README.md new file mode 100644 index 0000000..f382154 --- /dev/null +++ b/README.md @@ -0,0 +1,121 @@ +# SQL脚本 + +## 一、常用表 + +### 1.users:用户表 + +```SQL +CREATE TABLE `users` ( + `id` int(5) NOT NULL AUTO_INCREMENT COMMENT '顺序号', + `username` varchar(10) NOT NULL COMMENT '用户名', + `password` varchar(100) NOT NULL COMMENT '密码', + `nickName` varchar(20) DEFAULT NULL COMMENT '昵称', + `gender` tinyint(1) DEFAULT NULL COMMENT '性别 0-不详 1-男 2-女', + `country` varchar(20) DEFAULT NULL COMMENT '国家', + `province` varchar(20) DEFAULT NULL COMMENT '省份', + `city` varchar(20) DEFAULT NULL COMMENT '城市', + `avatarUrl` varchar(500) DEFAULT NULL COMMENT '图像地址', + `openId` varchar(100) DEFAULT NULL COMMENT '微信OpenId识别代码', + `phone` varchar(20) DEFAULT NULL COMMENT '电话', + `email` varchar(50) DEFAULT NULL COMMENT '邮箱', + `createTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `creator` varchar(10) NOT NULL COMMENT '创建人', + `source` tinyint(1) DEFAULT NULL COMMENT '来源 0-后台 1-小程序 2-网站', + `status` tinyint(1) NOT NULL COMMENT '用户状态 0-正常 1-限制使用 2-完全限制 3-封号 4-注销', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE KEY `username` (`username`) USING BTREE COMMENT 'username不能重复', + UNIQUE KEY `openId` (`openId`) USING BTREE +) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT +``` + +### 2.auth_codes:授权码生成表 + +```sql +CREATE TABLE `auth_codes` ( + `id` int(5) NOT NULL AUTO_INCREMENT, + `code` varchar(10) NOT NULL COMMENT '授权码', + `md5code` varchar(50) DEFAULT NULL COMMENT '加密授权码', + `type` varchar(20) NOT NULL COMMENT '类型: activate, reset, api', + `useCount` int(3) DEFAULT '0' COMMENT '调用次数', + `createTime` datetime NOT NULL COMMENT '创建时间', + KEY `id` (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=1020 DEFAULT CHARSET=utf8mb4 +``` + +### 3.sys_parameter:系统参数表 + +```sql +CREATE TABLE `sys_parameter` ( + `id` int(5) NOT NULL AUTO_INCREMENT COMMENT '参数ID', + `sort_id` int(11) DEFAULT '0' COMMENT '排序号', + `is_system` tinyint(1) DEFAULT '0' COMMENT '是否系统参数(0-用户参数 1-系统参数)', + `category` varchar(50) DEFAULT 'default' COMMENT '分类分组', + `type` varchar(20) DEFAULT 'string' COMMENT '参数类型: string, number, boolean, json, text', + `parameter_name` varchar(100) NOT NULL COMMENT '参数名称', + `parameter_value` text COMMENT '参数值', + `description` varchar(500) DEFAULT NULL COMMENT '参数描述', + `status` tinyint(1) DEFAULT '1' COMMENT '状态: 0-禁用 1-启用', + `create_user` varchar(50) DEFAULT NULL COMMENT '创建人', + `create_time` datetime NOT NULL COMMENT '创建时间', + `update_user` varchar(50) DEFAULT NULL COMMENT '更新人', + `update_time` datetime DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE, + KEY `idx_category_status` (`category`,`status`) USING BTREE, + KEY `idx_is_system` (`is_system`) USING BTREE +) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='系统参数配置表' +``` + + + +## 二、其他表 + +### 1.tools_md5_dict:Md5解密 + +```Sql +-- 创建字符MD5编码字典表(最终版) +CREATE TABLE `tool_md5_dict` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', + `str` varchar(255) NOT NULL COMMENT '原始字符', + `md5` varchar(255) NOT NULL COMMENT 'MD5编码', + `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_char` (`char`) COMMENT '确保数字字符唯一,避免重复存储', + KEY `idx_md5` (`md5`) COMMENT 'MD5值索引,提升反向查询效率' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='数字字符MD5编码字典表' +``` + + + +## 三、备份表 + +### 1.users_log:用户数据变更日志表 + +```sql +CREATE TABLE `users_log` ( + `logId` int(11) NOT NULL AUTO_INCREMENT COMMENT '日志ID', + `operation` varchar(10) NOT NULL COMMENT '操作方法: UPDATE/DELETE', + `operator` varchar(10) NOT NULL COMMENT '操作人', + `operationTime` datetime NOT NULL COMMENT '操作时间', + `dataType` varchar(10) NOT NULL COMMENT '数据类型: OLD(旧数据)/NEW(新数据)', + `id` int(5) DEFAULT NULL COMMENT '用户ID', + `username` varchar(10) DEFAULT NULL COMMENT '用户名', + `password` varchar(500) DEFAULT NULL COMMENT '密码', + `nickName` varchar(20) DEFAULT NULL COMMENT '昵称', + `gender` tinyint(1) DEFAULT NULL COMMENT '性别 0-不详 1-男 2-女', + `country` varchar(20) DEFAULT NULL COMMENT '国家', + `province` varchar(20) DEFAULT NULL COMMENT '省份', + `city` varchar(20) DEFAULT NULL COMMENT '城市', + `avatarUrl` varchar(500) DEFAULT NULL COMMENT '图像地址', + `openId` varchar(100) DEFAULT NULL COMMENT '微信OpenId', + `phone` varchar(20) DEFAULT NULL COMMENT '电话', + `email` varchar(50) DEFAULT NULL COMMENT '邮箱', + `createTime` datetime DEFAULT NULL COMMENT '创建时间', + `creator` varchar(10) DEFAULT NULL COMMENT '创建人', + `source` tinyint(1) DEFAULT NULL COMMENT '来源 0-后台 1-小程序 2-网站', + `status` tinyint(1) DEFAULT NULL COMMENT '用户状态', + PRIMARY KEY (`logId`) USING BTREE, + KEY `idx_user_id` (`id`), + KEY `idx_operation_time` (`operationTime`), + KEY `idx_operation` (`operation`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户操作日志表' +``` \ No newline at end of file diff --git a/pom.xml b/pom.xml index 4f86a36..0bec4ba 100644 --- a/pom.xml +++ b/pom.xml @@ -98,6 +98,7 @@ annotationProcessor + log4j log4j @@ -133,5 +134,4 @@ - diff --git a/src/main/java/cn/lailab/toolbox/beans/tools/ToolMd5.java b/src/main/java/cn/lailab/toolbox/beans/tools/ToolMd5.java new file mode 100644 index 0000000..f3a2848 --- /dev/null +++ b/src/main/java/cn/lailab/toolbox/beans/tools/ToolMd5.java @@ -0,0 +1,14 @@ +package cn.lailab.toolbox.beans.tools; + +import java.util.Date; + +import lombok.Data; + +@Data +public class ToolMd5 { + int id; + String str; + String md5; + Date createTime; + String authCode; +} diff --git a/src/main/java/cn/lailab/toolbox/controller/ToolController.java b/src/main/java/cn/lailab/toolbox/controller/ToolController.java index 8cb0682..3d1877d 100644 --- a/src/main/java/cn/lailab/toolbox/controller/ToolController.java +++ b/src/main/java/cn/lailab/toolbox/controller/ToolController.java @@ -6,7 +6,7 @@ import org.springframework.web.bind.annotation.RequestMapping; @Controller public class ToolController { - @RequestMapping("/JiSuanQi") + @RequestMapping("/tools/JiSuanQi") public String JiSuanQi() { return "tools/JiSuanQi/JiSuanQi.html"; } diff --git a/src/main/java/cn/lailab/toolbox/controller/tools/ToolMd5Controller.java b/src/main/java/cn/lailab/toolbox/controller/tools/ToolMd5Controller.java new file mode 100644 index 0000000..1f53dda --- /dev/null +++ b/src/main/java/cn/lailab/toolbox/controller/tools/ToolMd5Controller.java @@ -0,0 +1,16 @@ +package cn.lailab.toolbox.controller.tools; + +import org.springframework.web.bind.annotation.RestController; + +import cn.lailab.toolbox.beans.tools.ToolMd5; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; + +@RestController +public class ToolMd5Controller { + @RequestMapping("/tools/insertMd5") + public String insertToolMd51String(@RequestParam ToolMd5 ToolMd5) { + return "12345"; + } +} diff --git a/src/main/java/cn/lailab/toolbox/mapper/ToolMd5Mapper.java b/src/main/java/cn/lailab/toolbox/mapper/ToolMd5Mapper.java new file mode 100644 index 0000000..08cf9d5 --- /dev/null +++ b/src/main/java/cn/lailab/toolbox/mapper/ToolMd5Mapper.java @@ -0,0 +1,25 @@ +package cn.lailab.toolbox.mapper; + +import org.apache.ibatis.annotations.Mapper; + +import cn.lailab.toolbox.beans.tools.ToolMd5; + +@Mapper +public interface ToolMd5Mapper { + /** + * 添加Md5到库里 + * + * @param toolMd5 + * @return + */ + int insertToolMd5(ToolMd5 toolMd5); + + /** + * 获取对用的Md5信息 + * + * @param toolMd5 + * @return + */ + ToolMd5 selectToolMd5(ToolMd5 toolMd5); + +} diff --git a/src/main/java/cn/lailab/toolbox/service/ToolMd5Service.java b/src/main/java/cn/lailab/toolbox/service/ToolMd5Service.java new file mode 100644 index 0000000..f090f3f --- /dev/null +++ b/src/main/java/cn/lailab/toolbox/service/ToolMd5Service.java @@ -0,0 +1,12 @@ +package cn.lailab.toolbox.service; + +import org.springframework.stereotype.Service; + +import cn.lailab.toolbox.beans.tools.ToolMd5; + +@Service +public interface ToolMd5Service { + int insertToolMd5(ToolMd5 toolMd5); + + ToolMd5 selectToolMd5(ToolMd5 toolMd5); +} \ No newline at end of file diff --git a/src/main/java/cn/lailab/toolbox/service/impl/ToolMd5ServiceImpl.java b/src/main/java/cn/lailab/toolbox/service/impl/ToolMd5ServiceImpl.java new file mode 100644 index 0000000..b6f6be0 --- /dev/null +++ b/src/main/java/cn/lailab/toolbox/service/impl/ToolMd5ServiceImpl.java @@ -0,0 +1,24 @@ +package cn.lailab.toolbox.service.impl; + +import org.springframework.beans.factory.annotation.Autowired; + +import cn.lailab.toolbox.beans.tools.ToolMd5; +import cn.lailab.toolbox.mapper.ToolMd5Mapper; +import cn.lailab.toolbox.service.ToolMd5Service; + +public class ToolMd5ServiceImpl implements ToolMd5Service { + + @Autowired + ToolMd5Mapper toolMd5Mapper; + + @Override + public int insertToolMd5(ToolMd5 toolMd5) { + return toolMd5Mapper.insertToolMd5(toolMd5); + } + + @Override + public ToolMd5 selectToolMd5(ToolMd5 toolMd5) { + return toolMd5Mapper.selectToolMd5(toolMd5); + } + +} diff --git a/src/main/resources/application-pro.yml b/src/main/resources/application-pro.yml index 73ccc6b..e48cc6c 100644 --- a/src/main/resources/application-pro.yml +++ b/src/main/resources/application-pro.yml @@ -33,7 +33,7 @@ mybatis: # mapper-locations: classpath:mapper/*Mapper.xml #mapper的映射文件 mapper-locations: classpath:mapper/**/*.xml # 2. 配置实体类的别名包(这样在 XML 中可以直接用类名,不用写全限定名) - type-aliases-package: cn.lailab.toolbox.beans.domain + type-aliases-package: cn.lailab.toolbox.beans.domain,cn.lailab.toolbox.beans.other # 3. 开启驼峰命名自动转换(比如数据库字段 user_name 自动映射到实体类属性 userName) # configuration: # map-underscore-to-camel-case: true @@ -46,7 +46,7 @@ logging: level: org.springframework.web: info org.hibernate.SQL: debug - cn.lailab: info + cn.lailab.toolbox: info logback: rollingpolicy: max-file-size: 10MB diff --git a/src/main/resources/mapper/ToolMd5Mppper.xml b/src/main/resources/mapper/ToolMd5Mppper.xml new file mode 100644 index 0000000..cd50e6f --- /dev/null +++ b/src/main/resources/mapper/ToolMd5Mppper.xml @@ -0,0 +1,12 @@ + + + + + insert into tool_md5_dict(str,md5) + values(#{str}, #{md5}); + + + + \ No newline at end of file diff --git a/src/main/resources/static/tools/JiSuanQi/JiSuanQi.html b/src/main/resources/static/tools/JiSuanQi/JiSuanQi.html index a90a3d5..7eac689 100644 --- a/src/main/resources/static/tools/JiSuanQi/JiSuanQi.html +++ b/src/main/resources/static/tools/JiSuanQi/JiSuanQi.html @@ -53,12 +53,12 @@ /* 功能按钮(AC、+/-、%) */ .func-btn { - background-color: #e6f7ff; - color: #1890ff; + background-color: #e3b0a1; + color: #dd4d20; } .func-btn:active { - background-color: #bae7ff; + background-color: #ea8363; } /* 数字按钮 */ @@ -73,12 +73,12 @@ /* 运算符按钮(天蓝色主题) */ .op-btn { - background-color: #1890ff; + background-color: #dd4d20; color: #ffffff; } .op-btn:active { - background-color: #096dd9; + background-color: #c76a4e; } /* 0号按钮占两列 */ diff --git a/src/test/java/cn/lailab/toolbox/service/ToolMd5ServiceTest.java b/src/test/java/cn/lailab/toolbox/service/ToolMd5ServiceTest.java new file mode 100644 index 0000000..9c24974 --- /dev/null +++ b/src/test/java/cn/lailab/toolbox/service/ToolMd5ServiceTest.java @@ -0,0 +1,23 @@ +package cn.lailab.toolbox.service; + +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; + +import cn.lailab.toolbox.beans.tools.ToolMd5; + +@SpringBootTest +public class ToolMd5ServiceTest { + + // @Autowired + // ToolMd5Service toolMd5Service; + + @Test + public void insertToolMd5Tests() { + // ToolMd5 toolMd5 = new ToolMd5(); + // toolMd5.setStr("12345"); + // toolMd5.setMd5("34556"); + // int rst = toolMd5Service.insertToolMd5(toolMd5); + System.out.println("返回:"); + } +}