1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Công nghệ thông tin: Xây dựng hệ thống quản lý kho tại công ty TNHH TMTP Hoàng Ngọc

111 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Hệ Thống Quản Lý Kho Tại Công Ty TNHH TMTP Hoàng Ngọc
Tác giả Nguyễn Tuấn Kha, Nguyễn Ngọc Huy
Người hướng dẫn ThS. Võ Ngọc Tân, TS. Nguyễn Gia Tuấn Anh
Trường học Đại học Quốc gia TP.Hồ Chí Minh
Chuyên ngành Công nghệ thông tin
Thể loại khóa luận tốt nghiệp
Năm xuất bản 2022
Thành phố TP.Hồ Chí Minh
Định dạng
Số trang 111
Dung lượng 58,81 MB

Nội dung

Lay nguồn cảm hứng từ những ứng dụng như vậy, chúng tôi quyết định timhiểu và xây dựng một hệ thống với chức năng hỗ trợ cho công việc quản lý kho hàng.. Khi đó các hệ thống quản lý kho

Trang 1

ĐẠI HỌC QUOC GIA TP.HO CHÍ MINH TRUONG DAI HOC CONG NGHE THONG TIN KHOA KHOA HOC VA KY THUAT THONG TIN

NGUYEN TUAN KHA

NGUYEN NGỌC HUY

KHOA LUAN TOT NGHIEP

BUILDING A WAREHOUSE MANAGEMENT SYSTEM AT

HOANG NGOC FOOD TRADING COMPANY LIMITED

CU NHAN NGANH CONG NGHE THONG TIN

TP.HO CHi MINH, 2022

Trang 2

ĐẠI HỌC QUOC GIA TP.HO CHÍ MINH TRUONG DAI HỌC CONG NGHỆ THONG TIN KHOA KHOA HOC VA KY THUAT THONG TIN

NGUYEN TUAN KHA

NGUYEN NGỌC HUY

KHOA LUAN TOT NGHIEP

XAY DUNG HE THONG QUAN LY KHO TAI CONG

TY TNHH TMTP HOANG NGOC

BUILDING A WAREHOUSE MANAGEMENT SYSTEM AT

HOANG NGOC FOOD TRADING COMPANY LIMITED

CU NHAN NGANH CONG NGHE THONG TIN

GIANG VIEN HUONG DAN

ThS VO NGOC TAN

TS NGUYEN GIA TUAN ANH

Trang 3

THONG TIN HOI DONG CHAM KHÓA LUẬN TOT NGHIỆP

Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định só

T8ầYy của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

Trang 4

LỜI CẢM ƠN

Dé hoàn thành khóa luận này, chúng tôi xin gửi lời cảm ơn chân thành nhất

đến quý thầy cô của trường Dai học Công nghệ thông tin — Dai học Quốc gia Thành

phố Hồ Chi Minh, bạn bè trong và ngoài trường, đã chỉ bao, quan tâm, giúp đỡ tậntình trong suốt quá trình học tập ở trường nói chung và trong quá trình thực hiện đề

tài nói riêng Nhờ đó chúng tôi đã có thêm nhiều kinh nghiệm đề xử lý những khókhăn, thử thách và hoàn thành đề tài này

Chúng tôi xin gửi lời cảm ơn sâu sắc nhất đến TS.Nguyễn Gia Tuấn Anh và

Ths.Võ Ngọc Tân, là người đã trực tiếp hướng dẫn, định hướng chuyên môn, quantâm, giúp đỡ tận tình và tạo mọi điều kiện thuận lợi trong quá trình thực hiện đồ ánchuẩn bị tốt nghiệp

Trong thời gian làm khóa luận, ngoài những kiến thức đã học, chúng tôi đãđược học tập, tìm hiéu rất nhiều kiến thức mới, những trải nghiệm bỏ ích Đồng thời

được sự hướng dẫn tận tình, cùng những góp ý của người thầy hướng dẫn chúng tôi

đã tích lũy được nhiều kinh nghiệm cho bản thân, phục vụ cho công việc sau này

Nhóm xin gửi lời cảm ơn đến Công ty TNHH TMTP Hoàng Ngọc vì đã hỗ trợ

nhóm trong quá trình tìm hiểu qui trình quản lý kho tại công ty

Mặc dù chúng tôi đã cô gắng nô lực dé hoàn thành khóa luận của mình, nhưngkhó tránh khỏi sai sót, rất mong nhận được sự góp ý và chỉ bảo của quý Thầy Cô dé

dé tài được tốt hơn

Lời cuối cùng chúng tôi muốn nói lời cảm ơn đến tất cả mọi người đã giúp đỡ

chúng tôi có được ngày hôm nay.

TP.Hồ Chí Minh, tháng 07 năm 2022

Sinh viên thực hiện

Nguyễn Tuấn Kha — Nguyễn Ngọc Huy

Trang 5

MỤC LỤC

Chương 1: GIỚI THIỆU 22 2-52 ©SE2EE£EEESEESEEE2EE2EE2117117112711271211 211.1 2

1.1 Lý do chọn đề tài 2- 52c s2 2212711211211 1121112111 1g ng ng 2

1.2 C000) 00) 3

1.3 Đối tượng nghiên cứu - 2-2222 2221C2212221127112711227112211221112112 211211 2e 3

1.4 Quy trình quan lý kho tại công ty Hoàng Ngọc ScSSc Series 4

2.3 Công nghệ Reacf.]S -.- - S n1 S2 HH HH HT TH HH TH tiệt 10

2.4 Tìm hiểu công nghệ Node1Js 2-5 52 2 9E 2 2212712112112 rre, 15 2.5 Tìm hiểu hệ quan trị cơ sở dữ liệu quan hệ MySQL -2 555552 20

2.6 Các công cụ sử dụng trong đề tài - 25-252 2212211222112 ee 21

Chương 3: PHAN TÍCH VA THIET KE HE THÓNG 2© 2++z+zxzzre 22

3.1 Các hệ thống quản lý Kh0 oo cccecccccccecsessseessesssesssesssesssessvessecssesssesssesseessessseessecssess 22

3.1.1 Phần mềm quan lý kho ERP — SHINNOVA ©2222222c22xecczEcerrerre 22

3.1.2 Phần mềm quan lý kho 3S ïWAREHOUSE À 22-52c22Scczcccccerrcee 23

3.2 Phân tích yêu cầu, xây dựng tính năng 2- -2-+22<c22E2221 C2212 C2EcEErcee 25

3.2.1 Bai tami - 25

3.2.2 Phân tích yêu cầu của nhân viên đối với hệ thống 2- 555cc 25 3.2.3 Phân tích yêu cầu của quan lý kho đối với hệ thống 26

Trang 6

3.2.4 Phân tích, đánh giá yêu cầu đối với việc bảo mật thơng tin 28

3.3 Thiết kế giao diện cho hệ thống 22-222 222 22122112211221122711 2222 ee 30 3.4 Thiết kế hệ thống - 2-22 2222x232 1021107112711211121121171111E 011.111 xe 31

3.4.1 Xác định các Actor và Usecase của hệ thống iiiaaăăậảảiảỶẢỶÝẢỶẢ 31 3.4.2 Sơ đồ Usecase tổng quát - 22 2s x2 2211271121121 111011101 1e 32 3.4.3 Sơ đồ Usecase chỉ tiết 50c 2L 22 2 221122211212122111211211 re 33 3.4.4 Sơ đồ hoạt động - 5 2s 22 2222 2211221121110712211211211211012 re 49 3.4.5 Sơ đồ tuần tự - 2c 2212222122122211221122112211221221122111221 re 64 3.4.6 Thiết kế CSDL hệ thong - 2-2229 1212212117111 xe 64

Chương 4: KÉT QUÁ XÂY DỰNG HỆ THĨNG QUẢN LÝ KHO HÀNG CƠNG TY

TNHH TMTP HỒNG NGỌC -52-©21221221112211222122211211121112111 ke 75

4.1 Kết quả đạt ẨƯỢC - LH HH TT HH nh TH HH TT nghệ 75 4.2 Giao diện hệ thống - 2-5 S2 2E E2122112112111211211211 112112121 1EEerre 76 Chương 5: KET LUẬN VA HUONG PHAT TRIEN -2-©5222ccccxcsrxerreerrs 78

