第3章 系統設計
3.1系統功能結構設計
本系統的結構分為管理員和用戶、店長。本系統的功能結構圖如下圖3.1所示:
圖3.1系統功能結構圖
3.2數據庫設計
本系統為小程序類的預約平臺,所以對信息的安全和穩定要求非常高。為了解決本問題,采用前端界面展示,后端數據處理的方式進行設計。在后端數據的存儲中采用Mysql數據庫進行設計。數據庫設計分為ER圖設計和數據庫表設計。
3.2.1數據ER圖設計
本系統中的數據種類非常多,想要把數據都有效的關聯起來就需要注意數據之間的聯系。因為數據之間都有聯系,所以在數據庫的操作中不能任意的刪除,如果刪除了一方的數據會造成系統的出錯。
本系統中的數據有用戶信息、管理員信息、預約信息、打印店信息和打印服務信息等。
-
管理員信息的ER圖如下圖3.2所示:
圖3.2管理員信息ER圖
(2)用戶信息ER圖如下圖3.3所示:
圖3.3用戶信息ER圖
(3)打印店信息ER圖如下圖3.4所示:
圖3.4打印店信息ER圖
(4)打印服務信息ER圖如下圖3.5所示:
圖3.5打印服務信息ER圖
(5)預約信息ER圖如下圖3.6所示:
圖3.6預約信息ER圖
3.2.2數據庫表設計
數據庫表的設計質量關系著系統的運行是否穩定,一個好的數據庫表可以保證系統數據的正確處理,數據庫表中設計了數據的分類和主外鍵、長度等信息。根據系統的ER圖設計中本系統的數據庫表有管理員信息表、打印店信息表、預約信息表、打印服務信息表、用戶信息表等,具體的表詳情如下表3.1-3.11所示:
表3.1 config
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_increment | |||
2 | name | varchar | 100 | 否 | ||||||
3 | value | varchar | 100 | 是 |
表3.2 dayindian
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | dianzhangzhanghao | varchar | 200 | 是 | ||||||
4 | dianpumingcheng | varchar | 200 | 是 | ||||||
5 | dianpudizhi | varchar | 200 | 是 | ||||||
6 | dianzhangxingming | varchar | 200 | 是 | ||||||
7 | lianxishouji | varchar | 200 | 是 | ||||||
8 | dianputupian | varchar | 200 | 是 | ||||||
9 | zhuyingyewu | varchar | 200 | 是 | ||||||
10 | yingyeshijian | varchar | 200 | 是 | ||||||
11 | dianpujianjie | longtext | 是 |
表3.3 dayinfuwu
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | fuwumingcheng | varchar | 200 | 否 | ||||||
4 | fuwufengmian | varchar | 200 | 是 | ||||||
5 | fuwuleixing | varchar | 200 | 否 | ||||||
6 | zhizhangleixing | varchar | 200 | 否 | ||||||
7 | fuwujiage | varchar | 200 | 是 | ||||||
8 | zhuyishixiang | varchar | 200 | 是 | ||||||
9 | fuwuxiangqing | longtext | 是 | |||||||
10 | dianzhangzhanghao | varchar | 200 | 是 | ||||||
11 | dianpumingcheng | varchar | 200 | 是 | ||||||
12 | lianxishouji | varchar | 200 | 是 |
表3.4 dianzhang
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | dianzhangzhanghao | varchar | 200 | 否 | ||||||
4 | mima | varchar | 200 | 否 | ||||||
5 | dianpumingcheng | varchar | 200 | 否 | ||||||
6 | dianpudizhi | varchar | 200 | 否 | ||||||
7 | dianzhangxingming | varchar | 200 | 是 | ||||||
8 | xingbie | varchar | 200 | 是 | ||||||
9 | youxiang | varchar | 200 | 是 | ||||||
10 | lianxishouji | varchar | 200 | 是 | ||||||
11 | xiangpian | varchar | 200 | 是 |
表3.5 fuwuleixing
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_increment | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | fuwuleixing | varchar | 200 | 否 |
表3.6 news
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_increment | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | title | varchar | 200 | 否 | ||||||
4 | introduction | longtext | 是 | |||||||
5 | picture | varchar | 200 | 否 | ||||||
6 | content | longtext | 否 |
表3.7 storeup
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_increment | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | userid | bigint | 20 | 否 | ||||||
4 | refid | bigint | 20 | 是 | ||||||
5 | tablename | varchar | 200 | 是 | ||||||
6 | name | varchar | 200 | 否 | ||||||
7 | picture | varchar | 200 | 否 | ||||||
8 | type | varchar | 200 | 是 | 1 | |||||
9 | inteltype | varchar | 200 | 是 |
表3.8 token
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_increment | |||
2 | userid | bigint | 20 | 否 | ||||||
3 | username | varchar | 100 | 否 | ||||||
4 | tablename | varchar | 100 | 是 | ||||||
5 | role | varchar | 100 | 是 | ||||||
6 | token | varchar | 200 | 否 | ||||||
7 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
8 | expiratedtime | timestamp | 否 | CURRENT_TIMESTAMP |
表3.9 users
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_increment | |||
2 | username | varchar | 100 | 否 | ||||||
3 | password | varchar | 100 | 否 | ||||||
4 | role | varchar | 100 | 是 | 管理員 | |||||
5 | addtime | timestamp | 否 | CURRENT_TIMESTAMP |
表3.10 yonghu
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto_incr | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | zhanghao | varchar | 200 | 否 | ||||||
4 | mima | varchar | 200 | 否 | ||||||
5 | xingming | varchar | 200 | 否 | ||||||
6 | xingbie | varchar | 200 | 是 | ||||||
7 | youxiang | varchar | 200 | 是 | ||||||
8 | shoujihaoma | varchar | 200 | 是 | ||||||
9 | xiangpian | varchar | 200 | 是 |
表3.11 yuyuedayin
序號 | 列名 | 數據類型 | 長度 | 小數位 | 標識 | 主鍵 | 外鍵 | 允許空 | 默認值 | 說明 |
---|---|---|---|---|---|---|---|---|---|---|
1 | id | bigint | 20 | 是 | 是 | 否 | auto | |||
2 | addtime | timestamp | 否 | CURRENT_TIMESTAMP | ||||||
3 | fuwumingcheng | varchar | 200 | 否 | ||||||
4 | fuwuleixing | varchar | 200 | 否 | ||||||
5 | zhizhangleixing | varchar | 200 | 否 | ||||||
6 | fuwujiage | varchar | 200 | 是 | ||||||
7 | zhuyishixiang | varchar | 200 | 是 | ||||||
8 | dianzhangzhanghao | varchar | 200 | 是 | ||||||
9 | dianpumingcheng | varchar | 200 | 是 | ||||||
10 | lianxishouji | varchar | 200 | 是 | ||||||
11 | dayintupian | varchar | 200 | 是 | ||||||
12 | dayinneirong | varchar | 200 | 是 | ||||||
13 | zhanghao | varchar | 200 | 是 | ||||||
14 | xingming | varchar | 200 | 是 | ||||||
15 | xiadanshijian | datetime | 是 | |||||||
16 | sfsh | varchar | 200 | 是 | 否 | |||||
17 | shhf | longtext | 是 | |||||||
18 | ispay | varchar | 200 | 是 | 未支付 | |||||
19 | userid | bigint | 20 | 是 |
第4章 系統詳細實現
4.1登錄功能模塊的界面實現
在系統調試運行后,可以進入本界面,本界面是最基本的功能,可以保證系統的安全,采用驗證的安全機制進行設計。在本界面里可以看到賬號和密碼的輸入框。本系統中的登錄權限為普通用戶。必須三種信息都正確才可以驗證成功進入到對應的操作界面。系統的登錄功能模塊的實現界面如下圖4.1所示:
圖4.1系統登錄功能的實現界面
4.2管理員操作界面的功能模塊實現
4.2.1個人中心管理功能模塊的界面實現
本功能的設計可以保證管理員賬號的安全,使用本功能可以修改管理員的登錄密碼。管理員修改密碼功能模塊的實現界面如下圖4.2所示:
圖4.2管理員修改密碼功能的實現界面
4.2.2用戶管理功能模塊的界面實現
本功能可以實現用戶信息的查詢和刪除,管理員添加用戶信息功能填寫正確的信息就可以實現用戶信息的添加,點擊用戶信息管理功能可以看到系統里所有用戶的信息,在添加用戶信息的界面里需要填寫姓名信息,當信息填寫不正確就會造成用戶信息添加失敗。管理員管理用戶信息功能的實現界面如下圖4.3所示:
圖4.3管理員管理用戶信息的實現界面
4.2.3打印店管理功能模塊的界面實現
打印店可以使用戶更好的了解店鋪信息。打印店信息管理的流程為,管理員點擊打印店信息管理功能,查看打印店信息,點擊打印店修改功能,輸入打印店信息然后點擊提交按鈕就可以完成打印店信息的修改。管理員查詢打印店信息的實現界面如下圖4.4所示:
圖4.4管理員查詢打印店信息的實現界面
4.2.4打印服務管理功能模塊的界面實現
打印服務可以幫助用戶了解服務內容,管理員負責審核打印店發布的打印服務。管理員查詢打印服務信息功能的實現界面如下圖4.5所示:
圖4.5管理員查詢打印服務信息的界面實現
4.2.5預約打印管理功能模塊的界面實現
預約打印信息屬于本系統里的核心數據,管理員可以對預約打印的信息進行查詢。本功能設計的目的可以使預約打印進行及時的安排。管理員查詢預約打印信息的實現界面如下圖4.6所示:
圖4.6管理員查詢預約打印信息功能的實現界面
4.2.6店長管理功能模塊的界面實現
管理員可以查詢店長信息,可以進行修改刪除。管理員查詢店長信息的實現界面如下圖4.7所示:
圖4.7管理員查詢店長信息的實現界面
4.3用戶角色的操作界面實現
用戶可以查看自己的預約和修改自己的資料并管理收藏信息。用戶角色的操作界面的實現效果如下圖4.8所示:
圖4.8用戶操作界面的實現效果
4.4首頁界面的操作功能實現
在首頁里可以看到管理員添加和管理的信息,用戶可以在首頁里進行打印的預約和打印店信息的了解。首頁界面的實現如下圖4.9所示:
圖4.9首頁界面的實現效果
4.5店長角色功能的界面實現
店長可以發布打印店信息和打印服務信息以及管理預約打印。實現界面如下圖4.10所示:
圖4.10店長角色的功能實現界面