Skip to content
This repository has been archived by the owner on Dec 21, 2023. It is now read-only.

this repo create for showing example how to use plant uml and how to seeder data in sequelize using node (javascript)

License

Notifications You must be signed in to change notification settings

billowdev/inventory-system-plantuml-sequelize-seeder-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

inventory-system-plantuml-sequelize-seeder-example

API (example nodejs sequelize seeder and migration)

Node project should be implemented with the typescript I recommend.

Migration

product

 product table
	1. migration create
   		npx sequelize-cli migration:create --name product
	2. run migration
		npx sequelize-cli db:migrate --name 20221027021221-product.js
		npx sequelize-cli db:migrate:undo --name 20221027021221-product.js

category

 category table
	1. migration create
   		npx sequelize-cli migration:create --name category
	2. run migration
		npx sequelize-cli db:migrate --name 20221027022035-category.js
		npx sequelize-cli db:migrate:undo --name 20221027022035-category.js
npx sequelize-cli migration:create --name procut-add-brand-desc-column

seeder

Seed all

npx sequelize-cli db:seed:all

Seed undo all

npx sequelize-cli db:seed:undo:all

categoty

 categoty table
	1. create seeder
		npx sequelize-cli seed:generate --name categoty
	2. seed run
		npx sequelize-cli db:seed --seed 20221027015848-category.js
	2.1 if want to undo
		npx sequelize-cli db:seed:undo --seed 20221027015848-category.js

product

 product table
	1. create seeder
		npx sequelize-cli seed:generate --name product
	2. seed run
		npx sequelize-cli db:seed --seed _2_20221026151755-product.js
	2.1 if want to undo
		npx sequelize-cli db:seed:undo --seed _2_20221026151755-product.js
npx sequelize-cli db:seed --seed _0_20221030110530-user.js
npx sequelize-cli db:seed --seed _1_20221030110603-address.js
npx sequelize-cli db:seed --seed _2_20221027015848-category.js
npx sequelize-cli db:seed --seed _3_20221026151755-product.js
npx sequelize-cli db:seed --seed _4_20221030110548-employee.js
npx sequelize-cli db:seed --seed _5_20221027015734-invoice.js
npx sequelize-cli db:seed --seed _6_20221030110542-customer.js
npx sequelize-cli db:seed --seed _7_20221030110644-order.js
npx sequelize-cli db:seed --seed _8_20221030110638-sell.js
npx sequelize-cli db:seed --seed _9_20221027015839-reciept.js
npx sequelize-cli db:seed --seed _10_20221030110618-promotion.js
npx sequelize-cli db:seed --seed _11_20221030110612-stock.js
npx sequelize-cli db:seed --seed _12_20221030110555-supplier.js
npx sequelize-cli db:seed --seed _13_20221030110628-stock-order.js
npx sequelize-cli db:seed --seed _14_20221030110653-sell-report.js

⚠️ Warning, the object oriented analysis below It only takes 4 days to analyze. There may be a mistake and inaccurate at some point

Use case diagram


