42 lines
5.2 KiB
Markdown
42 lines
5.2 KiB
Markdown
# EDM
|
|
|
|
Enterprise Document Management (EDM) เป็นโปรแกรมสำหรับจัดการข้อมูลเอกสารในองค์กร
|
|
การออกแบบทำสำหรับ ระบบจัดเก็บข้อมูลผลการประเมินบุคคล ซึ่งเป็นระบบย่อยของโปรเจ็ก eHR ของกทม แต่จะออกแบบให้สามารถนำกลับมาใช้ซ้ำได้ในโปรเจ็กอื่นๆ และ เป็นสินค้าตัวต่อไป EDM ถือเป็นหนึ่งในโปรแกรมสำหรับจัดการงานในองค์กร เหมือนกัน
|
|
[EHR](https://1stcraft.com/what-is-ehr/),
|
|
[ERP](https://www.qad.com/th-TH/what-is-erp),
|
|
[EAM](https://th.raceku.com/th/eam-enterprise-asset-management/)
|
|
|
|
## คุณลักษณะปัจจุบัน
|
|
|
|
- เป็น Stand alone Product ไม่ขึ้นกับโปรเจ็กอื่น มีทุกอย่างใน Repository เดียวกัน
|
|
- ใช้ Object Storage(MiniO) เก็บข้อมูล ใช้ minio presigned url ทั้งอัปโหลดและดาว์นโหลด จาก client โดยตรงลดการทำงานของ Backend รองรับไฟล์ขนาดใหญ่เป็นจำนวนมาก และยังมีความปลอดภัย
|
|
- ไม่ใช้ SQL Database ข้อมูลต่างๆใช้จาก MiniO หรือ Elasticsearch เพื่อลดส่วนประกอบของระบบ ต้องการแบบเรียบง่าย
|
|
- จัดทำ index เอกสารด้วย Attachment processory ของ Elasticsearch รองรับเอกสารหลายประเภท รองรับภาษาไทยซึ่งเป็นฟีเจอร์สำคัญของระบบ
|
|
- Integrate ยูสเซอร์กับโปรเจ็กอื่นๆได้ด้วย Single Sign On ของ Keycloak
|
|
- ฟีเจอร์ต่างๆของ MiniO เช่น Version, Quota , metadata อาจจะนำมาใช้ในระบบ
|
|
- bucket notification เพื่อทำ index เอกสารภายหลัง อาจจะใช้ webhook หรือ RabbitMQ ทำให้อัปโหลดเอกสารพร้อมๆกันได้โดยไม่มีปัญหากับประสิทธิ์ภาพการทำ Index
|
|
- ควรรองรับ multi tenant แบ่งตามแผนกหรือบริษัทต่อหนึ่ง bucket สิทธิ์ในการใช้ แบ่งตาม Role
|
|
- login user ค้นหาเอกสารในระบบ อาจจะมี role dm_user เพิ่มเติมเพื่อจัดการเอกสารตัวเอง สามารถสร้างเอกสารส่วนตัวได้ แชร์โฟลเดอร์หรือเอกสาร ให้ยูสเซอร์หรือกลุ่ม ดู group ใน keycloak
|
|
- dm_management: รับผิดชอบแต่ละ tenant ผู้ดูแลระบบระดับสูงกว่านั้นไม่ต้องมีเพราะใช้การจัดการ keycloak แทน
|
|
- ตามความต้องการของ BMA จะใช้ 1 tenant(default) ผู้ใช้งานมีสอง Role
|
|
- dm_management : เป็น role สำหรับจัดการ เพิ่ม ลบ แก้ไขจัดระเบียบ เอกสาร
|
|
- login user: บุคคลเข้าระบบได้ไม่ต้องมี role พิเศษใดๆ ค้นหาและดาว์นโหลดเอกสาร
|
|
|
|
## คุณลักษณะที่ทำเพิ่มในอนาคต
|
|
|
|
อยู่นอกเหนือขอบเขตงานขณะนี้ แต่น่าจะเหมาะกับระบบส่วนอื่นๆ ต้องคุยกับทีมงานก่อน
|
|
- ระบบจัดการเอกสารของยูสเซอร์ สามารถใช้แชร์กันได้
|
|
- จัดทำ Site เพื่อใช้ร่วมกันหรือเผยแพร่
|
|
- preview เอกสาร
|
|
|
|
## Note
|
|
- ELK (Elasticsearch+Kibana) ใช้แบบ unsecure อยู่หลัง firewall น่าจะเพียงพอ อาจจะ[ปรับเพิ่มเรื่องความปลอดภัย](https://vorapoap.medium.com/%E0%B8%95%E0%B8%AD%E0%B8%99%E0%B8%97%E0%B8%B5%E0%B9%88-3-%E0%B8%95%E0%B8%B4%E0%B8%94%E0%B8%95%E0%B8%B1%E0%B9%89%E0%B8%87-security-%E0%B9%83%E0%B8%AB%E0%B9%89%E0%B8%81%E0%B8%B1%E0%B8%9A-elasticsearch-aa26a71b87ff)ในอนาคน
|
|
|
|
## Team
|
|
|
|
- อุ้ม
|
|
- โอ๊ต
|
|
- เตย
|
|
- เน็ต
|
|
- ภัท
|
|
|