- Đáp ứng nhu cầu chung cho các bộ phận.- Tăng hiệu suất sản xuất và xác định rõ quy trình kinh doanh - Xử lý đơn hàng hoàn chỉnh - Hạn chế sai lầm trong việc nhập dữ liệu Nhược điểm và
Trang 1TRƯỜNG ĐẠI HỌC THĂNG LONG
KHOA TOÁN TIN
GIÁO VIÊN HƯỚNG DẪNNHÓM SINH VIÊN THỰC HIỆN Mai Thúy Nga A40410 Nguyễn Huy Hoàng
A38219 Phan Duy Thành A39244 Bùi Chí Vĩ
BÀI TẬP LỚN : TÌM HIỂU, ỨNG DỤNG & PHÁT TRIỂNPHẦN MỀM ODOO TRONG DOANH NGHIỆP
HÀ NỘI – 2023
Trang 2PHẦN 1: GIỚI THIỆU CÁC MODULE CÓ SẴN CỦAODOO TRONG CÁC MẢNG NGHIỆP VỤ.
1 Giới thiệu về tổ chức, những mảng nghiệp vụ sẽ ứngdụng:
- Tên tổ chức: Klever Fruits
- Sản phẩm kinh doanh: Các sản phẩm hoa quả và giỏ hoa quả bán trong các dịp ngày lễ Klever Fruits là một tổ chức kinh doanh trực tuyến kinh doanh hoa quả do sinh viên Đại học Thăng Long phát triển Thời gian đầu nhóm hướng đến mục tiêu kinh doanh các đầu hoa quả nhưng sau một thời gian thử sức, chúng tôi nhận thấy việc tiêu thụ hoa quả chưa thực sự phổ biến và được ưa chuộng đối với khu vực nhắm đến kinh doanh Xét về nhiều góc độ, nhóm khởi đầu nhắm đến các đối tượng xung quanh trường Đại học Thăng Long Với tôn chỉ “Mang đến cho khách hàng những sản phẩm trái cây an toàn, chất lượng cao, mà kèm theo đó là những dịch vụ tiện ích thân thiện” Bằng những nỗ lực không ngừng theo thời gian, hệ thống Klever Fruit khẳng định tiếp tục từng bước hoàn thiện và phát triển tốt nhất về sản phẩm và dịch vụ của mình Với quy mô còn hạn chế, nhóm vẫn đang trên đà cập nhật và mở rộng tổ chức, chúng tôi hiểu rõ tầm quan trọng của việc nâng cao chất lượng tổ chức do thị trường Vì điều đó, ngoài việc nâng cao các chất lượng sản phẩm thì dịch vụ chăm sách khách hàng và quản lý tổ chức cũng là một khâu không thể thiếu.
Trang 3a ERP (Enterprise Resource Planning)
ERP là phần mềm hoạch định nguồn lực doanh nghiệp Hệ thống này cho phép tiếp cận các dữ liệu nội bộ được chia sẻ nhằm quản lý được toàn bộ hoạt động của ty
- E-Enterprise: Và điều cuối cùng chính là doanh nghiệp- thứ mà ERP muốn nhắm
tới Mục đích chính của hệ thống này là kết nối và đồng bộ công việc giữa các phòng ban, cập nhật mọi thông tin cần thiết theo thời gian thật, thêm tính tự động trong hoạt động công ty và giảm sai sót trong quá trình xử lý nghiệp vụ
- R-Resource: Ứng dụng ERP vào trong doanh nghiệp chính là tận dụng được toàn bộ
tài nguyên của công ty, đặc biệt là nguồn nhân lực
- P-Planning: Hệ thống ERP hỗ trợ công ty lên trước các kế hoạch, nghiệp vụ trong
sản xuất, kinh doanh Phần hoạch định sẽ vạch ra hướng đi cho doanh nghiệp, việc tính toán và dự báo các khả năng có thể phát sinh trong tương lai sẽ tác động tới các hoạt động sau đó
Lợi thế và đặc điểm của ERP: - Có khả năng đồng bộ
- Sự linh hoạt, khả năng thay đổi dữ liệu nhanh chóng, kịp theo thời gian thật - Đáp ứng nhu cầu chung cho các bộ phận.
- Tăng hiệu suất sản xuất và xác định rõ quy trình kinh doanh - Xử lý đơn hàng hoàn chỉnh
- Hạn chế sai lầm trong việc nhập dữ liệu Nhược điểm và rủi ro:
- Nếu triển khai một phần mềm ERP truyền thống, doanh nghiệp cần tri chả khá nhiều tiền để có một bản giấy phép duy nhất Chi phí chi trả khá cao và đáng lo ngại đối với các doanh nghiệp vừa và nhỏ
- Cần nhiều thời gian và nhân lực để triển khai b Phần mềm Odoo:
Trang 4Odoo là một phần mềm ERP mã nguồn mở (open-source), nghĩa là khả năng tùy chỉnh và phát triển các tính năng của phần mềm này là vô hạn Cụ thể hơn, ngoài các phân hệ hay module cơ bản của Odoo như POS, CRM, quản lý kho, quản lý nhân sự,… thì Odoo cho phép bạn hoàn toàn chỉnh sửa hay thêm bớt những tính năng hoặc tạo ra các phân hệ mới mà doanh nghiệp mong muốn
Đặc điểm và lợi ích Odoo mang lại:
- Tích hợp tất cả trong một hệ thống
- Linh hoạt trong tùy chỉnh Theo thời gian có thể cài đặt thêm các module phát sinh hay kế hoạch phát triển của doanh nghiệp
- Có thể tạo thêm các module của riêng doanh nghiệp để phục vụ các loại hình kinh doanh khác nhau
- Tích hợp các phần mềm, ứng dụng bên thứ - Phân quyền linh hoạt
- Báo cáo tự động Nhược điểm: - Khó khăn trong việc thiết lập - Khó khăn trong việc duy trì hệ thốn
Trang 5Thông tin chi tiết:
Báo cáo thống kê theo số lượng nhân viên mới theo thời gian:
Trang 6Module Recruitment: Tổ chức tuyển dụng, sàng lọc và tuyển chọn các ứng cử viên có năng lực đáp ứng nhu cầu của công ty.
Danh sách thông tin các ứng cử viên tham gia các kỳ tuyển dụng:
Lựa chọn giao diện khác phù hợp với mục đích sử dụng dữ liệu :
Biểu đồ thống kê theo trạng thái tuyển dụng của các ứng cử viên:
Trang 7Module Appraisal: Đánh giá nhân viên trong công ty.
Danh sách các bản đánh giá nhân viên, giúp người quản lý đánh giá dễ dàng quan sát cũng như thực hiện việc đánh giá.
Trang 8Kết quả đánh giá hiển thị trong mục Goals, cho thấy thông tin chi tiết về các bản đánh giá cũng như trạng thái bản đánh giá hiện tại.
Trong phần Reporting- báo cáo hoạt động đánh giá theo tùy chọn, dưới đây là báo cáo thống kê các bản đánh giá theo từng nhân viên:
Trang 9Module Time Off: Thiết lập các ngày nghỉ chung của tất cả nhân viên trong công ty( Nghỉ lễ tết, ngày nghỉ bắt buộc, ) Bên cạnh đó, ứng dụng cho phép quản lý, phê duyệt nghỉ phép của nhân viên.
Báo cáo ngày nghỉ theo từng nhân viên:
Trang 10Module Approval: Quản lý phê duyệt các loại đề xuất liên quan đến hợp
đồng, đơn yêu cầu, các khoản phí, giải thưởng,
Danh sách các yêu cầu với một số thông tin cơ bản:
Trang 11b
Marketing :
Module Events: Tổ chức các sự kiện quảng bá mặt hàng của doanh nghiệp đến với người tiêu dùng, thu hút khách hàng.
Báo cáo tự động phân tích các sự kiện theo tùy chọn, dưới đây là bản phân tích theo nhóm các sự kiện:
Trang 12Ngoài ra module Events có thể kết hợp với module Website đưa các sự kiện tiếp cận đến với người tiêu dùng, đối tượng khách hàng của doanh nghiệp với giao diện trực quan, bắt mắt hơn:
Nhóm Module tiếp cận trực tiếp khách hàng: Email Marketing, SMS Marketing, Social Marketing.
Trong mục này nhóm lựa chọn module Email Marketing, một trong những phương thức tiếp cận và giao tiếp với khách hàng:
Báo cáo các thông số liên quan đến marketing bằng email:
Trang 13Module Email Marketing: gửi các email tới khách hàng và theo dõi tất cả các email và lưu trữ chúng, theo dõi tất cả các liên kết chiến dịch email của bạn và toàn bộ hiệu suất.
Báo cáo về Mass Mailing ( gửi thu hàng loạt) : phân tích tỷ lệ , doanh thu dự kiến và doanh thu được tạo ra từ các chiến dịch
Trang 18Đơn hàng có thể được tạo trực tiếp bằng việc nhập dữ liệu theo biểu mẫu có sẵn, ngoài ra khách hàng có thể mua hàng trên website một cách dễ dàng khi đó đơn hàng sẽ tự động được lưu thông tin để xử lý:
Báo cáo về bán hàng cũng được phân tích theo tùy chọn của người quản lý, dưới đây là bản phân tích bán hàng, doanh số theo khách hàng:
Trang 19Module Contact: Quản lý các liên hệ với khách hàng, các nhà cung cấp và các đối tác kinh doanh.
- Module CRM: Quản lý quan hệ với các tổ chức cá nhân, doanh nghiệp khác Giải quyết các vấn đề, yêu cầu của khách hàng cũng như các bên đối tác doanh nghiệp khác:
Trang 20- Báo cáo cho các hoạt động quản lý quan hệ khách hàng:
e
Chăm sóc khách hàng :
Module Helpdesk: Giải quyết, hỗ trợ các vấn đề phát sinh trong quá trình mua và bán của doanh nghiệp đối với khách hàng.
Báo cáo phân tích theo trạng thái các hỗ trợ chăm sóc khách hàng trong quá trình cũng như sau khi mua hàng:
Trang 21PHẦN 2: ỨNG DỤNG BÊN THỨ BA TRONG ODOO.
1 Cấu trúc mở của Odoo và các ứng dụng bên thứ baphát triển.
Odoo là phần mềm lập kế hoạch nguồn lực doanh nghiệp (ERP) mã nguồn mở toàn diện được tạo thành từ một bộ tích hợp các mô-đun kinh doanh, bao gồm quản lý quan hệ khách hàng (CRM), thương mại điện tử, kế toán, thanh toán, quản lý hàng tồn kho, quản lý dự án, quản lý kho hàng, tài chính quản lý, sản xuất và mua hàng Các mô-đun này nhằm mục đích giao tiếp hiệu quả và liền mạch với nhau để trao đổi thông tin.
Ngoài ra Odoo còn bao gồm hơn 30 mô-đun chính được cập nhật thường xuyên và hơn 16.000 ứng dụng / plug-in khác của bên thứ ba có sẵn trong cửa hàng ứng dụng của hãng Bởi vì đây là một hệ thống mô-đun, khách hàng có thể bắt đầu với các công cụ đơn giản có sẵn khác và có thể thêm mô-đun nếu cần.
Trang 222 Ứng dụng đã cài dặt và các chức năng chính.
1 ỨNG DỤNG: HOTEL MANNAGEMENT
Ứng dụng lựa chọn cài đặt: Hotel Management phiên bản 15.0.
Hotel Management có các chức năng chính như:
Đặt phòng khách sạn
Thông báo những người đã check-in, check-out Nhà hàng của khách sạn
Tạo các hồ sơ theo dõi các khoản chi tiêu của khách
Chỉnh sửa thông tin của các phòng, tiện nghi, dịch vụ của khách sạn
Nhập dữ liệu cho các chức năng Đặt phòng khách sạn:
Theo dõi những người đã check-in:
Trang 23Theo dõi những người đã check-out:
Nhà hàng sẽ có các món ăn cho các bữa sáng, trưa , tối trong ngày:
Chỉnh sửa thông tin của khách sạn:
Trang 242 ỨNG DỤNG : HOSPITAL MANAGEMENT
Hospital management có các chức năng chính như:
Quản lí bệnh nhân nhập viện, đơn thuốc,bệnh nhân nội trú Quản lí bác sĩ, chuẩn đoán bệnh cho các bệnh nhân Kiểm tra phòng thí nghiệm, vaccine
Thanh toán, chi trả viện phí
Chỉnh sửa thông tin của các khoa, phòng ban trong bệnh viện Nhập dữ liệu cho các chức năng.
Quản lí bệnh nhân nhập viện, đơn thuốc,bệnh nhân nội trú:
Trang 25Quản lí bác sĩ , và chuẩn đoán bệnh nhân :
Quản lí các Lab và kiểm tra Lab, vaccine cho bệnh nhân :
Chức năng thanh toán:
Trang 26Chỉnh sửa thông tin của các khoa, phòng ban trong bệnh viện, các giường bệnh :
Trang 27PHẦN 3: TÌM HIỂU VỀ CẤU TRÚC MÃ NGUỒN VÀ CƠSỞ DỮ LIỆU CỦA ODOO.
1 Cấu trúc mã nguồn và cơ sở dữ liệu của Odoo.
a
Cấu trúc mã nguồn của Odoo.
Odoo là một kiến trúc ba tầng đa đối tượng: tầng ứng dụng để xử lý, tầng
trình bày cho giao diện người dùng và tầng cơ sở dữ liệu để lưu trữ dữ liệu Bản thân tầng áp dụng được viết như một lõi, nhiều mô-đun khác có thể được đưa vào để tạo cấu hình được chọn của kiến trúc Odoo.
Cốt lõi của kiến trúc Odoo và các mô-đun của nó được viết bằng Python Tính thực tiễn của một mô-đun được thể hiện thông qua XML-RPC (và / hoặc NET-RPC đặt cược vào cấu hình của máy chủ) Các mô-đun thường xây dựng việc sử dụng ORM của Odoo để duy trì kiến thức của chúng trong một dịch vụ thông tin điện tử (PostgreSQL) Các mô-đun sẽ chèn kiến thức vào thông tin trong suốt quá trình cài đặt bằng cách cung cấp các tệp XML, CSV hoặc YML Một hệ thống Open ERP được cấu tạo từ 3 thành phần chính:
- PostgreSQL database server, chứa toàn bộ cơ sở dữ liệu, trong đó có hầu hết các dữ liệu và cấu hình của hệ thống - Open ERP application server, chứa các thuật toán và đảo bảo Open ERP vận hành hiệu quả nhất.
- Web server, một ứng dụng riêng, được gọi là Open Object client-web, cho phép bạn kết nối đến Open ERP từ một trình duyệt web thông thường mà không cài GTK Client Kiến trúc của Odoo:
Trang 28Server ?
Odoo cung cấp một máy chủ điều hành liên kết trên các ứng dụng kinh doanh cụ thể có thể được thiết kế, với các tùy chọn nổi bật là ORM linh hoạt, thiết kế MVC liên kết trong điều hành, các mô hình và chế độ xem theo từng phần, các công cụ báo cáo hoàn toàn riêng biệt, tất cả đều gắn liền với nhau trong một khuôn khổ kết nối, có thể truy cập mạng Server tương tác với Client thông qua giao thức XML –RPC.
Client ?
Odoo cung cấp cho người dùng một giao diện dễ dàng thao tác và sử dụng Khi người dùng thực hiện một hành động (lưu biểu mẫu, mở menu, in, ) Client sẽ gửi hành động này đến Server Sau đó Server sẽ gửi hành động mới để thực thi cho
Client.Client sẽ lấy dữ liệu (forms, lists, trees) từ Odoo Server thông qua giao thức XML-RPC và gửi chúng lại cho ngời dùng.Với cách tiếp cận này, gần như tất cả các thay đổi, phát triển đều được thực hiện ở phía Server, điều này giúp Odoo trở nên dễ dàng hơn trong việc thay đổi và bảo trì.
Không những thế Odoo còn phát triển 2 phiên bản (Offline cho desktop và Online trên web) để đáp ứng nhu cầu sử dụng của người sử dụng.
b
Cơ sở dữ liệu của Odoo
Odoo một cơ sở dữ liệu với đầy đủ các công cụ để tạo, sao chép, xóa, sao
lưu và khôi phục cơ sở dữ liệu Ngoài ra người dùng còn có thể thay đổi mật
Trang 29khẩu chính được sử dụng để bảo vệ quyền truy cập vào giao diện quản lý cơ sở dữ liệu.
Phần mềm ODOO sử dụng PostgreSQL database server để chứa toàn bộ dữ liệu và cấu hình của hệ thống, bao gồm tất cả công cụ,
phương thức quản lí tiêu chuẩn của một cơ sở dữ liệu nhưng Odoo cũng đề xuất một giao diện web để đáp ứng thêm nhu cầu của người sử dụng.
PostgreSQL là gì?
PostgreSQL là một hệ thống cơ sở dữ liệu quan hệ đối tượng mã nguồn mở mạnh mẽ, sử dụng và mở rộng ngôn ngữ SQL kết hợp với nhiều tính năng giúp lưu trữ và chia tỷ lệ một cách an toàn các khối lượng công việc dữ liệu phức tạp nhất Nguồn gốc của PostgreSQL có từ năm 1986 như một phần của dự án POSTGRES tại Đại học California ở Berkeley và đã có hơn 30 năm phát triển tích cực trên nền tảng cốt lõi.
Postgres là hệ quản trị cơ sở dữ liệu đầu tiên thực hiện điều khiển đồng thời nhiều phiên bản (MVCC) ngay cả trước oracle Đây là hệ thống cơ sở dữ liệu tiên tiến nhất và cơ sở dữ liệu được khuyến khích sử dụng đặc biệt cho những tổ chức thích sử dụng phần mềm miễn phí và phần mềm mã nguồn mở như Odoo.
Tại sao PostgreSQL được dùng cho Odoo?
Nếu chúng ta muốn một trang web hoặc ứng dụng nhỏ có phần phụ trợ cơ sở dữ liệu, thường thì mySQL sẽ là tùy chọn Nhưng đối với một DBMS doanh nghiệp, Postgres là tốt hơn.
PostgreSQL đi kèm với nhiều tính năng nhằm giúp các nhà phát triển
xây dựng ứng dụng, quản trị viên để bảo vệ tính toàn vẹn của dữ liệu và xây dựng môi trường chịu lỗi, đồng thời giúp bạn quản lý dữ liệu của mình bất kể tập dữ liệu lớn hay nhỏ Không nhưng thế PostgreSQL có một số lợi thế so với hệ thống cơ sở dữ liệu khác.Cụ thể như là:
Mã nguồn mở: PostgreSQL là một mã nguồn mở và có thể tùy chỉnh
theo nhu cầu của người sử dụng Khả năng tùy biến rất là hữu ích trong các ứng dụng quy mô lớn
Cộng đồng nhà phát triển lớn:PostgreSQL đã có mặt trên thị trường hơn 15 năm và cộng đồng các nhà phát triển của nó đã phát triển
Trang 30rất nhiều vào thời điểm này Cộng đồng nhà phát triển lớn có nghĩa là hỗ trợ tốt và giúp giải quyết các vấn đề liên quan đến cơ sở dữ liệu.
Tiết kiệm chi phí: PostgreSQL không yêu cầu bảo trì quá nhiều vì nó có
tính ổn định cao Do đó, nếu bạn phát triển các ứng dụng dựa trên PostgreSQL, chi phí sở hữu sẽ thấp hơn so với các hệ thống quản lý dữ liệu khác.
Độ tương thích cao: PostgreSQL có thể tương thích với hầu hết các nền
tảng và ngôn ngữ lập trình Vì vậy, PostgreSQL là một cơ sở dữ liệu lý tưởng cho việc nhắm mục tiêu ứng dụng trên nhiều nền tảng
Có khả năng mở rộng cao: PostgreSQL cũng có khả năng mở
rộng tuyệt vời Do đó bạn có thể định nghĩa các kiểu dữ liệu riêng của bạn, xây dựng các hàm tùy chỉnh, hay viết mã từ các ngôn ngữ lập trình khác nhau mà không cần biên dịch lại cơ sở dữ liệu.
Độ tin cậy và tính ổn định cao: Không giống như các hệ thống cơ sở dữ
liệu khác, cơ hội xảy ra sự cố trong PostgreSQL là ít khi xảy ra và ngay cả khi có gặp sự cố, vẫn có những cách và tính năng mà bạn có thể khôi phục lại dữ liệu đã mất
2 Quy trình phát triển module trong ODOO.
a Quy trình phát triển module Offline
Các thành phần của Odoo Addon Module:
- Business objects: Các đối tượng nghiệp vụ, được khai báo dưới dạng 1 Python Class
- Data files: Các file xml chứa dữ liệu
- Web controllers: Kiểm soát, xử lý các request từ web browser
- Static web data: Các thành phần tĩnh tạo nên giao diện website: JS, CSS, Images…
Tạo Odoo Addon Module
Odoo cho phép ta tạo 1 module cơ bản sử dụng subcommad là scaffold, cú pháp tạo module như bên dưới: