drop table if exists bm_carousel_set;

drop table if exists bm_co_bank;

drop table if exists bm_company_info;

drop table if exists bm_machinist_file;

drop table if exists bm_operator_info;

drop table if exists bm_topic_info;

drop table if exists business_menu;

drop table if exists business_open;

drop table if exists file_info;

drop table if exists gps_his_info;

drop table if exists gps_real_info;

drop table if exists ma_dev_info;

drop table if exists ma_file_info;

drop table if exists ma_hot_search;

drop table if exists ma_lease_info;

drop table if exists ma_order_details;

drop table if exists ma_order_info;

drop table if exists ma_type_info;

drop table if exists ma_up_off;

drop table if exists ma_up_off_record;

drop table if exists ma_user_collect;

drop table if exists pay_record;

drop table if exists sys_dept;

drop table if exists sys_dic;

drop table if exists sys_job;

drop table if exists sys_job_log;

drop table if exists sys_logininfor;

drop table if exists sys_menu;

drop table if exists sys_oper_log;

drop table if exists sys_post;

drop table if exists sys_role;

drop table if exists sys_role_dept;

drop table if exists sys_role_menu;

drop table if exists sys_user;

drop table if exists sys_user_post;

drop table if exists sys_user_role;

/*==============================================================*/
/* Table: bm_carousel_set                                       */
/*==============================================================*/
create table bm_carousel_set
(
   id                   int(11),
   car_name             varchar(60) comment '轮播图名称',
   car_url              varchar(60) comment '轮播图图片地址',
   type                 varchar(60) comment '配置类型（0：资讯，1跳转地址）考虑用数据字典管理配置轮播图类型',
   open_url             varchar(60) comment '配置跳转地址',
   status               varchar(1) comment '是否启用（0不启用，1启用）',
   create_time          varchar(60) comment '创建时间',
   creator              varchar(60) comment '创建人',
   sort                 varchar(10) comment '排序',
   is_active            varchar(1) comment '是否删除'
);

alter table bm_carousel_set comment '轮播图配置';

/*==============================================================*/
/* Table: bm_co_bank                                            */
/*==============================================================*/
create table bm_co_bank
(
   id                   int(11),
   bank_name            varchar(60) comment '开户行',
   account_name         varchar(60) comment '账户名称',
   bank_account         varchar(60) comment '银行账号',
   bank_address         varchar(60) comment '开户行所在地',
   permit_number        varchar(60) comment '开户许可证核准号',
   permit_url           varchar(60) comment '开户许可证',
   co_id                int(11) comment '企业id'
);

alter table bm_co_bank comment 'bm_co_bank企业开户行信息';

/*==============================================================*/
/* Table: bm_company_info                                       */
/*==============================================================*/
create table bm_company_info
(
   company_id           int(11) comment '企业id',
   company_name         varchar(90) comment '企业名称',
   company_type         varchar(90) comment '企业类型(社会企业，南网集团企业，南网控股企业)',
   company_ltd          varchar(90) comment '企业所属（广东电网、广西电网、贵州电网、云南电网、海南电网、储能公司、深圳供电局、超高压公司）',
   credit_code          varchar(90) comment '统一社会信用代码',
   register_address     varchar(90) comment '注册地址',
   operate_address      varchar(90) comment '经营地址',
   certificate_type     varchar(90) comment '证件类型',
   id_number            varchar(90) comment '法人证件号码',
   business_license     varchar(90) comment '营业执照',
   legal_person         varchar(90) comment '法人姓名',
   invitation_code      varchar(90) comment '邀请码',
   invitation_co_name   varchar(90) comment '邀请企业名称',
   business_scope       varchar(90) comment '经营范围',
   auth_person          varchar(90) comment '被授权人姓名',
   auth_id_number       varchar(90) comment '被授权人身份证',
   auth_phone           varchar(90) comment '被授权人手机号',
   auth_document        varchar(90) comment '法人授权书',
   id_face_url          varchar(90) comment '被授权人身份证头像面',
   id_nation_url        varchar(90) comment '被授权人身份证国徽面',
   create_time          varchar(90) comment '创建时间',
   creator              varchar(90) comment '创建人',
   auditor              int(11) comment '审核人',
   audit_time           varchar(90) comment '审核时间',
   audit_remark         varchar(90) comment '审核备注',
   status               varchar(1) comment '状态（0待审核，1通过，2驳回）',
   update_time          varchar(90) comment '更新日期',
   update_by            varchar(90) comment '更新人'
);

alter table bm_company_info comment '企业信息表';

/*==============================================================*/
/* Table: bm_machinist_file                                     */
/*==============================================================*/
create table bm_machinist_file
(
   st_id                int(11) comment '机手ID',
   file_name            varchar(60) comment '文件名称',
   file_url             varchar(60) comment '文件路径',
   type                 varchar(1) comment '1身份证国徽面2身份证头像面3持证信息'
);

alter table bm_machinist_file comment '机手信息附件表';

/*==============================================================*/
/* Table: bm_operator_info                                      */
/*==============================================================*/
create table bm_operator_info
(
   operator_id          int(11) comment '机手ID',
   operator_name        varchar(60) comment '机手名称',
   gender               varchar(2) comment '性别',
   age                  varchar(60) comment '年龄',
   id_number            varchar(60) comment '身份证',
   telephone            varchar(60) comment '联系方式',
   own_co               varchar(60) comment '所属企业',
   update_time          varchar(60) comment '更新日期'
);

alter table bm_operator_info comment '机手信息表';

/*==============================================================*/
/* Table: bm_topic_info                                         */
/*==============================================================*/
create table bm_topic_info
(
   id                   int(11),
   topic_name           varchar(60) comment '名称',
   type                 int(11) comment '考虑数据字典管理专题资讯类型',
   view_num             int(11) comment '浏览次数',
   content              text comment '内容',
   is_active            varchar(1) comment '是否删除',
   creator              int(11) comment '创建人',
   create_time          varchar(60) comment '创建时间'
);

alter table bm_topic_info comment '专题资讯表';

/*==============================================================*/
/* Table: business_menu                                         */
/*==============================================================*/
create table business_menu
(
   id                   int(11),
   name                 varchar(60) comment '业务名称',
   type                 varchar(10) comment '业务类型（0免费，1收费）',
   is_active            varchar(1) comment '是否删除'
);

alter table business_menu comment '业务菜单';

/*==============================================================*/
/* Table: business_open                                         */
/*==============================================================*/
create table business_open
(
   id                   int(11),
   user_id              int(11) comment '用户id',
   co_id                int(11) comment '企业id',
   business_id          int(11) comment '业务id',
   time                 varchar(60) comment '开通申请日期',
   file_name            varchar(60) comment '附件名称',
   file_url             varchar(60) comment '附件地址',
   auditor              varchar(60) comment '审核人',
   audit_time           varchar(60) comment '审核日期',
   status               varchar(10) comment '状态（0待审核，1通过，2驳回）',
   audit_remark         varchar(60) comment '审核备注'
);

alter table business_open comment '业务开通';

/*==============================================================*/
/* Table: file_info                                             */
/*==============================================================*/
create table file_info
(
   id                   int(11),
   model_id             int(11) comment '模块id',
   file_name            varchar(60) comment '文件名称',
   file_url             varchar(60) comment '文件路径',
   dic_id               int(11) comment '数据字典',
   creator              varchar(60) comment '创建人',
   create_time          varchar(60) comment '创建时间'
);

alter table file_info comment '附件表
';

/*==============================================================*/
/* Table: gps_his_info                                          */
/*==============================================================*/
create table gps_his_info
(
   gps_id               int(11) comment 'gps_id',
   gps_code             varchar(60) comment 'gps编号',
   lon                  varchar(60) comment '经度',
   lat                  varchar(60) comment '维度',
   time                 varchar(60) comment '时间'
);

alter table gps_his_info comment 'gps历史信息表';