5.1 Kết Mam occ cecccccccccsccssesssesssessvessvcssvcssscssecsvessucssecssecssesssecsucssecssvessesssessuessecsseesseceees 78 5.2 Hướng phat triỄn - 2-5222 SE92E2E12E15712112112112117112112112111121121 11g 78 TÀI LIEU THAM KHẢO 22-252 22S22E2 22122211221122112271122212211121112111211 2 cee 79

Trang 7

PHỤ LỤC

Phụ Lục I: SƠ DO TUẦN TU HE THONG QUAN LÝ KHO HÀNG

Phụ Luc Il: GIAO DIEN CÁC CHỨC NANG CUA HE THÓNG

Trang 8

12: Socket.io - Kết nối client - S€TV€F -2:252c22St 222 2k2 E2EEtEELerkrrerkrree 20

13: Tương tác giữa client - server trong môi trường MySQL

1: Giao diện phần mềm quan lý kho ERP-SHINOVA

2: Giao diện phan quản lý kho 3S iWAREHOUSE (App)

3: Bản phác thảo giao diện hệ thống - -2-©222+22E2EEE222122221221122212222.cee 4: Sơ đồ Usecase hệ thống quản lý kho hàng - 2: ¿222++22x+t2zxztrxxsres 32

5: Sơ đồ usecase đăng nhập 2 2c s2 x2 221127112111211 111111111 re 33

6: Sơ đồ Ussecase chức năng cơ bản của hệ thống - 2+ 2+cs+cx+cxrzezreee 37

7: Sơ đồ Usecase quản lý - + + E1 E12 1 211021121112111 211.110.1111 re 42

8: Sơ đồ Usecase quản lý kho - ¿2-52 2E2EE9EEEEE211271271711211211 217121 creE 46 9: So đồ hoạt động đăng nhập o cceccceccescsesssesssesssesssesssessecssesssecssesssessusssesesecssessees 49 10: Sơ đồ hoạt động đăng xuất -2-©22+2EcSEE22E1 2212117112711 EEcxe 50 11: Sơ đồ hoạt động trên trang cá nhân 2- 2 +2+2E+Ex++Ex+ExrrExrrrerrreres 51 12: Sơ đồ hoạt động nhập hang c ccccceccscsssesssesssessessecsecssesssesssesseessesssesssecsseesees 52 13: Sơ đồ hoạt động xuất hàng - ¿22+ 1 2211222122211211122112211 211 cty 53 14: Sơ đồ hoạt động trang công việc ¿- 22-22222221 22211222122211 221 2E crye 54 15: Sơ đồ hoạt động trang tổng quan 2¿-©2+22++222122311221222112212 221 crye 55

16: Sơ đồ hoạt động quản lý kho - tổng QUath e.cccesccscsesssessseesssesssesssessssessseeeeee 56

Trang 9

20: Sơ đồ hoạt động quan lý nhân viên - danh sách nhân viên - 60

21: Sơ đồ hoạt động quan lý nhân viên - thêm nhân viên -+¿ 61 22: So đồ hoạt động trang báo CAO voecceeccessscsssesssesssesssesseessecssecssesssesssesseesseesseesseesses 62 23: Sơ đồ hoạt động xem thông báo 2- 22222 +2Ec2 E2 E22EE22112E122E12Excrrree 63 24: Mối quan hệ giữa các bảng trong database -2 22©22+22xzc22xSEEE re 70 25: Mối quan hệ giữa bảng SanPham — LoaiSanPham -2-©z+2+¿+c22 70 26: Mối quan hệ giữa bảng Nhan Vien — Group — GroupRole — Role 71 27: Mối quan hệ giữa bảng SanPham — NhapKho — LoaiSanPham — NhanVien 72 28: Mối quan hệ giữa bảng SanPham — XuatKho — LoaiSanPham — NhanVien 73

29: Mối quan hệ giữa bang SanPham — KhoHang — LoaiSanPham 74

1: Giao diện trang đăng nhập - ¿5c + +2 ‡srsrsrererrsree TÔ

2: Giao diện dành cho nhân viên quản lý 77

3: Giao diện dành cho nhân viên kho - 5 523322322 *£+£+£eE+zEeeeeeessecs T7

I: Giao diện trang đăng nhẬp -.- c2 S11 911311211 911 11119 1 11 1 1 ke, 92

II: Giao diện trang xuất hàng 2-2212 EEEEEE E2 E121 cEEcrrk 93

TH: Giao diện trang CONG VIỆC - - c1 E91 15115115111 1 1 1111119 vn gi, 94

IV: Giao diện trang cá nhân - 5c 3 3 3233318211211 EErrkrrkrrrrrrvre 94

V: Giao diện trang tông quan -2-©22¿22+2222122112221227112711221122111 211.2 ee 95

VI: Giao điện quản lý kho- tổng quan -2- 22 52E+2EEt2EEt2EEtEEEerEeerxeerkerred 96 VIL: Giao điện quản lý kho - xuất nhập ¿- 2-©2¿+2E2EE+£EEtEEEzEErerkrrrrrrred 96 VIII: Giao điện quản lý kho - danh sách sản phẩm -2- 2 52+czz+cxesce2 97 IX: Giao diện quản lý kho - thêm sản phẩm - 2: 22+z++2£xczzxrzrerrex 97

X: Giao diện quản lý nhân viên - thêm nhân viên -¿- +5 5+ c+x++<+*£+e+ss+ 98

XI: Giao diện quản lý nhân viên - danh sách nhân viên - - -+- 98

XIE Giao diện thông báo - c1 2t 1 1S vn TH TH TH ngàn ưệt 99

XIIH: Giao diện quét mã vạch -:- ¿2 ++ E11 *1** + EEESEESESkEekErkrrkerkereree 100

XIV: Giao diện sơ đồ kho -ccccccctnEEttrrrerrrue 100

Trang 10

DANH MUC BANG

1: Dac ta Usecase dang nha on eee ẦẦ - 35

2: Đặc ta Usecase chức năng cơ bản của hệ thống -2-©25¿©cs+cxz+cxzsrxcee 41

3: Dac tả Usecase quản Ìý 1k TH TH TT TH nh Hàn ngư 45

4: Đặc tả Usecase quản lý kho ccc kh T HH TH TH net 48

5: Bang loai sam pam 8n a4a1 ố 64 6: Bang san phẩm (Table SamPham) 0 cc.csccsssessssssssessssesssesssessssesssessssessseeseseee 65

7: Bảng nhân viên (Table NhanVien) :.c:cecesceceseessesceeeseeeeeeeseeeceeeseeeeeeeaeeaeeeens 66

8: Bang quyên han user (Table Group) 2-2: 52 +2+EE+EEeEE2EESEEEEErrkerrrerreree 66

9: Bang Group — Role (Table GroupRole) cecececceseeceseeseeeeeeeeeeeseeseeeeeeseeeens 67 10: Bang Role (Table RỌ€) - -.- c2 S122 E1 1E121 15112151 1111111211 111111 111 tr tk, 67

11: Bang xuất kho (Table XuatKho) c.ccesscesscesssessessesssesssesssesssessesseesseesseesseessees 68

12: Bảng nhập kho (Table NhapKho) - ¿- ¿52 52 *2+*+E+£+tEsxexsexerexseres 69

13: Bảng kho hang (Table KhoHang) - - + 5c xxx serrsrekrerkrek 69

I: Mơ tả chức năng trang nhập hang - - - - 5 2c S SE E3 E+E++EEEerrreskksekree 92

II: Mơ tả chức năng trang xuất hàng - 5+ ©522Ss+EE£EEt2EE2EEEEE2EE2EEEEEEErrrrex 93

IIT: Mơ tả chức năng trang cơng VIỆC - - + + tt * St **EEEkErrskrresrrrrereree 94

IV: Mơ tả chức năng trang tổng quan -2- 22 52+2E2EE£2EEt2EEtEEEtEEeerkesrkrrred 95

Trang 11

DANH MỤC TỪ VIET TAT

Từ viết tắt Mô tả

CSDL Cơ sở dữ liệu

Những công cụ và thư viện mà các nhà phát triên khác đã tao dé

Framework đạt được một mục tiêu kỹ thuật cụ thé hoặc dé làm cho việc phát

triển bằng một ngôn ngữ cụ thé dé dang hon

UI Viết tắt của từ User Interface có nghĩa là giao diện người dùng

Trang 12

TÓM TAT KHÓA LUẬN

Theo bước chân phát triển của công nghệ thông tin, hiện nay công nghệ thôngtin đã và đang được ứng dụng vào nhiều lĩnh vực trong cuộc sống, từ các công việcvăn phòng đến các công việc liên quan đến sản xuất đều có mặt những ứng dụng

của công nghệ thông tin.

Nhằm mục tiêu giảm thiêu công việc giấy tờ, day nhanh tốc độ làm việc, nhiều

công ty đã ứng dụng công nghệ thông tin vào các công việc lưu trữ dữ liệu Không

ngoài mong đợi, việc sử dụng công nghệ thông tin để lưu trữ dữ liệu thay cho tài

liệu mới mang đến nhiều kết quả tốt đẹp, tốc độ xử lý nhanh, khả năng quản lý dễdàng, truy xuất dữ liệu nhanh Nhưng nếu chỉ đơn thuần sử dụng các công cụ lưutrữ chung như excel, word đối với lượng dữ liệu lớn rất dễ xảy ra Sai sót, việc tìmkiếm truy xuất dữ liệu cũng khá khó khăn Hơn nữa đòi hỏi người sử dụng cần có

lượng kiến thức, kỹ năng nhất định đối với ứng dụng này

Đề cải thiện van dé đó các ứng dụng hỗ trợ quản lý, lưu trữ dit liệu ra đời vớithiết kế thân thiện, chức năng phù hợp giúp người dùng không cần có quá nhiều

kiến thức chuyên môn cũng có thé sử dụng

Lay nguồn cảm hứng từ những ứng dụng như vậy, chúng tôi quyết định timhiểu và xây dựng một hệ thống với chức năng hỗ trợ cho công việc quản lý kho

hàng Mặc dù không phải là hệ thống đầu tiên hướng đến việc quản lý kho nhưng hệ

thống của chúng tôi hướng đến sự đơn giản cho người dùng và hiệu quả cho việcquản lý đối với người dùng có trình độ nghiệp vụ không cao

Với mục tiêu có thể xử lý đữ liệu hiệu quả, chúng tôi quyết định sử dụng công

nghệ NodeJs dé hỗ trợ xử lý bên phía Back-end Với Front-end chúng tôi tìm hiểucông nghệ ReactJs, một trong những công nghệ Front-end đang được nhiều lập trình

viên và công ty tin dùng Ngoài ra việc sử dụng công nghệ mới và mạnh mẽ giúp

hệ thống có không gian phát trién mạnh mẽ, đối với việc nâng cấp hệ thống sau này

cũng trở nên dé dàng hơn.

Trang 13

Chương 1: GIỚI THIỆU

1.1 Lý do chọn đề tài

Công việc quản lý không bao giờ là đơn giản, nó đòi hỏi người quản lý có

những kinh nghiệm, kiến thức liên quan dé có thé hoàn thành tốt công việc Lúctrước công việc quản lý thường được sử dụng dưới dạng giấy tờ và làm thủ công,

đến khi công nghệ phát triển, người ta sử dụng các ứng dụng như Excel, Access,

nhằm hỗ trợ công việc quan lý.

Nhưng những ứng dụng này không cách nào hỗ trợ tốt đối với sự phát triển lâu

dài của công ty Khi dữ liệu nhập vào ngày càng lớn, nhu cầu đối với việc xử lý dữ

liệu tăng nhanh, các ứng dụng cũ đã không đáp ứng được nhu yêu cầu của người sử

dụng Khi đó các hệ thống quản lý kho xuất hiện với những tính năng nổi bật, xử lý

dữ liệu nhanh chóng và cùng với những tính năng nâng cao giúp việc quản lý dễ

dàng hơn bắt đầu được các công ty hướng đến Tuy nhiên trong các người dùngluôn có những người muốn đôi mới công nghệ nhưng những ứng dụng quản lý hiệntại có rất nhiều tính năng, và cần có những kiến thức chuyên môn nhất định dé sửdụng có hiệu quả, và hơn nữa chi phí dé thuê hoặc xây dựng một ứng dụng như thé

cho công ty khá cao, họ không thê nào đáp ứng được

Chính vì vậy nhóm chúng tôi quyết định tìm hiểu, nghiên cứu và xây dựng

một hệ thống có khả năng phát triển cao nhưng vẫn đảm bảo tính đơn giản, dễ sử

dụng, chi phí thấp nhằm hỗ trợ cho những công ty nhỏ sử dụng hoặc các công ty

đang phát triển có thé sử dụng trong giai đoạn đầu và có thé phát triển theo sự phát

triên của công ty.

Ngoài ra thành viên trong nhóm chúng tôi đã có cơ hội làm việc tại công ty

TNHH TMTP Hoang Ngọc một thời gian Trong quá trình làm việc tại đây tôi có

tham gia vào hoạt động nhập, xuất kho Tại đây quá trình nhập xuất kho được làm

hoàn toàn thủ công Dữ liệu nhập vào và xuất ra được lưu trữ trên giấy và được

quản lý bởi ứng dụng Excel Tuy nhiên việc này có nhiều hạn chế, mỗi ngày công ty

Trang 14

sản xuất nhiều sản phẩm khác nhau cũng như xuất kho rất nhiều lần trong ngày.

Việc lưu trữ thống kê bằng thủ công dé gây nhằm lẫn và mắt nhiều thời gian dé thựchiện Hơn nữa đôi khi còn xảy ra tình trạng thống kê sót khiến một phần sản phẩmtồn kho bị quá hạn gây thiệt hại cho công ty

Các sản pham của công ty chủ yếu là thực phẩm tươi, có hạn sử dụng ngắn

như: bánh mì tươi, bánh flan, rau câu, Vì vậy hệ thống quản lý kho phủ hợp cho

công ty cần quản lý theo hạn sử dụng dé dam bảo không tồn hàng hết hạn, có théquản lý kho hiệu quả, không tồn đọng Nhưng đối với các hệ thống mà nhóm tìm

hiểu, nghiên cứu họ không quản lý theo cách này Vì vậy công ty cần xây dựng một

hệ thống riêng phù hợp với mình

Vì vậy với vai trò lập trình viên cũng như xuất phát từ thực trạng công ty

chúng tôi mong muốn xây dựng một hệ thống quản lý kho nhằm giúp việc quản lý

trở nên dé dàng, nhanh chóng và chính xác hơn.

1.2 Giới thiệu công ty

Tên công ty: Công ty TNHH TMTP Hoàng Ngọc

Địa chỉ: 71/3c ấp Bắc Lân - Xã Bà Điểm - Huyện Hóc Môn - TP Hồ Chí Minh

Lĩnh vực kinh doanh: Thực phẩm: các loại bánh như: bánh Flan, bánh bông lan,

Mô tả: Công ty TNHH TMTP Hoàng Ngọc chuyên sản xuất các loại bánh flan, raucâu, sữa chua, bánh mì, cung cấp cho các trường mam non, bán trú , nội trú,

Chính thức hoạt động từ năm 2017, cho đến nay công ty luôn là một trong những

thương hiệu an toàn, đạt được sự ủng hộ của nhiều trường học trên địa bàn thành

phố Hồ Chí Minh và các tỉnh thành lân cận

1.3 Đối tượng nghiên cứu

Hệ thống quản lý kho là một hệ thống cung cấp các chức năng riêng biệt dànhcho công việc quản lý kho như xuất nhập kho, quản lý số lượng hàng hóa trong khohàng, Đối với từng loại hàng hóa khác nhau có những yêu cầu cụ thể khác nhau

Trang 15

Đề công việc quản lý kho diễn ra nhanh chóng va dé dàng không xuất hiện saisót thì website cần được đồng bộ thời gian thực và được cập nhật liên tục ngay khi

có thay đổi, việc này nhằm đảm bảo không xảy ra sai sót số liệu trong quá trìnhnhập xuất dữ liệu

Đối với công việc quản lý, việc nắm bắt nhanh các số liệu cần thiết là một điều

hết sức quan trọng Trong quản lý kho cũng vậy, việc nam bắt, thống kê tình hình

hàng hóa xuất nhập kho có thê đưa ra các báo cáo chỉ tiết giúp doanh nghiệp nhậnbiết xu hướng hàng hóa tiêu thụ, cũng giảm thiệt hại do sơ xuất trong quá trình nhập,

xuất kho Dé công việc thống kê trở nên trực quan và dé hiểu hơn, người ta thường

