• Mối quan hệ TỔ CHỨC & SẢN PHẨM
SAN_PHAM_TC (Mã sản phẩm, Tên sản phẩm, Thể tích, Khối lượng, Chiều dài, Chiều rộng, Chiều cao, Số lượng trên kệ, Số lẻ/thùng, Đơn vị, Giá thùng, Giá lẻ, Mã tổ chức)
• Mối quan hệ giữa DANH MỤC SẢN PHẨM & SẢN PHẨM
SAN_PHAM_DM (Mã sản phẩm, Tên sản phẩm, Thể tích, Khối lượng, Chiều dài, Chiều rộng, Chiều cao, Số lượng trên kệ, Số lẻ/thùng, Đơn vị, Giá thùng, Giá lẻ, Mã danh mục)
→ Từ các quan hệ SAN_PHAM_TC & SAN_PHAM_DM ta có quan hệ:
SAN_PHAM (Mã sản phẩm, Mã tổ chức, Mã danh mục, Tên sản phẩm, Thể tích, Khối lượng, Chiều dài, Chiều rộng, Chiều cao, Số lượng trên kệ, Số lẻ/thùng, Đơn vị, Giá thùng, Giá lẻ)
• Mối quan hệ giữa TỔ CHỨC & KHACH HÀNG
KHACH_HANG_TC (Mã khách hàng, Tên khách hàng, Xưng hô, Giờ mở cửa, Giờ đóng cửa, Khung thời gian, Email, Số điện thoại, Địa chỉ, Kinh độ, Vĩ độ, Mã tổ chức)
• Mối quan hệ giữa NHÓM KHÁCH HÀNG & KHÁCH HÀNG
KHACH_HANG_NHOM (Mã khách hàng, Tên khách hàng, Xưng hô, Giờ mở cửa, Giờ đóng cửa, Khung thời gian, Email, Số điện thoại, Địa chỉ, Kinh độ, Vĩ độ, Mã nhóm)
→ Từ hai quan hệ KHACH_HANG_TC & KHACH_HANG_NHOM ta có quan hệ:
KHACH_HANG (Mã khách hàng, Mã tổ chức, Mã nhóm, Tên khách hàng, Xưng hô, Giờ mở cửa, Giờ đóng cửa, Khung thời gian, Email, Số điện thoại, Địa chỉ, Kinh độ, Vĩ độ)
• Mối quan hệ giữa TỔ CHỨC & ĐƠN HÀNG
DON_HANG_TC (Mã đơn hàng, Ngày đơn hàng, Ghi chú, Trạng thái kế hoạch, Trạng thái đơn hàng, Tình trạng giao hàng, Chiết khấu khuyến mãi, Tổng giá, Mã tổ chức)
• Mối quan hệ giữa KHACH HÀNG & ĐƠN HÀNG
DON_HANG_KH (Mã đơn hàng, Ngày đơn hàng, Ghi chú, Trạng thái kế hoạch, Trạng thái đơn hàng, Tình trạng giao hàng, Chiết khấu khuyến mãi, Tổng giá, Mã khách hàng)
• Mối quan hệ giữa ĐƠN HÀNG & SẢN PHẨM
DON_HANG_SP (Mã đơn hàng, Mã sản phẩm, Số thùng, Số lẻ, Tổng khối lượng, Tổng thể tích, Giá thùng, Giá lẻ, Giá dòng)
→ Từ các quan hệ DON_HANG_TC, DON_HANG_KH & DON_HANG_SP ta có quan hệ:
DON_HANG_BAN (Mã đơn hàng, Mã tổ chức, Mã khách hàng, Mã sản phẩm, Ngày
đơn hàng, Ghi chú, Số thùng, Số lẻ, Tổng khối lượng, Tổng thể tích, Giá thùng, Giá lẻ, Giá dòng, Chiết khấu khuyến mãi, Tổng giá, Trạng thái kế hoạch, Trạng thái đơn hàng, Tình trạng giao hàng)
• Mối quan hệ giữa TỔ CHỨC & PHƯƠNG TIỆN
PHUONG_TIEN_TC (Mã phương tiện, Tên phương tiện, Biển số, Khối lượng, Thể tích, Loại nhiệt độ, Thời gian bắt đầu, Thời gian dừng, Chi phí trên km, Tốc độ, Chi phí cố định, Mã
tổ chức)
• Mối quan hệ giữa LOẠI PHƯƠNG TIỆN & PHƯƠNG TIỆN
PHUONG_TIEN_LOAI (Mã phương tiện, Tên phương tiện, Biển số, Khối lượng, Thể tích, Loại nhiệt độ, Thời gian bắt đầu, Thời gian dừng, Chi phí trên km, Tốc độ, Chi phí cố định, Mã loại)
→ Từ hai quan hệ PHUONG_TIEN_TC & PHUONG_TIEN_LOAI ta có quan hệ sau:
PHUONG_TIEN (Mã phương tiện, Mã tổ chức, Mã loại, Tên phương tiện, Biển số, Khối lượng, Thể tích, Loại nhiệt độ, Thời gian bắt đầu, Thời gian dừng, Chi phí trên km, Tốc độ, Chi phí cố định)
• Mối quan hệ giữa TỔ CHỨC & TÀI XẾ
TAI_XE_TC (Tên đăng nhâp, Họ tên, Email, Số điện thoại, Hạng bằng, Mã tổ chức)
h. Mối quan hệ giữa LOẠI PHƯƠNG TIỆN & TÀI XẾ
TAI_XE_LPT (Tên đăng nhâp, Họ tên, Email, Số điện thoại, Hạng bằng, Mã loại)
Thuộc tính Kiểu dữ liệu Ràng buộc Giải thích
→ Từ các quan hệ TAI_XE_TC & TAI_XE_LPT ta có quan hệ sau:
TAI_XE (Tên đăng nhập, Họ tên, Email, Số điện thoại, Hạng bằng, Mã tổ chức, Mã loại)
• Mối quan hệ giữa LỘ TRÌNH & ĐƠN HÀNG
LO_TRINH_DON_HANG (Mã đơn hàng, Tên tổ chức, Ngày đơn hàng, Ghi chú, Trạng thái kế hoạch, Trạng thái đơn hàng, Tình trạng giao hàng, Chiết khấu khuyến mãi, Tổng giá, Mã lô trình)
DON_HANG_SP (Mã đơn hàng, Mã sản phẩm, Số thùng, Số lẻ, Tổng KL, Tổng TT, Giá thùng, Giá lẻ, Giá dòng)
• Mối quan hệ giữa LỘ TRÌNH & TÀI XẾ
LO_TRINH_TX (Mã lô trình, Quãng đường, Chi phí, Doanh thu, Lợi nhuận, Doanh thu/quãng đường, Khối lượng/sức chứa, Thể tích/sức chứa, Xe tải/Xe máy/Tổng số, Đô thân thuộc, Tên đăng nhập)
• Mối quan hệ giữa LỘ TRÌNH & PHƯƠNG TIỆN
LO_TRINH_PT (Mã lô trình, Quãng đường, Chi phí, Doanh thu, Lợi nhuận, Doanh thu/quãng đường, Khối lượng/sức chứa, Thể tích/sức chứa, Xe tải/Xe máy/Tổng số, Đô thân thuộc, Mã phương tiện)
→ Từ các quan hệ LO_TRINH_DON_HANG, DON_HANG_SP, LO_TRINH_TX, LO_TRINH_PT ta có quan hệ sau:
LO_TRINH (Mã lô trình, Mã đơn hàng, Tên tổ chức, Ngày đơn hàng, Ghi chú, Trạng thái kế hoạch, Trạng thái đơn hàng, Tình trạng giao hàng, Chiết khấu khuyến mãi,
Tổng giá, Mã sản phẩm, Số thùng, Số lẻ, Tổng KL, Tổng TT, Giá thùng, Giá lẻ, Giá dòng, Quãng đường, Chi phí, Doanh thu, Lợi nhuận, Doanh thu/quãng đường, Khối lượng/sức chứa, Thể tích/sức chứa, Xe tải/Xe máy/Tổng số, Đô thân thuộc, Tên đăng nhập, Mã phương tiện)
• Mối quan hệ giữa LỘ TRÌNH & TAC VỤ
TAC_VU_LO_TRINH (Mã lô trình, Mã tác vụ, Mã đơn hàng, Khách hàng)
• Mối quan hệ giữa TÀI XẾ & TÁC VỤ
TAC_VU_TAI_XE (Tên đăng nhập, Mã tác vụ, Ngày đơn hàng, Tên tổ chức)
• Mối quan hệ giữa TÁC VỤ & HÀNH ĐỘNG (1:1)
TAC_VU_HANH_DONG (Mã tác vụ, Tên tác vụ, Thời gian tạo, Ngày bắt đầu, Ngày hoàn thành, Trạng thái tác vụ, Mã hành đông)
→ Từ các quan hệ TAC_VU_LO_TRINH, TAC_VU_TAI_XE & TAC_VU_HANH_DONG ta có quan hệ sau:
TAC_VU (Mã lô trình, Mã tác vụ, Mã đơn hàng, Tên đăng nhâp, Tên tác vụ, Khách
hàng, Ngày đơn hàng, Tên tổ chức, Thời gian tạo, Ngày bắt đầu, Ngày hoàn thành, Trạng thái tác vụ, Mã hành đông)
2.5. Bảng dữ liệu vât lý
2.5.1. Bảng Khách hàng
KHACH_HANG (Mã khách hàng, Mã tổ chức, Mã nhóm, Tên khách hàng, Xưng hô, Giờ mở cửa, Giờ đóng cửa, Email, Số điện thoại, Địa chỉ, Kinh độ, Vĩ độ)
Mã tổ chức Dropdown list Not null Hiên thị Tên tổ chức Mã nhóm Dropdown list Hiên thị Tên nhóm Tên khách hàng String Not null Tên khách hàng
Xưng hô String Xưng hô
Giờ mở cửa Datetime Giờ mở cửa của khách hàng Giờ đóng cửa Datetime Giờ đóng cửa của khách
hàng
Khung thời gian Datetime Khung thời gian giao hàng
Email String Email
Số điện thoại String Số điện thoại
Địa chỉ String Địa chỉ
Kinh độ float Kinh độ trong vị trí địa chỉ của khách hàng
Vĩ độ float Vĩ độ trong vị trí địa chỉ của
khách hàng
Thuộc tính Kiểu dữ liệu Ràng buộc Giải thích
Bảng 3. Bảng Khách hàng
2.5.2. Bảng Nhóm khách hàng:
Mã nhóm String Khóa chính, Not
null Mã nhóm
Tên nhóm String Tên nhóm
Mô tả nhóm String Mô tả
Thuộc tính Kiểu dữ liệu Ràng buộc Giải thích
Mã sản phẩm String Khóa chính, Not null
Mã sản phẩm
Mã tổ chức Dropdown list Not null Hiển thị Tên tổ chức Mã danh mục Dropdown list Not null Hiển thị Tên danh mục Tên sản phẩm String Not null Tên sản phẩm
Thể tích float Thể tích
Khối lượng float Khối lượng
Chiều dài float Chiều dài
Chiều rộng float Chiều rộng
Chiều cao float Chiều cao
Số lượng trên kệ int Số lượng trên kệ của Sản phẩm có sẵn
Số lẻ/thùng int Số sản phẩm lẻ trên một thùng
Đơn vị String Đơn vị tính
Giá thùng float Giá thùng sản phẩm Giá lẻ float Giá của sản phẩm lẻ trong
thùng
Thuộc tính Kiểu dữ liệu Ràng buộc Giải thích
Bảng 4. Bảng Khách hàng
2.5.3. Bảng Sản phẩm
SAN_PHAM (Mã sản phẩm, Mã tổ chức, Mã danh mục, Tên sản phẩm, Thể tích, Khối lượng, Chiều dài, Chiều rộng, Chiều cao, Số lượng trên kệ, Số lẻ/thùng, Đơn vị, Giá thùng, Giá lẻ)
Bảng 5. Bảng Sản phẩm
2.5.4. Bảng Danh mục sản phẩm
DANH MỤC SẢN PHẨM (Mã danh mục, Tên danh mục, Loại danh mục, Thời gian dỡ một đơn vị sản phẩm, Mô tả)
Mã danh mục String Khóa chính, Not
null Mã danh mục Tên danh mục String Not null Tên danh mục Loại danh mục String Not null Loại danh mục Thời gian dỡ một
đơn vị sản phẩm
Time Thời gian soạn dỡ
hàng trên một đơn vị sản phẩm
Mô tả String Mô tả
Bảng 6. Bảng Danh mục Sản p lẩm
Thuộc tính Kiểu dữ liệu Ràng buộc Giải thích
Mã đơn hàng String Khóa chính,
Mã đơn hàng
Mã tổ chức Dropdown List Not null Hiển thị Tên tổ chức Mã khách hàng Dropdown List Not null Hiển thị Tên khách hàng Mã sản phẩm Dropdown List Not null Hiển thị Tên sản phẩm Ngày đơn hàng Datetime Not null Ngày đơn hàng
Ghi chú String Ghi chú
Số thùng int Not null Số thùng Số lẻ int Not null Số lẻ Tổng khối
lượng
float Tổng khối lượng của tất cả các Sản
phẩm trong đơn hàng
Tổng thể tích float Tổng thể tích của tất cả các Sản phẩm trong đơn hàng
Giá thùng int Giá thùng
Giá lẻ int Giá lẻ
Giá dòng float Giá dòng của mỗi Sản phẩm trong đơn hàng = Số thùng * Giá thùng +
Số lẻ * Giá lẻ Chiết khấu
khuyến mãi
float Chiết khấu khuyến mãi
33
2.5.5. Bảng Đơn hàng
DON_HANG_BAN (Mã đơn hàng, Mã tổ chức, Mã khách hàng, Mã sản phẩm, Ngày đơn hàng, Ghi chú, Số thùng, Số lẻ, Tổng khối lượng, Tổng thể tích, Giá thùng, Giá lẻ, Giá dòng, Chiết khấu khuyến mãi, Tổng giá, Trạng thái kế hoạch, Trạng thái đơn
Tông giá float Tông giá của đơn hàng = Tông giá dòng của tất cả các sản phẩm - Chiêt khấu khuyên mãi
Trạng thái kê hoạch
Trạng thái kê hoạch, bao gôm: - Mở: đơn hàng vừa được tạo - Đã vào lộ trình: Đơn hàng đã lên lộ trình
- Đã chốt lộ trình: Đơn hàng có trong lộ trình đã được chốt Trạng thái đơn
hàng
Trạng thái đơn hàng, bao gôm: - Mở: Đơn hàng vừa được tạo ra - Đang giao: Đơn hàng đang được giao
- Đã giao: Đơn hàng đã được giao - Huỷ: Đơn hàng bị huỷ
Tình trạng giao hàng
Tình trạng giao hàng, bao gôm: - Chưa thực hiện: Đơn hàng vừa mới tạo ra
- Đã giao: Đơn hàng được giao thành công
- Giao một phần: Đơn hàng được giao một phần
- Không giao được: Đơn hàng không giao được
Thuộc tính Kiểu dữ liệu Ràng buộc Giải thích
Mã phương tiện String Not null Mã phương tiện Mã tổ chức Dropdown
list
Not null Hiển thị Tên tổ chức
Mã loại phương tiện
Dropdown list
Not null Hiển thị Tên loại phương tiện
Tên phương tiện String Not null Tên phương tiện Biển số String Not null Biển số phương tiện
Khối lượng float Not null Khối lượng thực tê phương tiện có thể chuyên chở (Sức chứa theo khối lượng của phương tiện)
Thể tích float Not null Thể tích thực tê phương tiện có thể chuyên chở (Sức chứa theo thể tích của phương tiện)
Loại nhiệt độ Dropdown list
Loại nhiệt độ của phương tiện
Thời gian bắt đầu
Time Not null Thời gian phương tiện bắt đầu làm việc
Thời gian dừng Time Not null Thời gian phương tiện dừng làm việc
Chi phí trên km float Chi phí của phương tiện trên một kilomet đường đi
Tốc độ float Not null Tốc độ trung bình của phương tiện Chi phí cố định float Chi phí cố định của phương tiện
Thuộc tính Kiểu dữ liệu Giải thích
Mã loại String Mã loại phương tiện Tên loại String Tên loại phương tiện Thời gian soạn dỡ
hàng
Time Thời gian soạn/dỡ hàng của
phương tiện
Bảng 7. Bảng Đơn hàng
35
2.5.6. Bảng Phương tiện
PHUONG_TIEN (Mã phương tiện, Mã tổ chức, Mã loại, Tên phương tiện, Biển số, Khối lượng, Thể tích, Loại nhiệt độ, Thời gian bắt đầu, Thời gian dừng, Chi phí trên km, Tốc độ, Chi phí cố định)
Bảng 8. Bảng Phương tiện
2.5.7. Bảng Loại phương tiện
Thuộc tính Kiểu dữ liệu Ràng buộc Giải thích
Mã lộ trình String Not null Mã lộ trình Mã tác vụ String Not null Mã tác vụ Mã đơn hàng String Not null Mã đơn hàng Tên tác vụ String Not null Tên tác vụ Tên tổ chức String Not null Tên tổ chức
Tên đăng nhập String Not null Hiên thị Họ tên tài xê Tên khách hàng String Not null Tên khách hàng Thời gian tạo Datetime Not null Thời gian tạo Ngày bắt đầu Datetime Not null Ngày bắt đầu Ngày hoàn
thành
Datetime Not null Ngày hoàn thành Trạng thái tác vụ String Not null Trạng thái tác vụ Mã hành động String Not null Hiên thị Tên hành động
Bảng 1. Bảng Loại phương tiện
2.5.8. Bảng Tác vụ
TAC_VU (Mã lộ trình, Mã tác vụ, Mã đơn hàng, Tên đăng nhập, Tên tác vụ, Tên khách hàng, Ngày đơn hàng, Tên tổ chức, Thời gian tạo, Ngày bắt đầu, Ngày hoàn thành,
Bảng 10. Bảng Tác vụ
2.6. Lược đồ quan hệ giữa các bảng Cơ sở dữ liệu
2.7. Thiết kế giao diện
2.7.1. Giao diện form Tổ chức
Hình 32. Giao diện form Tổ chức
Trên đây là thiết kế giao diện cho Form Tổ chức. Giao diện gồm các thành phần sau:
- Textbox Mã tổ chức: Mã tổ chức đang được tạo.
- Textbox Tên tổ chức: Tên của tổ chức đang được tạo. Người dùng phải nhập
Tên
tổ chức của Tổ chức cao nhất đến thấp nhất. Trong phạm vi bài toán nghiên cứu có 4 loại tổ chức: Nhà sản xuất, Nhà phân phối, Chi nhánh và Kho.
- Dropdown List Tổ chức cấp trên: Tổ chức cấp trên hay còn gọi là Tổ chức cha
của tổ chức đang được tạo. Khi người dùng kích vào sẽ có một menu xổ xuống bao gồm
tên các tổ chức, người dùng thực hiện chọn Tổ chức cấp trên của tổ chức đang được tạo.
- Dropdown List Loại tổ chức: Loại tổ chức của tổ chức đang được tạo. Người
dùng
tiến hành kích vào trường này và chọn loại tổ chức phù hợp từ danh sách xổ xuống.
- Textbox Vĩ độ, Kinh độ: thông tin về vị trí của Tổ chức đang được tạo. Người
dùng tiến hành lấy thông tin toạ độ của Tổ chức trên Google Map để nhập vào trường này.
- Textbox Địa chỉ: nhập Địa chỉ chính thức tương ứng với kinh độ, vỹ độ của Tổ
chức đang được tạo.
- Textbox Số điện thoại: nhập Số điện thoại của Tổ chức đang được tạo.
- Button HUỶ: cho phép người dùng huỷ form vừa nhập.
- Button TẠO MỚI: các thông tin về tổ chức vừa tạo sẽ được lưu lại khi người
dùng
nhấn Tạo mới.
2.7.2. Giao diện form Khách hàng
Hình 33. Giao diện form Khách hàng
Trên đây là thiết kế giao diện cho Form Khách hàng. Giao diện gồm các thành phần sau:
- Textbox Mã khách hàng: Mã quản lý được gán cho mỗi khách hàng được tạo.
Mã
này được tự động sinh ra hoặc người dùng có thể tự nhập.
Tạo Sản phẩm Thông tin Sán phấm Mã sàn phẩm* Tên sản phám* TỔ chức* Danh mục sản phẩm* I Chọn Tố chức I Chọn Danh mục sán phấm Kích thước sản phẩm Chieu dài (m) Thể tích (m3)
Chiều rộng (m) Khối lượng (kg)
Chièu cao (m)
chức mà khách hàng thuộc về. Trong phạm vi bài toán nghiên cứu khách hàng sẽ thuộc Tổ chức là Kho. Dó đó, người dùng chọn tên của một Kho được xổ xuống từ danh sách.
- Dropdown List Nhóm khách hàng: Người dùng chọn Nhóm khách hàng mà
khách
hàng đang được tạo trực thuộc.
- Textbox Xưng hô: Cách thức xưng hô của khách hàng đang được tạo, để xác
định
giới tính của họ.
- Textbox Họ tên: Người dùng cần nhập họ tên đầy đủ của khách hàng. Họ tên có
thể là tên một công ty hoặc tên một cá nhân.
- Textbox Giờ mở cửa, Giờ đóng cửa: Đây là thời gian trong ngày mà tổ chức
khách hàng chính thức mở cửa và đóng cửa.
- Textbox Số điện thoại: Số điện thoại di động của khách hàng đang được tạo.
Các
tài xế giao hàng sẽ liên lạc với khách hàng qua số điện thoại này.
- Textbox Email: Địa chỉ email của người nhận chính từ khách hàng.
- Textbox Địa chỉ: Địa chỉ cụ thể của khách hàng đang được tạo.
- Textbox Kinh độ, Vĩ độ: Toạ độ tương ứng với địa chỉ của khách hàng đang
được tạo.
- Textbox Khung thời gian: Đây là khoảng thời gian trong ngày mà khách hàng
sẽ
nhận hàng giao tới họ. Khung thời gian này cần phải nằm trong khung thời gian mở cửa
và đóng cửa của khách hàng.
- Button HUỶ: Cho phép người dùng huỷ form vừa nhập.