/*==============================================================*/
/* Table: gps_real_info                                         */
/*==============================================================*/
create table gps_real_info
(
   gps_id               int(11) comment 'gps_id',
   gps_code             varchar(60) comment 'gps编号',
   lon                  varchar(60) comment '经度',
   lat                  varchar(60) comment '维度',
   elec                 varchar(60) comment '电量',
   time                 varchar(60) comment '上传日期'
);

alter table gps_real_info comment 'gps实时信息表';

/*==============================================================*/
/* Table: ma_dev_info                                           */
/*==============================================================*/
create table ma_dev_info
(
   ma_id                int(11) comment '设备id',
   code                 varchar(60) comment '系统编码',
   type_id              int(11) comment '类型id',
   ma_status            varchar(60) comment '设备状态(自有，待上架，上架，在租，下架)考虑数据字典',
   lease_scope          int(11) comment '租赁范围',
   location             varchar(60) comment '设备所在地',
   brand                varchar(60) comment '设备品牌',
   model_name           varchar(60) comment '设备型号',
   production_date      varchar(60) comment '出厂日期',
   working_hours        varchar(60) comment '工作时长',
   serial_number        varchar(60) comment '整机序列号',
   month_lease_price    varchar(60) comment '设备月租价',
   day_lease_price      varchar(60) comment '设备天租价',
   pic_url              varchar(60) comment '设备主照片',
   js_month_price       varchar(60) comment '机手月租金',
   js_day_price         varchar(60) comment '机手天租金',
   description          varchar(255) comment '详细描述',
   gps_code             varchar(60) comment 'gps编号',
   own_co               int(11) comment '设备所属公司',
   create_time          varchar(60) comment '创建时间',
   creator              int(11) comment '创建人',
   deposit              float(10,2) comment '订金',
   is_active            varchar(1) comment '是否删除',
   update_time          varchar(60) comment '更新时间',
   updator              int(11) comment '修改人'
);

alter table ma_dev_info comment '设备信息表';

/*==============================================================*/
/* Table: ma_file_info                                          */
/*==============================================================*/
create table ma_file_info
(
   id                   int(11),
   ma_id                int(11) comment '设备id',
   file_name            varchar(60) comment '文件名称',
   file_url             varchar(60) comment '文件路径',
   type                 varchar(10) comment '0检测信息，1保险信息，3设备照片'
);

alter table ma_file_info comment '设备附件表
';

/*==============================================================*/
/* Table: ma_hot_search                                         */
/*==============================================================*/
create table ma_hot_search
(
   id                   int(11),
   ma_id                int(11),
   search_num           int(11)
);

alter table ma_hot_search comment '热搜设备表';

/*==============================================================*/
/* Table: ma_lease_info                                         */
/*==============================================================*/
create table ma_lease_info
(
   id                   int(11),
   cz_num               int(11) comment '出租信息',
   qz_num               int(11) comment '求租信息'
);

alter table ma_lease_info comment '租赁信息表';

/*==============================================================*/
/* Table: ma_order_details                                      */
/*==============================================================*/
create table ma_order_details
(
   id                   int(11),
   order_id             int(11) comment '订单id',
   need_company         varchar(60) comment '需求单位',
   plan_start_time      varchar(60) comment '设备计划进场时间',
   is_machinist         varchar(60) comment '是否需要机手',
   address              varchar(60) comment '详细地址',
   duration             varchar(60) comment '工期时长',
   invoice_type         varchar(60) comment '发票类型',
   description          varchar(60) comment '项目说明',
   ma_id                int(11) comment '设备id',
   lease_type           int(11) comment '租赁类型',
   lease_price          varchar(60) comment '租赁单价',
   machinist_price      varchar(60) comment '机手单价',
   order_contract       varchar(60) comment '订单合同',
   machinist_name       varchar(60) comment '机手姓名',
   phone                varchar(60) comment '联系电话',
   logistics_phone      varchar(60) comment '物流司机电话',
   real_start_time      varchar(60) comment '设备实际进场时间',
   renter_name          varchar(60) comment '租方进场确认人',
   tenant_name          varchar(60) comment '出租方进场确认人',
   entry_attachment     varchar(60) comment '进场附件'
);

alter table ma_order_details comment '订单详细表';

