基於SpringBoot+Mybatis+Thymeleaf商品資訊管理系統

在雲端發表於2019-02-25

github地址:github.com/zaiyunduan1…,如果對你有幫助,歡迎Star

主要用到的技術:

  1. 使用maven進行專案構建
  2. 使用Springboot+Mybatis搭建整個系統
  3. 使用Thymeleaf模板技術實現頁面靜態化
  4. 使用框架Bootstrap、JQuery開發前端介面
  5. 使用MySQL和MongoDB分別儲存資料和圖片

主要分為四個模組:

  • 使用者管理模組
  • 儀表盤管理模組
  • 商品管理模組
  • 訂單管理模組

(1)使用者管理模組
:使用者登入、註冊、密碼找回(通過郵箱方式)、使用者資訊修改、密碼修改

(2)儀表盤管理模組
:展示當前月收入及其環比(環比=(當前月收入 – 上個月收入)/ 當前月收入)、當前月訂單數及其環比、網站訪問量、當前月退單數及其環比,還有以條形圖的形式(使用jquery外掛)展示最近30天每天的收入和訂單數

(3)商品管理模組
:商品增刪改查、商品圖片匯入(儲存在MongoDB)、匯出商品報表、商品分類增刪改查、庫存查改,庫存不足和積貨提醒、商品回收和恢復。

(4)訂單管理模組
:訂單查詢檢視、訂單退款管理(檢視和審批)、發貨管理、物流公司管理、快遞跟蹤(呼叫快遞100介面)

問題:如何啟動本系統?

  • 修改配置檔案裡面的郵箱賬號密碼
  • 啟動MongoDB和MySQL

直接啟動Application應用即可,適合初學者,開箱即用!

預覽效果

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

附加-資料庫設計

DROP TABLE IF EXISTS `kuaidi100_delivery`;
CREATE TABLE `kuaidi100_delivery` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `delivery_name` varchar(255) NOT NULL,
  `delivery_code` varchar(255) NOT NULL,
  `delivery_sort` varchar(2) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=147 DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS `tb_user`;
CREATE TABLE `tb_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `userName` varchar(45) NOT NULL,
  `password` varchar(45) NOT NULL,
  `realName` varchar(45) DEFAULT NULL,
  `business` varchar(45) DEFAULT NULL,
  `email` varchar(45) DEFAULT NULL,
  `headPicture` varchar(45) DEFAULT NULL,
  `addDate` date DEFAULT NULL,
  `updateDate` date DEFAULT NULL,
  `state` int(11) DEFAULT `0` COMMENT `1:正常
