Github address: github.com/zaiyunduan1… If it helps you, welcome Star

Main technologies used:

  1. Use Maven to build projects
  2. Use Springboot+Mybatis to build the whole system
  3. Use Thymeleaf template technology to achieve page static
  4. Use Bootstrap and JQuery to develop the front-end interface
  5. MySQL and MongoDB are used to store data and images respectively

It is mainly divided into four modules:

  • User Management module
  • Dashboard management module
  • Commodity management module
  • Order management module

(1) User management module: user login, registration, password retrieval (via email), user information modification, password modification

(2) the panel management module: show the current month income and its sequential (sequential = (current income – last month income)/current monthly income), orders and on the current month, site visits, singular and sequential back the current month, and in the form of a bar chart using the jquery plugin) show all daily income of the last 30 days and orders

(3) Commodity management module: increase, delete, change and check of commodities, import commodity pictures (stored in MongoDB), export commodity report, increase, delete, change and check of commodity classification, inventory check and change, inventory shortage and stocking reminder, commodity recovery and recovery.

(4) Order management module: order query and view, order refund management (view and approval), delivery management, logistics company management, express tracking (call express 100 interface)

Question: How do I start the system?

  • Change the email account password in the configuration file
  • Start MongoDB and MySQL

Start the Application directly, suitable for beginners, out of the box!

preview

Add-on – Database design

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: normal \n2: frozen \n3: Deleted ',
  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 'category ID',
  `parent_id` bigint(20) DEFAULT NULL COMMENT 'When the parent category ID=0, it represents the first level category',
  `name` varchar(50) DEFAULT NULL COMMENT 'Category name',
  `status` int(1) DEFAULT '1' COMMENT 'state. Optional values :1(normal),2(deleted)',
  `sort_order` int(4) DEFAULT NULL COMMENT 'Sequence number, indicating the display order of the same category, if the value is equal, according to the name order. Value range: integers greater than zero ',
  `is_parent` tinyint(1) DEFAULT '1' COMMENT 'Is this category a parent? 1 is true, 0 is false',
  `created` datetime DEFAULT NULL COMMENT 'Creation time',
  `updated` datetime DEFAULT NULL COMMENT 'Creation time',
  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='Content Category';


DROP TABLE IF EXISTS `tb_item`;
CREATE TABLE `tb_item` (
  `id` bigint(20) NOT NULL COMMENT 'Item ID, which is also the item number.',
  `title` varchar(100) NOT NULL COMMENT 'Commodity title',
  `sell_point` varchar(500) DEFAULT NULL COMMENT 'Selling point',
  `price` bigint(20) NOT NULL COMMENT 'Commodity price, unit: cent',
  `num` int(10) NOT NULL COMMENT 'Stock quantity',
  `barcode` varchar(30) DEFAULT NULL COMMENT 'Merchandise bar code',
  `image` varchar(500) DEFAULT NULL COMMENT 'Commodity picture',
  `cid` bigint(10) NOT NULL COMMENT 'Category, leaf category',
  `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT 'Product status, 1- Normal, 2- Removed, 3- Deleted',
  `created` datetime NOT NULL COMMENT 'Creation time',
  `updated` datetime NOT NULL COMMENT 'Update Time',
  PRIMARY KEY (`id`),
  KEY `cid` (`cid`),
  KEY `status` (`status`),
  KEY `updated` (`updated`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='List of Goods';


DROP TABLE IF EXISTS `tb_order`;
CREATE TABLE `tb_order` (
  `order_id` varchar(50) COLLATE utf8_bin NOT NULL DEFAULT ' ' COMMENT 'order id',
  `payment` varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT 'Actual amount. Accurate to two decimal places; Unit: yuan. For example :200.07, means :200 yuan 7 cents',
  `payment_type` int(2) DEFAULT NULL COMMENT 'Payment type, 1. Online payment, 2. Cash on delivery',
  `post_fee` varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT 'the postage. Accurate to two decimal places; Unit: yuan. For example :200.07, means :200 yuan 7 cents',
  `status` int(10) DEFAULT NULL COMMENT 'Status: 1, not paid, 2, Paid, 3, not shipped, 4, shipped, 5, transaction successful, 6, transaction closed',
  `create_time` datetime DEFAULT NULL COMMENT 'Order Creation time',
  `update_time` datetime DEFAULT NULL COMMENT 'Order Update Time',
  `payment_time` datetime DEFAULT NULL COMMENT 'Payment time',
  `consign_time` datetime DEFAULT NULL COMMENT 'Delivery time',
  `end_time` datetime DEFAULT NULL COMMENT 'Transaction Completion Time',
  `close_time` datetime DEFAULT NULL COMMENT 'Trading Closing Time',
  `shipping_name` varchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT 'Logistics Name',
  `shipping_code` varchar(20) COLLATE utf8_bin DEFAULT NULL COMMENT 'Tracking Number',
  `user_id` bigint(20) DEFAULT NULL COMMENT 'user id',
  `buyer_message` varchar(100) COLLATE utf8_bin DEFAULT NULL COMMENT 'Buyer's Message',
  `buyer_nick` varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT 'Buyer's Nickname',
  `buyer_rate` int(2) DEFAULT NULL COMMENT 'Has the buyer evaluated?',
  `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 'commodity id',
  `order_id` varchar(50) COLLATE utf8_bin NOT NULL COMMENT 'order id',
  `num` int(10) DEFAULT NULL COMMENT 'Quantity purchased',
  `title` varchar(200) COLLATE utf8_bin DEFAULT NULL COMMENT 'Commodity title',
  `price` bigint(50) DEFAULT NULL COMMENT 'Unit price of goods',
  `total_fee` bigint(50) DEFAULT NULL COMMENT 'Gross merchandise Amount',
  `pic_path` varchar(200) COLLATE utf8_bin DEFAULT NULL COMMENT 'Product Picture address',
  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 'order ID',
  `receiver_name` varchar(20) DEFAULT NULL COMMENT 'Full name of consignee',
  `receiver_phone` varchar(20) DEFAULT NULL COMMENT 'Landline',
  `receiver_mobile` varchar(30) DEFAULT NULL COMMENT 'Mobile phone',
  `receiver_state` varchar(10) DEFAULT NULL COMMENT 'province',
  `receiver_city` varchar(10) DEFAULT NULL COMMENT 'city',
  `receiver_district` varchar(20) DEFAULT NULL COMMENT 'District/county',
  `receiver_address` varchar(200) DEFAULT NULL COMMENT 'Shipping address, e.g. Xx Road no. Xx',
  `receiver_zip` varchar(6) DEFAULT NULL COMMENT 'Zip code, e.g. 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 'Item ID, which is also the item number.',
  `title` varchar(100) NOT NULL COMMENT 'Commodity title',
  `sell_point` varchar(500) DEFAULT NULL COMMENT 'Selling point',
  `price` bigint(20) NOT NULL COMMENT 'Commodity price, unit: cent',
  `num` int(10) NOT NULL COMMENT 'Stock quantity',
  `barcode` varchar(30) DEFAULT NULL COMMENT 'Merchandise bar code',
  `image` varchar(500) DEFAULT NULL COMMENT 'Commodity picture',
  `cid` bigint(10) NOT NULL COMMENT 'Category, leaf category',
  `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT 'Product status, 1- Normal, 2- Removed, 3- Deleted',
  `recovered` datetime NOT NULL COMMENT 'Recovery time',
  PRIMARY KEY (`id`),
  KEY `cid` (`cid`),
  KEY `status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Merchandise Recovery Form';
Copy the code