All systems / SYS-025
PerformanceHR
ระบบประเมินผลงาน
system.yml
148 lines# Skeleton created by `sysforge import-excel` (SPEC §13) for SYS-025.
# Core modules: • โมดูลข้อมูลบุคลากร • โมดูลสอบ/ประเมินผล • โมดูลข้อมูลหลัก (Master Data)
# TODO(sysforge): replace the default fields below with the real fields of each entity.
# Every field shown in a form needs a default or a placeholder (R-UI-1). Then run: sysforge validate
system:
code: SYS-025
name: PerformanceHR
title: { th: "ระบบประเมินผลงาน", en: "Performance hr" }
description: { th: "ระบบประเมินผลงาน" }
domain: Enterprise & Business
package: com.sysforge.performancehr
version: 1.0.0
locale: { default: th }
timezone: Asia/Bangkok
database:
targets: [sqlserver, oracle, mysql, postgresql]
default: postgresql
tablePrefix: pe_
theme: {}
roles:
- code: ADMIN
title: { th: ผู้ดูแลระบบ, en: Administrator }
permissions: ["*"]
- code: STAFF
title: { th: เจ้าหน้าที่, en: Staff }
permissions:
- "Employee:create"
- "Employee:read"
- "Employee:update"
- "Employee:export"
- "Position:create"
- "Position:read"
- "Position:update"
- "Position:export"
- "OrgUnit:create"
- "OrgUnit:read"
- "OrgUnit:update"
- "OrgUnit:export"
- "EmploymentHistory:create"
- "EmploymentHistory:read"
- "EmploymentHistory:update"
- "EmploymentHistory:export"
- "QuestionBank:create"
- "QuestionBank:read"
- "QuestionBank:update"
- "QuestionBank:export"
- "Assessment:create"
- "Assessment:read"
- "Assessment:update"
- "Assessment:export"
- "Attempt:create"
- "Attempt:read"
- "Attempt:update"
- "Attempt:export"
- "Score:create"
- "Score:read"
- "Score:update"
- "Score:export"
entities:
- name: Employee
title: { th: "Employee", en: "Employee" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น EM-0001", en: "e.g. EM-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น Employee", en: "e.g. Employee name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ Employee
- name: Position
title: { th: "Position", en: "Position" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น PO-0001", en: "e.g. PO-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น Position", en: "e.g. Position name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ Position
- name: OrgUnit
title: { th: "Org unit", en: "Org unit" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น OU-0001", en: "e.g. OU-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น OrgUnit", en: "e.g. Org unit name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ OrgUnit
- name: EmploymentHistory
title: { th: "Employment history", en: "Employment history" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น EH-0001", en: "e.g. EH-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น EmploymentHistory", en: "e.g. Employment history name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ EmploymentHistory
- name: QuestionBank
title: { th: "Question bank", en: "Question bank" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น QB-0001", en: "e.g. QB-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น QuestionBank", en: "e.g. Question bank name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ QuestionBank
- name: Assessment
title: { th: "Assessment", en: "Assessment" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น AS-0001", en: "e.g. AS-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น Assessment", en: "e.g. Assessment name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ Assessment
- name: Attempt
title: { th: "Attempt", en: "Attempt" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น AT-0001", en: "e.g. AT-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น Attempt", en: "e.g. Attempt name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ Attempt
- name: Score
title: { th: "Score", en: "Score" }
display: name
fields:
- { name: code, type: string, length: 30, required: true, unique: true, searchable: true, label: { th: รหัส, en: Code }, placeholder: { th: "เช่น SC-0001", en: "e.g. SC-0001" } }
- { name: name, type: string, length: 200, required: true, searchable: true, label: { th: ชื่อ, en: Name }, placeholder: { th: "เช่น Score", en: "e.g. Score name" } }
- { name: description, type: text, label: { th: รายละเอียด, en: Description }, placeholder: { th: "รายละเอียดเพิ่มเติม", en: "Additional details" } }
- { name: active, type: boolean, default: true, searchable: true, label: { th: ใช้งาน, en: Active } }
# TODO(sysforge): ระบุ field เฉพาะของ Score
screens:
- { id: home, type: kpi-dashboard, title: { th: ภาพรวม, en: Overview } }
- { id: employees, type: crud, entity: Employee, title: { th: "Employee", en: "Employee" }, defaultSort: { field: code, dir: asc } }
- { id: positions, type: crud, entity: Position, title: { th: "Position", en: "Position" }, defaultSort: { field: code, dir: asc } }
- { id: org-units, type: crud, entity: OrgUnit, title: { th: "Org unit", en: "Org unit" }, defaultSort: { field: code, dir: asc } }
- { id: employment-histories, type: crud, entity: EmploymentHistory, title: { th: "Employment history", en: "Employment history" }, defaultSort: { field: code, dir: asc } }
- { id: question-banks, type: crud, entity: QuestionBank, title: { th: "Question bank", en: "Question bank" }, defaultSort: { field: code, dir: asc } }
- { id: assessments, type: crud, entity: Assessment, title: { th: "Assessment", en: "Assessment" }, defaultSort: { field: code, dir: asc } }
- { id: attempts, type: crud, entity: Attempt, title: { th: "Attempt", en: "Attempt" }, defaultSort: { field: code, dir: asc } }
- { id: scores, type: crud, entity: Score, title: { th: "Score", en: "Score" }, defaultSort: { field: code, dir: asc } }
Details
- Code
- SYS-025
- Domain
- Enterprise & Business
- Entities
- 8
- Source
- Excel import
- Status
- Has TODO — generates fine, replace the default fields before real use
- Description
- ระบบประเมินผลงาน
Theme
Registered in salt "sysforge-v1": regenerating keeps this look.