基於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:正常\n2:凍結\n3:刪除',
  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='商品回收表';
複製程式碼

相關文章