数据库
1 drop database StudentUnionManagementSystem ; 2 create database StudentUnionManagementSystem CHARACTER SET utf8 COLLATE utf8_general_ci; 3 use StudentUnionManagementSystem; 4 #1备份表 5 create table backups( 6 b_id int auto_increment primary key comment '编号', 7 b_beforedate datetime default now() comment '备份时间', 8 b_file varchar(256) comment '备份路径', 9 b_afterdate datetime comment '还原时间', 10 b_brefore_name varchar(20) comment '备份人', 11 b_after_name varchar(20) comment '还原人' 12 ); 13 insert into backups(b_file,b_afterdate,b_brefore_name,b_after_name)values 14 ('目前路径为空',null,'韦邦杠',null), 15 ('目前路径为空',null,'欧一乐',null), 16 ('目前路径为空',null,'刘地林',null), 17 ('目前路径为空',null,'唐玉棋',null); 18 19 #短信验证 20 create table VerificationCode( 21 id int auto_increment primary key, 22 yzm int comment '验证码', 23 v_type varchar(10) comment '验证类型', 24 v_date datetime default now() comment '时间', 25 v_phone varchar(11) comment '手机号码' 26 ); 27 #3部门类型 28 create table DepartmentType( 29 d_id int auto_increment primary key comment '部门编号', 30 d_name varchar(20) comment '部门名称', 31 status varchar(10) comment '状态', 32 d_synopsis longtext comment '部门简介', 33 d_remarks varchar(256) comment '部门备注', 34 d_sort int comment '排序' 35 ); 36 insert into DepartmentType(d_name,status,d_synopsis,d_remarks,d_sort)values 37 ('主席团','true','主席团简介','无备注',1), 38 ('秘书部','true','秘书部简介','无备注',2), 39 ('文体部','true','文体部简介','无备注',3), 40 ('播音部','true','播音部简介','无备注',4), 41 ('宣传部','true','宣传部简介','无备注',5), 42 ('纪检部','true','纪检部简介','无备注',6); 43 #权限表 44 CREATE TABLE `permissions` ( 45 `id` INT NULL primary key auto_increment, 46 `name` VARCHAR(45) not NULL COMMENT '权限名称', 47 `url` VARCHAR(45) COMMENT '地址' 48 ) COMMENT = '权限表'; 49 insert into permissions(name)values 50 ('*'), 51 ('bll'), 52 ('cll'), 53 ('dll'); 54 #2角色 55 create table Roles( 56 r_id int auto_increment primary key comment '编号', 57 r_name varchar(20) comment '角色名称', 58 r_remarks varchar(256) comment '备注' 59 ); 60 insert into Roles(r_name)values 61 ('admin'), 62 ('auth'), 63 ('bbb'), 64 ('test'), 65 ('aaa'); 66 -- 角色权限关联表 67 CREATE TABLE `ge_user_permissions_associate` ( 68 `id` INT NULL primary key auto_increment COMMENT '编号', 69 `roles_id` INT COMMENT '角色ID', 70 `permissions_id` INT COMMENT '权限ID' 71 ) COMMENT = '角色权限关联表'; 72 insert into `ge_user_permissions_associate`(`roles_id`, `permissions_id`) values 73 (1, 1), (2,2), (3,3), (4,4), (5,5); 74 75 76 #5班级信息 77 create table ClassTable( 78 c_id int auto_increment primary key comment '编号', 79 c_name varchar(20) comment '班级名称', 80 c_headmaster_name varchar(20) comment '班主任名字', 81 c_phone varchar(11) comment '联系电话', 82 status varchar(10) comment '状态' 83 ); 84 insert into ClassTable(c_name,c_headmaster_name,c_phone,status)values 85 ('s1s143','张婷','15348564582','false'), 86 ('s2s143','张婷','15348564582','false'), 87 ('s3s143','张婷','15348564582','false'), 88 ('s1s147','王莹','15348564855','true'), 89 ('s2s147','王莹','15348564855','true'), 90 ('s3s147','王莹','15348564855','true'), 91 ('s1s150','易微','15348564588','true'); 92 #6会议类型 93 create table TypeOfMeeting( 94 t_id int auto_increment primary key comment '编号', 95 t_name varchar(20) comment '名称', 96 status varchar(10) comment '状态', 97 t_remarks varchar(256) comment '备注', 98 t_sort int comment '排序' 99 ); 100 insert into TypeOfMeeting(t_name,status,t_remarks,t_sort)values 101 ('全体大会','true','使用全部会议',1), 102 ('部门会议','true','使用部门会议',2), 103 ('培训会议','true','使用培训会议',3); 104 #7职位类型 105 create table PositionType( 106 p_id int auto_increment primary key comment '编号', 107 p_name varchar(20) comment '类型名称', 108 status varchar(10) comment '状态', 109 p_remarks varchar(256) comment '职位备注', 110 p_sort int comment '排序' 111 ); 112 insert into PositionType(p_name,status,p_remarks,p_sort)values 113 ('主席','true','该职位属于主席',1), 114 ('副主席','true','该职位属于副主席',2), 115 ('部长','true','该职位属于部长',3), 116 ('副部长','true','该职位属于副部长',4), 117 ('干事','true','该职位属于干事',5); 118 #8会名 119 create table ExchangeTable( 120 e_id int auto_increment primary key comment'编号', 121 e_name varchar(30) comment '学生会名称', 122 e_remarks longtext comment '备注', 123 status varchar(10) comment '状态', 124 e_sort int comment '排序' 125 ); 126 insert into ExchangeTable(e_name,e_remarks,status,e_sort)values 127 ('第十五届学生会','备注15届学生会','true',1), 128 ('第十四届学生会','备注14届学生会','true',2), 129 ('第十三届学生会','备注13届学生会','true',3), 130 ('第十二届学生会','备注12届学生会','true',4); 131 #9成员信息 132 create table MemberInformation( 133 m_id int auto_increment primary key comment'编号', 134 m_user varchar(20) unique comment '工作编号账号', 135 m_password varchar(20) comment '密码', 136 m_name varchar(10) comment '姓名', 137 m_sex varchar(2) comment '成员性别', 138 c_id int comment '成员班级', 139 c_phone varchar(11) unique comment '成员手机', 140 d_id int comment '成员部门', 141 p_id int comment '成员职位', 142 p_photo varchar(256) comment '图片路径', 143 e_id int comment '第几届', 144 r_id int comment '角色', 145 m_qq varchar(15) comment '成员qq', 146 status varchar(10) comment '状态', 147 r_admission_date date comment '入会时间', 148 r_tuihui_date date comment '退会时间', 149 p_remarks longtext comment '备注', 150 foreign key(c_id) references ClassTable(c_id), 151 foreign key(d_id) references DepartmentType(d_id), 152 foreign key(p_id) references PositionType(p_id), 153 foreign key(e_id) references ExchangeTable(e_id), 154 foreign key(r_id) references Roles(r_id) 155 ); 156 insert into MemberInformation(m_user,m_password,m_name,m_sex,c_id,c_phone,d_id,p_id,p_photo,e_id,r_id,m_qq,status,r_admission_date,r_tuihui_date,p_remarks)values 157 ('100010001','123456','小邦哥','男',1,'18776203778',1,4,'',2,1,'761273133','true','2018-01-01','2018-10-10',''), 158 ('100010002','123456','廖珠炫','男',1,'11776235778',3,3,'',2,1,'861273133','true','2018-01-01','2018-10-10',''), 159 ('100010003','123456','朱茂深','男',1,'12776553778',3,4,'',2,2,'361273133','true','2018-01-01','2018-10-10',''), 160 ('100010004','123456','彭金华','男',1,'13346203778',2,3,'',2,3,'111273133','true','2018-01-01','2018-10-10',''), 161 ('100010005','123456','钟世杨','男',1,'14976203778',1,4,'',2,1,'761173133','true','2018-01-01','2018-10-10',''), 162 ('100010006','123456','邹雅','女',1,'15766203778',1,2,'',2,1,'721271133','true','2018-01-01','2018-10-10',''), 163 ('100010007','123456','廖月康','男',1,'11276203778',1,4,'',2,1,'711173133','true','2018-01-01','2018-10-10',''); 164 #10工作安排 165 create table WorkArrangement( 166 w_id int auto_increment primary key comment'编号', 167 w_title varchar(50) comment '标题', 168 w_contents longtext comment '内容', 169 d_id int comment '负责工作部门', 170 m_name varchar(10) comment '总负责人', 171 w_date date comment '时间', 172 w_remarks varchar(256) comment '备注', 173 foreign key(d_id) references DepartmentType(d_id) 174 ); 175 insert into WorkArrangement(w_title,w_contents,d_id,m_name,w_date)values 176 ('文体部工作安排','关于写策划内容',3,'小丽','2018-10-11'), 177 ('纪检部部工作安排','关于检查内容',6,'老吴','2018-10-11'), 178 ('秘书部工作安排','关于进行秘书内容',2,'老吴','2018-10-11'), 179 ('播音部工作安排','关于放音乐内容',4,'老吴','2018-10-11'), 180 ('宣传部工作安排','关于写宣传内容',5,'小邹','2018-10-11'); 181 #11公告 182 create table Notic( 183 n_id int auto_increment primary key comment'编号', 184 n_title varchar(50) comment '标题', 185 n_context longtext comment '内容', 186 n_date datetime default now() comment '发布时间', 187 n_file varchar(256) comment '文件路径', 188 m_name varchar(20) comment '操作人', 189 status varchar(10) comment '状态', 190 n_sort int comment '排序' 191 ); 192 insert into Notic(n_title,n_context,n_file,m_name,status,n_sort)values 193 ('关于国庆放假通知','放假内容','目前无路径','小邦哥','true',1), 194 ('关于元旦放假通知','放假内容','目前无路径','小邦哥','true',2), 195 ('关于五一放假通知','放假内容','目前无路径','朱茂深','true',3), 196 ('关于学生会活动通知','活动内容','目前无路径','小邦哥','true',4); 197 #12请假记录 198 create table LeaveRecord( 199 l_id int auto_increment primary key comment'编号', 200 d_name varchar(50) comment '部门名称', 201 m_user int comment '成员工作编号', 202 l_m_name varchar(20) comment '成员姓名', 203 p_date date comment '请假时间', 204 l_title varchar(20) comment '会议标题', 205 l_type varchar(20) comment '请假类型', 206 l_contexts longtext comment '请假内容', 207 l_file varchar(256) comment '文件路径', 208 m_name varchar(20) comment '操作人' 209 ); 210 211 insert into LeaveRecord(d_name, m_user,l_m_name, p_date, l_title, l_type, l_contexts, l_file, m_name)values 212 ('文体部','100010001','小邦哥','2018-12-11','第二次部门会议','部门会议','特殊情况','无','廖珠炫'), 213 ('文体部','100010004','彭金华','2018-12-11','第二次部门会议','部门会议','特殊情况','无','廖珠炫'); 214 #13个人评优记录 215 create table PersonalMeritRecord( 216 p_id int auto_increment primary key comment'编号', 217 d_name varchar(50) comment '部门名称', 218 m_user int comment '成员编号', 219 l_m_name varchar(20) comment '成员姓名', 220 p_title varchar(30) comment '主题', 221 p_date datetime comment '时间', 222 p_contexts longtext comment '内容', 223 p_file varchar(256) comment '文件路径', 224 m_name varchar(20) comment '操作人' 225 ); 226 insert into PersonalMeritRecord(d_name,m_user,l_m_name,p_title,p_date,p_contexts,p_file,m_name)values 227 ('文体部','100010001','小邦哥','优秀副部长','2018-12-30','最佳副部长','无路径','曾丽玉'), 228 ('文体部','100010002','廖珠炫','优秀部长','2018-12-30','最佳部长','无路径','曾丽玉'), 229 ('文体部','100010004','彭金华','优秀干事','2018-12-30','最佳学长','无路径','老吴'); 230 #14部门评优记录 231 create table DepartmentalExcellenceRecord( 232 d_id int auto_increment primary key comment'编号', 233 d_name varchar(50) comment '部门名称', 234 d_title varchar(50) comment '标题', 235 d_date date comment '时间', 236 d_contexts longtext comment '内容', 237 d_file varchar(256) comment '文件路径', 238 m_name varchar(20) comment '操作人' 239 ); 240 insert into DepartmentalExcellenceRecord(d_name,d_title,d_date,d_contexts,d_file,m_name)values 241 ('文体部','最佳优秀部门','2018-12-30','什么内部内容的','无文件','曾丽玉'), 242 ('生活部','最佳生活管理部门','2018-12-30','生活部内容的','无文件','曾丽玉'), 243 ('纪检部','最佳检查部门','2018-12-30','纪检部内容的','无文件','曾丽玉'); 244 #15财务管理 245 create table FinancialManagement( 246 f_id int auto_increment primary key comment'编号', 247 f_type varchar(5) comment '交易类型', 248 f_front_money decimal(10,2) comment '交易前余额', 249 f_after_money decimal(10,2) comment '交易后余额', 250 f_money decimal(10,2) comment '交易余额', 251 f_date date comment '时间', 252 f_mr_date datetime default now() comment '操作时间', 253 m_name varchar(20) comment '操作人', 254 f_remarks varchar(256) comment '备注', 255 f_file varchar(256) comment '文件路径' 256 ); 257 #16出勤情况 258 create table Attendance( 259 a_id int auto_increment primary key comment'编号', 260 a_type varchar(20) comment '类型', 261 m_user int comment '成员工作编号', 262 a_m_name varchar(20) comment '成员姓名', 263 d_name varchar(20) comment '成员部门', 264 a_titile varchar(50) comment '标题', 265 a_date datetime default now() comment '时间', 266 m_name varchar(20) comment '操作人', 267 a_remaks varchar(256) comment '备注' 268 ); 269 insert into Attendance(a_type,m_user,a_m_name,d_name,a_titile,m_name,a_remaks) values 270 ('全体会议','100010001','小邦哥','文体部','第一次全体培训大会','小丽','没有备注'), 271 ('全体会议','100010002','廖珠炫','文体部','第一次全体培训大会','小丽','没有备注'), 272 ('全体会议','100010003','彭金华','文体部','第一次全体培训大会','小丽','没有备注'); 273 #17会议记录 274 create table MinutesOfTheMeeting( 275 m_id int auto_increment primary key comment'编号', 276 m_title varchar(50) comment '标题', 277 t_id int comment '会议类型', 278 m_date datetime default now() comment '上传时间', 279 m_file varchar(256) comment '文件路径', 280 m_name varchar(20) comment '操作人', 281 m_contexts varchar(256) comment '内容', 282 foreign key(t_id) references TypeOfMeeting(t_id) 283 ); 284 insert into MinutesOfTheMeeting(m_title,t_id,m_file,m_name,m_contexts)values 285 ('第二次全体大会',1,'无','小邦哥','内容正在填写'), 286 ('第二次部门会议',2,'无','小邦哥1','内容正在填写'), 287 ('第三次全体大会',1,'无','小邦哥2','内容正在填写'), 288 ('第四次全体大会',1,'无','小邦哥3','内容正在填写'); 289 #18月计划总结表 290 create table MonthlyPlanSummary( 291 m_id int auto_increment primary key comment'编号', 292 m_title varchar(50) comment '标题', 293 d_id int comment '部门编号', 294 m_date datetime default now() comment '上传时间', 295 m_file varchar(256) comment '文件路径', 296 m_remarks varchar(256) comment '备注', 297 m_name varchar(20) comment '操作人', 298 m_contexts longtext comment '内容', 299 foreign key(d_id) references DepartmentType(d_id) 300 ); 301 insert into MonthlyPlanSummary (m_title, d_id, m_remarks, m_name, m_contexts) values 302 ('九月份总结与十月份计划','1','无','小邦哥','暂时没有内容'), 303 ('九月份总结与十月份计划','2','无','小邦哥','暂时没有内容'), 304 ('九月份总结与十月份计划','4','无','小邦哥','暂时没有内容'), 305 ('九月份总结与十月份计划','3','无','小邦哥','暂时没有内容');
报表https://developer.mozilla.org/zh-CN/docs/Web/API/Fetch_API
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <!-- 引入 ECharts 文件 --> <script src="js/echarts.common.min.js"></script> </head> <body> <!-- 为ECharts准备一个具备大小(宽高)的Dom --> <div id="main" style="width: 600px;height:400px;"></div> <script type="text/javascript"> // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init(document.getElementById('main')); var data = genData(10); var type=["指导老师","主席团","秘书部","文体部"]; var person=[ {name:"文体部",value:17}, {name:"主席团",value:5}, {name:"指导老师",value:3}, {name:"秘书部",value:5} ] option = { title : { text: '2018年团委学生会', subtext: '人数统计', x:'center' }, tooltip : { trigger: 'item', formatter: "{a} <br/>{b} : {c} ({d}%)" }, legend: { type: 'scroll', orient: 'vertical', right: 10, top: 10, bottom: 10, data: type, selected: true }, series : [ { name: '姓名', type: 'pie', //设置图形大小 radius : '55%', center: ['40%', '50%'], data: person, itemStyle: { emphasis: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } } } ] }; function genData(count) { var nameList = [ '赵', '钱', '孙', '李', '周', '吴', '郑', '王', '冯', '陈', '褚', '卫', '蒋', '沈', '韩', '杨', '朱', '秦', '尤', '许', '何', '吕', '施', '张', '孔', '曹', '严', '华', '金', '魏', '陶', '姜', '戚', '谢', '邹', '喻', '柏', '水', '窦', '章', '云', '苏', '潘', '葛', '奚', '范', '彭', '郎', '鲁', '韦', '昌', '马', '苗', '凤', '花', '方', '俞', '任', '袁', '柳', '酆', '鲍', '史', '唐', '费', '廉', '岑', '薛', '雷', '贺', '倪', '汤', '滕', '殷', '罗', '毕', '郝', '邬', '安', '常', '乐', '于', '时', '傅', '皮', '卞', '齐', '康', '伍', '余', '元', '卜', '顾', '孟', '平', '黄', '和', '穆', '萧', '尹', '姚', '邵', '湛', '汪', '祁', '毛', '禹', '狄', '米', '贝', '明', '臧', '计', '伏', '成', '戴', '谈', '宋', '茅', '庞', '熊', '纪', '舒', '屈', '项', '祝', '董', '梁', '杜', '阮', '蓝', '闵', '席', '季', '麻', '强', '贾', '路', '娄', '危' ]; var legendData = []; var seriesData = []; var selected = {}; for (var i = 0; i < 50; i++) { name = Math.random() > 0.65 ? makeWord(4, 1) + '·' + makeWord(3, 0) : makeWord(2, 1); legendData.push(name); seriesData.push({ name: name, value: Math.round(Math.random() * 100000) }); selected[name] = i < 6; } return { legendData: legendData, seriesData: seriesData, selected: selected }; function makeWord(max, min) { var nameLen = Math.ceil(Math.random() * max + min); var name = []; for (var i = 0; i < nameLen; i++) { name.push(nameList[Math.round(Math.random() * nameList.length - 1)]); } return name.join(''); } } // 使用刚指定的配置项和数据显示图表。 myChart.setOption(option); </script> </body> </html>