變更內容: - 所有資料表加上 HR_position_ 前綴 - 整理完整欄位顯示名稱與 ID 對照表 - 模組化 JS 檔案 (admin.js, ai.js, csv.js 等) - 專案結構優化 (docs/, scripts/, tests/ 等) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
184 lines
10 KiB
Markdown
184 lines
10 KiB
Markdown
# 系統表單欄位規範書 v1.1 (UX Optimized)
|
|
|
|
**設計原則 (UX Design Principles):**
|
|
1. **Context First**: 先確認組織架構 (BU/Dept),再定義具體內容。
|
|
2. **Key Data Top**: 核心識別資料 (編號/名稱) 置頂。
|
|
3. **Group by Type**: 下拉選單 (Select) 集中,開關 (Switch) 集中,長文字 (Textarea) 沉底。
|
|
|
|
---
|
|
|
|
## 1. 崗位基礎資料模組 (Position Module)
|
|
|
|
**表單代號**: `positionForm`
|
|
**資料表**: `Position`
|
|
|
|
### 1.1 基礎資料頁籤 (tab-position-basic)
|
|
> **UX 邏輯**: 先選組織(過濾條件) → 填寫核心識別 → 設定分類屬性 → 填寫詳細描述。
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| **[組織定義]** | | | | | | |
|
|
| 1 | 事業體 | `pos_businessUnit` | `businessUnit` | select | 否 | 聯動 L1 |
|
|
| 2 | 處級單位 | `pos_division` | `division` | select | 否 | 聯動 L2 |
|
|
| 3 | 部級單位 | `pos_department` | `department` | select | 否 | 聯動 L3 |
|
|
| 4 | 課級單位 | `pos_section` | `section` | text | 否 | - |
|
|
| **[核心識別]** | | | | | | |
|
|
| 5 | **崗位編號** | `pos_code` | `positionCode` | text | **是** | 唯一識別 |
|
|
| 6 | **崗位名稱** | `pos_name` | `positionName` | text | **是** | - |
|
|
| 7 | 生效日期 | `pos_effectiveDate` | `effectiveDate` | date | 否 | 預設今日 |
|
|
| **[分類屬性]** | | | | | | |
|
|
| 8 | 崗位級別 | `pos_level` | `positionLevel` | select | 否 | L1-L7 |
|
|
| 9 | 崗位類別 | `pos_category` | `positionCategory` | select | 否 | 連動帶出名稱 |
|
|
| 10 | 崗位類別名稱 | `pos_categoryName` | `positionCategoryName` | text | 否 | Readonly |
|
|
| 11 | 崗位性質 | `pos_type` | `positionType` | select | 否 | FT/PT/CT... |
|
|
| 12 | 崗位性質名稱 | `pos_typeName` | `positionTypeName` | text | 否 | Readonly |
|
|
| 13 | 編制人數 | `pos_headcount` | `headcount` | number | 否 | - |
|
|
| **[詳細描述]** | | | | | | |
|
|
| 14 | 崗位描述 | `pos_desc` | `description` | textarea | 否 | rows=6 |
|
|
| 15 | 崗位備注 | `pos_remark` | `remark` | textarea | 否 | rows=4 |
|
|
|
|
### 1.2 招聘要求資料頁籤 (tab-position-recruit)
|
|
> **UX 邏輯**: 先定義「要招什麼樣的人(Target)」→「硬性條件(Must)」→「軟性技能(Plus)」→「廣告文案(Text)」。
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| **[招聘職位定義]** | | | | | | |
|
|
| 1 | 招聘職位代碼 | `rec_position` | `recruitPosition` | select | 否 | ENG, MGR... |
|
|
| 2 | 對外職稱 | `rec_jobTitle` | `jobTitle` | text | 否 | 顯示在招聘網的名稱 |
|
|
| 3 | 上級崗位編號 | `rec_superiorCode` | `superiorPositionCode` | text | 否 | - |
|
|
| 4 | 工作性質 | `rec_jobType` | `jobType` | select | 否 | 招聘用分類 |
|
|
| **[硬性資格]** | | | | | | |
|
|
| 5 | 最低學歷 | `rec_eduLevel` | `educationLevel` | select | 否 | - |
|
|
| 6 | 專業要求 | `rec_majorReq` | `majorRequirements` | text | 否 | Modal 選擇 |
|
|
| 7 | 工作經驗 | `rec_expYears` | `experienceYears` | select | 否 | - |
|
|
| 8 | 薪酬范圍 | `rec_salaryRange` | `salaryRange` | select | 否 | - |
|
|
| 9 | 要求性別 | `rec_gender` | `requiredGender` | select | 否 | - |
|
|
| 10 | 年齡限制 (Min) | `rec_minAge` | `minAge` | number | 否 | 併排顯示 |
|
|
| 11 | 年齡限制 (Max) | `rec_maxAge` | `maxAge` | number | 否 | 併排顯示 |
|
|
| **[技能與證照]** | | | | | | |
|
|
| 12 | 語言要求 | `rec_langReq` | `langRequirements` | text | 否 | - |
|
|
| 13 | 證照要求 | `rec_certReq` | `certRequirements` | select | 否 | - |
|
|
| 14 | 技能要求 | `rec_skillReq` | `skillRequirements` | text | 否 | Tag input |
|
|
| 15 | 其他要求 | `rec_otherReq` | `otherRequirements` | text | 否 | - |
|
|
| **[文案描述]** | | | | | | |
|
|
| 16 | 職位描述 (JD) | `rec_jobDesc` | `recruitJobDesc` | textarea | 否 | 廣告用 |
|
|
| 17 | 崗位要求 (Req) | `rec_positionReq` | `recruitRequirements` | textarea | 否 | 廣告用 |
|
|
| 18 | 招聘備注 | `rec_remark` | `recruitRemark` | textarea | 否 | 內部用 |
|
|
|
|
---
|
|
|
|
## 2. 職務基礎資料模組 (Job Module)
|
|
|
|
**表單代號**: `jobForm`
|
|
**資料表**: `Job`
|
|
|
|
> **UX 邏輯**: 先分類 → 再命名 → 設定權限/福利(開關) → 備註。
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| **[分類與識別]** | | | | | | |
|
|
| 1 | **職務類別** | `job_category` | `jobCategoryCode` | select | **是** | - |
|
|
| 2 | 職務類別名稱 | `job_categoryName` | `jobCategoryName` | text | 否 | Readonly |
|
|
| 3 | **職務編號** | `job_code` | `jobCode` | text | **是** | - |
|
|
| 4 | **職務名稱** | `job_name` | `jobName` | text | **是** | - |
|
|
| 5 | 職務英文名稱 | `job_nameEn` | `jobNameEn` | text | 否 | - |
|
|
| **[屬性設定]** | | | | | | |
|
|
| 6 | 職務層級 | `job_level` | `jobLevel` | text | 否 | 敏感欄位 |
|
|
| 7 | 生效日期 | `job_effectiveDate`| `effectiveDate` | date | 否 | - |
|
|
| 8 | 排列順序 | `job_sortOrder` | `sortOrder` | number | 否 | - |
|
|
| 9 | 預算編制人數 | `job_headcount` | `headcount` | number | 否 | - |
|
|
| **[福利開關]** | | | | | | |
|
|
| 10 | 全勤獎金 | `job_hasAttBonus` | `hasAttendanceBonus` | checkbox| 否 | Toggle Switch |
|
|
| 11 | 住房補貼 | `job_hasHouseAllow`| `hasHousingAllowance` | checkbox| 否 | Toggle Switch |
|
|
| **[備註]** | | | | | | |
|
|
| 12 | 職務備注 | `job_remark` | `remark` | textarea | 否 | - |
|
|
|
|
---
|
|
|
|
## 3. 部門職責模組 (DeptFunction Module)
|
|
|
|
**表單代號**: `deptFunctionForm`
|
|
**資料表**: `DeptFunction`
|
|
|
|
> **UX 邏輯**: 組織架構 → 核心職責定義 → 管理與規模 → 策略性描述(使命/願景)。
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| **[基本定義]** | | | | | | |
|
|
| 1 | **事業體** | `df_businessUnit` | `businessUnit` | select | **是** | - |
|
|
| 2 | **處級單位** | `df_division` | `division` | select | **是** | - |
|
|
| 3 | **部級單位** | `df_department` | `department` | select | **是** | - |
|
|
| 4 | 課級單位 | `df_section` | `section` | text | 否 | - |
|
|
| 5 | **職責編號** | `df_code` | `dfCode` | text | **是** | - |
|
|
| 6 | **職責名稱** | `df_name` | `dfName` | text | **是** | - |
|
|
| **[管理架構]** | | | | | | |
|
|
| 7 | **對應崗位** | `df_posTitle` | `positionTitle` | select | **是** | 綁定 Position |
|
|
| 8 | 崗位級別 | `df_posLevel` | `positionLevel` | select | 否 | - |
|
|
| 9 | 部門主管職稱 | `df_managerTitle` | `managerTitle` | text | 否 | - |
|
|
| 10 | 人數上限 | `df_headcountLimit`| `headcountLimit` | number | 否 | - |
|
|
| 11 | **生效日期** | `df_effectiveDate` | `effectiveDate` | date | **是** | - |
|
|
| 12 | 狀態 | `df_status` | `status` | select | 否 | Active/Inactive |
|
|
| **[策略職責]** | | | | | | |
|
|
| 13 | **核心職責** | `df_coreFunc` | `coreFunctions` | textarea | **是** | 重點欄位 (Top) |
|
|
| 14 | 部門使命 | `df_mission` | `mission` | textarea | 否 | - |
|
|
| 15 | 部門願景 | `df_vision` | `vision` | textarea | 否 | - |
|
|
| 16 | KPIs | `df_kpis` | `kpis` | textarea | 否 | - |
|
|
| 17 | 協作部門 | `df_collab` | `collaboration` | textarea | 否 | - |
|
|
| 18 | 備注 | `df_remark` | `remark` | textarea | 否 | - |
|
|
|
|
---
|
|
|
|
## 4. 崗位描述模組 (JobDescription Module)
|
|
|
|
**表單代號**: `jobDescForm`
|
|
**資料表**: `JobDescription`
|
|
|
|
> **UX 邏輯**:
|
|
> 1. Header: 快速鎖定「這是誰的JD」。
|
|
> 2. Readonly Area: 顯示「他在哪裡工作」(提供撰寫JD的上下文)。
|
|
> 3. Reporting: 釐清「上下級關係」。
|
|
> 4. Main Body: 撰寫「做什麼」(Purpose/Resp)。
|
|
> 5. Requirements: 撰寫「需要什麼條件」。
|
|
|
|
### 4.1 識別與上下文 (Header & Context)
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| **[員工綁定]** | | | | | | |
|
|
| 1 | 選擇員工(工號) | `jd_empNo` | `empNo` | text | 否 | 搜尋 Modal |
|
|
| 2 | 姓名 | `jd_empName` | `empName` | text | 否 | Readonly |
|
|
| 3 | 版本日期 | `jd_versionDate` | `versionDate` | date | 否 | - |
|
|
| **[崗位背景 (唯讀)]** | | | | | | |
|
|
| 4 | 崗位代碼 | `jd_posCode` | `positionCode` | text | 否 | 關聯鍵 |
|
|
| 5 | 崗位名稱 | `jd_posName` | `positionName` | text | 否 | Readonly |
|
|
| 6 | 所屬部門 | `jd_department` | `department` | text | 否 | Readonly (組合字串) |
|
|
| 7 | 任職地點 | `jd_location` | `workLocation` | select | 否 | - |
|
|
| 8 | 員工屬性 | `jd_empAttr` | `empAttribute` | select | 否 | FT/PT... |
|
|
| 9 | 部門職責引用 | `jd_dfCode` | `dfCode` | text | 否 | 關聯 DF 模組 |
|
|
|
|
### 4.2 匯報關係 (Reporting Lines)
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| 10 | **直接主管** | `jd_supervisor` | `directSupervisor` | text | 否 | 姓名/職稱 |
|
|
| 11 | **匯報對象** | `jd_reportTo` | `reportTo` | text | 否 | 系統職務節點 |
|
|
| 12 | 職等&職務 | `jd_gradeJob` | `positionGradeJob` | text | 否 | HR 用級別 |
|
|
| 13 | 直接下屬 | `jd_directReports` | `directReports` | text | 否 | 人數或職稱 |
|
|
|
|
### 4.3 職責詳情 (Responsibilities)
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| 14 | 崗位設置目的 | `jd_purpose` | `positionPurpose` | text | 否 | 一句話摘要 |
|
|
| 15 | **主要職責** | `jd_mainResp` | `mainResponsibilities`| textarea | 否 | 核心內容 (大區塊) |
|
|
|
|
### 4.4 任職資格 (Requirements)
|
|
|
|
| # | 欄位顯示名稱 | 標準化 HTML ID | 資料庫欄位名稱 | 類型 | 必填 | 備註 |
|
|
|---|---|---|---|---|---|---|
|
|
| 16 | 教育程度 | `jd_eduLevel` | `educationLevel` | text | 否 | - |
|
|
| 17 | 工作經驗 | `jd_expReq` | `experienceRequirements`| textarea | 否 | - |
|
|
| 18 | 專業知識 | `jd_proKnowledge` | `professionalKnowledge` | textarea | 否 | - |
|
|
| 19 | 基本技能 | `jd_basicSkills` | `basicSkills` | textarea | 否 | - |
|
|
| 20 | 其他要求 | `jd_otherReq` | `otherRequirements` | textarea | 否 | - |
|