/*==============================================================*/
/* Table: ma_order_info                                         */
/*==============================================================*/
create table ma_order_info
(
   order_id             int(11),
   p_id                 int(11) comment '父id（续租原订单）',
   code                 varchar(60) comment '订单编号',
   time                 varchar(60) comment '订单日期',
   deposit              float(10,2) comment '订金',
   cost                 float(10,2) comment '订单金额',
   pay_type             varchar(10) comment '结算周期',
   supplier             varchar(60) comment '供应商id',
   order_status         varchar(60) comment '订单状态（待确认，待上传合同，待发货，已退货，待收货，进行中，临期，超期，驳回，退租申请，续租申请，完结）',
   order_user           int(11) comment '下单用户id',
   order_company        varchar(60) comment '下单企业',
   update_time          varchar(60) comment '更新时间'
);

alter table ma_order_info comment '订单信息表';

/*==============================================================*/
/* Table: ma_type_info                                          */
/*==============================================================*/
create table ma_type_info
(
   type_id              int(11) comment '类型id',
   parent_id            int(11) comment '父级id',
   type_name            varchar(60) comment '类型名称',
   level                varchar(60) comment '层级',
   sort                 varchar(10) comment '排序',
   is_active            varchar(1) comment '是否删除',
   create_time          datetime comment '创建日期',
   user_id              int(11) comment '创建人',
   update_time          datetime comment '更新日期',
   update_by            int(11) comment '更新人'
);

alter table ma_type_info comment '设备类型表';

/*==============================================================*/
/* Table: ma_up_off                                             */
/*==============================================================*/
create table ma_up_off
(
   id                   int(11),
   ma_id                int(11) comment '设备id',
   apply_time           datetime comment '申请时间',
   apply_user           int(11) comment '申请人',
   apply_company        varchar(60) comment '申请企业',
   type                 varchar(10) comment '1上架，2下架',
   audit_user           int(11) comment '审核人',
   audit_time           dateTime comment '审核时间',
   status               varchar(60) comment '状态（1通过，2驳回）'
);

alter table ma_up_off comment '设备上下架管理
';

/*==============================================================*/
/* Table: ma_up_off_record                                      */
/*==============================================================*/
create table ma_up_off_record
(
   id                   int(11),
   ma_id                int(11) comment '设备id',
   apply_time           datetime comment '申请时间',
   apply_user           int(11) comment '申请人',
   apply_company        varchar(60) comment '申请企业',
   type                 varchar(10) comment '1上架，2下架',
   audit_user           int(11) comment '审核人',
   audit_time           dateTime comment '审核时间',
   status               varchar(60) comment '状态（1通过，2驳回）'
);

alter table ma_up_off_record comment '设备上下架管理记录
';

/*==============================================================*/
/* Table: ma_user_collect                                       */
/*==============================================================*/
create table ma_user_collect
(
   id                   int(11),
   user_id              int(11) comment '用户id',
   ma_id                int(11) comment '设备id',
   time                 varchar(60) comment '收藏时间'
);

alter table ma_user_collect comment '我的收藏
';

/*==============================================================*/
/* Table: pay_record                                            */
/*==============================================================*/
create table pay_record
(
   pay_id               int(11),
   order_id             int(11) comment '订单id',
   description          varchar(60) comment '描述',
   pay_way              varchar(1) comment '付款方式（订金，进度款，尾款）',
   money                float(10,2) comment '金额',
   pay_time             datetime comment '时间',
   pay_url              varchar(60) comment '凭证',
   pay_man              varchar(60) comment '姓名'
);

alter table pay_record comment '付款记录表';