sử dụng các biéu đồ dé thé hiện Thay vì nhìn vào số liệu thô, biểu đồ giúp ngườiquản lý có cái nhìn tổng quan hon, vì vậy trong hệ thống, biểu đồ thống kê đóng vai

trò tích cực trong hỗ trợ người dùng.

1.4 Quy trình quản lý kho tại công ty Hoàng Ngọc

Mỗi ngày công ty sản xuất nhiều sản phâm khác nhau Vì vậy thời gian nhậphàng vào kho dé bảo quan cũng khác nhau Sản phẩm ngay sau khi sản xuất cần

ngay lập tức chuyên vào kho dé bảo quản nhằm đảm bao sự tươi ngon của thực

phẩm Hơn nữa, các sản phẩm xuất kho cũng không theo một khoản thời gian nhất

định, khi nhận được đơn hàng thì sản phẩm sẽ được xuất kho và chuyển đi tại bất kìthời điểm nào

Chính vì vậy công việc thống kê các sản phâm nhập, xuất kho mỗi ngày khákhó khăn và tốn nhiều thời gian Ngoài ra, vì sử dụng phương pháp lưu trữ thủ công,

mỗi ngày chỉ cập nhật dữ liệu một lần nên việc thống kê dễ dàng xảy ra thiếu sót

Trước khi bắt đầu sản xuất một sản phẩm nào đó, nhân viên quản lý kho cầncung cấp số lượng hàng tồn trong kho cũng như số lượng theo hạn sử dụng của sảnphẩm, việc thống kê thủ công nhân viên quản lý cần tự mình thực hiện, kiểm kê nên

không thể lập tức phản hồi

Trang 16

1.5 Mục tiêu đề tài

Kết thúc đề tài, kết quả thu được là một hệ thống quản lý kho hàng với giaodiện được thể hiện trên nền tảng web Hệ thống hoàn thiện bao gồm các chức năng:

xuất hàng, nhập hàng, quản lý kho hàng, quản lý nhân viên, hỗ trợ viết báo cáo

Hệ thống hoàn thiện sẽ quản lý sản phẩm trong kho theo ngày sản xuất, nhữngsản phẩm nhập vảo trước, sắp hết hạn sẽ được ưu tiên xuất ra trước, có chức năngthông báo khi có sản phẩm hết hạn, sắp hết hạn

Vi vay dé hoan thanh muc tiéu, chúng tôi thực hiện theo ba bước:

Bước đầu tiên: Tìm hiéu về các hệ thống quan lý kho hiện có tại Việt Nam và

trên thế giới Nhằm phục vụ cho việc phát triển hệ thống quản lý kho hàng, việcnghiên cứu, phân tích quá trình vận hành, hoạt động của các hệ thống hiện có là hếtsức cần thiết Việc nghiên cứu đặt nền tảng cho việc xây dựng và phát triển hệ

thống sau này Tìm hiểu công nghệ, mã nguồn mà các hệ thống hiện nay đang sửdụng Ngoài ra tìm hiéu một số hệ thống được nhiều công ty sử dụng tại Việt Nam

Bước thứ hai: Phân tích, thiết kế, và cách thức quản lý của hệ thống dựa trênnhững gi tìm hiểu được Từ những thông tin tìm hiểu được từ việc trải nghiệm, tìmhiểu, phân tích các hệ thống phát họa nên cấu trúc ban đầu của hệ thống quan lý kho

Thu thập thông tin, xây dựng cơ sở dữ liệu người dùng cũng như phát thảo nên các

chức năng, phân quyên hệ thống cần được quyết định Ngoài ra cần vẽ được sơ đồUsecase cho hệ thống cũng như xác định và phân bồ thời gian thực hiện

Bước thứ ba: Xây dựng hoàn thiện hệ thống va có thé đưa vào sử dụng Giao

diện hệ thống chính là “bộ mặt” của hệ thống Hệ thống muốn dé người dùng lựa

chọn sử dụng nó thì giao diện nhất định phải “ưa nhìn”, có bố cục hợp lý, thuận

tiện cho việc thao tác và mang tính tương tác cao đối với người dùng Đối với

back-end, khi xây dựng các tính năng bên trong của hệ thống cần đảm bảo tính toàn vẹn,

đáp ứng nhu cầu cũng như mục đích của người sử dụng Ngoài ra nó cũng cần đảm

bảo tốc độ, khả năng xử lý cũng như khả năng bảo mật khi hoạt động

Trang 17

1.6 Phương pháp thực hiện

Dé trang web hoàn thiện và thích hợp với nhu cầu người dùng, trước hết cantrao đổi, khảo sát và thống nhất ý kiến với người dùng về các chức năng cần thiết

cũng như yêu câu đôi với trang web.

Việc quản lý cơ sở dữ liệu cũng rất quan trọng trong hệ thống, đối với dữ liệutrong công việc quản lý kho thường là những dữ liệu dạng bảng, có rất nhiều bảngphục vụ cho những mục đích quản lý khác nhau và những bảng này cần có sự liên

kết với nhau Chính vì vậy nhóm chúng tôi sau khi tìm hiểu, thỏa luận đã quyết định

sử dụng hệ quản trị cơ sở dir liệu quan hệ MySQL để lưu thông tin hệ thống Vớithiết kế lưu trữ dạng bảng, có các ràng buộc về quan hệ giữa các đối tượng và sự hỗtrợ mạnh mẽ về các thao tác trên dữ liệu, chúng tôi tin rằng hệ quản tri cơ sở dữ liệu

quan hệ là lựa chọn tối ưu cho việc lưu trữ đữ liệu cho các công tác quản lý

về giao diện người dùng, thiết kế cần thân thiện, dé sử dụng nhằm phục vụ đại

đa số người dùng Chính vì vậy bước đầu tiên là khảo sát người dùng và thiết kếgiao diện Vì đề tài diễn tra trong lúc phát sinh dịch bệnh covid, chúng tôi cần một

công cụ hỗ trợ thiết kế giao diện online miễn phí, có thể hỗ trợ nhiều người thao tác

cùng một lúc,theo tác đơn giản, dễ thực hiện Vì vậy chúng tôi đã chọn Figma cho

phần thiết kế giao diện Sau khi giao diện được phát thảo, cần khảo sát ý kiến của

người dùng dé tiến hành điều chỉnh, sửa chữa nhằm đạt được sự hài lòng cao nhất

Với mong muốn giao diện (front-end) hoạt động tốt, được người dùng yêuthích, nhóm đã đề xuất dùng công nghệ React cho front-end của hệ thống React với

ưu điểm về tính đồng bộ, các giao diện thiết kế ra có tính tương tác cao, có nhiều

thư viện hỗ trợ, khả năng tái sử dụng Do đó nhóm ưu tiên chọn vi React phi hợp

với yêu cầu xây dựng hệ thống trong thời gian cho phép

Hệ thống cần có một server mạnh mẽ, đáp ứng nhiều người dùng truy cập

cùng lúc, đảm bảo tốc độ xử lý của hệ thống Vì vậy chúng tôi đã chon NodeJs choback-end Hơn nữa, NodeJs cung cấp nhiều thư viện, có cộng đồng phát triển mạnh

Trang 18

mẽ, được nhiều lập trình viên cũng như công ty sử dụng, hệ thống xây dựng trênNodeJs sẽ dé dàng phát triển những tính năng mới hơn so với những nền tảng khác.

1.7 Giới hạn phạm vi

Hệ thống quản lý hàng hóa trong kho theo hạn sử dụng, đảm bảo không xuất

hiện tình trạng tồn đọng trong kho Đưa ra những thông báo kịp thời khi có sản

phẩm hết hạn, sắp hết hạn còn tồn trong kho Ngoài ra hệ thống đưa ra gợi ý về số

lượng hàng cần nhập theo phương pháp bình quân di động!

Người dùng gồm: nhân viên kho và quản lý kho Giữa nhân viên và quản lýluôn có những quyền hạn khác nhau Bằng cách phân quyền người dùng, quản lý cóthể thực hiện những chức năng của người dùng, nhân viên cũng có thể thực hiện các

chức năng của mình một cách độc lập, nhân viên không thé truy cập các tính năng

của quản lý vì vậy cũng sẽ không ảnh hưởng đến công việc của quản lý

Quản lý có chức năng tạo một tài khoản nhân viên mới, chuyên đổi quyền cho

