Initial commit: HR Performance System
- Database schema with 31 tables for 4-card system - LLM API integration (Gemini, DeepSeek, OpenAI) - Error handling system with modal component - Connection test UI for LLM services - Environment configuration files - Complete database documentation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
256
database/README.md
Normal file
256
database/README.md
Normal file
@@ -0,0 +1,256 @@
|
||||
# HR 績效評核系統 - 資料庫說明
|
||||
|
||||
## 資料庫連線資訊
|
||||
|
||||
```
|
||||
DB_HOST: mysql.theaken.com
|
||||
DB_PORT: 33306
|
||||
DB_NAME: db_A102
|
||||
DB_USER: A102
|
||||
DB_PASSWORD: Bb123456
|
||||
```
|
||||
|
||||
## 資料庫結構
|
||||
|
||||
本系統使用 MySQL 資料庫,包含以下主要模組:
|
||||
|
||||
### 一、基礎資料表 (5張)
|
||||
- `hr_departments` - 部門組織架構
|
||||
- `hr_job_levels` - 職級定義
|
||||
- `hr_employees` - 員工資料
|
||||
- `hr_system_roles` - 系統角色權限
|
||||
- `hr_employee_roles` - 員工角色關聯
|
||||
|
||||
### 二、職能字典 (3張)
|
||||
- `hr_competency_categories` - 職能分類
|
||||
- `hr_competency_dictionary` - 職能字典
|
||||
- `hr_competency_behaviors` - 職能行為指標
|
||||
|
||||
### 三、角色卡模組 (6張)
|
||||
- `hr_role_cards` - 角色卡主表
|
||||
- `hr_role_responsibilities` - 角色卡職責
|
||||
- `hr_role_supervisees` - 角色卡督導對象
|
||||
- `hr_role_collaborators` - 角色卡協作夥伴
|
||||
- `hr_role_kra` - 角色卡KRA
|
||||
- `hr_role_kpi` - 角色卡KPI
|
||||
|
||||
### 四、能力卡模組 (3張)
|
||||
- `hr_competency_cards` - 能力卡主表
|
||||
- `hr_competency_card_hard_skills` - 能力卡硬性能力
|
||||
- `hr_competency_card_soft_skills` - 能力卡軟性能力
|
||||
|
||||
### 五、績效卡模組 (4張)
|
||||
- `hr_review_cycles` - 評核週期設定
|
||||
- `hr_performance_cards` - 績效卡主表
|
||||
- `hr_performance_goals` - 績效卡目標評核
|
||||
- `hr_performance_behaviors` - 績效卡行為評估
|
||||
|
||||
### 六、成長卡模組 (5張)
|
||||
- `hr_growth_cards` - 成長卡主表
|
||||
- `hr_growth_focus_areas` - 成長卡發展焦點
|
||||
- `hr_growth_idp_goals` - 成長卡IDP目標
|
||||
- `hr_growth_actions` - 成長卡行動計畫
|
||||
- `hr_growth_tracking` - 成長卡追蹤紀錄
|
||||
|
||||
### 七、系統支援 (5張)
|
||||
- `hr_approval_records` - 審批記錄
|
||||
- `hr_system_settings` - 系統設定
|
||||
- `hr_rating_thresholds` - 等級分界設定
|
||||
- `hr_version_snapshots` - 版本快照
|
||||
- `hr_audit_logs` - 操作日誌
|
||||
|
||||
**總計:31張資料表**
|
||||
|
||||
## 安裝步驟
|
||||
|
||||
### 1. 建立資料庫結構
|
||||
|
||||
連線到 MySQL 伺服器後,執行以下命令:
|
||||
|
||||
```bash
|
||||
mysql -h mysql.theaken.com -P 33306 -u A102 -p db_A102 < schema.sql
|
||||
```
|
||||
|
||||
或使用 MySQL Workbench / phpMyAdmin 等工具匯入 [schema.sql](schema.sql)
|
||||
|
||||
### 2. 匯入初始資料
|
||||
|
||||
```bash
|
||||
mysql -h mysql.theaken.com -P 33306 -u A102 -p db_A102 < seed_data.sql
|
||||
```
|
||||
|
||||
或使用 MySQL Workbench / phpMyAdmin 等工具匯入 [seed_data.sql](seed_data.sql)
|
||||
|
||||
## 初始資料內容
|
||||
|
||||
執行 `seed_data.sql` 後會建立以下初始資料:
|
||||
|
||||
### 系統角色 (4個)
|
||||
- ADMIN - 系統管理員
|
||||
- HR - 人力資源
|
||||
- MANAGER - 部門主管
|
||||
- EMPLOYEE - 一般員工
|
||||
|
||||
### 職級 (9個)
|
||||
- L1 助理專員 → L9 總經理
|
||||
|
||||
### 職能字典 (10個核心職能)
|
||||
|
||||
**通用職能 (5個)**
|
||||
- CORE-001: 溝通協調
|
||||
- CORE-002: 團隊合作
|
||||
- CORE-003: 問題解決
|
||||
- CORE-004: 執行力
|
||||
- CORE-005: 學習成長
|
||||
|
||||
**管理職能 (5個)**
|
||||
- MGMT-001: 策略思維
|
||||
- MGMT-002: 團隊領導
|
||||
- MGMT-003: 橫向整合力
|
||||
- MGMT-004: 決策判斷
|
||||
- MGMT-005: 人才培育
|
||||
|
||||
### 職能行為指標
|
||||
每個職能都包含 L1-L5 共5個等級的行為指標描述
|
||||
|
||||
### 系統設定
|
||||
- 目標權重:70%
|
||||
- 行為權重:30%
|
||||
- 預設語言:繁體中文
|
||||
- 啟用季度評核
|
||||
- IDP最大目標數:4
|
||||
|
||||
### 等級分界
|
||||
- A+: 90-100分 (建議10%)
|
||||
- A: 80-89.99分 (建議22.5%)
|
||||
- B+: 70-79.99分 (建議35%)
|
||||
- B: 60-69.99分 (建議22.5%)
|
||||
- C: 0-59.99分 (建議10%)
|
||||
|
||||
## 資料庫特性
|
||||
|
||||
### 字符集
|
||||
- 使用 `utf8mb4_unicode_ci` 支援多語系與特殊字符
|
||||
|
||||
### 引擎
|
||||
- 使用 `InnoDB` 引擎支援交易與外鍵約束
|
||||
|
||||
### 索引優化
|
||||
- 已在常用查詢欄位建立索引
|
||||
- 外鍵關聯已建立索引
|
||||
|
||||
### 資料完整性
|
||||
- 使用外鍵約束確保資料關聯正確
|
||||
- 設定適當的 `ON DELETE` 策略
|
||||
|
||||
## 開發建議
|
||||
|
||||
### 連線測試
|
||||
|
||||
```javascript
|
||||
// Node.js 範例
|
||||
const mysql = require('mysql2');
|
||||
|
||||
const connection = mysql.createConnection({
|
||||
host: 'mysql.theaken.com',
|
||||
port: 33306,
|
||||
user: 'A102',
|
||||
password: 'Bb123456',
|
||||
database: 'db_A102'
|
||||
});
|
||||
|
||||
connection.connect((err) => {
|
||||
if (err) {
|
||||
console.error('連線失敗:', err);
|
||||
return;
|
||||
}
|
||||
console.log('資料庫連線成功!');
|
||||
});
|
||||
```
|
||||
|
||||
### 常用查詢範例
|
||||
|
||||
#### 查詢員工及其部門資訊
|
||||
```sql
|
||||
SELECT
|
||||
e.employee_no,
|
||||
e.name_zh,
|
||||
d.dept_name_zh,
|
||||
l.level_name_zh
|
||||
FROM hr_employees e
|
||||
JOIN hr_departments d ON e.department_id = d.id
|
||||
JOIN hr_job_levels l ON e.job_level_id = l.id
|
||||
WHERE e.status = 'active';
|
||||
```
|
||||
|
||||
#### 查詢職能字典完整資訊
|
||||
```sql
|
||||
SELECT
|
||||
cd.competency_code,
|
||||
cd.competency_name_zh,
|
||||
cc.category_name_zh,
|
||||
cb.level_num,
|
||||
cb.behavior_description_zh
|
||||
FROM hr_competency_dictionary cd
|
||||
JOIN hr_competency_categories cc ON cd.category_id = cc.id
|
||||
LEFT JOIN hr_competency_behaviors cb ON cd.id = cb.competency_id
|
||||
WHERE cd.is_active = TRUE
|
||||
ORDER BY cd.id, cb.level_num;
|
||||
```
|
||||
|
||||
#### 查詢員工的角色卡資訊
|
||||
```sql
|
||||
SELECT
|
||||
rc.card_code,
|
||||
rc.role_name_zh,
|
||||
e.name_zh AS employee_name,
|
||||
d.dept_name_zh,
|
||||
GROUP_CONCAT(rr.responsibility_zh SEPARATOR '; ') AS responsibilities
|
||||
FROM hr_role_cards rc
|
||||
JOIN hr_employees e ON rc.employee_id = e.id
|
||||
JOIN hr_departments d ON rc.department_id = d.id
|
||||
LEFT JOIN hr_role_responsibilities rr ON rc.id = rr.role_card_id
|
||||
WHERE rc.status = 'approved'
|
||||
GROUP BY rc.id;
|
||||
```
|
||||
|
||||
## 維護建議
|
||||
|
||||
### 定期備份
|
||||
```bash
|
||||
# 完整備份
|
||||
mysqldump -h mysql.theaken.com -P 33306 -u A102 -p db_A102 > backup_$(date +%Y%m%d).sql
|
||||
|
||||
# 僅備份結構
|
||||
mysqldump -h mysql.theaken.com -P 33306 -u A102 -p --no-data db_A102 > schema_backup.sql
|
||||
|
||||
# 僅備份資料
|
||||
mysqldump -h mysql.theaken.com -P 33306 -u A102 -p --no-create-info db_A102 > data_backup.sql
|
||||
```
|
||||
|
||||
### 效能監控
|
||||
- 定期檢查慢查詢日誌
|
||||
- 監控資料表大小成長
|
||||
- 定期執行 `OPTIMIZE TABLE` 優化資料表
|
||||
|
||||
### 擴充建議
|
||||
- 職能字典可依需求新增專業職能
|
||||
- 部門結構可依組織調整
|
||||
- 評核週期需每年設定
|
||||
|
||||
## 注意事項
|
||||
|
||||
1. **密碼安全**: 請定期更換資料庫密碼
|
||||
2. **權限管理**: 建議為不同環境建立不同的資料庫使用者
|
||||
3. **資料保護**: 員工個資需遵守相關法規保護
|
||||
4. **版本控制**: 資料庫結構變更需建立遷移腳本
|
||||
5. **測試環境**: 建議另建測試資料庫進行開發測試
|
||||
|
||||
## 技術支援
|
||||
|
||||
如有任何資料庫相關問題,請聯繫系統管理員。
|
||||
|
||||
---
|
||||
|
||||
**最後更新**: 2025-12-03
|
||||
**版本**: 1.0
|
||||
581
database/schema.sql
Normal file
581
database/schema.sql
Normal file
@@ -0,0 +1,581 @@
|
||||
-- ============================================
|
||||
-- HR 績效評核系統 - 資料庫結構
|
||||
-- Database: db_A102
|
||||
-- Version: 1.0
|
||||
-- Created: 2025-12-03
|
||||
-- ============================================
|
||||
|
||||
-- 使用資料庫
|
||||
USE db_A102;
|
||||
|
||||
-- ============================================
|
||||
-- 一、基礎資料表
|
||||
-- ============================================
|
||||
|
||||
-- 1.1 組織架構表
|
||||
CREATE TABLE IF NOT EXISTS hr_departments (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
dept_code VARCHAR(20) UNIQUE NOT NULL COMMENT '部門代碼',
|
||||
dept_name_zh VARCHAR(100) NOT NULL COMMENT '部門名稱(中文)',
|
||||
dept_name_en VARCHAR(100) COMMENT '部門名稱(英文)',
|
||||
parent_dept_id INT COMMENT '上級部門ID',
|
||||
dept_level INT DEFAULT 1 COMMENT '部門層級',
|
||||
is_active BOOLEAN DEFAULT TRUE COMMENT '是否啟用',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_parent (parent_dept_id),
|
||||
INDEX idx_active (is_active),
|
||||
FOREIGN KEY (parent_dept_id) REFERENCES hr_departments(id) ON DELETE SET NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='部門組織架構';
|
||||
|
||||
-- 1.2 職級表
|
||||
CREATE TABLE IF NOT EXISTS hr_job_levels (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
level_code VARCHAR(20) UNIQUE NOT NULL COMMENT '職級代碼',
|
||||
level_name_zh VARCHAR(50) NOT NULL COMMENT '職級名稱(中文)',
|
||||
level_name_en VARCHAR(50) COMMENT '職級名稱(英文)',
|
||||
level_order INT NOT NULL COMMENT '職級順序(數字越大級別越高)',
|
||||
is_management BOOLEAN DEFAULT FALSE COMMENT '是否管理職',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_order (level_order)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='職級定義';
|
||||
|
||||
-- 1.3 人員表
|
||||
CREATE TABLE IF NOT EXISTS hr_employees (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
employee_no VARCHAR(20) UNIQUE NOT NULL COMMENT '員工編號',
|
||||
email VARCHAR(100) UNIQUE NOT NULL COMMENT '電子郵件',
|
||||
name_zh VARCHAR(50) NOT NULL COMMENT '姓名(中文)',
|
||||
name_en VARCHAR(50) COMMENT '姓名(英文)',
|
||||
department_id INT NOT NULL COMMENT '部門ID',
|
||||
job_level_id INT NOT NULL COMMENT '職級ID',
|
||||
job_title_zh VARCHAR(100) COMMENT '職稱(中文)',
|
||||
job_title_en VARCHAR(100) COMMENT '職稱(英文)',
|
||||
supervisor_id INT COMMENT '直屬主管ID',
|
||||
hire_date DATE COMMENT '到職日期',
|
||||
status ENUM('active', 'inactive', 'resigned') DEFAULT 'active' COMMENT '員工狀態',
|
||||
preferred_language ENUM('zh-TW', 'en-US') DEFAULT 'zh-TW' COMMENT '偏好語言',
|
||||
password_hash VARCHAR(255) COMMENT '密碼雜湊',
|
||||
last_login_at TIMESTAMP NULL COMMENT '最後登入時間',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_dept (department_id),
|
||||
INDEX idx_supervisor (supervisor_id),
|
||||
INDEX idx_status (status),
|
||||
INDEX idx_email (email),
|
||||
FOREIGN KEY (department_id) REFERENCES hr_departments(id),
|
||||
FOREIGN KEY (job_level_id) REFERENCES hr_job_levels(id),
|
||||
FOREIGN KEY (supervisor_id) REFERENCES hr_employees(id) ON DELETE SET NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='員工資料';
|
||||
|
||||
-- 1.4 系統角色表
|
||||
CREATE TABLE IF NOT EXISTS hr_system_roles (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
role_code VARCHAR(20) UNIQUE NOT NULL COMMENT '角色代碼',
|
||||
role_name_zh VARCHAR(50) NOT NULL COMMENT '角色名稱(中文)',
|
||||
role_name_en VARCHAR(50) COMMENT '角色名稱(英文)',
|
||||
permissions JSON COMMENT '權限設定(JSON格式)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系統角色權限';
|
||||
|
||||
-- 1.5 員工角色關聯表
|
||||
CREATE TABLE IF NOT EXISTS hr_employee_roles (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
employee_id INT NOT NULL COMMENT '員工ID',
|
||||
role_id INT NOT NULL COMMENT '角色ID',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
UNIQUE KEY uk_employee_role (employee_id, role_id),
|
||||
FOREIGN KEY (employee_id) REFERENCES hr_employees(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (role_id) REFERENCES hr_system_roles(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='員工角色關聯';
|
||||
|
||||
-- ============================================
|
||||
-- 二、職能字典
|
||||
-- ============================================
|
||||
|
||||
-- 2.1 職能分類表
|
||||
CREATE TABLE IF NOT EXISTS hr_competency_categories (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
category_code VARCHAR(20) UNIQUE NOT NULL COMMENT '分類代碼',
|
||||
category_name_zh VARCHAR(50) NOT NULL COMMENT '分類名稱(中文)',
|
||||
category_name_en VARCHAR(50) COMMENT '分類名稱(英文)',
|
||||
category_type ENUM('core', 'management', 'professional') NOT NULL COMMENT '職能類型',
|
||||
display_order INT DEFAULT 0 COMMENT '顯示順序',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_type (category_type)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='職能分類';
|
||||
|
||||
-- 2.2 職能字典表
|
||||
CREATE TABLE IF NOT EXISTS hr_competency_dictionary (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
competency_code VARCHAR(30) UNIQUE NOT NULL COMMENT '職能代碼',
|
||||
category_id INT NOT NULL COMMENT '職能分類ID',
|
||||
competency_name_zh VARCHAR(100) NOT NULL COMMENT '職能名稱(中文)',
|
||||
competency_name_en VARCHAR(100) COMMENT '職能名稱(英文)',
|
||||
definition_zh TEXT NOT NULL COMMENT '職能定義(中文)',
|
||||
definition_en TEXT COMMENT '職能定義(英文)',
|
||||
is_active BOOLEAN DEFAULT TRUE COMMENT '是否啟用',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_category (category_id),
|
||||
INDEX idx_active (is_active),
|
||||
FOREIGN KEY (category_id) REFERENCES hr_competency_categories(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='職能字典';
|
||||
|
||||
-- 2.3 職能等級行為指標表
|
||||
CREATE TABLE IF NOT EXISTS hr_competency_behaviors (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
competency_id INT NOT NULL COMMENT '職能ID',
|
||||
level_num INT NOT NULL COMMENT '等級(1-5)',
|
||||
behavior_description_zh TEXT NOT NULL COMMENT '行為指標(中文)',
|
||||
behavior_description_en TEXT COMMENT '行為指標(英文)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
UNIQUE KEY uk_comp_level (competency_id, level_num),
|
||||
FOREIGN KEY (competency_id) REFERENCES hr_competency_dictionary(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='職能行為指標';
|
||||
|
||||
-- ============================================
|
||||
-- 三、角色卡模組
|
||||
-- ============================================
|
||||
|
||||
-- 3.1 角色卡主表
|
||||
CREATE TABLE IF NOT EXISTS hr_role_cards (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
card_code VARCHAR(30) UNIQUE NOT NULL COMMENT '角色卡編號',
|
||||
card_type ENUM('template', 'personal') NOT NULL COMMENT '角色卡類型: template職位範本, personal個人角色卡',
|
||||
department_id INT NOT NULL COMMENT '部門ID',
|
||||
role_name_zh VARCHAR(100) NOT NULL COMMENT '角色名稱(中文)',
|
||||
role_name_en VARCHAR(100) COMMENT '角色名稱(英文)',
|
||||
job_level_id INT NOT NULL COMMENT '職級ID',
|
||||
employee_id INT COMMENT '綁定員工ID(個人角色卡)',
|
||||
mission_zh TEXT NOT NULL COMMENT '角色使命(中文)',
|
||||
mission_en TEXT COMMENT '角色使命(英文)',
|
||||
supervisor_id INT COMMENT '匯報對象ID',
|
||||
external_contacts TEXT COMMENT '外部接口',
|
||||
template_id INT COMMENT '來源範本ID(個人角色卡)',
|
||||
status ENUM('draft', 'pending_approval', 'approved', 'archived') DEFAULT 'draft' COMMENT '狀態',
|
||||
version INT DEFAULT 1 COMMENT '版本號',
|
||||
approved_by INT COMMENT '審批人ID',
|
||||
approved_at TIMESTAMP NULL COMMENT '審批時間',
|
||||
created_by INT NOT NULL COMMENT '建立人ID',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_type (card_type),
|
||||
INDEX idx_employee (employee_id),
|
||||
INDEX idx_status (status),
|
||||
INDEX idx_dept (department_id),
|
||||
FOREIGN KEY (department_id) REFERENCES hr_departments(id),
|
||||
FOREIGN KEY (job_level_id) REFERENCES hr_job_levels(id),
|
||||
FOREIGN KEY (employee_id) REFERENCES hr_employees(id) ON DELETE SET NULL,
|
||||
FOREIGN KEY (supervisor_id) REFERENCES hr_employees(id) ON DELETE SET NULL,
|
||||
FOREIGN KEY (template_id) REFERENCES hr_role_cards(id) ON DELETE SET NULL,
|
||||
FOREIGN KEY (approved_by) REFERENCES hr_employees(id),
|
||||
FOREIGN KEY (created_by) REFERENCES hr_employees(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色卡主表';
|
||||
|
||||
-- 3.2 角色卡核心職責表
|
||||
CREATE TABLE IF NOT EXISTS hr_role_responsibilities (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
role_card_id INT NOT NULL COMMENT '角色卡ID',
|
||||
responsibility_zh TEXT NOT NULL COMMENT '職責描述(中文)',
|
||||
responsibility_en TEXT COMMENT '職責描述(英文)',
|
||||
display_order INT DEFAULT 0 COMMENT '顯示順序',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_role_card (role_card_id),
|
||||
FOREIGN KEY (role_card_id) REFERENCES hr_role_cards(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色卡職責';
|
||||
|
||||
-- 3.3 角色卡督導對象表
|
||||
CREATE TABLE IF NOT EXISTS hr_role_supervisees (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
role_card_id INT NOT NULL COMMENT '角色卡ID',
|
||||
supervisee_id INT NOT NULL COMMENT '督導對象ID(員工或角色)',
|
||||
supervisee_type ENUM('employee', 'role') NOT NULL COMMENT '督導對象類型',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
INDEX idx_role_card (role_card_id),
|
||||
FOREIGN KEY (role_card_id) REFERENCES hr_role_cards(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色卡督導對象';
|
||||
|
||||
-- 3.4 角色卡協作夥伴表
|
||||
CREATE TABLE IF NOT EXISTS hr_role_collaborators (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
role_card_id INT NOT NULL COMMENT '角色卡ID',
|
||||
collaborator_id INT NOT NULL COMMENT '協作對象ID',
|
||||
collaborator_type ENUM('employee', 'department', 'role') NOT NULL COMMENT '協作對象類型',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
INDEX idx_role_card (role_card_id),
|
||||
FOREIGN KEY (role_card_id) REFERENCES hr_role_cards(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色卡協作夥伴';
|
||||
|
||||
-- 3.5 角色卡 KRA 表
|
||||
CREATE TABLE IF NOT EXISTS hr_role_kra (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
role_card_id INT NOT NULL COMMENT '角色卡ID',
|
||||
kra_name_zh VARCHAR(200) NOT NULL COMMENT 'KRA名稱(中文)',
|
||||
kra_name_en VARCHAR(200) COMMENT 'KRA名稱(英文)',
|
||||
weight_percentage DECIMAL(5,2) NOT NULL COMMENT '權重百分比',
|
||||
display_order INT DEFAULT 0 COMMENT '顯示順序',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_role_card (role_card_id),
|
||||
FOREIGN KEY (role_card_id) REFERENCES hr_role_cards(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色卡KRA';
|
||||
|
||||
-- 3.6 角色卡 KPI 表
|
||||
CREATE TABLE IF NOT EXISTS hr_role_kpi (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
kra_id INT NOT NULL COMMENT 'KRA ID',
|
||||
kpi_name_zh VARCHAR(200) NOT NULL COMMENT 'KPI指標名稱(中文)',
|
||||
kpi_name_en VARCHAR(200) COMMENT 'KPI指標名稱(英文)',
|
||||
measurement_zh TEXT NOT NULL COMMENT '衡量方式(中文)',
|
||||
measurement_en TEXT COMMENT '衡量方式(英文)',
|
||||
target_value VARCHAR(100) NOT NULL COMMENT '目標值',
|
||||
display_order INT DEFAULT 0 COMMENT '顯示順序',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_kra (kra_id),
|
||||
FOREIGN KEY (kra_id) REFERENCES hr_role_kra(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色卡KPI';
|
||||
|
||||
-- ============================================
|
||||
-- 四、能力卡模組
|
||||
-- ============================================
|
||||
|
||||
-- 4.1 能力卡主表
|
||||
CREATE TABLE IF NOT EXISTS hr_competency_cards (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
card_code VARCHAR(30) UNIQUE NOT NULL COMMENT '能力卡編號',
|
||||
role_card_id INT NOT NULL COMMENT '關聯角色卡ID',
|
||||
employee_id INT NOT NULL COMMENT '員工ID',
|
||||
status ENUM('draft', 'active', 'archived') DEFAULT 'draft' COMMENT '狀態',
|
||||
version INT DEFAULT 1 COMMENT '版本號',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_role_card (role_card_id),
|
||||
INDEX idx_employee (employee_id),
|
||||
INDEX idx_status (status),
|
||||
FOREIGN KEY (role_card_id) REFERENCES hr_role_cards(id),
|
||||
FOREIGN KEY (employee_id) REFERENCES hr_employees(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='能力卡主表';
|
||||
|
||||
-- 4.2 能力卡硬性能力表
|
||||
CREATE TABLE IF NOT EXISTS hr_competency_card_hard_skills (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
competency_card_id INT NOT NULL COMMENT '能力卡ID',
|
||||
skill_name_zh VARCHAR(100) NOT NULL COMMENT '技能名稱(中文)',
|
||||
skill_name_en VARCHAR(100) COMMENT '技能名稱(英文)',
|
||||
skill_category ENUM('knowledge', 'tool', 'certification') NOT NULL COMMENT '技能類別',
|
||||
is_required BOOLEAN DEFAULT TRUE COMMENT '是否必備',
|
||||
required_level INT NOT NULL COMMENT '要求熟練度(1-5)',
|
||||
description_zh TEXT COMMENT '說明(中文)',
|
||||
description_en TEXT COMMENT '說明(英文)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_comp_card (competency_card_id),
|
||||
FOREIGN KEY (competency_card_id) REFERENCES hr_competency_cards(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='能力卡硬性能力';
|
||||
|
||||
-- 4.3 能力卡軟性能力表
|
||||
CREATE TABLE IF NOT EXISTS hr_competency_card_soft_skills (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
competency_card_id INT NOT NULL COMMENT '能力卡ID',
|
||||
competency_dict_id INT NOT NULL COMMENT '職能字典ID',
|
||||
required_level INT NOT NULL COMMENT '要求等級(1-5)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_comp_card (competency_card_id),
|
||||
INDEX idx_comp_dict (competency_dict_id),
|
||||
FOREIGN KEY (competency_card_id) REFERENCES hr_competency_cards(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (competency_dict_id) REFERENCES hr_competency_dictionary(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='能力卡軟性能力';
|
||||
|
||||
-- ============================================
|
||||
-- 五、績效卡模組
|
||||
-- ============================================
|
||||
|
||||
-- 5.1 評核週期設定表
|
||||
CREATE TABLE IF NOT EXISTS hr_review_cycles (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
cycle_code VARCHAR(30) UNIQUE NOT NULL COMMENT '週期代碼(如: 2024-Q1, 2024-Annual)',
|
||||
cycle_year INT NOT NULL COMMENT '年度',
|
||||
cycle_type ENUM('quarterly', 'annual') NOT NULL COMMENT '週期類型',
|
||||
cycle_quarter INT COMMENT '季度(1-4)',
|
||||
start_date DATE NOT NULL COMMENT '開始日期',
|
||||
end_date DATE NOT NULL COMMENT '結束日期',
|
||||
review_deadline DATE COMMENT '評核截止日期',
|
||||
status ENUM('planned', 'active', 'closed') DEFAULT 'planned' COMMENT '狀態',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_year (cycle_year),
|
||||
INDEX idx_type (cycle_type),
|
||||
INDEX idx_status (status)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='評核週期設定';
|
||||
|
||||
-- 5.2 績效卡主表
|
||||
CREATE TABLE IF NOT EXISTS hr_performance_cards (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
card_code VARCHAR(30) UNIQUE NOT NULL COMMENT '績效卡編號',
|
||||
review_cycle_id INT NOT NULL COMMENT '評核週期ID',
|
||||
employee_id INT NOT NULL COMMENT '被評核人ID',
|
||||
role_card_id INT NOT NULL COMMENT '關聯角色卡ID',
|
||||
competency_card_id INT NOT NULL COMMENT '關聯能力卡ID',
|
||||
supervisor_id INT NOT NULL COMMENT '評核主管ID',
|
||||
self_review_date TIMESTAMP NULL COMMENT '自評完成時間',
|
||||
supervisor_review_date TIMESTAMP NULL COMMENT '主管評完成時間',
|
||||
discussion_date DATE COMMENT '績效面談日期',
|
||||
self_summary TEXT COMMENT '績效自評總結',
|
||||
supervisor_feedback TEXT COMMENT '主管建議回饋',
|
||||
goal_score DECIMAL(5,2) COMMENT '目標得分',
|
||||
behavior_score DECIMAL(5,2) COMMENT '行為得分',
|
||||
goal_weight DECIMAL(5,2) DEFAULT 70.00 COMMENT '目標佔比',
|
||||
behavior_weight DECIMAL(5,2) DEFAULT 30.00 COMMENT '行為佔比',
|
||||
total_score DECIMAL(5,2) COMMENT '總分',
|
||||
rating ENUM('A+', 'A', 'B+', 'B', 'C') COMMENT '考核等級',
|
||||
status ENUM('not_started', 'self_review', 'supervisor_review', 'completed', 'archived') DEFAULT 'not_started' COMMENT '狀態',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_cycle (review_cycle_id),
|
||||
INDEX idx_employee (employee_id),
|
||||
INDEX idx_supervisor (supervisor_id),
|
||||
INDEX idx_status (status),
|
||||
INDEX idx_rating (rating),
|
||||
FOREIGN KEY (review_cycle_id) REFERENCES hr_review_cycles(id),
|
||||
FOREIGN KEY (employee_id) REFERENCES hr_employees(id),
|
||||
FOREIGN KEY (role_card_id) REFERENCES hr_role_cards(id),
|
||||
FOREIGN KEY (competency_card_id) REFERENCES hr_competency_cards(id),
|
||||
FOREIGN KEY (supervisor_id) REFERENCES hr_employees(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='績效卡主表';
|
||||
|
||||
-- 5.3 績效卡目標評核表
|
||||
CREATE TABLE IF NOT EXISTS hr_performance_goals (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
performance_card_id INT NOT NULL COMMENT '績效卡ID',
|
||||
kra_id INT NOT NULL COMMENT 'KRA ID',
|
||||
weight_percentage DECIMAL(5,2) NOT NULL COMMENT '權重百分比',
|
||||
actual_output TEXT COMMENT '具體產出描述',
|
||||
self_completion DECIMAL(5,2) COMMENT '自評完成度(%)',
|
||||
self_note TEXT COMMENT '自評說明',
|
||||
supervisor_completion DECIMAL(5,2) COMMENT '主管評完成度(%)',
|
||||
supervisor_note TEXT COMMENT '主管評說明',
|
||||
consensus_completion DECIMAL(5,2) COMMENT '共識完成度(%)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_perf_card (performance_card_id),
|
||||
INDEX idx_kra (kra_id),
|
||||
FOREIGN KEY (performance_card_id) REFERENCES hr_performance_cards(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (kra_id) REFERENCES hr_role_kra(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='績效卡目標評核';
|
||||
|
||||
-- 5.4 績效卡行為評估表
|
||||
CREATE TABLE IF NOT EXISTS hr_performance_behaviors (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
performance_card_id INT NOT NULL COMMENT '績效卡ID',
|
||||
competency_dict_id INT NOT NULL COMMENT '職能字典ID',
|
||||
self_level INT COMMENT '自評等級(1-5)',
|
||||
self_sbi_situation TEXT COMMENT '自評-情境(S)',
|
||||
self_sbi_behavior TEXT COMMENT '自評-行為(B)',
|
||||
self_sbi_impact TEXT COMMENT '自評-影響(I)',
|
||||
supervisor_level INT COMMENT '主管評等級(1-5)',
|
||||
supervisor_sbi_situation TEXT COMMENT '主管評-情境(S)',
|
||||
supervisor_sbi_behavior TEXT COMMENT '主管評-行為(B)',
|
||||
supervisor_sbi_impact TEXT COMMENT '主管評-影響(I)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_perf_card (performance_card_id),
|
||||
INDEX idx_comp_dict (competency_dict_id),
|
||||
FOREIGN KEY (performance_card_id) REFERENCES hr_performance_cards(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (competency_dict_id) REFERENCES hr_competency_dictionary(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='績效卡行為評估';
|
||||
|
||||
-- ============================================
|
||||
-- 六、成長卡模組
|
||||
-- ============================================
|
||||
|
||||
-- 6.1 成長卡主表
|
||||
CREATE TABLE IF NOT EXISTS hr_growth_cards (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
card_code VARCHAR(30) UNIQUE NOT NULL COMMENT '成長卡編號',
|
||||
performance_card_id INT NOT NULL COMMENT '關聯績效卡ID',
|
||||
employee_id INT NOT NULL COMMENT '員工ID',
|
||||
supervisor_id INT NOT NULL COMMENT '輔導主管ID',
|
||||
growth_period_start DATE NOT NULL COMMENT '成長週期開始',
|
||||
growth_period_end DATE NOT NULL COMMENT '成長週期結束',
|
||||
career_aspiration TEXT COMMENT '職業志向',
|
||||
employee_commitment TEXT COMMENT '員工承諾',
|
||||
employee_signed_at TIMESTAMP NULL COMMENT '員工簽署時間',
|
||||
supervisor_commitment TEXT COMMENT '主管承諾',
|
||||
supervisor_signed_at TIMESTAMP NULL COMMENT '主管簽署時間',
|
||||
review_frequency ENUM('monthly', 'quarterly') DEFAULT 'quarterly' COMMENT '檢視節奏',
|
||||
other_suggestions TEXT COMMENT '其他建議',
|
||||
status ENUM('draft', 'active', 'completed', 'archived') DEFAULT 'draft' COMMENT '狀態',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_perf_card (performance_card_id),
|
||||
INDEX idx_employee (employee_id),
|
||||
INDEX idx_supervisor (supervisor_id),
|
||||
INDEX idx_status (status),
|
||||
FOREIGN KEY (performance_card_id) REFERENCES hr_performance_cards(id),
|
||||
FOREIGN KEY (employee_id) REFERENCES hr_employees(id),
|
||||
FOREIGN KEY (supervisor_id) REFERENCES hr_employees(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成長卡主表';
|
||||
|
||||
-- 6.2 成長卡發展焦點表
|
||||
CREATE TABLE IF NOT EXISTS hr_growth_focus_areas (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
growth_card_id INT NOT NULL COMMENT '成長卡ID',
|
||||
focus_type ENUM('strength', 'development') NOT NULL COMMENT '焦點類型: strength優勢, development待發展',
|
||||
competency_dict_id INT COMMENT '關聯職能字典ID',
|
||||
kra_id INT COMMENT '關聯KRA ID',
|
||||
description TEXT COMMENT '描述',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
INDEX idx_growth_card (growth_card_id),
|
||||
FOREIGN KEY (growth_card_id) REFERENCES hr_growth_cards(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (competency_dict_id) REFERENCES hr_competency_dictionary(id),
|
||||
FOREIGN KEY (kra_id) REFERENCES hr_role_kra(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成長卡發展焦點';
|
||||
|
||||
-- 6.3 成長卡IDP計畫表
|
||||
CREATE TABLE IF NOT EXISTS hr_growth_idp_goals (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
growth_card_id INT NOT NULL COMMENT '成長卡ID',
|
||||
goal_title TEXT NOT NULL COMMENT '發展目標(SMART)',
|
||||
competency_dict_id INT COMMENT '對應能力ID',
|
||||
timeline_start DATE COMMENT '開始時間',
|
||||
timeline_end DATE COMMENT '預計完成時間',
|
||||
success_criteria TEXT COMMENT '成果證據',
|
||||
status ENUM('pending', 'in_progress', 'completed', 'cancelled') DEFAULT 'pending' COMMENT '狀態',
|
||||
display_order INT DEFAULT 0 COMMENT '顯示順序',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_growth_card (growth_card_id),
|
||||
INDEX idx_comp_dict (competency_dict_id),
|
||||
FOREIGN KEY (growth_card_id) REFERENCES hr_growth_cards(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (competency_dict_id) REFERENCES hr_competency_dictionary(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成長卡IDP目標';
|
||||
|
||||
-- 6.4 成長卡行動計畫表
|
||||
CREATE TABLE IF NOT EXISTS hr_growth_actions (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
idp_goal_id INT NOT NULL COMMENT 'IDP目標ID',
|
||||
action_description TEXT NOT NULL COMMENT '具體行動',
|
||||
resources_needed TEXT COMMENT '資源與支持',
|
||||
display_order INT DEFAULT 0 COMMENT '顯示順序',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_idp_goal (idp_goal_id),
|
||||
FOREIGN KEY (idp_goal_id) REFERENCES hr_growth_idp_goals(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成長卡行動計畫';
|
||||
|
||||
-- 6.5 成長卡追蹤紀錄表
|
||||
CREATE TABLE IF NOT EXISTS hr_growth_tracking (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
growth_card_id INT NOT NULL COMMENT '成長卡ID',
|
||||
review_date DATE NOT NULL COMMENT '檢視日期',
|
||||
progress_update TEXT NOT NULL COMMENT '進度更新',
|
||||
adjustments TEXT COMMENT '調整事項',
|
||||
employee_confirmed BOOLEAN DEFAULT FALSE COMMENT '員工確認',
|
||||
supervisor_confirmed BOOLEAN DEFAULT FALSE COMMENT '主管確認',
|
||||
confirmed_at TIMESTAMP NULL COMMENT '確認時間',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
INDEX idx_growth_card (growth_card_id),
|
||||
INDEX idx_review_date (review_date),
|
||||
FOREIGN KEY (growth_card_id) REFERENCES hr_growth_cards(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成長卡追蹤紀錄';
|
||||
|
||||
-- ============================================
|
||||
-- 七、審批流程
|
||||
-- ============================================
|
||||
|
||||
-- 7.1 審批記錄表
|
||||
CREATE TABLE IF NOT EXISTS hr_approval_records (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
entity_type ENUM('role_card', 'competency_card', 'performance_card', 'growth_card') NOT NULL COMMENT '實體類型',
|
||||
entity_id INT NOT NULL COMMENT '實體ID',
|
||||
approver_id INT NOT NULL COMMENT '審批人ID',
|
||||
action ENUM('submit', 'approve', 'reject', 'return') NOT NULL COMMENT '操作',
|
||||
comments TEXT COMMENT '審批意見',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
INDEX idx_entity (entity_type, entity_id),
|
||||
INDEX idx_approver (approver_id),
|
||||
FOREIGN KEY (approver_id) REFERENCES hr_employees(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='審批記錄';
|
||||
|
||||
-- ============================================
|
||||
-- 八、系統設定
|
||||
-- ============================================
|
||||
|
||||
-- 8.1 系統配置表
|
||||
CREATE TABLE IF NOT EXISTS hr_system_settings (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
setting_key VARCHAR(50) UNIQUE NOT NULL COMMENT '設定鍵',
|
||||
setting_value TEXT COMMENT '設定值',
|
||||
setting_type ENUM('text', 'number', 'boolean', 'json') DEFAULT 'text' COMMENT '設定類型',
|
||||
description_zh VARCHAR(200) COMMENT '說明(中文)',
|
||||
description_en VARCHAR(200) COMMENT '說明(英文)',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
updated_by INT COMMENT '更新人ID',
|
||||
FOREIGN KEY (updated_by) REFERENCES hr_employees(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系統設定';
|
||||
|
||||
-- 8.2 等級分界設定表
|
||||
CREATE TABLE IF NOT EXISTS hr_rating_thresholds (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
rating ENUM('A+', 'A', 'B+', 'B', 'C') NOT NULL UNIQUE COMMENT '等級',
|
||||
min_score DECIMAL(5,2) NOT NULL COMMENT '最低分數',
|
||||
max_score DECIMAL(5,2) NOT NULL COMMENT '最高分數',
|
||||
suggested_percentage DECIMAL(5,2) COMMENT '建議比例',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='等級分界設定';
|
||||
|
||||
-- ============================================
|
||||
-- 九、版本管理
|
||||
-- ============================================
|
||||
|
||||
-- 9.1 版本快照表
|
||||
CREATE TABLE IF NOT EXISTS hr_version_snapshots (
|
||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
entity_type ENUM('role_card', 'competency_card', 'performance_card', 'growth_card') NOT NULL COMMENT '實體類型',
|
||||
entity_id INT NOT NULL COMMENT '實體ID',
|
||||
version_number INT NOT NULL COMMENT '版本號',
|
||||
snapshot_data JSON NOT NULL COMMENT '快照資料(JSON格式)',
|
||||
snapshot_reason VARCHAR(200) COMMENT '快照原因',
|
||||
created_by INT NOT NULL COMMENT '建立人ID',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
INDEX idx_entity (entity_type, entity_id),
|
||||
INDEX idx_version (version_number),
|
||||
FOREIGN KEY (created_by) REFERENCES hr_employees(id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='版本快照';
|
||||
|
||||
-- ============================================
|
||||
-- 十、系統日誌
|
||||
-- ============================================
|
||||
|
||||
-- 10.1 操作日誌表
|
||||
CREATE TABLE IF NOT EXISTS hr_audit_logs (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
||||
user_id INT COMMENT '操作人ID',
|
||||
action VARCHAR(50) NOT NULL COMMENT '操作動作',
|
||||
entity_type VARCHAR(50) COMMENT '實體類型',
|
||||
entity_id INT COMMENT '實體ID',
|
||||
ip_address VARCHAR(45) COMMENT 'IP位址',
|
||||
user_agent TEXT COMMENT '使用者代理',
|
||||
request_data JSON COMMENT '請求資料',
|
||||
response_status INT COMMENT '回應狀態',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
INDEX idx_user (user_id),
|
||||
INDEX idx_action (action),
|
||||
INDEX idx_entity (entity_type, entity_id),
|
||||
INDEX idx_created_at (created_at),
|
||||
FOREIGN KEY (user_id) REFERENCES hr_employees(id) ON DELETE SET NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='操作日誌';
|
||||
|
||||
-- ============================================
|
||||
-- 資料庫結構建立完成
|
||||
-- ============================================
|
||||
242
database/seed_data.sql
Normal file
242
database/seed_data.sql
Normal file
@@ -0,0 +1,242 @@
|
||||
-- ============================================
|
||||
-- HR 績效評核系統 - 初始資料
|
||||
-- Database: db_A102
|
||||
-- Version: 1.0
|
||||
-- Created: 2025-12-03
|
||||
-- ============================================
|
||||
|
||||
USE db_A102;
|
||||
|
||||
-- ============================================
|
||||
-- 一、系統角色初始資料
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_system_roles (role_code, role_name_zh, role_name_en, permissions) VALUES
|
||||
('ADMIN', '系統管理員', 'System Administrator', '{"all": true}'),
|
||||
('HR', '人力資源', 'HR Manager', '{"view_all": true, "manage_settings": true, "manage_competency_dict": true}'),
|
||||
('MANAGER', '部門主管', 'Department Manager', '{"view_team": true, "approve": true, "review": true}'),
|
||||
('EMPLOYEE', '一般員工', 'Employee', '{"view_self": true, "self_review": true}');
|
||||
|
||||
-- ============================================
|
||||
-- 二、職級初始資料
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_job_levels (level_code, level_name_zh, level_name_en, level_order, is_management) VALUES
|
||||
('L1', '助理專員', 'Junior Associate', 1, FALSE),
|
||||
('L2', '專員', 'Associate', 2, FALSE),
|
||||
('L3', '資深專員', 'Senior Associate', 3, FALSE),
|
||||
('L4', '副理', 'Assistant Manager', 4, TRUE),
|
||||
('L5', '經理', 'Manager', 5, TRUE),
|
||||
('L6', '資深經理', 'Senior Manager', 6, TRUE),
|
||||
('L7', '協理', 'Director', 7, TRUE),
|
||||
('L8', '副總經理', 'Vice President', 8, TRUE),
|
||||
('L9', '總經理', 'General Manager', 9, TRUE);
|
||||
|
||||
-- ============================================
|
||||
-- 三、職能分類初始資料
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_categories (category_code, category_name_zh, category_name_en, category_type, display_order) VALUES
|
||||
('CORE', '通用職能', 'Core Competencies', 'core', 1),
|
||||
('MGMT', '管理職能', 'Management Competencies', 'management', 2),
|
||||
('PROF', '專業職能', 'Professional Competencies', 'professional', 3);
|
||||
|
||||
-- ============================================
|
||||
-- 四、職能字典初始資料 - 通用職能
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_dictionary (competency_code, category_id, competency_name_zh, competency_name_en, definition_zh, definition_en) VALUES
|
||||
('CORE-001', 1, '溝通協調', 'Communication & Coordination',
|
||||
'能夠清晰表達想法,有效傾聽他人意見,並促進團隊成員間的理解與協作',
|
||||
'Ability to clearly express ideas, actively listen to others, and facilitate understanding and collaboration among team members'),
|
||||
|
||||
('CORE-002', 1, '團隊合作', 'Teamwork',
|
||||
'願意與他人合作,主動支援團隊目標,並在團隊中發揮正向影響力',
|
||||
'Willingness to collaborate with others, proactively support team goals, and create positive impact within the team'),
|
||||
|
||||
('CORE-003', 1, '問題解決', 'Problem Solving',
|
||||
'能夠識別問題核心,運用邏輯思維分析問題,並提出有效的解決方案',
|
||||
'Ability to identify core issues, apply logical thinking to analyze problems, and propose effective solutions'),
|
||||
|
||||
('CORE-004', 1, '執行力', 'Execution',
|
||||
'能夠按時完成任務,對工作結果負責,並持續追蹤直到目標達成',
|
||||
'Ability to complete tasks on time, take ownership of work results, and persistently track progress until goals are achieved'),
|
||||
|
||||
('CORE-005', 1, '學習成長', 'Learning Agility',
|
||||
'保持開放心態學習新知,從經驗中反思改進,並持續提升個人能力',
|
||||
'Maintain an open mindset for learning, reflect and improve from experiences, and continuously enhance personal capabilities');
|
||||
|
||||
-- ============================================
|
||||
-- 五、職能字典初始資料 - 管理職能
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_dictionary (competency_code, category_id, competency_name_zh, competency_name_en, definition_zh, definition_en) VALUES
|
||||
('MGMT-001', 2, '策略思維', 'Strategic Thinking',
|
||||
'能夠從全局角度思考,預見未來趨勢,並制定符合組織目標的策略方向',
|
||||
'Ability to think from a holistic perspective, anticipate future trends, and develop strategic directions aligned with organizational goals'),
|
||||
|
||||
('MGMT-002', 2, '團隊領導', 'Team Leadership',
|
||||
'能夠激勵團隊成員,建立信任關係,並帶領團隊達成目標',
|
||||
'Ability to motivate team members, build trust relationships, and lead teams to achieve goals'),
|
||||
|
||||
('MGMT-003', 2, '橫向整合力', 'Cross-functional Integration',
|
||||
'能夠跨部門協調資源,整合不同觀點,並促進組織整體效能',
|
||||
'Ability to coordinate resources across departments, integrate diverse perspectives, and enhance overall organizational effectiveness'),
|
||||
|
||||
('MGMT-004', 2, '決策判斷', 'Decision Making',
|
||||
'能夠在不確定情境中做出明智決策,權衡利弊並承擔決策責任',
|
||||
'Ability to make sound decisions in uncertain situations, weigh pros and cons, and take responsibility for decisions'),
|
||||
|
||||
('MGMT-005', 2, '人才培育', 'People Development',
|
||||
'能夠識別團隊成員潛力,提供發展機會,並有效輔導人才成長',
|
||||
'Ability to identify team members\' potential, provide development opportunities, and effectively coach talent growth');
|
||||
|
||||
-- ============================================
|
||||
-- 六、職能行為指標初始資料 - 溝通協調 (CORE-001)
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(1, 1, '能夠清楚表達自己的想法,聆聽他人意見,在簡單情境中進行基本溝通',
|
||||
'Can clearly express own ideas, listen to others, and perform basic communication in simple situations'),
|
||||
(1, 2, '能夠依據對象調整溝通方式,在日常工作中有效傳遞資訊並確認理解',
|
||||
'Can adjust communication style based on audience, effectively convey information and confirm understanding in daily work'),
|
||||
(1, 3, '能夠促進團隊成員間的溝通,協調不同意見,並在衝突情境中尋求共識',
|
||||
'Can facilitate communication among team members, coordinate different opinions, and seek consensus in conflict situations'),
|
||||
(1, 4, '能夠在複雜情境中進行跨部門溝通,有效整合多方觀點並推動決策',
|
||||
'Can conduct cross-departmental communication in complex situations, effectively integrate multiple perspectives and drive decisions'),
|
||||
(1, 5, '能夠建立組織溝通機制,培養他人溝通能力,並在關鍵時刻發揮影響力',
|
||||
'Can establish organizational communication mechanisms, develop others\' communication skills, and exert influence at critical moments');
|
||||
|
||||
-- ============================================
|
||||
-- 七、職能行為指標初始資料 - 團隊合作 (CORE-002)
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(2, 1, '願意配合團隊需要,接受任務分配,並在團隊中扮演支持角色',
|
||||
'Willing to accommodate team needs, accept task assignments, and play a supportive role in the team'),
|
||||
(2, 2, '主動分享資訊與資源,協助團隊成員解決問題,並維持良好團隊氛圍',
|
||||
'Proactively share information and resources, help team members solve problems, and maintain positive team atmosphere'),
|
||||
(2, 3, '能夠在團隊中發揮協調作用,促進成員間合作,並為團隊目標貢獻想法',
|
||||
'Can play a coordinating role in the team, facilitate member collaboration, and contribute ideas to team goals'),
|
||||
(2, 4, '能夠跨團隊建立合作關係,整合不同專業,並帶動團隊創新',
|
||||
'Can build collaborative relationships across teams, integrate different expertise, and drive team innovation'),
|
||||
(2, 5, '能夠塑造合作文化,培養團隊協作能力,並成為組織協作的典範',
|
||||
'Can shape collaborative culture, develop team collaboration capabilities, and become an organizational collaboration role model');
|
||||
|
||||
-- ============================================
|
||||
-- 八、職能行為指標初始資料 - 問題解決 (CORE-003)
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(3, 1, '能夠發現明顯問題,依據指導尋找解決方法,並執行基本的問題處理',
|
||||
'Can identify obvious problems, seek solutions with guidance, and execute basic problem handling'),
|
||||
(3, 2, '能夠分析問題成因,運用既有方法解決問題,並從中學習改進',
|
||||
'Can analyze problem causes, apply existing methods to solve problems, and learn for improvement'),
|
||||
(3, 3, '能夠系統化分析複雜問題,提出創新解決方案,並評估方案可行性',
|
||||
'Can systematically analyze complex problems, propose innovative solutions, and evaluate solution feasibility'),
|
||||
(3, 4, '能夠處理高度複雜問題,整合多方資源找出最佳解,並預防問題再發生',
|
||||
'Can handle highly complex problems, integrate multiple resources to find optimal solutions, and prevent recurrence'),
|
||||
(3, 5, '能夠建立問題解決機制,培養組織解決問題能力,並推動持續改善文化',
|
||||
'Can establish problem-solving mechanisms, develop organizational problem-solving capabilities, and drive continuous improvement culture');
|
||||
|
||||
-- ============================================
|
||||
-- 九、職能行為指標初始資料 - 執行力 (CORE-004)
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(4, 1, '能夠按照指示完成任務,遵守時程與品質要求,並主動回報進度',
|
||||
'Can complete tasks as instructed, comply with timeline and quality requirements, and proactively report progress'),
|
||||
(4, 2, '能夠獨立規劃工作,有效管理時間與優先順序,並確保任務如期達成',
|
||||
'Can independently plan work, effectively manage time and priorities, and ensure tasks are completed on schedule'),
|
||||
(4, 3, '能夠在多任務情境中保持專注,克服障礙推動執行,並達成挑戰性目標',
|
||||
'Can stay focused in multi-tasking situations, overcome obstacles to drive execution, and achieve challenging goals'),
|
||||
(4, 4, '能夠帶領團隊高效執行專案,監控進度並即時調整,確保目標達成',
|
||||
'Can lead teams to execute projects efficiently, monitor progress and adjust in time, ensuring goal achievement'),
|
||||
(4, 5, '能夠建立執行管理機制,提升組織執行效能,並塑造結果導向文化',
|
||||
'Can establish execution management mechanisms, enhance organizational execution effectiveness, and shape results-oriented culture');
|
||||
|
||||
-- ============================================
|
||||
-- 十、職能行為指標初始資料 - 學習成長 (CORE-005)
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(5, 1, '願意學習新知識與技能,接受回饋並嘗試改進,保持積極學習態度',
|
||||
'Willing to learn new knowledge and skills, accept feedback and try to improve, maintain positive learning attitude'),
|
||||
(5, 2, '主動尋求學習機會,從工作經驗中反思,並將所學應用於實務工作',
|
||||
'Proactively seek learning opportunities, reflect from work experiences, and apply learning to practical work'),
|
||||
(5, 3, '能夠快速掌握新領域知識,跨領域學習並整合應用,持續提升專業能力',
|
||||
'Can quickly master new domain knowledge, learn across fields and integrate applications, continuously enhance professional capabilities'),
|
||||
(5, 4, '能夠引領團隊學習,分享知識與經驗,並建立學習型團隊文化',
|
||||
'Can lead team learning, share knowledge and experiences, and build learning team culture'),
|
||||
(5, 5, '能夠推動組織學習與創新,建立知識管理機制,並培養組織學習能力',
|
||||
'Can drive organizational learning and innovation, establish knowledge management mechanisms, and cultivate organizational learning capabilities');
|
||||
|
||||
-- ============================================
|
||||
-- 十一、職能行為指標初始資料 - 管理職能 (簡化版)
|
||||
-- ============================================
|
||||
|
||||
-- 策略思維 (MGMT-001)
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(6, 1, '能夠理解部門目標,並將其與個人工作連結', 'Can understand department goals and connect them with personal work'),
|
||||
(6, 2, '能夠掌握業務全貌,識別關鍵成功因素', 'Can grasp business overview and identify key success factors'),
|
||||
(6, 3, '能夠分析市場趨勢,制定部門策略方向', 'Can analyze market trends and develop department strategic direction'),
|
||||
(6, 4, '能夠整合內外部資源,推動組織策略執行', 'Can integrate internal and external resources to drive organizational strategy execution'),
|
||||
(6, 5, '能夠制定公司級策略,引領組織轉型創新', 'Can develop company-level strategy and lead organizational transformation and innovation');
|
||||
|
||||
-- 團隊領導 (MGMT-002)
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(7, 1, '能夠在團隊中發揮正向影響力', 'Can exert positive influence within the team'),
|
||||
(7, 2, '能夠帶領小型專案團隊達成目標', 'Can lead small project teams to achieve goals'),
|
||||
(7, 3, '能夠有效管理團隊,激勵成員績效', 'Can effectively manage teams and motivate member performance'),
|
||||
(7, 4, '能夠建立高效團隊,培養後備領導人才', 'Can build high-performing teams and develop future leaders'),
|
||||
(7, 5, '能夠跨組織領導變革,建立領導梯隊', 'Can lead cross-organizational change and build leadership pipeline');
|
||||
|
||||
-- 橫向整合力 (MGMT-003)
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(8, 1, '能夠與其他部門建立良好工作關係', 'Can establish good working relationships with other departments'),
|
||||
(8, 2, '能夠協調跨部門合作完成專案', 'Can coordinate cross-departmental collaboration to complete projects'),
|
||||
(8, 3, '能夠整合跨部門資源解決複雜問題', 'Can integrate cross-departmental resources to solve complex problems'),
|
||||
(8, 4, '能夠建立跨部門協作機制提升效能', 'Can establish cross-departmental collaboration mechanisms to enhance effectiveness'),
|
||||
(8, 5, '能夠推動組織整體整合優化', 'Can drive overall organizational integration and optimization');
|
||||
|
||||
-- 決策判斷 (MGMT-004)
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(9, 1, '能夠依據標準流程做出日常決策', 'Can make daily decisions based on standard procedures'),
|
||||
(9, 2, '能夠在一般情境中做出合理判斷', 'Can make reasonable judgments in general situations'),
|
||||
(9, 3, '能夠在複雜情境中權衡利弊做決策', 'Can weigh pros and cons to make decisions in complex situations'),
|
||||
(9, 4, '能夠在不確定性下做出關鍵決策', 'Can make critical decisions under uncertainty'),
|
||||
(9, 5, '能夠做出影響組織長遠發展的戰略決策', 'Can make strategic decisions affecting long-term organizational development');
|
||||
|
||||
-- 人才培育 (MGMT-005)
|
||||
INSERT INTO hr_competency_behaviors (competency_id, level_num, behavior_description_zh, behavior_description_en) VALUES
|
||||
(10, 1, '願意協助新人適應工作環境', 'Willing to help newcomers adapt to work environment'),
|
||||
(10, 2, '能夠指導同事提升工作技能', 'Can guide colleagues to improve work skills'),
|
||||
(10, 3, '能夠識別人才潛力並提供發展機會', 'Can identify talent potential and provide development opportunities'),
|
||||
(10, 4, '能夠系統化培育團隊人才', 'Can systematically develop team talent'),
|
||||
(10, 5, '能夠建立組織人才發展體系', 'Can establish organizational talent development system');
|
||||
|
||||
-- ============================================
|
||||
-- 十二、系統設定初始資料
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_system_settings (setting_key, setting_value, setting_type, description_zh, description_en) VALUES
|
||||
('goal_weight', '70.00', 'number', '目標成果權重百分比', 'Goal achievement weight percentage'),
|
||||
('behavior_weight', '30.00', 'number', '行為能力權重百分比', 'Behavior competency weight percentage'),
|
||||
('default_language', 'zh-TW', 'text', '系統預設語言', 'System default language'),
|
||||
('enable_quarterly_review', 'true', 'boolean', '是否啟用季度評核', 'Enable quarterly review'),
|
||||
('max_idp_goals', '4', 'number', 'IDP計畫最大目標數', 'Maximum IDP goals count');
|
||||
|
||||
-- ============================================
|
||||
-- 十三、等級分界初始資料
|
||||
-- ============================================
|
||||
|
||||
INSERT INTO hr_rating_thresholds (rating, min_score, max_score, suggested_percentage) VALUES
|
||||
('A+', 90.00, 100.00, 10.00),
|
||||
('A', 80.00, 89.99, 22.50),
|
||||
('B+', 70.00, 79.99, 35.00),
|
||||
('B', 60.00, 69.99, 22.50),
|
||||
('C', 0.00, 59.99, 10.00);
|
||||
|
||||
-- ============================================
|
||||
-- 初始資料建立完成
|
||||
-- ============================================
|
||||
Reference in New Issue
Block a user