/*==============================================================*/
/* Table: sys_dept                                              */
/*==============================================================*/
create table sys_dept
(
   dept_id              bigint(20) not null auto_increment comment '部门id',
   parent_id            bigint(20) default 0 comment '父部门id',
   ancestors            varchar(50) default '' comment '祖级列表',
   dept_name            varchar(30) default '' comment '部门名称',
   order_num            int(4) default 0 comment '显示顺序',
   leader               varchar(20) default NULL comment '负责人',
   phone                varchar(11) default NULL comment '联系电话',
   email                varchar(50) default NULL comment '邮箱',
   status               char(1) default '0' comment '部门状态（0正常 1停用）',
   del_flag             char(1) default '0' comment '删除标志（0代表存在 2代表删除）',
   create_by            varchar(64) default '' comment '创建者',
   create_time          datetime comment '创建时间',
   update_by            varchar(64) default '' comment '更新者',
   update_time          datetime comment '更新时间',
   primary key (dept_id)
)
engine=innodb auto_increment=200 comment = '部门表';

alter table sys_dept comment '组织机构表sys_dept';

/*==============================================================*/
/* Table: sys_dic                                               */
/*==============================================================*/
create table sys_dic
(
   id                   int(11),
   p_id                 int(11) comment '父id',
   code                 varchar(60) comment '编码',
   name                 varchar(60) comment '字典名称',
   description          varchar(60) comment '描述',
   value                varchar(10) comment '值',
   sort                 varchar(10) comment '排序',
   level                varchar(10) comment '层级',
   status               varchar(10) comment '状态',
   create_time          varchar(60) comment '创建时间',
   creator              varchar(60) comment '创建人'
);

alter table sys_dic comment '数据字典表';

/*==============================================================*/
/* Table: sys_job                                               */
/*==============================================================*/
create table sys_job
(
   job_id               bigint(20) not null auto_increment comment '任务ID',
   job_name             varchar(64) not null default '' comment '任务名称',
   job_group            varchar(64) not null default 'DEFAULT' comment '任务组名',
   invoke_target        varchar(500) not null comment '调用目标字符串',
   cron_expression      varchar(255) default '' comment 'cron执行表达式',
   misfire_policy       varchar(20) default '3' comment '计划执行错误策略（1立即执行 2执行一次 3放弃执行）',
   concurrent           char(1) default '1' comment '是否并发执行（0允许 1禁止）',
   status               char(1) default '0' comment '状态（0正常 1暂停）',
   create_by            varchar(64) default '' comment '创建者',
   create_time          datetime comment '创建时间',
   update_by            varchar(64) default '' comment '更新者',
   update_time          datetime comment '更新时间',
   remark               varchar(500) default '' comment '备注信息',
   primary key (job_id, job_name, job_group)
)
engine=innodb auto_increment=100 comment = '定时任务调度表';

alter table sys_job comment '定时任务调度表sys_job';

/*==============================================================*/
/* Table: sys_job_log                                           */
/*==============================================================*/
create table sys_job_log
(
   job_log_id           bigint(20) not null auto_increment comment '任务日志ID',
   job_name             varchar(64) not null comment '任务名称',
   job_group            varchar(64) not null comment '任务组名',
   invoke_target        varchar(500) not null comment '调用目标字符串',
   job_message          varchar(500) comment '日志信息',
   status               char(1) default '0' comment '执行状态（0正常 1失败）',
   exception_info       varchar(2000) default '' comment '异常信息',
   create_time          datetime comment '创建时间',
   primary key (job_log_id)
)
engine=innodb comment = '定时任务调度日志表';

alter table sys_job_log comment '定时任务调度日志表sys_job_log';

/*==============================================================*/
/* Table: sys_logininfor                                        */
/*==============================================================*/
create table sys_logininfor
(
   info_id              bigint(20) not null auto_increment comment '访问ID',
   user_name            varchar(50) default '' comment '用户账号',
   ipaddr               varchar(128) default '' comment '登录IP地址',
   status               char(1) default '0' comment '登录状态（0成功 1失败）',
   msg                  varchar(255) default '' comment '提示信息',
   access_time          datetime comment '访问时间',
   primary key (info_id),
   key idx_sys_logininfor_s (status),
   key idx_sys_logininfor_lt (access_time)
)
engine=innodb auto_increment=100 comment = '系统访问记录';

alter table sys_logininfor comment '系统访问记录sys_logininfor';