จากภาพ _0_usecase-diagram.puml แสดงให้เห็นถึงภาพรวมของระบบทั้งหมด โดยมี Actor ได้แก่ Manager, Financial, Customer, Salesperson, CEO, Supplier โดยหน้าที่แต่ละ Actor มีดังนี้

  1. Manager มีหน้าที่บริหารจัดการสินค้าให้คงคลังสินค้าอยู่เสมอ
  2. Financial มีหน้าที่รับข้อมูลการซื้อขายสินค้าเพื่อจัดทำบัญชีต่อไป
  3. Customer มีหน้าที่ทำให้เกิดการซื้อขายสินค้า
  4. Salesperson มีหน้าที่ขายสินค้าให้กับลูกค้า และจัดการใบสั่งของและใบเสร็จ
  5. CEO มีหน้าที่พิจารณาอนุมัติคำสั่งซื้อ ของรายการสั่งซื้อ เพื่อสต๊อกสินค้า
  6. Supplier มีหน้าที่ขายและจัดส่งสินค้าตามใบสั่งของ

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name จัดการคลังสินค้า (manage stock)
Actor เจ้าหน้าที่จัดการสินค้า (Manager), บริษัทคู่ค้า (Supplier)
Description เจ้าหน้าที่จัดการสินค้า ทำการสต๊อกสินค้าผ่านระบบ
Normal Course 1. เมื่อบริษัทคู่ค้า ทำการส่งสินค้ามาที่คลังสินค้าตรวจสอบและลงรับสินค้า
2. เจ้าหน้าที่จัดการสินค้า เข้าสู่ระบบ โดยใช้ username, password
3. เลือกเมนูจัดการสต๊อกสินค้า
4. ระบบค้นหาข้อมูลการสต๊อกสินค้าทั้งหมดจากฐานข้อมูล
5. ระบบแสดงข้อมูลสต๊อกสินค้าทั้งหมด
6. เลือกเมนู Add Stock เพื่อทำการเพิ่มสต๊อกสินค้า
7. เจ้าหน้าที่ทำการเพิ่มสต๊อกสินค้าตามประเภทสินค้า
8. สิ้นสุดการทำงาน
Alternate Course 1. หากเจ้าหน้าที่ยังไม่เข้าสู่ระบบ ระบบจะ redirect ไปยังหน้า Login
Pre-Condition เจ้าหน้าที่จัดการสินค้าต้องทำการเข้าสู่ระบบก่อน
Post-Condition เจ้าหน้าที่สามารถเลือกเพิ่มสต๊อกสินค้า ตามประเภทสินค้าหรือเช็คสต๊อกสินค้าได้

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name จัดการสินค้า (manage product)
Actor เจ้าหน้าที่จัดการสินค้า (Manager)
Description เจ้าหน้าที่จัดการสินค้า จัดการข้อมูลสินค้าผ่านระบบ
Normal Course 1. เจ้าหน้าที่จัดการสินค้า เข้าสู่ระบบ โดยใช้ username, password
2. ระบบค้นหาข้อมูลสินค้าทั้งหมดจากฐานข้อมูล
3. ระบบแสดงข้อมูลสินค้าทั้งหมด
4. เจ้าหน้าที่เลือกเมนูที่ต้องการ
5. สิ้นสุดการทำงาน
Alternate Course 1. หากเจ้าหน้าที่ยังไม่เข้าสู่ระบบ ระบบจะ redirect ไปยังหน้า Login
Pre-Condition เจ้าหน้าที่จัดการสินค้าต้องทำการเข้าสู่ระบบก่อน
Post-Condition เจ้าหน้าที่สามารถเลือกเมนูที่ต้องการ ได้แก่ เพิ่มสินค้า แก้ไขสินค้า จัดการโปรโมชั่นได้

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name จัดการประเภทสินค้า (manage category)
Actor เจ้าหน้าที่จัดการสินค้า (Manager)
Description เจ้าหน้าที่จัดการสินค้า จัดการประเภทสินค้า
Normal Course 1. เจ้าหน้าที่จัดการสินค้า เข้าสู่ระบบ โดยใช้ username, password
2. ระบบค้นหาข้อมูลประเภทสินค้าจากฐานข้อมูล
3. ระบบแสดงข้อมูลประเภทสินค้าทั้งหมด
4. เจ้าหน้าที่เลือกเมนูที่ต้องการ
5. สิ้นสุดการทำงาน
Alternate Course 1. หากเจ้าหน้าที่ยังไม่เข้าสู่ระบบ ระบบจะ redirect ไปยังหน้า Login
Pre-Condition เจ้าหน้าที่จัดการสินค้าต้องทำการเข้าสู่ระบบก่อน
Post-Condition เจ้าหน้าที่สามารถเลือกเมนูที่ต้องการ ได้แก่ เพิ่มประเภทสินค้า แก้ไขประเภทสินค้า ลบประเภทสินค้าได้

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name จัดการคำสั่งซื้อ (order)
Actor พนักงานขายหน้าร้าน (Salesperson), ลูกค้า (Customer)
Description พนักงานขายหน้าร้านจัดการคำสั่งซื้อที่ได้รับจากลูกค้า
Normal Course 1. ลูกค้าสั่งซื้อสินค้า
2. ระบบเรียกใช้ฟังก์ชัน check stock เพื่อตรวจสอบข้อมูลสต๊อกสินค้า
3. พนักงานขายหน้าร้านต้อง เข้าสู่ระบบก่อน ด้วย Username, Password
4. ระบบค้นหาข้อมูลคำสั่งซื้อจากฐานข้อมูล
5. ระบบแสดงข้อมูลคำสั่งซื้อทั้งหมด
6. พนักงานขายหน้าร้านทำการอนุมัติคำสั่งซื้อ
7. ระบบจัดทำใบสั่งซื้อสินค้าจากคำสั่งซื้อของลูกค้า
8. พนักงานขายหน้าร้านตรวจสอบใบสั่งซื้อของลูกค้า
9. พนักงานขายหน้าร้านเลือกเมนู พิมพ์ใบสั่งซื้อ
10. ระบบพิมพ์ใบสั่งซื้อสินค้า
11. สิ้นสุดการทำงาน
Alternate Course 1. หากสต๊อกสินค้าไม่เพียงพอ ระบบจะทำการยกเลิกคำสั่งซื้อ
2. หากพนักงานยังไม่เข้าสู่ระบบ ระบบจะ redirect ไปยังหน้า Login
Pre-Condition สินค้าในสต๊อกต้องเพียงพอต่อคำสั่งซื้อของลูกค้าพนักงานขายสินค้าจะต้องเข้าสู่ระบบก่อนจะดำเนินการจัดการคำสั่งซื้อของลูกค้าได้
Post-Condition พนักงานขายสินค้า สามารถจัดการทำสั่งซื้อของลูกค้าจากเมนูต่างๆ ได้แก่ แก้ไขคำสั่งซื้อ ยกเลิกคำสั่งซื้อ ต่อไปได้

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name จัดการใบสั่งของ (manage invoice)
Actor พนักงานขายหน้าร้าน (Salesperson)
Description พนักงานขายหน้าร้านจัดการใบสั่งของ ที่ได้จากคำสั่งซื้อ
Normal Course 1. พนักงานขายหน้าร้านทำการเข้าสู่ระบบด้วย username, password
2. ระบบค้นหาข้อมูลใบสั่งของจากฐานข้อมูล
3. ระบบแสดงข้อมูลใบสั่งของทั้งหมด
4. พนักงานขายหน้าร้านเลือกเมนูที่ต้องการ
5. สิ้นสุดการทำงาน
Alternate Course 1. หากเข้าสู่ระบบไม่สำเร็จระบบจะทำการ redirect ไปยังหน้า Login
Pre-Condition พนักงานขายหน้าร้านต้องเข้าสู่ระบบก่อน
Post-Condition พนักงานขายหน้าร้านสามารถเลือกเมนูต่างๆ ได้แก่ แก้ไขใบสั่งของ สร้างใบสั่งของ
พิมพ์ใบสั่งของ พนักงานขายหน้าร้านได้ใบสั่งของจากระบบ

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name จัดการคำสั่งซื้อ (sell)
Actor พนักงานขายหน้าร้าน (Salesperson)
Description พนักงานขายหน้าร้านจัดการ การขาย
Normal Course 1. พนักงานขายหน้าร้าน ต้องทำการเข้าสู่ระบบ ด้วย username, password
2. ระบบค้นหารายการขายทั้งหมดจากฐานข้อมูล
3. เจ้าหน้าที่ขายสินค้าตามคำสั่งซื้อ
4. ระบบสร้างใบเสร็จ
5. ระบบพิมพ์ใบเสร็จ
6. สิ้นสุดการทำงาน
Alternate Course 1. หากเข้าสู่ระบบไม่สำเร็จระบบจะทำการ redirect ไปยังหน้า Login
Pre-Condition พนักงานขายหน้าร้านต้องเข้าสู่ระบบก่อน
Post-Condition พนักงานขายหน้าร้านได้ใบเสร็จจากระบบ

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name จัดการใบเสร็จ (manage receipt)
Actor พนักงานขายหน้าร้าน (Salesperson)
Description พนักงานขายหน้าร้านจัดการใบเสร็จ
Normal Course 1. พนักงานขายหน้าร้านทำการเข้าสู่ระบบด้วย username, password
2. ระบบค้นหาข้อมูลใบเสร็จงจากฐานข้อมูล
3. ระบบแสดงข้อมูลใบเสร็จทั้งหมด
4. พนักงานขายหน้าร้านเลือกเมนูที่ต้องการ
5. สิ้นสุดการทำงาน
Alternate Course 1. หากเข้าสู่ระบบไม่สำเร็จระบบจะทำการ redirect ไปยังหน้า Login
Pre-Condition พนักงานขายหน้าร้านต้องเข้าสู่ระบบก่อน
Post-Condition พนักงานขายหน้าร้านสามารถเลือกเมนูต่างๆ ได้แก่ แก้ไขใบเสร็จ สร้างใบเสร็จ พิมพ์ใบเสร็จ

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name รายงานคำสั่งซื้อ (Sell report)
Actor เจ้าหน้าที่จัดการสินค้า (Manage), ฝ่ายดูแลบัญชี (Financial)
Description เจ้าหน้าที่จัดการสินค้าจัดการ รายงานการขาย และฝ่ายบัญชีสามารถดูข้อมูลรายวานการขายได้
Normal Course 1. เจ้าหน้าที่จัดการสินค้าหรือฝ่ายดูแลบัญชี ทำการเข้าสู่ระบบด้วย username, password
2. ระบบค้นหาข้อมูลรายงานการขายจากฐานข้อมูลทั้งหมด
3. แสดงข้อมูลรายงานการขายจากฐานข้อมูลทั้งหมด
4. ฝ่ายดูแลบัญชีสามารถดูข้อมูลรายงานการขายได้
5. เจ้าหน้าที่จัดการสินค้าสามารสร้างรายงานการขาย และแก้ไขรายงานการขายได้
Alternate Course 1. หากเจ้าหน้าที่หรือฝ่ายดูแลบัญชี เข้าสู่ระบบไม่สำเร็จระบบจะทำการ redirect ไปยังหน้า Login
Pre-Condition เจ้าหน้าที่จัดการสินค้าหรือฝ่ายบัญชีต้องเข้าสู่ระบบก่อน
Post-Condition เจ้าหน้าที่จัการสินค้า ดูข้อมูลรายงานการขาย สร้างรายงานการขาย แก้ไขรายงานการขาย และฝ่ายบัญขีสามารถดูข้อมูลรายงานการขายได้