một tài khoản nhân viên lên làm quản lý Ngoài ra quản lý cũng có các chức năng

như: chỉnh sửa thông tin sản phẩm, chỉnh sửa thông tin những người dùng khác, tạo

tài khoản mới, xem các báo cáo được cung cấp bởi hệ thống

Nhân viên có chức năng “nhập hàng” nhập thông tin về những sản phẩm vào

hệ thống, “xuất hàng” truy xuất các thông tin khi xuất kho và chỉnh sửa nội dung

công việc do mình thực hiện.

1 Xem tại: Chương 3: Các Phương Pháp Dự Báo Dinh Luong, Bài Giảng Phương Pháp Dự Báo Định Luong

Trang 19

1.8 Bố cục khóa luận.

Khóa luận tốt nghiệp gồm 5 chương :

Chương 1: Giới thiệu

Chương 2: Cơ sở lý thuyết

Chương 3: Phân tích và thiết kế

Chương 4: Kết quả xây dựng hệ thống quản lý kho

Chương 5: Kết luận và hướng phát triển

Trang 20

Chương 2: CƠ SỞ LÝ THUYET

2.1 Tổng quan về công việc quản lý kho hàng

Khái quát về công việc quản lý kho: Quản lý kho hàng là những hoạt động

liên quan trực tiếp đến hàng hóa vật tư, bao gồm công tác tổ chức, bao quan

và quản lý số lượng hàng hóa Kho hàng được quản lý tốt sẽ giữ cho quá trình sản xuất được liên tục, giảm các loại chi phí liên quan và khiến cho việc khaithác và sử dụng kho đạt hiệu quả cao hơn.

Các công việc mà một nhân viên quản lý kho cần thực hiện: Nhập hàng, Xuất

hang, lập phiếu kiểm kê lượng hang hóa được nhập vào kho, lập phiếu kiểm

kê lượng hàng hóa được xuất khỏi kho, lập phiếu kiểm kê đối với lượng sản phẩm còn tồn trong kho, viết báo cáo kho.

Đối với hệ thống quản lý kho hàng chúng tôi quyết định sử dụng phương

pháp quản lý theo hạn sử dung Phương pháp này sẽ quản lý các sản pham theo hạn sử dụng của chúng Những sản phẩm có han sử dụng sớm sẽ được

yêu cầu xuất ra trước Với việc quản lý sản phẩm theo hạn sử dụng sẽ tránh được tình trang sản phâm có han sử dụng ngắn bị tồn trong kho, gây thất thoátcho doanh nghiệp.

2.2 Tìm hiểu quy trình xây dựng hệ thống

Dé tạo ra một trang web thông thường cần trải qua 9 giai đoạn:

Giai đoạn 1: Phân tích yêu cầu nhận được từ người dùng, làm rõ các yêu cầu của

khách hàng từ đó đưa ra thiết kế phù hợp

Giai đoạn 2: Phác họa, xây dựng bản thiết kế demo bằng giấy hoặc phần mềm

Giai đoạn 3: Thảo luận cùng người dùng về thiết kế của bản demo, nếu người dùngkhông đồng ý hay có sửa chữa thì quay về giai đoạn 2

Trang 21

Giai đoạn 4: Tiến hành lập trình trang web bằng ngôn ngữ lập trình và các công cụ

hỗ trợ.

Giai đoạn 5: Chạy thử nghiệm trang web.

Giai đoạn 6: Người dùng dùng thử và đóng góp ý kiến, sửa chữa

Giai đoạn 7: Cài đặt trang web lên Internet và public cho người dùng.

Giai đoạn 8: Ban giao trang web với người dùng.

Giai đoạn 9: Bảo trì, sửa chữa và nâng cấp trang web

2.3 Công nghệ ReactJs

ReactJs là một thư viện JavaScript (không phải là framework) để xây dựng

giao diện người dùng trên nhiều nền tảng khác nhau ReactJs cung cấp một mô hình

mạnh mẽ để làm việc và giúp chúng ta xây dựng giao diện người dùng theo cách

khai báo và định hướng thành phần

Được tạo ra bởi các kỹ sư của Facebook (Instagram) và ké từ khi phát hành nó

đã tạo nên làn sóng trong cộng đồng JavaScript React đã trở nên phô biến trong vàinăm qua và là công cụ được nhiều nhóm và kỹ sư lựa chọn xây dựng giao diệnngười dùng động Trên thực tế, sự kết hợp giữa API? của React, mô hình tinh thần

va cộng đồng mạnh mẽ đã dẫn đến sự phát triển của React cho các nền tảng khác,

bao gồm cả thiết bị di động và thậm chí cả thực tế ảo

React có thé tái sử dụng tat cả các component, thậm chí là qua nhiều project

khác nhau Ta có thể định nghĩa các component nhỏ và gộp chúng lại để tạo ra

những component to hơn.

2 APT là viết tắt của Application Programming Interface — phương thức trung gian kết nối các ứng dung và

thư viện khác nhau.

Trang 22

> Component:

La những thành phần giao diện được định nghĩa độc lập, có thể tái sử dụng và

hoàn toàn tách biệt nhau Có thé hiểu nó là một ham trong Javascript, chúng nhận

bất kì đầu vào nào (props) và trả về các React element thé hiện những gì được hiển

thị trên trình duyệt.

Gồm hai loại component: function component và class component

+ Function component: Cách đơn giản dé định nghĩa một function component là

Trang 23

+ JSX với cú pháp gần giống với JSX, cấu trúc cây khi biểu thị các thuộc tính, điều

đó giúp ta dé dang định nghĩa, quản lý được các component phức tap, thay vì việc

phải định nghĩa và gọi ra nhiều hàm hoặc object trong javascript Khi nhìn vào cấu

trúc đó cũng dé dang đọc hiểu được ý nghĩa của các component Code JSX ngắn

hơn, dễ hiểu hơn code JS

+ JSX không làm thay đổi ngữ nghĩa của Javascript

+ Với cách viết gần với các thẻ HTML, nó giúp những lập trình viên thông thường

(ví dụ như các nhà thiết kế) có thê hiểu được một cách dễ dàng, từ đó có thê viếthoặc sửa code mà không gặp nhiều khó khăn

Ví dụ về việc có và không có sử dụng JSX

+ Không sử dụng JSX