/*==============================================================*/
/* Table: sys_menu                                              */
/*==============================================================*/
create table sys_menu
(
   menu_id              bigint(20) not null auto_increment comment '菜单ID',
   menu_name            varchar(50) not null comment '菜单名称',
   parent_id            bigint(20) default 0 comment '父菜单ID',
   order_num            int(4) default 0 comment '显示顺序',
   path                 varchar(200) default '' comment '路由地址',
   component            varchar(255) default NULL comment '组件路径',
   query                varchar(255) default NULL comment '路由参数',
   is_frame             int(1) default 1 comment '是否为外链（0是 1否）',
   is_cache             int(1) default 0 comment '是否缓存（0缓存 1不缓存）',
   menu_type            char(1) default '' comment '菜单类型（M目录 C菜单 F按钮）',
   visible              char(1) default '0' comment '菜单状态（0显示 1隐藏）',
   status               char(1) default '0' comment '菜单状态（0正常 1停用）',
   perms                varchar(100) default NULL comment '权限标识',
   icon                 varchar(100) default '#' comment '菜单图标',
   create_by            varchar(64) default '' comment '创建者',
   create_time          datetime comment '创建时间',
   update_by            varchar(64) default '' comment '更新者',
   update_time          datetime comment '更新时间',
   remark               varchar(500) default '' comment '备注',
   primary key (menu_id)
)
engine=innodb auto_increment=2000 comment = '菜单权限表';

alter table sys_menu comment 'sys_menu菜单权限表';

/*==============================================================*/
/* Table: sys_oper_log                                          */
/*==============================================================*/
create table sys_oper_log
(
   oper_id              bigint(20) not null auto_increment comment '日志主键',
   title                varchar(50) default '' comment '模块标题',
   business_type        int(2) default 0 comment '业务类型（0其它 1新增 2修改 3删除）',
   method               varchar(100) default '' comment '方法名称',
   request_method       varchar(10) default '' comment '请求方式',
   operator_type        int(1) default 0 comment '操作类别（0其它 1后台用户 2手机端用户）',
   oper_name            varchar(50) default '' comment '操作人员',
   dept_name            varchar(50) default '' comment '部门名称',
   oper_url             varchar(255) default '' comment '请求URL',
   oper_ip              varchar(128) default '' comment '主机地址',
   oper_location        varchar(255) default '' comment '操作地点',
   oper_param           varchar(2000) default '' comment '请求参数',
   json_result          varchar(2000) default '' comment '返回参数',
   status               int(1) default 0 comment '操作状态（0正常 1异常）',
   error_msg            varchar(2000) default '' comment '错误消息',
   oper_time            datetime comment '操作时间',
   cost_time            bigint(20) default 0 comment '消耗时间',
   primary key (oper_id),
   key idx_sys_oper_log_bt (business_type),
   key idx_sys_oper_log_s (status),
   key idx_sys_oper_log_ot (oper_time)
)
engine=innodb auto_increment=100 comment = '操作日志记录';

alter table sys_oper_log comment '操作日志记录sys_oper_log';

/*==============================================================*/
/* Table: sys_post                                              */
/*==============================================================*/
create table sys_post
(
   post_id              bigint(20) not null auto_increment comment '岗位ID',
   post_code            varchar(64) not null comment '岗位编码',
   post_name            varchar(50) not null comment '岗位名称',
   post_sort            int(4) not null comment '显示顺序',
   status               char(1) not null comment '状态（0正常 1停用）',
   create_by            varchar(64) default '' comment '创建者',
   create_time          datetime comment '创建时间',
   update_by            varchar(64) default '' comment '更新者',
   update_time          datetime comment '更新时间',
   remark               varchar(500) default NULL comment '备注',
   primary key (post_id)
)
engine=innodb comment = '岗位信息表';

alter table sys_post comment 'sys_post岗位信息表';

