CREATE TABLE `qimall_addons_course` (
    `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
    `mall_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '商城id',
    `name` varchar(50) NOT NULL DEFAULT '' COMMENT '课程名称',
    `cat_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程分类id',
    `price` decimal(12,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '课程价格',
    `line_off_price` decimal(12,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '划线价格',
    `member_price` decimal(12,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '会员价格',
    `logo` varchar(255) NOT NULL DEFAULT '' COMMENT '课程封面logo图片保存地址',
    `allow_member_levels` varchar(1000) NOT NULL DEFAULT '' COMMENT '指定会员观看，会员等级之间用逗号连接',
    `can_download` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否允许下载 默认允许下载 1：是 0：否',
    `can_comment` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否允许评论 默认允许评论 1：是 0：否',
    `introduce` varchar(1000) NOT NULL DEFAULT '' COMMENT '课程介绍',
    `detail` text NOT NULL COMMENT '课程详情',
    `sales` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程销量',
    `is_open_vm` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否开启虚拟数据 默认开启 1：开启 0：不开启',
    `vm_likes` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程虚拟点赞数',
    `vm_shares` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程虚拟分享数',
    `vm_downloads` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程虚拟下载数',
    `vm_views` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程虚拟播放次数',
    `likes` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程实际点赞数',
    `shares` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程实际分享数',
    `downloads` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程实际下载数',
    `views` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程实际播放次数',
    `comments` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程实际评论数',
    `sell_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '课程售卖方式，1：按照课程设置的售价付费观看，2：指定会员观看，3：免费，4：转发一定次数免费观看',
    `relays` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '预设置转发次数，达到转发次数后可以免费观看',
    `relay_customize_text` varchar(20) NOT NULL DEFAULT '' COMMENT '转发按钮自定义文字',
    `relay_times` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程被所有的会员转发的总次数，在此做冗余',
   `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '课程状态 默认是1（上架） 1：上架 0：下架,-1是删除',
    `created_at` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
    `updated_at` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '修改时间',
    PRIMARY KEY (`id`) USING BTREE,
    KEY `idx_mc_id` (`mall_id`,`cat_id`) USING BTREE,
    KEY `idx_course_name` (`name`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='课程表';

CREATE TABLE `qimall_addons_course_activity` (
     `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
     `mall_id` int(10) unsigned NOT NULL,
     `course_id` text NOT NULL COMMENT '活动关联的课程id，多个用逗号连接',
     `goods_id` int(10) unsigned NOT NULL COMMENT '活动关联的商品id，只能是一个商品',
     `course_number` int(10) unsigned NOT NULL COMMENT '活动关联的课程个数',
     `select_number` int(10) unsigned NOT NULL COMMENT '活动关联的课程中任选课程的个数',
     `name` varchar(50) NOT NULL DEFAULT '' COMMENT '活动名称',
     `banners` text COMMENT '活动轮播图，多个图片地址用逗号隔开',
     `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '活动状态，1：启用，0：禁用，-1删除',
     `created_at` int(10) unsigned NOT NULL DEFAULT '0',
     `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
     PRIMARY KEY (`id`) USING BTREE,
     KEY `index_activity_mallid` (`mall_id`) USING BTREE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='活动记录表';

CREATE TABLE `qimall_addons_course_banners` (
     `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
     `mall_id` int(10) unsigned NOT NULL,
     `sort` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '序号',
     `title` varchar(255) NOT NULL DEFAULT '' COMMENT '图片标题',
     `pic_link` varchar(1000) NOT NULL DEFAULT '' COMMENT '图片跳转链接',
     `pic_path` varchar(255) NOT NULL DEFAULT '' COMMENT '图片保存路径',
     `is_show` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否展示，1：是，0：不是',
     `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '活动状态，1：启用，0：禁用，-1删除',
     `created_at` int(10) unsigned NOT NULL DEFAULT '0',
     `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
     PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='广告轮播图记录表';

CREATE TABLE `qimall_addons_course_bought` (
     `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
     `mall_id` int(10) unsigned NOT NULL,
     `user_id` int(10) unsigned NOT NULL,
     `course_id` int(10) unsigned NOT NULL,
    `amount` decimal(12,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '支付金额',
     `buy_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '课程购买方式，1：单独购买，2：商品赠送',
     `order_id` int(10) unsigned NOT NULL COMMENT '购买该课程的订单 id,课程订单 id 或者公共订单 id',
     `is_pay` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态，1：已支付，0：未支付',
     `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态 0禁用，1启用,-1是删除',
     `created_at` int(10) unsigned NOT NULL DEFAULT '0',
     `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
     PRIMARY KEY (`id`) USING BTREE,
     KEY `index_buy_mall_user_course_id` (`mall_id`,`user_id`,`course_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='会员已购买课程记录表,在订单创建的时候记录到此表，在支付完成的时候更新状态';

CREATE TABLE `qimall_addons_course_category` (
     `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
     `mall_id` int(10) unsigned NOT NULL,
     `sort` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '序号',
     `cname` varchar(150) NOT NULL DEFAULT '' COMMENT '分类名称',
     `logo` varchar(255) NOT NULL DEFAULT '' COMMENT '分类logo图片保存地址',
     `is_navicat` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否展示导航，1：是，0：不是',
     `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态 0禁用，1启用,-1是删除',
     `created_at` int(10) unsigned NOT NULL DEFAULT '0',
     `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
     PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='课程分类表';

CREATE TABLE `qimall_addons_course_chapter` (
      `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
      `mall_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '商城id',
      `course_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程id',
      `dir_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程目录id,如果此字段值为0，说明没有二级目录',
     `name` varchar(255) NOT NULL DEFAULT '' COMMENT '课程章节名称',
      `video_url` varchar(255) NOT NULL DEFAULT '' COMMENT '课程章节视频url地址',
      `type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '视频类型 默认是1（视频） 1：视频 2：音频',
      `goods_list` varchar(1000) NOT NULL DEFAULT '' COMMENT '商品列表，用逗号连接',
      `can_see` tinyint(4) NOT NULL DEFAULT '1' COMMENT '是否允许试看 默认允许 1：允许 0：不允许',
      `views` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '课程章节实际播放次数',
      `sort` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '序号 按asc升序排列',
      `thumb_url` varchar(255) NOT NULL DEFAULT '' COMMENT '视频首图',
      `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态 0禁用，1启用,-1是删除',
      `created_at` int(10) unsigned NOT NULL DEFAULT '0',
      `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
      `video_length` varchar(50) NOT NULL DEFAULT '' COMMENT '视频时长',
      PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='课程章节表';

CREATE TABLE `qimall_addons_course_directorys` (
      `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
      `mall_id` int(11) NOT NULL COMMENT '商城id',
      `course_id` int(10) unsigned NOT NULL COMMENT '课程id',
      `parent_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '父级目录ID',
      `level` int(10) unsigned NOT NULL DEFAULT '1' COMMENT '目录等级 默认1',
      `name` varchar(50) NOT NULL DEFAULT '' COMMENT '目录名称',
      `sort` tinyint(4) NOT NULL DEFAULT '1' COMMENT '目录排序',
      `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态 0禁用，1启用,-1是删除',
      `created_at` int(10) unsigned NOT NULL DEFAULT '0',
      `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
      PRIMARY KEY (`id`) USING BTREE,
      KEY `index_dir_courseid` (`course_id`) USING BTREE,
      KEY `index_dir_mallid` (`mall_id`) USING BTREE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='课程章节目录记录表,id 为 0 的目录固定名称为 “未分类”';

CREATE TABLE `qimall_addons_course_discuss` (
   `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
   `mall_id` int(11) unsigned NOT NULL DEFAULT '0',
   `uid` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',
   `cid` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '评论的课程id',
   `cpid` int(11) unsigned NOT NULL COMMENT '评论的章节id',
   `content` text CHARACTER SET utf8 COMMENT '评论内容',
   `score` tinyint(1) NOT NULL DEFAULT '5' COMMENT '课程评分',
   `is_anonymous` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否匿名，1：是，0：不是',
   `is_shield` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否屏蔽评论，1：是，0：否',
   `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态 0禁用，1启用,-1是删除',
   `created_at` int(11) unsigned NOT NULL DEFAULT '0',
   `updated_at` int(11) unsigned NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`) USING BTREE,
   KEY `index_cid` (`cid`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='课程评论记录表';

CREATE TABLE `qimall_addons_course_groups` (
    `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
    `mall_id` int(11) unsigned NOT NULL,
    `gname` varchar(150) NOT NULL DEFAULT '' COMMENT '分组名称',
    `sort` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '序号',
    `cid` text COMMENT '关联的课程id，多个课程 id 用逗号（英文）连接',
   `logo` varchar(255) NOT NULL DEFAULT '' COMMENT '分组logo图片保存路径',
    `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态 0禁用，1启用,-1是删除',
    `created_at` int(10) unsigned NOT NULL DEFAULT '0',
    `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
    PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='课程分组记录表';

CREATE TABLE `qimall_addons_course_orders` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `mall_id` int(11) NOT NULL DEFAULT '0' COMMENT '商城id',
  `user_id` int(11) unsigned NOT NULL DEFAULT '0',  `course_id` int(11) unsigned NOT NULL COMMENT '课程id',
  `order_no` varchar(50) NOT NULL DEFAULT '' COMMENT '订单编号',
  `price` decimal(12,0) unsigned NOT NULL DEFAULT '0' COMMENT '价格',
  `pay_money` decimal(12,0) unsigned NOT NULL DEFAULT '0' COMMENT '实际付款金额',
  `pay_type` tinyint(4) NOT NULL DEFAULT '1',
  `use_discount` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否使用折扣，1：是，0：否',
  `discount_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '使用的折扣类型：0：未使用，1：积分，2：红包，3：活动打折，4：会员等级优惠，5：优惠劵，跟 use_discount 字段相关联，只有当 use_discount = 1 时，此字段的值有意义',
  `discount_quota` decimal(12,0) NOT NULL DEFAULT '0' COMMENT '折扣金额，跟 use_discount 字段相关联，只有当 use_discount = 1 时，此字段的值有意义',
  `order_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '订单状态，0：未支付，1：已支付',
  `pay_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '支付时间',
  `cancel_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '订单取消的时间，下单后未支付，经过一定的时间系统自动取消',
  `remark` varchar(255) NOT NULL DEFAULT '' COMMENT '备注',
  `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态 0禁用，1启用,-1是删除',
  `created_at` int(10) unsigned NOT NULL DEFAULT '0',
  `updated_at` int(10) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`) USING BTREE,
  KEY `index_order_mallid` (`mall_id`) USING BTREE,
  KEY `index_order_userid` (`user_id`) USING BTREE,
  KEY `index_order_couserid` (`course_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='课程订单表';

CREATE TABLE `qimall_addons_course_relays` (
   `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
   `mall_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商城id',
   `user_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',
   `course_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '课程id',
   `relay_type` tinyint(1) NOT NULL DEFAULT '1' COMMENT '转发方式，1：微信好友，2：微信朋友圈',
   `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态 0禁用，1启用,-1是删除',
   `created_at` int(11) unsigned NOT NULL DEFAULT '0',
   `updated_at` int(11) unsigned NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`) USING BTREE,
   KEY `mucid` (`mall_id`,`user_id`,`course_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='会员转发课程记录表';

CREATE TABLE `qimall_addons_course_user_chapter_likes` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `mall_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商城id',
  `course_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '课程id',
   `user_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',
  `is_likes` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否点赞，1：是，0：不是',
  `status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态 0禁用，1启用,-1是删除',
  `created_at` int(11) unsigned NOT NULL DEFAULT '0',
  `updated_at` int(11) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='用户点赞课程章节关联表';

INSERT INTO `qimall_diy_components` (`code`, `title`, `group`, `icon`, `count`, `is_top`, `permission`, `sort`, `source`, `status`, `created_at`, `updated_at`) VALUES ('course', '视频课程', 'marketing', '', 999, 0, '{\"is_drag\":\"true\",\"is_up\":\"true\",\"id_down\":\"true\",\"is_copy\":\"true\"}', 999, 'Course', 1, 1634538238, 1634538238);