diff --git a/docs/开发文档/API/班干部管理API.md b/docs/开发文档/API/班干部管理API.md
deleted file mode 100644
index b3b15993..00000000
--- a/docs/开发文档/API/班干部管理API.md
+++ /dev/null
@@ -1,633 +0,0 @@
-# 班干部管理API文档
-
-## 概述
-
-**模块名称**: 班干部管理
-**模块标识**: xg:classCadre
-**版本**: V1.0.0
-**创建时间**: 2025-01-08
-**更新时间**: 2025-01-08
-
-## 功能描述
-
-班干部管理模块提供完整的班级干部信息管理功能,包括班干部的任命、免职、调任、续任、辞职等全生命周期管理,以及统计分析和查询功能。
-
-## 核心功能
-
-- **基础管理**: 班干部信息的增删改查、导入导出
-- **任免操作**: 任命、免职、调任、续任、辞职等操作
-- **查询功能**: 按班级、学生、职务等多维度查询
-- **统计分析**: 班干部统计数据和图表分析
-- **权限控制**: 完整的角色权限管理
-
-## API接口列表
-
-### 基础管理接口
-
-#### 1. 获取班干部列表
-```http
-GET /xg-xx/classCadre/list
-```
-
-**权限要求**: `xg:classCadre:list`
-
-**请求参数**:
-```json
-{
- "pageNum": 1,
- "pageSize": 10,
- "studentId": "学生ID",
- "classId": "班级ID",
- "positionId": "职务ID",
- "positionLevel": "职务级别",
- "status": "任职状态",
- "isCurrent": "是否现任",
- "startDate": "开始日期",
- "endDate": "结束日期"
-}
-```
-
-**响应示例**:
-```json
-{
- "code": 200,
- "msg": "查询成功",
- "rows": [
- {
- "id": "1234567890123456789",
- "studentId": "1001",
- "studentName": "张三",
- "classId": "C001",
- "className": "计算机一班",
- "positionId": "P001",
- "positionName": "班长",
- "positionLevel": 1,
- "status": "在任",
- "isCurrent": true,
- "startDate": "2024-09-01",
- "endDate": "2025-07-01",
- "termMonths": 10,
- "workPerformance": "优秀",
- "phoneNumber": "13800138000",
- "email": "zhangsan@example.com",
- "createTime": "2024-09-01 10:00:00"
- }
- ],
- "total": 100
-}
-```
-
-#### 2. 获取班干部详情
-```http
-GET /xg-xx/classCadre/{id}
-```
-
-**权限要求**: `xg:classCadre:query`
-
-**路径参数**:
-- `id`: 班干部记录ID
-
-**响应示例**:
-```json
-{
- "code": 200,
- "msg": "查询成功",
- "data": {
- "id": "1234567890123456789",
- "studentId": "1001",
- "studentName": "张三",
- "classId": "C001",
- "className": "计算机一班",
- "positionId": "P001",
- "positionName": "班长",
- "positionLevel": 1,
- "status": "在任",
- "isCurrent": true,
- "startDate": "2024-09-01",
- "endDate": "2025-07-01",
- "termMonths": 10,
- "workPerformance": "优秀",
- "phoneNumber": "13800138000",
- "email": "zhangsan@example.com",
- "responsibilities": "负责班级日常管理工作",
- "permissions": "班级活动组织权限",
- "createTime": "2024-09-01 10:00:00"
- }
-}
-```
-
-#### 3. 新增班干部
-```http
-POST /xg-xx/classCadre
-```
-
-**权限要求**: `xg:classCadre:add`
-
-**请求体**:
-```json
-{
- "studentId": "1001",
- "classId": "C001",
- "positionId": "P001",
- "startDate": "2024-09-01",
- "endDate": "2025-07-01",
- "termMonths": 10,
- "workPerformance": "良好",
- "phoneNumber": "13800138000",
- "email": "zhangsan@example.com",
- "responsibilities": "负责班级日常管理工作",
- "permissions": "班级活动组织权限",
- "remark": "备注信息"
-}
-```
-
-**响应示例**:
-```json
-{
- "code": 200,
- "msg": "新增成功"
-}
-```
-
-#### 4. 修改班干部
-```http
-PUT /xg-xx/classCadre
-```
-
-**权限要求**: `xg:classCadre:edit`
-
-**请求体**:
-```json
-{
- "id": "1234567890123456789",
- "studentId": "1001",
- "classId": "C001",
- "positionId": "P001",
- "startDate": "2024-09-01",
- "endDate": "2025-07-01",
- "termMonths": 10,
- "workPerformance": "优秀",
- "phoneNumber": "13800138000",
- "email": "zhangsan@example.com",
- "responsibilities": "负责班级日常管理工作",
- "permissions": "班级活动组织权限",
- "remark": "备注信息"
-}
-```
-
-#### 5. 删除班干部
-```http
-DELETE /xg-xx/classCadre/{ids}
-```
-
-**权限要求**: `xg:classCadre:remove`
-
-**路径参数**:
-- `ids`: 班干部记录ID,多个用逗号分隔
-
-#### 6. 导出班干部数据
-```http
-POST /xg-xx/classCadre/export
-```
-
-**权限要求**: `xg:classCadre:export`
-
-**请求体**: 同列表查询参数
-
-**响应**: Excel文件下载
-
-### 业务功能接口
-
-#### 7. 按班级查询班干部
-```http
-GET /xg-xx/classCadre/listByClass/{classId}
-```
-
-**权限要求**: `xg:classCadre:queryByClass`
-
-**路径参数**:
-- `classId`: 班级ID
-
-#### 8. 按学生查询班干部
-```http
-GET /xg-xx/classCadre/listByStudent/{studentId}
-```
-
-**权限要求**: `xg:classCadre:queryByStudent`
-
-**路径参数**:
-- `studentId`: 学生ID
-
-#### 9. 按职务查询班干部
-```http
-GET /xg-xx/classCadre/listByPosition/{positionId}
-```
-
-**权限要求**: `xg:classCadre:queryByPosition`
-
-**路径参数**:
-- `positionId`: 职务ID
-
-#### 10. 获取我的班干部信息
-```http
-GET /xg-xx/classCadre/myInfo
-```
-
-**权限要求**: `xg:classCadre:query`
-
-#### 11. 获取待处理任务
-```http
-GET /xg-xx/classCadre/pendingTasks
-```
-
-**权限要求**: `xg:classCadre:query`
-
-#### 12. 获取可用职务选项
-```http
-GET /xg-xx/classCadre/availablePositions
-```
-
-**权限要求**: `xg:classCadre:query`
-
-### 任免操作接口
-
-#### 13. 任命班干部
-```http
-POST /xg-xx/classCadre/appoint
-```
-
-**权限要求**: `xg:classCadre:appoint`
-
-**请求体**:
-```json
-{
- "studentId": "1001",
- "classId": "C001",
- "positionId": "P001",
- "startDate": "2024-09-01",
- "endDate": "2025-07-01",
- "reason": "任命原因",
- "remark": "备注信息"
-}
-```
-
-#### 14. 免职班干部
-```http
-POST /xg-xx/classCadre/dismiss
-```
-
-**权限要求**: `xg:classCadre:dismiss`
-
-**请求体**:
-```json
-{
- "id": "1234567890123456789",
- "reason": "免职原因",
- "effectiveDate": "2024-12-01",
- "remark": "备注信息"
-}
-```
-
-#### 15. 调任班干部
-```http
-POST /xg-xx/classCadre/transfer
-```
-
-**权限要求**: `xg:classCadre:transfer`
-
-**请求体**:
-```json
-{
- "id": "1234567890123456789",
- "newPositionId": "P002",
- "reason": "调任原因",
- "effectiveDate": "2024-12-01",
- "remark": "备注信息"
-}
-```
-
-#### 16. 续任班干部
-```http
-POST /xg-xx/classCadre/renew
-```
-
-**权限要求**: `xg:classCadre:renew`
-
-**请求体**:
-```json
-{
- "id": "1234567890123456789",
- "newEndDate": "2025-12-01",
- "reason": "续任原因",
- "remark": "备注信息"
-}
-```
-
-#### 17. 辞职申请
-```http
-POST /xg-xx/classCadre/resign
-```
-
-**权限要求**: `xg:classCadre:resign`
-
-**请求体**:
-```json
-{
- "id": "1234567890123456789",
- "reason": "辞职原因",
- "effectiveDate": "2024-12-01",
- "remark": "备注信息"
-}
-```
-
-### 统计查询接口
-
-#### 18. 获取统计数据
-```http
-GET /xg-xx/classCadre/statistics
-```
-
-**权限要求**: `xg:classCadre:statistics`
-
-**请求参数**:
-```json
-{
- "collegeId": "学院ID",
- "gradeId": "年级ID",
- "startDate": "开始日期",
- "endDate": "结束日期"
-}
-```
-
-**响应示例**:
-```json
-{
- "code": 200,
- "msg": "查询成功",
- "data": {
- "totalCount": 500,
- "currentCount": 450,
- "excellentCount": 200,
- "expiringSoonCount": 50,
- "positionDistribution": [
- {"positionName": "班长", "count": 50},
- {"positionName": "副班长", "count": 45}
- ],
- "statusDistribution": [
- {"status": "在任", "count": 450},
- {"status": "已免职", "count": 30}
- ],
- "collegeStatistics": [
- {"collegeName": "计算机学院", "count": 100},
- {"collegeName": "机械学院", "count": 80}
- ]
- }
-}
-```
-
-#### 19. 获取按学院统计
-```http
-GET /xg-xx/classCadre/statisticsByCollege
-```
-
-**权限要求**: `xg:classCadre:statistics`
-
-#### 20. 获取按年级统计
-```http
-GET /xg-xx/classCadre/statisticsByGrade
-```
-
-**权限要求**: `xg:classCadre:statistics`
-
-#### 21. 获取到期提醒
-```http
-GET /xg-xx/classCadre/expiringReminder
-```
-
-**权限要求**: `xg:classCadre:expireReminder`
-
-**请求参数**:
-```json
-{
- "days": 30
-}
-```
-
-### 辅助功能接口
-
-#### 22. 批量操作
-```http
-POST /xg-xx/classCadre/batch
-```
-
-**权限要求**: `xg:classCadre:batch`
-
-**请求体**:
-```json
-{
- "operation": "dismiss",
- "ids": ["id1", "id2", "id3"],
- "reason": "批量操作原因",
- "effectiveDate": "2024-12-01"
-}
-```
-
-#### 23. 数据校验
-```http
-POST /xg-xx/classCadre/validate
-```
-
-**权限要求**: `xg:classCadre:validate`
-
-**请求体**:
-```json
-{
- "studentId": "1001",
- "classId": "C001",
- "positionId": "P001",
- "startDate": "2024-09-01",
- "endDate": "2025-07-01"
-}
-```
-
-## 数据模型
-
-### 班干部信息 (XgClassCadre)
-
-| 字段名 | 类型 | 说明 | 必填 |
-|--------|------|------|------|
-| id | Long | 主键ID | 是 |
-| studentId | String | 学生ID | 是 |
-| studentName | String | 学生姓名 | 是 |
-| classId | String | 班级ID | 是 |
-| className | String | 班级名称 | 是 |
-| positionId | String | 职务ID | 是 |
-| positionName | String | 职务名称 | 是 |
-| positionLevel | Integer | 职务级别 | 是 |
-| status | String | 任职状态 | 是 |
-| isCurrent | Boolean | 是否现任 | 是 |
-| startDate | Date | 任职开始日期 | 是 |
-| endDate | Date | 任职结束日期 | 否 |
-| termMonths | Integer | 任期月数 | 否 |
-| workPerformance | String | 工作表现 | 否 |
-| phoneNumber | String | 联系电话 | 否 |
-| email | String | 邮箱地址 | 否 |
-| responsibilities | String | 职责描述 | 否 |
-| permissions | String | 权限描述 | 否 |
-| remark | String | 备注 | 否 |
-
-### 班干部变更记录 (XgCadreChangeLog)
-
-| 字段名 | 类型 | 说明 | 必填 |
-|--------|------|------|------|
-| id | Long | 主键ID | 是 |
-| cadreId | Long | 班干部ID | 是 |
-| operationType | String | 操作类型 | 是 |
-| oldPositionId | String | 原职务ID | 否 |
-| newPositionId | String | 新职务ID | 否 |
-| reason | String | 变更原因 | 否 |
-| effectiveDate | Date | 生效日期 | 是 |
-| operatorId | Long | 操作人ID | 是 |
-| operatorName | String | 操作人姓名 | 是 |
-| remark | String | 备注 | 否 |
-
-### 班干部职务配置 (XgCadrePositionConfig)
-
-| 字段名 | 类型 | 说明 | 必填 |
-|--------|------|------|------|
-| id | Long | 主键ID | 是 |
-| positionCode | String | 职务代码 | 是 |
-| positionName | String | 职务名称 | 是 |
-| positionLevel | Integer | 职务级别 | 是 |
-| maxCount | Integer | 最大人数 | 是 |
-| responsibilities | String | 职责描述 | 否 |
-| permissions | String | 权限描述 | 否 |
-| isActive | Boolean | 是否启用 | 是 |
-| sortOrder | Integer | 排序 | 是 |
-| remark | String | 备注 | 否 |
-
-## 状态码说明
-
-### 任职状态 (status)
-- `draft`: 草稿
-- `waiting`: 待审核
-- `complete`: 在任
-- `expired`: 已到期
-- `dismissed`: 已免职
-- `transferred`: 已调任
-- `resigned`: 已辞职
-
-### 操作类型 (operationType)
-- `appoint`: 任命
-- `dismiss`: 免职
-- `transfer`: 调任
-- `renew`: 续任
-- `resign`: 辞职
-- `modify`: 修改
-
-### 工作表现 (workPerformance)
-- `excellent`: 优秀
-- `good`: 良好
-- `average`: 一般
-- `poor`: 较差
-
-## 权限说明
-
-### 角色权限分配
-
-| 角色 | 权限范围 | 说明 |
-|------|----------|------|
-| 超级管理员 | 全部权限 | 所有操作权限 |
-| 学生处管理员 | 全部权限 | 所有操作权限 |
-| 二级学院管理员 | 除删除外的权限 | 不能删除班干部记录 |
-| 辅导员 | 基础管理和任免权限 | 可进行班干部任免操作 |
-| 班级教师 | 查看和统计权限 | 只能查看相关信息 |
-| 学生 | 仅查看权限 | 只能查看班干部信息 |
-
-### 权限标识列表
-
-| 权限标识 | 权限名称 | 说明 |
-|----------|----------|------|
-| xg:classCadre:list | 班干部列表 | 查看班干部列表 |
-| xg:classCadre:query | 班干部查询 | 查询班干部详情 |
-| xg:classCadre:add | 班干部新增 | 新增班干部 |
-| xg:classCadre:edit | 班干部修改 | 修改班干部信息 |
-| xg:classCadre:remove | 班干部删除 | 删除班干部记录 |
-| xg:classCadre:export | 班干部导出 | 导出班干部数据 |
-| xg:classCadre:import | 班干部导入 | 导入班干部数据 |
-| xg:classCadre:appoint | 班干部任命 | 任命班干部 |
-| xg:classCadre:dismiss | 班干部免职 | 免职班干部 |
-| xg:classCadre:transfer | 班干部调任 | 调任班干部 |
-| xg:classCadre:renew | 班干部续任 | 续任班干部 |
-| xg:classCadre:resign | 班干部辞职 | 辞职申请 |
-| xg:classCadre:statistics | 统计查看 | 查看统计数据 |
-| xg:classCadre:batch | 批量操作 | 批量处理 |
-| xg:classCadre:validate | 数据校验 | 数据有效性校验 |
-
-## 错误码说明
-
-| 错误码 | 错误信息 | 说明 |
-|--------|----------|------|
-| 40001 | 学生不存在 | 指定的学生ID不存在 |
-| 40002 | 班级不存在 | 指定的班级ID不存在 |
-| 40003 | 职务不存在 | 指定的职务ID不存在 |
-| 40004 | 学生已担任该职务 | 学生已经担任该职务 |
-| 40005 | 职务人数已满 | 该职务已达到最大人数限制 |
-| 40006 | 任职日期冲突 | 任职时间与现有记录冲突 |
-| 40007 | 班干部记录不存在 | 指定的班干部记录不存在 |
-| 40008 | 操作权限不足 | 当前用户没有操作权限 |
-| 40009 | 数据校验失败 | 提交的数据不符合规则 |
-| 40010 | 批量操作失败 | 批量操作部分失败 |
-
-## 使用示例
-
-### 1. 查询班级班干部
-```javascript
-// 查询计算机一班的所有班干部
-const response = await api.get('/xg-xx/classCadre/listByClass/C001');
-console.log(response.data);
-```
-
-### 2. 任命班干部
-```javascript
-// 任命张三为班长
-const appointData = {
- studentId: '1001',
- classId: 'C001',
- positionId: 'P001',
- startDate: '2024-09-01',
- endDate: '2025-07-01',
- reason: '综合表现优秀,具备领导能力'
-};
-const response = await api.post('/xg-xx/classCadre/appoint', appointData);
-```
-
-### 3. 获取统计数据
-```javascript
-// 获取计算机学院的班干部统计
-const response = await api.get('/xg-xx/classCadre/statistics', {
- params: { collegeId: 'COL001' }
-});
-console.log(response.data);
-```
-
-## 注意事项
-
-1. **数据一致性**: 班干部信息与学生信息、班级信息保持一致
-2. **权限控制**: 严格按照角色权限进行操作控制
-3. **变更记录**: 所有重要操作都会记录变更日志
-4. **任期管理**: 注意任期时间的合理性和连续性
-5. **状态管理**: 正确维护班干部的任职状态
-6. **并发控制**: 防止同时操作导致的数据冲突
-
-## 更新日志
-
-| 版本 | 日期 | 更新内容 |
-|------|------|----------|
-| V1.0.0 | 2025-01-08 | 初始版本,完整的班干部管理API |
-
----
-
-**文档维护**: Cursor AI 辅助
-**最后更新**: 2025-01-08
-**文档状态**: 已完成
\ No newline at end of file
diff --git a/docs/开发文档/API/班级教师关联管理API.md b/docs/开发文档/API/班级教师关联管理API.md
deleted file mode 100644
index 6f3eec03..00000000
--- a/docs/开发文档/API/班级教师关联管理API.md
+++ /dev/null
@@ -1,299 +0,0 @@
-# 班级教师关联管理API文档
-
-## 文档信息
-- **模块名称**: 班级教师关联管理
-- **版本**: 1.0.1
-- **最后更新**: 2025-07-24
-- **更新人**: zlwu
-
-## API概览
-
-本文档主要描述班级与教师(班主任/辅导员)关联的相关API接口,提供班主任和辅导员的设置、更新、查询等功能。
-
-### 基础数据结构
-
-#### 班级教师关联对象 (XgClassTeacherCounselorRelBo)
-
-| 字段名 | 类型 | 必填 | 描述 |
-| --- | --- | --- | --- |
-| id | Long | 否(新增)/是(修改) | 主键ID |
-| classId | Long | 是 | 班级ID |
-| teacherId | Long | 否 | 班主任ID |
-| teacherName | String | 否 | 班主任姓名 |
-| counselorId | Long | 否 | 辅导员ID |
-| counselorName | String | 否 | 辅导员姓名 |
-| relationType | Integer | 是 | 关联类型: 1-班主任, 2-辅导员 |
-| startDate | Date | 否 | 开始日期 |
-| endDate | Date | 否 | 结束日期 |
-| remark | String | 否 | 备注信息 |
-| createTime | Date | 是 | 创建时间 |
-| createBy | Long | 是 | 创建者 |
-| updateTime | Date | 是 | 更新时间 |
-| updateBy | Long | 是 | 更新者 |
-
-## 接口列表
-
-### 1. 查询班级教师关联列表
-
-- **接口URL**: `/teacherCounselorRel/classTeacherCounselorRel/list`
-- **请求方式**: GET
-- **权限标识**: `teacherCounselorRel:classTeacherCounselorRel:list`
-
-#### 请求参数
-
-| 参数名 | 类型 | 必填 | 位置 | 描述 |
-| --- | --- | --- | --- | --- |
-| classId | Long | 否 | query | 班级ID |
-| relationType | Integer | 否 | query | 关联类型: 1-班主任, 2-辅导员 |
-| pageNum | Integer | 否 | query | 当前页码, 默认为1 |
-| pageSize | Integer | 否 | query | 每页数量, 默认为10 |
-
-#### 响应结果
-
-```json
-{
- "total": 100,
- "rows": [
- {
- "id": 1,
- "classId": 1001,
- "teacherId": 2001,
- "teacherName": "张老师",
- "counselorId": 3001,
- "counselorName": "李辅导员",
- "relationType": 1,
- "remark": "高一年级班主任",
- "createTime": "2025-07-01 10:00:00",
- "createBy": 1,
- "updateTime": "2025-07-20 15:30:00",
- "updateBy": 1
- }
- ],
- "code": 200,
- "msg": "查询成功"
-}
-```
-
-### 2. 获取班级教师关联详情
-
-- **接口URL**: `/teacherCounselorRel/classTeacherCounselorRel/{id}`
-- **请求方式**: GET
-- **权限标识**: `teacherCounselorRel:classTeacherCounselorRel:query`
-
-#### 请求参数
-
-| 参数名 | 类型 | 必填 | 位置 | 描述 |
-| --- | --- | --- | --- | --- |
-| id | Long | 是 | path | 关联ID |
-
-#### 响应结果
-
-```json
-{
- "code": 200,
- "data": {
- "id": 1,
- "classId": 1001,
- "teacherId": 2001,
- "teacherName": "张老师",
- "counselorId": 3001,
- "counselorName": "李辅导员",
- "relationType": 1,
- "remark": "高一年级班主任",
- "createTime": "2025-07-01 10:00:00",
- "createBy": 1,
- "updateTime": "2025-07-20 15:30:00",
- "updateBy": 1
- },
- "msg": "操作成功"
-}
-```
-
-### 3. 新增班级教师关联
-
-- **接口URL**: `/teacherCounselorRel/classTeacherCounselorRel`
-- **请求方式**: POST
-- **权限标识**: `teacherCounselorRel:classTeacherCounselorRel:add`
-
-#### 请求参数
-
-| 参数名 | 类型 | 必填 | 位置 | 描述 |
-| --- | --- | --- | --- | --- |
-| classId | Long | 是 | body | 班级ID |
-| teacherId | Long | 否 | body | 班主任ID |
-| teacherName | String | 否 | body | 班主任姓名 |
-| counselorId | Long | 否 | body | 辅导员ID |
-| counselorName | String | 否 | body | 辅导员姓名 |
-| relationType | Integer | 是 | body | 关联类型: 1-班主任, 2-辅导员 |
-| remark | String | 否 | body | 备注信息 |
-
-#### 请求示例
-
-```json
-{
- "classId": 1001,
- "teacherId": 2001,
- "teacherName": "张老师",
- "relationType": 1,
- "remark": "高一年级班主任"
-}
-```
-
-#### 响应结果
-
-```json
-{
- "code": 200,
- "msg": "操作成功"
-}
-```
-
-### 4. 修改班级教师关联
-
-- **接口URL**: `/teacherCounselorRel/classTeacherCounselorRel`
-- **请求方式**: PUT
-- **权限标识**: `teacherCounselorRel:classTeacherCounselorRel:edit`
-
-#### 请求参数
-
-| 参数名 | 类型 | 必填 | 位置 | 描述 |
-| --- | --- | --- | --- | --- |
-| id | Long | 是 | body | 关联ID |
-| classId | Long | 否 | body | 班级ID |
-| teacherId | Long | 否 | body | 班主任ID |
-| teacherName | String | 否 | body | 班主任姓名 |
-| counselorId | Long | 否 | body | 辅导员ID |
-| counselorName | String | 否 | body | 辅导员姓名 |
-| relationType | Integer | 否 | body | 关联类型: 1-班主任, 2-辅导员 |
-| remark | String | 否 | body | 备注信息 |
-
-#### 班主任更换机制
-
-当通过此接口更换班主任时(relationType=1),系统会执行以下操作:
-
-1. 将当前班级的所有未删除的班主任记录标记为已删除(deleted=1)
-2. 设置原班主任记录的结束日期(endDate)为当前日期时间
-3. 创建新的班主任关联记录,设置开始日期(startDate)为当前日期时间
-4. 同步更新班级表中的班主任信息
-
-这样确保了班主任更换记录的完整性,可以通过查看历史记录追踪班级班主任的变更情况。
-
-#### 请求示例
-
-```json
-{
- "id": 1,
- "classId": 1001,
- "teacherId": 2002,
- "teacherName": "王老师",
- "relationType": 1,
- "remark": "高一年级新班主任"
-}
-```
-
-#### 响应结果
-
-```json
-{
- "code": 200,
- "msg": "操作成功"
-}
-```
-
-### 5. 删除班级教师关联
-
-- **接口URL**: `/teacherCounselorRel/classTeacherCounselorRel/{ids}`
-- **请求方式**: DELETE
-- **权限标识**: `teacherCounselorRel:classTeacherCounselorRel:remove`
-
-#### 请求参数
-
-| 参数名 | 类型 | 必填 | 位置 | 描述 |
-| --- | --- | --- | --- | --- |
-| ids | Long[] | 是 | path | 关联ID数组,多个以英文逗号分隔 |
-
-#### 响应结果
-
-```json
-{
- "code": 200,
- "msg": "操作成功"
-}
-```
-
-### 6. 导出班级教师关联数据
-
-- **接口URL**: `/teacherCounselorRel/classTeacherCounselorRel/export`
-- **请求方式**: POST
-- **权限标识**: `teacherCounselorRel:classTeacherCounselorRel:export`
-- **响应类型**: application/vnd.ms-excel
-
-#### 请求参数
-
-| 参数名 | 类型 | 必填 | 位置 | 描述 |
-| --- | --- | --- | --- | --- |
-| classId | Long | 否 | query | 班级ID |
-| relationType | Integer | 否 | query | 关联类型: 1-班主任, 2-辅导员 |
-
-## 前端调用示例
-
-### 设置班主任
-
-```typescript
-// 导入API
-import { addClassTeacherCounselorRel } from '@/api/xg/classTeacherCounselorRel';
-
-// 构造数据
-const teacherRelData = {
- classId: classId,
- teacherId: teacherId,
- teacherName: teacherName,
- relationType: 1 // 1表示班主任类型
-};
-
-// 调用API
-try {
- await addClassTeacherCounselorRel(teacherRelData);
- this.$modal.msgSuccess('班主任设置成功');
-} catch (error) {
- this.$modal.msgError('设置失败,请重试');
-}
-```
-
-### 设置辅导员
-
-```typescript
-// 导入API
-import { addClassTeacherCounselorRel } from '@/api/xg/classTeacherCounselorRel';
-
-// 构造数据
-const counselorRelData = {
- classId: classId,
- counselorId: counselorId,
- counselorName: counselorName,
- relationType: 2 // 2表示辅导员类型
-};
-
-// 调用API
-try {
- await addClassTeacherCounselorRel(counselorRelData);
- this.$modal.msgSuccess('辅导员设置成功');
-} catch (error) {
- this.$modal.msgError('设置失败,请重试');
-}
-```
-
-## 错误码说明
-
-| 错误码 | 描述 | 解决方案 |
-| --- | --- | --- |
-| 400 | 请求参数错误 | 检查请求参数是否正确 |
-| 401 | 未授权 | 检查登录状态和权限 |
-| 500 | 服务器内部错误 | 联系管理员 |
-
-## 更新记录
-
-| 日期 | 更新人 | 版本 | 变更内容 |
-| --- | --- | --- | --- |
-| 2025-07-24 | zlwu | 1.0.1 | 添加班主任更换机制说明,补充开始/结束日期字段 |
-| 2025-07-24 | zlwu | 1.0.0 | 初始版本 |
\ No newline at end of file
diff --git a/docs/开发文档/移动端iconfont图标使用指南.md b/docs/开发文档/移动端iconfont图标使用指南.md
deleted file mode 100644
index dea24ea3..00000000
--- a/docs/开发文档/移动端iconfont图标使用指南.md
+++ /dev/null
@@ -1,351 +0,0 @@
-# 移动端 iconfont 图标使用指南
-
-## 📋 概述
-
-本项目已集成 iconfont.cn 图标字体库,提供丰富的矢量图标,替代 emoji 和 uview-plus 图标,确保跨平台兼容性。
-
-## 🎯 解决的问题
-
-- **uview-plus 图标显示异常**:u-icon 组件在某些环境下显示为横线
-- **emoji 兼容性问题**:不同设备和系统 emoji 显示效果不一致
-- **图标扩展性**:iconfont 提供更丰富的图标选择
-
-## 📦 安装配置
-
-### 1. 字体文件配置
-
-**文件位置**:`mobile/src/static/fonts/iconfont.css`
-
-```css
-@font-face {
- font-family: 'iconfont';
- src: url('//at.alicdn.com/t/c/font_4793979_9m3yqql3ybj.woff2?t=1704153600') format('woff2'), url('//at.alicdn.com/t/c/font_4793979_9m3yqql3ybj.woff?t=1704153600')
- format('woff'),
- url('//at.alicdn.com/t/c/font_4793979_9m3yqql3ybj.ttf?t=1704153600') format('truetype');
-}
-
-.iconfont {
- font-family: 'iconfont' !important;
- font-size: 16px;
- font-style: normal;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-}
-```
-
-### 2. 全局引入
-
-**文件位置**:`mobile/src/main.js`
-
-```javascript
-// 导入 iconfont 样式
-import '@/static/fonts/iconfont.css';
-```
-
-## 🎨 可用图标列表
-
-### 基础图标
-
-| 图标 | 类名 | 说明 | 编码 |
-| ---- | ---------------- | -------- | ------- |
-| 👤 | `icon-user` | 用户 | `\e7ae` |
-| 🔒 | `icon-lock` | 锁定 | `\e60e` |
-| 👁️ | `icon-eye` | 显示密码 | `\e61c` |
-| 🙈 | `icon-eye-close` | 隐藏密码 | `\e61d` |
-
-### 操作图标
-
-| 图标 | 类名 | 说明 | 编码 |
-| ---- | ------------- | ---- | ------- |
-| 🚪 | `icon-login` | 登录 | `\e612` |
-| 🔍 | `icon-search` | 搜索 | `\e6b4` |
-| ➕ | `icon-add` | 添加 | `\e6a4` |
-| ✅ | `icon-check` | 确认 | `\e6a8` |
-| ❌ | `icon-close` | 关闭 | `\e6a9` |
-
-### 导航图标
-
-| 图标 | 类名 | 说明 | 编码 |
-| ---- | ------------------ | ------ | ------- |
-| 🏠 | `icon-home` | 首页 | `\e65e` |
-| 💬 | `icon-message` | 消息 | `\e6a7` |
-| ⚙️ | `icon-setting` | 设置 | `\e6b8` |
-| ➡️ | `icon-arrow-right` | 箭头右 | `\e6a3` |
-
-### 联系图标
-
-| 图标 | 类名 | 说明 | 编码 |
-| ---- | ------------ | ---- | ------- |
-| 📞 | `icon-phone` | 电话 | `\e69a` |
-| 📧 | `icon-mail` | 邮箱 | `\e692` |
-
-## 🚀 使用方法
-
-### 1. 基础用法
-
-```vue
-
-
-
-
-
-
-
-
-
-
-```
-
-### 2. 登录表单中的应用
-
-```vue
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-```
-
-### 3. 动态图标切换
-
-```vue
-
-
-
-
-
-
-
-```
-
-## 🎨 样式自定义
-
-### 1. 基础样式属性
-
-```css
-.iconfont {
- /* 字体大小 */
- font-size: 16px;
-
- /* 颜色 */
- color: #333;
-
- /* 其他样式 */
- opacity: 0.8;
- transition: all 0.3s ease;
-}
-```
-
-### 2. 响应式设计
-
-```css
-/* 小屏幕 */
-@media (max-width: 375px) {
- .iconfont {
- font-size: 14px;
- }
-}
-
-/* 大屏幕 */
-@media (min-width: 768px) {
- .iconfont {
- font-size: 20px;
- }
-}
-```
-
-### 3. 主题适配
-
-```css
-/* 亮色主题 */
-.light-theme .iconfont {
- color: #333;
-}
-
-/* 暗色主题 */
-.dark-theme .iconfont {
- color: #fff;
-}
-```
-
-## 🔧 扩展图标
-
-### 1. 从 iconfont.cn 添加新图标
-
-1. **访问项目**:打开 [iconfont.cn](https://www.iconfont.cn/) 的项目页面
-2. **选择图标**:浏览并添加需要的图标到项目
-3. **生成代码**:下载新的字体文件和 CSS 代码
-4. **更新项目**:替换 `iconfont.css` 中的字体链接和图标类名
-
-### 2. 图标命名规范
-
-```css
-/* 建议的命名格式 */
-.icon-[功能]-[状态]
-
-例如:
-.icon-user /* 用户图标 */
-.icon-eye-open /* 眼睛打开 */
-.icon-eye-close /* 眼睛关闭 */
-.icon-arrow-left /* 左箭头 */
-.icon-arrow-right; /* 右箭头 */
-```
-
-## 📱 演示页面
-
-**页面位置**:`mobile/src/pages/iconfont-demo/index.vue`
-
-访问路径:`/pages/iconfont-demo/index`
-
-演示页面包含:
-
-- 所有可用图标的预览
-- 图标分类展示(基础、操作、导航、联系)
-- 使用代码示例
-- 自定义样式演示
-
-## ⚠️ 注意事项
-
-### 1. 兼容性
-
-- ✅ **支持平台**:H5、微信小程序、App、支付宝小程序
-- ✅ **浏览器支持**:Chrome、Safari、Firefox、Edge
-- ✅ **设备支持**:iOS、Android、HarmonyOS
-
-### 2. 性能优化
-
-```css
-/* 字体预加载 */
-.iconfont {
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-}
-```
-
-### 3. 缓存策略
-
-- 字体文件使用 CDN 加载,自动缓存
-- 本地 CSS 文件确保离线可用
-- 建议定期更新字体链接时间戳
-
-### 4. 回退方案
-
-```vue
-
-
-
-
- 用户
-
-
-
-
-```
-
-## 📚 相关文件
-
-- **样式文件**:`mobile/src/static/fonts/iconfont.css`
-- **演示页面**:`mobile/src/pages/iconfont-demo/index.vue`
-- **登录页面**:`mobile/src/pages/login/index.vue`
-- **配置文件**:`mobile/src/main.js`
-
-## 🎯 最佳实践
-
-1. **统一使用**:项目中统一使用 iconfont,避免混用多种图标方案
-2. **语义化命名**:使用有意义的类名,便于维护
-3. **适当大小**:根据使用场景选择合适的字体大小
-4. **颜色一致**:遵循设计规范,保持图标颜色的一致性
-5. **性能考虑**:避免一次性加载过多不使用的图标
-
-## 📝 更新日志
-
-- **2025-07-01**:初始版本,集成 iconfont 字体库
-- **预计扩展**:根据业务需求持续添加新图标
-
----
-
-**维护者**:移动端开发团队
-**更新时间**:2025-07-01
diff --git a/docs/设计文档/database/hzdyjs_xg0819.sql b/docs/设计文档/database/hzdyjs_xg0819.sql
new file mode 100644
index 00000000..517759f9
--- /dev/null
+++ b/docs/设计文档/database/hzdyjs_xg0819.sql
@@ -0,0 +1,6721 @@
+/*
+ Navicat Premium Dump SQL
+
+ Source Server : 47.99.164.66 hn02le.34lkdLKD
+ Source Server Type : MySQL
+ Source Server Version : 50736 (5.7.36)
+ Source Host : 47.99.164.66:3306
+ Source Schema : hzdyjs_xg
+
+ Target Server Type : MySQL
+ Target Server Version : 50736 (5.7.36)
+ File Encoding : 65001
+
+ Date: 18/08/2025 10:03:53
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for cw_application_attachment
+-- ----------------------------
+DROP TABLE IF EXISTS `cw_application_attachment`;
+CREATE TABLE `cw_application_attachment` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申报ID',
+ `application_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申报编号',
+ `file_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件名称',
+ `file_original_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原始文件名',
+ `file_type` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件类型(pdf,doc,docx,xls,xlsx,jpg,png等)',
+ `file_size` bigint(20) DEFAULT NULL COMMENT '文件大小(字节)',
+ `file_path` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件存储路径',
+ `file_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件访问URL',
+ `attachment_type` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '附件类型(feasibility_report-可行性研究报告 implementation_plan-项目实施方案 budget_calculation-资金测算明细表 other_materials-其他相关证明材料)',
+ `attachment_type_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '附件类型名称',
+ `description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件说明',
+ `upload_user_id` bigint(20) NOT NULL COMMENT '上传人ID',
+ `upload_user_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '上传人姓名',
+ `upload_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '上传时间',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序',
+ `status` char(1) COLLATE utf8mb4_unicode_ci DEFAULT '1' COMMENT '状态(0-删除 1-正常)',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-正常 1-删除)',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ PRIMARY KEY (`id`),
+ KEY `idx_application_id` (`application_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='申报附件表';
+
+-- ----------------------------
+-- Table structure for cw_approval_record
+-- ----------------------------
+DROP TABLE IF EXISTS `cw_approval_record`;
+CREATE TABLE `cw_approval_record` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申报ID',
+ `application_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申报编号',
+ `node_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '节点编码(dept_approve-部门审批 finance_approve-财务审批 leader_approve-领导审批)',
+ `node_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '节点名称',
+ `node_order` int(11) NOT NULL COMMENT '节点顺序(1-部门审批 2-财务审批 3-领导审批)',
+ `approver_id` bigint(20) NOT NULL COMMENT '审批人ID',
+ `approver_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审批人姓名',
+ `is_delegate` tinyint(1) DEFAULT '0' COMMENT '是否代理审批(0-否 1-是)',
+ `original_approver_id` bigint(20) DEFAULT NULL COMMENT '原审批人ID(代理时使用)',
+ `original_approver_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原审批人姓名(代理时使用)',
+ `node_status` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '节点状态(waiting-等待审批 approving-审批中 approved-已通过 rejected-已拒绝 returned-已退回)',
+ `approve_action` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审批动作(approve-通过 reject-拒绝 return-退回)',
+ `approve_opinion` text COLLATE utf8mb4_unicode_ci COMMENT '审批意见',
+ `start_time` datetime NOT NULL COMMENT '节点开始时间',
+ `end_time` datetime DEFAULT NULL COMMENT '节点结束时间',
+ `expect_finish_time` datetime DEFAULT NULL COMMENT '期望完成时间',
+ `is_overtime` tinyint(1) DEFAULT '0' COMMENT '是否超时(0-否 1-是)',
+ `config_id` bigint(20) DEFAULT NULL COMMENT '使用的审批配置ID',
+ `config_snapshot` json DEFAULT NULL COMMENT '审批配置快照(JSON格式,记录当时的配置)',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-正常 1-删除)',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ PRIMARY KEY (`id`),
+ KEY `idx_application_id` (`application_id`),
+ KEY `idx_approver_id` (`approver_id`),
+ KEY `idx_node_status` (`node_status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='审批记录表';
+
+-- ----------------------------
+-- Table structure for cw_approver_config
+-- ----------------------------
+DROP TABLE IF EXISTS `cw_approver_config`;
+CREATE TABLE `cw_approver_config` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `config_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '配置名称',
+ `config_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '配置类型(global-全局配置 dept-按部门配置 amount-按金额配置)',
+ `dept_id` bigint(20) DEFAULT NULL COMMENT '部门ID(按部门配置时使用)',
+ `dept_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '部门名称(按部门配置时使用)',
+ `min_amount` decimal(15,2) DEFAULT NULL COMMENT '最小金额(按金额配置时使用,万元)',
+ `max_amount` decimal(15,2) DEFAULT NULL COMMENT '最大金额(按金额配置时使用,万元)',
+ `dept_approver_id` bigint(20) DEFAULT NULL COMMENT '部门审批人ID',
+ `dept_approver_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '部门审批人姓名',
+ `dept_delegate_id` bigint(20) DEFAULT NULL COMMENT '部门代理审批人ID',
+ `dept_delegate_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '部门代理审批人姓名',
+ `dept_delegate_start_time` datetime DEFAULT NULL COMMENT '部门代理开始时间',
+ `dept_delegate_end_time` datetime DEFAULT NULL COMMENT '部门代理结束时间',
+ `finance_approver_id` bigint(20) DEFAULT NULL COMMENT '财务审批人ID',
+ `finance_approver_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '财务审批人姓名',
+ `finance_delegate_id` bigint(20) DEFAULT NULL COMMENT '财务代理审批人ID',
+ `finance_delegate_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '财务代理审批人姓名',
+ `finance_delegate_start_time` datetime DEFAULT NULL COMMENT '财务代理开始时间',
+ `finance_delegate_end_time` datetime DEFAULT NULL COMMENT '财务代理结束时间',
+ `leader_approver_id` bigint(20) DEFAULT NULL COMMENT '领导审批人ID',
+ `leader_approver_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '领导审批人姓名',
+ `leader_delegate_id` bigint(20) DEFAULT NULL COMMENT '领导代理审批人ID',
+ `leader_delegate_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '领导代理审批人姓名',
+ `leader_delegate_start_time` datetime DEFAULT NULL COMMENT '领导代理开始时间',
+ `leader_delegate_end_time` datetime DEFAULT NULL COMMENT '领导代理结束时间',
+ `priority` int(11) DEFAULT '0' COMMENT '优先级(数字越大优先级越高,用于多个配置冲突时的选择)',
+ `status` char(1) COLLATE utf8mb4_unicode_ci DEFAULT '1' COMMENT '状态(0-禁用 1-启用)',
+ `effective_start_time` datetime DEFAULT NULL COMMENT '生效开始时间',
+ `effective_end_time` datetime DEFAULT NULL COMMENT '生效结束时间',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-正常 1-删除)',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ PRIMARY KEY (`id`),
+ KEY `idx_config_type` (`config_type`),
+ KEY `idx_dept_id` (`dept_id`),
+ KEY `idx_amount_range` (`min_amount`,`max_amount`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='审批人配置表';
+
+-- ----------------------------
+-- Table structure for cw_expenditure_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `cw_expenditure_detail`;
+CREATE TABLE `cw_expenditure_detail` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申报ID',
+ `application_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申报编号',
+ `category_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '支出科目编码(关联字典)',
+ `category` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '支出科目名称',
+ `amount` decimal(15,2) NOT NULL COMMENT '金额(万元)',
+ `calculation` text COLLATE utf8mb4_unicode_ci COMMENT '测算依据',
+ `description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '详细说明',
+ `current_year_amount` decimal(15,2) DEFAULT '0.00' COMMENT '当年执行金额(万元)',
+ `next_year_amount` decimal(15,2) DEFAULT '0.00' COMMENT '下年度金额(万元)',
+ `future_year_amount` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度金额(万元)',
+ `municipal_fiscal_amount` decimal(15,2) DEFAULT '0.00' COMMENT '市财政资金(万元)',
+ `self_funding_amount` decimal(15,2) DEFAULT '0.00' COMMENT '单位自筹(万元)',
+ `other_funding_amount` decimal(15,2) DEFAULT '0.00' COMMENT '其他资金(万元)',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序',
+ `status` char(1) COLLATE utf8mb4_unicode_ci DEFAULT '1' COMMENT '状态(0-删除 1-正常)',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-正常 1-删除)',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ PRIMARY KEY (`id`),
+ KEY `idx_application_id` (`application_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='项目支出明细表';
+
+-- ----------------------------
+-- Table structure for cw_performance_indicator
+-- ----------------------------
+DROP TABLE IF EXISTS `cw_performance_indicator`;
+CREATE TABLE `cw_performance_indicator` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申报ID',
+ `application_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申报编号',
+ `indicator_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '指标类型(quantity-数量指标 quality-质量指标 timeliness-时效指标 cost-成本指标 economic-经济效益指标 social-社会效益指标 environmental-环境效益指标 satisfaction-满意度指标)',
+ `indicator_type_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '指标类型名称',
+ `goal_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '绩效目标名称',
+ `target_value` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '目标值',
+ `weight_percentage` decimal(5,2) NOT NULL COMMENT '分值占比(%)',
+ `description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '详细说明',
+ `unit` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '计量单位',
+ `measurement_method` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '测量方法',
+ `data_source` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '数据来源',
+ `is_quantitative` tinyint(1) DEFAULT '1' COMMENT '是否定量指标(0-定性 1-定量)',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序',
+ `status` char(1) COLLATE utf8mb4_unicode_ci DEFAULT '1' COMMENT '状态(0-删除 1-正常)',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-正常 1-删除)',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ PRIMARY KEY (`id`),
+ KEY `idx_application_id` (`application_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='绩效指标表';
+
+-- ----------------------------
+-- Table structure for cw_project_application
+-- ----------------------------
+DROP TABLE IF EXISTS `cw_project_application`;
+CREATE TABLE `cw_project_application` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `application_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申报编号(自动生成,格式:CW-YYYY-MMDD-XXXX)',
+ `project_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目名称',
+ `principal` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目负责人',
+ `contact_phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '联系电话',
+ `start_date` date DEFAULT NULL COMMENT '项目实施开始时间',
+ `end_date` date DEFAULT NULL COMMENT '项目实施结束时间',
+ `target_sme` tinyint(1) DEFAULT '0' COMMENT '是否面向中小企业(0-否 1-是)',
+ `target_micro_sme` tinyint(1) DEFAULT '0' COMMENT '是否面向小微企业(0-否 1-是)',
+ `import_equipment` tinyint(1) DEFAULT '0' COMMENT '是否采购进口设备(0-否 1-是)',
+ `application_reason` text COLLATE utf8mb4_unicode_ci COMMENT '项目申请原因(包括设立依据、可行性及必要性)',
+ `construction_content` text COLLATE utf8mb4_unicode_ci COMMENT '项目建设内容',
+ `total_performance_goal` text COLLATE utf8mb4_unicode_ci COMMENT '绩效总目标',
+ `current_year_goal` text COLLATE utf8mb4_unicode_ci COMMENT '当年绩效目标',
+ `total_investment` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-合计(万元)',
+ `total_municipal_fiscal` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-市财政资金(万元)',
+ `total_self_funding` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-单位自筹(万元)',
+ `total_other_funding` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-其他(万元)',
+ `current_year_total` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-合计(万元)',
+ `current_year_municipal` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-市财政资金(万元)',
+ `current_year_self` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-单位自筹(万元)',
+ `current_year_other` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-其他(万元)',
+ `next_year_total` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-合计(万元)',
+ `next_year_municipal` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-市财政资金(万元)',
+ `next_year_self` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-单位自筹(万元)',
+ `next_year_other` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-其他(万元)',
+ `future_year_total` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-合计(万元)',
+ `future_year_municipal` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-市财政资金(万元)',
+ `future_year_self` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-单位自筹(万元)',
+ `future_year_other` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-其他(万元)',
+ `applicant_id` bigint(20) NOT NULL COMMENT '申请人ID',
+ `applicant_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请人姓名',
+ `department_id` bigint(20) NOT NULL COMMENT '所属部门ID',
+ `department_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '所属部门名称',
+ `approval_status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'draft' COMMENT '审批状态(draft-草稿 submitted-已提交 approving-审批中 approved-已通过 rejected-已拒绝 returned-已退回 cancelled-已取消)',
+ `submit_time` datetime DEFAULT NULL COMMENT '提交时间',
+ `approve_time` datetime DEFAULT NULL COMMENT '审批完成时间',
+ `year` int(11) NOT NULL COMMENT '预算年度',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-正常 1-删除)',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_application_no` (`application_no`,`tenant_id`,`deleted`),
+ KEY `idx_applicant_id` (`applicant_id`),
+ KEY `idx_department_id` (`department_id`),
+ KEY `idx_status_year` (`approval_status`,`year`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='项目预算申报表';
+
+-- ----------------------------
+-- Table structure for cw_project_application_backup_20250126
+-- ----------------------------
+DROP TABLE IF EXISTS `cw_project_application_backup_20250126`;
+CREATE TABLE `cw_project_application_backup_20250126` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `application_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申报编号(自动生成,格式:CW-YYYY-MMDD-XXXX)',
+ `project_name` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目名称',
+ `principal` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目负责人',
+ `contact_phone` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '联系电话',
+ `start_date` date DEFAULT NULL COMMENT '项目实施开始时间',
+ `end_date` date DEFAULT NULL COMMENT '项目实施结束时间',
+ `target_sme` tinyint(1) DEFAULT '0' COMMENT '是否面向中小企业(0-否 1-是)',
+ `target_micro_sme` tinyint(1) DEFAULT '0' COMMENT '是否面向小微企业(0-否 1-是)',
+ `import_equipment` tinyint(1) DEFAULT '0' COMMENT '是否采购进口设备(0-否 1-是)',
+ `application_reason` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '项目申请原因(包括设立依据、可行性及必要性)',
+ `construction_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '项目建设内容',
+ `total_performance_goal` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '绩效总目标',
+ `current_year_goal` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '当年绩效目标',
+ `total_investment` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-合计(万元)',
+ `total_municipal_fiscal` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-市财政资金(万元)',
+ `total_self_funding` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-单位自筹(万元)',
+ `total_other_funding` decimal(15,2) DEFAULT '0.00' COMMENT '项目总投资-其他(万元)',
+ `current_year_total` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-合计(万元)',
+ `current_year_municipal` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-市财政资金(万元)',
+ `current_year_self` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-单位自筹(万元)',
+ `current_year_other` decimal(15,2) DEFAULT '0.00' COMMENT '年度预计执行数-其他(万元)',
+ `next_year_total` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-合计(万元)',
+ `next_year_municipal` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-市财政资金(万元)',
+ `next_year_self` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-单位自筹(万元)',
+ `next_year_other` decimal(15,2) DEFAULT '0.00' COMMENT '下年度申请资金-其他(万元)',
+ `future_year_total` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-合计(万元)',
+ `future_year_municipal` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-市财政资金(万元)',
+ `future_year_self` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-单位自筹(万元)',
+ `future_year_other` decimal(15,2) DEFAULT '0.00' COMMENT '以后年度安排-其他(万元)',
+ `applicant_id` bigint(20) NOT NULL COMMENT '申请人ID',
+ `applicant_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请人姓名',
+ `department_id` bigint(20) NOT NULL COMMENT '所属部门ID',
+ `department_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '所属部门名称',
+ `approval_status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT 'draft' COMMENT '审批状态(draft-草稿 submitted-已提交 approving-审批中 approved-已通过 rejected-已拒绝 returned-已退回 cancelled-已取消)',
+ `submit_time` datetime DEFAULT NULL COMMENT '提交时间',
+ `approve_time` datetime DEFAULT NULL COMMENT '审批完成时间',
+ `year` int(11) NOT NULL COMMENT '预算年度',
+ `remark` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0-正常 1-删除)',
+ `tenant_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for flow_category
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_category`;
+CREATE TABLE `flow_category` (
+ `category_id` bigint(20) NOT NULL COMMENT '流程分类ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父流程分类id',
+ `ancestors` varchar(500) DEFAULT '' COMMENT '祖级列表',
+ `category_name` varchar(30) NOT NULL COMMENT '流程分类名称',
+ `order_num` int(4) DEFAULT '0' COMMENT '显示顺序',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`category_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程分类';
+
+-- ----------------------------
+-- Table structure for flow_definition
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_definition`;
+CREATE TABLE `flow_definition` (
+ `id` bigint(20) NOT NULL COMMENT '主键id',
+ `flow_code` varchar(40) NOT NULL COMMENT '流程编码',
+ `flow_name` varchar(100) NOT NULL COMMENT '流程名称',
+ `category` varchar(100) DEFAULT NULL COMMENT '流程类别',
+ `version` varchar(20) NOT NULL COMMENT '流程版本',
+ `is_publish` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否发布(0未发布 1已发布 9失效)',
+ `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
+ `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
+ `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)',
+ `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型',
+ `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径',
+ `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
+ `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程定义表';
+
+-- ----------------------------
+-- Table structure for flow_his_task
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_his_task`;
+CREATE TABLE `flow_his_task` (
+ `id` bigint(20) NOT NULL COMMENT '主键id',
+ `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id',
+ `instance_id` bigint(20) NOT NULL COMMENT '对应flow_instance表的id',
+ `task_id` bigint(20) NOT NULL COMMENT '对应flow_task表的id',
+ `node_code` varchar(100) DEFAULT NULL COMMENT '开始节点编码',
+ `node_name` varchar(100) DEFAULT NULL COMMENT '开始节点名称',
+ `node_type` tinyint(1) DEFAULT NULL COMMENT '开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
+ `target_node_code` varchar(200) DEFAULT NULL COMMENT '目标节点编码',
+ `target_node_name` varchar(200) DEFAULT NULL COMMENT '结束节点名称',
+ `approver` varchar(40) DEFAULT NULL COMMENT '审批者',
+ `cooperate_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签)',
+ `collaborator` varchar(40) DEFAULT NULL COMMENT '协作人',
+ `skip_type` varchar(10) NOT NULL COMMENT '流转类型(PASS通过 REJECT退回 NONE无动作)',
+ `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)',
+ `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
+ `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
+ `message` varchar(500) DEFAULT NULL COMMENT '审批意见',
+ `variable` text COMMENT '任务变量',
+ `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串',
+ `create_time` datetime DEFAULT NULL COMMENT '任务开始时间',
+ `update_time` datetime DEFAULT NULL COMMENT '审批完成时间',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
+ `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='历史任务记录表';
+
+-- ----------------------------
+-- Table structure for flow_instance
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_instance`;
+CREATE TABLE `flow_instance` (
+ `id` bigint(20) NOT NULL COMMENT '主键id',
+ `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id',
+ `business_id` varchar(40) NOT NULL COMMENT '业务id',
+ `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
+ `node_code` varchar(40) NOT NULL COMMENT '流程节点编码',
+ `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称',
+ `variable` text COMMENT '任务变量',
+ `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)',
+ `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)',
+ `def_json` text COMMENT '流程定义json',
+ `create_by` varchar(64) DEFAULT '' COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `ext` varchar(500) DEFAULT NULL COMMENT '扩展字段,预留给业务系统使用',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
+ `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程实例表';
+
+-- ----------------------------
+-- Table structure for flow_node
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_node`;
+CREATE TABLE `flow_node` (
+ `id` bigint(20) NOT NULL COMMENT '主键id',
+ `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
+ `definition_id` bigint(20) NOT NULL COMMENT '流程定义id',
+ `node_code` varchar(100) NOT NULL COMMENT '流程节点编码',
+ `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称',
+ `permission_flag` varchar(200) DEFAULT NULL COMMENT '权限标识(权限类型:权限标识,可以多个,用逗号隔开)',
+ `node_ratio` decimal(6,3) DEFAULT NULL COMMENT '流程签署比例值',
+ `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标',
+ `any_node_skip` varchar(100) DEFAULT NULL COMMENT '任意结点跳转',
+ `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型',
+ `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径',
+ `handler_type` varchar(100) DEFAULT NULL COMMENT '处理器类型',
+ `handler_path` varchar(400) DEFAULT NULL COMMENT '处理器路径',
+ `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
+ `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
+ `version` varchar(20) NOT NULL COMMENT '版本',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `ext` text COMMENT '扩展属性',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
+ `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程节点表';
+
+-- ----------------------------
+-- Table structure for flow_skip
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_skip`;
+CREATE TABLE `flow_skip` (
+ `id` bigint(20) NOT NULL COMMENT '主键id',
+ `definition_id` bigint(20) NOT NULL COMMENT '流程定义id',
+ `now_node_code` varchar(100) NOT NULL COMMENT '当前流程节点的编码',
+ `now_node_type` tinyint(1) DEFAULT NULL COMMENT '当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
+ `next_node_code` varchar(100) NOT NULL COMMENT '下一个流程节点的编码',
+ `next_node_type` tinyint(1) DEFAULT NULL COMMENT '下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
+ `skip_name` varchar(100) DEFAULT NULL COMMENT '跳转名称',
+ `skip_type` varchar(40) DEFAULT NULL COMMENT '跳转类型(PASS审批通过 REJECT退回)',
+ `skip_condition` varchar(200) DEFAULT NULL COMMENT '跳转条件',
+ `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
+ `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='节点跳转关联表';
+
+-- ----------------------------
+-- Table structure for flow_task
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_task`;
+CREATE TABLE `flow_task` (
+ `id` bigint(20) NOT NULL COMMENT '主键id',
+ `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id',
+ `instance_id` bigint(20) NOT NULL COMMENT '对应flow_instance表的id',
+ `node_code` varchar(100) NOT NULL COMMENT '节点编码',
+ `node_name` varchar(100) DEFAULT NULL COMMENT '节点名称',
+ `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
+ `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)',
+ `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
+ `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
+ `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='待办任务表';
+
+-- ----------------------------
+-- Table structure for flow_user
+-- ----------------------------
+DROP TABLE IF EXISTS `flow_user`;
+CREATE TABLE `flow_user` (
+ `id` bigint(20) NOT NULL COMMENT '主键id',
+ `type` char(1) NOT NULL COMMENT '人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3待办任务的委托人权限)',
+ `processed_by` varchar(80) DEFAULT NULL COMMENT '权限人',
+ `associated` bigint(20) NOT NULL COMMENT '任务表id',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `create_by` varchar(80) DEFAULT NULL COMMENT '创建人',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
+ `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `user_processed_type` (`processed_by`,`type`),
+ KEY `user_associated` (`associated`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流程用户表';
+
+-- ----------------------------
+-- Table structure for gen_table
+-- ----------------------------
+DROP TABLE IF EXISTS `gen_table`;
+CREATE TABLE `gen_table` (
+ `table_id` bigint(20) NOT NULL COMMENT '编号',
+ `data_name` varchar(200) DEFAULT '' COMMENT '数据源名称',
+ `table_name` varchar(200) DEFAULT '' COMMENT '表名称',
+ `table_comment` varchar(500) DEFAULT '' COMMENT '表描述',
+ `sub_table_name` varchar(64) DEFAULT NULL COMMENT '关联子表的表名',
+ `sub_table_fk_name` varchar(64) DEFAULT NULL COMMENT '子表关联的外键名',
+ `class_name` varchar(100) DEFAULT '' COMMENT '实体类名称',
+ `tpl_category` varchar(200) DEFAULT 'crud' COMMENT '使用的模板(crud单表操作 tree树表操作)',
+ `package_name` varchar(100) DEFAULT NULL COMMENT '生成包路径',
+ `module_name` varchar(30) DEFAULT NULL COMMENT '生成模块名',
+ `business_name` varchar(30) DEFAULT NULL COMMENT '生成业务名',
+ `function_name` varchar(50) DEFAULT NULL COMMENT '生成功能名',
+ `function_author` varchar(50) DEFAULT NULL COMMENT '生成功能作者',
+ `gen_type` char(1) DEFAULT '0' COMMENT '生成代码方式(0zip压缩包 1自定义路径)',
+ `gen_path` varchar(200) DEFAULT '/' COMMENT '生成路径(不填默认项目路径)',
+ `options` varchar(1000) DEFAULT NULL COMMENT '其它生成选项',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`table_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代码生成业务表';
+
+-- ----------------------------
+-- Table structure for gen_table_column
+-- ----------------------------
+DROP TABLE IF EXISTS `gen_table_column`;
+CREATE TABLE `gen_table_column` (
+ `column_id` bigint(20) NOT NULL COMMENT '编号',
+ `table_id` bigint(20) DEFAULT NULL COMMENT '归属表编号',
+ `column_name` varchar(200) DEFAULT NULL COMMENT '列名称',
+ `column_comment` varchar(500) DEFAULT NULL COMMENT '列描述',
+ `column_type` varchar(100) DEFAULT NULL COMMENT '列类型',
+ `java_type` varchar(500) DEFAULT NULL COMMENT 'JAVA类型',
+ `java_field` varchar(200) DEFAULT NULL COMMENT 'JAVA字段名',
+ `is_pk` char(1) DEFAULT NULL COMMENT '是否主键(1是)',
+ `is_increment` char(1) DEFAULT NULL COMMENT '是否自增(1是)',
+ `is_required` char(1) DEFAULT NULL COMMENT '是否必填(1是)',
+ `is_insert` char(1) DEFAULT NULL COMMENT '是否为插入字段(1是)',
+ `is_edit` char(1) DEFAULT NULL COMMENT '是否编辑字段(1是)',
+ `is_list` char(1) DEFAULT NULL COMMENT '是否列表字段(1是)',
+ `is_query` char(1) DEFAULT NULL COMMENT '是否查询字段(1是)',
+ `query_type` varchar(200) DEFAULT 'EQ' COMMENT '查询方式(等于、不等于、大于、小于、范围)',
+ `html_type` varchar(200) DEFAULT NULL COMMENT '显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件)',
+ `dict_type` varchar(200) DEFAULT '' COMMENT '字典类型',
+ `sort` int(11) DEFAULT NULL COMMENT '排序',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`column_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='代码生成业务表字段';
+
+-- ----------------------------
+-- Table structure for hq_hall_info
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_hall_info`;
+CREATE TABLE `hq_hall_info` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `hall_name` varchar(100) NOT NULL COMMENT '报告厅名称',
+ `hall_image` text COMMENT '报告厅图片url',
+ `hall_status` char(1) NOT NULL DEFAULT '1' COMMENT '报告厅状态:0-不可用,1-正常',
+ `hall_description` text COMMENT '报告厅描述',
+ PRIMARY KEY (`id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_hall_status` (`hall_status`),
+ KEY `idx_deleted` (`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报告厅信息表';
+
+-- ----------------------------
+-- Table structure for hq_hall_reservation
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_hall_reservation`;
+CREATE TABLE `hq_hall_reservation` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `hall_id` bigint(20) NOT NULL COMMENT '报告厅ID',
+ `hall_name` varchar(100) NOT NULL COMMENT '报告厅名称',
+ `start_time` datetime NOT NULL COMMENT '开始时间',
+ `end_time` datetime NOT NULL COMMENT '结束时间',
+ `reservation_purpose` varchar(200) NOT NULL COMMENT '预约用途',
+ `applicant_id` bigint(20) NOT NULL COMMENT '申请人id',
+ `applicant_name` varchar(50) NOT NULL COMMENT '申请人姓名',
+ `applicant_phone` varchar(20) DEFAULT NULL COMMENT '申请人电话',
+ `status` char(1) NOT NULL DEFAULT '0' COMMENT '预约状态:0-待审核,1-预约成功,2-预约失败',
+ `audit_by` bigint(20) DEFAULT NULL COMMENT '审核人id',
+ `audit_name` varchar(50) DEFAULT NULL COMMENT '审核人姓名',
+ `audit_time` datetime DEFAULT NULL COMMENT '审核时间',
+ `audit_remark` varchar(500) DEFAULT NULL COMMENT '审核备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_hall_id` (`hall_id`),
+ KEY `idx_status` (`status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报告厅预约表';
+
+-- ----------------------------
+-- Table structure for hq_pm_repair_attachment
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_pm_repair_attachment`;
+CREATE TABLE `hq_pm_repair_attachment` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `order_id` bigint(20) DEFAULT NULL COMMENT '报修工单ID,关联pm_repair_order.id',
+ `file_name` varchar(200) NOT NULL COMMENT '文件原始名称',
+ `file_path` varchar(500) NOT NULL COMMENT '文件存储路径',
+ `file_size` bigint(20) NOT NULL COMMENT '文件大小(字节)',
+ `file_type` varchar(20) NOT NULL COMMENT '文件类型:image-图片,video-视频',
+ `file_extension` varchar(10) NOT NULL COMMENT '文件扩展名',
+ `file_mime_type` varchar(100) DEFAULT NULL COMMENT '文件MIME类型',
+ `upload_stage` char(1) NOT NULL DEFAULT '1' COMMENT '上传阶段:1-报修申请,2-维修过程,3-完成确认',
+ `uploader_id` bigint(20) NOT NULL COMMENT '上传人ID,关联sys_user.id',
+ `uploader_name` varchar(50) NOT NULL COMMENT '上传人姓名',
+ `thumbnail_path` varchar(500) DEFAULT NULL COMMENT '缩略图路径(图片文件)',
+ `duration` int(11) DEFAULT NULL COMMENT '时长(视频文件,秒)',
+ `resolution` varchar(20) DEFAULT NULL COMMENT '分辨率(如:1920x1080)',
+ `description` varchar(200) DEFAULT NULL COMMENT '文件描述说明',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序顺序',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_order_id` (`order_id`),
+ KEY `idx_upload_stage` (`upload_stage`),
+ KEY `idx_uploader_id` (`uploader_id`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_file_type` (`file_type`),
+ KEY `idx_order_stage` (`order_id`,`upload_stage`),
+ KEY `idx_uploader_time` (`uploader_id`,`create_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报修附件表';
+
+-- ----------------------------
+-- Table structure for hq_pm_repair_category
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_pm_repair_category`;
+CREATE TABLE `hq_pm_repair_category` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `category_name` varchar(50) NOT NULL COMMENT '类型名称',
+ `category_code` varchar(20) NOT NULL COMMENT '类型编码',
+ `category_description` varchar(200) DEFAULT NULL COMMENT '类型描述',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父级ID,顶级为0',
+ `ancestor_ids` varchar(500) DEFAULT '0' COMMENT '祖级列表(逗号分隔)',
+ `level_depth` tinyint(2) DEFAULT '1' COMMENT '层级深度(1-顶级,2-二级...)',
+ `children_count` int(11) DEFAULT '0' COMMENT '子类数量',
+ `required_skills` varchar(200) DEFAULT NULL COMMENT '所需专业技能(逗号分隔)',
+ `skill_level` char(1) DEFAULT '1' COMMENT '技能等级要求:1-初级,2-中级,3-高级',
+ `estimated_duration` int(11) DEFAULT NULL COMMENT '预估维修时长(分钟)',
+ `standard_cost` decimal(10,2) DEFAULT NULL COMMENT '标准成本(元)',
+ `icon_url` varchar(200) DEFAULT NULL COMMENT '分类图标URL',
+ `color_code` varchar(10) DEFAULT '#1890ff' COMMENT '分类颜色代码',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序顺序',
+ `status` char(1) DEFAULT '1' COMMENT '状态(0-停用,1-正常)',
+ `usage_count` int(11) DEFAULT '0' COMMENT '使用次数统计',
+ `last_used_time` datetime DEFAULT NULL COMMENT '最后使用时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_category_code` (`category_code`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_parent_id` (`parent_id`),
+ KEY `idx_status` (`status`),
+ KEY `idx_sort_order` (`sort_order`),
+ KEY `idx_level_depth` (`level_depth`),
+ KEY `idx_usage_count` (`usage_count`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='维修类型表';
+
+-- ----------------------------
+-- Table structure for hq_pm_repair_order
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_pm_repair_order`;
+CREATE TABLE `hq_pm_repair_order` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `order_no` varchar(50) NOT NULL COMMENT '工单编号,格式:RO+年月日+4位流水号',
+ `title` varchar(200) NOT NULL COMMENT '报修标题',
+ `description` text NOT NULL COMMENT '问题描述',
+ `repair_location` varchar(200) NOT NULL COMMENT '报修地点',
+ `category_id` bigint(20) NOT NULL COMMENT '维修类型ID,关联pm_repair_category.id',
+ `priority_level` tinyint(1) NOT NULL DEFAULT '3' COMMENT '紧急程度:1-非常紧急,2-紧急,3-一般,4-不紧急,5-可延后',
+ `expected_finish_time` datetime DEFAULT NULL COMMENT '期望完成时间',
+ `reporter_id` bigint(20) NOT NULL COMMENT '报修人ID,关联sys_user.id',
+ `reporter_name` varchar(50) NOT NULL COMMENT '报修人姓名',
+ `reporter_phone` varchar(20) NOT NULL COMMENT '报修人电话',
+ `reporter_dept` varchar(100) DEFAULT NULL COMMENT '报修人部门',
+ `order_status` char(1) NOT NULL DEFAULT '1' COMMENT '工单状态:1-待分派,2-已分派,3-进行中,4-已完成,5-已评价,6-已归档,9-已取消',
+ `assign_time` datetime DEFAULT NULL COMMENT '分派时间',
+ `assignee_id` bigint(20) DEFAULT NULL COMMENT '分派维修员ID,关联sys_user.id',
+ `assignee_name` varchar(50) DEFAULT NULL COMMENT '分派维修员姓名',
+ `assign_remark` varchar(500) DEFAULT NULL COMMENT '分派备注说明',
+ `start_time` datetime DEFAULT NULL COMMENT '开始处理时间',
+ `finish_time` datetime DEFAULT NULL COMMENT '完成时间',
+ `total_duration` int(11) DEFAULT NULL COMMENT '总处理时长(分钟)',
+ `repair_result` text COMMENT '维修结果描述',
+ `used_materials` varchar(500) DEFAULT NULL COMMENT '使用材料清单',
+ `follow_suggestions` varchar(500) DEFAULT NULL COMMENT '后续建议',
+ `evaluation_score` decimal(3,1) DEFAULT NULL COMMENT '综合评价得分(1.0-5.0)',
+ `evaluation_time` datetime DEFAULT NULL COMMENT '评价时间',
+ `attachment_count` int(11) DEFAULT '0' COMMENT '附件数量',
+ `progress_count` int(11) DEFAULT '0' COMMENT '进度记录数量',
+ `cancel_reason` varchar(500) DEFAULT NULL COMMENT '取消原因',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_order_no` (`order_no`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_order_status` (`order_status`),
+ KEY `idx_priority_level` (`priority_level`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_reporter_id` (`reporter_id`),
+ KEY `idx_assignee_id` (`assignee_id`),
+ KEY `idx_category_id` (`category_id`),
+ KEY `idx_assign_time` (`assign_time`),
+ KEY `idx_finish_time` (`finish_time`),
+ KEY `idx_tenant_status` (`tenant_id`,`order_status`,`deleted`),
+ KEY `idx_status_time` (`order_status`,`create_time`),
+ KEY `idx_assignee_status` (`assignee_id`,`order_status`),
+ KEY `idx_reporter_time` (`reporter_id`,`create_time`),
+ KEY `idx_priority_assign` (`priority_level`,`assign_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报修工单表';
+
+-- ----------------------------
+-- Table structure for hq_pm_repair_progress
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_pm_repair_progress`;
+CREATE TABLE `hq_pm_repair_progress` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `order_id` bigint(20) NOT NULL COMMENT '报修工单ID,关联pm_repair_order.id',
+ `progress_type` char(1) NOT NULL COMMENT '进度类型:1-工单分派,2-接收确认,3-到达现场,4-开始维修,5-进度更新,6-完成维修,7-用户评价,8-工单归档,9-其他',
+ `progress_status` varchar(50) NOT NULL COMMENT '进度状态描述',
+ `progress_detail` text COMMENT '进度详细描述',
+ `operator_id` bigint(20) NOT NULL COMMENT '操作人ID,关联sys_user.id',
+ `operator_name` varchar(50) NOT NULL COMMENT '操作人姓名',
+ `operator_role` varchar(20) NOT NULL COMMENT '操作人角色:user-用户,admin-管理员,worker-维修员',
+ `location_info` varchar(200) DEFAULT NULL COMMENT '操作位置信息',
+ `gps_latitude` decimal(10,7) DEFAULT NULL COMMENT 'GPS纬度',
+ `gps_longitude` decimal(10,7) DEFAULT NULL COMMENT 'GPS经度',
+ `operation_time` datetime NOT NULL COMMENT '操作时间',
+ `estimated_duration` int(11) DEFAULT NULL COMMENT '预计耗时(分钟)',
+ `attachment_ids` varchar(500) DEFAULT NULL COMMENT '关联附件ID列表(逗号分隔)',
+ `next_step` varchar(200) DEFAULT NULL COMMENT '下一步计划',
+ `issues_encountered` varchar(500) DEFAULT NULL COMMENT '遇到的问题',
+ `materials_needed` varchar(200) DEFAULT NULL COMMENT '需要的材料',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_order_id` (`order_id`),
+ KEY `idx_progress_type` (`progress_type`),
+ KEY `idx_operator_id` (`operator_id`),
+ KEY `idx_operation_time` (`operation_time`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_order_time` (`order_id`,`operation_time`),
+ KEY `idx_order_operation_time` (`order_id`,`operation_time`),
+ KEY `idx_operator_time` (`operator_id`,`operation_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='维修进度表';
+
+-- ----------------------------
+-- Table structure for hq_pm_service_evaluation
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_pm_service_evaluation`;
+CREATE TABLE `hq_pm_service_evaluation` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `order_id` bigint(20) NOT NULL COMMENT '报修工单ID,关联pm_repair_order.id',
+ `evaluator_id` bigint(20) NOT NULL COMMENT '评价人ID,关联sys_user.id',
+ `evaluator_name` varchar(50) NOT NULL COMMENT '评价人姓名',
+ `evaluated_worker_id` bigint(20) NOT NULL COMMENT '被评价维修员ID,关联sys_user.id',
+ `evaluated_worker_name` varchar(50) NOT NULL COMMENT '被评价维修员姓名',
+ `overall_score` decimal(3,1) NOT NULL COMMENT '综合评价得分(1.0-5.0)',
+ `quality_score` decimal(3,1) NOT NULL COMMENT '维修质量得分(1.0-5.0)',
+ `attitude_score` decimal(3,1) NOT NULL COMMENT '服务态度得分(1.0-5.0)',
+ `response_speed_score` decimal(3,1) NOT NULL COMMENT '响应速度得分(1.0-5.0)',
+ `communication_score` decimal(3,1) NOT NULL COMMENT '沟通效果得分(1.0-5.0)',
+ `evaluation_content` text COMMENT '文字评价内容',
+ `satisfaction_level` char(1) NOT NULL COMMENT '满意度等级:1-非常满意,2-满意,3-一般,4-不满意,5-非常不满意',
+ `is_anonymous` tinyint(1) DEFAULT '0' COMMENT '是否匿名评价(0-实名,1-匿名)',
+ `is_public` tinyint(1) DEFAULT '1' COMMENT '是否公开显示(0-不公开,1-公开)',
+ `evaluation_time` datetime NOT NULL COMMENT '评价时间',
+ `service_start_time` datetime DEFAULT NULL COMMENT '服务开始时间',
+ `service_end_time` datetime DEFAULT NULL COMMENT '服务结束时间',
+ `service_duration` int(11) DEFAULT NULL COMMENT '服务时长(分钟)',
+ `positive_tags` varchar(200) DEFAULT NULL COMMENT '正面标签(逗号分隔)',
+ `negative_tags` varchar(200) DEFAULT NULL COMMENT '负面标签(逗号分隔)',
+ `improvement_suggestions` varchar(500) DEFAULT NULL COMMENT '改进建议',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_order_evaluation` (`order_id`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_evaluator_id` (`evaluator_id`),
+ KEY `idx_evaluated_worker_id` (`evaluated_worker_id`),
+ KEY `idx_overall_score` (`overall_score`),
+ KEY `idx_satisfaction_level` (`satisfaction_level`),
+ KEY `idx_evaluation_time` (`evaluation_time`),
+ KEY `idx_create_time` (`create_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='服务评价表';
+
+-- ----------------------------
+-- Table structure for hq_pm_system_config
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_pm_system_config`;
+CREATE TABLE `hq_pm_system_config` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `config_key` varchar(100) NOT NULL COMMENT '配置键名',
+ `config_value` text COMMENT '配置值',
+ `config_type` varchar(20) NOT NULL COMMENT '配置类型:string-字符串,number-数字,boolean-布尔,json-JSON对象',
+ `config_group` varchar(50) NOT NULL COMMENT '配置分组:file-文件设置,time-时间设置,workflow-流程设置',
+ `config_name` varchar(100) NOT NULL COMMENT '配置名称',
+ `config_description` varchar(500) DEFAULT NULL COMMENT '配置描述说明',
+ `default_value` text COMMENT '默认值',
+ `is_system` tinyint(1) DEFAULT '0' COMMENT '是否系统内置(0-否,1-是,系统内置不可删除)',
+ `is_editable` tinyint(1) DEFAULT '1' COMMENT '是否可编辑(0-否,1-是)',
+ `validation_rule` varchar(200) DEFAULT NULL COMMENT '验证规则(正则表达式或范围)',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序顺序',
+ `status` char(1) DEFAULT '1' COMMENT '状态(0-停用,1-正常)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_config_key` (`config_key`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_config_group` (`config_group`),
+ KEY `idx_status` (`status`),
+ KEY `idx_sort_order` (`sort_order`),
+ KEY `idx_is_system` (`is_system`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统配置表';
+
+-- ----------------------------
+-- Table structure for hq_sat_answer
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_answer`;
+CREATE TABLE `hq_sat_answer` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `record_id` bigint(20) NOT NULL COMMENT '答题记录ID',
+ `question_id` bigint(20) NOT NULL COMMENT '题目ID',
+ `question_type` char(1) NOT NULL COMMENT '题目类型(1单选题 2多选题 3问答题)',
+ `option_id` bigint(20) DEFAULT NULL COMMENT '选项ID(单选题、多选题用,问答题为NULL)',
+ `option_value` varchar(50) DEFAULT NULL COMMENT '选项值(A、B、C、D等)',
+ `option_text` varchar(500) DEFAULT NULL COMMENT '选项文本内容',
+ `answer_value` text COMMENT '答案值(单选题存选项值,多选题存逗号分隔选项值,问答题存文本内容)',
+ `answer_score` int(11) DEFAULT '0' COMMENT '该答案得分',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_record_id` (`record_id`),
+ KEY `idx_question_id` (`question_id`),
+ KEY `idx_question_type` (`question_type`),
+ KEY `idx_option_id` (`option_id`),
+ KEY `idx_record_question` (`record_id`,`question_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=432 DEFAULT CHARSET=utf8mb4 COMMENT='答题答案表';
+
+-- ----------------------------
+-- Table structure for hq_sat_category
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_category`;
+CREATE TABLE `hq_sat_category` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `category_code` varchar(50) NOT NULL COMMENT '分类编码',
+ `category_name` varchar(100) NOT NULL COMMENT '分类名称',
+ `category_desc` varchar(500) DEFAULT NULL COMMENT '分类描述',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_category_code` (`category_code`,`tenant_id`,`deleted`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_status` (`status`)
+) ENGINE=InnoDB AUTO_INCREMENT=1944643717961486339 DEFAULT CHARSET=utf8mb4 COMMENT='题目分类表';
+
+-- ----------------------------
+-- Table structure for hq_sat_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_detail`;
+CREATE TABLE `hq_sat_detail` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `record_id` bigint(20) NOT NULL COMMENT '答题记录ID',
+ `question_id` bigint(20) NOT NULL COMMENT '题目ID',
+ `option_id` bigint(20) DEFAULT NULL COMMENT '题目选项id',
+ `answer_score` int(11) DEFAULT '0' COMMENT '答案分数',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_record_id` (`record_id`),
+ KEY `idx_question_id` (`question_id`),
+ KEY `idx_answer_score` (`answer_score`)
+) ENGINE=InnoDB AUTO_INCREMENT=1947203274230128642 DEFAULT CHARSET=utf8mb4 COMMENT='答题详情表';
+
+-- ----------------------------
+-- Table structure for hq_sat_option
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_option`;
+CREATE TABLE `hq_sat_option` (
+ `id` bigint(20) NOT NULL COMMENT '选项ID',
+ `question_id` bigint(20) NOT NULL COMMENT '题目ID',
+ `option_content` varchar(255) NOT NULL COMMENT '选项内容',
+ `option_score` int(11) DEFAULT '0' COMMENT '选项分值',
+ `option_order` int(11) DEFAULT '0' COMMENT '选项排序',
+ `is_default` char(1) DEFAULT 'N' COMMENT '是否默认选项(Y是 N否)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_question_id` (`question_id`) COMMENT '题目ID索引'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='满意度调查题目选项表';
+
+-- ----------------------------
+-- Table structure for hq_sat_question
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_question`;
+CREATE TABLE `hq_sat_question` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `question_title` varchar(200) NOT NULL COMMENT '题目标题',
+ `question_content` text COMMENT '题目内容(支持富文本)',
+ `category_id` bigint(20) NOT NULL COMMENT '所属分类ID',
+ `question_type` char(1) DEFAULT '1' COMMENT '题目类型(1单选题 2多选题 3问答题)',
+ `is_required` tinyint(1) DEFAULT '1' COMMENT '是否必填(0否 1是)',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `score` int(11) DEFAULT '0' COMMENT '题目分值 默认0',
+ PRIMARY KEY (`id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_category_id` (`category_id`),
+ KEY `idx_status` (`status`)
+) ENGINE=InnoDB AUTO_INCREMENT=1947201902067769346 DEFAULT CHARSET=utf8mb4 COMMENT='题库表';
+
+-- ----------------------------
+-- Table structure for hq_sat_record
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_record`;
+CREATE TABLE `hq_sat_record` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `survey_id` bigint(20) NOT NULL COMMENT '问卷ID',
+ `user_id` bigint(20) DEFAULT NULL COMMENT '答题用户ID(匿名时为NULL)',
+ `user_type` char(1) NOT NULL COMMENT '用户类型(1学生 2教职工 3超级管理员)',
+ `user_dept` varchar(100) DEFAULT NULL COMMENT '用户部门(匿名时为NULL)',
+ `submit_time` datetime NOT NULL COMMENT '提交时间',
+ `total_score` decimal(10,2) DEFAULT '0.00' COMMENT '总分',
+ `avg_score` decimal(5,2) DEFAULT '0.00' COMMENT '平均分',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_survey_id` (`survey_id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_user_type` (`user_type`),
+ KEY `idx_submit_time` (`submit_time`)
+) ENGINE=InnoDB AUTO_INCREMENT=1947203268504903682 DEFAULT CHARSET=utf8mb4 COMMENT='答题记录表';
+
+-- ----------------------------
+-- Table structure for hq_sat_survey
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_survey`;
+CREATE TABLE `hq_sat_survey` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `survey_code` varchar(50) NOT NULL COMMENT '问卷编号',
+ `survey_title` varchar(200) NOT NULL COMMENT '问卷标题',
+ `survey_desc` varchar(1000) DEFAULT NULL COMMENT '问卷描述',
+ `survey_instruction` text COMMENT '填写说明',
+ `target_group` varchar(100) NOT NULL COMMENT '目标群体(1学生 2教职工 3全体)',
+ `start_time` datetime NOT NULL COMMENT '开始时间',
+ `end_time` datetime NOT NULL COMMENT '结束时间',
+ `max_submit_times` int(11) DEFAULT '1' COMMENT '最大提交次数(0不限制)',
+ `is_anonymous` tinyint(1) DEFAULT '0' COMMENT '是否匿名(0否 1是)',
+ `is_published` tinyint(1) DEFAULT '0' COMMENT '是否发布(0否 1是)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0草稿 1进行中 2已结束)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `score` int(11) DEFAULT NULL COMMENT '问卷总分值',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_survey_code` (`survey_code`,`tenant_id`,`deleted`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_target_group` (`target_group`),
+ KEY `idx_time_range` (`start_time`,`end_time`),
+ KEY `idx_status` (`status`)
+) ENGINE=InnoDB AUTO_INCREMENT=1947202412963356674 DEFAULT CHARSET=utf8mb4 COMMENT='问卷表';
+
+-- ----------------------------
+-- Table structure for hq_sat_survey_question
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_sat_survey_question`;
+CREATE TABLE `hq_sat_survey_question` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `survey_id` bigint(20) NOT NULL COMMENT '问卷ID',
+ `question_id` bigint(20) NOT NULL COMMENT '题目ID',
+ `sort_order` int(11) DEFAULT '0' COMMENT '题目顺序',
+ `weight` decimal(5,2) DEFAULT '1.00' COMMENT '题目权重',
+ `is_required` tinyint(1) DEFAULT '1' COMMENT '是否必填(0否 1是)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_survey_question` (`survey_id`,`question_id`,`deleted`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_survey_id` (`survey_id`),
+ KEY `idx_question_id` (`question_id`),
+ KEY `idx_sort_order` (`sort_order`)
+) ENGINE=InnoDB AUTO_INCREMENT=1947202730556055555 DEFAULT CHARSET=utf8mb4 COMMENT='问卷题目关联表';
+
+-- ----------------------------
+-- Table structure for hq_venue_info
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_venue_info`;
+CREATE TABLE `hq_venue_info` (
+ `id` bigint(20) NOT NULL COMMENT '场地ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `venue_name` varchar(100) NOT NULL COMMENT '场地名称',
+ `venue_code` varchar(50) NOT NULL COMMENT '场地编码',
+ `venue_location` varchar(200) NOT NULL COMMENT '场地位置',
+ `venue_capacity` int(11) NOT NULL COMMENT '场地容量',
+ `venue_type` varchar(20) NOT NULL COMMENT '场地类型',
+ `venue_status` char(1) NOT NULL DEFAULT '1' COMMENT '场地状态(0-维修中 1-可用)',
+ `venue_description` text COMMENT '场地描述',
+ `venue_images` varchar(500) DEFAULT NULL COMMENT '场地图片',
+ `venue_manager_id` bigint(20) DEFAULT NULL COMMENT '场地管理员ID',
+ `venue_manager_name` varchar(30) DEFAULT NULL COMMENT '场地管理员姓名',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(4) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_venue_code` (`venue_code`),
+ KEY `idx_venue_type` (`venue_type`),
+ KEY `idx_venue_status` (`venue_status`),
+ KEY `idx_venue_manager` (`venue_manager_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='场地信息表';
+
+-- ----------------------------
+-- Table structure for hq_venue_reservation
+-- ----------------------------
+DROP TABLE IF EXISTS `hq_venue_reservation`;
+CREATE TABLE `hq_venue_reservation` (
+ `id` bigint(20) NOT NULL COMMENT '预约ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `venue_id` bigint(20) NOT NULL COMMENT '场地ID',
+ `venue_name` varchar(100) NOT NULL COMMENT '场地名称',
+ `applicant_id` bigint(20) NOT NULL COMMENT '申请人ID',
+ `applicant_name` varchar(30) NOT NULL COMMENT '申请人姓名',
+ `applicant_phone` varchar(20) NOT NULL COMMENT '联系方式',
+ `reservation_date` date NOT NULL COMMENT '预约日期',
+ `start_time` datetime NOT NULL COMMENT '开始时间',
+ `end_time` datetime NOT NULL COMMENT '结束时间',
+ `reservation_purpose` varchar(200) NOT NULL COMMENT '预约用途',
+ `participant_count` int(11) NOT NULL COMMENT '参与人数',
+ `special_requirements` text COMMENT '特殊需求',
+ `reservation_status` char(1) NOT NULL DEFAULT '0' COMMENT '预约状态(0-待审批 1-已批准 2-已拒绝)',
+ `approver_id` bigint(20) DEFAULT NULL COMMENT '审批人ID',
+ `approver_name` varchar(30) DEFAULT NULL COMMENT '审批人姓名',
+ `approve_time` datetime DEFAULT NULL COMMENT '审批时间',
+ `approve_remark` varchar(500) DEFAULT NULL COMMENT '审批意见',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(4) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`id`),
+ KEY `idx_venue_id` (`venue_id`),
+ KEY `idx_applicant_id` (`applicant_id`),
+ KEY `idx_reservation_date` (`reservation_date`),
+ KEY `idx_reservation_status` (`reservation_status`),
+ KEY `idx_time_range` (`start_time`,`end_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='场地预约表';
+
+-- ----------------------------
+-- Table structure for jcbt_application_attachment
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_application_attachment`;
+CREATE TABLE `jcbt_application_attachment` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `application_no` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请编号',
+ `attachment_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '附件类型',
+ `file_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件名称',
+ `file_original_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件原始名称',
+ `file_path` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件存储路径',
+ `file_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件访问URL',
+ `file_size` bigint(20) NOT NULL COMMENT '文件大小',
+ `file_extension` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件扩展名',
+ `mime_type` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'MIME类型',
+ `upload_status` char(1) COLLATE utf8mb4_unicode_ci DEFAULT '1' COMMENT '上传状态',
+ `is_required` tinyint(1) DEFAULT '1' COMMENT '是否必需',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE,
+ KEY `idx_application` (`application_id`,`application_no`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='申请附件表';
+
+-- ----------------------------
+-- Table structure for jcbt_application_flow
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_application_flow`;
+CREATE TABLE `jcbt_application_flow` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `application_no` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请编号',
+ `flow_step` int(11) NOT NULL COMMENT '流转步骤',
+ `from_status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原状态',
+ `to_status` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '目标状态',
+ `action_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型',
+ `operator_id` bigint(20) NOT NULL COMMENT '操作人用户ID',
+ `operator_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人姓名',
+ `operator_role` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人角色',
+ `operation_comment` text COLLATE utf8mb4_unicode_ci COMMENT '操作意见',
+ `operation_time` datetime NOT NULL COMMENT '操作时间',
+ `ip_address` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作IP地址',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE,
+ KEY `idx_application` (`application_id`,`application_no`) USING BTREE,
+ KEY `idx_operator` (`operator_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='审核流转记录表';
+
+-- ----------------------------
+-- Table structure for jcbt_assistance_type
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_assistance_type`;
+CREATE TABLE `jcbt_assistance_type` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `assistance_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '自助类型编码',
+ `assistance_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '自助类型名称',
+ `assistance_description` text COLLATE utf8mb4_unicode_ci COMMENT '自助类型说明',
+ `is_multi_select` tinyint(1) DEFAULT '1' COMMENT '是否支持多选',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序序号',
+ `status` char(1) COLLATE utf8mb4_unicode_ci DEFAULT '1' COMMENT '状态',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_assistance_code` (`assistance_code`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='申请自助类型字典表';
+
+-- ----------------------------
+-- Table structure for jcbt_poverty_application
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_poverty_application`;
+CREATE TABLE `jcbt_poverty_application` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `application_no` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请编号',
+ `academic_year` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学年',
+ `term` tinyint(1) NOT NULL COMMENT '学期',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_no` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学号',
+ `student_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学生姓名',
+ `gender` char(1) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '性别',
+ `college_id` bigint(20) DEFAULT NULL COMMENT 'å¦é™¢ID',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `class_code` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '班级代码',
+ `class_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '班级名称',
+ `major_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '专业代码',
+ `major_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '专业名称',
+ `college_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '学院代码',
+ `college_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '学院名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `teacher_id` bigint(20) DEFAULT NULL COMMENT 'ç主任教师ID',
+ `teacher_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'ç主任教师姓å',
+ `recognition_group` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '认定群体',
+ `recognition_type_id` bigint(20) NOT NULL COMMENT '认定类型ID',
+ `recognition_type_code` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '认定类型编ç ',
+ `recognition_type_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '认定类型名称',
+ `assistance_type_ids` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '申请资助类型ID数组',
+ `assistance_type_names` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '申请资助类型åç§°',
+ `assistance_types` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '申请资助类型',
+ `family_economic_summary` text COLLATE utf8mb4_unicode_ci COMMENT '家庭经济情况摘要',
+ `attach_application_form_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '申请表附件URL',
+ `application_status` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'draft' COMMENT '申请状态',
+ `submit_time` datetime DEFAULT NULL COMMENT '提交时间',
+ `audit_time` datetime DEFAULT NULL COMMENT 'å®¡æ ¸æ—¶é—´',
+ `auditor_id` bigint(20) DEFAULT NULL COMMENT '审核人用户ID',
+ `auditor_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人姓名',
+ `audit_opinion` text COLLATE utf8mb4_unicode_ci COMMENT 'å®¡æ ¸æ„è§',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'DRAFT' COMMENT '申请状态(DRAFT-草稿,SUBMITTED-已提交,REVIEWING-审核中,APPROVED-已通过,REJECTED-已拒绝,WITHDRAWN-已撤回)',
+ `submitter_id` bigint(20) DEFAULT NULL COMMENT 'æäº¤äººID',
+ `submitter_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'æäº¤äººå§“å',
+ `attach_application_form_id` bigint(20) DEFAULT NULL COMMENT '申请表附件ID',
+ `attach_survey_form_url` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '调查表附件URL',
+ `attach_survey_form_id` bigint(20) DEFAULT NULL COMMENT '调查表附件ID',
+ `family_economy_summary` text COLLATE utf8mb4_unicode_ci COMMENT '家庭经济情况摘要',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_application_no` (`application_no`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE,
+ KEY `idx_student` (`student_id`,`student_no`) USING BTREE,
+ KEY `idx_academic_year` (`academic_year`,`term`) USING BTREE,
+ KEY `idx_status_time` (`application_status`,`submit_time`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='贫困生认定申请表';
+
+-- ----------------------------
+-- Table structure for jcbt_recognition_type
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_recognition_type`;
+CREATE TABLE `jcbt_recognition_type` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `type_group` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '所属群体',
+ `type_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '类型编码',
+ `type_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '类型名称',
+ `type_description` text COLLATE utf8mb4_unicode_ci COMMENT '类型说明',
+ `certificate_requirement` text COLLATE utf8mb4_unicode_ci COMMENT '证明材料要求',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序序号',
+ `status` char(1) COLLATE utf8mb4_unicode_ci DEFAULT '1' COMMENT '状态',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_type_code` (`type_code`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE,
+ KEY `idx_group_status` (`type_group`,`status`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='认定类型字典表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_application
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_application`;
+CREATE TABLE `jcbt_scholarship_application` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `application_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请编号',
+ `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+ `scholarship_type_id` bigint(20) NOT NULL COMMENT '奖学金类型ID',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学号',
+ `student_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学生姓名',
+ `dept_id` bigint(20) NOT NULL COMMENT '所属部门ID',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `application_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请类型:TEACHER_RECOMMEND-教师推è,AUTO-自动评定,DIRECT-直接指定',
+ `current_status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'PENDING' COMMENT '当前状态:PENDING-待审核,APPROVED-已通过,REJECTED-已拒绝,WITHDRAWN-已撤回',
+ `apply_reason` text COLLATE utf8mb4_unicode_ci COMMENT '申请理由',
+ `self_evaluation` text COLLATE utf8mb4_unicode_ci COMMENT '自我评价',
+ `calculated_score` decimal(8,2) DEFAULT NULL COMMENT '系统计算分数',
+ `final_score` decimal(8,2) DEFAULT NULL COMMENT '最终评定分数',
+ `ranking_in_dept` int(11) DEFAULT NULL COMMENT '在院系的排名',
+ `ranking_in_major` int(11) DEFAULT NULL COMMENT '在专业的排名',
+ `submit_time` datetime DEFAULT NULL COMMENT '提交时间',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ `applicant_type` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'TEACHER' COMMENT '申请人类型:STUDENT-å¦ç”Ÿç”³è¯·ï¼ŒTEACHER-教师代申请',
+ `applicant_id` bigint(20) DEFAULT NULL COMMENT '申请人ID(ç主任ID)',
+ `applicant_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '申请人姓å(ç主任姓å)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_application_no` (`application_no`),
+ KEY `idx_batch_type_student` (`batch_id`,`scholarship_type_id`,`student_id`),
+ KEY `idx_student_status` (`student_id`,`current_status`),
+ KEY `idx_dept_batch` (`dept_id`,`batch_id`),
+ KEY `idx_status_score` (`current_status`,`final_score`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`),
+ KEY `idx_app_batch_status_score` (`batch_id`,`current_status`,`final_score`),
+ KEY `idx_class_batch` (`class_id`,`batch_id`),
+ KEY `idx_applicant_batch` (`applicant_id`,`batch_id`),
+ KEY `idx_applicant_type` (`applicant_type`,`applicant_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='奖学金申请记录表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_attachment
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_attachment`;
+CREATE TABLE `jcbt_scholarship_attachment` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `attachment_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '附件类型:TRANSCRIPT-成绩单,CERTIFICATE-证书,PROOF-证明材料,OTHER-其他',
+ `file_name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件名称',
+ `file_path` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件路径',
+ `file_size` bigint(20) DEFAULT NULL COMMENT '文件大小(字节)',
+ `file_type` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件类型',
+ `upload_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '上传时间',
+ `is_required` tinyint(1) DEFAULT '0' COMMENT '是å¦å¿…需:0-å¦ï¼Œ1-æ˜¯ï¼ˆæ–°éœ€æ±‚ä¸ææ–™éžå¿…填)',
+ `description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '附件描述',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ `uploader_type` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'TEACHER' COMMENT 'ä¸Šä¼ è€…ç±»åž‹ï¼šSTUDENT-å¦ç”Ÿï¼ŒTEACHER-教师',
+ `uploader_id` bigint(20) DEFAULT NULL COMMENT 'ä¸Šä¼ è€…ID',
+ `uploader_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'ä¸Šä¼ è€…å§“å',
+ PRIMARY KEY (`id`),
+ KEY `idx_application_type` (`application_id`,`attachment_type`),
+ KEY `idx_upload_time` (`upload_time`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`),
+ KEY `idx_uploader` (`uploader_type`,`uploader_id`),
+ KEY `idx_uploader_time` (`uploader_id`,`upload_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='申请材料附件表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_award
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_award`;
+CREATE TABLE `jcbt_scholarship_award` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `award_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '获奖编号',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+ `scholarship_type_id` bigint(20) NOT NULL COMMENT '奖学金类型ID',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_no` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学号',
+ `student_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学生姓名',
+ `dept_id` bigint(20) NOT NULL COMMENT '所属部门ID',
+ `award_amount` decimal(10,2) NOT NULL COMMENT '奖励金额',
+ `award_level` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '获奖等级',
+ `final_score` decimal(8,2) DEFAULT NULL COMMENT '最终得分',
+ `ranking_in_dept` int(11) DEFAULT NULL COMMENT '院系排名',
+ `award_date` date NOT NULL COMMENT '获奖日期',
+ `certificate_no` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '证书编号',
+ `is_published` tinyint(1) DEFAULT '0' COMMENT '是否公示:0-否,1-是',
+ `publish_date` date DEFAULT NULL COMMENT '公示日期',
+ `is_paid` tinyint(1) DEFAULT '0' COMMENT '是否已发放:0-否,1-是',
+ `pay_date` date DEFAULT NULL COMMENT '发放日期',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_award_no` (`award_no`),
+ KEY `idx_batch_type` (`batch_id`,`scholarship_type_id`),
+ KEY `idx_student_award` (`student_id`,`award_date`),
+ KEY `idx_dept_batch` (`dept_id`,`batch_id`),
+ KEY `idx_publish_pay` (`is_published`,`is_paid`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`),
+ KEY `idx_award_student_date` (`student_id`,`award_date`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='奖学金获奖记录表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_batch
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_batch`;
+CREATE TABLE `jcbt_scholarship_batch` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `batch_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '批次编码',
+ `batch_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '批次名称',
+ `academic_year` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学年',
+ `semester` tinyint(1) NOT NULL COMMENT '学期:1-第一学期,2-第二学期,3-全年',
+ `batch_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '批次类型:REGULAR-常规批次,SPECIAL-专项批次,SUPPLEMENTARY-补充批次',
+ `start_time` datetime NOT NULL COMMENT '开始时间',
+ `end_time` datetime NOT NULL COMMENT '结束时间',
+ `apply_start_time` datetime DEFAULT NULL COMMENT '申请开始时间',
+ `apply_end_time` datetime DEFAULT NULL COMMENT '申请结束时间',
+ `review_start_time` datetime DEFAULT NULL COMMENT '审核开始时间',
+ `review_end_time` datetime DEFAULT NULL COMMENT '审核结束时间',
+ `status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'DRAFT' COMMENT '状态:DRAFT-草稿,ACTIVE-进行中,COMPLETED-已完成,CANCELLED-已取消',
+ `description` text COLLATE utf8mb4_unicode_ci COMMENT '批次描述',
+ `notice_content` text COLLATE utf8mb4_unicode_ci COMMENT '通知内容',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ `application_start_time` datetime DEFAULT NULL COMMENT '申请开始时间',
+ `application_end_time` datetime DEFAULT NULL COMMENT 'ç”³è¯·ç»“æŸæ—¶é—´',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_batch_code_tenant` (`batch_code`,`tenant_id`,`deleted`),
+ KEY `idx_academic_year` (`academic_year`,`semester`),
+ KEY `idx_status_time` (`status`,`start_time`,`end_time`),
+ KEY `idx_tenant_status` (`tenant_id`,`status`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='评定批次表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_batch_type
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_batch_type`;
+CREATE TABLE `jcbt_scholarship_batch_type` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+ `scholarship_type_id` bigint(20) NOT NULL COMMENT '奖学金类型ID',
+ `is_active` tinyint(1) DEFAULT '1' COMMENT '是否启用:0-禁用,1-启用',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序号',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_batch_type_tenant` (`batch_id`,`scholarship_type_id`,`tenant_id`,`deleted`),
+ KEY `idx_batch_id` (`batch_id`),
+ KEY `idx_type_id` (`scholarship_type_id`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`),
+ CONSTRAINT `fk_batch_type_batch` FOREIGN KEY (`batch_id`) REFERENCES `jcbt_scholarship_batch` (`id`) ON DELETE CASCADE,
+ CONSTRAINT `fk_batch_type_type` FOREIGN KEY (`scholarship_type_id`) REFERENCES `jcbt_scholarship_type` (`id`) ON DELETE CASCADE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='奖学金批次类型关联表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_class_quota
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_class_quota`;
+CREATE TABLE `jcbt_scholarship_class_quota` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+ `scholarship_type_id` bigint(20) NOT NULL COMMENT '奖å¦é‡‘类型ID',
+ `dept_id` bigint(20) NOT NULL COMMENT 'å¦é™¢ID',
+ `class_id` bigint(20) NOT NULL COMMENT 'ç级ID',
+ `class_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'ç级åç§°',
+ `total_quota` int(11) DEFAULT '0' COMMENT '总åé¢',
+ `used_quota` int(11) DEFAULT '0' COMMENT '已用åé¢',
+ `reserved_quota` int(11) DEFAULT '0' COMMENT '预留åé¢',
+ `available_quota` int(11) DEFAULT '0' COMMENT 'å¯ç”¨åé¢',
+ `allocation_method` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'MANUAL' COMMENT 'åˆ†é…æ–¹å¼ï¼šMANUAL-手动分é…,AUTO-自动分é…',
+ `allocation_basis` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '分配依据说明',
+ `is_locked` tinyint(1) DEFAULT '0' COMMENT '是å¦é”定:0-å¦ï¼Œ1-是',
+ `status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'ACTIVE' COMMENT '状æ€ï¼šACTIVE-有效,INACTIVE-æ— æ•ˆ',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'åˆ é™¤æ ‡è®°ï¼š0-æ£å¸¸ï¼Œ1-åˆ é™¤',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_batch_type_class` (`batch_id`,`scholarship_type_id`,`class_id`,`deleted`),
+ KEY `idx_dept_class` (`dept_id`,`class_id`),
+ KEY `idx_batch_dept` (`batch_id`,`dept_id`),
+ KEY `idx_quota_status` (`total_quota`,`status`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='ç级åé¢åˆ†é…表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_compatibility
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_compatibility`;
+CREATE TABLE `jcbt_scholarship_compatibility` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `type_id_1` bigint(20) NOT NULL COMMENT '奖学金类型1',
+ `type_id_2` bigint(20) NOT NULL COMMENT '奖学金类型2',
+ `relation_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '关系类型:COMPATIBLE-兼容,EXCLUSIVE-互斥,PRIORITY-优先级关系',
+ `priority_level` int(11) DEFAULT '0' COMMENT '优先级(relation_type为PRIORITY时有效)',
+ `description` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关系描述',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_types_tenant` (`type_id_1`,`type_id_2`,`tenant_id`,`deleted`),
+ KEY `idx_type1_relation` (`type_id_1`,`relation_type`),
+ KEY `idx_type2_relation` (`type_id_2`,`relation_type`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='奖学金兼得关系表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_quota
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_quota`;
+CREATE TABLE `jcbt_scholarship_quota` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+ `scholarship_type_id` bigint(20) NOT NULL COMMENT '奖å¦é‡‘类型ID',
+ `allocation_level` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '分é…级别:UNIVERSITY-å…¨æ ¡ï¼ŒCOLLEGE-å¦é™¢ï¼ŒMAJOR-专业,CLASS-ç级',
+ `target_dept_id` bigint(20) DEFAULT NULL COMMENT 'ç›®æ ‡éƒ¨é—¨ID(å¦é™¢/专业/ç级)',
+ `parent_quota_id` bigint(20) DEFAULT NULL COMMENT '上级åé¢ID(层级分é…)',
+ `total_quota` int(11) NOT NULL DEFAULT '0' COMMENT '总åé¢',
+ `used_quota` int(11) NOT NULL DEFAULT '0' COMMENT '已使用åé¢',
+ `reserved_quota` int(11) NOT NULL DEFAULT '0' COMMENT '预留åé¢',
+ `available_quota` int(11) NOT NULL DEFAULT '0' COMMENT 'å¯ç”¨åé¢',
+ `allocation_rule` text COLLATE utf8mb4_unicode_ci COMMENT '分é…规则(JSONæ ¼å¼ï¼‰',
+ `allocation_basis` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '分é…便®è¯´æ˜Ž',
+ `allocation_method` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'MANUAL' COMMENT 'åˆ†é…æ–¹å¼ï¼šMANUAL-手动分é…,AUTO-自动分é…,PROPORTIONAL-按比例分é…',
+ `is_adjustable` tinyint(1) DEFAULT '1' COMMENT '是å¦å¯è°ƒæ•´ï¼š0-å¦ï¼Œ1-是',
+ `is_locked` tinyint(1) DEFAULT '0' COMMENT '是å¦é”定:0-å¦ï¼Œ1-是',
+ `status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'ACTIVE' COMMENT '状æ€ï¼šACTIVE-生效,INACTIVE-失效,PENDING-å¾…å®¡æ ¸',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'åˆ é™¤æ ‡è®°ï¼š0-æ£å¸¸ï¼Œ1-åˆ é™¤',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_batch_type_dept` (`batch_id`,`scholarship_type_id`,`target_dept_id`,`deleted`),
+ KEY `idx_batch_level` (`batch_id`,`allocation_level`),
+ KEY `idx_dept_quota` (`target_dept_id`,`total_quota`),
+ KEY `idx_parent_quota` (`parent_quota_id`),
+ KEY `idx_tenant_status` (`tenant_id`,`status`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='奖å¦é‡‘åé¢åˆ†é…表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_quota_adjustment
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_quota_adjustment`;
+CREATE TABLE `jcbt_scholarship_quota_adjustment` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `quota_id` bigint(20) NOT NULL COMMENT 'åé¢åˆ†é…ID',
+ `adjustment_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '调整类型:INCREASE-å¢žåŠ ï¼ŒDECREASE-å‡å°‘,TRANSFER-转移',
+ `from_quota_id` bigint(20) DEFAULT NULL COMMENT 'æºåé¢ID(转移时使用)',
+ `to_quota_id` bigint(20) DEFAULT NULL COMMENT 'ç›®æ ‡åé¢ID(转移时使用)',
+ `adjustment_amount` int(11) NOT NULL COMMENT '调整数é‡',
+ `before_total` int(11) NOT NULL COMMENT 'è°ƒæ•´å‰æ€»åé¢',
+ `after_total` int(11) NOT NULL COMMENT 'è°ƒæ•´åŽæ€»åé¢',
+ `adjustment_reason` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'è°ƒæ•´åŽŸå› ',
+ `approval_status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'PENDING' COMMENT '审批状æ€ï¼šPENDING-待审批,APPROVED-已通过,REJECTED-已拒ç»',
+ `approval_user_id` bigint(20) DEFAULT NULL COMMENT '审批人ID',
+ `approval_time` datetime DEFAULT NULL COMMENT '审批时间',
+ `approval_remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审批备注',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'åˆ é™¤æ ‡è®°ï¼š0-æ£å¸¸ï¼Œ1-åˆ é™¤',
+ PRIMARY KEY (`id`),
+ KEY `idx_quota_id` (`quota_id`),
+ KEY `idx_adjustment_type` (`adjustment_type`,`approval_status`),
+ KEY `idx_from_to_quota` (`from_quota_id`,`to_quota_id`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='åé¢è°ƒæ•´è®°å½•表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_quota_usage
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_quota_usage`;
+CREATE TABLE `jcbt_scholarship_quota_usage` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+ `scholarship_type_id` bigint(20) NOT NULL COMMENT '奖å¦é‡‘类型ID',
+ `quota_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'åé¢ç±»åž‹ï¼šCLASS-ç级åé¢ï¼ŒDEPT-å¦é™¢åé¢',
+ `target_id` bigint(20) NOT NULL COMMENT 'ç›®æ ‡ID(ç级ID或å¦é™¢ID)',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `student_id` bigint(20) NOT NULL COMMENT 'å¦ç”ŸID',
+ `operation_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'æ“作类型:USE-使用,RELEASE-释放',
+ `operation_time` datetime NOT NULL COMMENT 'æ“作时间',
+ `operator_id` bigint(20) NOT NULL COMMENT 'æ“作人ID',
+ `operator_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'æ“作人姓å',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'åˆ é™¤æ ‡è®°ï¼š0-æ£å¸¸ï¼Œ1-åˆ é™¤',
+ PRIMARY KEY (`id`),
+ KEY `idx_batch_type_target` (`batch_id`,`scholarship_type_id`,`target_id`),
+ KEY `idx_application_student` (`application_id`,`student_id`),
+ KEY `idx_operation_time` (`operation_type`,`operation_time`),
+ KEY `idx_operator_time` (`operator_id`,`operation_time`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='åé¢ä½¿ç”¨è®°å½•表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_review
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_review`;
+CREATE TABLE `jcbt_scholarship_review` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `review_level` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审核级别:DEPT-院系审核,UNIVERSITY-校级审核',
+ `reviewer_id` bigint(20) NOT NULL COMMENT '审核人ID',
+ `reviewer_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审核人姓名',
+ `review_result` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '审核结果:APPROVED-通过,REJECTED-拒绝,RETURNED-退回修改',
+ `review_score` decimal(8,2) DEFAULT NULL COMMENT '审核评分',
+ `review_opinion` text COLLATE utf8mb4_unicode_ci COMMENT '审核意见',
+ `review_time` datetime NOT NULL COMMENT '审核时间',
+ `next_reviewer_id` bigint(20) DEFAULT NULL COMMENT '下一审核人ID',
+ `is_final_review` tinyint(1) DEFAULT '0' COMMENT '是否最终审核:0-否,1-是',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ PRIMARY KEY (`id`),
+ KEY `idx_application_level` (`application_id`,`review_level`),
+ KEY `idx_reviewer_time` (`reviewer_id`,`review_time`),
+ KEY `idx_result_time` (`review_result`,`review_time`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='审核记录表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_rule
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_rule`;
+CREATE TABLE `jcbt_scholarship_rule` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `rule_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规则编码',
+ `rule_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规则名称',
+ `scholarship_type_id` bigint(20) NOT NULL COMMENT '关联奖学金类型ID',
+ `rule_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规则类型:AUTO-自动评定,MANUAL-手动申请,HYBRID-混合模式',
+ `evaluation_method` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '评定方法:SCORE-积分制,RANKING-排名制,THRESHOLD-阈值制',
+ `min_score` decimal(8,2) DEFAULT NULL COMMENT '最低分数要求',
+ `is_active` tinyint(1) DEFAULT '1' COMMENT '是否激活:0-否,1-是',
+ `priority_level` int(11) DEFAULT '0' COMMENT '规则优先级',
+ `description` text COLLATE utf8mb4_unicode_ci COMMENT '规则描述',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_rule_code_tenant` (`rule_code`,`tenant_id`,`deleted`),
+ KEY `idx_scholarship_type` (`scholarship_type_id`),
+ KEY `idx_rule_type_active` (`rule_type`,`is_active`),
+ KEY `idx_tenant_active` (`tenant_id`,`is_active`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='奖学金评定规则主表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_rule_action
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_rule_action`;
+CREATE TABLE `jcbt_scholarship_rule_action` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `rule_id` bigint(20) NOT NULL COMMENT '规则ID',
+ `action_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '动作类型:CALCULATE-计算分数,NOTIFY-通知,LOG-记录日志,EXECUTE-执行方法',
+ `action_config` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '动作配置(JSON格式)',
+ `execution_order` int(11) DEFAULT '0' COMMENT '执行顺序',
+ `is_enabled` tinyint(1) DEFAULT '1' COMMENT '是否启用:0-否,1-是',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ PRIMARY KEY (`id`),
+ KEY `idx_rule_order` (`rule_id`,`execution_order`),
+ KEY `idx_action_type` (`action_type`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='规则动作表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_rule_condition
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_rule_condition`;
+CREATE TABLE `jcbt_scholarship_rule_condition` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `rule_id` bigint(20) NOT NULL COMMENT '规则ID',
+ `condition_group` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '条件组标识(同组内为AND关系,不同组为OR关系)',
+ `field_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '字段名称',
+ `field_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '字段类型:NUMBER-数字,STRING-字符串,DATE-日期,BOOLEAN-布尔',
+ `operator_type` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作符:EQ-等于,GT-大于,GTE-大于等于,LT-小于,LTE-小于等于,IN-包含,NOT_IN-不包含,LIKE-模糊匹配,BETWEEN-区间',
+ `condition_value` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '条件值(JSON格式存储复杂数据)',
+ `weight` decimal(5,2) DEFAULT '1.00' COMMENT '权重',
+ `is_required` tinyint(1) DEFAULT '1' COMMENT '是否必要条件:0-否,1-是',
+ `error_message` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '不满足条件时的提示信息',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序号',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ PRIMARY KEY (`id`),
+ KEY `idx_rule_group` (`rule_id`,`condition_group`),
+ KEY `idx_field_operator` (`field_name`,`operator_type`),
+ KEY `idx_tenant` (`tenant_id`,`deleted`),
+ KEY `idx_rule_condition_field` (`rule_id`,`field_name`,`operator_type`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='规则条件表';
+
+-- ----------------------------
+-- Table structure for jcbt_scholarship_type
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_scholarship_type`;
+CREATE TABLE `jcbt_scholarship_type` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `type_code` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '奖学金类型编码',
+ `type_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '奖学金名称',
+ `type_category` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '奖学金类别:ACADEMIC-学业奖学金,INNOVATION-创新奖学金,SOCIAL-社会工作奖学金,SPECIAL-专项奖学金',
+ `level_type` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '等级类型:FIRST-一等,SECOND-二等,THIRD-三等,SPECIAL-特等',
+ `award_amount` decimal(10,2) DEFAULT NULL COMMENT '奖励金额',
+ `description` text COLLATE utf8mb4_unicode_ci COMMENT '奖学金描述',
+ `application_guide` text COLLATE utf8mb4_unicode_ci COMMENT '申请指南',
+ `compatibility_type` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'COMPATIBLE' COMMENT '兼得类型:COMPATIBLE-兼容,EXCLUSIVE-互斥,PRIORITY-优先级,CUSTOM-自定义配置',
+ `status` tinyint(1) DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序号',
+ `is_system` tinyint(1) DEFAULT '0' COMMENT '是否系统内置:0-否,1-是',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标记:0-正常,1-删除',
+ `application_conditions` text COLLATE utf8mb4_unicode_ci COMMENT '申请条件',
+ `evaluation_criteria` text COLLATE utf8mb4_unicode_ci COMMENT '评定标准',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_type_code_tenant` (`type_code`,`tenant_id`,`deleted`),
+ KEY `idx_category_status` (`type_category`,`status`),
+ KEY `idx_tenant_status` (`tenant_id`,`status`,`deleted`),
+ KEY `idx_create_time` (`create_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='奖学金类型表';
+
+-- ----------------------------
+-- Table structure for jcbt_work_study_application
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_work_study_application`;
+CREATE TABLE `jcbt_work_study_application` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `position_id` bigint(20) NOT NULL COMMENT '岗位ID',
+ `position_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '岗位名称(冗余字段)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学生姓名',
+ `student_number` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学号',
+ `college_id` bigint(20) NOT NULL COMMENT '学生所在学院ID',
+ `college_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '学生所在学院名称',
+ `major` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '专业',
+ `grade` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '年级',
+ `class_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '班级',
+ `phone` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '联系电话',
+ `email` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '邮箱地址',
+ `application_reason` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '申请理由',
+ `status` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'DRAFT' COMMENT '申请状态',
+ `application_date` datetime NOT NULL COMMENT '申请提交时间',
+ `college_review_status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '学院审核状态',
+ `college_review_time` datetime DEFAULT NULL COMMENT '学院审核时间',
+ `college_reviewer_id` bigint(20) DEFAULT NULL COMMENT '学院审核人ID',
+ `college_reviewer_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '学院审核人姓名',
+ `college_review_comment` text COLLATE utf8mb4_unicode_ci COMMENT '学院审核意见',
+ `final_review_status` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '学生处审核状态',
+ `final_review_time` datetime DEFAULT NULL COMMENT '学生处审核时间',
+ `final_reviewer_id` bigint(20) DEFAULT NULL COMMENT '学生处审核人ID',
+ `final_reviewer_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '学生处审核人姓名',
+ `final_review_comment` text COLLATE utf8mb4_unicode_ci COMMENT '学生处审核意见',
+ `work_start_date` date DEFAULT NULL COMMENT '工作开始时间',
+ `work_end_date` date DEFAULT NULL COMMENT '工作结束时间',
+ `create_by` bigint(20) NOT NULL COMMENT '创建者',
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) NOT NULL COMMENT '更新者',
+ `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '逻辑删除标记',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户ID',
+ `position_type` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '岗位类型',
+ `work_location` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '工作地点',
+ `planned_work_hours` int(11) DEFAULT NULL COMMENT '计划工作时长(小时/周)',
+ `id_card` varchar(18) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '身份证号',
+ `contact_phone` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '联系电话',
+ `major_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '专业名称',
+ `family_financial_status` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '家庭经济情况',
+ `personal_ability` text COLLATE utf8mb4_unicode_ci COMMENT '个人能力及经验',
+ `time_arrangement` text COLLATE utf8mb4_unicode_ci COMMENT '时间安排',
+ `remark` text COLLATE utf8mb4_unicode_ci COMMENT '备注',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_student_position` (`student_id`,`position_id`,`deleted`),
+ KEY `idx_application_position` (`position_id`,`deleted`),
+ KEY `idx_application_student` (`student_id`,`deleted`),
+ KEY `idx_application_student_number` (`student_number`),
+ KEY `idx_application_college_status` (`college_id`,`status`,`deleted`),
+ KEY `idx_application_status_time` (`status`,`application_date`),
+ KEY `idx_application_review_status` (`college_review_status`,`final_review_status`),
+ KEY `idx_application_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='勤工俭学申请信息表';
+
+-- ----------------------------
+-- Table structure for jcbt_work_study_position
+-- ----------------------------
+DROP TABLE IF EXISTS `jcbt_work_study_position`;
+CREATE TABLE `jcbt_work_study_position` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `position_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '岗位名称',
+ `position_scope` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '发布范围(COLLEGE/UNIVERSITY)',
+ `required_count` int(11) NOT NULL DEFAULT '1' COMMENT '需求人数',
+ `work_time` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '工作时间描述',
+ `start_date` date NOT NULL COMMENT '岗位有效期开始',
+ `end_date` date NOT NULL COMMENT '岗位有效期结束',
+ `position_requirements` text COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '岗位要求',
+ `salary_info` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '薪资情况',
+ `contact_teacher` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '联系老师',
+ `contact_phone` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '联系电话',
+ `college_id` bigint(20) NOT NULL COMMENT '发布学院ID',
+ `college_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '发布学院名称',
+ `status` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'DRAFT' COMMENT '岗位状态',
+ `current_count` int(11) NOT NULL DEFAULT '0' COMMENT '当前申请通过人数',
+ `is_active` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否启用',
+ `create_by` bigint(20) NOT NULL COMMENT '创建者',
+ `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_by` bigint(20) NOT NULL COMMENT '更新者',
+ `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '逻辑删除标记',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ PRIMARY KEY (`id`),
+ KEY `idx_position_college_status` (`college_id`,`status`,`deleted`),
+ KEY `idx_position_scope_date` (`position_scope`,`start_date`,`end_date`),
+ KEY `idx_position_name` (`position_name`),
+ KEY `idx_position_create_time` (`create_time`),
+ KEY `idx_position_tenant` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='勤工俭学岗位信息表';
+
+-- ----------------------------
+-- Table structure for rs_applicant
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_applicant`;
+CREATE TABLE `rs_applicant` (
+ `applicant_id` bigint(20) NOT NULL COMMENT '应聘者ID',
+ `user_id` bigint(20) DEFAULT NULL COMMENT '关联用户ID',
+ `name` varchar(50) NOT NULL COMMENT '姓名',
+ `phone` varchar(20) NOT NULL COMMENT '手机号码',
+ `email` varchar(100) NOT NULL COMMENT '电子邮箱',
+ `resume_file_path` varchar(255) DEFAULT NULL COMMENT '简历文件路径',
+ `self_intro` text COMMENT '自我介绍',
+ `current_status` varchar(20) DEFAULT 'active' COMMENT '当前状态(active-可申请 hired-已录用 rejected-已拒绝)',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`applicant_id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_phone` (`phone`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='应聘者信息表';
+
+-- ----------------------------
+-- Table structure for rs_application
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_application`;
+CREATE TABLE `rs_application` (
+ `application_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '申请ID',
+ `job_id` bigint(20) NOT NULL COMMENT '职位ID',
+ `applicant_id` bigint(20) DEFAULT NULL COMMENT '应聘者ID(NULL表示匿名用户)',
+ `apply_time` datetime NOT NULL COMMENT '申请时间',
+ `status` varchar(20) DEFAULT 'pending' COMMENT '状态(pending-待处理 interviewed-已面试 offered-已录用 rejected-已拒绝)',
+ `resume_path` varchar(255) DEFAULT NULL COMMENT '简历路径',
+ `self_description` text COMMENT '自我介绍',
+ `attachment_path` varchar(255) DEFAULT NULL COMMENT '附件路径',
+ `attachment_name` varchar(255) DEFAULT NULL COMMENT '附件名称',
+ `job_title` varchar(100) DEFAULT NULL COMMENT '职位名称',
+ `applicant_name` varchar(50) DEFAULT NULL COMMENT '应聘者姓名',
+ `gender` varchar(10) DEFAULT NULL COMMENT '性别',
+ `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `contact_email` varchar(100) DEFAULT NULL COMMENT '联系邮箱',
+ `age` int(11) DEFAULT NULL COMMENT '年龄',
+ `education` text COMMENT '教育背景',
+ `education_background` text COMMENT '教育背景详情',
+ `experience` text COMMENT '工作经验',
+ `hr_notes` text COMMENT 'HR备注',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`application_id`),
+ KEY `idx_job_id` (`job_id`),
+ KEY `idx_applicant_id` (`applicant_id`),
+ KEY `idx_status` (`status`)
+) ENGINE=InnoDB AUTO_INCREMENT=105 DEFAULT CHARSET=utf8mb4 COMMENT='应聘申请记录表';
+
+-- ----------------------------
+-- Table structure for rs_attachment
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_attachment`;
+CREATE TABLE `rs_attachment` (
+ `attachment_id` bigint(20) NOT NULL COMMENT '附件ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `file_name` varchar(100) NOT NULL COMMENT '文件名',
+ `file_path` varchar(255) NOT NULL COMMENT '文件路径',
+ `file_type` varchar(50) DEFAULT NULL COMMENT '文件类型',
+ `file_size` bigint(20) DEFAULT NULL COMMENT '文件大小(字节)',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`attachment_id`),
+ KEY `idx_application_id` (`application_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='申请附件表';
+
+-- ----------------------------
+-- Table structure for rs_education
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_education`;
+CREATE TABLE `rs_education` (
+ `edu_id` bigint(20) NOT NULL COMMENT '教育经历ID',
+ `applicant_id` bigint(20) NOT NULL COMMENT '应聘者ID',
+ `school_name` varchar(100) NOT NULL COMMENT '学校名称',
+ `major` varchar(100) DEFAULT NULL COMMENT '专业',
+ `degree` varchar(50) DEFAULT NULL COMMENT '学位',
+ `start_date` date DEFAULT NULL COMMENT '开始日期',
+ `end_date` date DEFAULT NULL COMMENT '结束日期',
+ `gpa` varchar(20) DEFAULT NULL COMMENT '绩点',
+ `description` text COMMENT '描述',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`edu_id`),
+ KEY `idx_applicant_id` (`applicant_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='教育经历表';
+
+-- ----------------------------
+-- Table structure for rs_job
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_job`;
+CREATE TABLE `rs_job` (
+ `job_id` bigint(20) NOT NULL COMMENT '职位ID',
+ `title` varchar(100) NOT NULL COMMENT '职位名称',
+ `department` varchar(50) NOT NULL COMMENT '部门',
+ `salary_range` varchar(50) DEFAULT NULL COMMENT '薪资范围',
+ `location` varchar(100) DEFAULT NULL COMMENT '工作地点',
+ `description` text COMMENT '职位描述',
+ `requirements` text COMMENT '任职要求',
+ `is_active` char(1) DEFAULT '0' COMMENT '是否在招(0是 1否)',
+ `publish_time` datetime DEFAULT NULL COMMENT '发布时间',
+ `view_count` int(11) DEFAULT '0' COMMENT '浏览次数',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`job_id`),
+ KEY `idx_department` (`department`),
+ KEY `idx_is_active` (`is_active`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='招聘职位表';
+
+-- ----------------------------
+-- Table structure for rs_overseas_application
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_overseas_application`;
+CREATE TABLE `rs_overseas_application` (
+ `application_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '申请ID',
+ `applicant_id` bigint(20) NOT NULL COMMENT '申请人ID',
+ `applicant_name` varchar(50) NOT NULL COMMENT '申请人姓名',
+ `department` varchar(100) NOT NULL COMMENT '所属部门',
+ `position` varchar(100) DEFAULT NULL COMMENT '职位',
+ `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `contact_email` varchar(100) DEFAULT NULL COMMENT '联系邮箱',
+ `purpose` varchar(50) NOT NULL COMMENT '出国目的',
+ `purpose_detail` text NOT NULL COMMENT '目的详细说明',
+ `destination` varchar(100) NOT NULL COMMENT '目的地国家',
+ `destination_city` varchar(100) DEFAULT NULL COMMENT '目的地城市',
+ `start_date` date NOT NULL COMMENT '开始日期',
+ `end_date` date NOT NULL COMMENT '结束日期',
+ `duration` int(11) NOT NULL COMMENT '出国天数',
+ `budget` decimal(15,2) NOT NULL COMMENT '预算金额',
+ `invitation` text COMMENT '邀请方信息',
+ `itinerary` text NOT NULL COMMENT '行程安排',
+ `accommodation_plan` text COMMENT '住宿安排',
+ `transportation_plan` text COMMENT '交通安排',
+ `status` char(1) NOT NULL DEFAULT '0' COMMENT '申请状态:0-待审核,1-已通过,2-已拒绝,3-已取消,4-已完成',
+ `current_approver` varchar(100) DEFAULT NULL COMMENT '当前审批人',
+ `approval_level` char(1) DEFAULT NULL COMMENT '审批级别:1-部门主管,2-分管领导,3-校领导',
+ `apply_time` datetime NOT NULL COMMENT '申请时间',
+ `approval_time` datetime DEFAULT NULL COMMENT '审批时间',
+ `admin_remark` text COMMENT '管理员备注',
+ `applicant_remark` text COMMENT '申请人备注',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志:0-存在,1-删除',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`application_id`),
+ KEY `idx_applicant_id` (`applicant_id`),
+ KEY `idx_department` (`department`),
+ KEY `idx_status` (`status`),
+ KEY `idx_apply_time` (`apply_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COMMENT='出国申请表';
+
+-- ----------------------------
+-- Table structure for rs_overseas_approval
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_overseas_approval`;
+CREATE TABLE `rs_overseas_approval` (
+ `approval_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '审批ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `approver_id` bigint(20) NOT NULL COMMENT '审批人ID',
+ `approver_name` varchar(50) NOT NULL COMMENT '审批人姓名',
+ `approval_level` char(1) NOT NULL COMMENT '审批级别:1-部门主管,2-分管领导,3-校领导',
+ `approval_status` char(1) NOT NULL COMMENT '审批结果:0-待审核,1-通过,2-拒绝',
+ `approval_opinion` text COMMENT '审批意见',
+ `approval_time` datetime DEFAULT NULL COMMENT '审批时间',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志:0-存在,1-删除',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`approval_id`),
+ KEY `idx_application_id` (`application_id`),
+ KEY `idx_approver_id` (`approver_id`),
+ KEY `idx_approval_level` (`approval_level`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COMMENT='出国审批记录表';
+
+-- ----------------------------
+-- Table structure for rs_overseas_record
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_overseas_record`;
+CREATE TABLE `rs_overseas_record` (
+ `record_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '记录ID',
+ `application_id` bigint(20) NOT NULL COMMENT '关联申请ID',
+ `applicant_id` bigint(20) NOT NULL COMMENT '申请人ID',
+ `applicant_name` varchar(50) NOT NULL COMMENT '申请人姓名',
+ `department` varchar(100) NOT NULL COMMENT '所属部门',
+ `position` varchar(100) DEFAULT NULL COMMENT '职位',
+ `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `contact_email` varchar(100) DEFAULT NULL COMMENT '联系邮箱',
+ `purpose` varchar(50) NOT NULL COMMENT '出国目的',
+ `purpose_detail` text COMMENT '目的详细说明',
+ `destination` varchar(100) NOT NULL COMMENT '目的地国家',
+ `destination_city` varchar(100) DEFAULT NULL COMMENT '目的地城市',
+ `actual_start_date` date DEFAULT NULL COMMENT '实际开始日期',
+ `actual_end_date` date DEFAULT NULL COMMENT '实际结束日期',
+ `actual_duration` int(11) DEFAULT NULL COMMENT '实际出国天数',
+ `actual_budget` decimal(15,2) DEFAULT NULL COMMENT '实际花费金额',
+ `budget_source` varchar(50) DEFAULT NULL COMMENT '经费来源',
+ `invitation` text COMMENT '邀请方信息',
+ `itinerary` text COMMENT '行程安排',
+ `accommodation_plan` text COMMENT '住宿安排',
+ `transportation_plan` text COMMENT '交通安排',
+ `completion_status` char(1) NOT NULL DEFAULT '1' COMMENT '完æˆçжæ€(1-已完æˆ,2-已拒ç»)',
+ `achievement` text COMMENT '出国成果',
+ `report_content` text COMMENT '出国报告',
+ `certificate_path` varchar(500) DEFAULT NULL COMMENT '证明材料路径',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志:0-存在,1-删除',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`record_id`),
+ KEY `idx_application_id` (`application_id`),
+ KEY `idx_applicant_id` (`applicant_id`),
+ KEY `idx_department` (`department`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COMMENT='出国记录表';
+
+-- ----------------------------
+-- Table structure for rs_overseas_record_status_backup
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_overseas_record_status_backup`;
+CREATE TABLE `rs_overseas_record_status_backup` (
+ `record_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '记录ID',
+ `completion_status` char(1) DEFAULT '0' COMMENT '完成状态:0-进行中,1-已完成,2-提前结束',
+ `old_status_text` varchar(12) CHARACTER SET latin1 NOT NULL DEFAULT '',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+
+-- ----------------------------
+-- Table structure for rs_training_application
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_training_application`;
+CREATE TABLE `rs_training_application` (
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `course_id` bigint(20) NOT NULL COMMENT '课程ID',
+ `course_name` varchar(100) DEFAULT NULL COMMENT '自定义课程名称',
+ `reject_time` datetime DEFAULT NULL COMMENT '拒绝时间',
+ `user_id` bigint(20) NOT NULL COMMENT '申请人ID',
+ `user_name` varchar(50) NOT NULL COMMENT '申请人姓名',
+ `department` varchar(50) NOT NULL COMMENT '所属部门',
+ `position` varchar(50) DEFAULT NULL COMMENT '职位',
+ `reason` text COMMENT '申请理由',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0待审核 1已通过 2已拒绝 3进行中 4已完成)',
+ `apply_time` datetime DEFAULT NULL COMMENT '申请时间',
+ `current_approver` varchar(50) DEFAULT NULL COMMENT '当前审批人',
+ `location` varchar(200) DEFAULT NULL COMMENT '培训地点',
+ `duration` int(11) DEFAULT NULL COMMENT '学时',
+ `start_time` datetime DEFAULT NULL COMMENT '开始时间',
+ `end_time` datetime DEFAULT NULL COMMENT '结束时间',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志',
+ PRIMARY KEY (`application_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='培训申请表';
+
+-- ----------------------------
+-- Table structure for rs_training_approval
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_training_approval`;
+CREATE TABLE `rs_training_approval` (
+ `approval_id` bigint(20) NOT NULL COMMENT '审批ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `approver_id` bigint(20) NOT NULL COMMENT '审批人ID',
+ `approver_name` varchar(50) NOT NULL COMMENT '审批人姓名',
+ `approval_level` int(11) NOT NULL COMMENT '审批级别(1部门主管 2分管领导 3校领导)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0待审核 1已通过 2已拒绝)',
+ `opinion` varchar(500) DEFAULT NULL COMMENT '审批意见',
+ `approval_time` datetime DEFAULT NULL COMMENT '审批时间',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志',
+ PRIMARY KEY (`approval_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='培训审批表';
+
+-- ----------------------------
+-- Table structure for rs_training_course
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_training_course`;
+CREATE TABLE `rs_training_course` (
+ `course_id` bigint(20) NOT NULL COMMENT '课程ID',
+ `title` varchar(100) NOT NULL COMMENT '课程名称',
+ `category` varchar(50) NOT NULL COMMENT '课程类别',
+ `description` text COMMENT '课程描述',
+ `start_time` datetime NOT NULL COMMENT '开始时间',
+ `end_time` datetime NOT NULL COMMENT '结束时间',
+ `duration` int(11) NOT NULL COMMENT '学时数',
+ `location` varchar(200) DEFAULT NULL COMMENT '培训地点',
+ `max_participants` int(11) DEFAULT '0' COMMENT '最大参与人数',
+ `current_participants` int(11) DEFAULT '0' COMMENT '当前报名人数',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志',
+ PRIMARY KEY (`course_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='培训课程表';
+
+-- ----------------------------
+-- Table structure for rs_training_record
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_training_record`;
+CREATE TABLE `rs_training_record` (
+ `record_id` bigint(20) NOT NULL COMMENT '记录ID',
+ `application_id` bigint(20) NOT NULL COMMENT '申请ID',
+ `course_id` bigint(20) NOT NULL COMMENT '课程ID',
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `user_name` varchar(50) NOT NULL COMMENT '用户姓名',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志',
+ `location` varchar(255) DEFAULT NULL COMMENT '培训地点',
+ `duration` int(11) DEFAULT NULL COMMENT '学时',
+ `apply_time` datetime DEFAULT NULL COMMENT '申请时间',
+ `status` varchar(10) DEFAULT NULL COMMENT '申请状态',
+ `course_name` varchar(255) DEFAULT NULL COMMENT '课程名称',
+ `department` varchar(255) DEFAULT NULL COMMENT '所属部门',
+ `position` varchar(255) DEFAULT NULL COMMENT '职位',
+ `reason` varchar(255) DEFAULT NULL COMMENT '申请理由',
+ `current_approver` varchar(255) DEFAULT NULL COMMENT '当前审批人',
+ `start_time` datetime DEFAULT NULL COMMENT '开始时间',
+ `end_time` datetime DEFAULT NULL COMMENT '结束时间',
+ `completion_status` char(1) DEFAULT '0' COMMENT '完æˆçжæ€ï¼ˆ0è¿›è¡Œä¸ 1å·²å®Œæˆ 2未完æˆï¼‰',
+ `completion_time` datetime DEFAULT NULL COMMENT 'å®Œæˆæ—¶é—´',
+ `score` decimal(5,2) DEFAULT NULL COMMENT 'æˆç»©',
+ `certificate_path` varchar(255) DEFAULT NULL COMMENT 'è¯ä¹¦è·¯å¾„',
+ `certificate_number` varchar(50) DEFAULT NULL COMMENT 'è¯ä¹¦ç¼–å·',
+ `feedback` text COMMENT '培è®å馈',
+ PRIMARY KEY (`record_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='培训记录表';
+
+-- ----------------------------
+-- Table structure for rs_work_experience
+-- ----------------------------
+DROP TABLE IF EXISTS `rs_work_experience`;
+CREATE TABLE `rs_work_experience` (
+ `exp_id` bigint(20) NOT NULL COMMENT '工作经历ID',
+ `applicant_id` bigint(20) NOT NULL COMMENT '应聘者ID',
+ `company_name` varchar(100) NOT NULL COMMENT '公司名称',
+ `position` varchar(100) NOT NULL COMMENT '职位',
+ `start_date` date DEFAULT NULL COMMENT '开始日期',
+ `end_date` date DEFAULT NULL COMMENT '结束日期',
+ `is_current` char(1) DEFAULT '0' COMMENT '是否当前工作(0是 1否)',
+ `description` text COMMENT '工作描述',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`exp_id`),
+ KEY `idx_applicant_id` (`applicant_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作经历表';
+
+-- ----------------------------
+-- Table structure for sj_distributed_lock
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_distributed_lock`;
+CREATE TABLE `sj_distributed_lock` (
+ `name` varchar(64) NOT NULL COMMENT '锁名称',
+ `lock_until` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '锁定时长',
+ `locked_at` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '锁定时间',
+ `locked_by` varchar(255) NOT NULL COMMENT '锁定者',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='锁定表';
+
+-- ----------------------------
+-- Table structure for sj_group_config
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_group_config`;
+CREATE TABLE `sj_group_config` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '组描述',
+ `token` varchar(64) NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT' COMMENT 'token',
+ `group_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '组状态 0、未启用 1、启用',
+ `version` int(11) NOT NULL COMMENT '版本号',
+ `group_partition` int(11) NOT NULL COMMENT '分区',
+ `id_generator_mode` tinyint(4) NOT NULL DEFAULT '1' COMMENT '唯一id生成模式 默认号段模式',
+ `init_scene` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否初始化场景 0:否 1:是',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='组配置';
+
+-- ----------------------------
+-- Table structure for sj_job
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_job`;
+CREATE TABLE `sj_job` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `job_name` varchar(64) NOT NULL COMMENT '名称',
+ `args_str` text COMMENT '执行方法参数',
+ `args_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '参数类型 ',
+ `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
+ `job_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务状态 0、关闭、1、开启',
+ `task_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务类型 1、集群 2、广播 3、切片',
+ `route_key` tinyint(4) NOT NULL DEFAULT '4' COMMENT '路由策略',
+ `executor_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '执行器类型',
+ `executor_info` varchar(255) DEFAULT NULL COMMENT '执行器名称',
+ `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
+ `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
+ `block_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复',
+ `executor_timeout` int(11) NOT NULL DEFAULT '0' COMMENT '任务执行超时时间,单位秒',
+ `max_retry_times` int(11) NOT NULL DEFAULT '0' COMMENT '最大重试次数',
+ `parallel_num` int(11) NOT NULL DEFAULT '1' COMMENT '并行数',
+ `retry_interval` int(11) NOT NULL DEFAULT '0' COMMENT '重试间隔(s)',
+ `bucket_index` int(11) NOT NULL DEFAULT '0' COMMENT 'bucket',
+ `resident` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否是常驻任务',
+ `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
+ `owner_id` bigint(20) DEFAULT NULL COMMENT '负责人id',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`),
+ KEY `idx_job_status_bucket_index` (`job_status`,`bucket_index`),
+ KEY `idx_create_dt` (`create_dt`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='任务信息';
+
+-- ----------------------------
+-- Table structure for sj_job_log_message
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_job_log_message`;
+CREATE TABLE `sj_job_log_message` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `job_id` bigint(20) NOT NULL COMMENT '任务信息id',
+ `task_batch_id` bigint(20) NOT NULL COMMENT '任务批次id',
+ `task_id` bigint(20) NOT NULL COMMENT '调度任务id',
+ `message` longtext NOT NULL COMMENT '调度信息',
+ `log_num` int(11) NOT NULL DEFAULT '1' COMMENT '日志数量',
+ `real_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '上报时间',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_task_batch_id_task_id` (`task_batch_id`,`task_id`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB AUTO_INCREMENT=177849 DEFAULT CHARSET=utf8mb4 COMMENT='调度日志';
+
+-- ----------------------------
+-- Table structure for sj_job_summary
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_job_summary`;
+CREATE TABLE `sj_job_summary` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
+ `business_id` bigint(20) NOT NULL COMMENT '业务id (job_id或workflow_id)',
+ `system_task_type` tinyint(4) NOT NULL DEFAULT '3' COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
+ `trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
+ `success_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行成功-日志数量',
+ `fail_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量',
+ `fail_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
+ `stop_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量',
+ `stop_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
+ `cancel_num` int(11) NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量',
+ `cancel_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_trigger_at_system_task_type_business_id` (`trigger_at`,`system_task_type`,`business_id`) USING BTREE,
+ KEY `idx_namespace_id_group_name_business_id` (`namespace_id`,`group_name`,`business_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=70 DEFAULT CHARSET=utf8mb4 COMMENT='DashBoard_Job';
+
+-- ----------------------------
+-- Table structure for sj_job_task
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_job_task`;
+CREATE TABLE `sj_job_task` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `job_id` bigint(20) NOT NULL COMMENT '任务信息id',
+ `task_batch_id` bigint(20) NOT NULL COMMENT '调度任务id',
+ `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父执行器id',
+ `task_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '执行的状态 0、失败 1、成功',
+ `retry_count` int(11) NOT NULL DEFAULT '0' COMMENT '重试次数',
+ `mr_stage` tinyint(4) DEFAULT NULL COMMENT '动态分片所处阶段 1:map 2:reduce 3:mergeReduce',
+ `leaf` tinyint(4) NOT NULL DEFAULT '1' COMMENT '叶子节点',
+ `task_name` varchar(255) NOT NULL DEFAULT '' COMMENT '任务名称',
+ `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
+ `wf_context` text COMMENT '工作流全局上下文',
+ `result_message` text NOT NULL COMMENT '执行结果',
+ `args_str` text COMMENT '执行方法参数',
+ `args_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '参数类型 ',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_task_batch_id_task_status` (`task_batch_id`,`task_status`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB AUTO_INCREMENT=73823 DEFAULT CHARSET=utf8mb4 COMMENT='任务实例';
+
+-- ----------------------------
+-- Table structure for sj_job_task_batch
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_job_task_batch`;
+CREATE TABLE `sj_job_task_batch` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `job_id` bigint(20) NOT NULL COMMENT '任务id',
+ `workflow_node_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '工作流节点id',
+ `parent_workflow_node_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '工作流任务父批次id',
+ `workflow_task_batch_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '工作流任务批次id',
+ `task_batch_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '任务批次状态 0、失败 1、成功',
+ `operation_reason` tinyint(4) NOT NULL DEFAULT '0' COMMENT '操作原因',
+ `execution_at` bigint(13) NOT NULL DEFAULT '0' COMMENT '任务执行时间',
+ `system_task_type` tinyint(4) NOT NULL DEFAULT '3' COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
+ `parent_id` varchar(64) NOT NULL DEFAULT '' COMMENT '父节点',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_job_id_task_batch_status` (`job_id`,`task_batch_status`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`),
+ KEY `idx_workflow_task_batch_id_workflow_node_id` (`workflow_task_batch_id`,`workflow_node_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=76342 DEFAULT CHARSET=utf8mb4 COMMENT='任务批次';
+
+-- ----------------------------
+-- Table structure for sj_namespace
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_namespace`;
+CREATE TABLE `sj_namespace` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `name` varchar(64) NOT NULL COMMENT '名称',
+ `unique_id` varchar(64) NOT NULL COMMENT '唯一id',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
+ `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_unique_id` (`unique_id`),
+ KEY `idx_name` (`name`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COMMENT='命名空间';
+
+-- ----------------------------
+-- Table structure for sj_notify_config
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_notify_config`;
+CREATE TABLE `sj_notify_config` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `notify_name` varchar(64) NOT NULL DEFAULT '' COMMENT '通知名称',
+ `system_task_type` tinyint(4) NOT NULL DEFAULT '3' COMMENT '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务',
+ `notify_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '通知状态 0、未启用 1、启用',
+ `recipient_ids` varchar(128) NOT NULL COMMENT '接收人id列表',
+ `notify_threshold` int(11) NOT NULL DEFAULT '0' COMMENT '通知阈值',
+ `notify_scene` tinyint(4) NOT NULL DEFAULT '0' COMMENT '通知场景',
+ `rate_limiter_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '限流状态 0、未启用 1、启用',
+ `rate_limiter_threshold` int(11) NOT NULL DEFAULT '0' COMMENT '每秒限流阈值',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通知配置';
+
+-- ----------------------------
+-- Table structure for sj_notify_recipient
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_notify_recipient`;
+CREATE TABLE `sj_notify_recipient` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `recipient_name` varchar(64) NOT NULL COMMENT '接收人名称',
+ `notify_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook',
+ `notify_attribute` varchar(512) NOT NULL COMMENT '配置属性',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_namespace_id` (`namespace_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='告警通知接收人';
+
+-- ----------------------------
+-- Table structure for sj_retry
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_retry`;
+CREATE TABLE `sj_retry` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `group_id` bigint(20) NOT NULL COMMENT '组Id',
+ `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
+ `scene_id` bigint(20) NOT NULL COMMENT '场景ID',
+ `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
+ `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
+ `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
+ `args_str` text NOT NULL COMMENT '执行方法参数',
+ `ext_attrs` text NOT NULL COMMENT '扩展字段',
+ `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
+ `retry_count` int(11) NOT NULL DEFAULT '0' COMMENT '重试次数',
+ `retry_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数',
+ `task_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务类型 1、重试数据 2、回调数据',
+ `bucket_index` int(11) NOT NULL DEFAULT '0' COMMENT 'bucket',
+ `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父节点id',
+ `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '逻辑删除',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_scene_tasktype_idempotentid_deleted` (`scene_id`,`task_type`,`idempotent_id`,`deleted`),
+ KEY `idx_biz_no` (`biz_no`),
+ KEY `idx_idempotent_id` (`idempotent_id`),
+ KEY `idx_retry_status_bucket_index` (`retry_status`,`bucket_index`),
+ KEY `idx_parent_id` (`parent_id`),
+ KEY `idx_create_dt` (`create_dt`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='重试信息表';
+
+-- ----------------------------
+-- Table structure for sj_retry_dead_letter
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_retry_dead_letter`;
+CREATE TABLE `sj_retry_dead_letter` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `group_id` bigint(20) NOT NULL COMMENT '组Id',
+ `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
+ `scene_id` bigint(20) NOT NULL COMMENT '场景ID',
+ `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
+ `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
+ `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
+ `args_str` text NOT NULL COMMENT '执行方法参数',
+ `ext_attrs` text NOT NULL COMMENT '扩展字段',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`,`group_name`,`scene_name`),
+ KEY `idx_idempotent_id` (`idempotent_id`),
+ KEY `idx_biz_no` (`biz_no`),
+ KEY `idx_create_dt` (`create_dt`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='死信队列表';
+
+-- ----------------------------
+-- Table structure for sj_retry_scene_config
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_retry_scene_config`;
+CREATE TABLE `sj_retry_scene_config` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `scene_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '组状态 0、未启用 1、启用',
+ `max_retry_count` int(11) NOT NULL DEFAULT '5' COMMENT '最大重试次数',
+ `back_off` tinyint(4) NOT NULL DEFAULT '1' COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
+ `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长',
+ `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
+ `deadline_request` bigint(20) unsigned NOT NULL DEFAULT '60000' COMMENT 'Deadline Request 调用链超时 单位毫秒',
+ `executor_timeout` int(11) unsigned NOT NULL DEFAULT '5' COMMENT '任务执行超时时间,单位秒',
+ `route_key` tinyint(4) NOT NULL DEFAULT '4' COMMENT '路由策略',
+ `block_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
+ `cb_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '回调状态 0、不开启 1、开启',
+ `cb_trigger_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
+ `cb_max_count` int(11) NOT NULL DEFAULT '16' COMMENT '回调的最大执行次数',
+ `cb_trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '回调的最大执行次数',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`,`group_name`,`scene_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='场景配置';
+
+-- ----------------------------
+-- Table structure for sj_retry_summary
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_retry_summary`;
+CREATE TABLE `sj_retry_summary` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
+ `scene_name` varchar(50) NOT NULL DEFAULT '' COMMENT '场景名称',
+ `trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
+ `running_num` int(11) NOT NULL DEFAULT '0' COMMENT '重试中-日志数量',
+ `finish_num` int(11) NOT NULL DEFAULT '0' COMMENT '重试完成-日志数量',
+ `max_count_num` int(11) NOT NULL DEFAULT '0' COMMENT '重试到达最大次数-日志数量',
+ `suspend_num` int(11) NOT NULL DEFAULT '0' COMMENT '暂停重试-日志数量',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_scene_name_trigger_at` (`namespace_id`,`group_name`,`scene_name`,`trigger_at`) USING BTREE,
+ KEY `idx_trigger_at` (`trigger_at`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='DashBoard_Retry';
+
+-- ----------------------------
+-- Table structure for sj_retry_task
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_retry_task`;
+CREATE TABLE `sj_retry_task` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
+ `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
+ `ext_attrs` text NOT NULL COMMENT '扩展字段',
+ `task_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '重试状态',
+ `task_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '任务类型 1、重试数据 2、回调数据',
+ `operation_reason` tinyint(4) NOT NULL DEFAULT '0' COMMENT '操作原因',
+ `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_group_name_scene_name` (`namespace_id`,`group_name`,`scene_name`),
+ KEY `task_status` (`task_status`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_retry_id` (`retry_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='重试任务表';
+
+-- ----------------------------
+-- Table structure for sj_retry_task_log_message
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_retry_task_log_message`;
+CREATE TABLE `sj_retry_task_log_message` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
+ `retry_task_id` bigint(20) NOT NULL COMMENT '重试任务Id',
+ `message` longtext NOT NULL COMMENT '异常信息',
+ `log_num` int(11) NOT NULL DEFAULT '1' COMMENT '日志数量',
+ `real_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '上报时间',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_namespace_id_group_name_retry_task_id` (`namespace_id`,`group_name`,`retry_task_id`),
+ KEY `idx_create_dt` (`create_dt`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='任务调度日志信息记录表';
+
+-- ----------------------------
+-- Table structure for sj_sequence_alloc
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_sequence_alloc`;
+CREATE TABLE `sj_sequence_alloc` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
+ `max_id` bigint(20) NOT NULL DEFAULT '1' COMMENT '最大id',
+ `step` int(11) NOT NULL DEFAULT '100' COMMENT '步长',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='号段模式序号ID分配表';
+
+-- ----------------------------
+-- Table structure for sj_server_node
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_server_node`;
+CREATE TABLE `sj_server_node` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `host_id` varchar(64) NOT NULL COMMENT '主机id',
+ `host_ip` varchar(64) NOT NULL COMMENT '机器ip',
+ `host_port` int(16) NOT NULL COMMENT '机器端口',
+ `expire_at` datetime NOT NULL COMMENT '过期时间',
+ `node_type` tinyint(4) NOT NULL COMMENT '节点类型 1、客户端 2、是服务端',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_host_id_host_ip` (`host_id`,`host_ip`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`),
+ KEY `idx_expire_at_node_type` (`expire_at`,`node_type`)
+) ENGINE=InnoDB AUTO_INCREMENT=1528 DEFAULT CHARSET=utf8mb4 COMMENT='服务器节点';
+
+-- ----------------------------
+-- Table structure for sj_system_user
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_system_user`;
+CREATE TABLE `sj_system_user` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `username` varchar(64) NOT NULL COMMENT '账号',
+ `password` varchar(128) NOT NULL COMMENT '密码',
+ `role` tinyint(4) NOT NULL DEFAULT '0' COMMENT '角色:1-普通用户、2-管理员',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_username` (`username`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='系统用户表';
+
+-- ----------------------------
+-- Table structure for sj_system_user_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_system_user_permission`;
+CREATE TABLE `sj_system_user_permission` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `system_user_id` bigint(20) NOT NULL COMMENT '系统用户id',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_namespace_id_group_name_system_user_id` (`namespace_id`,`group_name`,`system_user_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统用户权限表';
+
+-- ----------------------------
+-- Table structure for sj_workflow
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_workflow`;
+CREATE TABLE `sj_workflow` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `workflow_name` varchar(64) NOT NULL COMMENT '工作流名称',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `workflow_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '工作流状态 0、关闭、1、开启',
+ `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
+ `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
+ `next_trigger_at` bigint(20) NOT NULL COMMENT '下次触发时间',
+ `block_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
+ `executor_timeout` int(11) NOT NULL DEFAULT '0' COMMENT '任务执行超时时间,单位秒',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
+ `flow_info` text COMMENT '流程信息',
+ `wf_context` text COMMENT '上下文',
+ `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
+ `bucket_index` int(11) NOT NULL DEFAULT '0' COMMENT 'bucket',
+ `version` int(11) NOT NULL COMMENT '版本号',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作流';
+
+-- ----------------------------
+-- Table structure for sj_workflow_node
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_workflow_node`;
+CREATE TABLE `sj_workflow_node` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `node_name` varchar(64) NOT NULL COMMENT '节点名称',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `job_id` bigint(20) NOT NULL COMMENT '任务信息id',
+ `workflow_id` bigint(20) NOT NULL COMMENT '工作流ID',
+ `node_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '1、任务节点 2、条件节点',
+ `expression_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '1、SpEl、2、Aviator 3、QL',
+ `fail_strategy` tinyint(4) NOT NULL DEFAULT '1' COMMENT '失败策略 1、跳过 2、阻塞',
+ `workflow_node_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '工作流节点状态 0、关闭、1、开启',
+ `priority_level` int(11) NOT NULL DEFAULT '1' COMMENT '优先级',
+ `node_info` text COMMENT '节点信息 ',
+ `version` int(11) NOT NULL COMMENT '版本号',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作流节点';
+
+-- ----------------------------
+-- Table structure for sj_workflow_task_batch
+-- ----------------------------
+DROP TABLE IF EXISTS `sj_workflow_task_batch`;
+CREATE TABLE `sj_workflow_task_batch` (
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `workflow_id` bigint(20) NOT NULL COMMENT '工作流任务id',
+ `task_batch_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '任务批次状态 0、失败 1、成功',
+ `operation_reason` tinyint(4) NOT NULL DEFAULT '0' COMMENT '操作原因',
+ `flow_info` text COMMENT '流程信息',
+ `wf_context` text COMMENT '全局上下文',
+ `execution_at` bigint(13) NOT NULL DEFAULT '0' COMMENT '任务执行时间',
+ `ext_attrs` varchar(256) DEFAULT '' COMMENT '扩展字段',
+ `version` int(11) NOT NULL DEFAULT '1' COMMENT '版本号',
+ `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_job_id_task_batch_status` (`workflow_id`,`task_batch_status`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_namespace_id_group_name` (`namespace_id`,`group_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='工作流批次';
+
+-- ----------------------------
+-- Table structure for stgl_activity
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_activity`;
+CREATE TABLE `stgl_activity` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `activity_name` varchar(100) NOT NULL COMMENT '活动名称',
+ `activity_type` varchar(50) NOT NULL COMMENT '活动类型',
+ `activity_theme` varchar(100) DEFAULT NULL COMMENT '活动主题',
+ `start_time` datetime DEFAULT NULL COMMENT '开始时间',
+ `end_time` datetime DEFAULT NULL COMMENT '结束时间',
+ `location` varchar(200) DEFAULT NULL COMMENT '活动地点',
+ `description` text COMMENT '活动简介(1000字以内)',
+ `poster_url` varchar(500) DEFAULT NULL COMMENT '活动海报路径',
+ `related_club_id` bigint(20) DEFAULT NULL COMMENT '关联社团ID',
+ `organizer_name` varchar(100) DEFAULT NULL COMMENT '主办方名称',
+ `organizer_type` varchar(50) DEFAULT NULL COMMENT '主办方类型',
+ `organizer_contact` varchar(100) DEFAULT NULL COMMENT '主办方联系人',
+ `organizer_phone` varchar(20) DEFAULT NULL COMMENT '主办方电话',
+ `co_organizers` json DEFAULT NULL COMMENT '承办方信息(JSON格式存储多个承办方)',
+ `instructors` json DEFAULT NULL COMMENT '指导老师列表(JSON格式)',
+ `registration_type` tinyint(4) DEFAULT NULL COMMENT '报名方式(1-个人 2-团队 3-两者均可)',
+ `registration_start` datetime DEFAULT NULL COMMENT '报名开始时间',
+ `registration_end` datetime DEFAULT NULL COMMENT '报名结束时间',
+ `registration_status` tinyint(4) DEFAULT NULL COMMENT '报名状态(0-未开始 1-报名中 2-已截止 3-已关闭)',
+ `max_participants` int(11) DEFAULT NULL COMMENT '总人数上限',
+ `max_teams` int(11) DEFAULT NULL COMMENT '团队数量上限',
+ `team_size_min` int(11) DEFAULT NULL COMMENT '每队最小人数',
+ `team_size_max` int(11) DEFAULT NULL COMMENT '每队最大人数',
+ `need_approval` tinyint(4) DEFAULT '0' COMMENT '是否需要审核(0-无需 1-需要)',
+ `activity_status` varchar(20) DEFAULT '筹备中' COMMENT '活动状态',
+ `is_finished` tinyint(4) DEFAULT '0' COMMENT '是否为已办活动(0-否 1-是)',
+ `summary` text COMMENT '活动总结报告',
+ `achievements` text COMMENT '活动成果',
+ `import_source` varchar(200) DEFAULT NULL COMMENT '导入来源信息',
+ PRIMARY KEY (`id`),
+ KEY `idx_activity_name` (`activity_name`),
+ KEY `idx_activity_type` (`activity_type`),
+ KEY `idx_start_time` (`start_time`),
+ KEY `idx_end_time` (`end_time`),
+ KEY `idx_activity_status` (`activity_status`),
+ KEY `idx_registration_status` (`registration_status`),
+ KEY `idx_related_club_id` (`related_club_id`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='活动信息表';
+
+-- ----------------------------
+-- Table structure for stgl_activity_rating
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_activity_rating`;
+CREATE TABLE `stgl_activity_rating` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `activity_id` bigint(20) NOT NULL COMMENT '活动ID',
+ `user_id` bigint(20) NOT NULL COMMENT '评分人ID',
+ `student_no` varchar(20) DEFAULT NULL COMMENT '学号',
+ `student_name` varchar(50) DEFAULT NULL COMMENT '学生姓名',
+ `rating_score` tinyint(4) NOT NULL COMMENT '评分(1-5分)',
+ `rating_comment` varchar(500) DEFAULT NULL COMMENT '评分备注',
+ `rating_time` datetime DEFAULT NULL COMMENT '评分时间',
+ `content_score` tinyint(4) DEFAULT NULL COMMENT '内容评分(1-5分)',
+ `organization_score` tinyint(4) DEFAULT NULL COMMENT '组织评分(1-5分)',
+ `experience_score` tinyint(4) DEFAULT NULL COMMENT '体验评分(1-5分)',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_activity_user` (`activity_id`,`user_id`,`deleted`),
+ KEY `idx_activity_id` (`activity_id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_rating_score` (`rating_score`),
+ KEY `idx_rating_time` (`rating_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='活动评分表';
+
+-- ----------------------------
+-- Table structure for stgl_activity_registration
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_activity_registration`;
+CREATE TABLE `stgl_activity_registration` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `activity_id` bigint(20) NOT NULL COMMENT '活动ID',
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `student_no` varchar(20) DEFAULT NULL COMMENT '学号',
+ `student_name` varchar(50) DEFAULT NULL COMMENT '学生姓名',
+ `registration_type` tinyint(4) NOT NULL COMMENT '报名类型(1-个人 2-团队)',
+ `team_id` bigint(20) DEFAULT NULL COMMENT '团队ID(团队报名时)',
+ `team_name` varchar(100) DEFAULT NULL COMMENT '团队名称',
+ `registration_time` datetime DEFAULT NULL COMMENT '报名时间',
+ `approval_status` tinyint(4) DEFAULT '0' COMMENT '审核状态(0-待审核 1-通过 2-驳回)',
+ `approval_time` datetime DEFAULT NULL COMMENT '审核时间',
+ `approval_by` bigint(20) DEFAULT NULL COMMENT '审核人ID',
+ `approval_remark` varchar(500) DEFAULT NULL COMMENT '审核意见',
+ `score` varchar(50) DEFAULT NULL COMMENT '获得成绩',
+ `score_time` datetime DEFAULT NULL COMMENT '成绩录入时间',
+ `score_by` bigint(20) DEFAULT NULL COMMENT '成绩录入人ID',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_activity_user` (`activity_id`,`user_id`,`deleted`),
+ KEY `idx_activity_id` (`activity_id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_registration_type` (`registration_type`),
+ KEY `idx_team_id` (`team_id`),
+ KEY `idx_approval_status` (`approval_status`),
+ KEY `idx_registration_time` (`registration_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='活动报名表';
+
+-- ----------------------------
+-- Table structure for stgl_attendance_record
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_attendance_record`;
+CREATE TABLE `stgl_attendance_record` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `task_id` bigint(20) NOT NULL COMMENT '考勤任务ID',
+ `activity_id` bigint(20) NOT NULL COMMENT '活动ID',
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `student_no` varchar(20) DEFAULT NULL COMMENT '学号',
+ `student_name` varchar(50) DEFAULT NULL COMMENT '学生姓名',
+ `check_time` datetime DEFAULT NULL COMMENT '签到时间',
+ `check_status` tinyint(4) DEFAULT '0' COMMENT '签到状态(0-未签到 1-已签到 2-迟到)',
+ `check_latitude` decimal(10,7) DEFAULT NULL COMMENT '签到纬度',
+ `check_longitude` decimal(10,7) DEFAULT NULL COMMENT '签到经度',
+ `check_address` varchar(200) DEFAULT NULL COMMENT '签到地址',
+ `device_type` tinyint(4) DEFAULT NULL COMMENT '设备类型(1-Web 2-移动端)',
+ `distance` int(11) DEFAULT NULL COMMENT '与标准位置距离(米)',
+ `checkout_time` datetime DEFAULT NULL COMMENT '签退时间',
+ `checkout_latitude` decimal(10,7) DEFAULT NULL COMMENT '签退纬度',
+ `checkout_longitude` decimal(10,7) DEFAULT NULL COMMENT '签退经度',
+ `checkout_address` varchar(200) DEFAULT NULL COMMENT '签退地址',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_task_user` (`task_id`,`user_id`,`deleted`),
+ KEY `idx_task_id` (`task_id`),
+ KEY `idx_activity_id` (`activity_id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_check_status` (`check_status`),
+ KEY `idx_check_time` (`check_time`),
+ KEY `idx_device_type` (`device_type`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='签到记录表';
+
+-- ----------------------------
+-- Table structure for stgl_attendance_task
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_attendance_task`;
+CREATE TABLE `stgl_attendance_task` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `activity_id` bigint(20) NOT NULL COMMENT '关联活动ID',
+ `task_name` varchar(100) NOT NULL COMMENT '考勤任务名称',
+ `task_status` tinyint(4) DEFAULT '0' COMMENT '任务状态(0-未发起 1-进行中 2-已停止 3-已结束)',
+ `start_time` datetime DEFAULT NULL COMMENT '签到开始时间',
+ `end_time` datetime DEFAULT NULL COMMENT '签到结束时间',
+ `location_required` tinyint(4) DEFAULT '0' COMMENT '是否需要地理位置(0-否 1-是)',
+ `check_location` varchar(200) DEFAULT NULL COMMENT '签到地点',
+ `location_latitude` decimal(10,7) DEFAULT NULL COMMENT '签到地点纬度',
+ `location_longitude` decimal(10,7) DEFAULT NULL COMMENT '签到地点经度',
+ `location_range` int(11) DEFAULT '500' COMMENT '允许签到范围(米)',
+ `total_participants` int(11) DEFAULT '0' COMMENT '应签到人数',
+ `checked_count` int(11) DEFAULT '0' COMMENT '已签到人数',
+ `late_count` int(11) DEFAULT '0' COMMENT '迟到人数',
+ `absent_count` int(11) DEFAULT '0' COMMENT '缺席人数',
+ PRIMARY KEY (`id`),
+ KEY `idx_activity_id` (`activity_id`),
+ KEY `idx_task_status` (`task_status`),
+ KEY `idx_start_time` (`start_time`),
+ KEY `idx_end_time` (`end_time`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='考勤任务表';
+
+-- ----------------------------
+-- Table structure for stgl_club
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_club`;
+CREATE TABLE `stgl_club` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `club_name` varchar(100) NOT NULL COMMENT '社团名称',
+ `club_type` varchar(50) NOT NULL COMMENT '社团类型',
+ `establish_date` date DEFAULT NULL COMMENT '成立日期',
+ `description` text COMMENT '社团简介(500字以内)',
+ `email` varchar(100) DEFAULT NULL COMMENT '邮箱',
+ `phone` varchar(20) DEFAULT NULL COMMENT '电话',
+ `logo_url` varchar(500) DEFAULT NULL COMMENT 'logo图片路径',
+ `president_name` varchar(50) DEFAULT NULL COMMENT '社长姓名',
+ `president_student_no` varchar(20) DEFAULT NULL COMMENT '社长学号',
+ `president_dept` varchar(100) DEFAULT NULL COMMENT '社长院系',
+ `president_major` varchar(100) DEFAULT NULL COMMENT '社长专业',
+ `president_class` varchar(100) DEFAULT NULL COMMENT '社长班级',
+ `president_phone` varchar(20) DEFAULT NULL COMMENT '社长联系方式',
+ `vice_president_name` varchar(50) DEFAULT NULL COMMENT '副社长姓名',
+ `vice_president_student_no` varchar(20) DEFAULT NULL COMMENT '副社长学号',
+ `vice_president_dept` varchar(100) DEFAULT NULL COMMENT '副社长院系',
+ `vice_president_major` varchar(100) DEFAULT NULL COMMENT '副社长专业',
+ `vice_president_class` varchar(100) DEFAULT NULL COMMENT '副社长ç级',
+ `vice_president_phone` varchar(20) DEFAULT NULL COMMENT '副社长è”系方å¼',
+ `vice_presidents_json` text COMMENT '副社长列表JSONæ ¼å¼å˜å‚¨',
+ `advisor_name` varchar(50) DEFAULT NULL COMMENT '指导老师姓名',
+ `advisor_dept` varchar(100) DEFAULT NULL COMMENT '指导老师所属院系',
+ `advisor_phone` varchar(20) DEFAULT NULL COMMENT '指导è€å¸ˆè”系电è¯',
+ `advisor_email` varchar(100) DEFAULT NULL COMMENT '指导è€å¸ˆé‚®ç®±',
+ `advisors_json` text COMMENT '指导è€å¸ˆåˆ—表JSONæ ¼å¼å˜å‚¨',
+ `member_limit` int(11) DEFAULT '0' COMMENT '成员规模上限',
+ `departments` text COMMENT '组织架构(部门设置及职责)',
+ `recruit_cycle` varchar(50) DEFAULT NULL COMMENT '招新周期',
+ `recruit_time` varchar(50) DEFAULT NULL COMMENT '招新时间',
+ `activity_frequency` varchar(50) DEFAULT NULL COMMENT '活动频率',
+ `funding_sources` varchar(200) DEFAULT NULL COMMENT '经费来源(多选)',
+ `charter_url` varchar(500) DEFAULT NULL COMMENT '章程文档路径',
+ `honors` text COMMENT '历史荣誉',
+ `status` tinyint(4) DEFAULT '1' COMMENT '状态(1-正常 0-停用)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_club_name` (`club_name`,`tenant_id`,`deleted`),
+ KEY `idx_club_type` (`club_type`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_status` (`status`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='社团信息表';
+
+-- ----------------------------
+-- Table structure for stgl_material_submission
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_material_submission`;
+CREATE TABLE `stgl_material_submission` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `task_id` bigint(20) NOT NULL COMMENT '收集任务ID',
+ `activity_id` bigint(20) NOT NULL COMMENT '活动ID',
+ `user_id` bigint(20) NOT NULL COMMENT '提交人ID',
+ `student_no` varchar(20) DEFAULT NULL COMMENT '学号',
+ `student_name` varchar(50) DEFAULT NULL COMMENT '学生姓名',
+ `submission_type` tinyint(4) NOT NULL COMMENT '提交类型(1-个人 2-团队)',
+ `team_id` bigint(20) DEFAULT NULL COMMENT '团队ID(团队提交时)',
+ `content_text` text COMMENT '文本内容',
+ `file_urls` json DEFAULT NULL COMMENT '附件路径(JSON格式)',
+ `image_urls` json DEFAULT NULL COMMENT '图片路径(JSON格式)',
+ `submission_time` datetime DEFAULT NULL COMMENT '提交时间',
+ `round_number` int(11) DEFAULT '1' COMMENT '提交轮次',
+ `review_status` tinyint(4) DEFAULT '0' COMMENT '审核状态(0-待审核 1-通过 2-需修改)',
+ `review_time` datetime DEFAULT NULL COMMENT '审核时间',
+ `review_by` bigint(20) DEFAULT NULL COMMENT '审核人ID',
+ `review_remark` varchar(500) DEFAULT NULL COMMENT '审核意见',
+ PRIMARY KEY (`id`),
+ KEY `idx_task_id` (`task_id`),
+ KEY `idx_activity_id` (`activity_id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_submission_type` (`submission_type`),
+ KEY `idx_team_id` (`team_id`),
+ KEY `idx_submission_time` (`submission_time`),
+ KEY `idx_round_number` (`round_number`),
+ KEY `idx_review_status` (`review_status`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='材料提交记录表';
+
+-- ----------------------------
+-- Table structure for stgl_material_task
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_material_task`;
+CREATE TABLE `stgl_material_task` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `activity_id` bigint(20) NOT NULL COMMENT '关联活动ID',
+ `task_name` varchar(100) NOT NULL COMMENT '收集任务名称',
+ `collection_types` varchar(100) NOT NULL COMMENT '收集类型(文本,附件,图片)',
+ `task_description` text COMMENT '收集说明',
+ `task_status` tinyint(4) DEFAULT '1' COMMENT '任务状态(0-关闭 1-开启)',
+ `deadline` datetime DEFAULT NULL COMMENT '截止时间',
+ `round_number` int(11) DEFAULT '1' COMMENT '收集轮次',
+ `file_size_limit` int(11) DEFAULT '10' COMMENT '文件大小限制(MB)',
+ `file_count_limit` int(11) DEFAULT '5' COMMENT '文件数量限制',
+ `allowed_file_types` varchar(200) DEFAULT NULL COMMENT '允许的文件类型',
+ `total_participants` int(11) DEFAULT '0' COMMENT '应提交人数',
+ `submitted_count` int(11) DEFAULT '0' COMMENT '已提交人数',
+ `pending_count` int(11) DEFAULT '0' COMMENT '待提交人数',
+ PRIMARY KEY (`id`),
+ KEY `idx_activity_id` (`activity_id`),
+ KEY `idx_task_status` (`task_status`),
+ KEY `idx_deadline` (`deadline`),
+ KEY `idx_round_number` (`round_number`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='材料收集任务表';
+
+-- ----------------------------
+-- Table structure for stgl_member
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_member`;
+CREATE TABLE `stgl_member` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `member_type` tinyint(4) NOT NULL COMMENT '成员类型(1-社团成员 2-志愿者)',
+ `relation_id` bigint(20) NOT NULL COMMENT '关联ID(社团ID或志愿者队伍ID)',
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `student_no` varchar(20) DEFAULT NULL COMMENT '学号',
+ `student_name` varchar(50) DEFAULT NULL COMMENT '学生姓名',
+ `role_type` tinyint(4) DEFAULT NULL COMMENT '角色类型(1-社长 2-副社长 3-成员)',
+ `join_time` datetime DEFAULT NULL COMMENT '加入时间',
+ `status` tinyint(4) DEFAULT '1' COMMENT '状态(1-正常 0-退出)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_member_relation` (`member_type`,`relation_id`,`user_id`,`deleted`),
+ KEY `idx_member_type` (`member_type`),
+ KEY `idx_relation_id` (`relation_id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_join_time` (`join_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`),
+ KEY `idx_member_type_status` (`member_type`,`status`),
+ KEY `idx_member_type_relation` (`member_type`,`relation_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='成员关系表';
+
+-- ----------------------------
+-- Table structure for stgl_team_info
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_team_info`;
+CREATE TABLE `stgl_team_info` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `team_name` varchar(100) NOT NULL COMMENT '团队名称',
+ `activity_id` bigint(20) NOT NULL COMMENT '关联活动ID',
+ `leader_user_id` bigint(20) NOT NULL COMMENT '队长用户ID',
+ `leader_name` varchar(50) DEFAULT NULL COMMENT '队长姓名',
+ `leader_student_no` varchar(20) DEFAULT NULL COMMENT '队长学号',
+ `team_members` json DEFAULT NULL COMMENT '团队成员信息(JSON格式)',
+ `team_size` int(11) DEFAULT '0' COMMENT '团队人数',
+ `description` text COMMENT '团队描述',
+ `status` tinyint(4) DEFAULT '1' COMMENT '状态(1-正常 0-解散)',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_team_activity` (`team_name`,`activity_id`,`deleted`),
+ KEY `idx_activity_id` (`activity_id`),
+ KEY `idx_leader_user_id` (`leader_user_id`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='团队信息表';
+
+-- ----------------------------
+-- Table structure for stgl_volunteer_team
+-- ----------------------------
+DROP TABLE IF EXISTS `stgl_volunteer_team`;
+CREATE TABLE `stgl_volunteer_team` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `team_name` varchar(100) NOT NULL COMMENT '队伍名称',
+ `team_type` varchar(50) DEFAULT NULL COMMENT '队伍类型',
+ `description` text COMMENT '队伍简介',
+ `establish_date` date DEFAULT NULL COMMENT 'æˆç«‹æ—¥æœŸ',
+ `phone` varchar(20) DEFAULT NULL COMMENT 'è”系电è¯',
+ `email` varchar(100) DEFAULT NULL COMMENT 'è”系邮箱',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信æ¯',
+ `leader_name` varchar(50) DEFAULT NULL COMMENT '队长姓名',
+ `leader_student_no` varchar(20) DEFAULT NULL COMMENT '队长学号',
+ `leader_user_id` bigint(20) DEFAULT NULL COMMENT '队长用户ID',
+ `leader_phone` varchar(20) DEFAULT NULL COMMENT '队长è”系方å¼',
+ `leader_dept` varchar(100) DEFAULT NULL COMMENT '队长院系',
+ `leader_major` varchar(100) DEFAULT NULL COMMENT '队长专业',
+ `leader_class` varchar(100) DEFAULT NULL COMMENT '队长ç级',
+ `advisor_name` varchar(50) DEFAULT NULL COMMENT '指导老师',
+ `advisor_phone` varchar(20) DEFAULT NULL COMMENT '指导è€å¸ˆè”系电è¯',
+ `advisor_dept` varchar(100) DEFAULT NULL COMMENT '指导è€å¸ˆæ‰€åœ¨éƒ¨é—¨',
+ `advisor_email` varchar(100) DEFAULT NULL COMMENT '指导è€å¸ˆé‚®ç®±',
+ `member_limit` int(11) DEFAULT '0' COMMENT '成员上限',
+ `status` tinyint(4) DEFAULT '1' COMMENT '状态(1-正常 0-停用)',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_team_name` (`team_name`,`tenant_id`,`deleted`),
+ KEY `idx_team_type` (`team_type`),
+ KEY `idx_leader_user_id` (`leader_user_id`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_status` (`status`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='志愿者队伍表';
+
+-- ----------------------------
+-- Table structure for sys_bucket_access_password
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_bucket_access_password`;
+CREATE TABLE `sys_bucket_access_password` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `bucket_name` varchar(100) NOT NULL COMMENT 'bucket名称',
+ `access_password` varchar(255) NOT NULL COMMENT '访问密码(加密存储)',
+ `password_salt` varchar(100) NOT NULL COMMENT '密码盐值',
+ `is_active` tinyint(4) DEFAULT '1' COMMENT '是否启用(1启用 0禁用)',
+ `expire_time` datetime DEFAULT NULL COMMENT '密码过期时间',
+ `max_access_count` int(11) DEFAULT '0' COMMENT '最大访问次数(0表示无限制)',
+ `current_access_count` int(11) DEFAULT '0' COMMENT '当前访问次数',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `deleted` tinyint(4) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_bucket_name` (`bucket_name`),
+ KEY `idx_bucket_access_password_bucket_name` (`bucket_name`)
+) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='bucket访问密码表';
+
+-- ----------------------------
+-- Table structure for sys_bucket_access_record
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_bucket_access_record`;
+CREATE TABLE `sys_bucket_access_record` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `bucket_name` varchar(100) NOT NULL COMMENT 'bucket名称',
+ `access_password_id` bigint(20) NOT NULL COMMENT '访问密码ID',
+ `access_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '访问时间',
+ `access_ip` varchar(50) DEFAULT NULL COMMENT '访问IP',
+ `access_user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理',
+ `access_result` tinyint(4) DEFAULT '1' COMMENT '访问结果(1成功 0失败)',
+ `fail_reason` varchar(500) DEFAULT NULL COMMENT '失败原因',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_bucket_access_record_bucket_name` (`bucket_name`),
+ KEY `idx_bucket_access_record_access_time` (`access_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='bucket访问记录表';
+
+-- ----------------------------
+-- Table structure for sys_client
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_client`;
+CREATE TABLE `sys_client` (
+ `id` bigint(20) NOT NULL COMMENT 'id',
+ `client_id` varchar(64) DEFAULT NULL COMMENT '客户端id',
+ `client_key` varchar(32) DEFAULT NULL COMMENT '客户端key',
+ `client_secret` varchar(255) DEFAULT NULL COMMENT '客户端秘钥',
+ `grant_type` varchar(255) DEFAULT NULL COMMENT '授权类型',
+ `device_type` varchar(32) DEFAULT NULL COMMENT '设备类型',
+ `active_timeout` int(11) DEFAULT '1800' COMMENT 'token活跃超时时间',
+ `timeout` int(11) DEFAULT '604800' COMMENT 'token固定超时',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统授权表';
+
+-- ----------------------------
+-- Table structure for sys_config
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_config`;
+CREATE TABLE `sys_config` (
+ `config_id` bigint(20) NOT NULL COMMENT '参数主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `config_name` varchar(100) DEFAULT '' COMMENT '参数名称',
+ `config_key` varchar(100) DEFAULT '' COMMENT '参数键名',
+ `config_value` varchar(500) DEFAULT '' COMMENT '参数键值',
+ `config_type` char(1) DEFAULT 'N' COMMENT '系统内置(Y是 N否)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`config_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='参数配置表';
+
+-- ----------------------------
+-- Table structure for sys_dept
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_dept`;
+CREATE TABLE `sys_dept` (
+ `dept_id` bigint(20) NOT NULL COMMENT '部门id',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父部门id',
+ `ancestors` varchar(500) DEFAULT '' COMMENT '祖级列表',
+ `dept_name` varchar(30) DEFAULT '' COMMENT '部门名称',
+ `dept_category` varchar(100) DEFAULT NULL COMMENT '部门类别编码',
+ `order_num` int(4) DEFAULT '0' COMMENT '显示顺序',
+ `leader` bigint(20) DEFAULT NULL COMMENT '负责人',
+ `phone` varchar(11) DEFAULT NULL COMMENT '联系电话',
+ `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
+ `status` char(1) DEFAULT '0' COMMENT '部门状态(0正常 1停用)',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`dept_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='部门表';
+
+-- ----------------------------
+-- Table structure for sys_dict_data
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_dict_data`;
+CREATE TABLE `sys_dict_data` (
+ `dict_code` bigint(20) NOT NULL COMMENT '字典编码',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `dict_sort` int(4) DEFAULT '0' COMMENT '字典排序',
+ `dict_label` varchar(100) DEFAULT '' COMMENT '字典标签',
+ `dict_value` varchar(100) DEFAULT '' COMMENT '字典键值',
+ `dict_type` varchar(100) DEFAULT '' COMMENT '字典类型',
+ `css_class` varchar(100) DEFAULT NULL COMMENT '样式属性(其他样式扩展)',
+ `list_class` varchar(100) DEFAULT NULL COMMENT '表格回显样式',
+ `is_default` char(1) DEFAULT 'N' COMMENT '是否默认(Y是 N否)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`dict_code`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='字典数据表';
+
+-- ----------------------------
+-- Table structure for sys_dict_type
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_dict_type`;
+CREATE TABLE `sys_dict_type` (
+ `dict_id` bigint(20) NOT NULL COMMENT '字典主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `dict_name` varchar(100) DEFAULT '' COMMENT '字典名称',
+ `dict_type` varchar(100) DEFAULT '' COMMENT '字典类型',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`dict_id`),
+ UNIQUE KEY `tenant_id` (`tenant_id`,`dict_type`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='字典类型表';
+
+-- ----------------------------
+-- Table structure for sys_file_access_log
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_file_access_log`;
+CREATE TABLE `sys_file_access_log` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `oss_id` bigint(20) NOT NULL COMMENT '文件ID',
+ `user_id` bigint(20) NOT NULL COMMENT '访问用户ID',
+ `access_type` varchar(20) NOT NULL COMMENT '访问类型:DOWNLOAD, PREVIEW',
+ `access_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '访问时间',
+ `ip_address` varchar(50) DEFAULT NULL COMMENT '访问IP',
+ `user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ PRIMARY KEY (`id`),
+ KEY `idx_file_access_log_oss_id` (`oss_id`),
+ KEY `idx_file_access_log_user_id` (`user_id`),
+ KEY `idx_file_access_log_access_time` (`access_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文件访问日志表';
+
+-- ----------------------------
+-- Table structure for sys_file_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_file_permission`;
+CREATE TABLE `sys_file_permission` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+ `oss_id` bigint(20) NOT NULL COMMENT '文件ID',
+ `user_id` bigint(20) DEFAULT NULL COMMENT '用户ID(为空表示角色权限)',
+ `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID(为空表示用户权限)',
+ `permission_type` varchar(20) NOT NULL COMMENT '权限类型:READ, WRITE, DELETE',
+ `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `deleted` tinyint(4) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ PRIMARY KEY (`id`),
+ KEY `idx_file_permission_oss_id` (`oss_id`),
+ KEY `idx_file_permission_user_id` (`user_id`),
+ KEY `idx_file_permission_role_id` (`role_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8mb4 COMMENT='文件权限表';
+
+-- ----------------------------
+-- Table structure for sys_logininfor
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_logininfor`;
+CREATE TABLE `sys_logininfor` (
+ `info_id` bigint(20) NOT NULL COMMENT '访问ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `user_name` varchar(50) DEFAULT '' COMMENT '用户账号',
+ `client_key` varchar(32) DEFAULT '' COMMENT '客户端',
+ `device_type` varchar(32) DEFAULT '' COMMENT '设备类型',
+ `ipaddr` varchar(128) DEFAULT '' COMMENT '登录IP地址',
+ `login_location` varchar(255) DEFAULT '' COMMENT '登录地点',
+ `browser` varchar(50) DEFAULT '' COMMENT '浏览器类型',
+ `os` varchar(50) DEFAULT '' COMMENT '操作系统',
+ `status` char(1) DEFAULT '0' COMMENT '登录状态(0成功 1失败)',
+ `msg` varchar(255) DEFAULT '' COMMENT '提示消息',
+ `login_time` datetime DEFAULT NULL COMMENT '访问时间',
+ PRIMARY KEY (`info_id`),
+ KEY `idx_sys_logininfor_s` (`status`),
+ KEY `idx_sys_logininfor_lt` (`login_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统访问记录';
+
+-- ----------------------------
+-- Table structure for sys_menu
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_menu`;
+CREATE TABLE `sys_menu` (
+ `menu_id` bigint(20) NOT NULL COMMENT '菜单ID',
+ `menu_name` varchar(50) NOT NULL COMMENT '菜单名称',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父菜单ID',
+ `order_num` int(4) DEFAULT '0' COMMENT '显示顺序',
+ `path` varchar(200) DEFAULT '' COMMENT '路由地址',
+ `component` varchar(255) DEFAULT NULL COMMENT '组件路径',
+ `query_param` varchar(255) DEFAULT NULL COMMENT '路由参数',
+ `is_frame` int(1) DEFAULT '1' COMMENT '是否为外链(0是 1否)',
+ `is_cache` int(1) DEFAULT '0' COMMENT '是否缓存(0缓存 1不缓存)',
+ `menu_type` char(1) DEFAULT '' COMMENT '菜单类型(M目录 C菜单 F按钮)',
+ `visible` char(1) DEFAULT '0' COMMENT '显示状态(0显示 1隐藏)',
+ `status` char(1) DEFAULT '0' COMMENT '菜单状态(0正常 1停用)',
+ `perms` varchar(100) DEFAULT NULL COMMENT '权限标识',
+ `icon` varchar(100) DEFAULT '#' COMMENT '菜单图标',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT '' COMMENT '备注',
+ PRIMARY KEY (`menu_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='菜单权限表';
+
+-- ----------------------------
+-- Table structure for sys_menu_copy1
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_menu_copy1`;
+CREATE TABLE `sys_menu_copy1` (
+ `menu_id` bigint(20) NOT NULL COMMENT '菜单ID',
+ `menu_name` varchar(50) NOT NULL COMMENT '菜单名称',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父菜单ID',
+ `order_num` int(4) DEFAULT '0' COMMENT '显示顺序',
+ `path` varchar(200) DEFAULT '' COMMENT '路由地址',
+ `component` varchar(255) DEFAULT NULL COMMENT '组件路径',
+ `query_param` varchar(255) DEFAULT NULL COMMENT '路由参数',
+ `is_frame` int(1) DEFAULT '1' COMMENT '是否为外链(0是 1否)',
+ `is_cache` int(1) DEFAULT '0' COMMENT '是否缓存(0缓存 1不缓存)',
+ `menu_type` char(1) DEFAULT '' COMMENT '菜单类型(M目录 C菜单 F按钮)',
+ `visible` char(1) DEFAULT '0' COMMENT '显示状态(0显示 1隐藏)',
+ `status` char(1) DEFAULT '0' COMMENT '菜单状态(0正常 1停用)',
+ `perms` varchar(100) DEFAULT NULL COMMENT '权限标识',
+ `icon` varchar(100) DEFAULT '#' COMMENT '菜单图标',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT '' COMMENT '备注',
+ PRIMARY KEY (`menu_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='菜单权限表';
+
+-- ----------------------------
+-- Table structure for sys_notice
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_notice`;
+CREATE TABLE `sys_notice` (
+ `notice_id` bigint(20) NOT NULL COMMENT '公告ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `notice_title` varchar(50) NOT NULL COMMENT '公告标题',
+ `notice_type` char(1) NOT NULL COMMENT '公告类型(1通知 2公告)',
+ `notice_content` longblob COMMENT '公告内容',
+ `status` char(1) DEFAULT '0' COMMENT '公告状态(0正常 1关闭)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(255) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`notice_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通知公告表';
+
+-- ----------------------------
+-- Table structure for sys_oper_log
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_oper_log`;
+CREATE TABLE `sys_oper_log` (
+ `oper_id` bigint(20) NOT NULL COMMENT '日志主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `title` varchar(50) DEFAULT '' COMMENT '模块标题',
+ `business_type` int(2) DEFAULT '0' COMMENT '业务类型(0其它 1新增 2修改 3删除)',
+ `method` varchar(100) DEFAULT '' COMMENT '方法名称',
+ `request_method` varchar(10) DEFAULT '' COMMENT '请求方式',
+ `operator_type` int(1) DEFAULT '0' COMMENT '操作类别(0其它 1后台用户 2手机端用户)',
+ `oper_name` varchar(50) DEFAULT '' COMMENT '操作人员',
+ `dept_name` varchar(50) DEFAULT '' COMMENT '部门名称',
+ `oper_url` varchar(255) DEFAULT '' COMMENT '请求URL',
+ `oper_ip` varchar(128) DEFAULT '' COMMENT '主机地址',
+ `oper_location` varchar(255) DEFAULT '' COMMENT '操作地点',
+ `oper_param` varchar(4000) DEFAULT '' COMMENT '请求参数',
+ `json_result` varchar(4000) DEFAULT '' COMMENT '返回参数',
+ `status` int(1) DEFAULT '0' COMMENT '操作状态(0正常 1异常)',
+ `error_msg` varchar(4000) DEFAULT '' COMMENT '错误消息',
+ `oper_time` datetime DEFAULT NULL COMMENT '操作时间',
+ `cost_time` bigint(20) DEFAULT '0' COMMENT '消耗时间',
+ PRIMARY KEY (`oper_id`),
+ KEY `idx_sys_oper_log_bt` (`business_type`),
+ KEY `idx_sys_oper_log_s` (`status`),
+ KEY `idx_sys_oper_log_ot` (`oper_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='操作日志记录';
+
+-- ----------------------------
+-- Table structure for sys_oss
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_oss`;
+CREATE TABLE `sys_oss` (
+ `oss_id` bigint(20) NOT NULL COMMENT '对象存储主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `file_name` varchar(255) NOT NULL DEFAULT '' COMMENT '文件名',
+ `original_name` varchar(255) NOT NULL DEFAULT '' COMMENT '原名',
+ `file_suffix` varchar(10) NOT NULL DEFAULT '' COMMENT '文件后缀名',
+ `url` varchar(500) NOT NULL COMMENT 'URL地址',
+ `ext1` text COMMENT '扩展字段',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '上传人',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新人',
+ `service` varchar(20) NOT NULL DEFAULT 'minio' COMMENT '服务商',
+ PRIMARY KEY (`oss_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='OSS对象存储表';
+
+-- ----------------------------
+-- Table structure for sys_oss_config
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_oss_config`;
+CREATE TABLE `sys_oss_config` (
+ `oss_config_id` bigint(20) NOT NULL COMMENT '主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `config_key` varchar(20) NOT NULL DEFAULT '' COMMENT '配置key',
+ `access_key` varchar(255) DEFAULT '' COMMENT 'accessKey',
+ `secret_key` varchar(255) DEFAULT '' COMMENT '秘钥',
+ `bucket_name` varchar(255) DEFAULT '' COMMENT '桶名称',
+ `prefix` varchar(255) DEFAULT '' COMMENT '前缀',
+ `endpoint` varchar(255) DEFAULT '' COMMENT '访问站点',
+ `domain` varchar(255) DEFAULT '' COMMENT '自定义域名',
+ `is_https` char(1) DEFAULT 'N' COMMENT '是否https(Y=是,N=否)',
+ `region` varchar(255) DEFAULT '' COMMENT '域',
+ `access_policy` char(1) NOT NULL DEFAULT '1' COMMENT '桶权限类型(0=private 1=public 2=custom)',
+ `status` char(1) DEFAULT '1' COMMENT '是否默认(0=是,1=否)',
+ `ext1` varchar(255) DEFAULT '' COMMENT '扩展字段',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`oss_config_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='对象存储配置表';
+
+-- ----------------------------
+-- Table structure for sys_post
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_post`;
+CREATE TABLE `sys_post` (
+ `post_id` bigint(20) NOT NULL COMMENT '岗位ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `dept_id` bigint(20) NOT NULL COMMENT '部门id',
+ `post_code` varchar(64) NOT NULL COMMENT '岗位编码',
+ `post_category` varchar(100) DEFAULT NULL COMMENT '岗位类别编码',
+ `post_name` varchar(50) NOT NULL COMMENT '岗位名称',
+ `post_sort` int(4) NOT NULL COMMENT '显示顺序',
+ `status` char(1) NOT NULL COMMENT '状态(0正常 1停用)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`post_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='岗位信息表';
+
+-- ----------------------------
+-- Table structure for sys_region
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_region`;
+CREATE TABLE `sys_region` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `code` varchar(20) NOT NULL COMMENT '行政区划编码',
+ `name` varchar(50) NOT NULL COMMENT '行政区划名称',
+ `short_name` varchar(30) DEFAULT NULL COMMENT '行政区划简称',
+ `parent_code` bigint(20) DEFAULT '0' COMMENT '父级行政区划编码,顶级为0',
+ `level` tinyint(1) NOT NULL COMMENT '层级(1:省,2:市,3:区/县,4:街道/镇)',
+ `sort` int(11) DEFAULT '0' COMMENT '排序',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `longitude` decimal(10,7) DEFAULT NULL COMMENT '经度',
+ `latitude` decimal(10,7) DEFAULT NULL COMMENT '纬度',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '逻辑删除标识(0未删除 1已删除)',
+ `tenant_id` bigint(20) DEFAULT NULL COMMENT '租户ID',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `idx_region_code` (`code`,`deleted`,`tenant_id`),
+ KEY `idx_region_parent_code` (`parent_code`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='行政区划表';
+
+-- ----------------------------
+-- Table structure for sys_role
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role`;
+CREATE TABLE `sys_role` (
+ `role_id` bigint(20) NOT NULL COMMENT '角色ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `role_name` varchar(30) NOT NULL COMMENT '角色名称',
+ `role_key` varchar(100) NOT NULL COMMENT '角色权限字符串',
+ `role_sort` int(4) NOT NULL COMMENT '显示顺序',
+ `data_scope` char(1) DEFAULT '1' COMMENT '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限 5:仅本人数据权限 6:部门及以下或本人数据权限)',
+ `menu_check_strictly` tinyint(1) DEFAULT '1' COMMENT '菜单树选择项是否关联显示',
+ `dept_check_strictly` tinyint(1) DEFAULT '1' COMMENT '部门树选择项是否关联显示',
+ `status` char(1) NOT NULL COMMENT '角色状态(0正常 1停用)',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`role_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色信息表';
+
+-- ----------------------------
+-- Table structure for sys_role_dept
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role_dept`;
+CREATE TABLE `sys_role_dept` (
+ `role_id` bigint(20) NOT NULL COMMENT '角色ID',
+ `dept_id` bigint(20) NOT NULL COMMENT '部门ID',
+ PRIMARY KEY (`role_id`,`dept_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色和部门关联表';
+
+-- ----------------------------
+-- Table structure for sys_role_menu
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role_menu`;
+CREATE TABLE `sys_role_menu` (
+ `role_id` bigint(20) NOT NULL COMMENT '角色ID',
+ `menu_id` bigint(20) NOT NULL COMMENT '菜单ID',
+ PRIMARY KEY (`role_id`,`menu_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='角色和菜单关联表';
+
+-- ----------------------------
+-- Table structure for sys_social
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_social`;
+CREATE TABLE `sys_social` (
+ `id` bigint(20) NOT NULL COMMENT '主键',
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户id',
+ `auth_id` varchar(255) NOT NULL COMMENT '平台+平台唯一id',
+ `source` varchar(255) NOT NULL COMMENT '用户来源',
+ `open_id` varchar(255) DEFAULT NULL COMMENT '平台编号唯一id',
+ `user_name` varchar(30) NOT NULL COMMENT '登录账号',
+ `nick_name` varchar(30) DEFAULT '' COMMENT '用户昵称',
+ `email` varchar(255) DEFAULT '' COMMENT '用户邮箱',
+ `avatar` varchar(500) DEFAULT '' COMMENT '头像地址',
+ `access_token` varchar(2000) NOT NULL COMMENT '用户的授权令牌',
+ `expire_in` int(11) DEFAULT NULL COMMENT '用户的授权令牌的有效期,部分平台可能没有',
+ `refresh_token` varchar(255) DEFAULT NULL COMMENT '刷新令牌,部分平台可能没有',
+ `access_code` varchar(2000) DEFAULT NULL COMMENT '平台的授权信息,部分平台可能没有',
+ `union_id` varchar(255) DEFAULT NULL COMMENT '用户的 unionid',
+ `scope` varchar(255) DEFAULT NULL COMMENT '授予的权限,部分平台可能没有',
+ `token_type` varchar(255) DEFAULT NULL COMMENT '个别平台的授权信息,部分平台可能没有',
+ `id_token` varchar(2000) DEFAULT NULL COMMENT 'id token,部分平台可能没有',
+ `mac_algorithm` varchar(255) DEFAULT NULL COMMENT '小米平台用户的附带属性,部分平台可能没有',
+ `mac_key` varchar(255) DEFAULT NULL COMMENT '小米平台用户的附带属性,部分平台可能没有',
+ `code` varchar(255) DEFAULT NULL COMMENT '用户的授权code,部分平台可能没有',
+ `oauth_token` varchar(255) DEFAULT NULL COMMENT 'Twitter平台用户的附带属性,部分平台可能没有',
+ `oauth_token_secret` varchar(255) DEFAULT NULL COMMENT 'Twitter平台用户的附带属性,部分平台可能没有',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='社会化关系表';
+
+-- ----------------------------
+-- Table structure for sys_tenant
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_tenant`;
+CREATE TABLE `sys_tenant` (
+ `id` bigint(20) NOT NULL COMMENT 'id',
+ `tenant_id` varchar(20) NOT NULL COMMENT '租户编号',
+ `contact_user_name` varchar(20) DEFAULT NULL COMMENT '联系人',
+ `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `company_name` varchar(30) DEFAULT NULL COMMENT '企业名称',
+ `license_number` varchar(30) DEFAULT NULL COMMENT '统一社会信用代码',
+ `address` varchar(200) DEFAULT NULL COMMENT '地址',
+ `intro` varchar(200) DEFAULT NULL COMMENT '企业简介',
+ `domain` varchar(200) DEFAULT NULL COMMENT '域名',
+ `remark` varchar(200) DEFAULT NULL COMMENT '备注',
+ `package_id` bigint(20) DEFAULT NULL COMMENT '租户套餐编号',
+ `expire_time` datetime DEFAULT NULL COMMENT '过期时间',
+ `account_count` int(11) DEFAULT '-1' COMMENT '用户数量(-1不限制)',
+ `status` char(1) DEFAULT '0' COMMENT '租户状态(0正常 1停用)',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='租户表';
+
+-- ----------------------------
+-- Table structure for sys_tenant_package
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_tenant_package`;
+CREATE TABLE `sys_tenant_package` (
+ `package_id` bigint(20) NOT NULL COMMENT '租户套餐id',
+ `package_name` varchar(20) DEFAULT NULL COMMENT '套餐名称',
+ `menu_ids` varchar(3000) DEFAULT NULL COMMENT '关联菜单id',
+ `remark` varchar(200) DEFAULT NULL COMMENT '备注',
+ `menu_check_strictly` tinyint(1) DEFAULT '1' COMMENT '菜单树选择项是否关联显示',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`package_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='租户套餐表';
+
+-- ----------------------------
+-- Table structure for sys_user
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_user`;
+CREATE TABLE `sys_user` (
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `dept_id` bigint(20) DEFAULT NULL COMMENT '部门ID',
+ `user_name` varchar(30) NOT NULL COMMENT '用户账号',
+ `nick_name` varchar(30) NOT NULL COMMENT '用户昵称',
+ `user_type` varchar(10) DEFAULT 'sys_user' COMMENT '用户类型(sys_user系统用户)',
+ `email` varchar(50) DEFAULT '' COMMENT '用户邮箱',
+ `phonenumber` varchar(11) DEFAULT '' COMMENT '手机号码',
+ `sex` char(1) DEFAULT '0' COMMENT '用户性别(0男 1女 2未知)',
+ `avatar` bigint(20) DEFAULT NULL COMMENT '头像地址',
+ `password` varchar(100) DEFAULT '' COMMENT '密码',
+ `status` char(1) DEFAULT '0' COMMENT '帐号状态(0正常 1停用)',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `login_ip` varchar(128) DEFAULT '' COMMENT '最后登录IP',
+ `login_date` datetime DEFAULT NULL COMMENT '最后登录时间',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `account_type` varchar(255) DEFAULT '1' COMMENT '账户类型 1 - 教职工 2- 学生',
+ PRIMARY KEY (`user_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表';
+
+-- ----------------------------
+-- Table structure for sys_user_post
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_user_post`;
+CREATE TABLE `sys_user_post` (
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `post_id` bigint(20) NOT NULL COMMENT '岗位ID',
+ PRIMARY KEY (`user_id`,`post_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户与岗位关联表';
+
+-- ----------------------------
+-- Table structure for sys_user_role
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_user_role`;
+CREATE TABLE `sys_user_role` (
+ `user_id` bigint(20) NOT NULL COMMENT '用户ID',
+ `role_id` bigint(20) NOT NULL COMMENT '角色ID',
+ PRIMARY KEY (`user_id`,`role_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户和角色关联表';
+
+-- ----------------------------
+-- Table structure for sys_wechat_config
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_wechat_config`;
+CREATE TABLE `sys_wechat_config` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '参数主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `config_name` varchar(100) DEFAULT '' COMMENT '参数名称',
+ `config_key` varchar(100) DEFAULT '' COMMENT '参数键名',
+ `config_value` varchar(500) DEFAULT '' COMMENT '参数键值',
+ `config_type` char(1) DEFAULT 'N' COMMENT '系统内置(Y是 N否)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COMMENT='参数配置表';
+
+-- ----------------------------
+-- Table structure for test_demo
+-- ----------------------------
+DROP TABLE IF EXISTS `test_demo`;
+CREATE TABLE `test_demo` (
+ `id` bigint(20) NOT NULL COMMENT '主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `dept_id` bigint(20) DEFAULT NULL COMMENT '部门id',
+ `user_id` bigint(20) DEFAULT NULL COMMENT '用户id',
+ `order_num` int(11) DEFAULT '0' COMMENT '排序号',
+ `test_key` varchar(255) DEFAULT NULL COMMENT 'key键',
+ `value` varchar(255) DEFAULT NULL COMMENT '值',
+ `version` int(11) DEFAULT '0' COMMENT '版本',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建人',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新人',
+ `del_flag` int(11) DEFAULT '0' COMMENT '删除标志',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测试单表';
+
+-- ----------------------------
+-- Table structure for test_leave
+-- ----------------------------
+DROP TABLE IF EXISTS `test_leave`;
+CREATE TABLE `test_leave` (
+ `id` bigint(20) NOT NULL COMMENT 'id',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `leave_type` varchar(255) NOT NULL COMMENT '请假类型',
+ `start_date` datetime NOT NULL COMMENT '开始时间',
+ `end_date` datetime NOT NULL COMMENT '结束时间',
+ `leave_days` int(10) NOT NULL COMMENT '请假天数',
+ `remark` varchar(255) DEFAULT NULL COMMENT '请假原因',
+ `status` varchar(255) DEFAULT NULL COMMENT '状态',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='请假申请表';
+
+-- ----------------------------
+-- Table structure for test_tree
+-- ----------------------------
+DROP TABLE IF EXISTS `test_tree`;
+CREATE TABLE `test_tree` (
+ `id` bigint(20) NOT NULL COMMENT '主键',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父id',
+ `dept_id` bigint(20) DEFAULT NULL COMMENT '部门id',
+ `user_id` bigint(20) DEFAULT NULL COMMENT '用户id',
+ `tree_name` varchar(255) DEFAULT NULL COMMENT '值',
+ `version` int(11) DEFAULT '0' COMMENT '版本',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建人',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新人',
+ `del_flag` int(11) DEFAULT '0' COMMENT '删除标志',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测试树表';
+
+-- ----------------------------
+-- Table structure for xg_class_msg
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_class_msg`;
+CREATE TABLE `xg_class_msg` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '学院代码',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业代码',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
+ `class_code` varchar(32) NOT NULL COMMENT '班级代码',
+ `class_name` varchar(100) NOT NULL COMMENT '班级名称',
+ `class_type` varchar(20) DEFAULT '1' COMMENT '班级类型:1-中级工 2-高级工 3-预备技师 4-技师 5-中高职一体',
+ `grade` varchar(10) NOT NULL COMMENT '年级',
+ `enrollment_year` int(4) NOT NULL COMMENT '入学年份',
+ `graduation_year` int(4) DEFAULT NULL COMMENT '毕业年份',
+ `training_type` varchar(20) DEFAULT NULL COMMENT '培养方式:全日制,在职,函授,夜大等',
+ `degree_type` varchar(20) DEFAULT NULL COMMENT '学位类型:学士,硕士,博士,专科',
+ `counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID',
+ `counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名',
+ `class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID',
+ `class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名',
+ `class_advisor_id` bigint(20) DEFAULT NULL COMMENT '班级导师ID',
+ `class_advisor_name` varchar(50) DEFAULT NULL COMMENT '班级导师姓名',
+ `class_monitor_id` bigint(20) DEFAULT NULL COMMENT '班长ID',
+ `class_monitor_name` varchar(50) DEFAULT NULL COMMENT '班长姓名',
+ `deputy_monitor_id` bigint(20) DEFAULT NULL COMMENT '副班长ID',
+ `deputy_monitor_name` varchar(50) DEFAULT NULL COMMENT '副班长姓名',
+ `class_status` char(1) DEFAULT '1' COMMENT '班级状态:1-正常,2-暂停,3-毕业,4-解散',
+ `is_graduation` tinyint(1) DEFAULT '0' COMMENT '是否已毕业:0-未毕业,1-已毕业',
+ `graduation_date` date DEFAULT NULL COMMENT '毕业日期',
+ `planned_capacity` int(11) DEFAULT '50' COMMENT '计划容量',
+ `current_student_count` int(11) DEFAULT '0' COMMENT '当前学生人数',
+ `max_student_count` int(11) DEFAULT '50' COMMENT '最大学生人数',
+ `male_count` int(11) DEFAULT '0' COMMENT '男生人数',
+ `female_count` int(11) DEFAULT '0' COMMENT '女生人数',
+ `active_count` int(11) DEFAULT '0' COMMENT '在籍人数',
+ `transfer_in_count` int(11) DEFAULT '0' COMMENT '转入人数',
+ `transfer_out_count` int(11) DEFAULT '0' COMMENT '转出人数',
+ `dropout_count` int(11) DEFAULT '0' COMMENT '退学人数',
+ `graduate_count` int(11) DEFAULT '0' COMMENT '毕业人数',
+ `office_location` varchar(200) DEFAULT NULL COMMENT '班级办公室位置',
+ `class_location` varchar(100) DEFAULT NULL COMMENT '班级教室位置',
+ `contact_phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `qq_group` varchar(20) DEFAULT NULL COMMENT 'QQ群号',
+ `wechat_group` varchar(100) DEFAULT NULL COMMENT '微信群',
+ `email` varchar(100) DEFAULT NULL COMMENT '班级邮箱',
+ `class_schedule` text COMMENT '课程安排(JSON格式)',
+ `class_culture` text COMMENT '班级文化建设',
+ `class_rules` text COMMENT '班级规章制度',
+ `class_description` varchar(500) DEFAULT NULL COMMENT '班级描述',
+ `last_count_update` datetime DEFAULT NULL COMMENT '最后统计更新时间',
+ `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1',
+ `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2',
+ `ext_field3` varchar(200) DEFAULT NULL COMMENT '扩展字段3',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ `school_system` int(11) DEFAULT '4' COMMENT '学制(年)',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `uk_class_code_tenant` (`class_code`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_college_id` (`college_id`),
+ KEY `idx_enrollment_year` (`enrollment_year`),
+ KEY `idx_grade` (`grade`),
+ KEY `idx_major_id` (`major_id`),
+ KEY `idx_counselor_id` (`counselor_id`),
+ KEY `idx_class_teacher_id` (`class_teacher_id`),
+ KEY `idx_class_status` (`class_status`),
+ KEY `idx_college_grade` (`college_id`,`grade`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级信息表-新版';
+
+-- ----------------------------
+-- Table structure for xg_class_pos_dict
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_class_pos_dict`;
+CREATE TABLE `xg_class_pos_dict` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `position_code` varchar(20) NOT NULL COMMENT '职务编码',
+ `position_name` varchar(50) NOT NULL COMMENT '职务名称',
+ `position_category` varchar(20) DEFAULT 'class' COMMENT '学生职务类别:class-班级干部,party-党团干部,other-其他',
+ `position_level` tinyint(1) NOT NULL DEFAULT '9' COMMENT '学生职务级别:1-班长,2-副班长,3-委员,9-普通成员',
+ `position_type` varchar(20) DEFAULT 'regular' COMMENT '学生职务类型:regular-常规职务,special-特殊职务,temporary-临时职务',
+ `responsibilities` text COMMENT '职责描述',
+ `status` char(1) DEFAULT '1' COMMENT '状态:0-启用,1-停用',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序顺序',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_position_level` (`position_level`),
+ KEY `idx_position_category` (`position_category`),
+ KEY `idx_dict_status` (`status`),
+ KEY `idx_sort_order` (`sort_order`),
+ KEY `idx_position_type` (`position_type`),
+ KEY `uk_position_code_tenant` (`position_code`,`tenant_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级干部职务字典表';
+
+-- ----------------------------
+-- Table structure for xg_class_pos_msg
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_class_pos_msg`;
+CREATE TABLE `xg_class_pos_msg` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `class_id` bigint(20) NOT NULL COMMENT '班级ID,关联xg_class_msg.id',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id',
+ `student_no` varchar(32) NOT NULL COMMENT '学号',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名(冗余字段)',
+ `position_id` bigint(20) NOT NULL COMMENT '职务编码,关联xg_class_pos_dict.id',
+ `position_code` varchar(20) NOT NULL COMMENT '职务编码,关联xg_class_pos_dict.position_code',
+ `appointment_date` date NOT NULL COMMENT '任职日期',
+ `term_start_date` date NOT NULL COMMENT '任期开始日期',
+ `term_end_date` date DEFAULT NULL COMMENT '任期结束日期',
+ `term_duration` int(11) DEFAULT '12' COMMENT '任期时长(月)',
+ `is_current` tinyint(1) DEFAULT '1' COMMENT '是否现任:0-否,1-是',
+ `cadre_status` char(1) DEFAULT '1' COMMENT '学生职务任职状态:1-在任,2-到期,3-辞职,4-免职,5-调任,6-休学',
+ `appointment_reason` varchar(200) DEFAULT NULL COMMENT '任命原因',
+ `appointment_method` varchar(20) DEFAULT 'appointment' COMMENT '学生职务任命方式:appointment-任命,election-选举,recommendation-推荐',
+ `dismissal_date` date DEFAULT NULL COMMENT '离任日期',
+ `dismissal_reason` varchar(200) DEFAULT NULL COMMENT '离任原因',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_class_id` (`class_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_position_code` (`position_code`),
+ KEY `idx_cadre_status` (`cadre_status`),
+ KEY `idx_is_current` (`is_current`),
+ KEY `idx_appointment_date` (`appointment_date`),
+ KEY `idx_term_dates` (`term_start_date`,`term_end_date`),
+ KEY `idx_class_position` (`class_id`,`position_code`,`is_current`),
+ KEY `idx_student_cadre` (`student_id`,`is_current`,`cadre_status`),
+ KEY `uk_class_student_position` (`class_id`,`student_id`,`position_code`,`tenant_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级干部信息表';
+
+-- ----------------------------
+-- Table structure for xg_class_teacher_counselor_rel
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_class_teacher_counselor_rel`;
+CREATE TABLE `xg_class_teacher_counselor_rel` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `class_id` bigint(20) NOT NULL COMMENT '班级ID,关联xg_class_msg.id',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `teacher_id` bigint(20) NOT NULL COMMENT '教师ID,关联sys_user.user_id',
+ `teacher_name` varchar(50) DEFAULT NULL COMMENT '教师姓名',
+ `teacher_type` varchar(20) NOT NULL COMMENT '教师类型:class_teacher-班主任,counselor-辅导员,advisor-导师',
+ `start_date` datetime NOT NULL COMMENT '开始日期',
+ `end_date` datetime DEFAULT NULL COMMENT '结束日期',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_class_id` (`class_id`),
+ KEY `idx_teacher_id` (`teacher_id`),
+ KEY `idx_teacher_type` (`teacher_type`),
+ KEY `idx_start_date` (`start_date`),
+ KEY `idx_end_date` (`end_date`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班级班主任辅导员关联表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_area
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_area`;
+CREATE TABLE `xg_dorm_area` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `area_code` varchar(50) NOT NULL COMMENT '宿舍区编码',
+ `area_name` varchar(100) NOT NULL COMMENT '宿舍区名称',
+ `campus_id` bigint(20) NOT NULL COMMENT '所属校区ID',
+ `area_description` varchar(500) DEFAULT NULL COMMENT '宿舍区描述',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序号',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_area_code` (`area_code`),
+ KEY `idx_campus_id` (`campus_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍区信息表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_bed
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_bed`;
+CREATE TABLE `xg_dorm_bed` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `bed_code` varchar(50) NOT NULL COMMENT '床位编号',
+ `bed_name` varchar(100) NOT NULL COMMENT '床位名称',
+ `room_id` bigint(20) NOT NULL COMMENT '所属房间ID',
+ `bed_type` char(1) DEFAULT '1' COMMENT '床位类型(1下铺 2上铺 3中铺 4独立床)',
+ `bed_status` char(1) DEFAULT '0' COMMENT '床位状态(0空闲 1已分配 2维修中)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_room_id` (`room_id`),
+ KEY `uk_bed_code` (`bed_code`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍床位信息表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_bed_student
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_bed_student`;
+CREATE TABLE `xg_dorm_bed_student` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `college_id` bigint(20) NOT NULL COMMENT '分配学院ID',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '分配专业ID',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '分配班级ID',
+ `student_id` bigint(20) DEFAULT NULL COMMENT '分配学生ID',
+ `bed_id` bigint(20) NOT NULL COMMENT '床位ID',
+ `room_id` bigint(20) NOT NULL COMMENT '房间ID',
+ `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID',
+ `area_id` bigint(20) NOT NULL COMMENT '宿舍区ID',
+ `campus_id` bigint(20) NOT NULL COMMENT '校区ID',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1已退宿)',
+ `assign_time` datetime NOT NULL COMMENT '分配时间',
+ `checkout_time` datetime DEFAULT NULL COMMENT '退宿时间',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `uk_student_bed` (`student_id`,`bed_id`),
+ KEY `idx_college_id` (`college_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_bed_id` (`bed_id`),
+ KEY `idx_room_id` (`room_id`),
+ KEY `idx_building_id` (`building_id`),
+ KEY `idx_area_id` (`area_id`),
+ KEY `idx_campus_id` (`campus_id`),
+ KEY `idx_assign_time` (`assign_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='床位学生分配关系表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_building
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_building`;
+CREATE TABLE `xg_dorm_building` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `building_code` varchar(50) NOT NULL COMMENT '宿舍楼编码',
+ `building_name` varchar(100) NOT NULL COMMENT '宿舍楼名称',
+ `area_id` bigint(20) NOT NULL COMMENT '所属宿舍区ID',
+ `campus_id` bigint(20) NOT NULL COMMENT '所属校区ID',
+ `floors` int(11) NOT NULL DEFAULT '6' COMMENT '总楼层数',
+ `building_type` char(1) DEFAULT '1' COMMENT '宿舍楼类型(1男生楼 2女生楼 3混合楼)',
+ `building_description` varchar(500) DEFAULT NULL COMMENT '宿舍楼描述',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序号',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_building_code` (`building_code`),
+ KEY `idx_area_id` (`area_id`),
+ KEY `idx_campus_id` (`campus_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍楼信息表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_campus
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_campus`;
+CREATE TABLE `xg_dorm_campus` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `campus_code` varchar(50) NOT NULL COMMENT '校区编码',
+ `campus_name` varchar(100) NOT NULL COMMENT '校区名称',
+ `campus_description` varchar(500) DEFAULT NULL COMMENT '校区描述',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序号',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_campus_code` (`campus_code`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='校区信息表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_college_bed
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_college_bed`;
+CREATE TABLE `xg_dorm_college_bed` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `college_id` bigint(20) NOT NULL COMMENT '学院ID',
+ `bed_id` bigint(20) NOT NULL COMMENT '床位ID',
+ `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID',
+ `room_id` bigint(20) NOT NULL COMMENT '房间ID',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1已解除)',
+ `assign_time` datetime DEFAULT NULL COMMENT '分配时间',
+ `release_time` datetime DEFAULT NULL COMMENT '到期解除时间',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_college_bed` (`college_id`,`bed_id`),
+ KEY `idx_college_id` (`college_id`),
+ KEY `idx_bed_id` (`bed_id`),
+ KEY `idx_building_id` (`building_id`),
+ KEY `idx_room_id` (`room_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='二级学院床位绑定关系表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_hygiene_check
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_hygiene_check`;
+CREATE TABLE `xg_dorm_hygiene_check` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `check_title` varchar(200) NOT NULL COMMENT '检查标题',
+ `check_date` datetime NOT NULL COMMENT '检查日期',
+ `checker_id` bigint(20) NOT NULL COMMENT '检查员ID,关联sys_user.id',
+ `checker_name` varchar(50) NOT NULL COMMENT '检查员姓名',
+ `check_type` char(1) DEFAULT '1' COMMENT '检查类型(1日常检查 2专项检查 3突击检查 4复查)',
+ `check_level` char(1) DEFAULT '1' COMMENT '检查级别(1宿管员 2学院 3学校)',
+ `room_id` bigint(20) NOT NULL COMMENT '宿舍房间ID,关联xg_dorm_room.id',
+ `room_code` varchar(50) NOT NULL COMMENT '房间编号',
+ `room_name` varchar(100) NOT NULL COMMENT '房间名称',
+ `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID,关联xg_dorm_building.id',
+ `building_name` varchar(100) NOT NULL COMMENT '宿舍楼名称',
+ `area_id` bigint(20) DEFAULT NULL COMMENT '宿舍区ID,关联xg_dorm_area.id',
+ `area_name` varchar(100) DEFAULT NULL COMMENT '宿舍区名称',
+ `campus_id` bigint(20) DEFAULT NULL COMMENT '校区ID,关联xg_dorm_campus.id',
+ `campus_name` varchar(100) DEFAULT NULL COMMENT '校区名称',
+ `total_score` decimal(5,2) DEFAULT NULL COMMENT '宿舍总分(0-100分)',
+ `hygiene_grade` char(1) DEFAULT NULL COMMENT '卫生等级(A优秀 B良好 C合格 D不合格)',
+ `attachment_ids` text COMMENT '附件OSS ID列表,逗号分隔',
+ `check_summary` text COMMENT '检查总结',
+ `improvement_suggestions` text COMMENT '整改建议',
+ `check_remarks` varchar(500) DEFAULT NULL COMMENT '检查备注',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_check_date` (`check_date`),
+ KEY `idx_checker_id` (`checker_id`),
+ KEY `idx_room_id` (`room_id`),
+ KEY `idx_building_id` (`building_id`),
+ KEY `idx_area_id` (`area_id`),
+ KEY `idx_campus_id` (`campus_id`),
+ KEY `idx_hygiene_grade` (`hygiene_grade`),
+ KEY `idx_check_type` (`check_type`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍卫生检查表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_hygiene_student_score
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_hygiene_student_score`;
+CREATE TABLE `xg_dorm_hygiene_student_score` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `hygiene_check_id` bigint(20) NOT NULL COMMENT '卫生检查ID,关联xg_dorm_hygiene_check.id',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id',
+ `student_no` varchar(32) NOT NULL COMMENT '学号',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `bed_id` bigint(20) DEFAULT NULL COMMENT '床位ID,关联xg_dorm_bed.id',
+ `bed_code` varchar(50) DEFAULT NULL COMMENT '床位编号',
+ `student_score` decimal(5,2) DEFAULT NULL COMMENT '学生个人得分(0-100分)',
+ `attendance_status` char(1) DEFAULT '1' COMMENT '出勤状态(1在寝 2外出 3请假 4其他)',
+ `student_grade` char(1) DEFAULT NULL COMMENT '学生评级(A优秀 B良好 C合格 D不合格)',
+ `is_responsible_person` tinyint(1) DEFAULT '0' COMMENT '是否为寝室长(0否 1是)',
+ `score_remarks` varchar(500) DEFAULT NULL COMMENT '评分备注',
+ `improvement_notes` varchar(500) DEFAULT NULL COMMENT '改进意见',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_hygiene_check_id` (`hygiene_check_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_class_id` (`class_id`),
+ KEY `idx_major_id` (`major_id`),
+ KEY `idx_college_id` (`college_id`),
+ KEY `idx_bed_id` (`bed_id`),
+ KEY `idx_attendance_status` (`attendance_status`),
+ KEY `idx_student_grade` (`student_grade`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍卫生检查学生评分表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_manager
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_manager`;
+CREATE TABLE `xg_dorm_manager` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `manager_name` varchar(100) NOT NULL COMMENT '管理员姓名',
+ `manager_type` char(1) NOT NULL COMMENT '管理员类型(1全校管理员 2校区管理员 3宿舍区管理员 4宿舍楼管理员)',
+ `manager_level` int(11) DEFAULT '1' COMMENT '管理级别(1-5,1为最高)',
+ `user_id` bigint(20) DEFAULT NULL COMMENT '关联用户ID',
+ `phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `gender` char(1) DEFAULT '0' COMMENT '性别(0男 1女 2未知)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_manager_type` (`manager_type`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍管理员信息表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_manager_building
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_manager_building`;
+CREATE TABLE `xg_dorm_manager_building` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `manager_id` bigint(20) NOT NULL COMMENT '管理员ID',
+ `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0有效 1已撤销)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_manager_building` (`manager_id`,`building_id`),
+ KEY `idx_manager_id` (`manager_id`),
+ KEY `idx_building_id` (`building_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='管理员宿舍楼权限关系表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_manager_source
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_manager_source`;
+CREATE TABLE `xg_dorm_manager_source` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `manager_id` bigint(20) NOT NULL COMMENT '管理员ID',
+ `permission_type` char(1) DEFAULT '1' COMMENT '权限类型(1查看 2编辑 3完全管理)',
+ `auth_type` char(1) NOT NULL COMMENT '授权类型(1全校级 2校区级 3宿舍区级 4楼栋级)',
+ `auth_source` bigint(20) DEFAULT NULL COMMENT '授权来源ID(对应校区ID或宿舍区ID或楼栋ID)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0有效 1已撤销)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_manager_id` (`manager_id`),
+ KEY `idx_auth_source` (`auth_source`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='管理员授权关系表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_room
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_room`;
+CREATE TABLE `xg_dorm_room` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `room_code` varchar(50) NOT NULL COMMENT '房间编号',
+ `room_name` varchar(100) NOT NULL COMMENT '房间名称',
+ `building_id` bigint(20) NOT NULL COMMENT '所属宿舍楼ID',
+ `floor_num` int(11) NOT NULL COMMENT '楼层',
+ `room_type` char(1) DEFAULT '1' COMMENT '房间类型(1标准间 2 单人间 3 套间)',
+ `actual_beds` int(11) DEFAULT '4' COMMENT '实际床位数',
+ `room_area` decimal(10,2) DEFAULT NULL COMMENT '房间面积(平方米)',
+ `room_status` char(1) DEFAULT '0' COMMENT '房间状态(0可用 1维修中 2停用)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_building_id` (`building_id`),
+ KEY `idx_floor_num` (`floor_num`),
+ KEY `uk_room_code` (`room_code`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='宿舍房间信息表';
+
+-- ----------------------------
+-- Table structure for xg_dorm_violation
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_dorm_violation`;
+CREATE TABLE `xg_dorm_violation` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '违纪记录ID(主键)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_name` varchar(100) NOT NULL COMMENT '学生姓名',
+ `student_no` varchar(50) NOT NULL COMMENT '学号',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `campus_id` bigint(20) DEFAULT NULL COMMENT '校区ID',
+ `campus_name` varchar(100) DEFAULT NULL COMMENT '校区名称',
+ `area_id` bigint(20) DEFAULT NULL COMMENT '宿舍区域ID',
+ `area_name` varchar(100) DEFAULT NULL COMMENT '宿舍区域名称',
+ `building_id` bigint(20) NOT NULL COMMENT '宿舍楼ID',
+ `building_name` varchar(100) NOT NULL COMMENT '宿舍楼名称',
+ `room_id` bigint(20) NOT NULL COMMENT '宿舍房间ID',
+ `room_name` varchar(50) NOT NULL COMMENT '房间名称',
+ `bed_id` bigint(20) DEFAULT NULL COMMENT '床位ID',
+ `bed_name` varchar(20) DEFAULT NULL COMMENT '床位名称',
+ `violation_type` varchar(50) NOT NULL COMMENT '违纪类型',
+ `violation_level` char(1) NOT NULL COMMENT '违纪等级:1轻微 2一般 3严重 4特别严重',
+ `violation_time` datetime NOT NULL COMMENT '违纪发生时间',
+ `violation_description` text NOT NULL COMMENT '违纪行为描述',
+ `involved_students` text COMMENT '涉及其他学生信息(JSON格式)',
+ `attachment_oss_ids` text COMMENT '附件OSS ID列表(逗号分隔)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_college_id` (`college_id`),
+ KEY `idx_building_id` (`building_id`),
+ KEY `idx_room_id` (`room_id`),
+ KEY `idx_violation_type` (`violation_type`),
+ KEY `idx_violation_time` (`violation_time`),
+ KEY `idx_violation_level` (`violation_level`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_college_time` (`college_id`,`violation_time`),
+ KEY `idx_building_level` (`building_id`,`violation_level`),
+ KEY `idx_student_time` (`student_id`,`violation_time`),
+ KEY `idx_type_level` (`violation_type`,`violation_level`)
+) ENGINE=InnoDB AUTO_INCREMENT=1956609514002198531 DEFAULT CHARSET=utf8mb4 COMMENT='宿舍违纪记录表';
+
+-- ----------------------------
+-- Table structure for xg_holiday_stay
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_holiday_stay`;
+CREATE TABLE `xg_holiday_stay` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `student_no` varchar(20) NOT NULL COMMENT '学号',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `campus_id` bigint(20) DEFAULT NULL COMMENT '校区ID,关联xg_dorm_campus.id',
+ `campus_name` varchar(100) DEFAULT NULL COMMENT '校区名称',
+ `area_id` bigint(20) DEFAULT NULL COMMENT '宿舍区ID,关联xg_dorm_area.id',
+ `area_name` varchar(100) DEFAULT NULL COMMENT '宿舍区名称',
+ `building_id` bigint(20) DEFAULT NULL COMMENT '宿舍楼ID,关联xg_dorm_building.id',
+ `building_name` varchar(100) DEFAULT NULL COMMENT '宿舍楼名称',
+ `room_id` bigint(20) DEFAULT NULL COMMENT '房间ID,关联xg_dorm_room.id',
+ `room_name` varchar(100) DEFAULT NULL COMMENT '房间名称',
+ `bed_id` bigint(20) DEFAULT NULL COMMENT '床位ID,关联xg_dorm_bed.id',
+ `bed_name` varchar(100) DEFAULT NULL COMMENT '床位名称',
+ `holiday_type` varchar(50) NOT NULL COMMENT '假期类型(寒假、暑假、春节假期、国庆假期等)',
+ `apply_start_date` datetime NOT NULL COMMENT '申请留宿开始日期',
+ `apply_end_date` datetime NOT NULL COMMENT '申请留宿结束日期',
+ `stay_reason` text NOT NULL COMMENT '留宿原因(必填)',
+ `stay_reason_type` varchar(20) DEFAULT NULL COMMENT '留宿原因类型(学习、实习、家庭困难、其他)',
+ `student_phone` varchar(20) NOT NULL COMMENT '学生联系电话',
+ `emergency_contact` varchar(50) NOT NULL COMMENT '紧急联系人姓名',
+ `emergency_phone` varchar(20) NOT NULL COMMENT '紧急联系人电话',
+ `parent_consent` char(1) NOT NULL DEFAULT '1' COMMENT '家长同意(0否 1是)',
+ `attachment_oss_ids` varchar(1000) DEFAULT NULL COMMENT '附件OSS文件ID,多个用逗号分隔(申请材料、证明文件等)',
+ `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1',
+ `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2',
+ `ext_field3` varchar(500) DEFAULT NULL COMMENT '扩展字段3',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_tenant_deleted` (`tenant_id`,`deleted`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_student_no` (`student_no`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='假期留宿管理表';
+
+-- ----------------------------
+-- Table structure for xg_leave_type_config
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_leave_type_config`;
+CREATE TABLE `xg_leave_type_config` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `leave_type_name` varchar(50) NOT NULL COMMENT '请假类型名称',
+ `leave_type_code` varchar(20) NOT NULL COMMENT '请假类型编码',
+ `leave_type_desc` varchar(500) DEFAULT NULL COMMENT '请假类型描述',
+ `sort_order` int(4) DEFAULT '0' COMMENT '排序号',
+ `need_location_on_apply` char(1) NOT NULL DEFAULT '0' COMMENT '请假是否需要上传地理位置:0-否,1-是',
+ `need_photo_on_cancel` char(1) NOT NULL DEFAULT '0' COMMENT '销假是否必须上传照片:0-否,1-是',
+ `need_location_on_cancel` char(1) NOT NULL DEFAULT '0' COMMENT '销假是否需要上传地理位置:0-否,1-是',
+ `need_cancel_for_non_leave` char(1) NOT NULL DEFAULT '0' COMMENT '非离校请假是否需要销假:0-否,1-是',
+ `can_apply_in_advance` char(1) NOT NULL DEFAULT '0' COMMENT '是否可以提前请假:0-否,1-是',
+ `is_enabled` char(1) NOT NULL DEFAULT '1' COMMENT '是否开启:0-关闭,1-开启',
+ `max_apply_duration` decimal(5,2) DEFAULT NULL COMMENT '请假最大申请时长(天)',
+ `cancel_overdue_reminder` decimal(5,2) DEFAULT NULL COMMENT '销假逾期多少时长给予提醒(天)',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_leave_type_code` (`leave_type_code`,`tenant_id`) USING BTREE COMMENT '请假类型编码唯一索引',
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE COMMENT '租户索引',
+ KEY `idx_is_enabled` (`is_enabled`) USING BTREE COMMENT '启用状态索引',
+ KEY `idx_sort_order` (`sort_order`) USING BTREE COMMENT '排序索引'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生请假类型配置表';
+
+-- ----------------------------
+-- Table structure for xg_stu_col_batch
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_stu_col_batch`;
+CREATE TABLE `xg_stu_col_batch` (
+ `id` bigint(20) NOT NULL COMMENT '批次ID',
+ `batch_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '批次名称',
+ `description` text COLLATE utf8mb4_unicode_ci COMMENT '批次描述',
+ `start_time` datetime NOT NULL COMMENT '开始时间',
+ `end_time` datetime NOT NULL COMMENT '结束时间',
+ `status` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `collection_type` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '收集类型 1 - 新学期收集 2 - 其他',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`id`),
+ KEY `idx_status` (`status`),
+ KEY `idx_start_time` (`start_time`),
+ KEY `idx_end_time` (`end_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='学生信息收集批次表';
+
+-- ----------------------------
+-- Table structure for xg_stu_col_batch_class
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_stu_col_batch_class`;
+CREATE TABLE `xg_stu_col_batch_class` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `batch_id` bigint(20) NOT NULL COMMENT '批次ID',
+ `class_id` bigint(20) NOT NULL COMMENT '班级ID',
+ `class_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '班级名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '专业名称',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '院系ID',
+ `college_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '院系名称',
+ `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注',
+ `tenant_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ PRIMARY KEY (`id`),
+ KEY `idx_batch_id` (`batch_id`),
+ KEY `idx_class_id` (`class_id`),
+ KEY `idx_grade_id` (`major_id`),
+ KEY `idx_department_id` (`college_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='学生信息收集批次班级权限表';
+
+-- ----------------------------
+-- Table structure for xg_student_cancel_leave
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_student_cancel_leave`;
+CREATE TABLE `xg_student_cancel_leave` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `student_no` varchar(20) NOT NULL COMMENT '学号',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `leave_type_code` varchar(20) NOT NULL COMMENT '请假类型编码',
+ `leave_type_name` varchar(50) NOT NULL COMMENT '请假类型名称',
+ `start_time` datetime NOT NULL COMMENT '开始时间(年月日时分秒)',
+ `end_time` datetime NOT NULL COMMENT '结束时间(年月日时分秒)',
+ `leave_duration` decimal(5,2) NOT NULL COMMENT '请假时长(天)',
+ `is_leave_school` char(1) NOT NULL DEFAULT '0' COMMENT '是否离校:0-否,1-是',
+ `need_cancel` char(1) NOT NULL DEFAULT '1' COMMENT '是否需要销假:0-否,1-是',
+ `emergency_contact` varchar(50) DEFAULT NULL COMMENT '紧急联系人',
+ `emergency_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系电话',
+ `leave_reason` text NOT NULL COMMENT '请假原因',
+ `leave_location` varchar(500) DEFAULT NULL COMMENT '请假时地理位置',
+ `attachment_oss_ids` text COMMENT '附件OSS文件ID(逗号分隔)',
+ `approval_status` char(100) NOT NULL DEFAULT '0' COMMENT '审批状态:"cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"',
+ `approval_opinion` varchar(500) DEFAULT NULL COMMENT '审批意见',
+ `approval_time` datetime DEFAULT NULL COMMENT '审批时间',
+ `approval_by` bigint(20) DEFAULT NULL COMMENT '审批人ID',
+ `approval_by_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名',
+ `cancel_status` char(100) DEFAULT '0' COMMENT '销假状态:0-未销假,1-已销假,2-逾期未销假 3 - 无需销假 "cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"',
+ `cancel_time` datetime DEFAULT NULL COMMENT '销假时间',
+ `cancel_location` varchar(500) DEFAULT NULL COMMENT '销假地理位置',
+ `cancel_photo_oss_ids` text COMMENT '销假照片OSS文件ID(逗号分隔)',
+ `cancel_remark` varchar(500) DEFAULT NULL COMMENT '销假备注',
+ `leave_id` bigint(20) NOT NULL COMMENT '学生请假表id',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE COMMENT '租户索引',
+ KEY `idx_student_id` (`student_id`) USING BTREE COMMENT '学生索引',
+ KEY `idx_student_no` (`student_no`) USING BTREE COMMENT '学号索引',
+ KEY `idx_class_id` (`class_id`) USING BTREE COMMENT '班级索引',
+ KEY `idx_college_id` (`college_id`) USING BTREE COMMENT '学院索引',
+ KEY `idx_leave_type_code` (`leave_type_code`) USING BTREE COMMENT '请假类型索引',
+ KEY `idx_start_time` (`start_time`) USING BTREE COMMENT '开始时间索引',
+ KEY `idx_end_time` (`end_time`) USING BTREE COMMENT '结束时间索引',
+ KEY `idx_approval_status` (`approval_status`) USING BTREE COMMENT '审批状态索引',
+ KEY `idx_cancel_status` (`cancel_status`) USING BTREE COMMENT '销假状态索引',
+ KEY `idx_create_time` (`create_time`) USING BTREE COMMENT '创建时间索引',
+ KEY `idx_is_leave_school` (`is_leave_school`) USING BTREE COMMENT '离校状态索引',
+ KEY `idx_need_cancel` (`need_cancel`) USING BTREE COMMENT '是否需要销假索引',
+ KEY `idx_student_time_range` (`student_id`,`start_time`,`end_time`),
+ KEY `idx_class_approval_status` (`class_id`,`approval_status`),
+ KEY `idx_college_leave_type` (`college_id`,`leave_type_code`),
+ KEY `idx_time_approval_status` (`start_time`,`end_time`,`approval_status`),
+ KEY `idx_need_cancel_status` (`need_cancel`,`cancel_status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生销假表';
+
+-- ----------------------------
+-- Table structure for xg_student_leave
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_student_leave`;
+CREATE TABLE `xg_student_leave` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `student_no` varchar(20) NOT NULL COMMENT '学号',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `leave_type_code` varchar(20) NOT NULL COMMENT '请假类型编码',
+ `leave_type_name` varchar(50) NOT NULL COMMENT '请假类型名称',
+ `start_time` datetime NOT NULL COMMENT '开始时间(年月日时分秒)',
+ `end_time` datetime NOT NULL COMMENT '结束时间(年月日时分秒)',
+ `leave_duration` decimal(5,2) NOT NULL COMMENT '请假时长(天)',
+ `is_leave_school` char(1) NOT NULL DEFAULT '0' COMMENT '是否离校:0-否,1-是',
+ `need_cancel` char(1) NOT NULL DEFAULT '1' COMMENT '是否需要销假:0-否,1-是',
+ `emergency_contact` varchar(50) DEFAULT NULL COMMENT '紧急联系人',
+ `emergency_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系电话',
+ `leave_reason` text NOT NULL COMMENT '请假原因',
+ `leave_location` varchar(500) DEFAULT NULL COMMENT '请假时地理位置',
+ `attachment_oss_ids` text COMMENT '附件OSS文件ID(逗号分隔)',
+ `approval_status` char(100) NOT NULL DEFAULT '0' COMMENT '审批状态:"cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"',
+ `approval_opinion` varchar(500) DEFAULT NULL COMMENT '审批意见',
+ `approval_time` datetime DEFAULT NULL COMMENT '审批时间',
+ `approval_by` bigint(20) DEFAULT NULL COMMENT '审批人ID',
+ `approval_by_name` varchar(50) DEFAULT NULL COMMENT '审批人姓名',
+ `cancel_status` char(100) DEFAULT '0' COMMENT '销假状态:0-未销假,1-已销假,2-逾期未销假 3 - 无需销假 "cancel", "已撤销" "draft", "草稿" "waiting", "待审核" "finish", "已完成" "invalid", "已作废" "back", "已退回" "termination", "已终止"',
+ `cancel_time` datetime DEFAULT NULL COMMENT '销假时间',
+ `cancel_location` varchar(500) DEFAULT NULL COMMENT '销假地理位置',
+ `cancel_photo_oss_ids` text COMMENT '销假照片OSS文件ID(逗号分隔)',
+ `cancel_remark` varchar(500) DEFAULT NULL COMMENT '销假备注',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`) USING BTREE COMMENT '租户索引',
+ KEY `idx_student_id` (`student_id`) USING BTREE COMMENT '学生索引',
+ KEY `idx_student_no` (`student_no`) USING BTREE COMMENT '学号索引',
+ KEY `idx_class_id` (`class_id`) USING BTREE COMMENT '班级索引',
+ KEY `idx_college_id` (`college_id`) USING BTREE COMMENT '学院索引',
+ KEY `idx_leave_type_code` (`leave_type_code`) USING BTREE COMMENT '请假类型索引',
+ KEY `idx_start_time` (`start_time`) USING BTREE COMMENT '开始时间索引',
+ KEY `idx_end_time` (`end_time`) USING BTREE COMMENT '结束时间索引',
+ KEY `idx_approval_status` (`approval_status`) USING BTREE COMMENT '审批状态索引',
+ KEY `idx_cancel_status` (`cancel_status`) USING BTREE COMMENT '销假状态索引',
+ KEY `idx_create_time` (`create_time`) USING BTREE COMMENT '创建时间索引',
+ KEY `idx_is_leave_school` (`is_leave_school`) USING BTREE COMMENT '离校状态索引',
+ KEY `idx_need_cancel` (`need_cancel`) USING BTREE COMMENT '是否需要销假索引',
+ KEY `idx_student_time_range` (`student_id`,`start_time`,`end_time`),
+ KEY `idx_class_approval_status` (`class_id`,`approval_status`),
+ KEY `idx_college_leave_type` (`college_id`,`leave_type_code`),
+ KEY `idx_time_approval_status` (`start_time`,`end_time`,`approval_status`),
+ KEY `idx_need_cancel_status` (`need_cancel`,`cancel_status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生请假表 - 记录学生的请假申请、审批和销假信息';
+
+-- ----------------------------
+-- Table structure for xg_student_manager
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_student_manager`;
+CREATE TABLE `xg_student_manager` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `manager_name` varchar(100) NOT NULL COMMENT '管理员姓名',
+ `manager_type` char(1) NOT NULL COMMENT '管理员类型(1 全校管理员 2 自定义管理员 3 班主任)',
+ `manager_level` int(11) DEFAULT '1' COMMENT '管理级别(1-3,1为最高)',
+ `user_id` bigint(20) DEFAULT NULL COMMENT '关联用户ID',
+ `phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `gender` char(1) DEFAULT '0' COMMENT '性别(0男 1女 2未知)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_user_id` (`user_id`),
+ KEY `idx_manager_type` (`manager_type`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生管理员信息表';
+
+-- ----------------------------
+-- Table structure for xg_student_manager_source
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_student_manager_source`;
+CREATE TABLE `xg_student_manager_source` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `manager_id` bigint(20) NOT NULL COMMENT '管理员ID',
+ `permission_type` char(1) DEFAULT '1' COMMENT '权限类型(1查看 2编辑 3完全管理)',
+ `auth_type` char(1) NOT NULL COMMENT '授权类型(1全校级 2自定义 3班主任)',
+ `auth_source` bigint(20) DEFAULT NULL COMMENT '授权来源ID(对应班级id)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0有效 1已撤销)',
+ `deleted` char(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `tenant_id` bigint(20) DEFAULT '0' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_manager_id` (`manager_id`),
+ KEY `idx_auth_source` (`auth_source`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生管理员授权关系表';
+
+-- ----------------------------
+-- Table structure for xg_student_msg
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_student_msg`;
+CREATE TABLE `xg_student_msg` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `student_no` varchar(32) NOT NULL COMMENT '学号',
+ `id_card` varchar(18) DEFAULT NULL COMMENT '身份证号',
+ `name` varchar(50) NOT NULL COMMENT '姓名',
+ `name_english` varchar(100) DEFAULT NULL COMMENT '英文姓名',
+ `former_name` varchar(50) DEFAULT NULL COMMENT '曾用名',
+ `gender` char(1) NOT NULL COMMENT '性别:0-男,1-女',
+ `birth_date` date DEFAULT NULL COMMENT '出生日期',
+ `nationality` varchar(20) DEFAULT NULL COMMENT '民族 ',
+ `native_place` varchar(20) DEFAULT NULL COMMENT '籍贯',
+ `political_status` varchar(20) DEFAULT NULL COMMENT '政治面貌',
+ `hukou_location` varchar(1000) DEFAULT NULL COMMENT '户籍所在地',
+ `home_address` varchar(1000) DEFAULT NULL COMMENT '家庭地址',
+ `current_address` varchar(1000) DEFAULT NULL COMMENT '现住址',
+ `postal_code` varchar(10) DEFAULT NULL COMMENT '邮政编码',
+ `photo_url` varchar(500) DEFAULT NULL COMMENT '照片URL',
+ `photo_path` varchar(500) DEFAULT NULL COMMENT '学生照片存储路径',
+ `phone` varchar(20) DEFAULT NULL COMMENT '手机号码',
+ `is_boarder` tinyint(1) DEFAULT '0' COMMENT '是否住校:0-否,1-是',
+ `education_level` varchar(20) DEFAULT NULL COMMENT '文化程度',
+ `household_register_type` varchar(20) DEFAULT NULL COMMENT '户口类型:农业、非农业',
+ `religion` varchar(200) DEFAULT NULL COMMENT '宗教信仰',
+ `source_region` varchar(100) DEFAULT NULL COMMENT '生源地区(省市县)',
+ `graduate_school` varchar(100) DEFAULT NULL COMMENT '毕业院校',
+ `email` varchar(100) DEFAULT NULL COMMENT '电子邮箱',
+ `qq` varchar(20) DEFAULT NULL COMMENT 'QQ号码',
+ `wechat` varchar(50) DEFAULT NULL COMMENT '微信号',
+ `marital_status` varchar(10) DEFAULT NULL COMMENT '婚姻状况:1 未婚、2 已婚、3 离异、4 丧偶 ',
+ `emergency_contact_name` varchar(50) DEFAULT NULL COMMENT '紧急联系人姓名',
+ `emergency_contact_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系人电话',
+ `emergency_contact_relation` varchar(100) DEFAULT NULL COMMENT '紧急联系人关系',
+ `is_poor_student` tinyint(1) DEFAULT '0' COMMENT '是否贫困生:0-否,1-是',
+ `is_minority` tinyint(1) DEFAULT '0' COMMENT '是否少数民族:0-否,1-是',
+ `is_disabled` tinyint(1) DEFAULT '0' COMMENT '是否残疾:0-否,1-是',
+ `is_orphan` tinyint(1) DEFAULT '0' COMMENT '是否孤儿:0-否,1-是',
+ `is_left_behind_child` tinyint(1) DEFAULT '0' COMMENT '是否留守儿童:0-否,1-是',
+ `is_single_child` tinyint(1) DEFAULT '0' COMMENT '是否独生子女:0-否,1-是',
+ `is_low_income` tinyint(1) DEFAULT '0' COMMENT '是否低保:0-否,1-是',
+ `has_loan` tinyint(1) DEFAULT '0' COMMENT '是否有助学贷款:0-否,1-是',
+ `loan_amount` decimal(10,2) DEFAULT NULL COMMENT '助学贷款金额',
+ `specialties` text COMMENT '特长爱好',
+ `awards` text COMMENT '获奖情况',
+ `violations` text COMMENT '违纪记录',
+ `social_activities` text COMMENT '社会活动',
+ `father_name` varchar(50) DEFAULT NULL COMMENT '父亲姓名',
+ `father_phone` varchar(20) DEFAULT NULL COMMENT '父亲电话',
+ `father_work_unit` varchar(1000) DEFAULT NULL COMMENT '父亲工作单位',
+ `mother_name` varchar(50) DEFAULT NULL COMMENT '母亲姓名',
+ `mother_phone` varchar(20) DEFAULT NULL COMMENT '母亲电话',
+ `mother_work_unit` varchar(1000) DEFAULT NULL COMMENT '母亲工作单位',
+ `guardian_name` varchar(50) DEFAULT NULL COMMENT '监护人姓名',
+ `guardian_phone` varchar(20) DEFAULT NULL COMMENT '监护人电话',
+ `guardian_relation` varchar(20) DEFAULT NULL COMMENT '监护人关系',
+ `family_income` decimal(12,2) DEFAULT NULL COMMENT '家庭年收入',
+ `per_capita_income` decimal(12,2) DEFAULT NULL COMMENT '人均收入',
+ `income_source` varchar(100) DEFAULT NULL COMMENT '收入来源',
+ `family_economic_status` varchar(20) DEFAULT NULL COMMENT '家庭经济状况:富裕、一般、困难、特困',
+ `family_members` tinyint(2) DEFAULT NULL COMMENT '家庭成员数量',
+ `height` decimal(10,2) DEFAULT NULL COMMENT '身高(cm)',
+ `weight` decimal(10,2) DEFAULT NULL COMMENT '体重(kg)',
+ `blood_type` varchar(10) DEFAULT NULL COMMENT '血型',
+ `health_status` varchar(1000) DEFAULT NULL COMMENT '健康状况',
+ `special_condition` varchar(1000) DEFAULT NULL COMMENT '特殊体质或疾病',
+ `medical_history` varchar(1000) DEFAULT NULL COMMENT '病史',
+ `allergies` varchar(1000) DEFAULT NULL COMMENT '过敏史',
+ `disability_type` varchar(50) DEFAULT NULL COMMENT '残疾类型 1 - 视力残疾 2 - 听力残疾 3 - 智力残疾 9 - 其他残疾',
+ `disability_level` varchar(20) DEFAULT NULL COMMENT '残疾等级',
+ `admission_category` varchar(20) DEFAULT NULL COMMENT '录取类别:统招、自主招生、专项计划等',
+ `student_status` char(1) DEFAULT '1' COMMENT '学籍状态:1-在籍,2-休学,3-复学,4-退学,5-毕业',
+ `enrollment_year` int(4) DEFAULT NULL COMMENT '入学年份',
+ `enrollment_date` date DEFAULT NULL COMMENT '入学日期',
+ `bank_card_no` varchar(30) DEFAULT NULL COMMENT '银行卡号',
+ `bank_name` varchar(100) DEFAULT NULL COMMENT '开户银行',
+ `bank_branch` varchar(100) DEFAULT NULL COMMENT '开户支行',
+ `card_holder_name` varchar(50) DEFAULT NULL COMMENT '持卡人姓名',
+ `info_status` char(1) DEFAULT '1' COMMENT '信息状态:1-正常,2-待审核,3-审核中,4-已驳回,5-已锁定',
+ `data_source` varchar(20) DEFAULT 'manual' COMMENT '数据来源:manual-手工录入,import-批量导入,sync-系统同步',
+ `last_batch_id` bigint(20) DEFAULT NULL COMMENT '最后修改批次ID',
+ `last_audit_time` datetime DEFAULT NULL COMMENT '最后审核时间',
+ `is_complete` tinyint(1) DEFAULT '0' COMMENT '信息是否完整:0-不完整,1-完整',
+ `completion_rate` decimal(10,2) DEFAULT '0.00' COMMENT '完整度百分比',
+ `school_system` int(2) DEFAULT '4' COMMENT '学制(年)- 预留,数据从班级表关联',
+ `academic_level` varchar(20) DEFAULT NULL COMMENT '学历层次 - 预留,数据从班级表关联',
+ `training_type` varchar(20) DEFAULT NULL COMMENT '培养方式:全日制、在职、函授、夜大等 - 预留,数据从班级表关联',
+ `major_id` varchar(100) DEFAULT NULL COMMENT '专业id - 预留,数据从班级表关联',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称 - 预留,数据从班级表关联',
+ `class_id` varchar(100) DEFAULT NULL COMMENT '班级id - 预留,数据从班级表关联',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称 - 预留,数据从班级表关联',
+ `grade` varchar(10) DEFAULT NULL COMMENT '年级 - 预留,数据从班级表关联',
+ `college_id` varchar(100) DEFAULT NULL COMMENT '学院id - 预留,数据从班级表关联',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称 - 预留,数据从班级表关联',
+ `counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID - 预留,数据从班级表关联',
+ `counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名 - 预留,数据从班级表关联',
+ `class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID - 预留,数据从班级表关联',
+ `class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名 - 预留,数据从班级表关联',
+ `dormitory_building` varchar(100) DEFAULT NULL COMMENT '宿舍楼栋 - 预留,数据从班级表关联 楼栋id',
+ `dormitory_room` varchar(100) DEFAULT NULL COMMENT '宿舍房间号 - 预留,数据从班级表关联 房间id',
+ `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1 - 床位id',
+ `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2',
+ `ext_field3` varchar(200) DEFAULT NULL COMMENT '扩展字段3',
+ `ext_field4` varchar(200) DEFAULT NULL COMMENT '扩展字段4',
+ `ext_field5` varchar(500) DEFAULT NULL COMMENT '扩展字段5',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_name` (`name`),
+ KEY `idx_student_status` (`student_status`),
+ KEY `idx_info_status` (`info_status`),
+ KEY `idx_enrollment_year` (`enrollment_year`),
+ KEY `idx_last_batch_id` (`last_batch_id`),
+ KEY `idx_phone` (`phone`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_status_filter` (`tenant_id`,`student_status`,`info_status`,`deleted`),
+ KEY `uk_student_no_tenant` (`student_no`,`tenant_id`) USING BTREE,
+ KEY `uk_id_card_tenant` (`id_card`,`tenant_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生信息表';
+
+-- ----------------------------
+-- Table structure for xg_student_msg_batch
+-- ----------------------------
+DROP TABLE IF EXISTS `xg_student_msg_batch`;
+CREATE TABLE `xg_student_msg_batch` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `student_no` varchar(32) NOT NULL COMMENT '学号',
+ `id_card` varchar(18) DEFAULT NULL COMMENT '身份证号',
+ `name` varchar(50) NOT NULL COMMENT '姓名',
+ `name_english` varchar(100) DEFAULT NULL COMMENT '英文姓名',
+ `former_name` varchar(50) DEFAULT NULL COMMENT '曾用名',
+ `gender` char(1) NOT NULL COMMENT '性别:0-男,1-女',
+ `birth_date` date DEFAULT NULL COMMENT '出生日期',
+ `nationality` varchar(20) DEFAULT NULL COMMENT '民族 ',
+ `native_place` varchar(20) DEFAULT NULL COMMENT '籍贯',
+ `political_status` varchar(20) DEFAULT NULL COMMENT '政治面貌',
+ `hukou_location` varchar(1000) DEFAULT NULL COMMENT '户籍所在地',
+ `home_address` varchar(1000) DEFAULT NULL COMMENT '家庭地址',
+ `current_address` varchar(1000) DEFAULT NULL COMMENT '现住址',
+ `postal_code` varchar(10) DEFAULT NULL COMMENT '邮政编码',
+ `photo_url` varchar(500) DEFAULT NULL COMMENT '照片URL',
+ `photo_path` varchar(500) DEFAULT NULL COMMENT '学生照片存储路径',
+ `phone` varchar(20) DEFAULT NULL COMMENT '手机号码',
+ `is_boarder` tinyint(1) DEFAULT '0' COMMENT '是否住校:0-否,1-是',
+ `education_level` varchar(20) DEFAULT NULL COMMENT '文化程度',
+ `household_register_type` varchar(20) DEFAULT NULL COMMENT '户口类型:农业、非农业',
+ `religion` varchar(200) DEFAULT NULL COMMENT '宗教信仰',
+ `source_region` varchar(100) DEFAULT NULL COMMENT '生源地区(省市县)',
+ `graduate_school` varchar(100) DEFAULT NULL COMMENT '毕业院校',
+ `email` varchar(100) DEFAULT NULL COMMENT '电子邮箱',
+ `qq` varchar(20) DEFAULT NULL COMMENT 'QQ号码',
+ `wechat` varchar(50) DEFAULT NULL COMMENT '微信号',
+ `marital_status` varchar(10) DEFAULT NULL COMMENT '婚姻状况:1 未婚、2 已婚、3 离异、4 丧偶 ',
+ `emergency_contact_name` varchar(50) DEFAULT NULL COMMENT '紧急联系人姓名',
+ `emergency_contact_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系人电话',
+ `emergency_contact_relation` varchar(100) DEFAULT NULL COMMENT '紧急联系人关系',
+ `is_poor_student` tinyint(1) DEFAULT '0' COMMENT '是否贫困生:0-否,1-是',
+ `is_minority` tinyint(1) DEFAULT '0' COMMENT '是否少数民族:0-否,1-是',
+ `is_disabled` tinyint(1) DEFAULT '0' COMMENT '是否残疾:0-否,1-是',
+ `is_orphan` tinyint(1) DEFAULT '0' COMMENT '是否孤儿:0-否,1-是',
+ `is_left_behind_child` tinyint(1) DEFAULT '0' COMMENT '是否留守儿童:0-否,1-是',
+ `is_single_child` tinyint(1) DEFAULT '0' COMMENT '是否独生子女:0-否,1-是',
+ `is_low_income` tinyint(1) DEFAULT '0' COMMENT '是否低保:0-否,1-是',
+ `has_loan` tinyint(1) DEFAULT '0' COMMENT '是否有助学贷款:0-否,1-是',
+ `loan_amount` decimal(10,2) DEFAULT NULL COMMENT '助学贷款金额',
+ `specialties` text COMMENT '特长爱好',
+ `awards` text COMMENT '获奖情况',
+ `violations` text COMMENT '违纪记录',
+ `social_activities` text COMMENT '社会活动',
+ `father_name` varchar(50) DEFAULT NULL COMMENT '父亲姓名',
+ `father_phone` varchar(20) DEFAULT NULL COMMENT '父亲电话',
+ `father_work_unit` varchar(1000) DEFAULT NULL COMMENT '父亲工作单位',
+ `mother_name` varchar(50) DEFAULT NULL COMMENT '母亲姓名',
+ `mother_phone` varchar(20) DEFAULT NULL COMMENT '母亲电话',
+ `mother_work_unit` varchar(1000) DEFAULT NULL COMMENT '母亲工作单位',
+ `guardian_name` varchar(50) DEFAULT NULL COMMENT '监护人姓名',
+ `guardian_phone` varchar(20) DEFAULT NULL COMMENT '监护人电话',
+ `guardian_relation` varchar(20) DEFAULT NULL COMMENT '监护人关系',
+ `family_income` decimal(12,2) DEFAULT NULL COMMENT '家庭年收入',
+ `per_capita_income` decimal(12,2) DEFAULT NULL COMMENT '人均收入',
+ `income_source` varchar(100) DEFAULT NULL COMMENT '收入来源',
+ `family_economic_status` varchar(20) DEFAULT NULL COMMENT '家庭经济状况:富裕、一般、困难、特困',
+ `family_members` tinyint(2) DEFAULT NULL COMMENT '家庭成员数量',
+ `height` decimal(10,2) DEFAULT NULL COMMENT '身高(cm)',
+ `weight` decimal(10,2) DEFAULT NULL COMMENT '体重(kg)',
+ `blood_type` varchar(10) DEFAULT NULL COMMENT '血型',
+ `health_status` varchar(1000) DEFAULT NULL COMMENT '健康状况',
+ `special_condition` varchar(1000) DEFAULT NULL COMMENT '特殊体质或疾病',
+ `medical_history` varchar(1000) DEFAULT NULL COMMENT '病史',
+ `allergies` varchar(1000) DEFAULT NULL COMMENT '过敏史',
+ `disability_type` varchar(50) DEFAULT NULL COMMENT '残疾类型 1 - 视力残疾 2 - 听力残疾 3 - 智力残疾 9 - 其他残疾',
+ `disability_level` varchar(20) DEFAULT NULL COMMENT '残疾等级',
+ `admission_category` varchar(20) DEFAULT NULL COMMENT '录取类别:统招、自主招生、专项计划等',
+ `student_status` char(1) DEFAULT '1' COMMENT '学籍状态:1-在籍,2-休学,3-复学,4-退学,5-毕业',
+ `enrollment_year` int(4) DEFAULT NULL COMMENT '入学年份',
+ `enrollment_date` date DEFAULT NULL COMMENT '入学日期',
+ `bank_card_no` varchar(30) DEFAULT NULL COMMENT '银行卡号',
+ `bank_name` varchar(100) DEFAULT NULL COMMENT '开户银行',
+ `bank_branch` varchar(100) DEFAULT NULL COMMENT '开户支行',
+ `card_holder_name` varchar(50) DEFAULT NULL COMMENT '持卡人姓名',
+ `info_status` char(1) DEFAULT '1' COMMENT '信息状态:1-正常,2-待审核,3-审核中,4-已驳回,5-已锁定',
+ `data_source` varchar(20) DEFAULT 'manual' COMMENT '数据来源:manual-手工录入,import-批量导入,sync-系统同步',
+ `last_batch_id` bigint(20) DEFAULT NULL COMMENT '最后修改批次ID',
+ `last_audit_time` datetime DEFAULT NULL COMMENT '最后审核时间',
+ `is_complete` tinyint(1) DEFAULT '0' COMMENT '信息是否完整:0-不完整,1-完整',
+ `completion_rate` decimal(10,2) DEFAULT '0.00' COMMENT '完整度百分比',
+ `school_system` int(2) DEFAULT '4' COMMENT '学制(年)- 预留,数据从班级表关联',
+ `academic_level` varchar(20) DEFAULT NULL COMMENT '学历层次 - 预留,数据从班级表关联',
+ `training_type` varchar(20) DEFAULT NULL COMMENT '培养方式:全日制、在职、函授、夜大等 - 预留,数据从班级表关联',
+ `major_id` varchar(100) DEFAULT NULL COMMENT '专业id - 预留,数据从班级表关联',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称 - 预留,数据从班级表关联',
+ `class_id` varchar(100) DEFAULT NULL COMMENT '班级id - 预留,数据从班级表关联',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称 - 预留,数据从班级表关联',
+ `grade` varchar(10) DEFAULT NULL COMMENT '年级 - 预留,数据从班级表关联',
+ `college_id` varchar(100) DEFAULT NULL COMMENT '学院id - 预留,数据从班级表关联',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称 - 预留,数据从班级表关联',
+ `counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID - 预留,数据从班级表关联',
+ `counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名 - 预留,数据从班级表关联',
+ `class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID - 预留,数据从班级表关联',
+ `class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名 - 预留,数据从班级表关联',
+ `dormitory_building` varchar(100) DEFAULT NULL COMMENT '宿舍楼栋 - 预留,数据从班级表关联 楼栋id',
+ `dormitory_room` varchar(100) DEFAULT NULL COMMENT '宿舍房间号 - 预留,数据从班级表关联 房间id',
+ `ext_field1` varchar(200) DEFAULT NULL COMMENT '扩展字段1 - 床位id',
+ `ext_field2` varchar(200) DEFAULT NULL COMMENT '扩展字段2',
+ `ext_field3` varchar(200) DEFAULT NULL COMMENT '扩展字段3',
+ `ext_field4` varchar(200) DEFAULT NULL COMMENT '扩展字段4',
+ `ext_field5` varchar(500) DEFAULT NULL COMMENT '扩展字段5',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ `batch_id` bigint(20) NOT NULL COMMENT '正在进行中的批次id',
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_name` (`name`),
+ KEY `idx_student_status` (`student_status`),
+ KEY `idx_info_status` (`info_status`),
+ KEY `idx_enrollment_year` (`enrollment_year`),
+ KEY `idx_last_batch_id` (`last_batch_id`),
+ KEY `idx_phone` (`phone`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_status_filter` (`tenant_id`,`student_status`,`info_status`,`deleted`),
+ KEY `uk_student_no_tenant` (`student_no`,`tenant_id`) USING BTREE,
+ KEY `uk_id_card_tenant` (`id_card`,`tenant_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生信息批次收集表';
+
+-- ----------------------------
+-- Table structure for xljk_consultation_appointment
+-- ----------------------------
+DROP TABLE IF EXISTS `xljk_consultation_appointment`;
+CREATE TABLE `xljk_consultation_appointment` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `counselor_id` bigint(20) NOT NULL COMMENT '咨询师ID',
+ `schedule_id` bigint(20) NOT NULL COMMENT '预约时段ID',
+ `appointment_date` date NOT NULL COMMENT '预约日期',
+ `status` char(1) NOT NULL DEFAULT '0' COMMENT '状态(0待咨询 1已完成 2已取消 3未到访)',
+ `appointment_time` varchar(20) NOT NULL COMMENT '预约时间段',
+ `reason` varchar(500) DEFAULT NULL COMMENT '咨询原因',
+ `actual_visit_time` datetime DEFAULT NULL COMMENT '实际到访时间',
+ `communication_duration` int(11) DEFAULT NULL COMMENT '沟通时长(分钟)',
+ `consultation_content` text COMMENT '咨询内容',
+ `counselor_suggestion` text COMMENT '咨询师建议',
+ `appointment_detail_time` varchar(20) DEFAULT NULL COMMENT '具体预约时间段,如"08:30-09:00"',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='心理咨询预约-预约记录表';
+
+-- ----------------------------
+-- Table structure for xljk_consultation_no_show
+-- ----------------------------
+DROP TABLE IF EXISTS `xljk_consultation_no_show`;
+CREATE TABLE `xljk_consultation_no_show` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `appointment_id` bigint(20) NOT NULL COMMENT '预约记录ID',
+ `no_show_date` date NOT NULL COMMENT '未到访日期',
+ `expire_date` date DEFAULT NULL COMMENT '限制到期日(仅当触发30天内3次未到访规则时设置为no_show_date+7天)',
+ `status` char(1) DEFAULT NULL COMMENT '状态(0生效中 1已过期 2已解除,未触发限制时为空)',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='心理咨询预约-未到访记录表(30天内3次未到访限制7天预约)';
+
+-- ----------------------------
+-- Table structure for xljk_consultation_record
+-- ----------------------------
+DROP TABLE IF EXISTS `xljk_consultation_record`;
+CREATE TABLE `xljk_consultation_record` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `appointment_id` bigint(20) NOT NULL COMMENT '预约记录ID',
+ `visit_status` char(1) NOT NULL DEFAULT '0' COMMENT '到访情况(0正常到访 1未到访)',
+ `duration` int(11) DEFAULT '0' COMMENT '沟通时长(分钟)',
+ `content` text COMMENT '咨询内容',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='心理咨询预约-咨询记录表';
+
+-- ----------------------------
+-- Table structure for xljk_consultation_schedule
+-- ----------------------------
+DROP TABLE IF EXISTS `xljk_consultation_schedule`;
+CREATE TABLE `xljk_consultation_schedule` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `counselor_id` bigint(20) NOT NULL COMMENT '咨询师ID',
+ `schedule_date` date NOT NULL COMMENT '日期',
+ `time_slot` char(1) NOT NULL COMMENT '时段类型(0上午 1下午)',
+ `start_time` varchar(5) NOT NULL COMMENT '开始时间(HH:mm)',
+ `end_time` varchar(5) NOT NULL COMMENT '结束时间(HH:mm)',
+ `status` char(1) NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `batch_id` varchar(50) DEFAULT NULL COMMENT '批次ID,用于标识同一批次创建的预约时段',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='心理咨询预约-预约时段表';
+
+-- ----------------------------
+-- Table structure for xljk_evaluation
+-- ----------------------------
+DROP TABLE IF EXISTS `xljk_evaluation`;
+CREATE TABLE `xljk_evaluation` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `department_id` bigint(20) NOT NULL COMMENT '院系ID',
+ `department_name` varchar(100) NOT NULL COMMENT '院系名称',
+ `evaluation_name` varchar(100) NOT NULL COMMENT '测评名称',
+ `major_id` bigint(20) NOT NULL COMMENT '专业ID',
+ `major_name` varchar(100) NOT NULL COMMENT '专业名称',
+ `class_id` bigint(20) NOT NULL COMMENT '班级ID',
+ `class_name` varchar(100) NOT NULL COMMENT '班级名称',
+ `semester` varchar(50) NOT NULL COMMENT '学期(如2024上学期)',
+ `status` char(1) NOT NULL DEFAULT '0' COMMENT '状态(0-草稿,1-已发布,2-已完成)',
+ `create_by` bigint(20) NOT NULL COMMENT '创建者ID(班主任ID)',
+ `create_name` varchar(50) NOT NULL COMMENT '创建者姓名',
+ `create_time` datetime NOT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `tenant_id` varchar(20) DEFAULT NULL COMMENT '租户ID',
+ `create_dept` bigint(20) NOT NULL COMMENT '创建部门',
+ `deleted` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志(0-存在,1-删除)',
+ `student_count` int(11) DEFAULT '0' COMMENT '学生总人数',
+ `focus_count` int(11) DEFAULT '0' COMMENT '重点关注人数',
+ PRIMARY KEY (`id`),
+ KEY `idx_class_id` (`class_id`),
+ KEY `idx_semester` (`semester`),
+ KEY `idx_status` (`status`),
+ KEY `idx_department_id` (`department_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='心理健康测评表';
+
+-- ----------------------------
+-- Table structure for xljk_evaluation_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `xljk_evaluation_detail`;
+CREATE TABLE `xljk_evaluation_detail` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `evaluation_id` bigint(20) NOT NULL COMMENT '测评表ID',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_no` varchar(50) NOT NULL COMMENT '学号',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `gender` char(1) DEFAULT NULL COMMENT '性别(0-男,1-女,2-未知)',
+ `birth_date` date DEFAULT NULL COMMENT '出生日期',
+ `phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `mental_status` char(1) NOT NULL COMMENT '心理状态(1-健康,2-良好,3-重点关注)',
+ `score` int(11) DEFAULT NULL COMMENT '分数(仅重点关注时填写)',
+ `create_by` bigint(20) NOT NULL COMMENT '创建者',
+ `create_time` datetime NOT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `tenant_id` varchar(20) DEFAULT NULL COMMENT '租户ID',
+ `create_dept` bigint(20) NOT NULL COMMENT '创建部门',
+ `deleted` char(1) NOT NULL DEFAULT '0' COMMENT '删除标志(0-存在,1-删除)',
+ PRIMARY KEY (`id`),
+ KEY `idx_evaluation_id` (`evaluation_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_mental_status` (`mental_status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='心理健康测评明细表';
+
+-- ----------------------------
+-- Table structure for xskh_assessment_detail
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_assessment_detail`;
+CREATE TABLE `xskh_assessment_detail` (
+ `id` bigint(20) NOT NULL COMMENT 'ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'é€»è¾‘åˆ é™¤æ ‡å¿—',
+ `record_id` bigint(20) NOT NULL COMMENT '测评记录ID',
+ `plan_id` bigint(20) NOT NULL COMMENT '计划ID',
+ `student_id` bigint(20) NOT NULL COMMENT 'å¦ç”ŸID',
+ `indicator_id` bigint(20) NOT NULL COMMENT 'æŒ‡æ ‡ID',
+ `indicator_code` varchar(50) DEFAULT NULL COMMENT 'æŒ‡æ ‡ç¼–ç ',
+ `indicator_name` varchar(100) DEFAULT NULL COMMENT 'æŒ‡æ ‡åç§°',
+ `indicator_type` varchar(20) DEFAULT NULL COMMENT 'æŒ‡æ ‡ç±»åž‹',
+ `parent_indicator_id` bigint(20) DEFAULT NULL COMMENT 'çˆ¶çº§æŒ‡æ ‡ID',
+ `indicator_level` tinyint(4) DEFAULT NULL COMMENT 'æŒ‡æ ‡å±‚çº§',
+ `indicator_weight` decimal(5,4) DEFAULT NULL COMMENT 'æŒ‡æ ‡æƒé‡',
+ `max_score` decimal(5,2) DEFAULT NULL COMMENT '满分值',
+ `min_score` decimal(5,2) DEFAULT '0.00' COMMENT '最低分',
+ `self_eval_score` decimal(5,2) DEFAULT NULL COMMENT '自评分数',
+ `teacher_eval_score` decimal(5,2) DEFAULT NULL COMMENT '教师评分',
+ `final_score` decimal(5,2) DEFAULT NULL COMMENT '最终得分',
+ `score_description` varchar(500) DEFAULT NULL COMMENT '评分说明',
+ `status` char(1) DEFAULT '1' COMMENT '状æ€',
+ `self_eval_time` datetime DEFAULT NULL COMMENT '自评时间',
+ `teacher_eval_time` datetime DEFAULT NULL COMMENT '教师评价时间',
+ `teacher_id` bigint(20) DEFAULT NULL COMMENT '评价教师ID',
+ `evidence_files` json DEFAULT NULL COMMENT 'ä½è¯ææ–™',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_record_id` (`record_id`),
+ KEY `idx_plan_id` (`plan_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_indicator_id` (`indicator_id`),
+ KEY `idx_parent_indicator_id` (`parent_indicator_id`),
+ KEY `idx_status` (`status`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测评明细记录表';
+
+-- ----------------------------
+-- Table structure for xskh_assessment_indicator
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_assessment_indicator`;
+CREATE TABLE `xskh_assessment_indicator` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `indicator_code` varchar(32) NOT NULL COMMENT '指标编码(唯一标识)',
+ `indicator_name` varchar(100) NOT NULL COMMENT '指标名称',
+ `indicator_desc` text COMMENT '指标说明及评分标准',
+ `short_name` varchar(50) DEFAULT NULL COMMENT '指标简称',
+ `english_name` varchar(100) DEFAULT NULL COMMENT '英文名称',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父级指标ID',
+ `level` tinyint(1) DEFAULT '1' COMMENT '指标层级:1-一级,2-二级,3-三级',
+ `path` varchar(500) DEFAULT NULL COMMENT '层级路径(如:1/2/3)',
+ `has_children` char(1) DEFAULT '0' COMMENT '是否有子指标:0-否,1-是',
+ `indicator_type` varchar(20) NOT NULL COMMENT '指标类型:moral-德育,intellectual-智育,physical-体育,aesthetic-美育,labor-劳育',
+ `category` varchar(50) DEFAULT NULL COMMENT '指标分类:basic-基础指标,bonus-加分指标,deduct-扣分指标',
+ `dimension` varchar(50) DEFAULT NULL COMMENT '测评维度:academic-学业,behavior-行为,ability-能力,innovation-创新',
+ `max_score` decimal(5,2) NOT NULL COMMENT '满分分值',
+ `min_score` decimal(5,2) DEFAULT '0.00' COMMENT '最低分值',
+ `default_score` decimal(5,2) DEFAULT '0.00' COMMENT '默认分值',
+ `weight` decimal(3,2) DEFAULT '1.00' COMMENT '权重系数',
+ `score_precision` tinyint(1) DEFAULT '2' COMMENT '分数精度(小数位数)',
+ `calculation_method` varchar(50) DEFAULT 'manual' COMMENT '计算方式:manual-手工录入,auto-自动计算,formula-公式计算',
+ `formula` text COMMENT '计算公式',
+ `data_source` varchar(100) DEFAULT NULL COMMENT '数据来源',
+ `update_frequency` varchar(20) DEFAULT NULL COMMENT '更新频率:realtime-实时,daily-每日,weekly-每周,monthly-每月',
+ `scoring_criteria` json DEFAULT NULL COMMENT '评分标准(JSON格式)',
+ `score_levels` json DEFAULT NULL COMMENT '分数等级(优秀、良好、合格、不合格)',
+ `benchmark_score` decimal(5,2) DEFAULT NULL COMMENT '基准分数',
+ `pass_score` decimal(5,2) DEFAULT NULL COMMENT '及格分数',
+ `evaluator_roles` json DEFAULT NULL COMMENT '评价人角色列表',
+ `viewer_roles` json DEFAULT NULL COMMENT '查看人角色列表',
+ `self_eval_allowed` char(1) DEFAULT '1' COMMENT '是否允许自评:0-否,1-是',
+ `peer_eval_allowed` char(1) DEFAULT '0' COMMENT '是否允许互评:0-否,1-是',
+ `applicable_grades` json DEFAULT NULL COMMENT '适用年级',
+ `applicable_majors` json DEFAULT NULL COMMENT '适用专业',
+ `applicable_colleges` json DEFAULT NULL COMMENT '适用学院',
+ `effective_date` date DEFAULT NULL COMMENT '生效日期',
+ `expire_date` date DEFAULT NULL COMMENT '失效日期',
+ `status` char(1) DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
+ `is_published` char(1) DEFAULT '0' COMMENT '是否发布:0-未发布,1-已发布',
+ `is_required` char(1) DEFAULT '1' COMMENT '是否必填:0-否,1-是',
+ `is_visible` char(1) DEFAULT '1' COMMENT '是否可见:0-否,1-是',
+ `usage_count` int(11) DEFAULT '0' COMMENT '使用次数',
+ `avg_score` decimal(5,2) DEFAULT '0.00' COMMENT '平均分',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序序号',
+ `version` int(11) DEFAULT '1' COMMENT '版本号',
+ `input_type` varchar(20) DEFAULT 'number' COMMENT '输入类型:number-数字,text-文本,select-选择,checkbox-复选',
+ `validation_rules` json DEFAULT NULL COMMENT '验证规则',
+ `help_text` varchar(500) DEFAULT NULL COMMENT '帮助说明',
+ `placeholder` varchar(200) DEFAULT NULL COMMENT '输入提示',
+ `reference_standard` varchar(500) DEFAULT NULL COMMENT '参考标准',
+ `related_indicators` json DEFAULT NULL COMMENT '关联指标',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_indicator_code_tenant` (`indicator_code`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_parent_id` (`parent_id`),
+ KEY `idx_indicator_type` (`indicator_type`),
+ KEY `idx_status` (`status`),
+ KEY `idx_level` (`level`),
+ KEY `idx_sort_order` (`sort_order`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测评指标体系表';
+
+-- ----------------------------
+-- Table structure for xskh_assessment_plan
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_assessment_plan`;
+CREATE TABLE `xskh_assessment_plan` (
+ `id` bigint(20) NOT NULL COMMENT 'ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'é€»è¾‘åˆ é™¤æ ‡å¿—',
+ `plan_code` varchar(32) NOT NULL COMMENT '计划编ç ',
+ `plan_name` varchar(100) NOT NULL COMMENT '计划åç§°',
+ `plan_desc` text COMMENT '计划æè¿°',
+ `scheme_id` bigint(20) NOT NULL COMMENT '评价方案ID',
+ `scheme_name` varchar(100) DEFAULT NULL COMMENT '评价方案åç§°',
+ `plan_cycle` varchar(50) NOT NULL COMMENT 'è€ƒæ ¸å‘¨æœŸ',
+ `start_date` date NOT NULL COMMENT '开始日期',
+ `end_date` date NOT NULL COMMENT 'ç»“æŸæ—¥æœŸ',
+ `self_eval_start_time` datetime DEFAULT NULL COMMENT '自评开始时间',
+ `self_eval_end_time` datetime DEFAULT NULL COMMENT 'è‡ªè¯„ç»“æŸæ—¶é—´',
+ `teacher_eval_start_time` datetime DEFAULT NULL COMMENT '教师评价开始时间',
+ `teacher_eval_end_time` datetime DEFAULT NULL COMMENT 'æ•™å¸ˆè¯„ä»·ç»“æŸæ—¶é—´',
+ `target_grades` json DEFAULT NULL COMMENT 'ç›®æ ‡å¹´çº§',
+ `target_majors` json DEFAULT NULL COMMENT 'ç›®æ ‡ä¸“ä¸š',
+ `target_colleges` json DEFAULT NULL COMMENT 'ç›®æ ‡å¦é™¢',
+ `student_types` json DEFAULT NULL COMMENT 'å¦ç”Ÿç±»åž‹',
+ `total_students` int(11) DEFAULT '0' COMMENT '总å¦ç”Ÿæ•°',
+ `completed_students` int(11) DEFAULT '0' COMMENT '已完æˆå¦ç”Ÿæ•°',
+ `approved_students` int(11) DEFAULT '0' COMMENT 'å·²å®¡æ ¸å¦ç”Ÿæ•°',
+ `avg_score` decimal(5,2) DEFAULT '0.00' COMMENT 'å¹³å‡åˆ†',
+ `max_score` decimal(5,2) DEFAULT '0.00' COMMENT '最高分',
+ `min_score` decimal(5,2) DEFAULT '0.00' COMMENT '最低分',
+ `status` char(1) DEFAULT '1' COMMENT '状æ€',
+ `is_published` char(1) DEFAULT '0' COMMENT '是å¦å‘布',
+ `workflow_enabled` char(1) DEFAULT '0' COMMENT '是å¦å¯ç”¨å·¥ä½œæµ',
+ `approval_required` char(1) DEFAULT '1' COMMENT '是å¦éœ€è¦å®¡æ‰¹',
+ `approval_levels` tinyint(1) DEFAULT '2' COMMENT '审批级数',
+ `allow_self_eval` char(1) DEFAULT '1' COMMENT 'å…许自评',
+ `allow_teacher_eval` char(1) DEFAULT '1' COMMENT 'å…许教师评价',
+ `show_ranking` char(1) DEFAULT '1' COMMENT '显示排å',
+ `show_score` char(1) DEFAULT '1' COMMENT '显示分数',
+ `manager_id` bigint(20) DEFAULT NULL COMMENT '负责人ID',
+ `manager_name` varchar(50) DEFAULT NULL COMMENT '负责人姓å',
+ `manage_dept` bigint(20) DEFAULT NULL COMMENT '管ç†éƒ¨é—¨',
+ `manage_dept_name` varchar(100) DEFAULT NULL COMMENT '管ç†éƒ¨é—¨åç§°',
+ `implementation_guide` text COMMENT '实施指å—',
+ `change_log` json DEFAULT NULL COMMENT 'å˜æ›´æ—¥å¿—',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_plan_code` (`plan_code`),
+ KEY `idx_scheme_id` (`scheme_id`),
+ KEY `idx_start_date` (`start_date`),
+ KEY `idx_end_date` (`end_date`),
+ KEY `idx_status` (`status`),
+ KEY `idx_manager_id` (`manager_id`),
+ KEY `idx_manage_dept` (`manage_dept`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='è€ƒæ ¸è®¡åˆ’è¡¨';
+
+-- ----------------------------
+-- Table structure for xskh_assessment_record
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_assessment_record`;
+CREATE TABLE `xskh_assessment_record` (
+ `id` bigint(20) NOT NULL COMMENT 'ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'é€»è¾‘åˆ é™¤æ ‡å¿—',
+ `plan_id` bigint(20) NOT NULL COMMENT '计划ID',
+ `plan_code` varchar(32) DEFAULT NULL COMMENT '计划编ç ',
+ `plan_name` varchar(100) DEFAULT NULL COMMENT '计划åç§°',
+ `student_id` bigint(20) NOT NULL COMMENT 'å¦ç”ŸID',
+ `student_code` varchar(50) DEFAULT NULL COMMENT 'å¦å·',
+ `student_name` varchar(50) DEFAULT NULL COMMENT 'å¦ç”Ÿå§“å',
+ `college_id` bigint(20) DEFAULT NULL COMMENT 'å¦é™¢ID',
+ `college_name` varchar(100) DEFAULT NULL COMMENT 'å¦é™¢åç§°',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业åç§°',
+ `class_id` bigint(20) DEFAULT NULL COMMENT 'ç级ID',
+ `class_name` varchar(100) DEFAULT NULL COMMENT 'ç级åç§°',
+ `grade` varchar(10) DEFAULT NULL COMMENT '年级',
+ `student_type` varchar(20) DEFAULT NULL COMMENT 'å¦ç”Ÿç±»åž‹',
+ `final_score` decimal(5,2) DEFAULT '0.00' COMMENT '最终得分',
+ `self_eval_score` decimal(5,2) DEFAULT '0.00' COMMENT '自评分数',
+ `teacher_eval_score` decimal(5,2) DEFAULT '0.00' COMMENT '教师评分',
+ `class_rank` int(11) DEFAULT NULL COMMENT 'ç级排å',
+ `grade_rank` int(11) DEFAULT NULL COMMENT '年级排å',
+ `major_rank` int(11) DEFAULT NULL COMMENT '专业排å',
+ `college_rank` int(11) DEFAULT NULL COMMENT 'å¦é™¢æŽ’å',
+ `status` char(1) DEFAULT '1' COMMENT '状æ€',
+ `is_submitted` char(1) DEFAULT '0' COMMENT 'æ˜¯å¦æäº¤',
+ `submit_time` datetime DEFAULT NULL COMMENT 'æäº¤æ—¶é—´',
+ `is_approved` char(1) DEFAULT '0' COMMENT '是å¦å®¡æ ¸',
+ `approved_by` bigint(20) DEFAULT NULL COMMENT 'å®¡æ ¸äºº',
+ `approved_time` datetime DEFAULT NULL COMMENT 'å®¡æ ¸æ—¶é—´',
+ `approval_comment` varchar(500) DEFAULT NULL COMMENT 'å®¡æ ¸æ„è§',
+ `self_eval_time` datetime DEFAULT NULL COMMENT '自评时间',
+ `teacher_eval_time` datetime DEFAULT NULL COMMENT '教师评价时间',
+ `teacher_id` bigint(20) DEFAULT NULL COMMENT '评价教师ID',
+ `teacher_name` varchar(50) DEFAULT NULL COMMENT '评价教师姓å',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_plan_id` (`plan_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_student_code` (`student_code`),
+ KEY `idx_college_id` (`college_id`),
+ KEY `idx_major_id` (`major_id`),
+ KEY `idx_class_id` (`class_id`),
+ KEY `idx_grade` (`grade`),
+ KEY `idx_status` (`status`),
+ KEY `idx_final_score` (`final_score`),
+ KEY `idx_submit_time` (`submit_time`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='ç»¼åˆæµ‹è¯„记录表';
+
+-- ----------------------------
+-- Table structure for xskh_assessment_scheme
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_assessment_scheme`;
+CREATE TABLE `xskh_assessment_scheme` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `scheme_code` varchar(32) NOT NULL COMMENT '方案编号(唯一标识)',
+ `scheme_name` varchar(100) NOT NULL COMMENT '方案名称',
+ `scheme_desc` text COMMENT '方案说明(目的及适用范围)',
+ `short_name` varchar(50) DEFAULT NULL COMMENT '方案简称',
+ `version` varchar(20) DEFAULT 'V1.0' COMMENT '方案版本',
+ `target_grades` json DEFAULT NULL COMMENT '目标年级',
+ `target_majors` json DEFAULT NULL COMMENT '目标专业',
+ `target_colleges` json DEFAULT NULL COMMENT '目标学院',
+ `student_types` json DEFAULT NULL COMMENT '学生类型:undergraduate-本科生,graduate-研究生,exchange-交换生',
+ `total_score` decimal(5,2) DEFAULT '100.00' COMMENT '总分',
+ `pass_score` decimal(5,2) DEFAULT '60.00' COMMENT '及格分',
+ `good_score` decimal(5,2) DEFAULT '75.00' COMMENT '良好分',
+ `excellent_score` decimal(5,2) DEFAULT '85.00' COMMENT '优秀分',
+ `score_precision` tinyint(1) DEFAULT '2' COMMENT '分数精度',
+ `calculation_method` varchar(50) DEFAULT 'weighted' COMMENT '计算方法:weighted-加权平均,sum-直接相加,custom-自定义',
+ `weight_distribution` json DEFAULT NULL COMMENT '权重分配(各指标类型权重)',
+ `bonus_limit` decimal(5,2) DEFAULT '20.00' COMMENT '加分上限',
+ `deduction_limit` decimal(5,2) DEFAULT '-20.00' COMMENT '扣分下限',
+ `final_score_formula` text COMMENT '最终得分公式',
+ `effective_date` date DEFAULT NULL COMMENT '生效日期',
+ `expire_date` date DEFAULT NULL COMMENT '失效日期',
+ `assessment_cycle` varchar(20) DEFAULT 'semester' COMMENT '评价周期:semester-学期,year-学年,month-月度',
+ `cycle_duration` int(11) DEFAULT '6' COMMENT '周期时长(月)',
+ `workflow_enabled` char(1) DEFAULT '0' COMMENT '是否启用工作流:0-否,1-是',
+ `approval_required` char(1) DEFAULT '1' COMMENT '是否需要审核:0-否,1-是',
+ `approval_levels` tinyint(1) DEFAULT '2' COMMENT '审核级别数',
+ `auto_publish` char(1) DEFAULT '0' COMMENT '是否自动发布:0-否,1-是',
+ `creator_roles` json DEFAULT NULL COMMENT '创建人角色',
+ `evaluator_roles` json DEFAULT NULL COMMENT '评价人角色',
+ `approver_roles` json DEFAULT NULL COMMENT '审核人角色',
+ `viewer_roles` json DEFAULT NULL COMMENT '查看人角色',
+ `status` char(1) DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
+ `is_published` char(1) DEFAULT '0' COMMENT '是否发布:0-未发布,1-已发布',
+ `is_default` char(1) DEFAULT '0' COMMENT '是否默认方案:0-否,1-是',
+ `usage_count` int(11) DEFAULT '0' COMMENT '使用次数',
+ `indicator_count` int(11) DEFAULT '0' COMMENT '指标数量',
+ `plan_count` int(11) DEFAULT '0' COMMENT '关联计划数',
+ `student_count` int(11) DEFAULT '0' COMMENT '评价学生数',
+ `avg_score` decimal(5,2) DEFAULT '0.00' COMMENT '平均分',
+ `allow_self_eval` char(1) DEFAULT '1' COMMENT '允许自评:0-否,1-是',
+ `allow_peer_eval` char(1) DEFAULT '0' COMMENT '允许互评:0-否,1-是',
+ `allow_teacher_eval` char(1) DEFAULT '1' COMMENT '允许教师评价:0-否,1-是',
+ `show_ranking` char(1) DEFAULT '1' COMMENT '显示排名:0-否,1-是',
+ `show_score` char(1) DEFAULT '1' COMMENT '显示分数:0-否,1-是',
+ `reference_standard` varchar(500) DEFAULT NULL COMMENT '参考标准',
+ `implementation_guide` text COMMENT '实施指南',
+ `change_log` json DEFAULT NULL COMMENT '变更日志',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_scheme_code_tenant` (`scheme_code`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_status` (`status`),
+ KEY `idx_effective_date` (`effective_date`),
+ KEY `idx_assessment_cycle` (`assessment_cycle`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='考核方案表';
+
+-- ----------------------------
+-- Table structure for xskh_bonus_application
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_bonus_application`;
+CREATE TABLE `xskh_bonus_application` (
+ `id` bigint(20) NOT NULL COMMENT 'ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'é€»è¾‘åˆ é™¤æ ‡å¿—',
+ `application_code` varchar(32) NOT NULL COMMENT '申请编å·',
+ `plan_id` bigint(20) NOT NULL COMMENT '计划ID',
+ `student_id` bigint(20) NOT NULL COMMENT 'å¦ç”ŸID',
+ `student_code` varchar(50) DEFAULT NULL COMMENT 'å¦å·',
+ `student_name` varchar(50) DEFAULT NULL COMMENT 'å¦ç”Ÿå§“å',
+ `bonus_type` varchar(50) NOT NULL COMMENT 'é™„åŠ åˆ†ç±»åž‹',
+ `bonus_category` varchar(100) DEFAULT NULL COMMENT 'é™„åŠ åˆ†ç±»åˆ«',
+ `achievement_name` varchar(200) NOT NULL COMMENT 'èŽ·å¥–æˆæžœåç§°',
+ `achievement_level` varchar(50) DEFAULT NULL COMMENT 'æˆæžœçº§åˆ«',
+ `achievement_date` date DEFAULT NULL COMMENT '获奖时间',
+ `achievement_desc` text COMMENT 'æˆæžœæè¿°',
+ `requested_score` decimal(5,2) DEFAULT NULL COMMENT '申请分数',
+ `approved_score` decimal(5,2) DEFAULT NULL COMMENT 'å®¡æ ¸åˆ†æ•°',
+ `evidence_files` json DEFAULT NULL COMMENT 'ä½è¯ææ–™',
+ `status` char(1) DEFAULT '1' COMMENT '状æ€',
+ `submit_time` datetime DEFAULT NULL COMMENT 'æäº¤æ—¶é—´',
+ `review_by` bigint(20) DEFAULT NULL COMMENT 'å®¡æ ¸äºº',
+ `review_time` datetime DEFAULT NULL COMMENT 'å®¡æ ¸æ—¶é—´',
+ `review_comment` varchar(500) DEFAULT NULL COMMENT 'å®¡æ ¸æ„è§',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_application_code` (`application_code`),
+ KEY `idx_plan_id` (`plan_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_student_code` (`student_code`),
+ KEY `idx_bonus_type` (`bonus_type`),
+ KEY `idx_status` (`status`),
+ KEY `idx_submit_time` (`submit_time`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='é™„åŠ åˆ†ç”³è¯·è¡¨';
+
+-- ----------------------------
+-- Table structure for xskh_discipline_appeal
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_discipline_appeal`;
+CREATE TABLE `xskh_discipline_appeal` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `appeal_no` varchar(32) NOT NULL COMMENT '申请编号(自动生成:APPEAL202501001)',
+ `discipline_record_id` bigint(20) NOT NULL COMMENT '违纪记录ID',
+ `record_no` varchar(32) NOT NULL COMMENT '违纪记录编号',
+ `student_id` bigint(20) NOT NULL COMMENT '申请学生ID',
+ `student_no` varchar(32) NOT NULL COMMENT '学号',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `phone` varchar(20) DEFAULT NULL COMMENT '联系电话',
+ `email` varchar(100) DEFAULT NULL COMMENT '邮箱地址',
+ `appeal_type` varchar(20) NOT NULL COMMENT '申诉类型:revoke-撤销申请,reduce-减轻申请,correct-纠错申请',
+ `appeal_reason` text NOT NULL COMMENT '申诉理由',
+ `appeal_basis` text COMMENT '申诉依据',
+ `new_facts` text COMMENT '新发现的事实',
+ `legal_basis` varchar(500) DEFAULT NULL COMMENT '法律依据',
+ `apply_time` datetime NOT NULL COMMENT '申请时间',
+ `apply_deadline` datetime DEFAULT NULL COMMENT '申请截止时间',
+ `evidence_files` json DEFAULT NULL COMMENT '证据文件列表',
+ `witness_info` text COMMENT '证人信息',
+ `other_evidence` text COMMENT '其他证据说明',
+ `appeal_status` char(1) DEFAULT '1' COMMENT '申请状态:1-待辅导员审核,2-待学院审核,3-待学校审核,4-已通过,5-已驳回,6-已撤回',
+ `current_level` tinyint(1) DEFAULT '1' COMMENT '当前审核级别:1-辅导员,2-学院,3-学校',
+ `current_approver_id` bigint(20) DEFAULT NULL COMMENT '当前审核人ID',
+ `current_approver_name` varchar(50) DEFAULT NULL COMMENT '当前审核人姓名',
+ `approval_deadline` datetime DEFAULT NULL COMMENT '审核截止时间',
+ `final_result` char(1) DEFAULT NULL COMMENT '最终结果:1-完全撤销,2-部分撤销,3-减轻处分,4-维持原状,5-驳回申请',
+ `final_comment` text COMMENT '最终审核意见',
+ `result_reason` text COMMENT '结果说明',
+ `complete_time` datetime DEFAULT NULL COMMENT '完成时间',
+ `effective_date` date DEFAULT NULL COMMENT '生效日期',
+ `handler_id` bigint(20) DEFAULT NULL COMMENT '最终处理人ID',
+ `handler_name` varchar(50) DEFAULT NULL COMMENT '最终处理人姓名',
+ `handle_dept_id` bigint(20) DEFAULT NULL COMMENT '处理部门ID',
+ `handle_dept_name` varchar(100) DEFAULT NULL COMMENT '处理部门名称',
+ `decision_file_id` bigint(20) DEFAULT NULL COMMENT '决定书文件ID',
+ `approval_history` json DEFAULT NULL COMMENT '审核历史记录',
+ `process_log` json DEFAULT NULL COMMENT '流程日志',
+ `reminder_count` int(11) DEFAULT '0' COMMENT '提醒次数',
+ `last_reminder_time` datetime DEFAULT NULL COMMENT '最后提醒时间',
+ `notification_settings` json DEFAULT NULL COMMENT '通知设置',
+ `auto_notify` char(1) DEFAULT '1' COMMENT '是否自动通知:0-否,1-是',
+ `priority_level` tinyint(1) DEFAULT '3' COMMENT '优先级:1-最高,2-高,3-普通,4-低,5-最低',
+ `is_urgent` char(1) DEFAULT '0' COMMENT '是否紧急:0-否,1-是',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_appeal_no_tenant` (`appeal_no`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_discipline_record_id` (`discipline_record_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_appeal_status` (`appeal_status`),
+ KEY `idx_current_approver` (`current_approver_id`),
+ KEY `idx_apply_time` (`apply_time`),
+ KEY `idx_final_result` (`final_result`),
+ KEY `idx_student_status` (`student_id`,`appeal_status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='违纪处分申诉表';
+
+-- ----------------------------
+-- Table structure for xskh_discipline_record
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_discipline_record`;
+CREATE TABLE `xskh_discipline_record` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `record_no` varchar(32) NOT NULL COMMENT '记录编号(自动生成:XSKH202501001)',
+ `case_no` varchar(50) DEFAULT NULL COMMENT '案件编号(可手工填写)',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID,关联xg_student_msg.id',
+ `student_no` varchar(32) NOT NULL COMMENT '学号(来源:xg_student_msg.student_no)',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名(来源:xg_student_msg.name)',
+ `id_card` varchar(18) DEFAULT NULL COMMENT '身份证号(来源:xg_student_msg.id_card)',
+ `gender` char(1) DEFAULT NULL COMMENT '性别:0-男,1-女(来源:xg_student_msg.gender)',
+ `phone` varchar(20) DEFAULT NULL COMMENT '联系电话(来源:xg_student_msg.phone)',
+ `email` varchar(100) DEFAULT NULL COMMENT '邮箱(来源:xg_student_msg.email)',
+ `grade` varchar(10) DEFAULT NULL COMMENT '年级(来源:xg_student_msg.grade)',
+ `class_id` varchar(100) DEFAULT NULL COMMENT '班级ID(来源:xg_student_msg.class_id)',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称(来源:xg_student_msg.class_name)',
+ `major_id` varchar(100) DEFAULT NULL COMMENT '专业ID(来源:xg_student_msg.major_id)',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称(来源:xg_student_msg.major_name)',
+ `college_id` varchar(100) DEFAULT NULL COMMENT '学院ID(来源:xg_student_msg.college_id)',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称(来源:xg_student_msg.college_name)',
+ `enrollment_year` int(4) DEFAULT NULL COMMENT '入学年份(来源:xg_student_msg.enrollment_year)',
+ `student_status` char(1) DEFAULT NULL COMMENT '学籍状态(来源:xg_student_msg.student_status)',
+ `counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID(来源:xg_student_msg.counselor_id)',
+ `counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名(来源:xg_student_msg.counselor_name)',
+ `class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID(来源:xg_student_msg.class_teacher_id)',
+ `class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名(来源:xg_student_msg.class_teacher_name)',
+ `discipline_type_id` bigint(20) NOT NULL COMMENT '违纪类型ID',
+ `discipline_type_code` varchar(32) NOT NULL COMMENT '违纪类型编码',
+ `discipline_type_name` varchar(100) NOT NULL COMMENT '违纪类型名称',
+ `discipline_date` date NOT NULL COMMENT '违纪日期',
+ `discipline_time` time DEFAULT NULL COMMENT '违纪时间',
+ `discipline_location` varchar(200) DEFAULT NULL COMMENT '违纪地点',
+ `discipline_desc` text NOT NULL COMMENT '违纪详情描述',
+ `discipline_evidence` json DEFAULT NULL COMMENT '违纪证据文件列表',
+ `severity_level` tinyint(1) DEFAULT NULL COMMENT '违纪严重程度:1-轻微,2-一般,3-严重,4-特别严重',
+ `punishment_type_id` bigint(20) NOT NULL COMMENT '处分类型ID',
+ `punishment_type_code` varchar(32) NOT NULL COMMENT '处分类型编码',
+ `punishment_type_name` varchar(100) NOT NULL COMMENT '处分类型名称',
+ `punishment_date` date NOT NULL COMMENT '处分日期',
+ `punishment_decision_no` varchar(50) DEFAULT NULL COMMENT '处分决定书编号',
+ `punishment_basis` text COMMENT '处分依据',
+ `punishment_desc` text COMMENT '处分决定内容',
+ `has_duration` char(1) DEFAULT '0' COMMENT '是否有期限:0-否,1-是',
+ `punishment_duration` int(11) DEFAULT NULL COMMENT '处分期限(月)',
+ `punishment_start_date` date DEFAULT NULL COMMENT '处分开始日期',
+ `punishment_end_date` date DEFAULT NULL COMMENT '处分到期日期',
+ `auto_expire` char(1) DEFAULT '1' COMMENT '是否自动到期:0-否,1-是',
+ `record_status` char(1) DEFAULT '1' COMMENT '记录状态:1-有效,2-已撤销,3-已到期,4-已转移,5-已归档',
+ `punishment_status` char(1) DEFAULT '1' COMMENT '处分状态:1-执行中,2-已完成,3-已撤销,4-已到期',
+ `appeal_status` char(1) DEFAULT '0' COMMENT '申诉状态:0-未申诉,1-申诉中,2-申诉通过,3-申诉驳回',
+ `archive_status` char(1) DEFAULT '0' COMMENT '归档状态:0-未归档,1-已归档',
+ `approval_status` char(1) DEFAULT '1' COMMENT '审核状态:1-待审核,2-审核中,3-已通过,4-已驳回',
+ `approval_level` tinyint(1) DEFAULT '1' COMMENT '当前审核级别',
+ `approver_id` bigint(20) DEFAULT NULL COMMENT '当前审核人ID',
+ `approver_name` varchar(50) DEFAULT NULL COMMENT '当前审核人姓名',
+ `approve_time` datetime DEFAULT NULL COMMENT '审核时间',
+ `approve_comment` text COMMENT '审核意见',
+ `approval_history` json DEFAULT NULL COMMENT '审核历史记录',
+ `reporter_id` bigint(20) DEFAULT NULL COMMENT '报告人ID',
+ `reporter_name` varchar(50) DEFAULT NULL COMMENT '报告人姓名',
+ `reporter_type` varchar(20) DEFAULT NULL COMMENT '报告人类型:teacher-教师,student-学生,staff-职工,other-其他',
+ `report_time` datetime DEFAULT NULL COMMENT '报告时间',
+ `report_desc` text COMMENT '报告描述',
+ `handle_dept_id` bigint(20) DEFAULT NULL COMMENT '处理部门ID',
+ `handle_dept_name` varchar(100) DEFAULT NULL COMMENT '处理部门名称',
+ `handler_id` bigint(20) DEFAULT NULL COMMENT '处理人ID',
+ `handler_name` varchar(50) DEFAULT NULL COMMENT '处理人姓名',
+ `handle_time` datetime DEFAULT NULL COMMENT '处理时间',
+ `affects_scholarship` char(1) DEFAULT '0' COMMENT '是否影响奖学金',
+ `affects_graduation` char(1) DEFAULT '0' COMMENT '是否影响毕业',
+ `affects_employment` char(1) DEFAULT '0' COMMENT '是否影响就业',
+ `record_in_file` char(1) DEFAULT '1' COMMENT '是否记入档案',
+ `attachment_ids` json DEFAULT NULL COMMENT '附件ID列表',
+ `decision_file_id` bigint(20) DEFAULT NULL COMMENT '处分决定书文件ID',
+ `evidence_files` json DEFAULT NULL COMMENT '证据文件列表',
+ `notification_sent` char(1) DEFAULT '0' COMMENT '是否已通知:0-否,1-是',
+ `notification_time` datetime DEFAULT NULL COMMENT '通知时间',
+ `notification_method` varchar(50) DEFAULT NULL COMMENT '通知方式:email-邮件,sms-短信,wechat-微信,phone-电话',
+ `view_count` int(11) DEFAULT '0' COMMENT '查看次数',
+ `last_view_time` datetime DEFAULT NULL COMMENT '最后查看时间',
+ `appeal_count` int(11) DEFAULT '0' COMMENT '申诉次数',
+ `modification_count` int(11) DEFAULT '0' COMMENT '修改次数',
+ `data_source` varchar(20) DEFAULT 'manual' COMMENT '数据来源:manual-手工录入,import-批量导入,sync-系统同步',
+ `import_batch_id` bigint(20) DEFAULT NULL COMMENT '导入批次ID',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ `internal_note` text COMMENT '内部备注(学生不可见)',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_record_no_tenant` (`record_no`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_discipline_type` (`discipline_type_id`),
+ KEY `idx_punishment_type` (`punishment_type_id`),
+ KEY `idx_discipline_date` (`discipline_date`),
+ KEY `idx_punishment_date` (`punishment_date`),
+ KEY `idx_record_status` (`record_status`),
+ KEY `idx_appeal_status` (`appeal_status`),
+ KEY `idx_college_id` (`college_id`),
+ KEY `idx_class_id` (`class_id`),
+ KEY `idx_counselor_id` (`counselor_id`),
+ KEY `idx_approval_status` (`approval_status`),
+ KEY `idx_punishment_end_date` (`punishment_end_date`),
+ KEY `idx_college_discipline` (`college_id`,`discipline_date`),
+ KEY `idx_student_status` (`student_id`,`record_status`),
+ KEY `idx_discipline_punishment` (`discipline_type_id`,`punishment_type_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='违纪处分记录表';
+
+-- ----------------------------
+-- Table structure for xskh_discipline_type
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_discipline_type`;
+CREATE TABLE `xskh_discipline_type` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `type_code` varchar(32) NOT NULL COMMENT '违纪类型编码(唯一标识)',
+ `type_name` varchar(100) NOT NULL COMMENT '违纪类型名称',
+ `type_desc` text COMMENT '违纪类型描述说明',
+ `parent_id` bigint(20) DEFAULT '0' COMMENT '父级类型ID(支持分类层级)',
+ `level` tinyint(1) DEFAULT '1' COMMENT '层级:1-一级,2-二级,3-三级',
+ `severity_level` tinyint(1) DEFAULT '1' COMMENT '严重程度:1-轻微,2-一般,3-严重,4-特别严重',
+ `severity_score` decimal(3,1) DEFAULT '1.0' COMMENT '严重程度评分(1.0-10.0)',
+ `default_punishment_id` bigint(20) DEFAULT NULL COMMENT '默认处分类型ID',
+ `default_punishment_name` varchar(100) DEFAULT NULL COMMENT '默认处分类型名称',
+ `suggested_duration` int(11) DEFAULT '0' COMMENT '建议处分期限(月)',
+ `status` char(1) DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
+ `is_published` char(1) DEFAULT '0' COMMENT '是否发布:0-未发布,1-已发布',
+ `can_appeal` char(1) DEFAULT '1' COMMENT '是否可申诉:0-否,1-是',
+ `auto_notify` char(1) DEFAULT '0' COMMENT '是否自动通知:0-否,1-是',
+ `usage_count` int(11) DEFAULT '0' COMMENT '使用次数',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序序号',
+ `version` int(11) DEFAULT '1' COMMENT '版本号',
+ `applicable_grades` varchar(200) DEFAULT NULL COMMENT '适用年级(JSON格式)',
+ `applicable_majors` varchar(500) DEFAULT NULL COMMENT '适用专业(JSON格式)',
+ `reference_regulation` varchar(500) DEFAULT NULL COMMENT '参考规章制度',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_type_code_tenant` (`type_code`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_parent_id` (`parent_id`),
+ KEY `idx_status` (`status`),
+ KEY `idx_severity_level` (`severity_level`),
+ KEY `idx_sort_order` (`sort_order`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='违纪类型管理表';
+
+-- ----------------------------
+-- Table structure for xskh_operation_log
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_operation_log`;
+CREATE TABLE `xskh_operation_log` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `operation_id` varchar(32) NOT NULL COMMENT '操作ID',
+ `operation_type` varchar(50) NOT NULL COMMENT '操作类型:create-新增,update-修改,delete-删除,approve-审核,export-导出,import-导入',
+ `business_type` varchar(50) NOT NULL COMMENT '业务类型:discipline-违纪管理,assessment-测评管理,statistics-统计分析',
+ `business_id` bigint(20) DEFAULT NULL COMMENT '业务数据ID',
+ `business_name` varchar(200) DEFAULT NULL COMMENT '业务数据名称',
+ `operator_id` bigint(20) NOT NULL COMMENT '操作人ID',
+ `operator_name` varchar(50) NOT NULL COMMENT '操作人姓名',
+ `operator_type` varchar(50) DEFAULT NULL COMMENT '操作人类型:admin-管理员,teacher-教师,student-学生',
+ `operator_ip` varchar(50) DEFAULT NULL COMMENT '操作IP地址',
+ `operator_location` varchar(200) DEFAULT NULL COMMENT '操作地点',
+ `operation_desc` varchar(500) DEFAULT NULL COMMENT '操作描述',
+ `operation_params` json DEFAULT NULL COMMENT '操作参数',
+ `old_data` json DEFAULT NULL COMMENT '修改前数据',
+ `new_data` json DEFAULT NULL COMMENT '修改后数据',
+ `changed_fields` json DEFAULT NULL COMMENT '变更字段列表',
+ `operation_status` char(1) DEFAULT '1' COMMENT '操作状态:1-成功,2-失败,3-部分成功',
+ `error_message` text COMMENT '错误信息',
+ `execution_time` int(11) DEFAULT NULL COMMENT '执行时间(毫秒)',
+ `user_agent` varchar(500) DEFAULT NULL COMMENT '用户代理',
+ `browser` varchar(100) DEFAULT NULL COMMENT '浏览器',
+ `os` varchar(100) DEFAULT NULL COMMENT '操作系统',
+ `device_type` varchar(50) DEFAULT NULL COMMENT '设备类型:pc-电脑,mobile-手机,tablet-平板',
+ `request_url` varchar(500) DEFAULT NULL COMMENT '请求URL',
+ `request_method` varchar(10) DEFAULT NULL COMMENT '请求方法',
+ `response_code` int(11) DEFAULT NULL COMMENT '响应代码',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_operation_type` (`operation_type`),
+ KEY `idx_business_type` (`business_type`),
+ KEY `idx_operator_id` (`operator_id`),
+ KEY `idx_create_time` (`create_time`),
+ KEY `idx_business_id` (`business_id`),
+ KEY `idx_operation_status` (`operation_status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='操作日志表';
+
+-- ----------------------------
+-- Table structure for xskh_punishment_type
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_punishment_type`;
+CREATE TABLE `xskh_punishment_type` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `type_code` varchar(32) NOT NULL COMMENT '处分类型编码',
+ `type_name` varchar(100) NOT NULL COMMENT '处分类型名称',
+ `type_desc` text COMMENT '处分类型描述',
+ `punishment_level` tinyint(1) DEFAULT '1' COMMENT '处分等级:1-警告,2-严重警告,3-记过,4-留校察看,5-开除学籍',
+ `level_score` decimal(3,1) DEFAULT '1.0' COMMENT '处分等级评分(1.0-10.0)',
+ `has_duration` char(1) DEFAULT '1' COMMENT '是否有期限:0-否,1-是',
+ `default_duration` int(11) DEFAULT '0' COMMENT '默认期限(月)',
+ `min_duration` int(11) DEFAULT '0' COMMENT '最短期限(月)',
+ `max_duration` int(11) DEFAULT '0' COMMENT '最长期限(月)',
+ `approval_required` char(1) DEFAULT '1' COMMENT '是否需要审核:0-否,1-是',
+ `approval_levels` tinyint(1) DEFAULT '1' COMMENT '审核级别:1-一级,2-二级,3-三级',
+ `can_appeal` char(1) DEFAULT '1' COMMENT '是否可申诉:0-否,1-是',
+ `appeal_deadline` int(11) DEFAULT '30' COMMENT '申诉期限(天)',
+ `affects_scholarship` char(1) DEFAULT '0' COMMENT '是否影响奖学金:0-否,1-是',
+ `affects_graduation` char(1) DEFAULT '0' COMMENT '是否影响毕业:0-否,1-是',
+ `affects_employment` char(1) DEFAULT '0' COMMENT '是否影响就业:0-否,1-是',
+ `record_in_file` char(1) DEFAULT '1' COMMENT '是否记入档案:0-否,1-是',
+ `status` char(1) DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
+ `is_published` char(1) DEFAULT '0' COMMENT '是否发布:0-未发布,1-已发布',
+ `usage_count` int(11) DEFAULT '0' COMMENT '使用次数',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序序号',
+ `legal_basis` varchar(500) DEFAULT NULL COMMENT '法律依据',
+ `execution_procedure` text COMMENT '执行程序',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_type_code_tenant` (`type_code`,`tenant_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_punishment_level` (`punishment_level`),
+ KEY `idx_status` (`status`),
+ KEY `idx_sort_order` (`sort_order`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='处分类型管理表';
+
+-- ----------------------------
+-- Table structure for xskh_scheme_indicator
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_scheme_indicator`;
+CREATE TABLE `xskh_scheme_indicator` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID(雪花ID)',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志',
+ `scheme_id` bigint(20) NOT NULL COMMENT '方案ID',
+ `indicator_id` bigint(20) NOT NULL COMMENT '指标ID',
+ `indicator_code` varchar(32) NOT NULL COMMENT '指标编码',
+ `indicator_name` varchar(100) NOT NULL COMMENT '指标名称',
+ `weight` decimal(3,2) DEFAULT '1.00' COMMENT '在方案中的权重',
+ `max_score` decimal(5,2) NOT NULL COMMENT '在方案中的满分',
+ `min_score` decimal(5,2) DEFAULT '0.00' COMMENT '在方案中的最低分',
+ `default_score` decimal(5,2) DEFAULT '0.00' COMMENT '默认分数',
+ `is_required` char(1) DEFAULT '1' COMMENT '是否必填:0-否,1-是',
+ `is_visible` char(1) DEFAULT '1' COMMENT '是否可见:0-否,1-是',
+ `allow_self_eval` char(1) DEFAULT '1' COMMENT '允许自评:0-否,1-是',
+ `calculation_method` varchar(50) DEFAULT NULL COMMENT '计算方法(覆盖指标默认设置)',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序序号',
+ `usage_count` int(11) DEFAULT '0' COMMENT '使用次数',
+ `avg_score` decimal(5,2) DEFAULT '0.00' COMMENT '平均分',
+ `custom_desc` text COMMENT '自定义描述(覆盖指标默认描述)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_scheme_indicator` (`scheme_id`,`indicator_id`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_scheme_id` (`scheme_id`),
+ KEY `idx_indicator_id` (`indicator_id`),
+ KEY `idx_sort_order` (`sort_order`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='方案指标关联表';
+
+-- ----------------------------
+-- Table structure for xskh_statistics_config
+-- ----------------------------
+DROP TABLE IF EXISTS `xskh_statistics_config`;
+CREATE TABLE `xskh_statistics_config` (
+ `id` bigint(20) NOT NULL COMMENT 'ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT 'æ›´æ–°æ—¶é—´',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT 'é€»è¾‘åˆ é™¤æ ‡å¿—',
+ `config_name` varchar(100) NOT NULL COMMENT 'é…ç½®åç§°',
+ `config_type` varchar(50) NOT NULL COMMENT 'é…置类型',
+ `stat_dimension` varchar(50) DEFAULT NULL COMMENT '统计维度',
+ `chart_type` varchar(20) DEFAULT NULL COMMENT '图表类型',
+ `data_source` varchar(100) DEFAULT NULL COMMENT 'æ•°æ®æº',
+ `filter_conditions` json DEFAULT NULL COMMENT 'ç›é€‰æ¡ä»¶',
+ `group_fields` json DEFAULT NULL COMMENT 'åˆ†ç»„å—æ®µ',
+ `aggregate_fields` json DEFAULT NULL COMMENT 'èšåˆå—段',
+ `sort_config` json DEFAULT NULL COMMENT '排åºé…ç½®',
+ `display_config` json DEFAULT NULL COMMENT '显示é…ç½®',
+ `refresh_interval` int(11) DEFAULT '60' COMMENT '刷新间隔(秒)',
+ `is_enabled` char(1) DEFAULT '1' COMMENT '是å¦å¯ç”¨',
+ `access_roles` json DEFAULT NULL COMMENT '访问角色',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`),
+ KEY `idx_config_type` (`config_type`),
+ KEY `idx_stat_dimension` (`stat_dimension`),
+ KEY `idx_is_enabled` (`is_enabled`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='统计é…置表';
+
+-- ----------------------------
+-- Table structure for zsjy_enrollment_audit
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_enrollment_audit`;
+CREATE TABLE `zsjy_enrollment_audit` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `enrollment_id` bigint(20) NOT NULL COMMENT '报名信息ID,关联zsjy_enrollment_info.id',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `id_card` varchar(18) NOT NULL COMMENT '身份证号',
+ `audit_type` char(1) NOT NULL COMMENT '审核类型(1-信息审核 2-录取处理 3-最终确认)',
+ `audit_result` char(1) NOT NULL COMMENT '审核结果(1-通过 9-驳回)',
+ `audit_user` bigint(20) NOT NULL COMMENT '审核人ID',
+ `audit_user_name` varchar(50) NOT NULL COMMENT '审核人姓名',
+ `audit_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '审核时间',
+ `audit_opinion` varchar(500) DEFAULT NULL COMMENT '审核意见',
+ `old_status` char(1) DEFAULT NULL COMMENT '变更前状态',
+ `new_status` char(1) DEFAULT NULL COMMENT '变更后状态',
+ `operation_type` varchar(20) DEFAULT NULL COMMENT '操作类型(审核、修改、驳回等)',
+ `operation_detail` text COMMENT '操作详情(JSON格式记录修改内容)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`) USING BTREE,
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_enrollment_id` (`enrollment_id`),
+ KEY `idx_audit_type` (`audit_type`),
+ KEY `idx_audit_result` (`audit_result`),
+ KEY `idx_audit_user` (`audit_user`),
+ KEY `idx_audit_time` (`audit_time`),
+ KEY `idx_student_name` (`student_name`),
+ KEY `idx_id_card` (`id_card`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='招生审核记录表';
+
+-- ----------------------------
+-- Table structure for zsjy_enrollment_info
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_enrollment_info`;
+CREATE TABLE `zsjy_enrollment_info` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `name` varchar(50) NOT NULL COMMENT '姓名',
+ `id_card` varchar(18) NOT NULL COMMENT '身份证号',
+ `gender` char(1) NOT NULL COMMENT '性别(M-男 F-女)',
+ `is_boarding` tinyint(1) DEFAULT '0' COMMENT '是否住校(0-否 1-是)',
+ `birth_date` date DEFAULT NULL COMMENT '出生年月',
+ `phone1` varchar(20) NOT NULL COMMENT '联系手机号码1',
+ `phone2` varchar(20) DEFAULT NULL COMMENT '联系手机号码2',
+ `nation` varchar(20) DEFAULT '汉族' COMMENT '民族',
+ `home_address` varchar(200) DEFAULT NULL COMMENT '家庭地址',
+ `middle_school` varchar(100) DEFAULT NULL COMMENT '初中毕业学校',
+ `exam_number` varchar(50) DEFAULT NULL COMMENT '准考证号码',
+ `exam_region` varchar(50) DEFAULT NULL COMMENT '参加中考地区',
+ `total_score_full` int(11) DEFAULT NULL COMMENT '当地中考满分',
+ `total_score` int(11) DEFAULT NULL COMMENT '考生中考成绩(含体育)',
+ `chinese_score` decimal(5,2) DEFAULT NULL COMMENT '语文成绩',
+ `math_score` decimal(5,2) DEFAULT NULL COMMENT '数学成绩',
+ `english_score` decimal(5,2) DEFAULT NULL COMMENT '英语成绩',
+ `science_score` decimal(5,2) DEFAULT NULL COMMENT '科学成绩',
+ `social_score` decimal(5,2) DEFAULT NULL COMMENT '社会成绩',
+ `pe_score` decimal(5,2) DEFAULT NULL COMMENT '体育成绩',
+ `applied_major` varchar(100) NOT NULL COMMENT '报考专业',
+ `major_code` varchar(20) DEFAULT NULL COMMENT '专业代码',
+ `uniform_size` varchar(20) DEFAULT NULL COMMENT '校服尺码',
+ `health_status` text COMMENT '健康情况',
+ `specialties` text COMMENT '特长',
+ `awards` text COMMENT '奖惩情况',
+ `enrollment_status` char(1) DEFAULT '0' COMMENT '报名状态(0-待审核 1-信息审核中 2-录取处理中 3-待最终确认 4-录取完成 9-已驳回)',
+ `application_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '报名时间',
+ `qr_code_source` varchar(100) DEFAULT NULL COMMENT '二维码来源标识',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `collage_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `collage_id` varchar(20) DEFAULT NULL COMMENT '学院代码',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_id_card` (`tenant_id`,`id_card`,`deleted`),
+ UNIQUE KEY `uk_exam_number` (`tenant_id`,`exam_number`,`deleted`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_enrollment_status` (`enrollment_status`),
+ KEY `idx_application_time` (`application_time`),
+ KEY `idx_name` (`name`),
+ KEY `idx_applied_major` (`applied_major`),
+ KEY `idx_phone1` (`phone1`),
+ KEY `idx_status_major` (`enrollment_status`,`applied_major`),
+ KEY `idx_time_status` (`application_time`,`enrollment_status`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='招生报名信息表';
+
+-- ----------------------------
+-- Table structure for zsjy_enrollment_process
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_enrollment_process`;
+CREATE TABLE `zsjy_enrollment_process` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `enrollment_id` bigint(20) NOT NULL COMMENT '报名信息ID,关联zsjy_enrollment_info.id',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `id_card` varchar(18) NOT NULL COMMENT '身份证号',
+ `current_status` char(1) DEFAULT '0' COMMENT '当前状态(0-待审核 1-信息审核中 2-录取处理中 3-待最终确认 4-录取完成 9-已驳回)',
+ `current_handler` bigint(20) DEFAULT NULL COMMENT '当前处理人ID',
+ `current_handler_name` varchar(50) DEFAULT NULL COMMENT '当前处理人姓名',
+ `info_audit_status` char(1) DEFAULT '0' COMMENT '信息审核状态(0-待审核 1-审核通过 9-审核驳回)',
+ `info_audit_user` bigint(20) DEFAULT NULL COMMENT '信息审核人ID',
+ `info_audit_user_name` varchar(50) DEFAULT NULL COMMENT '信息审核人姓名',
+ `info_audit_time` datetime DEFAULT NULL COMMENT '信息审核时间',
+ `info_audit_opinion` varchar(500) DEFAULT NULL COMMENT '信息审核意见',
+ `admission_status` char(1) DEFAULT '0' COMMENT '录取处理状态(0-待处理 1-处理完成 9-处理驳回)',
+ `admission_user` bigint(20) DEFAULT NULL COMMENT '录取处理人ID',
+ `admission_user_name` varchar(50) DEFAULT NULL COMMENT '录取处理人姓名',
+ `admission_time` datetime DEFAULT NULL COMMENT '录取处理时间',
+ `payment_status` char(1) DEFAULT '0' COMMENT '缴费状态(0-未缴费 1-已缴费)',
+ `payment_confirm_time` datetime DEFAULT NULL COMMENT '缴费确认时间',
+ `notice_number` varchar(50) DEFAULT NULL COMMENT '录取通知书号码',
+ `admission_opinion` varchar(500) DEFAULT NULL COMMENT '录取处理意见',
+ `final_audit_status` char(1) DEFAULT '0' COMMENT '最终审核状态(0-待确认 1-确认通过 9-确认驳回)',
+ `final_audit_user` bigint(20) DEFAULT NULL COMMENT '最终审核人ID',
+ `final_audit_user_name` varchar(50) DEFAULT NULL COMMENT '最终审核人姓名',
+ `final_audit_time` datetime DEFAULT NULL COMMENT '最终审核时间',
+ `final_audit_opinion` varchar(500) DEFAULT NULL COMMENT '最终审核意见',
+ `is_completed` tinyint(1) DEFAULT '0' COMMENT '是否完成录取(0-未完成 1-已完成)',
+ `completion_time` datetime DEFAULT NULL COMMENT '录取完成时间',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_enrollment_id` (`tenant_id`,`enrollment_id`,`deleted`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_current_status` (`current_status`),
+ KEY `idx_current_handler` (`current_handler`),
+ KEY `idx_info_audit_status` (`info_audit_status`),
+ KEY `idx_admission_status` (`admission_status`),
+ KEY `idx_final_audit_status` (`final_audit_status`),
+ KEY `idx_is_completed` (`is_completed`),
+ KEY `idx_student_name` (`student_name`),
+ KEY `idx_id_card` (`id_card`),
+ KEY `idx_handler_status` (`current_handler`,`current_status`),
+ KEY `idx_audit_time` (`info_audit_time`,`admission_time`,`final_audit_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='招生录取流程状态表';
+
+-- ----------------------------
+-- Table structure for zsjy_enrollment_statistics
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_enrollment_statistics`;
+CREATE TABLE `zsjy_enrollment_statistics` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `stat_date` date NOT NULL COMMENT '统计日期',
+ `stat_type` varchar(20) NOT NULL COMMENT '统计类型(daily-日统计 monthly-月统计 yearly-年统计)',
+ `dimension_type` varchar(20) NOT NULL COMMENT '维度类型(major-专业 region-地域 school-学校 score-分数段 gender-性别)',
+ `dimension_value` varchar(100) NOT NULL COMMENT '维度值',
+ `application_count` int(11) DEFAULT '0' COMMENT '报名人数',
+ `male_count` int(11) DEFAULT '0' COMMENT '男生人数',
+ `female_count` int(11) DEFAULT '0' COMMENT '女生人数',
+ `admission_count` int(11) DEFAULT '0' COMMENT '录取人数',
+ `payment_count` int(11) DEFAULT '0' COMMENT '缴费人数',
+ `completion_count` int(11) DEFAULT '0' COMMENT '完成录取人数',
+ `avg_total_score` decimal(8,2) DEFAULT NULL COMMENT '平均总分',
+ `max_total_score` decimal(8,2) DEFAULT NULL COMMENT '最高总分',
+ `min_total_score` decimal(8,2) DEFAULT NULL COMMENT '最低总分',
+ `admission_rate` decimal(5,2) DEFAULT NULL COMMENT '录取率(%)',
+ `payment_rate` decimal(5,2) DEFAULT NULL COMMENT '缴费率(%)',
+ `completion_rate` decimal(5,2) DEFAULT NULL COMMENT '完成率(%)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_stat_dimension` (`tenant_id`,`stat_date`,`stat_type`,`dimension_type`,`dimension_value`,`deleted`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_stat_date` (`stat_date`),
+ KEY `idx_stat_type` (`stat_type`),
+ KEY `idx_dimension_type` (`dimension_type`),
+ KEY `idx_dimension_value` (`dimension_value`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='招生统计数据表';
+
+-- ----------------------------
+-- Table structure for zsjy_enterprise
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_enterprise`;
+CREATE TABLE `zsjy_enterprise` (
+ `id` bigint(20) NOT NULL COMMENT '企业ID',
+ `enterprise_name` varchar(100) NOT NULL COMMENT '企业名称',
+ `industry` varchar(50) NOT NULL COMMENT '所属行业',
+ `main_business` varchar(500) NOT NULL COMMENT '主营业务',
+ `enterprise_scale` varchar(20) NOT NULL COMMENT '企业规模',
+ `contact_name` varchar(50) NOT NULL COMMENT '企业联系人姓名',
+ `contact_phone` varchar(20) NOT NULL COMMENT '联系电话',
+ `email` varchar(100) NOT NULL COMMENT '企业邮箱',
+ `address` varchar(255) NOT NULL COMMENT '企业地址',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '逻辑删除(0正常 1删除)',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='企业信息表';
+
+-- ----------------------------
+-- Table structure for zsjy_graduate_info
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_graduate_info`;
+CREATE TABLE `zsjy_graduate_info` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `student_no` varchar(50) NOT NULL COMMENT '学号',
+ `name` varchar(30) NOT NULL COMMENT '姓名',
+ `gender` char(1) NOT NULL DEFAULT '0' COMMENT '性别 (0男 1女)',
+ `id_card` varchar(18) NOT NULL COMMENT '身份证号',
+ `nation` varchar(50) DEFAULT NULL COMMENT '民族',
+ `political_status` varchar(50) DEFAULT NULL COMMENT '政治面貌',
+ `birth_date` date DEFAULT NULL COMMENT '出生日期',
+ `enrollment_year` int(4) NOT NULL COMMENT '入学年份',
+ `graduation_year` int(4) NOT NULL COMMENT '毕业年份',
+ `college_id` bigint(20) DEFAULT NULL COMMENT '学院ID',
+ `college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
+ `major_id` bigint(20) DEFAULT NULL COMMENT '专业ID',
+ `major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
+ `class_id` bigint(20) DEFAULT NULL COMMENT '班级ID',
+ `class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
+ `education_level` char(1) NOT NULL DEFAULT '2' COMMENT '学历层次 (1专科 2本科 3硕士 4博士)',
+ `training_mode` varchar(50) DEFAULT NULL COMMENT '培养方式',
+ `phone_number` varchar(11) NOT NULL COMMENT '手机号码',
+ `email` varchar(100) DEFAULT NULL COMMENT '邮箱地址',
+ `qq_number` varchar(20) DEFAULT NULL COMMENT 'QQ号码',
+ `wechat_number` varchar(50) DEFAULT NULL COMMENT '微信号码',
+ `province` varchar(50) DEFAULT NULL COMMENT '省份',
+ `city` varchar(50) DEFAULT NULL COMMENT '城市',
+ `district` varchar(50) DEFAULT NULL COMMENT '区县',
+ `detail_address` varchar(255) DEFAULT NULL COMMENT '详细地址',
+ `postal_code` varchar(6) DEFAULT NULL COMMENT '邮政编码',
+ `employment_status` char(1) NOT NULL DEFAULT '7' COMMENT '就业状态 (1已就业-劳动合同 2已就业-就业协议 3自主创业 4升学-国内 5升学-国外 6应征入伍 7待就业 8暂不就业)',
+ `employment_company` varchar(200) DEFAULT NULL COMMENT '就业单位名称',
+ `company_type` char(1) DEFAULT NULL COMMENT '单位性质 (1国有企业 2私营企业 3外资企业 4机关事业单位 5其他)',
+ `job_position` varchar(100) DEFAULT NULL COMMENT '工作职位',
+ `work_province` varchar(50) DEFAULT NULL COMMENT '工作省份',
+ `work_city` varchar(50) DEFAULT NULL COMMENT '工作城市',
+ `salary_range` char(1) DEFAULT NULL COMMENT '月薪范围 (1-3000以下 2-3000-5000 3-5000-8000 4-8000-12000 5-12000以上)',
+ `further_school` varchar(200) DEFAULT NULL COMMENT '升学院校',
+ `further_major` varchar(100) DEFAULT NULL COMMENT '升学专业',
+ `skills` text COMMENT '特长技能',
+ `awards` text COMMENT '获奖情况',
+ `job_intention` text COMMENT '工作意向',
+ `audit_status` char(1) NOT NULL DEFAULT '0' COMMENT '审核状态 (0待审核 1已审核 2审核拒绝)',
+ `audit_time` datetime DEFAULT NULL COMMENT '审核时间',
+ `audit_by` bigint(20) DEFAULT NULL COMMENT '审核人',
+ `audit_remark` varchar(500) DEFAULT NULL COMMENT '审核意见',
+ `status` char(1) NOT NULL DEFAULT '0' COMMENT '状态 (0正常 1停用)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户ID',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '逻辑删除',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `uk_student_no` (`student_no`) COMMENT '学号唯一',
+ UNIQUE KEY `uk_id_card` (`id_card`) COMMENT '身份证号唯一',
+ KEY `idx_name` (`name`) COMMENT '姓名索引',
+ KEY `idx_college_major` (`college_id`,`major_id`) COMMENT '学院专业索引',
+ KEY `idx_graduation_year` (`graduation_year`) COMMENT '毕业年份索引',
+ KEY `idx_employment_status` (`employment_status`) COMMENT '就业状态索引',
+ KEY `idx_audit_status` (`audit_status`) COMMENT '审核状态索引'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='毕业生信息表';
+
+-- ----------------------------
+-- Table structure for zsjy_internship_daily
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_internship_daily`;
+CREATE TABLE `zsjy_internship_daily` (
+ `daily_id` bigint(20) NOT NULL COMMENT '日常记录ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `internship_id` bigint(20) NOT NULL COMMENT '实习ID',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `check_date` date NOT NULL COMMENT '打卡日期',
+ `check_in_time` time DEFAULT NULL COMMENT '签到时间',
+ `check_out_time` time DEFAULT NULL COMMENT '签退时间',
+ `check_in_location` varchar(200) DEFAULT NULL COMMENT '签到位置',
+ `latitude` decimal(10,7) DEFAULT NULL COMMENT '纬度',
+ `longitude` decimal(10,7) DEFAULT NULL COMMENT '经度',
+ `daily_summary` text COMMENT '日总结',
+ `images` text COMMENT '图片附件(JSON格式)',
+ `is_exception` char(1) DEFAULT '0' COMMENT '是否异常(0正常 1异常)',
+ `exception_reason` varchar(500) DEFAULT NULL COMMENT '异常原因',
+ `exception_status` char(1) DEFAULT '0' COMMENT '异常处理状态(0待处理 1已处理)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` int(1) DEFAULT '0' COMMENT '逻辑删除',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`daily_id`),
+ UNIQUE KEY `uk_internship_date` (`internship_id`,`check_date`),
+ KEY `idx_student_date` (`student_id`,`check_date`),
+ KEY `idx_check_date` (`check_date`),
+ KEY `idx_exception` (`is_exception`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实习日常管理表';
+
+-- ----------------------------
+-- Table structure for zsjy_internship_info
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_internship_info`;
+CREATE TABLE `zsjy_internship_info` (
+ `internship_id` bigint(20) NOT NULL COMMENT '实习ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `student_no` varchar(50) NOT NULL COMMENT '学号',
+ `student_name` varchar(100) NOT NULL COMMENT '姓名',
+ `gender` char(1) DEFAULT '0' COMMENT '性别(0男 1女)',
+ `college_id` bigint(20) NOT NULL COMMENT '学院ID',
+ `major_id` bigint(20) NOT NULL COMMENT '专业ID',
+ `class_id` bigint(20) NOT NULL COMMENT '班级ID',
+ `phone` varchar(11) NOT NULL COMMENT '联系电话',
+ `company_name` varchar(200) NOT NULL COMMENT '实习单位名称',
+ `company_address` varchar(500) NOT NULL COMMENT '单位地址',
+ `company_industry` varchar(100) DEFAULT NULL COMMENT '行业类型',
+ `company_scale` varchar(50) DEFAULT NULL COMMENT '单位规模',
+ `company_contact` varchar(100) NOT NULL COMMENT '单位联系人',
+ `company_phone` varchar(20) NOT NULL COMMENT '联系人电话',
+ `position_name` varchar(100) NOT NULL COMMENT '岗位名称',
+ `position_duties` text COMMENT '岗位职责',
+ `internship_allowance` decimal(10,2) DEFAULT '0.00' COMMENT '实习津贴',
+ `work_hours` varchar(50) DEFAULT NULL COMMENT '工作时长',
+ `accommodation_address` varchar(500) DEFAULT NULL COMMENT '住宿地址',
+ `accommodation_type` varchar(50) DEFAULT NULL COMMENT '住宿类型',
+ `accommodation_cost` decimal(10,2) DEFAULT '0.00' COMMENT '住宿费用',
+ `start_date` date NOT NULL COMMENT '实习开始日期',
+ `end_date` date NOT NULL COMMENT '实习结束日期',
+ `actual_end_date` date DEFAULT NULL COMMENT '实际结束日期',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `internship_status` char(1) DEFAULT '1' COMMENT '实习状态(1进行中 2已完成 3中断)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` int(1) DEFAULT '0' COMMENT '逻辑删除',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`internship_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_student_no` (`student_no`),
+ KEY `idx_college_major` (`college_id`,`major_id`),
+ KEY `idx_status` (`internship_status`),
+ KEY `idx_date_range` (`start_date`,`end_date`),
+ KEY `idx_company` (`company_name`),
+ KEY `idx_create_time` (`create_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实习信息表';
+
+-- ----------------------------
+-- Table structure for zsjy_internship_monthly
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_internship_monthly`;
+CREATE TABLE `zsjy_internship_monthly` (
+ `monthly_id` bigint(20) NOT NULL COMMENT '月度总结ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `internship_id` bigint(20) NOT NULL COMMENT '实习ID',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `summary_month` varchar(7) NOT NULL COMMENT '总结月份(YYYY-MM)',
+ `month_number` int(2) NOT NULL COMMENT '实习第几个月',
+ `work_content` text NOT NULL COMMENT '工作内容',
+ `achievements` text COMMENT '工作成果',
+ `learning_gains` text COMMENT '学习收获',
+ `problems_encountered` text COMMENT '遇到问题',
+ `problem_solutions` text COMMENT '解决方案',
+ `self_evaluation` text COMMENT '自我评价',
+ `next_month_plan` text COMMENT '下月计划',
+ `professional_skills` int(1) DEFAULT NULL COMMENT '专业技能评分',
+ `communication_skills` int(1) DEFAULT NULL COMMENT '沟通能力评分',
+ `teamwork_ability` int(2) DEFAULT NULL COMMENT '团队协作评分(1-10)',
+ `teamwork_skills` int(1) DEFAULT NULL COMMENT '团队协作评分',
+ `learning_ability` int(1) DEFAULT NULL COMMENT '学习能力评分',
+ `work_attitude` int(1) DEFAULT NULL COMMENT '工作态度评分',
+ `attachments` text COMMENT '附件(JSON格式)',
+ `work_proof` text COMMENT '工作证明材料(JSON格式)',
+ `company_confirmation` text COMMENT '企业确认信息',
+ `submit_time` datetime DEFAULT NULL COMMENT '提交时间',
+ `word_count` int(10) DEFAULT '0' COMMENT '总结字数',
+ `submit_deadline` date DEFAULT NULL COMMENT '提交截止日期',
+ `is_overdue` char(1) DEFAULT '0' COMMENT '是否逾期(0否 1是)',
+ `review_status` char(1) DEFAULT '0' COMMENT '审核状态(0待审核 1已审核 2审核拒绝)',
+ `review_time` datetime DEFAULT NULL COMMENT '审核时间',
+ `review_by` bigint(20) DEFAULT NULL COMMENT '审核人',
+ `reviewer_name` varchar(100) DEFAULT NULL COMMENT '审核人姓名',
+ `review_score` decimal(5,2) DEFAULT NULL COMMENT '综合评分',
+ `review_comment` text COMMENT '审核意见',
+ `review_suggestions` text COMMENT '指导建议',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` int(1) DEFAULT '0' COMMENT '逻辑删除',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`monthly_id`),
+ UNIQUE KEY `uk_internship_month` (`internship_id`,`summary_month`),
+ KEY `idx_student_month` (`student_id`,`summary_month`),
+ KEY `idx_review_status` (`review_status`),
+ KEY `idx_submit_time` (`submit_time`),
+ KEY `idx_review_time` (`review_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='月度实习总结表';
+
+-- ----------------------------
+-- Table structure for zsjy_internship_statistics
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_internship_statistics`;
+CREATE TABLE `zsjy_internship_statistics` (
+ `stat_id` bigint(20) NOT NULL COMMENT '统计ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `stat_type` varchar(50) NOT NULL COMMENT '统计类型(college/major/company/industry)',
+ `stat_key` varchar(100) NOT NULL COMMENT '统计键值',
+ `stat_name` varchar(200) NOT NULL COMMENT '统计名称',
+ `stat_period` varchar(20) NOT NULL COMMENT '统计周期(YYYY/YYYY-MM/YYYY-MM-DD)',
+ `total_students` int(10) DEFAULT '0' COMMENT '实习学生总数',
+ `active_students` int(10) DEFAULT '0' COMMENT '在岗学生数',
+ `completed_students` int(10) DEFAULT '0' COMMENT '完成实习学生数',
+ `interrupted_students` int(10) DEFAULT '0' COMMENT '中断实习学生数',
+ `total_checkins` int(10) DEFAULT '0' COMMENT '总签到次数',
+ `normal_checkins` int(10) DEFAULT '0' COMMENT '正常签到次数',
+ `exception_checkins` int(10) DEFAULT '0' COMMENT '异常签到次数',
+ `attendance_rate` decimal(5,2) DEFAULT '0.00' COMMENT '出勤率',
+ `total_summaries` int(10) DEFAULT '0' COMMENT '总结提交数',
+ `reviewed_summaries` int(10) DEFAULT '0' COMMENT '已审核总结数',
+ `avg_score` decimal(5,2) DEFAULT '0.00' COMMENT '平均成绩',
+ `total_visits` int(10) DEFAULT '0' COMMENT '走访次数',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` int(1) DEFAULT '0' COMMENT '逻辑删除',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`stat_id`),
+ UNIQUE KEY `uk_stat_period` (`stat_type`,`stat_key`,`stat_period`),
+ KEY `idx_stat_type` (`stat_type`),
+ KEY `idx_stat_period` (`stat_period`),
+ KEY `idx_create_time` (`create_time`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='实习统计表';
+
+-- ----------------------------
+-- Table structure for zsjy_internship_visit
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_internship_visit`;
+CREATE TABLE `zsjy_internship_visit` (
+ `visit_id` bigint(20) NOT NULL COMMENT '走访记录ID',
+ `tenant_id` varchar(20) DEFAULT '000000' COMMENT '租户编号',
+ `internship_id` bigint(20) NOT NULL COMMENT '实习ID',
+ `student_id` bigint(20) NOT NULL COMMENT '学生ID',
+ `company_name` varchar(200) NOT NULL COMMENT '企业名称',
+ `company_address` varchar(500) DEFAULT NULL COMMENT '企业地址',
+ `visit_date` datetime NOT NULL COMMENT '走访时间',
+ `visit_type` char(1) DEFAULT '1' COMMENT '走访方式(1-实地走访 2-电话走访 3-视频走访)',
+ `visit_location` varchar(200) DEFAULT NULL COMMENT '走访地点',
+ `visitor_name` varchar(100) NOT NULL COMMENT '走访人员',
+ `visitor_position` varchar(100) DEFAULT NULL COMMENT '走访人员职位',
+ `visit_purpose` varchar(500) DEFAULT NULL COMMENT '走访目的',
+ `visit_theme` varchar(200) DEFAULT NULL COMMENT '走访主题',
+ `visit_content` text COMMENT '走访内容',
+ `student_feedback` text COMMENT '学生反馈',
+ `company_situation` text COMMENT '企业情况',
+ `student_performance` text COMMENT '学生表现',
+ `problems_found` text COMMENT '问题记录',
+ `suggestions` text COMMENT '改进建议',
+ `visit_summary` text COMMENT '走访总结',
+ `visit_images` text COMMENT '现场照片(JSON格式)',
+ `visit_files` text COMMENT '相关文件(JSON格式)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` int(1) DEFAULT '0' COMMENT '逻辑删除',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`visit_id`),
+ KEY `idx_internship_id` (`internship_id`),
+ KEY `idx_student_id` (`student_id`),
+ KEY `idx_visit_date` (`visit_date`),
+ KEY `idx_company` (`company_name`),
+ KEY `idx_visitor` (`visitor_name`),
+ KEY `idx_visit_type` (`visit_type`),
+ KEY `idx_visit_location` (`visit_location`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='班主任走访记录表';
+
+-- ----------------------------
+-- Table structure for zsjy_job_position
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_job_position`;
+CREATE TABLE `zsjy_job_position` (
+ `id` bigint(20) NOT NULL COMMENT '岗位ID',
+ `enterprise_id` bigint(20) NOT NULL COMMENT '所属企业ID',
+ `position_name` varchar(100) NOT NULL COMMENT '岗位名称',
+ `work_address` varchar(255) NOT NULL COMMENT '工作地址',
+ `work_time` varchar(100) NOT NULL COMMENT '工作时间',
+ `salary` varchar(50) NOT NULL COMMENT '薪资',
+ `required_skills` varchar(500) NOT NULL COMMENT '所需技能',
+ `start_date` datetime DEFAULT NULL COMMENT '有效期开始日期',
+ `end_date` datetime DEFAULT NULL COMMENT '有效期结束日期',
+ `is_permanent` tinyint(1) DEFAULT '0' COMMENT '是否永久有效(0否 1是)',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '逻辑删除(0正常 1删除)',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ PRIMARY KEY (`id`),
+ KEY `idx_enterprise_id` (`enterprise_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='招聘岗位表';
+
+-- ----------------------------
+-- Table structure for zsjy_major_info
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_major_info`;
+CREATE TABLE `zsjy_major_info` (
+ `id` bigint(20) NOT NULL COMMENT '主键ID',
+ `tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '删除标志(0代表存在 1代表删除)',
+ `major_code` varchar(20) NOT NULL COMMENT '专业代码',
+ `major_name` varchar(100) NOT NULL COMMENT '专业名称',
+ `major_type` varchar(50) DEFAULT NULL COMMENT '专业类型(预备技师、高级工等)',
+ `department` varchar(100) DEFAULT NULL COMMENT '所属院系',
+ `education_level` varchar(20) DEFAULT NULL COMMENT '学历层次',
+ `school_system` int(11) DEFAULT '3' COMMENT '学制(年)',
+ `enrollment_year` int(11) NOT NULL COMMENT '招生年度',
+ `planned_count` int(11) DEFAULT '0' COMMENT '计划招生人数',
+ `current_count` int(11) DEFAULT '0' COMMENT '当前报名人数',
+ `admission_count` int(11) DEFAULT '0' COMMENT '已录取人数',
+ `status` char(1) DEFAULT '1' COMMENT '状态(0-停用 1-启用)',
+ `sort_order` int(11) DEFAULT '0' COMMENT '排序',
+ `is_popular` tinyint(1) DEFAULT '0' COMMENT '是否热门专业(0-否 1-是)',
+ `description` text COMMENT '专业描述',
+ `requirements` text COMMENT '报考要求',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`id`) USING BTREE,
+ UNIQUE KEY `uk_major_code` (`tenant_id`,`major_code`,`enrollment_year`,`deleted`),
+ KEY `idx_tenant_id` (`tenant_id`),
+ KEY `idx_deleted` (`deleted`),
+ KEY `idx_enrollment_year` (`enrollment_year`),
+ KEY `idx_status` (`status`),
+ KEY `idx_major_name` (`major_name`),
+ KEY `idx_sort_order` (`sort_order`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='专业信息表';
+
+-- ----------------------------
+-- Table structure for zsjy_recruitment_poster
+-- ----------------------------
+DROP TABLE IF EXISTS `zsjy_recruitment_poster`;
+CREATE TABLE `zsjy_recruitment_poster` (
+ `id` bigint(20) NOT NULL COMMENT '海报ID',
+ `enterprise_id` bigint(20) NOT NULL COMMENT '企业ID',
+ `position_id` bigint(20) DEFAULT NULL COMMENT '岗位ID(为空表示企业整体海报)',
+ `poster_path` varchar(255) NOT NULL COMMENT '海报文件路径',
+ `poster_type` char(1) NOT NULL COMMENT '海报类型(1企业海报 2岗位海报)',
+ `create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `deleted` tinyint(1) DEFAULT '0' COMMENT '逻辑删除(0正常 1删除)',
+ `tenant_id` bigint(20) NOT NULL COMMENT '租户ID',
+ `create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
+ PRIMARY KEY (`id`),
+ KEY `idx_enterprise_position` (`enterprise_id`,`position_id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='招聘海报记录表';
+
+-- ----------------------------
+-- View structure for v_class_cadre_statistics
+-- ----------------------------
+DROP VIEW IF EXISTS `v_class_cadre_statistics`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `v_class_cadre_statistics` AS select `ci`.`id` AS `class_id`,`ci`.`class_code` AS `class_code`,`ci`.`class_name` AS `class_name`,`ci`.`college_name` AS `college_name`,`ci`.`grade` AS `grade`,count(`cc`.`id`) AS `total_cadres`,count((case when (`cc`.`position_level` = 1) then 1 end)) AS `monitor_count`,count((case when (`cc`.`position_level` = 2) then 1 end)) AS `deputy_count`,count((case when (`cc`.`position_level` = 3) then 1 end)) AS `committee_count`,count((case when (`cc`.`cadre_status` = '1') then 1 end)) AS `active_count`,count((case when (`cc`.`term_end_date` < curdate()) then 1 end)) AS `expired_count` from (`xg_class_info` `ci` left join `xg_class_cadre` `cc` on(((`ci`.`id` = `cc`.`class_id`) and (`cc`.`is_current` = 1) and (`cc`.`deleted` = 0)))) where (`ci`.`deleted` = 0) group by `ci`.`id`,`ci`.`class_code`,`ci`.`class_name`,`ci`.`college_name`,`ci`.`grade`;
+
+-- ----------------------------
+-- View structure for v_college_major_relation
+-- ----------------------------
+DROP VIEW IF EXISTS `v_college_major_relation`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `v_college_major_relation` AS select `c`.`id` AS `college_id`,`c`.`college_code` AS `college_code`,`c`.`college_name` AS `college_name`,`m`.`id` AS `major_id`,`m`.`major_code` AS `major_code`,`m`.`major_name` AS `major_name`,`m`.`major_type` AS `major_type`,`m`.`school_system` AS `school_system`,`m`.`enrollment_plan` AS `enrollment_plan` from (`xg_college_info` `c` left join `xg_major_info` `m` on((`c`.`id` = `m`.`college_id`))) where ((`c`.`deleted` = 0) and (`c`.`college_status` = '1') and (((`m`.`deleted` = 0) and (`m`.`major_status` = '1')) or isnull(`m`.`id`))) order by `c`.`sort_order`,`m`.`sort_order`;
+
+-- ----------------------------
+-- View structure for v_college_options
+-- ----------------------------
+DROP VIEW IF EXISTS `v_college_options`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `v_college_options` AS select `xg_college_info`.`college_code` AS `value`,`xg_college_info`.`college_name` AS `label`,`xg_college_info`.`college_short_name` AS `college_short_name`,`xg_college_info`.`college_status` AS `college_status`,`xg_college_info`.`sort_order` AS `sort_order` from `xg_college_info` where ((`xg_college_info`.`deleted` = 0) and (`xg_college_info`.`college_status` = '1')) order by `xg_college_info`.`sort_order`,`xg_college_info`.`college_name`;
+
+-- ----------------------------
+-- View structure for v_current_class_cadres
+-- ----------------------------
+DROP VIEW IF EXISTS `v_current_class_cadres`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `v_current_class_cadres` AS select `cc`.`id` AS `id`,`cc`.`class_id` AS `class_id`,`cc`.`student_id` AS `student_id`,`cc`.`student_no` AS `student_no`,`cc`.`student_name` AS `student_name`,`cc`.`position_code` AS `position_code`,`cc`.`position_name` AS `position_name`,`cc`.`position_level` AS `position_level`,`cc`.`appointment_date` AS `appointment_date`,`cc`.`term_start_date` AS `term_start_date`,`cc`.`term_end_date` AS `term_end_date`,`cc`.`cadre_status` AS `cadre_status`,`ci`.`class_code` AS `class_code`,`ci`.`class_name` AS `class_name`,`ci`.`college_name` AS `college_name`,`ci`.`grade` AS `grade`,`pconfig`.`responsibilities` AS `responsibilities`,`pconfig`.`duties` AS `duties`,(to_days(ifnull(`cc`.`term_end_date`,(`cc`.`term_start_date` + interval `cc`.`term_duration` month))) - to_days(curdate())) AS `days_remaining` from ((`xg_class_cadre` `cc` left join `xg_class_info` `ci` on((`cc`.`class_id` = `ci`.`id`))) left join `xg_cadre_position_config` `pconfig` on((`cc`.`position_code` = `pconfig`.`position_code`))) where ((`cc`.`is_current` = 1) and (`cc`.`cadre_status` = '1') and (`cc`.`deleted` = 0));
+
+-- ----------------------------
+-- View structure for v_major_options
+-- ----------------------------
+DROP VIEW IF EXISTS `v_major_options`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `v_major_options` AS select `m`.`major_code` AS `value`,`m`.`major_name` AS `label`,`m`.`major_short_name` AS `major_short_name`,`m`.`college_code` AS `college_code`,`m`.`college_name` AS `college_name`,`m`.`major_type` AS `major_type`,`m`.`major_status` AS `major_status`,`m`.`sort_order` AS `sort_order` from `xg_major_info` `m` where ((`m`.`deleted` = 0) and (`m`.`major_status` = '1')) order by `m`.`college_code`,`m`.`sort_order`,`m`.`major_name`;
+
+SET FOREIGN_KEY_CHECKS = 1;