render (React createElement

Hình 2 3: Vi du không dùng JSX

Trang 24

+ Có sử dụng JSX

Như ta có thê thấy code của JSX nhìn gọn hơn và đọc dễ hiểu hơn so với code của

JS thuần

> DOM: Document Object Model (Mô hình Đối tượng Tài liệu)

DOM là một chuẩn được định nghĩa bởi W3C° dùng để truy xuất và thao tác

trên code HTML hay XML bằng các ngôn ngữ lập trình thông dịch (scripting

language) như Javascript.

DOM có thé giúp lập trình viên thao tác dữ liệu theo mô hình lập trình hướng

đối tượng do cấu trúc của DOM được định nghĩa theo dạng: đối tượng, phương thức,

thuộc tinh dé có thể truy xuất dé dàng

Khi xem xét giữa DOM và HTML ta có thể xem xét HTML là một đoạn code,

DOM là hình ảnh trừu tượng của đoạn code đó trong bộ nhớ.

DOM được biểu diễn bởi môn hình DOM Tree Trong đó: tất cả các thẻHTML sẽ được quản lý trong đối tượng document, thé cao nhất là thé html, tiếp

theo là phân nhánh body và head Bên trong head có những thẻ như style, title, và

bên trong body thì là vô số các thẻ HTML khác

Trang 25

Root element:

<html>

Attribute:

“href”

“My title” “My link”

Hình 2 5: Mô hình DOM Tree*

Trang 26

Một cách tong quát thì nó là một định dang dữ liệu JavaScript nhẹ được dùng

dé thê hiện nội dung của DOM tai một thời điểm nhất định nào đó Nó có tất cả cácthuộc tính giống như DOM nhưng không có khả năng tương tác lên màn hình như

DOM.

Virtual DOM sử dụng key, ref mà ở DOM không có va Virtual DOM được tao

mới sau mỗi lân render lại.

> Ưu điểm của ReactJS : > Nhược điểm :

- Phù hợp với đa dạng thé loại website - Chi sử dung cho làm UI, không có

- Tái sử dụng lại các component phần Model và Controller mà phải kết

, hợp với các thư viện khác, không có

Có thê sử dụng cho cả Mobile _¥

-two-way binding va ajax.

application.

- React khá nặng về dung lượng so với

- Thân thiện với SEO.

các framework khác.

- Debug dễ dàng.

2.4 Tìm hiểu công nghệ NodeJs

Node.js là một nền tảng bất đồng bộ, non-blocking, event-based, sử dụngcông cụ JavaScript V8° của Google Nó được sử dụng dé phát triển các ứng dụng sửdụng nhiều khả năng chạy JavaScript cả trên máy khách cũng như phía máy chủ và

do đó được hưởng lợi từ khả năng tái sử dụng của mã Là mã nguồn mở và đa nềntảng Các ứng dụng Node.js được viết bằng JavaScript thuần và có thé chạy trong

môi trường Node.Js trên Windows, Linux,

NodeJS sử dụng non-blocking, hướng sự vao ra dữ liệu thông qua các tác vụ

thời gian thực NodeJS có khả năng mở rộng nhanh chóng, khả năng xử lý một số

lượng lớn các kết nối đồng thời bằng thông lượng cao Node sử dụng luồng đơn, kết

5 Nguồn: Learning React: A Hands-On Guide to Building Web Applications Using React and Redux

Trang 27

hợp với non-blocking I/O’ dé thực thi các request, cho phép hỗ trợ hàng chục ngàn

kết nối đồng thời

Lightweight and Simple Modification

JSON and AJAX Communication is Easy and Natural

Real-Time Web Socket ProgrammingorAPE | — cm

Open Source Community Driven Modules

oF US

Speedy and Scalable

nReuse The Codes at Every Level of Development

TM

Clubs With Google V8 Engine to Boosts App Performance Inexpensive Testing and Cheap Hosting

Number of Packages and Extensions

Less Parsing Time

Hình 2 7: NodeJs va những tính nang®

NodeJS có những ứng dung sau :

+ Phát triển ứng dung “trang đơn”: NodeJS có thé xây dung one-page application

Do các tùy chọn linh hoạt của nó, NodeJS rất phù hợp dé xây dựng nền tang mạng

xã hội, trang web động và giải pháp gửi thư.

+ Chatbots: NodeJS cung cấp các chức năng nâng cao độc quyền cho chatbots và

ứng dụng trò chuyện thời gian thực.

+ Phát triển ứng dụng IoT°: Node.js có khả năng xử lý các yêu cầu đồng thời liềnmạch với hàng nghìn sự kiện được phát hành bởi hàng tỷ thiết bị trên mạng của nó.Hơn nữa, Node.js hoạt động trên các kênh và luồng có thé ghi và đọc được

7 Overview of Blocking vs Non-Blocking | Node.js (nodejs.org)

8 Nguồn: Internet

9 Internet of Things: Internet Van Vật — Wikipedia tiếng Việt (cập nhật: 2/7/2022)

Trang 28

> Ưu điểm của NodeJs

Được xây dựng trên nền tảng của ngôn ngữ Javascript, nên được hỗ trợ kiến

trúc theo hướng sự kiện va non-blocking I/O.

Được xây dựng trên nền tang V8 Javascript Engine nên việc thực thi chươngtrình rất nhanh

Xử lý nhiều kết nối đồng thời một cách dễ dàng

NodeJS xử lý theo kiểu không đồng bộ nên phù hợp khi sử dụng để xây dựngcác ứng dụng kiểu không đồng bộ, ứng dụng thời gian thực,

Khi sử dụng Node.Js cho máy chủ, có thể sử dụng nó cho toản bộ kiến thức

cua Javascript dành cho server.

> Nhược điểm của NodeJs

NodeJS là môi trường xử lý đơn luồng và theo hướng sự kiện nên chúng

không thích hợp với những ứng dụng cần dùng nhiều nhân CPU

> Khi nào nên sử dụng NodeJS:

Dang có ý định xây dựng một restful API, bởi vi NodeJs chủ yếu là JS Vì thế,việc thao tác với JSON trở nên đơn giản hơn rất nhiều

Những ứng dụng đòi hỏi các giao thức kết nối khác nhau Nhờ có sự hỗ trợ củagiao thức TCP, nên việc xây dựng giao thức custom trở nên dễ hơn bao giờ hết

Những ứng dụng thời gian thực.

Hay những website tĩnh Bởi nó có thé xử lý moi request trên cing một

process giúp cho việc xây dựng cho các bộ nhớ đệm trở nên dễ dàng hơn.

Trang 29

> ExpressJS:

Là một framework mã nguồn mở miễn phí cho Nodels ExpressJs được sử

dụng trong thiết kế, xây dựng các ứng dụng web một cách đơn giản và nhanh chóng

Hỗ trợ các method HTTP và middleware tạo ra API vô cùng mạnh mẽ và dễ sử

dụng ExpressJs có dung lượng khá nhẹ, giúp cho việc tổ chức các ứng dụng web

thành một kiến trúc MVC một cách 6n định hơn

Những tính năng cơ bản của ExpressJs:

+ Phát triển máy chủ nhanh chong: ExpressJs cung cấp nhiều tính năng dưới dangcác hàm dé dé dang sử dụng ở bat kỳ đâu trong chương trình

+ Middleware: là phần mềm trung gian có quyền truy cập vào cơ sở đữ liệu, yêu cầu

của khách hàng và những phần mềm trung gian khác, chịu trách nhiệm chính cho

việc tô chức có hệ thông các chức năng của ExpressJs.

+ Routing: ExpressJs cung cấp cơ chế routing giúp duy trì trạng thái của website

với sự trợ giúp cua URL.

Triển khai ExpressJs trong dự án

+ “require” ExpressJs: sử dụng method “require” dé load module

+ Thuc hién cac routing : Cac routes cho phép chung ta thuc hién cac method GET, POST, PUT va DELETE dựa trên path.

+ Port: Server có các ports Vì server có thé xử lý các script server-side cùng | lúc, nên cân phải cho server biệt noi ma môi script nên chạy.

Trang 30

+ “middleware” : Các hàm middleware cho phép chúng ta thực hiện hành động

trước request bât kì và xác nhận lại nó trước khi gửi lại response.

Socket.io là một framework của NodeJs cho phép xây dựng các ứng dụng web

chạy thời gian thực (realtime), cho phép giao tiếp theo hai hướng giữa client và

server.

{ — - “i> open anager)

The Socket sends

Trang 31

Socket.io hoạt động như một thư viện phía client đang chạy trong trình duyệt

và như là một thư viện phía server cho NodeJs Các tính năng chính của nó bao gồm

xử ly I/O không đồng bộ, luồng nhị phân, nhắn tin tức thời,

Ưu điểm của Socket.io:

+ Tinh bảo mật cao: nhờ vào quy trình thiết lập chặt chẽ, Socket.io không khó dé

tạo nhiều kết nối bảo mật, khả năng kết nối tự động với server

+ Kết nôi dé dàng với server.

LAI co

Server A Server B

Socket.io NET SOCKET Client Service

Hình 2 12: Socket.io - Kết nối client - server

+ Hỗ trợ mã hóa nhị phan.

+ Hỗ trợ tạo kênh đơn giản.

2.5 Tìm hiểu hệ quản trị cơ sở dữ liệu quan hệ MySQL

MySQL là hệ quản trị cơ sở dữ liệu SQL nguồn mở, được phát triển, phân phối

và hỗ trợ bởi Oracle Corporation Được tích hợp Apache, PHP

MySQL được viết bằng C và C++ và có thể truy cập và có sẵn trên hon 20 nềntảng, bao gồm Mac, Windows, Linux và Unix

MySQL dựa trên mô hình client-server Cốt lõi của MySQL là máy chủMySQL, xử lý tất cả các hướng dẫn cơ sở đữ liệu (hoặc các lệnh) Máy chủ MySQL

Trang 32

có san như là một chương trình riêng biệt dé sử dụng trong môi trường mạng

client-server và như một thư viện có thé được nhúng (hoặc liên kết) vào các ứng dụng

riêng biệt.

Trong môi trường MySQL thì máy khách và máy chủ sẽ hoạt động với sự

tương tác qua lại liên tục với nhau dựa trên nguyên lý chính là:

1 Request |

2 Response

Client — Server

Hình 2 13: Tương tac giữa client - server trong môi trường MySQL

Mô tả hoạt động giữa client và server trong môi trường MySQL:

+ MySQL sẽ tạo ra một bảng giúp việc lưu trữ dữ liệu, cũng như định nghĩa được

mối quan hệ giữa các bảng được thực hiện đầy đủ, chỉ tiết và chính xác,

+ Máy khách sẽ gửi những yêu cầu SQL thông qua lệch đặc biệt lên MySQL

+ Những ứng dụng trên máy chủ lúc này sẽ nhận được và đưa ra phản hồi thông tin,

từ đó trả kết quả trực tiếp về máy khách

2.6 Các công cụ sử dụng trong đề tài

Figma: Công cụ hỗ trợ trong thiết kế giao diện hệ thống

Visual Studio Code: Môi trường thực hiện, IDE hỗ trợ quản lý code

XAMPP: Hỗ trợ lưu trữ cơ sở dữ liệu của hệ thống.

GitHub: Nơi lưu trữ code.

<j 38 Figma (&)xamer C)

