【数据结构】深入解析:构建父子节点树形数据结构并返回前端

树形数据结构列表

  • 一、前言
  • 二、测试数据生成
  • 三、树形代码
    • 3.1、获取根节点
    • 3.2、遍历根节点,递归获取所有子节点
    • 3.3、排序
    • 3.4、完整代码

一、前言

返回前端VO对象中,有列情况列表展示需要带树形结构,例如基于RBAC权限模型中的菜单返回,或者字段中的城市返回,都涉及到父子节点,开一篇博客记录数据结构通用方法

idpidnamesort
10菜单11
20菜单22
31子菜单1-11
41子菜单1-22
52子菜单2-11

二、测试数据生成

我们以RBAC(Role-Based Access Control)角色访问模型中菜单表为例子,执行下面sql

-- ----------------------------
-- Table structure for t_system_menu
-- ----------------------------
DROP TABLE IF EXISTS `t_system_menu`;
CREATE TABLE `t_system_menu`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `pid` int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '父级ID',
  `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '名称',
  `icon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'icon',
  `perms` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '权限标识',
  `component` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '组件路径',
  `menu_type` varchar(2) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'M' COMMENT '类型,M-目录,C-菜单,A-按钮',
  `sort` int(5) NOT NULL DEFAULT 99999 COMMENT '排序',
  `is_show` tinyint(1) NOT NULL DEFAULT 1 COMMENT '显示状态',
  `is_delte` tinyint(1) UNSIGNED NULL DEFAULT 0 COMMENT '是否删除',
  `create_time` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 405 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统菜单表' ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of t_system_menu
