4 系統設計
4.1系統概要設計
甘肅旅游服務平臺并沒有使用C/S結構,而是基于網絡瀏覽器的方式去訪問服務器,進而獲取需要的數據信息,這種依靠瀏覽器進行數據訪問的模式就是現在用得比較廣泛的適用于廣域網并且沒有網速限制要求的小程序結構,圖4.1就是開發出來的程序工作原理圖。
圖4.1 程序工作的原理圖
4.2系統功能結構設計
甘肅旅游服務平臺針對管理員設置的功能有:添加并管理各種類型信息,管理用戶賬戶信息,管理景點信息,管理公告信息等內容。
甘肅旅游服務平臺針對用戶設置的功能有:查看并修改個人信息,查看景點信息,查看公告信息等內容。
4.3數據庫設計
4.3.1數據庫E-R圖設計
程序設計是離不開對應數據庫的設計操作的,這樣的做法就是減少數據對程序的依賴性,所以數據庫的設計也是需要花費大量的日常時間來進行設計的,在設計中對程序開發需要存儲的數據信息進行實體劃分,先確認實體,然后設計實體的屬性等操作,這種設計就是數據庫設計里面不能少的必須有的E-R模型設計。為了降低程序設計的對應的數據庫設計難度,開發人員也可以使用相應的工具來進行E-R模型設計,現在市面上設計E-R模型的工具有PowerDesigner建模工具,Navicat制作工具,還有微軟的Visio繪圖工具。為了簡便起見,本程序在設計E-R模型的時候,就選用了微軟的Visio這款功能強大,操作便利的繪圖工具。
(1)下圖是美食實體和其具備的屬性。
?
美食實體屬性圖
(2)下圖是用戶實體和其具備的屬性。
?
用戶實體屬性圖
(3)下圖是公告信息實體和其具備的屬性。
?
公告信息實體屬性圖
(4)下圖是字典表實體和其具備的屬性。
?
字典表實體屬性圖
(5)下圖是景點實體和其具備的屬性。
?
景點實體屬性圖
(6)下圖是房間收藏實體和其具備的屬性。
?
房間收藏實體屬性圖
(7)下圖是景點收藏實體和其具備的屬性。
?
景點收藏實體屬性圖
(8)下圖是美食收藏實體和其具備的屬性。
?
美食收藏實體屬性圖
(9)下圖是美食評價實體和其具備的屬性。
?
美食評價實體屬性圖
(10)下圖是美食訂單實體和其具備的屬性。
?
美食訂單實體屬性圖
(11)下圖是商品實體和其具備的屬性。
?
商品實體屬性圖
(12)下圖是景點門票訂單實體和其具備的屬性。
?
景點門票訂單實體屬性圖
(13)下圖是酒店實體和其具備的屬性。
?
酒店實體屬性圖
(14)下圖是景點評價實體和其具備的屬性。
?
景點評價實體屬性圖
(15)下圖是商家實體和其具備的屬性。
?
商家實體屬性圖
(16)下圖是商品收藏實體和其具備的屬性。
?
商品收藏實體屬性圖
(17)下圖是酒店評價實體和其具備的屬性。
?
酒店評價實體屬性圖
(18)下圖是酒店訂單實體和其具備的屬性。
?
酒店訂單實體屬性圖
(19)下圖是商品評價實體和其具備的屬性。
?
商品評價實體屬性圖
(20)下圖是商品訂單實體和其具備的屬性。
?
商品訂單實體屬性圖
(21)下圖是收貨地址實體和其具備的屬性。
?
收貨地址實體屬性圖
4.3.2 數據庫表結構設計
本次程序開發選用的數據庫管理工具是Mysql數據管理工具,使用它存放數據也需要創建程序對應的數據庫文件,并命名剛創建的數據庫文件,有了數據庫也需要創建各種數據表來充實數據庫,在數據表的創建中,不僅需要對數據表命名,也需要對數據表的字段進行設計,包括每個數據表里面需要設置的字段名稱,字段對應的數據類型信息,字段的主鍵設置這個也是不可缺少的,因為每個數據表里面的主鍵就是標記著這個數據表跟其他數據表相區分的唯一標志。就相當于生活中的每個人都有姓名,但是上網搜索自己的名字,會發現全國上下有很多人的名字跟自己的名字一模一樣,包括姓氏以及名字,區分每個人的唯一信息就是每個人的身份證號信息,主鍵在數據表里面也是起著這樣的重要作用。下面就介紹本次開發的程序甘肅旅游服務平臺的數據表結構信息。
表4.1收貨地址表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | yonghu_id | Integer | 創建用戶 | 是 |
3 | address_name | String | 收貨人 | 是 |
4 | address_phone | String | 電話 | 是 |
5 | address_dizhi | String | 地址 | 是 |
6 | isdefault_types | Integer | 是否默認地址 | 是 |
7 | insert_time | Date | 添加時間 | 是 |
8 | update_time | Date | 修改時間 | 是 |
9 | create_time | Date | 創建時間 | 是 |
表4.2字典表表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | dic_code | String | 字段 | 是 |
3 | dic_name | String | 字段名 | 是 |
4 | code_index | Integer | 編碼 | 是 |
5 | index_name | String | 編碼名字 | 是 |
6 | super_id | Integer | 父字段id | 是 |
7 | beizhu | String | 備注 | 是 |
8 | create_time | Date | 創建時間 | 是 |
表4.3公告信息表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | gonggao_name | String | 公告名稱 | 是 |
3 | gonggao_photo | String | 公告圖片 | 是 |
4 | gonggao_types | Integer | 公告類型 | 是 |
5 | insert_time | Date | 發布時間 | 是 |
6 | gonggao_content | String | 公告詳情 | 是 |
7 | create_time | Date | 創建時間 | 是 |
表4.4景點表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangjia_id | Integer | 商家 | 是 |
3 | jingdian_name | String | 景點名稱 | 是 |
4 | jingdian_uuid_number | String | 景點編號 | 是 |
5 | jingdian_photo | String | 景點照片 | 是 |
6 | jingdian_video | String | 視頻介紹 | 是 |
7 | jingdian_address | String | 景點位置 | 是 |
8 | zan_number | Integer | 贊 | 是 |
9 | cai_number | Integer | 踩 | 是 |
10 | jingdian_types | Integer | 景點類型 | 是 |
11 | jingdian_kucun_number | Integer | 剩余門票數 | 是 |
12 | jingdian_old_money | BigDecimal | 景點原價 | 是 |
13 | jingdian_new_money | BigDecimal | 現價/張 | 是 |
14 | jingdian_clicknum | Integer | 景點熱度 | 是 |
15 | jingdian_content | String | 景點介紹 | 是 |
16 | shangxia_types | Integer | 是否上架 | 是 |
17 | jingdian_delete | Integer | 邏輯刪除 | 是 |
18 | insert_time | Date | 錄入時間 | 是 |
19 | create_time | Date | 創建時間 | 是 |
表4.5景點收藏表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | jingdian_id | Integer | 景點 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | jingdian_collection_types | Integer | 類型 | 是 |
5 | insert_time | Date | 收藏時間 | 是 |
6 | create_time | Date | 創建時間 | 是 |
表4.6景點評價表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | jingdian_id | Integer | 景點 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | jingdian_commentback_text | String | 評價內容 | 是 |
5 | insert_time | Date | 評價時間 | 是 |
6 | reply_text | String | 回復內容 | 是 |
7 | update_time | Date | 回復時間 | 是 |
8 | create_time | Date | 創建時間 | 是 |
表4.7景點門票訂單表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | jingdian_order_uuid_number | String | 訂單編號 | 是 |
3 | jingdian_id | Integer | 景點 | 是 |
4 | yonghu_id | Integer | 用戶 | 是 |
5 | buy_number | Integer | 購買張數 | 是 |
6 | jingdian_order_time | Date | 預定日期 | 是 |
7 | jingdian_order_true_price | BigDecimal | 實付價格 | 是 |
8 | jingdian_order_types | Integer | 訂單類型 | 是 |
9 | jingdian_order_payment_types | Integer | 支付類型 | 是 |
10 | insert_time | Date | 訂單創建時間 | 是 |
11 | create_time | Date | 創建時間 | 是 |
表4.8酒店表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangjia_id | Integer | 商家 | 是 |
3 | jiudian_name | String | 房間名稱 | 是 |
4 | jiudian_uuid_number | String | 房間編號 | 是 |
5 | jiudian_photo | String | 房間照片 | 是 |
6 | jiudian_address | String | 酒店位置 | 是 |
7 | jiudian_tese | String | 特色 | 是 |
8 | zan_number | Integer | 贊 | 是 |
9 | cai_number | Integer | 踩 | 是 |
10 | jiudian_types | Integer | 房型 | 是 |
11 | jiudian_kucun_number | Integer | 剩余房間數 | 是 |
12 | jiudian_old_money | BigDecimal | 房間原價 | 是 |
13 | jiudian_new_money | BigDecimal | 現價/天 | 是 |
14 | jiudian_clicknum | Integer | 房間熱度 | 是 |
15 | jiudian_content | String | 房間介紹 | 是 |
16 | shangxia_types | Integer | 是否上架 | 是 |
17 | jiudian_delete | Integer | 邏輯刪除 | 是 |
18 | insert_time | Date | 錄入時間 | 是 |
19 | create_time | Date | 創建時間 | 是 |
表4.9房間收藏表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | jiudian_id | Integer | 房間 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | jiudian_collection_types | Integer | 類型 | 是 |
5 | insert_time | Date | 收藏時間 | 是 |
6 | create_time | Date | 創建時間 | 是 |
表4.10酒店評價表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | jiudian_id | Integer | 房間 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | jiudian_commentback_text | String | 評價內容 | 是 |
5 | insert_time | Date | 評價時間 | 是 |
6 | reply_text | String | 回復內容 | 是 |
7 | update_time | Date | 回復時間 | 是 |
8 | create_time | Date | 創建時間 | 是 |
表4.11酒店訂單表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | jiudian_order_uuid_number | String | 訂單編號 | 是 |
3 | jiudian_id | Integer | 房間 | 是 |
4 | yonghu_id | Integer | 用戶 | 是 |
5 | buy_number | Integer | 預定天數 | 是 |
6 | jiudian_order_time | Date | 預定入住日期 | 是 |
7 | jiudian_order_true_price | BigDecimal | 實付價格 | 是 |
8 | jiudian_order_types | Integer | 訂單類型 | 是 |
9 | jiudian_order_payment_types | Integer | 支付類型 | 是 |
10 | insert_time | Date | 訂單創建時間 | 是 |
11 | create_time | Date | 創建時間 | 是 |
表4.12美食表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangjia_id | Integer | 商家 | 是 |
3 | meishi_name | String | 美食名稱 | 是 |
4 | meishi_uuid_number | String | 美食編號 | 是 |
5 | meishi_photo | String | 美食照片 | 是 |
6 | zan_number | Integer | 贊 | 是 |
7 | cai_number | Integer | 踩 | 是 |
8 | meishi_types | Integer | 美食類型 | 是 |
9 | meishi_kucun_number | Integer | 美食庫存 | 是 |
10 | meishi_old_money | BigDecimal | 美食原價 | 是 |
11 | meishi_new_money | BigDecimal | 現價/份 | 是 |
12 | meishi_clicknum | Integer | 美食熱度 | 是 |
13 | meishi_content | String | 美食介紹 | 是 |
14 | shangxia_types | Integer | 是否上架 | 是 |
15 | meishi_delete | Integer | 邏輯刪除 | 是 |
16 | insert_time | Date | 錄入時間 | 是 |
17 | create_time | Date | 創建時間 | 是 |
表4.13美食收藏表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | meishi_id | Integer | 美食 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | meishi_collection_types | Integer | 類型 | 是 |
5 | insert_time | Date | 收藏時間 | 是 |
6 | create_time | Date | 創建時間 | 是 |
表4.14美食評價表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | meishi_id | Integer | 美食 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | meishi_commentback_text | String | 評價內容 | 是 |
5 | insert_time | Date | 評價時間 | 是 |
6 | reply_text | String | 回復內容 | 是 |
7 | update_time | Date | 回復時間 | 是 |
8 | create_time | Date | 創建時間 | 是 |
表4.15美食訂單表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | meishi_order_uuid_number | String | 訂單編號 | 是 |
3 | address_id | Integer | 收貨地址 | 是 |
4 | meishi_id | Integer | 美食 | 是 |
5 | yonghu_id | Integer | 用戶 | 是 |
6 | buy_number | Integer | 購買數量 | 是 |
7 | meishi_order_true_price | BigDecimal | 實付價格 | 是 |
8 | meishi_order_courier_name | String | 派送人 | 是 |
9 | meishi_order_courier_number | String | 聯系方式 | 是 |
10 | meishi_order_types | Integer | 訂單類型 | 是 |
11 | meishi_order_payment_types | Integer | 支付類型 | 是 |
12 | insert_time | Date | 訂單創建時間 | 是 |
13 | create_time | Date | 創建時間 | 是 |
表4.16商家表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangjia_name | String | 商家名稱 | 是 |
3 | shangjia_phone | String | 聯系方式 | 是 |
4 | shangjia_email | String | 郵箱 | 是 |
5 | shangjia_photo | String | 營業執照展示 | 是 |
6 | shangjia_xingji_types | Integer | 商家信用類型 | 是 |
7 | new_money | BigDecimal | 現有余額 | 是 |
8 | shangjia_content | String | 商家介紹 | 是 |
9 | shangjia_delete | Integer | 邏輯刪除 | 是 |
10 | jinyong_types | Integer | 賬戶狀態 | 是 |
11 | create_time | Date | 創建時間 | 是 |
表4.17商品表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangjia_id | Integer | 商家 | 是 |
3 | shangpin_name | String | 商品名稱 | 是 |
4 | shangpin_uuid_number | String | 商品編號 | 是 |
5 | shangpin_photo | String | 商品照片 | 是 |
6 | zan_number | Integer | 贊 | 是 |
7 | cai_number | Integer | 踩 | 是 |
8 | shangpin_types | Integer | 商品類型 | 是 |
9 | shangpin_kucun_number | Integer | 商品庫存 | 是 |
10 | shangpin_old_money | BigDecimal | 商品原價 | 是 |
11 | shangpin_new_money | BigDecimal | 現價 | 是 |
12 | shangpin_clicknum | Integer | 商品熱度 | 是 |
13 | shangpin_content | String | 商品介紹 | 是 |
14 | shangxia_types | Integer | 是否上架 | 是 |
15 | shangpin_delete | Integer | 邏輯刪除 | 是 |
16 | insert_time | Date | 錄入時間 | 是 |
17 | create_time | Date | 創建時間 | 是 |
表4.18商品收藏表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangpin_id | Integer | 商品 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | shangpin_collection_types | Integer | 類型 | 是 |
5 | insert_time | Date | 收藏時間 | 是 |
6 | create_time | Date | 創建時間 | 是 |
表4.19商品評價表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangpin_id | Integer | 商品 | 是 |
3 | yonghu_id | Integer | 用戶 | 是 |
4 | shangpin_commentback_text | String | 評價內容 | 是 |
5 | insert_time | Date | 評價時間 | 是 |
6 | reply_text | String | 回復內容 | 是 |
7 | update_time | Date | 回復時間 | 是 |
8 | create_time | Date | 創建時間 | 是 |
表4.20商品訂單表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | shangpin_order_uuid_number | String | 訂單編號 | 是 |
3 | address_id | Integer | 收貨地址 | 是 |
4 | shangpin_id | Integer | 商品 | 是 |
5 | yonghu_id | Integer | 用戶 | 是 |
6 | buy_number | Integer | 購買數量 | 是 |
7 | shangpin_order_true_price | BigDecimal | 實付價格 | 是 |
8 | shangpin_order_courier_name | String | 快遞公司 | 是 |
9 | shangpin_order_courier_number | String | 快遞單號 | 是 |
10 | shangpin_order_types | Integer | 訂單類型 | 是 |
11 | shangpin_order_payment_types | Integer | 支付類型 | 是 |
12 | insert_time | Date | 訂單創建時間 | 是 |
13 | create_time | Date | 創建時間 | 是 |
表4.21用戶表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | yonghu_uuid_number | String | 用戶編號 | 是 |
3 | yonghu_name | String | 用戶姓名 | 是 |
4 | yonghu_phone | String | 用戶手機號 | 是 |
5 | yonghu_id_number | String | 用戶身份證號 | 是 |
6 | yonghu_photo | String | 用戶頭像 | 是 |
7 | yonghu_email | String | 用戶郵箱 | 是 |
8 | new_money | BigDecimal | 余額 | 是 |
9 | jinyong_types | Integer | 賬戶狀態 | 是 |
10 | create_time | Date | 創建時間 | 是 |
表4.22管理員表
序號 | 列名 | 數據類型 | 說明 | 允許空 |
---|---|---|---|---|
1 | Id | Int | id | 否 |
2 | username | String | 員工名 | 是 |
3 | password | String | 密碼 | 是 |
4 | role | String | 角色 | 是 |
5 | addtime | Date | 新增時間 | 是 |
5 系統實現
5.1管理員功能介紹
5.1.1管理員登錄
系統登錄功能是程序必不可少的功能,在登錄頁面必填的數據有兩項,一項就是賬號,另一項數據就是密碼,當管理員正確填寫并提交這二者數據之后,管理員就可以進入系統后臺功能操作區。下圖就是管理員登錄頁面。
?
圖5.1 管理員登錄頁面
5.1.2 景點管理
項目管理頁面提供的功能操作有:查看景點,刪除景點操作,新增景點操作,修改景點操作。下圖就是景點管理頁面。
?
圖5.2 景點管理頁面
5.1.3 公告信息管理
公告信息管理頁面提供的功能操作有:新增公告,修改公告,刪除公告操作。下圖就是公告信息管理頁面。
?
圖5.3 公告信息管理頁面
5.1.4公告類型管理
公告類型管理頁面顯示所有公告類型,在此頁面既可以讓管理員添加新的公告信息類型,也能對已有的公告類型信息執行編輯更新,失效的公告類型信息也能讓管理員快速刪除。下圖就是公告類型管理頁面。
?
圖5.4 公告類型列表頁面
5.1.5 商品管理
如圖5.5顯示的就是商品管理頁面,此頁面提供給管理員的功能有:新增商品,修改商品,刪除商品。
?
圖5.5商品管理頁面
5.1.6 商品類型管理
如圖5.6顯示的就是商品類型管理頁面,此頁面提供給管理員的功能有:新增商品類型,修改商品類型,刪除商品類型。
?
圖5.6 商品類型管理頁面