รายละเอียดยูสเคส (usecase description)

Title Description
Use case Name สร้างรายการคำสั่งซื้อสินค้าจาก supplier (Create stock order)
Actor เจ้าหน้าที่จัดการสินค้า (Manager), ผู้บริหารระดับสูง (CEO), บริษัทคู่ค้า (Supplier)
Description เจ้าหน้าที่จัดการสินค้าสร้างรายการคำสั่งซื้อเพื่อสต๊อกสินค้า
Normal Course 1. เจ้าหน้าที่จัดการสินค้า เข้าสู่ระบบด้วย username, password
2. เจ้าหน้าที่จัดการสินค้าตรวจสอบสต๊อกสินค้า
3. เจ้าหน้าที่จัดการสินค้าสร้างรายการสั่งซื้อสินค้าเพื่อสต๊อกสินค้า
4. เจ้าหน้าที่จัดการสินค้า เลือกเมนูส่งให้ผู้บริหารระดับสูงพิจารณารายการสั่งซื้อ
5. ผู้บริหารระดับสูงเข้าสู่ระบบ เข้าสู่ระบบด้วย username, password
6. ระบบค้นหาข้อมูลรายการสั่งซื้อเพื่อสต๊อกสินค้าที่รอการพิจารณาทั้งหมด จากฐานข้อมูล
7. ผู้บริหารระดับสูงพิจารณารายการสั่งซื้อสินค้า
8. ผู้บริหารระดับสูงยืนยันรายการสั่งซื้อสินค้าจากบริษัทคู่ค้า
9. เจ้าหน้าที่จัดการสินค้า ดำเนินการสั่งซื้อสินค้าจากบริษัทคู่ค้า
10. บริษัทคู่ค้าจัดส่งสินค้าไปที่คลังสินค้าตามใบสั่งซื้อสินค้า
11. สิ้นสุดกระบวนการ
Alternate Course 1. หากเจ้าหน้าที่จัดการสินค้า เข้าสู่ระบบไม่สำเร็จระบบจะทำการ redirect ไปยังหน้า Login
5. หากผู้บริหารระดับสูง เข้าสู่ระบบไม่สำเร็จระบบจะทำการ redirect ไปยังหน้า Login
Pre-Condition เจ้าหน้าที่จัดการสินค้าต้องเข้าสู่ระบบก่อน
ผู้บริหารระดับสูงต้องเข้าสู่ระบบก่อน

| | Post-Condition | เจ้าหน้าที่จัดการสินค้าทำการสร้างรายการสั่งซื้อสินค้า ผู้บริหารระดับสูงได้พิจารณารายการสั่งซื้อและยืนยันรายการสั่งซื้อ |

class


sequence





















About

this repo create for showing example how to use plant uml and how to seeder data in sequelize using node (javascript)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published