-- ----------------------------
INSERT INTO `t_system_menu` VALUES (1, 0, '运营', 'menu', NULL, '/dashboard', 'M', 1, 1, 0, '2021-11-16 12:11:17', '2021-12-03 13:16:14');
INSERT INTO `t_system_menu` VALUES (2, 0, '商品', 's-goods', NULL, '/store', 'M', 1, 1, 0, '2021-11-16 12:11:17', '2021-11-23 15:54:49');
INSERT INTO `t_system_menu` VALUES (3, 0, '订单', 's-order', NULL, '/order', 'M', 1, 1, 0, '2021-11-16 12:11:17', '2021-11-23 10:44:03');
INSERT INTO `t_system_menu` VALUES (4, 0, '用户', 'user-solid', NULL, '/user', 'M', 1, 1, 0, '2021-11-16 12:11:17', '2021-11-23 10:44:13');
INSERT INTO `t_system_menu` VALUES (5, 0, '内容', 's-management', NULL, '/content', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:44:23');
INSERT INTO `t_system_menu` VALUES (6, 0, '应用', 's-promotion', NULL, '/appSetting', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:44:35');
INSERT INTO `t_system_menu` VALUES (7, 0, '营销', 's-marketing', NULL, '/marketing', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:44:51');
INSERT INTO `t_system_menu` VALUES (8, 0, '分销', 's-check', NULL, '/distribution', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:45:07');
INSERT INTO `t_system_menu` VALUES (9, 0, '财务', 's-finance', NULL, '/financial', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:45:19');
INSERT INTO `t_system_menu` VALUES (10, 0, '移动端管理', 'phone', NULL, '/javaMobile', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:45:30');
INSERT INTO `t_system_menu` VALUES (12, 0, '设置', 's-tools', NULL, '/operation', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:45:57');
INSERT INTO `t_system_menu` VALUES (13, 0, '维护', 's-open', NULL, '/maintain', 'M', 1, 1, 0, '2021-11-16 12:11:18', '2021-11-23 10:46:04');
INSERT INTO `t_system_menu` VALUES (14, 2, '商品管理', NULL, 'admin:product:list', '/store/index', 'C', 1, 1, 0, '2021-11-16 12:19:02', '2021-11-22 18:11:26');
INSERT INTO `t_system_menu` VALUES (15, 2, '商品分类', NULL, '', '/store/sort', 'C', 1, 1, 0, '2021-11-16 12:19:02', '2021-12-03 15:55:15');
INSERT INTO `t_system_menu` VALUES (16, 2, '商品规格', NULL, 'admin:product:rule:list', '/store/attr', 'C', 1, 1, 0, '2021-11-16 12:19:02', '2021-11-22 18:09:19');
INSERT INTO `t_system_menu` VALUES (17, 2, '商品评论', NULL, 'admin:product:reply:list', '/store/comment', 'C', 1, 1, 0, '2021-11-16 12:19:02', '2021-11-22 18:09:47');
INSERT INTO `t_system_menu` VALUES (18, 14, '商品添加', NULL, 'admin:product:save', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-22 18:06:26');
INSERT INTO `t_system_menu` VALUES (19, 14, '商品修改', NULL, 'admin:product:update', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-22 17:40:30');
INSERT INTO `t_system_menu` VALUES (20, 14, '商品删除', NULL, 'admin:product:delete', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-22 17:41:41');
INSERT INTO `t_system_menu` VALUES (21, 14, '商品上架', NULL, 'admin:product:up', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-22 17:41:33');
INSERT INTO `t_system_menu` VALUES (22, 14, '商品下架', NULL, 'admin:product:down', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-22 17:42:03');
INSERT INTO `t_system_menu` VALUES (23, 14, '库存变动', NULL, '', 'api/admin/store/product/stock', 'A', 99999, 1, 0, '2021-11-16 15:55:00', '2021-11-16 15:55:00');
INSERT INTO `t_system_menu` VALUES (24, 14, '虚拟销量', NULL, '', 'api/admin/store/product/ficti', 'A', 99999, 1, 0, '2021-11-16 15:55:00', '2021-11-16 15:55:00');
INSERT INTO `t_system_menu` VALUES (25, 16, '规格添加', NULL, 'admin:product:rule:save', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-23 16:03:23');
INSERT INTO `t_system_menu` VALUES (26, 16, '规格修改', NULL, 'admin:product:rule:update', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-23 16:04:16');
INSERT INTO `t_system_menu` VALUES (27, 16, '规格删除', NULL, 'admin:product:rule:delete', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-23 16:04:41');
INSERT INTO `t_system_menu` VALUES (28, 17, '商品评论添加', NULL, 'admin:product:reply:save', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-23 16:05:52');
INSERT INTO `t_system_menu` VALUES (29, 17, '商品评论详情', NULL, 'admin:product:reply:info', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-23 16:07:47');
INSERT INTO `t_system_menu` VALUES (30, 17, '商品评论删除', NULL, 'admin:product:reply:delete', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-23 16:08:09');
INSERT INTO `t_system_menu` VALUES (31, 17, '商品评论回复', NULL, 'admin:product:reply:comment', '', 'A', 1, 1, 0, '2021-11-16 15:55:00', '2021-11-23 16:08:46');
INSERT INTO `t_system_menu` VALUES (32, 3, '订单', NULL, 'admin:order:list', '/order/index', 'C', 1, 1, 0, '2021-11-16 15:55:15', '2021-11-23 16:10:09');
INSERT INTO `t_system_menu` VALUES (33, 32, '订单删除', NULL, 'admin:order:delete', '', 'A', 1, 1, 0, '2021-11-16 15:58:16', '2021-11-23 16:11:59');
INSERT INTO `t_system_menu` VALUES (34, 32, '订单备注', NULL, 'admin:order:mark', '', 'A', 1, 1, 0, '2021-11-16 15:58:16', '2021-11-23 16:24:00');
INSERT INTO `t_system_menu` VALUES (35, 32, '订单退款', NULL, 'admin:order:refund', '', 'A', 1, 1, 0, '2021-11-16 15:58:16', '2021-11-23 16:12:39');
INSERT INTO `t_system_menu` VALUES (36, 32, '订单拒绝退款', NULL, 'admin:order:refund:refuse', '', 'A', 1, 1, 0, '2021-11-16 15:58:16', '2021-11-23 16:13:08');
INSERT INTO `t_system_menu` VALUES (37, 32, '订单发货', NULL, 'admin:order:send', '', 'A', 1, 1, 0, '2021-11-16 15:58:16', '2021-11-23 16:14:04');
INSERT INTO `t_system_menu` VALUES (38, 32, '订单更新', NULL, '', 'api/admin/store/order/update', 'A', 99999, 1, 0, '2021-11-16 15:58:16', '2021-11-16 15:58:16');
INSERT INTO `t_system_menu` VALUES (39, 4, '用户管理 ', NULL, 'admin:user:list', '/user/index', 'C', 1, 1, 0, '2021-11-16 16:05:50', '2021-11-23 16:41:21');
INSERT INTO `t_system_menu` VALUES (40, 4, '用户标签', NULL, 'admin:user:tag:list', '/user/label', 'C', 1, 1, 0, '2021-11-16 16:05:50', '2021-11-23 17:19:48');
INSERT INTO `t_system_menu` VALUES (41, 4, '用户等级', NULL, 'admin:system:user:level:list', '/user/grade', 'C', 1, 1, 0, '2021-11-16 16:05:50', '2021-11-23 17:22:35');
INSERT INTO `t_system_menu` VALUES (42, 4, '用户分组', NULL, 'admin:user:group:list', '/user/group', 'C', 1, 1, 0, '2021-11-16 16:05:50', '2021-11-23 17:29:42');
INSERT INTO `t_system_menu` VALUES (43, 39, '用户修改', NULL, 'admin:user:update', '', 'A', 1, 1, 0, '2021-11-16 16:12:46', '2021-11-23 16:28:58');
INSERT INTO `t_system_menu` VALUES (44, 39, '用户详情', NULL, 'admin:user:info', '', 'A', 1, 1, 0, '2021-11-16 16:12:46', '2021-11-23 16:29:23');
INSERT INTO `t_system_menu` VALUES (47, 39, '用户打标签', NULL, 'admin:user:tag', '', 'A', 1, 1, 0, '2021-11-16 16:12:46', '2021-11-23 16:31:01');
INSERT INTO `t_system_menu` VALUES (48, 39, '修改积分余额', NULL, 'admin:user:operate:founds', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 16:31:47');
INSERT INTO `t_system_menu` VALUES (49, 40, '用户标签添加', NULL, 'admin:user:tag:save', '', 'A', 2, 1, 0, '2021-11-16 16:12:47', '2021-11-23 17:20:16');
INSERT INTO `t_system_menu` VALUES (50, 40, '用户标签修改', NULL, 'admin:user:tag:update', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 17:20:49');
INSERT INTO `t_system_menu` VALUES (51, 40, '用户标签删除', NULL, 'admin:user:tag:delete', '', 'A', 3, 1, 0, '2021-11-16 16:12:47', '2021-11-23 17:21:20');
INSERT INTO `t_system_menu` VALUES (52, 41, '用户等级添加', NULL, 'admin:system:user:level:save', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 17:24:36');
INSERT INTO `t_system_menu` VALUES (53, 41, '用户等级修改', NULL, 'admin:system:user:level:update', '', 'A', 2, 1, 0, '2021-11-16 16:12:47', '2021-11-23 17:25:04');
INSERT INTO `t_system_menu` VALUES (54, 41, '用户等级删除', NULL, 'admin:system:user:level:delete', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 17:25:23');
INSERT INTO `t_system_menu` VALUES (55, 41, '使用/禁用等级', NULL, 'admin:system:user:level:use', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 17:25:58');
INSERT INTO `t_system_menu` VALUES (56, 42, '用户分组修改', NULL, 'admin:user:group:update', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 16:35:26');
INSERT INTO `t_system_menu` VALUES (57, 42, '用户分组删除', NULL, 'admin:user:group:delete', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 16:37:05');
INSERT INTO `t_system_menu` VALUES (59, 42, '用户分组新增', NULL, 'admin:user:group:save', '', 'A', 1, 1, 0, '2021-11-16 16:12:47', '2021-11-23 16:37:46');
INSERT INTO `t_system_menu` VALUES (60, 5, '文章管理', NULL, 'admin:article:list', '/content/articleManager', 'C', 1, 1, 0, '2021-11-16 16:22:32', '2021-11-23 17:31:11');
INSERT INTO `t_system_menu` VALUES (61, 5, '文章分类', NULL, '', '/content/classifManager', 'C', 99999, 1, 0, '2021-11-16 16:22:32', '2021-11-16 16:22:32');
INSERT INTO `t_system_menu` VALUES (62, 60, '文章添加', NULL, 'admin:article:save', '', 'A', 1, 1, 0, '2021-11-16 16:24:52', '2021-11-23 17:33:03');
INSERT INTO `t_system_menu` VALUES (63, 60, '文章删除', NULL, 'admin:article:delete', '', 'A', 1, 1, 0, '2021-11-16 16:24:52', '2021-11-23 17:33:08');
INSERT INTO `t_system_menu` VALUES (64, 60, '文章修改', NULL, 'admin:article:update', '', 'A', 1, 1, 0, '2021-11-16 16:24:52', '2021-11-23 17:33:31');
INSERT INTO `t_system_menu` VALUES (67, 6, '公众号', NULL, '', '/appSetting/publicAccount', 'M', 99999, 1, 0, '2021-11-16 16:27:56', '2021-11-16 16:27:56');
INSERT INTO `t_system_menu` VALUES (68, 6, '小程序', NULL, '', '/appSetting/publicRoutine', 'M', 99999, 0, 0, '2021-11-16 16:27:56', '2021-12-29 09:34:58');
INSERT INTO `t_system_menu` VALUES (69, 67, '微信菜单', NULL, 'admin:wechat:menu:public:get', '/appSetting//publicAccount/wxMenus', 'C', 0, 1, 0, '2021-11-16 16:31:04', '2021-12-06 15:14:52');
INSERT INTO `t_system_menu` VALUES (70, 67, '自动回复', NULL, '', '/appSetting/publicAccount/wxReply', 'M', 1, 1, 0, '2021-11-16 16:31:04', '2021-11-23 17:52:08');
INSERT INTO `t_system_menu` VALUES (73, 69, '微信菜单保存', NULL, 'admin:wechat:menu:public:create', '', 'A', 1, 1, 0, '2021-11-16 16:38:07', '2021-11-23 17:47:16');
INSERT INTO `t_system_menu` VALUES (74, 69, '微信菜单删除', NULL, 'admin:wechat:menu:public:delete', '', 'A', 1, 1, 0, '2021-11-16 16:38:07', '2021-11-23 17:47:42');
INSERT INTO `t_system_menu` VALUES (75, 70, '微信关注回复', NULL, 'admin:wechat:keywords:reply:info:keywords', '/appSetting/publicAccount/wxReply/follow', 'C', 99999, 1, 0, '2021-11-16 16:38:07', '2021-12-06 15:16:51');
INSERT INTO `t_system_menu` VALUES (76, 70, '关键字回复', NULL, 'admin:wechat:keywords:reply:list', '/appSetting/publicAccount/wxReply/keyword', 'C', 99999, 1, 0, '2021-11-16 16:38:07', '2021-12-06 15:18:06');
INSERT INTO `t_system_menu` VALUES (77, 70, '无效关键词回复', NULL, '', '/appSetting/publicAccount/wxReply/replyIndex', 'C', 99999, 1, 0, '2021-11-16 16:38:07', '2021-11-16 16:38:07');
INSERT INTO `t_system_menu` VALUES (83, 7, '优惠券', NULL, '', '/marketing/coupon', 'M', 1, 1, 0, '2021-11-16 16:43:33', '2021-11-24 09:58:12');
INSERT INTO `t_system_menu` VALUES (84, 7, '积分', NULL, '', '/marketing/integral', 'M', 99999, 1, 0, '2021-11-16 16:43:33', '2021-11-16 16:43:33');
INSERT INTO `t_system_menu` VALUES (85, 7, '秒杀管理', NULL, '', '/marketing/seckill', 'M', 99999, 1, 0, '2021-11-16 16:43:33', '2021-11-16 16:43:33');
INSERT INTO `t_system_menu` VALUES (86, 7, '砍价管理', NULL, '', '/marketing/bargain', 'M', 99999, 1, 0, '2021-11-16 16:43:33', '2021-11-16 16:43:33');
INSERT INTO `t_system_menu` VALUES (87, 7, '拼团管理', NULL, '', '/marketing/groupBuy', 'M', 99999, 1, 0, '2021-11-16 16:43:34', '2021-11-16 16:43:34');
INSERT INTO `t_system_menu` VALUES (88, 7, '视频号管理', NULL, '', '/marketing/videoChannel', 'M', 99999, 1, 1, '2021-11-16 16:43:34', '2021-11-16 16:43:34');
INSERT INTO `t_system_menu` VALUES (89, 83, '优惠券', NULL, 'admin:coupon:list', '/marketing/coupon/list', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 09:58:47');
INSERT INTO `t_system_menu` VALUES (90, 83, '领取记录', NULL, 'admin:coupon:user:list', '/marketing/coupon/record', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:07:24');
INSERT INTO `t_system_menu` VALUES (91, 84, '积分配置', NULL, '', '/marketing/integral/integralconfig', 'C', 99999, 1, 0, '2021-11-16 16:48:47', '2021-11-16 16:48:47');
INSERT INTO `t_system_menu` VALUES (92, 84, '积分日志', NULL, 'admin:user:integral:list', '/marketing/integral/integrallog', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:12:27');
INSERT INTO `t_system_menu` VALUES (93, 85, '秒杀配置', NULL, 'admin:seckill:manger:list', '/marketing/seckill/config', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:14:46');
INSERT INTO `t_system_menu` VALUES (94, 85, '秒杀商品', NULL, 'admin:seckill:list', '/marketing/seckill/list', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:14:23');
INSERT INTO `t_system_menu` VALUES (95, 86, '砍价商品', NULL, 'admin:bargain:list', '/marketing/bargain/bargainGoods', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:21:47');
INSERT INTO `t_system_menu` VALUES (96, 86, '砍价列表', NULL, 'admin:bargain:user:list', '/marketing/bargain/bargainList', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:28:10');
INSERT INTO `t_system_menu` VALUES (97, 87, '拼团商品', NULL, 'admin:combination:list', '/marketing/groupBuy/groupGoods', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:31:41');
INSERT INTO `t_system_menu` VALUES (98, 87, '拼团列表', NULL, 'admin:combination:combine:list', '/marketing/groupBuy/groupList', 'C', 1, 1, 0, '2021-11-16 16:48:47', '2021-11-24 10:36:24');
INSERT INTO `t_system_menu` VALUES (99, 88, '商品列表', NULL, 'admin:pay:component:product:list', '/marketing/videoChannel/list', 'C', 1, 1, 1, '2021-11-16 16:48:47', '2021-11-24 10:48:43');
INSERT INTO `t_system_menu` VALUES (100, 88, '草稿列表', NULL, 'admin:pay:component:product:draft:list', '/marketing/videoChannel/draftList', 'C', 99999, 1, 1, '2021-11-16 16:48:47', '2021-12-08 19:12:09');
INSERT INTO `t_system_menu` VALUES (101, 89, '优惠券添加', NULL, 'admin:coupon:save', '', 'A', 1, 1, 0, '2021-11-16 16:50:01', '2021-11-24 09:59:33');
INSERT INTO `t_system_menu` VALUES (102, 89, '优惠券状态更新', NULL, 'admin:coupon:update:status', '', 'A', 1, 1, 0, '2021-11-16 16:50:02', '2021-11-24 10:02:10');
INSERT INTO `t_system_menu` VALUES (103, 90, '领取优惠券', NULL, '', 'api/admin/marketing/coupon/user/receive', 'A', 99999, 1, 0, '2021-11-16 16:50:02', '2021-11-16 16:50:02');
INSERT INTO `t_system_menu` VALUES (104, 8, '分销员管理', NULL, 'admin:retail:list', '/distribution/index', 'C', 0, 1, 0, '2021-11-16 16:52:00', '2021-12-02 09:33:34');
INSERT INTO `t_system_menu` VALUES (105, 8, '分销配置', NULL, 'admin:retail:spread:manage:get', '/distribution/distributionconfig', 'C', 1, 1, 0, '2021-11-16 16:52:00', '2021-12-02 09:33:17');
INSERT INTO `t_system_menu` VALUES (106, 9, '财务操作', NULL, '', '/financial/commission', 'M', 99999, 1, 0, '2021-11-16 16:59:00', '2021-11-16 16:59:00');
INSERT INTO `t_system_menu` VALUES (107, 9, '财务记录', NULL, '', '/financial/record', 'M', 99999, 1, 0, '2021-11-16 16:59:00', '2021-11-16 16:59:00');
INSERT INTO `t_system_menu` VALUES (108, 9, '佣金记录', NULL, 'admin:finance:monitor:brokerage:record', '/financial/brokerage', 'C', 1, 1, 0, '2021-11-16 16:59:00', '2021-12-02 09:45:09');
INSERT INTO `t_system_menu` VALUES (109, 106, '申请提现', NULL, 'admin:finance:apply:list', '/financial/commission/template', 'C', 1, 1, 0, '2021-11-16 17:01:41', '2021-12-02 09:44:29');
INSERT INTO `t_system_menu` VALUES (110, 107, '充值记录', NULL, 'admin:recharge:list', '/financial/record/charge', 'C', 1, 1, 0, '2021-11-16 17:01:41', '2021-12-02 09:43:01');
INSERT INTO `t_system_menu` VALUES (111, 107, '资金监控', NULL, 'admin:finance:monitor:list', '/financial/record/monitor', 'C', 1, 1, 0, '2021-11-16 17:01:41', '2021-12-02 09:43:34');
INSERT INTO `t_system_menu` VALUES (114, 10, '订单核销', NULL, '', '/javaMobile/orderCancellation', 'C', 99999, 1, 0, '2021-11-16 17:06:20', '2021-11-16 17:06:20');
INSERT INTO `t_system_menu` VALUES (115, 10, '订单统计', NULL, '', '/javaMobile/orderStatistics', 'C', 99999, 1, 0, '2021-11-16 17:06:20', '2021-11-16 17:06:20');
INSERT INTO `t_system_menu` VALUES (121, 12, '系统设置', NULL, 'admin:system:config:info', '/operation/setting', 'C', 9, 1, 0, '2021-11-16 17:23:37', '2021-12-17 14:16:51');
INSERT INTO `t_system_menu` VALUES (122, 12, '一号通', NULL, 'admin:pass:is:login', '/operation/onePass', 'C', 8, 1, 0, '2021-11-16 17:23:37', '2021-12-17 14:17:11');
INSERT INTO `t_system_menu` VALUES (123, 12, '管理权限', NULL, '', '/operation/roleManager', 'M', 7, 1, 0, '2021-11-16 17:23:37', '2021-12-17 14:17:26');
INSERT INTO `t_system_menu` VALUES (124, 12, '发货设置', NULL, '', '/operation/deliverGoods', 'M', 6, 1, 0, '2021-11-16 17:23:37', '2021-12-17 14:17:37');
INSERT INTO `t_system_menu` VALUES (125, 12, '页面管理', NULL, '', '/operation/design', 'M', 5, 1, 1, '2021-11-16 17:23:37', '2021-12-17 14:17:51');
INSERT INTO `t_system_menu` VALUES (127, 122, '一号通登录', NULL, 'admin:pass:login', '', 'A', 1, 1, 0, '2021-11-16 17:30:22', '2021-12-02 09:53:30');
INSERT INTO `t_system_menu` VALUES (128, 122, '一号通注销', NULL, 'admin:pass:logout', '', 'A', 2, 1, 0, '2021-11-16 17:30:22', '2021-12-02 09:53:50');
INSERT INTO `t_system_menu` VALUES (129, 122, '修改密码', NULL, 'admin:pass:update:password', '', 'A', 3, 1, 0, '2021-11-16 17:30:22', '2021-12-02 09:56:07');
INSERT INTO `t_system_menu` VALUES (130, 122, '修改手机号码', NULL, 'admin:pass:update:phone', '', 'A', 4, 1, 0, '2021-11-16 17:30:22', '2021-12-02 09:55:59');
INSERT INTO `t_system_menu` VALUES (131, 122, '获取验证码', NULL, 'admin:pass:send:code', '', 'A', 5, 1, 0, '2021-11-16 17:30:22', '2021-12-02 09:55:49');
INSERT INTO `t_system_menu` VALUES (132, 122, '修改短信签名', NULL, 'admin:sms:modify:sign', '', 'A', 6, 1, 0, '2021-11-16 17:30:22', '2021-12-02 09:58:32');
INSERT INTO `t_system_menu` VALUES (133, 122, '短信模板', NULL, 'admin:sms:temps', '', 'A', 7, 1, 0, '2021-11-16 17:30:23', '2021-12-02 09:59:02');
INSERT INTO `t_system_menu` VALUES (134, 122, '申请短信模板', NULL, 'admin:sms:temp:apply', '', 'A', 8, 1, 0, '2021-11-16 17:30:23', '2021-12-02 09:59:28');
INSERT INTO `t_system_menu` VALUES (135, 122, '模板申请记录', NULL, 'admin:sms:applys', '', 'A', 9, 1, 0, '2021-11-16 17:30:23', '2021-12-02 09:59:48');
INSERT INTO `t_system_menu` VALUES (136, 123, '角色管理', NULL, 'admin:system:role:list', '/operation//roleManager/identityManager', 'C', 1, 1, 0, '2021-11-16 17:30:23', '2021-12-06 10:48:49');
INSERT INTO `t_system_menu` VALUES (137, 123, '管理员列表', NULL, 'admin:system:admin:list', '/operation//roleManager/adminList', 'C', 1, 1, 0, '2021-11-16 17:30:23', '2021-12-06 11:02:08');
INSERT INTO `t_system_menu` VALUES (138, 123, '权限规则', NULL, 'admin:system:menu:list', '/operation//roleManager/promiseRules', 'C', 1, 1, 0, '2021-11-16 17:30:23', '2021-12-06 11:06:12');
INSERT INTO `t_system_menu` VALUES (139, 124, '提货设置', NULL, '', '/operation/deliverGoods/takeGoods', 'M', 99999, 1, 0, '2021-11-16 17:30:23', '2021-11-16 17:30:23');
INSERT INTO `t_system_menu` VALUES (140, 124, '运费模板', NULL, 'admin:shipping:templates:list', '/operation/deliverGoods/freightSet', 'C', 2, 1, 0, '2021-11-16 17:30:23', '2021-12-02 11:44:01');
INSERT INTO `t_system_menu` VALUES (141, 125, '一键换色', NULL, '', '/operation/design/theme', 'C', 99999, 1, 1, '2021-11-16 17:30:23', '2021-11-16 17:30:23');
INSERT INTO `t_system_menu` VALUES (142, 125, '页面设计', NULL, 'admin:page:layout:index', '/operation/design/viewDesign', 'C', 99999, 1, 1, '2021-11-16 17:30:23', '2021-12-07 19:14:29');
INSERT INTO `t_system_menu` VALUES (143, 136, '身份添加', NULL, 'admin:system:role:save', 'api/admin/system/role/save', 'A', 1, 1, 0, '2021-11-16 17:35:42', '2021-12-06 10:49:22');
INSERT INTO `t_system_menu` VALUES (144, 136, '身份删除', NULL, 'admin:system:role:delete', '', 'A', 2, 1, 0, '2021-11-16 17:35:42', '2021-12-06 10:49:41');
INSERT INTO `t_system_menu` VALUES (145, 136, '身份修改', NULL, 'admin:system:role:update', '', 'A', 3, 1, 0, '2021-11-16 17:35:43', '2021-12-07 19:04:41');
INSERT INTO `t_system_menu` VALUES (146, 137, '管理员添加', NULL, 'admin:system:admin:save', '', 'A', 2, 1, 0, '2021-11-16 17:35:43', '2021-12-06 11:02:33');
INSERT INTO `t_system_menu` VALUES (147, 137, '管理员修改', NULL, 'admin:system:admin:update', '', 'A', 3, 1, 0, '2021-11-16 17:35:43', '2021-12-06 11:02:52');
INSERT INTO `t_system_menu` VALUES (148, 137, '管理员删除', NULL, 'admin:system:admin:delete', '', 'A', 4, 1, 0, '2021-11-16 17:35:43', '2021-12-06 11:03:14');
INSERT INTO `t_system_menu` VALUES (149, 137, '管理员状态更新', NULL, 'admin:system:admin:update:status', '', 'A', 5, 1, 0, '2021-11-16 17:35:43', '2021-12-06 11:03:51');
INSERT INTO `t_system_menu` VALUES (151, 138, '权限新增', NULL, 'admin:system:menu:add', NULL, 'A', 99999, 1, 0, '2021-11-16 17:35:43', '2021-12-03 16:39:59');
INSERT INTO `t_system_menu` VALUES (152, 138, '权限删除', NULL, 'admin:system:menu:delete', NULL, 'A', 99999, 1, 0, '2021-11-16 17:35:43', '2021-12-03 16:39:59');
INSERT INTO `t_system_menu` VALUES (153, 138, '权限更新', NULL, 'admin:system:menu:update', NULL, 'A', 99999, 1, 0, '2021-11-16 17:35:43', '2021-12-03 16:39:59');
INSERT INTO `t_system_menu` VALUES (154, 138, '更新权限状态', NULL, 'admin:system:menu:show:status', NULL, 'A', 99999, 1, 0, '2021-11-16 17:35:43', '2021-12-03 16:39:59');
INSERT INTO `t_system_menu` VALUES (155, 139, '提货点', NULL, 'admin:system:store:list', '/operation/deliverGoods/takeGoods/deliveryAddress', 'C', 1, 1, 0, '2021-11-16 17:35:43', '2021-12-02 10:25:56');
INSERT INTO `t_system_menu` VALUES (156, 139, '核销订单', NULL, 'admin:system:order:list', '/operation/deliverGoods/takeGoods/collateOrder', 'C', 2, 1, 0, '2021-11-16 17:35:43', '2021-12-02 11:11:01');
INSERT INTO `t_system_menu` VALUES (157, 139, '核销员', NULL, 'admin:system:staff:list', '/operation/deliverGoods/takeGoods/collateUser', 'C', 3, 1, 0, '2021-11-16 17:35:43', '2021-12-02 11:11:37');
INSERT INTO `t_system_menu` VALUES (158, 13, '素材管理', NULL, 'admin:system:attachment:list', '/maintain/picture', 'C', 1, 1, 0, '2021-11-16 17:38:38', '2021-12-02 11:24:34');
INSERT INTO `t_system_menu` VALUES (159, 13, '开发配置', NULL, '', '/maintain//devconfiguration', 'M', 99999, 1, 0, '2021-11-16 17:38:38', '2021-11-16 17:38:38');
INSERT INTO `t_system_menu` VALUES (160, 13, '申请授权', NULL, '', '/maintain/authCRMt', 'C', 99999, 1, 0, '2021-11-16 17:38:38', '2021-11-16 17:38:38');
INSERT INTO `t_system_menu` VALUES (161, 13, '物流设置', NULL, '', '/maintain/logistics', 'M', 99999, 1, 0, '2021-11-16 17:38:38', '2021-11-16 17:38:38');
INSERT INTO `t_system_menu` VALUES (162, 158, '删除素材', NULL, 'admin:system:attachment:delete', 'api/admin/system/attachment/delete', 'A', 1, 1, 0, '2021-11-16 17:41:33', '2021-12-02 11:25:04');
INSERT INTO `t_system_menu` VALUES (163, 159, '配置分类', NULL, '', '/maintain/devconfiguration/configCategory', 'C', 99999, 1, 0, '2021-11-16 17:41:33', '2021-11-16 17:41:33');
INSERT INTO `t_system_menu` VALUES (164, 159, '组合数据', NULL, 'admin:system:group:list', '/maintain/devconfiguration/combineddata', 'C', 1, 1, 0, '2021-11-16 17:41:33', '2021-12-02 11:28:57');
INSERT INTO `t_system_menu` VALUES (165, 159, '表单配置', NULL, 'admin:system:form:list', '/maintain/devconfiguration/formConfig', 'C', 1, 1, 0, '2021-11-16 17:41:33', '2021-12-02 11:36:57');
INSERT INTO `t_system_menu` VALUES (166, 161, '城市数据', NULL, 'admin:system:city:list', '/maintain/logistics/cityList', 'C', 1, 1, 0, '2021-11-16 17:41:33', '2021-12-02 11:55:18');
INSERT INTO `t_system_menu` VALUES (167, 161, '物流公司', NULL, 'admin:express:list', '/maintain/logistics/companyList', 'C', 2, 1, 0, '2021-11-16 17:41:33', '2021-12-09 15:32:05');
INSERT INTO `t_system_menu` VALUES (168, 164, '数据组添加', NULL, 'admin:system:group:save', '', 'A', 2, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:29:18');
INSERT INTO `t_system_menu` VALUES (169, 164, '数据组修改', NULL, 'admin:system:group:update', '', 'A', 3, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:29:46');
INSERT INTO `t_system_menu` VALUES (170, 164, '数据组删除', NULL, 'admin:system:group:delete', '', 'A', 4, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:30:07');
INSERT INTO `t_system_menu` VALUES (171, 164, '组合数据添加', NULL, 'admin:system:group:data:save', '', 'A', 5, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:34:10');
INSERT INTO `t_system_menu` VALUES (172, 164, '组合数据修改', NULL, 'admin:system:group:data:update', '', 'A', 6, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:34:33');
INSERT INTO `t_system_menu` VALUES (173, 164, '组合数据删除', NULL, 'admin:system:group:data:delete', '', 'A', 7, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:35:08');
INSERT INTO `t_system_menu` VALUES (174, 165, '表单添加', NULL, 'admin:system:form:save', '', 'A', 2, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:38:28');
INSERT INTO `t_system_menu` VALUES (176, 165, '表单修改', NULL, 'admin:system:form:update', '', 'A', 4, 1, 0, '2021-11-16 17:44:35', '2021-12-02 11:39:09');
INSERT INTO `t_system_menu` VALUES (179, 32, '订单导出', '', 'admin:export:excel:order', '', 'A', 1, 1, 0, '2021-11-23 16:11:27', '2021-11-23 16:11:27');
INSERT INTO `t_system_menu` VALUES (180, 32, '订单改价', '', 'admin:order:update:price', '', 'A', 0, 1, 0, '2021-11-23 16:24:42', '2021-11-23 16:24:42');
INSERT INTO `t_system_menu` VALUES (181, 32, '物流查询', '', 'admin:order:logistics:info', '', 'A', 0, 1, 0, '2021-11-23 16:26:43', '2021-11-23 16:26:43');
INSERT INTO `t_system_menu` VALUES (182, 32, '订单各状态数量', '', 'admin:order:status:num', '', 'A', 0, 1, 0, '2021-11-23 16:27:40', '2021-11-23 16:27:40');
INSERT INTO `t_system_menu` VALUES (184, 76, '新增关键字回复', '', 'admin:wechat:keywords:reply:save', '', 'A', 0, 1, 0, '2021-11-23 17:53:54', '2021-12-06 15:29:55');
INSERT INTO `t_system_menu` VALUES (185, 76, '删除关键字回复', '', 'admin:wechat:keywords:reply:delete', '', 'A', 0, 1, 0, '2021-11-23 17:54:55', '2021-12-06 15:29:46');
INSERT INTO `t_system_menu` VALUES (186, 75, '修改关键字回复', '', 'admin:wechat:keywords:reply:update', '', 'A', 0, 1, 0, '2021-11-23 17:55:32', '2021-12-06 15:27:00');
INSERT INTO `t_system_menu` VALUES (187, 76, '修改关键字状态', '', 'admin:wechat:keywords:reply:status', '', 'A', 0, 1, 0, '2021-11-23 17:56:01', '2021-12-06 15:29:30');
INSERT INTO `t_system_menu` VALUES (188, 76, '微信关键字详情', '', 'admin:wechat:keywords:reply:info', '', 'A', 0, 1, 0, '2021-11-23 17:57:04', '2021-12-06 15:28:26');
INSERT INTO `t_system_menu` VALUES (189, 89, '复制', '', 'admin:coupon:info', '', 'A', 1, 1, 0, '2021-11-24 10:05:04', '2021-11-24 10:05:04');
INSERT INTO `t_system_menu` VALUES (191, 94, '添加秒杀商品', '', 'admin:seckill:save', '', 'A', 0, 1, 0, '2021-11-24 10:15:57', '2021-11-24 10:15:57');
INSERT INTO `t_system_menu` VALUES (192, 94, '删除秒杀商品', '', 'admin:seckill:delete', '', 'A', 0, 1, 0, '2021-11-24 10:16:20', '2021-11-24 10:16:20');
INSERT INTO `t_system_menu` VALUES (193, 94, '修改秒杀商品', '', 'admin:seckill:update', '', 'A', 0, 1, 0, '2021-11-24 10:16:49', '2021-11-24 10:16:49');
INSERT INTO `t_system_menu` VALUES (194, 94, '修改秒杀商品状态', '', 'admin:seckill:update:status', '', 'A', 0, 1, 0, '2021-11-24 10:17:24', '2021-11-24 10:17:24');
INSERT INTO `t_system_menu` VALUES (195, 94, '秒杀商品详情', '', 'admin:seckill:info', '', 'A', 0, 1, 0, '2021-11-24 10:17:52', '2021-11-24 10:17:52');
INSERT INTO `t_system_menu` VALUES (196, 93, '秒杀配置新增', '', 'admin:seckill:manger:save', '', 'A', 0, 1, 0, '2021-11-24 10:18:29', '2021-11-24 10:18:29');
INSERT INTO `t_system_menu` VALUES (197, 93, '秒杀配置删除', '', 'admin:seckill:manger:delete', '', 'A', 0, 1, 0, '2021-11-24 10:18:54', '2021-11-24 10:18:54');
INSERT INTO `t_system_menu` VALUES (198, 93, '秒杀配置修改', '', 'admin:seckill:manger:update', '', 'A', 0, 1, 0, '2021-11-24 10:19:28', '2021-11-24 10:19:28');
INSERT INTO `t_system_menu` VALUES (199, 93, '秒杀配置详情', '', 'admin:seckill:manger:info', '', 'A', 0, 1, 0, '2021-11-24 10:20:02', '2021-11-24 10:20:02');
INSERT INTO `t_system_menu` VALUES (200, 93, '秒杀配置状态修改', '', 'admin:seckill:manger:update:status', '', 'A', 0, 1, 0, '2021-11-24 10:20:37', '2021-11-24 10:20:37');
INSERT INTO `t_system_menu` VALUES (201, 95, '新增砍价商品', '', 'admin:bargain:save', '', 'A', 0, 1, 0, '2021-11-24 10:22:48', '2021-11-24 10:22:48');
INSERT INTO `t_system_menu` VALUES (202, 95, '删除砍价商品', '', 'admin:bargain:delete', '', 'A', 0, 1, 0, '2021-11-24 10:23:15', '2021-11-24 10:23:15');
INSERT INTO `t_system_menu` VALUES (203, 95, '修改砍价商品', '', 'admin:bargain:update', '', 'A', 0, 1, 0, '2021-11-24 10:23:42', '2021-11-24 10:23:42');
INSERT INTO `t_system_menu` VALUES (204, 95, '砍价商品详情', '', 'admin:bargain:info', '', 'A', 0, 1, 0, '2021-11-24 10:25:19', '2021-11-24 10:25:19');
INSERT INTO `t_system_menu` VALUES (205, 95, '修改砍价商品状态', '', 'admin:bargain:update:status', '', 'A', 0, 1, 0, '2021-11-24 10:26:05', '2021-11-24 10:26:05');
INSERT INTO `t_system_menu` VALUES (207, 95, '砍价商品导出', '', 'admin:export:excel:bargain', '', 'A', 0, 1, 0, '2021-11-24 10:29:11', '2021-11-24 10:29:11');
INSERT INTO `t_system_menu` VALUES (208, 14, '商品导出', '', 'admin:export:excel:product', '', 'A', 0, 1, 0, '2021-11-24 10:30:11', '2021-11-24 10:30:11');
INSERT INTO `t_system_menu` VALUES (209, 97, '新增拼团商品', '', 'admin:combination:save', '', 'A', 0, 1, 0, '2021-11-24 10:32:11', '2021-11-24 10:32:11');
INSERT INTO `t_system_menu` VALUES (210, 97, '拼团商品删除', '', 'admin:combination:delete', '', 'A', 0, 1, 0, '2021-11-24 10:32:46', '2021-11-24 10:32:46');
INSERT INTO `t_system_menu` VALUES (211, 97, '拼团商品修改', '', 'admin:combination:update', '', 'A', 0, 1, 0, '2021-11-24 10:33:12', '2021-11-24 10:33:12');
INSERT INTO `t_system_menu` VALUES (212, 97, '拼团商品详情', '', 'admin:combination:info', '', 'A', 0, 1, 0, '2021-11-24 10:33:38', '2021-11-24 10:33:38');
INSERT INTO `t_system_menu` VALUES (213, 97, '修改拼团商品状态', '', 'admin:combination:update:status', '', 'A', 0, 1, 0, '2021-11-24 10:34:13', '2021-12-09 16:31:00');
INSERT INTO `t_system_menu` VALUES (214, 97, '拼团商品导出', '', 'admin:export:excel:combiantion', '', 'A', 0, 1, 0, '2021-11-24 10:35:22', '2021-11-24 10:35:22');
INSERT INTO `t_system_menu` VALUES (215, 98, '拼团统计', '', 'admin:combination:statistics', '', 'A', 0, 1, 0, '2021-11-24 10:36:55', '2021-11-24 10:36:55');
INSERT INTO `t_system_menu` VALUES (216, 100, '视频号商品添加', '', 'admin:pay:component:product:add', '', 'A', 0, 1, 1, '2021-11-24 10:50:47', '2021-11-24 10:50:47');
INSERT INTO `t_system_menu` VALUES (217, 100, '编辑视频号商品', '', 'admin:pay:component:product:update', '', 'A', 0, 1, 1, '2021-11-24 10:53:35', '2021-11-24 10:53:35');
INSERT INTO `t_system_menu` VALUES (218, 100, '视频号商品详情', '', 'admin:pay:component:product:draft:info', '', 'A', 0, 1, 1, '2021-11-24 10:54:15', '2021-11-24 10:54:15');
INSERT INTO `t_system_menu` VALUES (219, 99, '视频号商品删除', '', 'admin:pay:component:product:delete', '', 'A', 0, 1, 1, '2021-11-24 10:55:40', '2021-11-24 10:55:40');
INSERT INTO `t_system_menu` VALUES (220, 99, '下架视频号商品', '', 'admin:pay:component:product:delisting', '', 'A', 0, 1, 1, '2021-11-24 10:56:07', '2021-11-24 10:56:07');
INSERT INTO `t_system_menu` VALUES (224, 32, '易联云小票打印', '', 'admin:yly:print', '', 'A', 0, 1, 0, '2021-11-27 17:50:26', '2021-11-27 17:53:04');
INSERT INTO `t_system_menu` VALUES (225, 12, '配置引导', '', '', '/operation/guide', 'C', 0, 1, 1, '2021-11-29 11:23:37', '2021-11-29 11:23:37');
INSERT INTO `t_system_menu` VALUES (226, 1, '控制台', '', '', '/dashboard', 'C', 9, 1, 0, '2021-11-30 14:13:37', '2021-12-15 18:12:40');
INSERT INTO `t_system_menu` VALUES (227, 1, '用户统计', '', '', '/statuser', 'C', 7, 1, 1, '2021-11-30 14:14:10', '2021-12-15 18:13:04');
INSERT INTO `t_system_menu` VALUES (228, 1, '交易统计', '', '', '/transaction', 'C', 3, 1, 1, '2021-11-30 14:14:34', '2021-12-03 15:14:02');
INSERT INTO `t_system_menu` VALUES (229, 1, '商品统计', '', '', '/product', 'C', 8, 1, 1, '2021-11-30 14:17:46', '2021-12-15 18:12:54');
INSERT INTO `t_system_menu` VALUES (231, 105, '分销配置信息保存', '', 'admin:retail:spread:manage:set', '', 'A', 0, 1, 0, '2021-12-02 09:35:28', '2021-12-02 09:35:28');
INSERT INTO `t_system_menu` VALUES (232, 122, '一号通套餐列表', '', 'admin:pass:meal:list', '', 'A', 10, 1, 0, '2021-12-02 10:01:18', '2021-12-02 10:01:18');
INSERT INTO `t_system_menu` VALUES (233, 122, '一号通套餐购买', '', 'admin:pass:meal:code', '', 'A', 11, 1, 0, '2021-12-02 10:01:55', '2021-12-02 10:01:55');
INSERT INTO `t_system_menu` VALUES (234, 122, '一号通账号注册', '', 'admin:pass:register', '', 'A', 0, 1, 0, '2021-12-02 10:03:14', '2021-12-02 10:03:14');
INSERT INTO `t_system_menu` VALUES (235, 122, '一号通服务开通', '', 'admin:pass:service:open', '', 'A', 12, 1, 0, '2021-12-02 10:04:38', '2021-12-02 10:04:38');
INSERT INTO `t_system_menu` VALUES (236, 122, '一号通用量记录', '', 'admin:pass:user:record', '', 'A', 13, 1, 0, '2021-12-02 10:05:12', '2021-12-02 10:05:12');
INSERT INTO `t_system_menu` VALUES (237, 155, '提货点数量', '', 'admin:system:store:count', '', 'A', 2, 1, 0, '2021-12-02 10:29:22', '2021-12-02 10:29:22');
INSERT INTO `t_system_menu` VALUES (238, 155, '新增提货点', '', 'admin:system:store:save', '', 'A', 3, 1, 0, '2021-12-02 10:29:53', '2021-12-02 10:29:53');
INSERT INTO `t_system_menu` VALUES (239, 155, '提货点详情', '', 'admin:system:store:info', '', 'A', 4, 1, 0, '2021-12-02 10:30:20', '2021-12-02 10:30:20');
INSERT INTO `t_system_menu` VALUES (240, 155, '提货点显示状态', '', 'admin:system:store:update:status', '', 'A', 5, 1, 0, '2021-12-02 10:30:45', '2021-12-02 10:30:45');
INSERT INTO `t_system_menu` VALUES (241, 155, '修改提货点', '', 'admin:system:store:update', '', 'A', 6, 1, 0, '2021-12-02 10:31:11', '2021-12-02 10:31:11');
INSERT INTO `t_system_menu` VALUES (242, 155, '删除提货点', '', 'admin:system:store:delete', '', 'A', 7, 1, 0, '2021-12-02 10:31:33', '2021-12-02 10:31:33');
INSERT INTO `t_system_menu` VALUES (243, 155, '恢复提货点', '', 'admin:system:store:recovery', '', 'A', 8, 1, 0, '2021-12-02 10:32:42', '2021-12-02 10:32:42');
INSERT INTO `t_system_menu` VALUES (244, 155, '彻底删除提货点', '', 'admin:system:store:completely:delete', '', 'A', 9, 1, 0, '2021-12-02 10:33:18', '2021-12-02 10:33:18');
INSERT INTO `t_system_menu` VALUES (245, 157, '新增核销员', '', 'admin:system:staff:save', '', 'A', 0, 1, 0, '2021-12-02 11:12:19', '2021-12-02 11:12:19');
INSERT INTO `t_system_menu` VALUES (246, 157, '删除核销员', '', 'admin:system:staff:delete', '', 'A', 0, 1, 0, '2021-12-02 11:12:40', '2021-12-02 11:12:40');
INSERT INTO `t_system_menu` VALUES (247, 157, '核销员详情', '', 'admin:system:staff:info', '', 'A', 0, 1, 0, '2021-12-02 11:13:09', '2021-12-02 11:13:09');
INSERT INTO `t_system_menu` VALUES (248, 157, '核销员修改', '', 'admin:system:staff:update', '', 'A', 0, 1, 0, '2021-12-02 11:13:37', '2021-12-02 11:13:37');
INSERT INTO `t_system_menu` VALUES (250, 164, '组合数据详情', '', 'admin:system:group:data:info', '', 'A', 8, 1, 0, '2021-12-02 11:35:48', '2021-12-02 11:35:48');
INSERT INTO `t_system_menu` VALUES (251, 167, '同步物流公司', '', 'admin:express:sync', '', 'A', 3, 1, 0, '2021-12-02 11:43:01', '2021-12-02 11:43:01');
INSERT INTO `t_system_menu` VALUES (252, 140, '物流模板新增', '', 'admin:shipping:templates:save', '', 'A', 3, 1, 0, '2021-12-02 11:44:27', '2021-12-02 11:44:27');
INSERT INTO `t_system_menu` VALUES (253, 140, '物流模板删除', '', 'admin:shipping:templates:delete', '', 'A', 4, 1, 0, '2021-12-02 11:44:54', '2021-12-02 11:44:54');
INSERT INTO `t_system_menu` VALUES (254, 140, '物流模板详情', '', 'admin:shipping:templates:info', '', 'A', 5, 1, 0, '2021-12-02 11:45:23', '2021-12-02 11:45:23');
INSERT INTO `t_system_menu` VALUES (255, 140, '物流模板修改', '', 'admin:shipping:templates:update', '', 'A', 6, 1, 0, '2021-12-02 11:45:47', '2021-12-02 11:45:47');
INSERT INTO `t_system_menu` VALUES (256, 140, '物流免费模板', '', 'admin:shipping:templates:free:list', '', 'A', 7, 1, 0, '2021-12-02 11:46:54', '2021-12-02 11:46:54');
INSERT INTO `t_system_menu` VALUES (257, 140, '物流付费模板', '', 'admin:shipping:templates:region:list', '', 'A', 8, 1, 0, '2021-12-02 11:47:21', '2021-12-02 11:47:21');
INSERT INTO `t_system_menu` VALUES (258, 166, '城市详情', '', 'admin:system:city:info', '', 'A', 0, 1, 0, '2021-12-02 11:55:47', '2021-12-02 11:55:47');
INSERT INTO `t_system_menu` VALUES (259, 166, '修改城市', '', 'admin:system:city:update', '', 'A', 0, 1, 0, '2021-12-02 11:57:04', '2021-12-02 11:57:04');
INSERT INTO `t_system_menu` VALUES (260, 227, '用户总统计数据', '', 'admin:statistics:user:total:data', '', 'A', 0, 0, 1, '2021-12-03 14:55:26', '2021-12-03 14:55:26');
INSERT INTO `t_system_menu` VALUES (261, 227, '用户概览', '', 'admin:statistics:user:overview', '', 'A', 0, 1, 1, '2021-12-03 14:57:21', '2021-12-03 14:57:34');
INSERT INTO `t_system_menu` VALUES (262, 227, '用户性别数据', '', 'admin:statistics:user:sex', '', 'A', 0, 1, 1, '2021-12-03 14:58:03', '2021-12-03 14:58:03');
INSERT INTO `t_system_menu` VALUES (263, 227, '用户渠道数据', '', 'admin:statistics:user:channel', '', 'A', 0, 1, 1, '2021-12-03 14:58:25', '2021-12-03 14:58:36');
INSERT INTO `t_system_menu` VALUES (264, 227, '用户区域数据', '', 'admin:statistics:user:area', '', 'A', 0, 1, 1, '2021-12-03 14:58:55', '2021-12-03 14:58:55');
INSERT INTO `t_system_menu` VALUES (265, 227, '用户概览列表', '', 'admin:statistics:user:overview:list', '', 'A', 0, 1, 1, '2021-12-03 14:59:17', '2021-12-03 14:59:17');
INSERT INTO `t_system_menu` VALUES (266, 228, '交易统计数据', '', 'admin:statistics:trade:data', '', 'A', 0, 1, 1, '2021-12-03 15:02:05', '2021-12-03 15:02:05');
INSERT INTO `t_system_menu` VALUES (267, 228, '交易概览', '', 'admin:statistics:trade:overview', '', 'A', 0, 1, 1, '2021-12-03 15:02:38', '2021-12-03 15:02:38');
INSERT INTO `t_system_menu` VALUES (268, 228, '交易趋势数据', '', 'admin:statistics:trade:trend', '', 'A', 0, 1, 1, '2021-12-03 15:02:56', '2021-12-03 15:02:56');
INSERT INTO `t_system_menu` VALUES (269, 12, '消息通知', '', 'admin:system:notification:list', '/operation/notification', 'C', 4, 1, 0, '2021-12-03 15:13:08', '2021-12-17 14:18:16');
INSERT INTO `t_system_menu` VALUES (270, 229, '商品统计数据', '', 'admin:statistics:product:data', '', 'A', 0, 1, 1, '2021-12-03 15:27:28', '2021-12-03 15:27:28');
INSERT INTO `t_system_menu` VALUES (271, 229, '商品排行榜', '', 'admin:statistics:product:ranking', '', 'A', 0, 1, 1, '2021-12-03 15:27:55', '2021-12-03 15:27:55');
INSERT INTO `t_system_menu` VALUES (272, 229, '商品趋势数据', '', 'admin:statistics:product:trend', '', 'A', 0, 1, 1, '2021-12-03 15:28:15', '2021-12-03 15:28:15');
INSERT INTO `t_system_menu` VALUES (273, 14, '商品表头数量', '', 'admin:product:tabs:headers', '', 'A', 0, 1, 0, '2021-12-03 15:48:18', '2021-12-03 15:48:18');
INSERT INTO `t_system_menu` VALUES (274, 14, '导入99Api商品', '', 'admin:product:import:product', '', 'A', 0, 1, 0, '2021-12-03 15:50:18', '2021-12-03 15:50:18');
INSERT INTO `t_system_menu` VALUES (275, 14, '获取复制商品配置', '', 'admin:product:copy:config', '', 'A', 0, 1, 0, '2021-12-03 15:51:00', '2021-12-03 15:51:00');
INSERT INTO `t_system_menu` VALUES (276, 14, '复制平台商品', '', 'admin:product:copy:product', '', 'A', 0, 1, 0, '2021-12-03 15:51:16', '2021-12-03 15:51:16');
INSERT INTO `t_system_menu` VALUES (277, 14, '商品详情', '', 'admin:product:info', '', 'A', 0, 1, 0, '2021-12-03 15:52:22', '2021-12-03 15:52:22');
INSERT INTO `t_system_menu` VALUES (278, 14, '恢复商品', '', 'admin:product:restore', '', 'A', 0, 1, 0, '2021-12-03 15:53:24', '2021-12-03 15:53:24');
INSERT INTO `t_system_menu` VALUES (280, 0, '登录管理', NULL, NULL, NULL, 'M', 1, 0, 0, '2021-12-03 16:31:43', '2021-12-16 16:17:29');
INSERT INTO `t_system_menu` VALUES (281, 280, '登陆用户详情', NULL, 'admin:info', NULL, 'A', 99999, 1, 0, '2021-12-03 16:32:39', '2021-12-03 16:32:39');
INSERT INTO `t_system_menu` VALUES (282, 280, '退出登录', NULL, 'admin:logout', NULL, 'A', 99999, 1, 0, '2021-12-03 16:33:29', '2021-12-03 16:33:42');
INSERT INTO `t_system_menu` VALUES (283, 280, '管理员可访问目录', NULL, 'admin:login:menus', NULL, 'A', 99999, 1, 0, '2021-12-03 16:33:40', '2021-12-03 16:33:45');
INSERT INTO `t_system_menu` VALUES (284, 138, '菜单详情', NULL, 'admin:system:menu:info', NULL, 'A', 99999, 1, 0, '2021-12-03 16:39:41', '2021-12-03 16:39:55');
INSERT INTO `t_system_menu` VALUES (285, 226, '首页数据', '', 'admin:statistics:home:index', '', 'A', 0, 1, 0, '2021-12-03 16:51:09', '2021-12-03 16:51:09');
INSERT INTO `t_system_menu` VALUES (286, 226, '用户曲线图', '', 'admin:statistics:home:chart:user', '', 'A', 0, 1, 0, '2021-12-03 16:51:29', '2021-12-03 16:51:40');
INSERT INTO `t_system_menu` VALUES (287, 226, '用户购买统计', '', 'admin:statistics:home:chart:user:buy', '', 'A', 0, 1, 0, '2021-12-03 16:51:59', '2021-12-03 16:51:59');
INSERT INTO `t_system_menu` VALUES (288, 226, '30天订单量趋势', '', 'admin:statistics:home:chart:order', '', 'A', 0, 1, 0, '2021-12-03 16:52:47', '2021-12-03 16:52:47');
INSERT INTO `t_system_menu` VALUES (289, 226, '周订单量趋势', '', 'admin:statistics:home:chart:order:week', '', 'A', 0, 1, 0, '2021-12-03 16:53:00', '2021-12-03 16:53:00');
INSERT INTO `t_system_menu` VALUES (290, 226, '月订单量趋势', '', 'admin:statistics:home:chart:order:month', '', 'A', 0, 1, 0, '2021-12-03 16:53:16', '2021-12-03 16:53:16');
INSERT INTO `t_system_menu` VALUES (291, 226, '年订单量趋势', '', 'admin:statistics:home:chart:order:year', '', 'A', 0, 1, 0, '2021-12-03 16:53:36', '2021-12-03 16:53:36');
INSERT INTO `t_system_menu` VALUES (293, 110, '提现总金额', '', 'admin:recharge:balance', '', 'A', 0, 1, 0, '2021-12-03 17:05:23', '2021-12-03 17:05:23');
INSERT INTO `t_system_menu` VALUES (294, 0, '分类服务', '', '', '', 'M', 0, 0, 0, '2021-12-03 17:15:29', '2021-12-03 17:15:29');
INSERT INTO `t_system_menu` VALUES (295, 294, '分类列表', '', 'admin:category:list', '', 'A', 0, 1, 0, '2021-12-03 17:16:12', '2021-12-03 17:16:12');
INSERT INTO `t_system_menu` VALUES (296, 294, '新增分类', '', 'admin:category:save', '', 'A', 0, 1, 0, '2021-12-03 17:16:35', '2021-12-03 17:16:35');
INSERT INTO `t_system_menu` VALUES (297, 294, '删除分类', '', 'admin:category:delete', '', 'A', 0, 1, 0, '2021-12-03 17:16:52', '2021-12-03 17:16:52');
INSERT INTO `t_system_menu` VALUES (298, 294, '修改分类', '', 'admin:category:update', '', 'A', 0, 1, 0, '2021-12-03 17:17:11', '2021-12-03 17:17:11');
INSERT INTO `t_system_menu` VALUES (299, 294, '分类详情', '', 'admin:category:info', '', 'A', 0, 1, 0, '2021-12-03 17:17:35', '2021-12-03 17:17:35');
INSERT INTO `t_system_menu` VALUES (300, 294, '分类tree列表', '', 'admin:category:list:tree', '', 'A', 0, 1, 0, '2021-12-03 17:18:06', '2021-12-03 17:18:06');
INSERT INTO `t_system_menu` VALUES (301, 294, '根据id集合获取分类列表', '', 'admin:category:list:ids', '', 'A', 0, 1, 0, '2021-12-03 17:18:23', '2021-12-03 17:18:23');
INSERT INTO `t_system_menu` VALUES (302, 294, '更改分类状态', '', 'admin:category:update:status', '', 'A', 0, 1, 0, '2021-12-03 17:18:38', '2021-12-03 17:18:38');
INSERT INTO `t_system_menu` VALUES (303, 164, '分页组合数据详情', '', 'admin:system:group:data:list', '', 'A', 0, 1, 0, '2021-12-03 17:39:37', '2021-12-03 17:39:37');
INSERT INTO `t_system_menu` VALUES (304, 39, '发送优惠券列表', '', 'admin:coupon:send:list', '', 'A', 0, 1, 0, '2021-12-03 17:41:34', '2021-12-10 19:12:23');
INSERT INTO `t_system_menu` VALUES (305, 68, '下载小程序', '', 'admin:wechat:code:download', '/appSetting/publicRoutine/download', 'C', 0, 1, 1, '2021-12-03 18:31:54', '2021-12-10 14:47:17');
INSERT INTO `t_system_menu` VALUES (306, 32, '订单列表统计数据', '', 'admin:order:list:data', '', 'A', 0, 1, 0, '2021-12-06 09:40:56', '2021-12-06 09:40:56');
INSERT INTO `t_system_menu` VALUES (307, 32, '面单默认配置信息', '', 'admin:order:sheet:info', '', 'A', 0, 1, 0, '2021-12-06 09:42:51', '2021-12-06 09:42:51');
INSERT INTO `t_system_menu` VALUES (308, 32, '订单详情', '', 'admin:order:info', '', 'A', 0, 1, 0, '2021-12-06 09:44:00', '2021-12-06 09:44:00');
INSERT INTO `t_system_menu` VALUES (309, 32, '订单操作记录列表', '', 'admin:order:status:list', '', 'A', 0, 1, 0, '2021-12-06 09:45:04', '2021-12-06 09:45:04');
INSERT INTO `t_system_menu` VALUES (310, 166, '城市树列表', '', 'admin:system:city:list:tree', '', 'A', 0, 1, 0, '2021-12-06 10:30:39', '2021-12-06 10:30:39');
INSERT INTO `t_system_menu` VALUES (311, 136, '角色详情', '', 'admin:system:role:info', '', 'A', 4, 1, 0, '2021-12-06 10:50:32', '2021-12-06 10:50:32');
INSERT INTO `t_system_menu` VALUES (312, 136, '修改角色状态', '', 'admin:system:role:update:status', '', 'A', 5, 1, 0, '2021-12-06 10:51:09', '2021-12-06 10:51:09');
INSERT INTO `t_system_menu` VALUES (313, 137, '管理员详情', '', 'admin:system:admin:info', '', 'A', 6, 1, 0, '2021-12-06 11:04:41', '2021-12-06 11:04:41');
INSERT INTO `t_system_menu` VALUES (314, 137, '是否接收状态', '', 'admin:system:admin:update:sms', '', 'A', 7, 1, 0, '2021-12-06 11:05:17', '2021-12-06 11:05:17');
INSERT INTO `t_system_menu` VALUES (315, 39, '用户详情页Top数据', '', 'admin:user:topdetail', '', 'A', 0, 1, 0, '2021-12-06 14:55:27', '2021-12-06 14:55:27');
INSERT INTO `t_system_menu` VALUES (316, 39, '用户信息详情', '', 'admin:user:infobycondition', '', 'A', 0, 1, 0, '2021-12-06 14:56:40', '2021-12-06 14:56:40');
INSERT INTO `t_system_menu` VALUES (317, 39, '用户分组', '', 'admin:user:group', '', 'A', 0, 1, 0, '2021-12-06 14:58:02', '2021-12-06 14:58:02');
INSERT INTO `t_system_menu` VALUES (318, 39, '修改用户手机号', '', 'admin:user:update:phone', '', 'A', 0, 1, 0, '2021-12-06 14:58:49', '2021-12-06 14:58:49');
INSERT INTO `t_system_menu` VALUES (319, 39, '更新用户会员等级', '', 'admin:user:update:level', '', 'A', 0, 1, 0, '2021-12-06 14:59:23', '2021-12-06 14:59:23');
INSERT INTO `t_system_menu` VALUES (320, 39, '修改上级推广人', '', 'admin:user:update:spread', '', 'A', 0, 1, 0, '2021-12-06 14:59:45', '2021-12-06 15:01:24');
INSERT INTO `t_system_menu` VALUES (321, 60, '文章详情', '', 'admin:article:info', '', 'A', 0, 1, 0, '2021-12-06 15:11:54', '2021-12-06 15:11:54');
INSERT INTO `t_system_menu` VALUES (322, 89, '删除优惠券', '', 'admin:coupon:delete', '', 'A', 0, 1, 0, '2021-12-06 16:23:26', '2021-12-06 16:23:26');
INSERT INTO `t_system_menu` VALUES (323, 344, '表单模板详情', '', 'admin:system:form:info', '', 'A', 0, 1, 0, '2021-12-07 09:33:10', '2021-12-09 15:38:12');
INSERT INTO `t_system_menu` VALUES (324, 121, '整体保存表单数据', '', 'admin:system:config:save:form', '', 'A', 0, 1, 0, '2021-12-07 09:35:50', '2021-12-07 09:35:50');
INSERT INTO `t_system_menu` VALUES (325, 96, '砍价参与详情列表', '', 'admin:bargain:user:help:list', '', 'A', 0, 1, 0, '2021-12-07 09:39:32', '2021-12-07 09:39:32');
INSERT INTO `t_system_menu` VALUES (326, 109, '提现统计', '', 'admin:finance:apply:balance', '', 'A', 0, 1, 0, '2021-12-07 11:26:32', '2021-12-07 11:26:32');
INSERT INTO `t_system_menu` VALUES (327, 226, '经营数据', '', 'admin:statistics:home:operating:data', '', 'A', 0, 1, 1, '2021-12-07 11:41:07', '2021-12-07 11:41:07');
INSERT INTO `t_system_menu` VALUES (328, 142, '页面布局首页保存', '', 'admin:page:layout:save', '', 'A', 0, 1, 1, '2021-12-07 15:36:08', '2021-12-07 15:36:08');
INSERT INTO `t_system_menu` VALUES (329, 142, '页面布局首页banner保存', '', 'admin:page:layout:index:banner:save', '', 'A', 0, 1, 1, '2021-12-07 15:36:45', '2021-12-07 15:36:45');
INSERT INTO `t_system_menu` VALUES (330, 142, '页面布局首页menu保存', '', 'admin:page:layout:index:menu:save', '', 'A', 0, 1, 1, '2021-12-07 15:37:13', '2021-12-07 15:37:13');
INSERT INTO `t_system_menu` VALUES (331, 142, '页面首页新闻保存', '', 'admin:page:layout:index:news:save', '', 'A', 0, 1, 1, '2021-12-07 15:37:38', '2021-12-07 15:37:38');
INSERT INTO `t_system_menu` VALUES (333, 142, '页面用户中心导航保存', '', 'admin:page:layout:user:menu:save', '', 'A', 0, 1, 1, '2021-12-07 15:38:32', '2021-12-07 15:38:32');
INSERT INTO `t_system_menu` VALUES (334, 142, '页面用户中心商品table保存', '', 'admin:page:layout:index:table:save', '', 'A', 0, 1, 1, '2021-12-07 15:38:57', '2021-12-07 15:38:57');
INSERT INTO `t_system_menu` VALUES (335, 142, '分类页配置保存', '', 'admin:page:layout:category:config:save', '', 'A', 0, 1, 1, '2021-12-07 15:39:29', '2021-12-07 15:39:29');
INSERT INTO `t_system_menu` VALUES (337, 269, '公众号模板消息同步', '', 'admin:wechat:whcbqhn:sync', '', 'A', 0, 1, 0, '2021-12-07 18:42:30', '2021-12-11 15:24:21');
INSERT INTO `t_system_menu` VALUES (340, 138, '菜单缓存树', '', 'admin:system:menu:cache:tree', '', 'A', 0, 1, 0, '2021-12-07 19:15:32', '2021-12-07 19:15:32');
INSERT INTO `t_system_menu` VALUES (341, 142, '获取分类页配置', '', 'admin:page:layout:category:config', '', 'A', 0, 1, 1, '2021-12-08 10:25:27', '2021-12-08 10:25:27');
INSERT INTO `t_system_menu` VALUES (342, 122, '一号通用户信息', '', 'admin:pass:info', '', 'A', 0, 1, 0, '2021-12-08 11:44:52', '2021-12-08 11:44:52');
INSERT INTO `t_system_menu` VALUES (343, 39, '发送优惠券', '', 'admin:coupon:user:receive', '', 'A', 0, 1, 0, '2021-12-08 18:16:23', '2021-12-08 18:16:23');
INSERT INTO `t_system_menu` VALUES (344, 0, '公共服务', '', '', '', 'M', 0, 0, 0, '2021-12-08 18:56:36', '2021-12-08 18:56:36');
INSERT INTO `t_system_menu` VALUES (345, 344, '根据key存储', '', 'admin:system:config:saveuniq', '', 'A', 0, 1, 0, '2021-12-08 18:57:26', '2021-12-08 18:57:26');
INSERT INTO `t_system_menu` VALUES (347, 344, '根据key获取', '', 'admin:system:config:getuniq', '', 'A', 0, 1, 0, '2021-12-08 18:58:55', '2021-12-08 18:59:18');
INSERT INTO `t_system_menu` VALUES (348, 98, '拼团订单列表', '', 'admin:combination:order:pink', '', 'A', 0, 1, 0, '2021-12-08 19:08:59', '2021-12-08 19:08:59');
INSERT INTO `t_system_menu` VALUES (349, 99, '上架视频号商品', '', 'admin:pay:component:product:listing', '', 'A', 0, 1, 1, '2021-12-08 19:10:50', '2021-12-08 19:11:02');
INSERT INTO `t_system_menu` VALUES (350, 100, '组件类目列表', '', 'admin:pay:component:cat:list', '', 'A', 0, 1, 1, '2021-12-08 19:14:06', '2021-12-08 19:14:06');
INSERT INTO `t_system_menu` VALUES (352, 104, '推广人', '', 'admin:retail:spread:list', '', 'A', 0, 1, 0, '2021-12-09 14:43:19', '2021-12-09 14:43:19');
INSERT INTO `t_system_menu` VALUES (353, 104, '推广订单', '', 'admin:retail:spread:order:list', '', 'A', 0, 1, 0, '2021-12-09 14:44:10', '2021-12-09 14:44:10');
INSERT INTO `t_system_menu` VALUES (354, 104, '清除上级推广人', '', 'admin:retail:spread:clean', '', 'A', 0, 1, 0, '2021-12-09 14:45:33', '2021-12-09 14:45:33');
INSERT INTO `t_system_menu` VALUES (355, 109, '提现编辑', '', 'admin:finance:apply:update', '', 'A', 0, 1, 0, '2021-12-09 15:06:43', '2021-12-09 15:06:43');
INSERT INTO `t_system_menu` VALUES (356, 109, '提现审核', '', 'admin:finance:apply:apply', '', 'A', 0, 1, 0, '2021-12-09 15:09:01', '2021-12-09 15:09:01');
INSERT INTO `t_system_menu` VALUES (357, 167, '物流公司', '', 'admin:express:all', '', 'A', 0, 1, 0, '2021-12-09 16:14:43', '2021-12-09 16:14:43');
INSERT INTO `t_system_menu` VALUES (359, 269, '公众号模板开关', '', 'admin:system:notification:wechat:switch', '', 'A', 0, 1, 0, '2021-12-09 17:15:25', '2021-12-09 17:15:25');
INSERT INTO `t_system_menu` VALUES (360, 269, '小程序订阅模板开关', '', 'admin:system:notification:routine:switch', '', 'A', 0, 1, 0, '2021-12-09 17:15:48', '2021-12-09 17:15:48');
INSERT INTO `t_system_menu` VALUES (361, 269, '发送短信开关', '', 'admin:system:notification:sms:switch', '', 'A', 0, 1, 0, '2021-12-09 17:16:01', '2021-12-09 17:16:01');
INSERT INTO `t_system_menu` VALUES (362, 269, '通知详情', '', 'admin:system:notification:detail', '', 'A', 0, 1, 0, '2021-12-09 17:16:19', '2021-12-09 17:16:19');
INSERT INTO `t_system_menu` VALUES (366, 269, '小程序订阅消息同步', '', 'admin:wechat:routine:sync', '', 'A', 0, 1, 0, '2021-12-10 12:15:58', '2021-12-11 15:24:32');
INSERT INTO `t_system_menu` VALUES (367, 158, '修改图片分组', '', 'admin:system:attachment:move', '', 'A', 0, 1, 0, '2021-12-10 15:38:24', '2021-12-10 15:38:24');
INSERT INTO `t_system_menu` VALUES (368, 32, '订单核销', '', 'admin:order:write:update', '', 'A', 0, 1, 0, '2021-12-10 15:39:06', '2021-12-10 15:39:06');
INSERT INTO `t_system_menu` VALUES (369, 269, '修改通知', '', 'admin:system:notification:update', '', 'A', 0, 1, 0, '2021-12-10 15:53:29', '2021-12-10 15:53:29');
INSERT INTO `t_system_menu` VALUES (370, 167, '编辑快递公司', '', 'admin:express:update', '', 'A', 0, 1, 0, '2021-12-13 10:04:36', '2021-12-13 10:04:36');
INSERT INTO `t_system_menu` VALUES (371, 167, '修改快递公司状态', '', 'admin:express:update:show', '', 'A', 0, 1, 0, '2021-12-13 10:04:56', '2021-12-13 10:04:56');
INSERT INTO `t_system_menu` VALUES (372, 167, '快递公司详情', '', 'admin:express:info', '', 'A', 0, 1, 0, '2021-12-13 10:05:10', '2021-12-13 10:05:10');
INSERT INTO `t_system_menu` VALUES (373, 32, '物流公司面单模板', '', 'admin:express:template', '', 'A', 0, 1, 0, '2021-12-13 10:06:30', '2021-12-13 10:06:30');
INSERT INTO `t_system_menu` VALUES (374, 122, '一号通修改手机号—验证', '', 'admin:pass:update:phone:validator', '', 'A', 0, 1, 0, '2021-12-13 10:07:15', '2021-12-13 10:07:15');
INSERT INTO `t_system_menu` VALUES (375, 99, '交易组件正式商品详情', '', 'admin:pay:component:product:info', '', 'A', 0, 1, 1, '2021-12-13 10:08:38', '2021-12-13 10:08:38');
INSERT INTO `t_system_menu` VALUES (376, 88, '交易组件获取快递公司', '', 'admin:pay:component:delivery:company:get:list', '', 'A', 0, 1, 1, '2021-12-13 10:11:12', '2021-12-13 10:11:12');
INSERT INTO `t_system_menu` VALUES (377, 88, '交易组件小程序接入申请', '', 'admin:pay:component:shop:register', '', 'A', 0, 1, 1, '2021-12-13 10:11:27', '2021-12-13 10:11:27');
INSERT INTO `t_system_menu` VALUES (378, 88, '交易组件获取小程序接入状态', '', 'admin:pay:component:shop:register:check', '', 'A', 0, 1, 1, '2021-12-13 10:11:43', '2021-12-13 10:11:43');
INSERT INTO `t_system_menu` VALUES (379, 88, '交易组件上传图片', '', 'admin:pay:component:shop:img:upload', '', 'A', 0, 1, 1, '2021-12-13 10:11:57', '2021-12-13 10:11:57');
INSERT INTO `t_system_menu` VALUES (380, 88, '交易组件上传品牌信息', '', 'admin:pay:component:shop:brand:audit', '', 'A', 0, 1, 1, '2021-12-13 10:12:18', '2021-12-13 10:12:18');
INSERT INTO `t_system_menu` VALUES (381, 88, '交易组件品牌列表', '', 'admin:pay:component:shop:brand:list', '', 'A', 0, 1, 1, '2021-12-13 10:12:35', '2021-12-13 10:12:35');
INSERT INTO `t_system_menu` VALUES (382, 88, '交易组件可用品牌列表', '', 'admin:pay:component:shop:brand:usable:list', '', 'A', 0, 1, 1, '2021-12-13 10:12:51', '2021-12-13 10:12:51');
INSERT INTO `t_system_menu` VALUES (383, 104, '添加推广关系', '', 'admin:retail:spread:save', '', 'A', 0, 1, 1, '2021-12-13 10:16:47', '2021-12-13 10:16:47');
INSERT INTO `t_system_menu` VALUES (384, 156, '核销订单头部数据', '', 'admin:order:statistics', '', 'A', 0, 1, 0, '2021-12-13 10:20:16', '2021-12-13 10:20:16');
INSERT INTO `t_system_menu` VALUES (385, 156, '核销订单月列表数据', '', 'admin:order:statistics:data', '', 'A', 0, 1, 0, '2021-12-13 10:20:30', '2021-12-13 10:20:30');
INSERT INTO `t_system_menu` VALUES (386, 156, '核销码查询待核销订单', '', 'admin:order:write:confirm', '', 'A', 0, 1, 0, '2021-12-13 10:20:42', '2021-12-13 10:20:42');
INSERT INTO `t_system_menu` VALUES (387, 344, '订单统计详情', '', 'admin:order:time', '', 'A', 0, 1, 0, '2021-12-13 10:22:47', '2021-12-13 10:22:47');
INSERT INTO `t_system_menu` VALUES (388, 32, '视频号订单发送货', '', 'admin:order:video:send', '', 'A', 0, 1, 1, '2021-12-13 10:23:11', '2021-12-13 10:23:11');
INSERT INTO `t_system_menu` VALUES (389, 16, '商品规则值详情', '', 'admin:product:rule:info', '', 'A', 0, 1, 0, '2021-12-13 10:24:50', '2021-12-13 10:24:50');
INSERT INTO `t_system_menu` VALUES (390, 344, '新增附件', '', 'admin:system:attachment:save', '', 'A', 0, 1, 0, '2021-12-13 10:26:45', '2021-12-13 10:26:45');
INSERT INTO `t_system_menu` VALUES (391, 344, '修改附件', '', 'admin:system:attachment:update', '', 'A', 0, 1, 0, '2021-12-13 10:28:19', '2021-12-13 10:28:19');
INSERT INTO `t_system_menu` VALUES (392, 344, '附件详情', '', 'admin:system:attachment:info', '', 'A', 0, 1, 0, '2021-12-13 10:29:08', '2021-12-13 10:29:08');
INSERT INTO `t_system_menu` VALUES (393, 166, '修改城市状态', '', 'admin:system:city:update:status', '', 'A', 0, 1, 0, '2021-12-13 10:29:55', '2021-12-13 10:29:55');
INSERT INTO `t_system_menu` VALUES (394, 344, '检测表单name是否存在', '', 'admin:system:config:check', '', 'A', 0, 1, 0, '2021-12-13 10:30:58', '2021-12-13 10:30:58');
INSERT INTO `t_system_menu` VALUES (395, 344, '根据key获取配置', '', 'admin:system:config:get', '', 'A', 0, 1, 0, '2021-12-13 10:31:24', '2021-12-13 10:31:24');
INSERT INTO `t_system_menu` VALUES (396, 344, '更新配置信息', '', 'admin:system:config:update', '', 'A', 0, 1, 0, '2021-12-13 10:31:44', '2021-12-13 10:31:44');
INSERT INTO `t_system_menu` VALUES (397, 344, '组合数据详情', '', 'admin:system:group:info', '', 'A', 0, 1, 0, '2021-12-13 10:32:28', '2021-12-13 10:32:28');
INSERT INTO `t_system_menu` VALUES (398, 157, '修改核销员状态', '', 'admin:system:staff:update:status', '', 'A', 0, 1, 0, '2021-12-13 10:33:46', '2021-12-13 10:33:46');
INSERT INTO `t_system_menu` VALUES (399, 42, '用户分组详情', '', 'admin:user:group:info', '', 'A', 0, 1, 0, '2021-12-13 10:34:41', '2021-12-13 10:34:41');
INSERT INTO `t_system_menu` VALUES (400, 39, '会员等级列表', '', 'admin:user:level:list', '', 'A', 0, 1, 0, '2021-12-13 10:36:37', '2021-12-13 10:36:37');
INSERT INTO `t_system_menu` VALUES (401, 40, '会员标签详情', '', 'admin:user:tag:info', '', 'A', 0, 1, 0, '2021-12-13 10:37:04', '2021-12-13 10:37:04');
INSERT INTO `t_system_menu` VALUES (402, 344, '获取微信公众号js配置', '', 'admin:wechat:config', '', 'A', 0, 1, 0, '2021-12-13 10:38:24', '2021-12-13 10:38:24');
INSERT INTO `t_system_menu` VALUES (403, 344, '微信素材上传', '', 'admin:wechat:media:upload', '', 'A', 0, 1, 0, '2021-12-13 10:38:50', '2021-12-13 10:38:50');
INSERT INTO `t_system_menu` VALUES (404, 13, '代码生成', '', '', '/codegen/codegenList', 'C', 0, 1, 0, '2022-08-23 18:07:37', '2022-08-23 18:07:37');

在这里插入图片描述

三、树形代码

3.1、获取根节点

树形结构需要有一个根节点,即,图中paid=0的节点,我们先把根节点找出来

//获取根节点
private List<MenusResponse> getRootNode() {
    List<MenusResponse> rootMenuLists = new ArrayList<MenusResponse>();
    for (MenusResponse menuNode : menuList) {
        if (menuNode.getPid().equals(0)) {
            rootMenuLists.add(menuNode);
        }
    }
    return rootMenuLists;
}

menuList为菜单总条数,admin为所有数据,找出上述代码就是找出这个数据中menuNode.getPid().equals(0)父节点为0的数据,这些点为根节点(RootNode)

我们以admin为例子,即获取所有菜单,下面代码执行后的结果,rootMenuListspid=0的12条数据

在这里插入图片描述

3.2、遍历根节点,递归获取所有子节点

遍历menuList,找出所有数据当中,父id和我当前根节点id相等的数据,即核心是menuNode.getPid().equals(pNode.getId())pNode为父节点,menuNodemenuList遍历数据,然后依次递归buildChildTree方法,直到数据被遍历完

//递归,建立子树形结构
private MenusResponse buildChildTree(MenusResponse pNode) {
    List<MenusResponse> childMenus = new ArrayList<MenusResponse>();
    for (MenusResponse menuNode : menuList) {
        if (menuNode.getPid().equals(pNode.getId())) {
            childMenus.add(buildChildTree(menuNode));
        }
    }
    pNode.setChildList(childMenus);
    return pNode;
}

比如应用菜单下面会有四级子菜单
在这里插入图片描述

3.3、排序

经过第二步之后,已经得到树形结构模型,还需要对返回的请求体做一下排序,按照sort字段进行排序,,如果子菜单不为空,则使用sortList方法递归这个子菜单

// 排序
private List<MenusResponse> sortList(List<MenusResponse> treeMenus) {
    treeMenus = treeMenus.stream().sorted(Comparator.comparing(MenusResponse::getSort).reversed()).collect(Collectors.toList());
    treeMenus.forEach(e -> {
        if (CollUtil.isNotEmpty(e.getChildList())) {
            e.setChildList(sortList(e.getChildList()));
        }
    });
    return treeMenus;
}

这样就能得到最终结果

在这里插入图片描述

3.4、完整代码

完整代码:getMenus接口

  1. controller接口
@RestController
@RequestMapping("api/admin")
public class AdminLoginController {
    @Resource
    private AdminLoginService adminLoginService;

    @GetMapping(value = "/getMenus")
    public Result<List<MenusResponse>> getMenus() {
        return Result.success(adminLoginService.getMenus());
    }
}
  1. adminLoginService方法
/**
 * 获取管理员可访问目录
 * @return List<MenusResponse>
 */
@Override
public List<MenusResponse> getMenus() {
    // 假设是管理员,默认查所有菜单
    List<SystemMenu> menuList = systemMenuService.findAllCatalogue();
    List<MenusResponse> responseList = menuList.stream().map(e -> {
        MenusResponse response = new MenusResponse();
        BeanUtils.copyProperties(e, response);
        return response;
    }).collect(Collectors.toList());

    MenuTree menuTree = new MenuTree(responseList);
    return menuTree.buildTree();
}
  1. 核心MenuTree类
public class MenuTree {

    private List<MenusResponse> menuList = new ArrayList<MenusResponse>();

    public MenuTree(List<MenusResponse> menuList) {
        this.menuList = menuList;
    }

    //建立树形结构
    public List<MenusResponse> buildTree() {
        List<MenusResponse> treeMenus = new ArrayList<MenusResponse>();
        for (MenusResponse menuNode : getRootNode()) {
            menuNode = buildChildTree(menuNode);
            treeMenus.add(menuNode);
        }
        return sortList(treeMenus);
    }

    // 排序
    private List<MenusResponse> sortList(List<MenusResponse> treeMenus) {
        treeMenus = treeMenus.stream().sorted(Comparator.comparing(MenusResponse::getSort).reversed()).collect(Collectors.toList());
        treeMenus.forEach(e -> {
            if (CollUtil.isNotEmpty(e.getChildList())) {
                e.setChildList(sortList(e.getChildList()));
            }
        });
        return treeMenus;
    }

    //递归,建立子树形结构
    private MenusResponse buildChildTree(MenusResponse pNode) {
        List<MenusResponse> childMenus = new ArrayList<MenusResponse>();
        for (MenusResponse menuNode : menuList) {
            if (menuNode.getPid().equals(pNode.getId())) {
                childMenus.add(buildChildTree(menuNode));
            }
        }
        pNode.setChildList(childMenus);
        return pNode;
    }

    //获取根节点
    private List<MenusResponse> getRootNode() {
        List<MenusResponse> rootMenuLists = new ArrayList<MenusResponse>();
        for (MenusResponse menuNode : menuList) {
            if (menuNode.getPid().equals(0)) {
                rootMenuLists.add(menuNode);
            }
        }
        return rootMenuLists;
    }
}

创作不易,不妨点赞、收藏、关注支持一下,各位的支持就是我创作的最大动力❤️

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/958502.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Versal - ChipScoPy + XSDB + Python CLI

目录 1. 简介 1.1 ChipScoPy 1.2 XSDB 1.3 Python CLI 2. 安装 ChipScoPy 2.1 Python 环境 2.2 设置虚拟环境 2.3 安装 ChipScoPy 2.4 安装依赖 2.5 安装示例 2.6 打开 JupyterLab 2.7 启动 hw/cs 服务 2.8 更新 ChipScoPy 2.9 参考资料 3. ChipScoPy 示例 3.1…

【优选算法】8----四数之和

有看过我上篇算法博客并且去做过的铁子们&#xff0c;对这道题的话应该就不会那么陌生了&#xff0c;因为这两道题 的解题思路有着异曲同工之妙~ -----------------------------------------begin------------------------------------- 题目解析&#xff1a; 跟三数之和就多了…

安卓日常问题杂谈(一)

背景 关于安卓开发中&#xff0c;有很多奇奇怪怪的问题&#xff0c;有时候这个控件闪一下&#xff0c;有时候这个页面移动一下&#xff0c;这些对于快速开发中&#xff0c;去查询&#xff0c;都是很耗费时间的&#xff0c;因此&#xff0c;本系列文章&#xff0c;旨在记录安卓…

Python3 OS模块中的文件/目录方法说明九

一. 简介 前面文章简单学习了 Python3 中 OS模块中的文件/目录的部分函数。 本文继续来学习 OS 模块中文件、目录的操作方法&#xff1a;os.pipe() 方法、os.popen() 方法。 二. Python3 OS模块中的文件/目录方法 1. os.pipe() 方法 os.pipe() 方法用于创建一个管道, 返回…

2025.1.20——四、[强网杯 2019]Upload1 文件上传|反序列化

题目来源&#xff1a;buuctf [强网杯 2019]Upload 1 目录 一、打开靶机&#xff0c;查看信息 二、解题思路 step 1&#xff1a;登陆进去看情况 step 2&#xff1a;大佬来支援——问题在cookie step 3&#xff1a;测试两个思路 1.目录穿越 2.目录扫描 step 4&#xff…

Go学习:iota枚举

iota注意事项&#xff1a; iota&#xff1a;常量自动生成器&#xff0c;每隔一行&#xff0c;自动累加iota给常量赋值使用iota 遇到 const&#xff0c;重置为 0可以只写一个iotaiota如果是同一行&#xff0c;值都一样 简单代码&#xff1a; package mainimport "fmt&qu…

2025 OWASP十大智能合约漏洞

随着去中心化金融&#xff08;DeFi&#xff09;和区块链技术的不断发展&#xff0c;智能合约安全的重要性愈发凸显。在此背景下&#xff0c;开放网络应用安全项目&#xff08;OWASP&#xff09;发布了备受期待的《2025年智能合约十大漏洞》报告。 这份最新报告反映了不断演变的…

双指针+前缀和习题(一步步讲解)

前言&#xff1a;如果解决下面这几道题有些问题&#xff0c;或者即使看了我画的过程图也不理解的可以去看看我的上一篇文章&#xff0c;有可能会对你有帮助。 一、《数值元素的目标和》---来自AcWing 数组元素的目标和 给定两个升序排序的有序数组 A和 B&#xff0c;以及一个…

单路由及双路由端口映射指南

远程登录总会遇到登陆不上的情况&#xff0c;可能是访问的大门没有打开哦&#xff0c;下面我们来看看具体是怎么回事&#xff1f; 当软件远程访问时&#xff0c;主机需要两个条件&#xff0c;一是有一个唯一的公网IP地址&#xff08;运营商提供&#xff09;&#xff0c;二是开…

Addressable学习

AssetsBundle是Unity的资源管理机制,将资源打包到AssetsBundle资源包并提供接口能从ab包里面加载资源出来。有了这个机制以后&#xff0c;我们要做资源管理&#xff0c;还需要做: a: 根据项目需求,编写编辑器扩展,提供指定资源打入对应bundle包工具策略; b: 根据项目的需求,资源…

大华相机DH-IPC-HFW3237M支持的ONVIF协议

使用libONVIF C库。 先发现相机。 配置 lib目录 包含 编译提示缺的文件&#xff0c;到libonvif里面拷贝过来。 改UDP端口 代码 使用msvc 2022的向导生成空项目&#xff0c;从项目的main示例拷贝过来。 CameraOnvif.h #pragma once#include <QObject> #include &l…

leetcode刷题记录(八十六)——84. 柱状图中最大的矩形

&#xff08;一&#xff09;问题描述 84. 柱状图中最大的矩形 - 力扣&#xff08;LeetCode&#xff09;84. 柱状图中最大的矩形 - 给定 n 个非负整数&#xff0c;用来表示柱状图中各个柱子的高度。每个柱子彼此相邻&#xff0c;且宽度为 1 。求在该柱状图中&#xff0c;能够勾…

centos9编译安装opensips 二【进阶篇-定制目录+模块】推荐

环境&#xff1a;centos9 last opensips -V version: opensips 3.6.0-dev (x86_64/linux) flags: STATS: On, DISABLE_NAGLE, USE_MCAST, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, HP_MALLOC, DBG_MALLOC, CC_O0, FAST_LOCK-ADAPTIVE_WAIT ADAPTIVE_WAIT_LOOPS1024, MAX_RE…

SpringBoot 实现动态管理定时任务 Job的动态操作(添加、修改、启停、执行、删除)以及界面展示和具体Job的创建与执行示例

SpringBoot 实现动态管理定时任务 Job的动态操作&#xff08;添加、修改、启停、执行、删除&#xff09;以及界面展示和具体Job的创建与执行示例 关键接口类&#xff1a; CronTaskRegistrar SchedulingRunnable . 添加定时任务注册类&#xff0c;用来增加、删除定时任务 impo…

LLMs的星辰大海:大语言模型的前世今生

文章目录 一. LLM 的演进&#xff1a;从规则到智能的跃迁 &#x1f4ab;1.1 语言模型的蹒跚起步 &#x1f476;1.2 RNN 与 LSTM&#xff1a;序列建模的尝试 &#x1f9d0;1.3 Transformer 的横空出世&#xff1a;自注意力机制的革命 &#x1f4a5;1.4 LLM &#xff1a;从预测到…

路由器旁挂三层网络实现SDWAN互联(爱快SD-WAN)

近期因公司新办公区建设&#xff0c;原有的爱快路由器的SDWAN功能实现分支之间互联的服务还需要继续使用。在原有的小型网络中&#xff0c;使用的爱快路由器当作网关设备&#xff0c;所以使用较为简单,如下图所示。 现变更网络拓扑为三层网络架构&#xff0c;但原有的SDWAN分支…

flutter_学习记录_00_环境搭建

1.参考文档 Mac端Flutter的环境配置看这一篇就够了 flutter的中文官方文档 2. 本人环境搭建的背景 本人的电脑的是Mac的&#xff0c;iOS开发&#xff0c;所以iOS开发环境本身是可用的&#xff1b;外加Mac电脑本身就会配置Java的环境。所以&#xff0c;后面剩下的就是&#x…

15_业务系统基类

创建脚本 SystemRoot.cs 因为 业务系统基类的子类 会涉及资源加载服务层ResSvc.cs 和 音乐播放服务层AudioSvc.cs 所以在业务系统基类 提取引用资源加载服务层ResSvc.cs 和 音乐播放服务层AudioSvc.cs 并调用单例初始化 using UnityEngine; // 功能 : 业务系统基类 public c…

docker 安装 redis 详解

在平常的开发工作中&#xff0c;我们经常会用到 redis&#xff0c;那么 docker 下应该如何安装 redis 呢&#xff1f;简单来说&#xff1a;第一步&#xff1a;拉取redis镜像&#xff1b;第二步&#xff1a;设置 redis.conf 配置文件&#xff1b;第三步&#xff1a;编写 docker-…

困境如雾路难寻,心若清明步自轻---2024年创作回顾

文章目录 前言博客创作回顾第一次被催更第一次获得证书周榜几篇博客互动最多的最满意的引发思考的 写博契机 碎碎念时也运也部分经验 尾 前言 今年三月份&#xff0c;我已写下一篇《近一年多个人总结》&#xff0c;当时还没开始写博客。四月份写博后&#xff0c;就顺手将那篇总…