/*==============================================================*/
/* Table: sys_role                                              */
/*==============================================================*/
create table sys_role
(
   role_id              bigint(20) not null auto_increment comment '角色ID',
   role_name            varchar(30) not null comment '角色名称',
   role_key             varchar(100) not null comment '角色权限字符串',
   role_sort            int(4) not null comment '显示顺序',
   data_scope           char(1) default '1' comment '数据范围（1：全部数据权限 2：自定数据权限 3：本部门数据权限 4：本部门及以下数据权限）',
   menu_check_strictly  tinyint(1) default 1 comment '菜单树选择项是否关联显示',
   dept_check_strictly  tinyint(1) default 1 comment '部门树选择项是否关联显示',
   status               char(1) not null comment '角色状态（0正常 1停用）',
   del_flag             char(1) default '0' comment '删除标志（0代表存在 2代表删除）',
   create_by            varchar(64) default '' comment '创建者',
   create_time          datetime comment '创建时间',
   update_by            varchar(64) default '' comment '更新者',
   update_time          datetime comment '更新时间',
   remark               varchar(500) default NULL comment '备注',
   company_id           bigint(20) comment '数据所属组织',
   primary key (role_id)
)
engine=innodb auto_increment=100 comment = '角色信息表';

alter table sys_role comment 'sys_role角色信息表';

/*==============================================================*/
/* Table: sys_role_dept                                         */
/*==============================================================*/
create table sys_role_dept
(
   role_id              bigint(20) not null comment '角色ID',
   dept_id              bigint(20) not null comment '部门ID',
   primary key (role_id, dept_id)
)
engine=innodb comment = '角色和部门关联表';

alter table sys_role_dept comment '角色和组织关联表sys_role_dept';

/*==============================================================*/
/* Table: sys_role_menu                                         */
/*==============================================================*/
create table sys_role_menu
(
   role_id              bigint(20) not null comment '角色ID',
   menu_id              bigint(20) not null comment '菜单ID',
   primary key (role_id, menu_id)
)
engine=innodb comment = '角色和菜单关联表';

alter table sys_role_menu comment '角色和菜单关联表sys_role_menu';

/*==============================================================*/
/* Table: sys_user                                              */
/*==============================================================*/
create table sys_user
(
   user_id              bigint(20) not null auto_increment comment '用户ID',
   dept_id              bigint(20) default NULL comment '部门ID',
   parent_id            bigint(20) comment '父ID',
   user_name            varchar(30) not null comment '用户账号',
   nick_name            varchar(30) not null comment '用户昵称',
   user_type            varchar(2) default '00' comment '用户类型（00系统用户，1免费用户，2标准用户，3子账号）',
   email                varchar(50) default '' comment '用户邮箱',
   phonenumber          varchar(11) default '' comment '手机号码',
   gender               char(1) default '0' comment '用户性别（0男 1女 2未知）',
   avatar               varchar(100) default '' comment '头像地址',
   password             varchar(100) default '' comment '密码',
   status               char(1) default '0' comment '帐号状态（0正常 1停用）',
   del_flag             char(1) default '0' comment '删除标志（0代表存在 2代表删除）',
   login_ip             varchar(128) default '' comment '最后登录IP',
   login_date           datetime comment '最后登录时间',
   create_by            varchar(64) default '' comment '创建者',
   create_time          datetime comment '创建时间',
   update_by            varchar(64) default '' comment '更新者',
   update_time          datetime comment '更新时间',
   remark               varchar(500) default NULL comment '备注',
   company_id           bigint(20) comment '数据所属id',
   primary key (user_id)
)
engine=innodb auto_increment=100 comment = '用户信息表';

alter table sys_user comment '用户信息表sys_user';

/*==============================================================*/
/* Table: sys_user_post                                         */
/*==============================================================*/
create table sys_user_post
(
   user_id              bigint(20) not null comment '用户ID',
   post_id              bigint(20) not null comment '岗位ID',
   primary key (user_id, post_id)
)
engine=innodb comment = '用户与岗位关联表';

alter table sys_user_post comment '用户与岗位关联表sys_user_post';

/*==============================================================*/
/* Table: sys_user_role                                         */
/*==============================================================*/
create table sys_user_role
(
   user_id              bigint(20) not null comment '用户ID',
   role_id              bigint(20) not null comment '角色ID',
   primary key (user_id, role_id)
)
engine=innodb comment = '用户和角色关联表';

alter table sys_user_role comment '用户和角色关联表sys_user_role';


