thai-uxui

This commit is contained in:
phaichayon
2026-06-19 11:11:17 +07:00
parent c0cc880be2
commit 721653f692
47 changed files with 1135 additions and 538 deletions

471
plans/task-ux.1.md Normal file
View File

@@ -0,0 +1,471 @@
# Task UX.1: Thai CRM Terminology Standardization
## Goal
สร้างมาตรฐานคำศัพท์ภาษาไทยสำหรับ ALLA OS CRM
เพื่อให้:
* Menu
* Form
* Detail Page
* Dashboard
* Report
* PDF
* Approval Workflow
ใช้ภาษาธุรกิจชุดเดียวกัน
หลัง Task นี้
Terminology ถือว่า Frozen
การเปลี่ยนคำในอนาคตต้องผ่าน ADR หรือ Business Review
---
# Background
CRM ได้ผ่าน
```txt
Task D
Task E
Task F
Task G
Task H
Task I
Task J
```
แล้ว
ปัจจุบันมีการใช้คำผสมกัน:
```txt
Lead
Enquiry
Opportunity
Quotation
Customer
Project Party
Billing Customer
```
ซึ่งอาจสร้างความสับสนให้ผู้ใช้งาน
โดยเฉพาะ:
```txt
Marketing
Sales
Manager
Admin
```
---
# Scope UX.1.1 Terminology Registry
Create:
```txt
docs/business/crm-terminology.md
```
Document format:
| Code | English | Thai | Notes |
| ---- | ------- | ---- | ----- |
This file becomes the source of truth.
---
# Scope UX.1.2 Frozen CRM Business Terms
## CRM
Keep:
```txt
CRM
```
Do not translate.
---
## Dashboard
Keep:
```txt
Dashboard
```
---
## Lead
Display:
```txt
ลีด
```
Definition:
```txt
ข้อมูลลูกค้าเป้าหมายก่อนส่งต่อให้ฝ่ายขาย
```
---
## Enquiry
Display:
```txt
โอกาสขาย
```
Definition:
```txt
โอกาสทางการขายที่ได้รับมอบหมายให้ฝ่ายขายดำเนินการ
```
---
## Quotation
Display:
```txt
ใบเสนอราคา
```
---
## Approval
Display:
```txt
อนุมัติเอกสาร
```
---
## Customer
Display:
```txt
ลูกค้า
```
---
## Contact
Display:
```txt
ผู้ติดต่อ
```
---
## Billing Customer
Display:
```txt
ลูกค้าผู้รับใบเสนอราคา
```
Definition:
```txt
บริษัทที่ใช้สำหรับออกใบเสนอราคาและวางบิล
```
---
## Project Parties
Display:
```txt
ผู้เกี่ยวข้องในโครงการ
```
---
# Scope UX.1.3 Project Party Roles
## customer
Display:
```txt
ลูกค้า
```
---
## billing_customer
Display:
```txt
ลูกค้าผู้รับใบเสนอราคา
```
---
## end_customer
Display:
```txt
เจ้าของโครงการ
```
---
## contractor
Display:
```txt
ผู้รับเหมา
```
---
## consultant
Display:
```txt
ที่ปรึกษา
```
---
# Scope UX.1.4 Dashboard KPI Terms
## Lead Count
Display:
```txt
จำนวนลีด
```
---
## Enquiry Count
Display:
```txt
จำนวนโอกาสขาย
```
---
## Won Count
Display:
```txt
จำนวนงานที่ชนะ
```
---
## Lost Count
Display:
```txt
จำนวนงานที่แพ้
```
---
## Revenue
Display:
```txt
มูลค่าใบเสนอราคา
```
---
## Conversion Rate
Display:
```txt
อัตราการเปลี่ยนสถานะ
```
---
# Scope UX.1.5 Status Labels
## Lead
```txt
ใหม่
ติดต่อแล้ว
ผ่านการคัดกรอง
ไม่ผ่านการคัดกรอง
ส่งต่อฝ่ายขายแล้ว
```
---
## Enquiry
```txt
โอกาสขาย
ชนะ
แพ้
```
Mapped from:
```txt
lead
enquiry
closed_won
closed_lost
```
---
# Scope UX.1.6 Menu Labels
CRM Menu:
```txt
Dashboard
ลีด
โอกาสขาย
ใบเสนอราคา
อนุมัติเอกสาร
ตั้งค่า CRM
```
---
# Scope UX.1.7 Form Labels
Update labels only.
Do NOT rename:
```txt
database fields
api fields
typescript types
server service names
table names
```
Business label only.
---
# Scope UX.1.8 PDF Terminology
Update document preview and PDF rendering labels.
Examples:
```txt
Billing Customer
→ ลูกค้าผู้รับใบเสนอราคา
Project Parties
→ ผู้เกี่ยวข้องในโครงการ
Quotation
→ ใบเสนอราคา
```
Do not modify template mapping keys.
---
# Scope UX.1.9 Reports
Report headers must use:
```txt
Thai business terms
```
while keeping export column codes unchanged internally.
---
# Explicit Non-Scope
Do NOT:
```txt
Rename database schema
Rename API routes
Rename TS types
Rename service folders
Create i18n system
Translate admin technical screens
```
---
# Output
1. Files Added
2. Files Modified
3. Terminology Registry
4. Menu Changes
5. Dashboard Changes
6. Form Changes
7. PDF Changes
8. Report Changes
9. Remaining Risks
---
# Definition of Done
✔ CRM terminology registry exists
✔ Menu terminology standardized
✔ Lead terminology standardized
✔ Enquiry terminology standardized
✔ Project Party terminology standardized
✔ Dashboard terminology standardized
✔ PDF terminology standardized
✔ Report terminology standardized
✔ No database changes
✔ No API changes
✔ No schema rename