Visual Studio Code GitHub

Trang 33

Chương 3: PHAN TÍCH VÀ THIET KE HỆ THONG

3.1 Cac hé thong quan ly kho

3.1.1 Phan mềm quan lý kho ERP — SHINNOVA

> ERP: Enterprise Resource Planning

ERP là viết tat của cụm tir Enterprise Resource Planning, tiếng Việt là hoạch

định nguồn lực doanh nghiệp Để nói về phần mềm ERP, đây là phần mềm có các

công cụ quản ly dé giúp chiến lược và quy trình kinh doanh của doanh nghiệp mạnh

mẽ, vững vàng, hiệu quả hơn ERP rất quan trọng vì đó chính là chìa khóa đề giúpdoanh nghiệp giải quyết các khó khăn trong lưu trữ thông tin

> Phần mềm quản lý kho ERP - SHINNOVA

Quản lý hệ thống kho, kệ hàng và tất cả các hàng hóa trong kho Quản lý tất cả

các nghiệp vụ nhập, xuất kho, hỗ trợ kiểm soát số lượng tồn kho hiệu quả Tự động

tính giá vốn theo kho, hoạch toán tự động theo sơ đồ hoạch toán kế toán đã cai đặt

x À

‘ Triển khai phan mềm quản ly dự án (Mua sắm) ma Si

Mã dy án TY Tên dự á: & Trưởng dự án: Ò @ Chủ qu & os

Hoàn thành (64)

92.75%

— ang thực hiện (Quá hạn) (2) — Đang thực hiện (Trong hạn) (0) = Chưa thực hiện (3) == Hoàn thành (64)

Hình 3 1: Giao diện phần mềm quản lý kho ERP-SHINOVA

Trang 34

Các chức năng được cung cáp:

+ Quản lý kho, hàng hóa: quản lý thông tin chỉ tiết hàng hóa trong kho, kích thước,

36 lượng, san lượng, Ngoài ra con tích hợp da dạng các loại mã vạch theo tiêu

chuẩn thế giới, cùng với thiết bị quét mã vạch giúp nhập kho, xuất kho, kiểm kê trở

nên dễ dàng hơn.

+ Nhập kho: Quản lý các nghiệp vụ như: Nhập thành phẩm, nhập mua, nhập hàng

trả, Công việc hoạch toán được thực hiện tự động theo sơ đồ hoạch toán kế toán

đã cài đặt.

+ Kiểm kê: Cho phép khai báo và quản lý số dư vật tư hàng hóa đầu kỳ, quản lý

thừa thiếu sau khi kiểm kê tồn kho, hoạch toán tự động theo sơ đồ kế toán

+ Tính giá vốn: Hỗ trợ nhiều phương pháp tính giá vốn: Phương pháp bình quâncuối ky, Phương pháp nhập trước xuất trước, phương pháp nhập trước xuất sau

Áp dụng phương pháp tính giá vốn cho từng sản phâm Hỗ trợ tính giá vốn theo kho,

theo khoảng thời gian.

+ Tiện ích: Cho phép import từ tệp xlsx va export dang xlsx, pdf, Hỗ trợ sao chép

bản ghi, đánh lại mã số chứng từ Đa dạng tiêu chí tìm kiếm thông tin: Khách hàng,

sản pham, Tích hợp thông báo Email, SMS

+ Báo cáo: Phiếu xuất kho, phiếu nhập kho, danh sách tong hop nhap theo đối tác,

nhập theo nhóm,

3.1.2 Phần mềm quan lý kho 3S iWAREHOUSE

3S iWAREHOUSE là giải pháp vận hành kho 4.0 hỗ trợ doanh nghiệp có được

cái nhìn tổng quát về tình hình và hoạt động của kho hàng trong thời gian thực;

kiểm soát nhân viên kho; hỗ trợ việc lập kế hoạch mua hàng cho nhà quản tri

3S iWAREHOUSE giúp doanh nghiệp quản lý hiệu quả các quy trình, các

hoạt động trực tiếp tại kho, bao gồm nhận hàng, định vị hàng hóa trong kho, xuấthàng, kiểm tra hàng tồn kho, từ đó tối ưu hóa việc lưu kho, hạn chế tối đa tình trạngthất thoát trong quá trình xuất nhập kho

Trang 35

Các tính năng của phan mém:

trong kho: Phần mềm quản lý kho &) Nhập kho thành phẩm

sản xuất thiết lập layout kho để tiết

kiệm thời gian tìm kiếm hàng hóa Ẩ) Nhập NVL thừa

+ Đối với việc quản lý hạn sử dụng Ce Xuất điều chuyển

hàng hoá trong kho: Phần mềm cho

phép quản lý hàng hoá theo nguyên @ Nhập hang mua đổi trả

