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 3THONG 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 4LỜ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 5MỤ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 63.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 7PHỤ 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 812: 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 920: 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 10DANH 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 11DANH 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 12TÓ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 13Chươ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 14sả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 161.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 171.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 18mẽ, đượ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 191.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 20Chươ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 21Giai đ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 25Root element:
<html>
Attribute:
“href”
“My title” “My link”
Hình 2 5: Mô hình DOM Tree*
Trang 26Mộ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 27hợ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 31Socket.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 32có 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 33Chươ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 34Cá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 35Cá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 363.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 37Tinh 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 38tra 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 39lý 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 40Giả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é