2:凍結
3:刪除`,
  PRIMARY KEY (`id`),
  UNIQUE KEY `name_UNIQUE` (`userName`)
) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS `tb_category`;
CREATE TABLE `tb_category` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT `類目ID`,
  `parent_id` bigint(20) DEFAULT NULL COMMENT `父類目ID=0時,代表的是一級的類目`,
  `name` varchar(50) DEFAULT NULL COMMENT `分類名稱`,
  `status` int(1) DEFAULT `1` COMMENT `狀態。可選值:1(正常),2(刪除)`,
  `sort_order` int(4) DEFAULT NULL COMMENT `排列序號,表示同級類目的展現次序,如數值相等則按名稱次序排列。取值範圍:大於零的整數`,
  `is_parent` tinyint(1) DEFAULT `1` COMMENT `該類目是否為父類目,1為true,0為false`,
  `created` datetime DEFAULT NULL COMMENT `建立時間`,
  `updated` datetime DEFAULT NULL COMMENT `建立時間`,
  PRIMARY KEY (`id`),
  KEY `parent_id` (`parent_id`,`status`) USING BTREE,
  KEY `sort_order` (`sort_order`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=563 DEFAULT CHARSET=utf8 COMMENT=`內容分類`;


DROP TABLE IF EXISTS `tb_item`;
CREATE TABLE `tb_item` (
  `id` bigint(20) NOT NULL COMMENT `商品id,同時也是商品編號`,
  `title` varchar(100) NOT NULL COMMENT `商品標題`,
  `sell_point` varchar(500) DEFAULT NULL COMMENT `商品賣點`,
  `price` bigint(20) NOT NULL COMMENT `商品價格,單位為:分`,
  `num` int(10) NOT NULL COMMENT `庫存數量`,
  `barcode` varchar(30) DEFAULT NULL COMMENT `商品條形碼`,
  `image` varchar(500) DEFAULT NULL COMMENT `商品圖片`,
  `cid` bigint(10) NOT NULL COMMENT `所屬類目,葉子類目`,
  `status` tinyint(4) NOT NULL DEFAULT `1` COMMENT `商品狀態,1-正常,2-下架,3-刪除`,
  `created` datetime NOT NULL COMMENT `建立時間`,
  `updated` datetime NOT NULL COMMENT `更新時間`,
  PRIMARY KEY (`id`),
  KEY `cid` (`cid`),
  KEY `status` (`status`),
  KEY `updated` (`updated`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=`商品表`;


DROP TABLE IF EXISTS `tb_order`;
CREATE TABLE `tb_order` (
  `order_id` varchar(50) COLLATE utf8_bin NOT NULL DEFAULT `` COMMENT `訂單id`,
  `payment` varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT `實付金額。精確到2位小數;單位:元。如:200.07,表示:200元7分`,
  `payment_type` int(2) DEFAULT NULL COMMENT `支付型別,1、線上支付,2、貨到付款`,
  `post_fee` varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT `郵費。精確到2位小數;單位:元。如:200.07,表示:200元7分`,
  `status` int(10) DEFAULT NULL COMMENT `狀態:1、未付款,2、已付款,3、未發貨,4、已發貨,5、交易成功,6、交易關閉`,
  `create_time` datetime DEFAULT NULL COMMENT `訂單建立時間`,
  `update_time` datetime DEFAULT NULL COMMENT `訂單更新時間`,
  `payment_time` datetime DEFAULT NULL COMMENT `付款時間`,
  `consign_time` datetime DEFAULT NULL COMMENT `發貨時間`,
  `end_time` datetime DEFAULT NULL COMMENT `交易完成時間`,
  `close_time` datetime DEFAULT NULL COMMENT `交易關閉時間`,
  `shipping_name` varchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT `物流名稱`,
  `shipping_code` varchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT `物流單號`,
  `user_id` bigint(20) DEFAULT NULL COMMENT `使用者id`,
  `buyer_message` varchar(100) COLLATE utf8_bin DEFAULT NULL COMMENT `買家留言`,
  `buyer_nick` varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT `買家暱稱`,
  `buyer_rate` int(2) DEFAULT NULL COMMENT `買家是否已經評價`,
  `refundStatus` int(2) DEFAULT NULL,
  `refundReason` varchar(255) COLLATE utf8_bin DEFAULT NULL,
  `isRefund` int(2) DEFAULT NULL,
  PRIMARY KEY (`order_id`),
  KEY `create_time` (`create_time`) USING BTREE,
  KEY `buyer_nick` (`buyer_nick`) USING BTREE,
  KEY `status` (`status`) USING BTREE,
  KEY `payment_type` (`payment_type`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


DROP TABLE IF EXISTS `tb_order_item`;
CREATE TABLE `tb_order_item` (
  `id` varchar(20) COLLATE utf8_bin NOT NULL,
  `item_id` varchar(50) COLLATE utf8_bin NOT NULL COMMENT `商品id`,
  `order_id` varchar(50) COLLATE utf8_bin NOT NULL COMMENT `訂單id`,
  `num` int(10) DEFAULT NULL COMMENT `商品購買數量`,
  `title` varchar(200) COLLATE utf8_bin DEFAULT NULL COMMENT `商品標題`,
  `price` bigint(50) DEFAULT NULL COMMENT `商品單價`,
  `total_fee` bigint(50) DEFAULT NULL COMMENT `商品總金額`,
  `pic_path` varchar(200) COLLATE utf8_bin DEFAULT NULL COMMENT `商品圖片地址`,
  PRIMARY KEY (`id`),
  KEY `item_id` (`item_id`) USING BTREE,
  KEY `order_id` (`order_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


DROP TABLE IF EXISTS `tb_order_shipping`;
CREATE TABLE `tb_order_shipping` (
  `order_id` varchar(50) NOT NULL COMMENT `訂單ID`,
  `receiver_name` varchar(20) DEFAULT NULL COMMENT `收貨人全名`,
  `receiver_phone` varchar(20) DEFAULT NULL COMMENT `固定電話`,
  `receiver_mobile` varchar(30) DEFAULT NULL COMMENT `行動電話`,
  `receiver_state` varchar(10) DEFAULT NULL COMMENT `省份`,
  `receiver_city` varchar(10) DEFAULT NULL COMMENT `城市`,
  `receiver_district` varchar(20) DEFAULT NULL COMMENT `區/縣`,
  `receiver_address` varchar(200) DEFAULT NULL COMMENT `收貨地址,如:xx路xx號`,
  `receiver_zip` varchar(6) DEFAULT NULL COMMENT `郵政編碼,如:310001`,
  `created` datetime DEFAULT NULL,
  `updated` datetime DEFAULT NULL,
  PRIMARY KEY (`order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


DROP TABLE IF EXISTS `tb_re_item`;
CREATE TABLE `tb_re_item` (
  `id` bigint(20) NOT NULL COMMENT `商品id,同時也是商品編號`,
  `title` varchar(100) NOT NULL COMMENT `商品標題`,
  `sell_point` varchar(500) DEFAULT NULL COMMENT `商品賣點`,
  `price` bigint(20) NOT NULL COMMENT `商品價格,單位為:分`,
  `num` int(10) NOT NULL COMMENT `庫存數量`,
  `barcode` varchar(30) DEFAULT NULL COMMENT `商品條形碼`,
  `image` varchar(500) DEFAULT NULL COMMENT `商品圖片`,
  `cid` bigint(10) NOT NULL COMMENT `所屬類目,葉子類目`,
  `status` tinyint(4) NOT NULL DEFAULT `1` COMMENT `商品狀態,1-正常,2-下架,3-刪除`,
  `recovered` datetime NOT NULL COMMENT `回收時間`,
  PRIMARY KEY (`id`),
  KEY `cid` (`cid`),
  KEY `status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=`商品回收表`;
複製程式碼

相關文章