task-e
This commit is contained in:
202
plans/task-e.1.md
Normal file
202
plans/task-e.1.md
Normal file
@@ -0,0 +1,202 @@
|
||||
# Task E.1: Quotation Stabilization Before Approval
|
||||
|
||||
## Goal
|
||||
|
||||
Stabilize Quotation foundation before starting Task F: Approval Production Module.
|
||||
|
||||
## Must Read
|
||||
|
||||
```txt
|
||||
docs/implementation/task-a-template-audit.md
|
||||
docs/implementation/task-b-template-audit.md
|
||||
docs/implementation/task-b1-foundation-stabilization.md
|
||||
docs/implementation/technical-debt.md
|
||||
src/features/crm/quotations/**
|
||||
src/features/foundation/**
|
||||
src/db/schema.ts
|
||||
```
|
||||
|
||||
## Scope
|
||||
|
||||
ทำเฉพาะ stabilization:
|
||||
|
||||
1. Review quotation master options
|
||||
2. Seed missing options
|
||||
3. Review quotation revision rule
|
||||
4. Review quotation totals rule
|
||||
5. Review approval readiness
|
||||
6. Update technical debt / ADR notes if needed
|
||||
|
||||
## Part 1: Master Options Seed
|
||||
|
||||
ตรวจสอบและ seed เพิ่มถ้ายังไม่มี:
|
||||
|
||||
```txt
|
||||
crm_quotation_type
|
||||
crm_discount_type
|
||||
crm_unit
|
||||
crm_sent_via
|
||||
crm_quotation_customer_role
|
||||
crm_quotation_topic_type
|
||||
```
|
||||
|
||||
ตัวอย่างค่า:
|
||||
|
||||
```txt
|
||||
crm_quotation_type:
|
||||
- crane
|
||||
- dockdoor
|
||||
- solarcell
|
||||
- service
|
||||
- other
|
||||
|
||||
crm_discount_type:
|
||||
- percentage
|
||||
- fixed
|
||||
|
||||
crm_unit:
|
||||
- pcs
|
||||
- set
|
||||
- lot
|
||||
- job
|
||||
|
||||
crm_sent_via:
|
||||
- email
|
||||
- manual
|
||||
- system
|
||||
|
||||
crm_quotation_customer_role:
|
||||
- owner
|
||||
- consultant
|
||||
- contractor
|
||||
- billing
|
||||
|
||||
crm_quotation_topic_type:
|
||||
- scope
|
||||
- exclusion
|
||||
- payment
|
||||
```
|
||||
|
||||
Rules:
|
||||
|
||||
* seed idempotent
|
||||
* ห้าม hardcode organizationId
|
||||
* update `foundation.seed.ts` เท่านั้นถ้าเหมาะสม
|
||||
|
||||
## Part 2: Form Option Review
|
||||
|
||||
ตรวจสอบ quotation form ว่า:
|
||||
|
||||
* status มาจาก master options
|
||||
* quotationType มาจาก master options
|
||||
* currency มาจาก master options
|
||||
* discountType มาจาก master options
|
||||
* unit มาจาก master options ถ้ามี item form
|
||||
* customer role/topic type ไม่ hardcode ถ้าดึง option ได้ง่าย
|
||||
|
||||
## Part 3: Revision Rule Review
|
||||
|
||||
ตรวจสอบและสรุป rule:
|
||||
|
||||
```txt
|
||||
draft revise ได้ไหม
|
||||
cancelled revise ได้ไหม
|
||||
accepted revise ได้ไหม
|
||||
rejected revise ได้ไหม
|
||||
```
|
||||
|
||||
Recommendation:
|
||||
|
||||
```txt
|
||||
draft: no
|
||||
cancelled: no
|
||||
accepted: yes
|
||||
rejected: yes
|
||||
sent: yes
|
||||
approved: yes
|
||||
```
|
||||
|
||||
ถ้า code ยังไม่ตรง ให้แก้เฉพาะ revision guard
|
||||
|
||||
## Part 4: Approval Readiness
|
||||
|
||||
ตรวจสอบว่า quotation status รองรับ:
|
||||
|
||||
```txt
|
||||
draft
|
||||
pending_approval
|
||||
approved
|
||||
rejected
|
||||
sent
|
||||
accepted
|
||||
lost
|
||||
cancelled
|
||||
revised
|
||||
```
|
||||
|
||||
ยังไม่ต้องสร้าง approval table
|
||||
|
||||
ให้เพิ่ม placeholder action ได้เท่านั้นถ้าจำเป็น:
|
||||
|
||||
```txt
|
||||
Submit for approval
|
||||
```
|
||||
|
||||
แต่ action นี้ยังไม่ต้องทำ workflow จริง
|
||||
|
||||
## Part 5: Documentation
|
||||
|
||||
อัปเดต:
|
||||
|
||||
```txt
|
||||
docs/implementation/technical-debt.md
|
||||
```
|
||||
|
||||
เพิ่ม/ยืนยันหัวข้อ:
|
||||
|
||||
* mixed tax rollup
|
||||
* attachment storage
|
||||
* revision snapshot
|
||||
* CRM foreign keys
|
||||
* approval workflow pending
|
||||
|
||||
ถ้ามี ADR folder ให้สร้าง note ได้:
|
||||
|
||||
```txt
|
||||
docs/adr/0007-quotation-revision-strategy.md
|
||||
docs/adr/0008-attachment-storage-strategy.md
|
||||
```
|
||||
|
||||
## ห้ามทำ
|
||||
|
||||
```txt
|
||||
Approval table
|
||||
Approval workflow
|
||||
PDF generation
|
||||
Dashboard KPI
|
||||
Report
|
||||
Notification
|
||||
```
|
||||
|
||||
## Output
|
||||
|
||||
สรุป:
|
||||
|
||||
1. Files Added
|
||||
2. Files Modified
|
||||
3. Options Seeded
|
||||
4. Revision Rule Confirmed
|
||||
5. Approval Readiness
|
||||
6. Remaining Risks
|
||||
7. Task F Readiness
|
||||
|
||||
## Definition of Done
|
||||
|
||||
Task E.1 ผ่านเมื่อ:
|
||||
|
||||
* quotation options seed ครบ
|
||||
* quotation form ไม่ hardcode option สำคัญ
|
||||
* revision guard ชัดเจน
|
||||
* technical debt updated
|
||||
* approval readiness confirmed
|
||||
* ยังไม่สร้าง approval workflow จริง
|
||||
Reference in New Issue
Block a user