tac FIFO, FEFO (FIFO: Nhập trước

(> Xuất trả nhà cung cấp

xuất trước, FEFO: hàng gần hết hạn

sử dụng ưu tiên xuât trước). a Nhap hang ban tra lại

+ Đối với hoạt động kiểm kê: Chỉ cần

Kiém ke

scan mã QR Code/ Bar Code trên các

lô sản phâm, phan mém sẽ tự động

@ Hủy Pallet

ghi nhận số lượng hiện tại và tạo

phiếu kiểm kê kho và cho phép đối Hình 3 2: Giao diện phan quản lý kho 3S

oo kg x cua /WAREHOUSE (A

chiêu với sô lượng tôn kho trên phân _ ‘ (App)

mêm Điêu này hạn chê tôi da sai sót so với kiêm kê thủ công.

+ Tính giá vốn tự động theo phương pháp: Giá đích danh, giá bình quân di động,

giá bình quân thời điểm, giá nhập trước xuất trước

+ Đối với lãnh đạo và quản lý: Phần mềm cho phép báo cáo số lượng hàng tồn khotheo thời gian thực hỗ trợ người quản lý trong việc định hướng nhập hàng hóa, tăng

hiệu quả sử dụng vôn.

Trang 36

3.2 Phân tích yêu cầu, xây dựng tính năng

3.2.1 Bài toán

Hệ thống hoàn thành cần giải quyết được các vấn đề:

+ Cho phép nhiều người dùng có thé cùng lúc sử dụng

+ Ai là người đã thực thi các thao tác trong quá trình hoạt động.

+ Kho hàng hôm nay còn những gi.

+ Có thể kiểm tra thông tin xuất nhập

+ H6 trợ đưa ra khuyến nghị cho việc nhập các sản phẩm mới.

+ Thông báo khi có sản phâm sắp hết hạn sử dụng

3.2.2 Phân tích yêu cầu của nhân viên đối với hệ thống

Vẫn đề:

Mỗi ngày công ty sản xuất rất nhiều sản phẩm, các sản phẩm vừa được san

xuất cần phải được ghi chép và nhập vào kho Việc xuất kho cũng thực hiện rất

nhiều lần trong ngày, không theo một khoản thời gian hay số lượng, loại cố định

Việc ghi chép trên giấy dé xảy ra sai sót, mỗi lần xuất hàng phải cần thận kiểm tra

dé không sót các sản pham cũ lại

Việc nhập kho thủ công gây mất thời gian, không linh hoạt Đôi khi sơ xuấtlàm mắt giấy nhập kho nên cần phải liên hệ để xin lại số liệu hoặc tiến hành kiểm

kê lại từ đâu, rât mât thời gian.

Yêu cầu của nhân viên:

+ Có chức năng nhập, xuât thông tin.

+ Khi xuất thông tin cần đưa ra hàng hóa cũ trước

+ Các biên lai nhập xuất có thé tạo thành một ban báo cáo đơn giản

+ Có thé xem lại mình đã nhập, xuất sản phẩm gì vào thời gian nao

+ Hỗ trợ nhập nhanh chóng các thông tin cơ bản.

Trang 37

Tinh năng dé ra

Tính năng nhập hàng: Tính năng này cung cấp một biéu mẫu dé nhân viên

nhập các thông tin cần thiết

Tính năng xuất hàng: nhân viên nhập vào tên hoặc mã loại hàng và số lượngcần xuất, hệ thống sẽ đưa ra số lượng hàng tồn trong kho theo độ ưu tiên từ cũ đếnmới Nhân viên có thể tự chọn sản phẩm được sản xuất vào ngày nào

Tính năng nhập hàng, xuất hàng có thể kết hợp việc quét mã vạch của sảnphẩm để có thể nhanh chóng điền vào những thông tin cơ bản, hạn chế việc nhập

Việc quan lý kho cần phải luôn nắm chắc số liệu để có thé cho ra đáp án nhanh

nhất Ngoài ra quản lý kho cần phải lập các loại báo cáo như: báo cáo tồn kho mỗi

ngày, báo cáo theo tuần, theo tháng Khi có sản phâm mới được thêm vào hay loại

bỏ sản phẩm cũ cũng cần quản lý thêm, xóa thông tin trên cơ sở dữ liệu

Quản lý còn cần nắm rõ khi nao thì có nhân viên nhập, xuất kho

Công việc báo cáo thống kê sau mỗi ngày, mỗi tháng rất vất vả, khi phải làm

việc với lượng dữ liệu lớn, rat dé xảy ra sai sót trong quá trình thao tác Việc kiêm

Trang 38

tra hạn sử dụng của sản pham bang cách thủ công đôi khi xảy ra tình trạng tồn hang

quá hạn sử dụng, gây thiệt hại cho công ty.

Yêu câu:

+ Có thé cập nhật thông tin kho liên tục

+ Có chức năng tao báo cáo.

+ Có thé thêm hoặc xóa sản phẩm ra khỏi cơ sở dữ liệu

+ Có thê nhận được thông báo khi có nhân viên tiến hành nhập, xuất kho

+ Hạn chế tối đa thao tác thủ công, có thể hỗ trợ công việc một cách nhanh chóng

Tính năng đề ra:

Thông báo đến quản lý khi có sản phẩm sắp hết hạn, thời gian thông báo sẽ do

quản lý cài đặt tùy theo từng loại sản phẩm

Thông báo đến quản lý mỗi khi có sự thay đổi trong cơ sở đữ liệu Đồng thời

giám sát các sản pham trong kho, nếu sản phẩm gần hết, đạt đến giới hạn tồn thấpnhất đều ra, cần thông báo cho quản lý Khi số lượng tồn vượt quá định mức, thông

báo cho quản lý.

Các báo cáo có sẵn mau và có thé tạo tự động, đồng thời cũng cho phép ngườidùng thao tác trên báo cáo đó dé có thé tạo ra một báo cáo phù hợp với yêu cầu dé

ra.

Thống kê số liệu tự động luôn cập nhật khi có thay đổi và trả về dưới dạngbảng biểu và biểu đồ giúp người quan lý có thé nhanh chóng nam bắt thông tin

Thống kê dữ liệu trong một khoản thời gian và trả về đưới dạng biểu đồ đường

thé hiện sự thay đổi nhu cầu của người dùng, từ đó hỗ trợ người quản lý trong việcđưa ra quyết định nhập hàng Cùng với biéu đồ là dự đoán về những sản phẩm có

thê được ưa chuộng trong tương lai, số lượng sản phẩm cần nhập vào là bao nhiêu

Cho phép quản lý thông tin nhân viên kho, cấp tài khoản cho nhân viên mới,

Trang 39

lý Vô hiệu hóa tài khoản khi nhân viên nghỉ Đồng thời có thé thay đổi thông tin cánhân của tất cả nhân viên trong hệ thống.

Cho phép thêm xóa, sửa thông tin sản phẩm, loại sản phẩm trong kho Cài đặt

các thông số cần thiết đối với sản phẩm như giá bán, giá thu, quy cách đóng gói, số

lượng tồn tối thiểu, số lượng tồn tối đa, hạn sử dụng cho từng loại sản phẩm

Quản lý cũng là một nhân viên nên cũng bao hàm các tính năng mà một nhân viên kho có.

3.2.4 Phân tích, đánh giá yêu cầu đối với việc bao mật thông tin

Phân tích, đánh giá mức độ bảo mật

Không một người dùng nào muốn sử dụng một hệ thống có tính bảo mật kém,thông tin của mình có thé mat đi bat cứ lúc nào

Đối với hệ thống quản lý kho hàng, các thông tin lưu trữ vào là những thông

tin cá nhân, thông tin sản phẩm, tình hình sản xuất của công ty Chính vì vậy yêucầu bảo mật thông tin của hệ thống cần được chú trọng hơn nữa

Nếu đánh giá mức độ bảo mật thông tin của một trang web thông tin thôngthường là thấp, các trang web, hệ thống có chứa thông tin cá nhân người dùng là

trung bình Những trang web chứa thông tin liên quan đến tài chính là bảo mật cao

Theo như đánh giá trên, dưới sự phân tích của nhóm cùng với kết quả khảo sát

về yêu cầu bảo mật đối với hệ thống quản lý kho hàng từ phía công ty Nhóm đánh

giá mức độ bảo mật của hệ thống quản lý kho hàng nằm ở mức trung bình — cao

Đánh giá trung bình vì hệ thống chứa các thông tin của người dùng, khi xảy ra

vấn đề bảo mật có thể ảnh hưởng đến cuộc sống cá nhân của người dùng Đánh giá

là cao bởi vì khi những thông tin về nhập xuất kho của công ty bị lộ có thể gây ảnh

hưởng nhất định về tài chính cho công ty Tuy nhiên không đánh giá mức độ bảomật cao vì khả năng xảy ra ảnh hưởng về tài chính khi thông tin kho hàng bị lộ làkhông cao cùng với nếu có xảy ra vấn đề bảo mật, thiệt hại cho nó là không cao.Nên đánh giá trung bình — cao là phù hợp cho hệ thống này

Trang 40

Giải pháp bảo mật được đề ra

Tách riêng front-end và back-end của hệ thống và sử dụng web API đề liên kết

hai thành phần lại với nhau Việc tách rời hai lớp front-end và back-end giúp trang

web được bảo mật tốt hơn Bởi vi front-end là phần giao diện được hiển thị vớingười dùng, người dùng có thé thao tác trực tiếp trên nó Cho nên nó rất dé bị xâmnhập Nếu kết hợp front-end và back-end thành một thể thống nhất, khi front-end

của hệ thống bị xâm nhập, có thé sẽ mat luôn thông tin của hệ thống

Trong khi đó, nếu tách ra, front-end bị xâm nhập thì dữ liệu được lưu trữ trên

hệ thống cũng an toan hơn Việc xâm nhập một thứ không thấy được, không thao

tác được sẽ khó khăn hơn.

Phân quyền cho người dùng Ở đây việc phân quyền cho người dùng có thể

nhanh chóng, vì vậy nó không đủ đề đảm bảo an toản

+ Lớp thứ hai: Phân quyền trên server (back-end) Điều này cho phép chỉ

những tài khoản được chỉ định mới có thể lấy được thông tin từ hệ thống Tuy

nhiên chỉ hai lớp này vẫn chưa đủ đề tránh xâm nhập hệ thống

+ Lớp thứ ba: Phân quyền trong cơ sở dữ liệu (database) Việc này nhằm tối

ưu hóa khả năng bảo mật thông qua việc phân quyền

Khi một người dùng muốn truy cập thông tin từ hệ thống cần đi qua ba lớpkiểm tra quyền hạn mới có thể lấy được thông tin mong muốn Điều này cũng gópphần tăng độ khó cho người xâm nhập hệ thống

Sử dung cookies đề truyền dữ liệu Cookies có thể hiểu là một file tạm đượctạo ra dé lưu trữ và truyền thông tin người dùng Như vậy chăng phải cookies rat dé

Ngày đăng: 03/11/2024, 18:27

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN