Commit 9f161055ecd0f1d5fa2295734007d1099019a7d2

Authored by 孙向锦
1 parent 6ec88f66

修改高斯客户反馈

Showing 27 changed files with 2109 additions and 81 deletions
WebRoot/WEB-INF/jsp/sunvote/attachkeyboard/attachkeyboard_edit.jsp 0 → 100644
  1 +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2 +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
  3 +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  4 +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
  5 +<%
  6 + String path = request.getContextPath();
  7 + String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
  8 +%>
  9 +<!DOCTYPE html>
  10 +<html lang="en">
  11 + <head>
  12 + <base href="<%=basePath%>">
  13 + <!-- 下拉框 -->
  14 + <link rel="stylesheet" href="static/ace/css/chosen.css" />
  15 + <!-- jsp文件头和头部 -->
  16 + <%@ include file="../../system/index/top.jsp"%>
  17 + <!-- 日期框 -->
  18 + <link rel="stylesheet" href="static/ace/css/datepicker.css" />
  19 +</head>
  20 +<body class="no-skin">
  21 +<!-- /section:basics/navbar.layout -->
  22 +<div class="main-container" id="main-container">
  23 + <!-- /section:basics/sidebar -->
  24 + <div class="main-content">
  25 + <div class="main-content-inner">
  26 + <div class="page-content">
  27 + <div class="row">
  28 + <div class="col-xs-12">
  29 +
  30 + <form action="attachkeyboard/${msg }.do" name="Form" id="Form" method="post">
  31 + <input type="hidden" name="ATTACHKEYBOARD_ID" id="ATTACHKEYBOARD_ID" value="${pd.ATTACHKEYBOARD_ID}"/>
  32 + <div id="zhongxin" style="padding-top: 13px;">
  33 + <table id="table_report" class="table table-striped table-bordered table-hover">
  34 + <tr>
  35 + <td style="width:75px;text-align: right;padding-top: 13px;">班级:</td>
  36 + <td>
  37 + <select class="chosen-select form-control" name="CLASS_ID" id="CLASS_ID" data-placeholder="这里输入班级类型">
  38 + <c:forEach var="item" items="${classs}">
  39 + <option value="${item.ID}" <c:if test="${pd.CLASS_ID==item.ID}">selected="true"</c:if>>${item.CLASS_NAME}</option>
  40 + </c:forEach>
  41 + </select>
  42 + </td>
  43 + </tr>
  44 + <tr>
  45 + <td style="width:75px;text-align: right;padding-top: 13px;">键盘:</td>
  46 + <td><input type="text" name="KEYBOARD_ID" id="KEYBOARD_ID" value="${pd.KEYBOARD_ID}" maxlength="255" placeholder="这里输入键盘ID" title="键盘ID" style="width:98%;"/></td>
  47 + </tr>
  48 + <tr>
  49 + <td style="text-align: center;" colspan="10">
  50 + <a class="btn btn-mini btn-primary" onclick="save();">保存</a>
  51 + <a class="btn btn-mini btn-danger" onclick="top.Dialog.close();">取消</a>
  52 + </td>
  53 + </tr>
  54 + </table>
  55 + </div>
  56 + <div id="zhongxin2" class="center" style="display:none"><br/><br/><br/><br/><br/><img src="static/images/jiazai.gif" /><br/><h4 class="lighter block green">提交中...</h4></div>
  57 + </form>
  58 + </div>
  59 + <!-- /.col -->
  60 + </div>
  61 + <!-- /.row -->
  62 + </div>
  63 + <!-- /.page-content -->
  64 + </div>
  65 + </div>
  66 + <!-- /.main-content -->
  67 +</div>
  68 +<!-- /.main-container -->
  69 +
  70 +
  71 + <!-- 页面底部js¨ -->
  72 + <%@ include file="../../system/index/foot.jsp"%>
  73 + <!-- 下拉框 -->
  74 + <script src="static/ace/js/chosen.jquery.js"></script>
  75 + <!-- 日期框 -->
  76 + <script src="static/ace/js/date-time/bootstrap-datepicker.js"></script>
  77 + <!--提示框-->
  78 + <script type="text/javascript" src="static/js/jquery.tips.js"></script>
  79 + <script type="text/javascript">
  80 + $(top.hangge());
  81 + //保存
  82 + function save(){
  83 + if($("#CLASS_ID").val()==""){
  84 + $("#CLASS_ID").tips({
  85 + side:3,
  86 + msg:'请输入班级ID',
  87 + bg:'#AE81FF',
  88 + time:2
  89 + });
  90 + $("#CLASS_ID").focus();
  91 + return false;
  92 + }
  93 + if($("#KEYBOARD_ID").val()==""){
  94 + $("#KEYBOARD_ID").tips({
  95 + side:3,
  96 + msg:'请输入键盘ID',
  97 + bg:'#AE81FF',
  98 + time:2
  99 + });
  100 + $("#KEYBOARD_ID").focus();
  101 + return false;
  102 + }
  103 + $("#Form").submit();
  104 + $("#zhongxin").hide();
  105 + $("#zhongxin2").show();
  106 + }
  107 +
  108 + $(function() {
  109 + //日期框
  110 + $('.date-picker').datepicker({autoclose: true,todayHighlight: true});
  111 + });
  112 + </script>
  113 +</body>
  114 +</html>
0 115 \ No newline at end of file
... ...
WebRoot/WEB-INF/jsp/sunvote/attachkeyboard/attachkeyboard_list.jsp 0 → 100644
  1 +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2 +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
  3 +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  4 +<%@ taglib prefix="myelfun" uri="/WEB-INF/tld/elfun.tld"%>
  5 +<%
  6 + String path = request.getContextPath();
  7 + String basePath = request.getScheme() + "://"
  8 + + request.getServerName() + ":" + request.getServerPort()
  9 + + path + "/";
  10 +%>
  11 +<!DOCTYPE html>
  12 +<html lang="en">
  13 +<head>
  14 +<base href="<%=basePath%>">
  15 +<!-- 下拉框 -->
  16 +<link rel="stylesheet" href="static/ace/css/chosen.css" />
  17 +<!-- jsp文件头和头部 -->
  18 +<%@ include file="../../system/index/top.jsp"%>
  19 +<!-- 日期框 -->
  20 +<link rel="stylesheet" href="static/ace/css/datepicker.css" />
  21 +</head>
  22 +<body class="no-skin">
  23 +
  24 + <!-- /section:basics/navbar.layout -->
  25 + <div class="main-container" id="main-container">
  26 + <!-- /section:basics/sidebar -->
  27 + <div class="main-content">
  28 + <div class="main-content-inner">
  29 + <div class="page-content">
  30 + <div class="row">
  31 + <div class="col-xs-12">
  32 +
  33 + <!-- 检索 -->
  34 + <form action="attachkeyboard/list.do" method="post" name="Form" id="Form">
  35 + <table style="margin-top:5px;">
  36 +
  37 + </table>
  38 + <!-- 检索 -->
  39 +
  40 + <table id="simple-table" class="table table-striped table-bordered table-hover" style="margin-top:5px;">
  41 + <thead>
  42 + <tr>
  43 + <th class="center" style="width:35px;">
  44 + <label class="pos-rel"><input type="checkbox" class="ace" id="zcheckbox" /><span class="lbl"></span></label>
  45 + </th>
  46 + <th class="center" style="width:50px;">序号</th>
  47 + <td class='center'>班级</td>
  48 + <th class="center">键盘</th>
  49 + <th class="center">操作</th>
  50 + </tr>
  51 + </thead>
  52 +
  53 + <tbody>
  54 + <!-- 开始循环 -->
  55 + <c:choose>
  56 + <c:when test="${not empty varList}">
  57 + <c:if test="${QX.cha == 1 }">
  58 + <c:forEach items="${varList}" var="var" varStatus="vs">
  59 + <tr>
  60 + <td class='center'>
  61 + <label class="pos-rel"><input type='checkbox' name='ids' value="${var.ATTACHKEYBOARD_ID}" class="ace" /><span class="lbl"></span></label>
  62 + </td>
  63 + <td class='center' style="width: 30px;">${vs.index+1}</td>
  64 + <td class='center'>${myelfun:findClassName(var.CLASS_ID)}</td>
  65 + <td class='center'>${var.KEYBOARD_ID}</td>
  66 + <td class="center">
  67 + <c:if test="${QX.edit != 1 && QX.del != 1 }">
  68 + <span class="label label-large label-grey arrowed-in-right arrowed-in"><i class="ace-icon fa fa-lock" title="无权限"></i></span>
  69 + </c:if>
  70 + <div class="hidden-sm hidden-xs btn-group">
  71 + <c:if test="${QX.edit == 1 }">
  72 + <a class="btn btn-xs btn-success" title="编辑" onclick="edit('${var.ATTACHKEYBOARD_ID}');">
  73 + <i class="ace-icon fa fa-pencil-square-o bigger-120" title="编辑"></i>
  74 + </a>
  75 + </c:if>
  76 + <c:if test="${QX.del == 1 }">
  77 + <a class="btn btn-xs btn-danger" onclick="del('${var.ATTACHKEYBOARD_ID}');">
  78 + <i class="ace-icon fa fa-trash-o bigger-120" title="删除"></i>
  79 + </a>
  80 + </c:if>
  81 + </div>
  82 + <div class="hidden-md hidden-lg">
  83 + <div class="inline pos-rel">
  84 + <button class="btn btn-minier btn-primary dropdown-toggle" data-toggle="dropdown" data-position="auto">
  85 + <i class="ace-icon fa fa-cog icon-only bigger-110"></i>
  86 + </button>
  87 +
  88 + <ul class="dropdown-menu dropdown-only-icon dropdown-yellow dropdown-menu-right dropdown-caret dropdown-close">
  89 + <c:if test="${QX.edit == 1 }">
  90 + <li>
  91 + <a style="cursor:pointer;" onclick="edit('${var.ATTACHKEYBOARD_ID}');" class="tooltip-success" data-rel="tooltip" title="修改">
  92 + <span class="green">
  93 + <i class="ace-icon fa fa-pencil-square-o bigger-120"></i>
  94 + </span>
  95 + </a>
  96 + </li>
  97 + </c:if>
  98 + <c:if test="${QX.del == 1 }">
  99 + <li>
  100 + <a style="cursor:pointer;" onclick="del('${var.ATTACHKEYBOARD_ID}');" class="tooltip-error" data-rel="tooltip" title="删除">
  101 + <span class="red">
  102 + <i class="ace-icon fa fa-trash-o bigger-120"></i>
  103 + </span>
  104 + </a>
  105 + </li>
  106 + </c:if>
  107 + </ul>
  108 + </div>
  109 + </div>
  110 + </td>
  111 + </tr>
  112 +
  113 + </c:forEach>
  114 + </c:if>
  115 + <c:if test="${QX.cha == 0 }">
  116 + <tr>
  117 + <td colspan="100" class="center">您无权查看</td>
  118 + </tr>
  119 + </c:if>
  120 + </c:when>
  121 + <c:otherwise>
  122 + <tr class="main_info">
  123 + <td colspan="100" class="center" >没有相关数据</td>
  124 + </tr>
  125 + </c:otherwise>
  126 + </c:choose>
  127 + </tbody>
  128 + </table>
  129 + <div class="page-header position-relative">
  130 + <table style="width:100%;">
  131 + <tr>
  132 + <td style="vertical-align:top;">
  133 + <c:if test="${QX.add == 1 }">
  134 + <a class="btn btn-mini btn-success" onclick="add();">新增</a>
  135 + </c:if>
  136 + <c:if test="${QX.del == 1 }">
  137 + <a class="btn btn-mini btn-danger" onclick="makeAll('确定要删除选中的数据吗?');" title="批量删除" ><i class='ace-icon fa fa-trash-o bigger-120'></i></a>
  138 + </c:if>
  139 + </td>
  140 + <td style="vertical-align:top;"><div class="pagination" style="float: right;padding-top: 0px;margin-top: 0px;">${page.pageStr}</div></td>
  141 + </tr>
  142 + </table>
  143 + </div>
  144 + </form>
  145 +
  146 + </div>
  147 + <!-- /.col -->
  148 + </div>
  149 + <!-- /.row -->
  150 + </div>
  151 + <!-- /.page-content -->
  152 + </div>
  153 + </div>
  154 + <!-- /.main-content -->
  155 +
  156 + <!-- 返回顶部 -->
  157 + <a href="#" id="btn-scroll-up" class="btn-scroll-up btn btn-sm btn-inverse">
  158 + <i class="ace-icon fa fa-angle-double-up icon-only bigger-110"></i>
  159 + </a>
  160 +
  161 + </div>
  162 + <!-- /.main-container -->
  163 +
  164 + <!-- basic scripts -->
  165 + <!-- 页面底部js¨ -->
  166 + <%@ include file="../../system/index/foot.jsp"%>
  167 + <!-- 删除时确认窗口 -->
  168 + <script src="static/ace/js/bootbox.js"></script>
  169 + <!-- ace scripts -->
  170 + <script src="static/ace/js/ace/ace.js"></script>
  171 + <!-- 下拉框 -->
  172 + <script src="static/ace/js/chosen.jquery.js"></script>
  173 + <!-- 日期框 -->
  174 + <script src="static/ace/js/date-time/bootstrap-datepicker.js"></script>
  175 + <!--提示框-->
  176 + <script type="text/javascript" src="static/js/jquery.tips.js"></script>
  177 + <script type="text/javascript">
  178 + $(top.hangge());//关闭加载状态
  179 + //检索
  180 + function tosearch(){
  181 + top.jzts();
  182 + $("#Form").submit();
  183 + }
  184 + $(function() {
  185 +
  186 + //日期框
  187 + $('.date-picker').datepicker({
  188 + autoclose: true,
  189 + todayHighlight: true
  190 + });
  191 +
  192 + //下拉框
  193 + if(!ace.vars['touch']) {
  194 + $('.chosen-select').chosen({allow_single_deselect:true});
  195 + $(window)
  196 + .off('resize.chosen')
  197 + .on('resize.chosen', function() {
  198 + $('.chosen-select').each(function() {
  199 + var $this = $(this);
  200 + $this.next().css({'width': $this.parent().width()});
  201 + });
  202 + }).trigger('resize.chosen');
  203 + $(document).on('settings.ace.chosen', function(e, event_name, event_val) {
  204 + if(event_name != 'sidebar_collapsed') return;
  205 + $('.chosen-select').each(function() {
  206 + var $this = $(this);
  207 + $this.next().css({'width': $this.parent().width()});
  208 + });
  209 + });
  210 + $('#chosen-multiple-style .btn').on('click', function(e){
  211 + var target = $(this).find('input[type=radio]');
  212 + var which = parseInt(target.val());
  213 + if(which == 2) $('#form-field-select-4').addClass('tag-input-style');
  214 + else $('#form-field-select-4').removeClass('tag-input-style');
  215 + });
  216 + }
  217 +
  218 +
  219 + //复选框全选控制
  220 + var active_class = 'active';
  221 + $('#simple-table > thead > tr > th input[type=checkbox]').eq(0).on('click', function(){
  222 + var th_checked = this.checked;//checkbox inside "TH" table header
  223 + $(this).closest('table').find('tbody > tr').each(function(){
  224 + var row = this;
  225 + if(th_checked) $(row).addClass(active_class).find('input[type=checkbox]').eq(0).prop('checked', true);
  226 + else $(row).removeClass(active_class).find('input[type=checkbox]').eq(0).prop('checked', false);
  227 + });
  228 + });
  229 + });
  230 +
  231 + //新增
  232 + function add(){
  233 + top.jzts();
  234 + var diag = new top.Dialog();
  235 + diag.Drag=true;
  236 + diag.Title ="新增";
  237 + diag.URL = '<%=basePath%>attachkeyboard/goAdd.do';
  238 + diag.Width = 450;
  239 + diag.Height = 355;
  240 + diag.Modal = true; //有无遮罩窗口
  241 + diag. ShowMaxButton = true; //最大化按钮
  242 + diag.ShowMinButton = true; //最小化按钮
  243 + diag.CancelEvent = function(){ //关闭事件
  244 + if(diag.innerFrame.contentWindow.document.getElementById('zhongxin').style.display == 'none'){
  245 + if('${page.currentPage}' == '0'){
  246 + tosearch();
  247 + }else{
  248 + tosearch();
  249 + }
  250 + }
  251 + diag.close();
  252 + };
  253 + diag.show();
  254 + }
  255 +
  256 + //删除
  257 + function del(Id){
  258 + bootbox.confirm("确定要删除吗?", function(result) {
  259 + if(result) {
  260 + top.jzts();
  261 + var url = "<%=basePath%>attachkeyboard/delete.do?ATTACHKEYBOARD_ID="+Id+"&tm="+new Date().getTime();
  262 + $.get(url,function(data){
  263 + tosearch();
  264 + });
  265 + }
  266 + });
  267 + }
  268 +
  269 + //修改
  270 + function edit(Id){
  271 + top.jzts();
  272 + var diag = new top.Dialog();
  273 + diag.Drag=true;
  274 + diag.Title ="编辑";
  275 + diag.URL = '<%=basePath%>attachkeyboard/goEdit.do?ATTACHKEYBOARD_ID='+Id;
  276 + diag.Width = 450;
  277 + diag.Height = 355;
  278 + diag.Modal = true; //有无遮罩窗口
  279 + diag. ShowMaxButton = true; //最大化按钮
  280 + diag.ShowMinButton = true; //最小化按钮
  281 + diag.CancelEvent = function(){ //关闭事件
  282 + if(diag.innerFrame.contentWindow.document.getElementById('zhongxin').style.display == 'none'){
  283 + tosearch();
  284 + }
  285 + diag.close();
  286 + };
  287 + diag.show();
  288 + }
  289 +
  290 + //批量操作
  291 + function makeAll(msg){
  292 + bootbox.confirm(msg, function(result) {
  293 + if(result) {
  294 + var str = '';
  295 + for(var i=0;i < document.getElementsByName('ids').length;i++){
  296 + if(document.getElementsByName('ids')[i].checked){
  297 + if(str=='') str += document.getElementsByName('ids')[i].value;
  298 + else str += ',' + document.getElementsByName('ids')[i].value;
  299 + }
  300 + }
  301 + if(str==''){
  302 + bootbox.dialog({
  303 + message: "<span class='bigger-110'>您没有选择任何内容!</span>",
  304 + buttons:
  305 + { "button":{ "label":"确定", "className":"btn-sm btn-success"}}
  306 + });
  307 + $("#zcheckbox").tips({
  308 + side:1,
  309 + msg:'点这里全选',
  310 + bg:'#AE81FF',
  311 + time:8
  312 + });
  313 + return;
  314 + }else{
  315 + if(msg == '确定要删除选中的数据吗?'){
  316 + top.jzts();
  317 + $.ajax({
  318 + type: "POST",
  319 + url: '<%=basePath%>attachkeyboard/deleteAll.do?tm='+new Date().getTime(),
  320 + data: {DATA_IDS:str},
  321 + dataType:'json',
  322 + //beforeSend: validateData,
  323 + cache: false,
  324 + success: function(data){
  325 + $.each(data.list, function(i, list){
  326 + tosearch();
  327 + });
  328 + }
  329 + });
  330 + }
  331 + }
  332 + }
  333 + });
  334 + };
  335 +
  336 + //导出excel
  337 + function toExcel(){
  338 + window.location.href='<%=basePath%>attachkeyboard/excel.do';
  339 + }
  340 + </script>
  341 +
  342 +
  343 +</body>
  344 +</html>
0 345 \ No newline at end of file
... ...
WebRoot/WEB-INF/jsp/sunvote/coursemanagement/coursemanagement_list.jsp
... ... @@ -34,22 +34,13 @@
34 34 <form action="coursemanagement/list.do" method="post" name="Form" id="Form">
35 35 <table style="margin-top:5px;">
36 36 <tr>
37   - <td>
38   - <div class="nav-search">
39   - <span class="input-icon">
40   - <input type="text" placeholder="这里输入关键词" class="nav-search-input" id="nav-search-input" autocomplete="off" name="keywords" value="${pd.keywords }" placeholder="这里输入关键词"/>
41   - <i class="ace-icon fa fa-search nav-search-icon"></i>
42   - </span>
43   - </div>
44   - </td>
45   - <td style="padding-left:2px;"><input class="span10 date-picker" name="lastStart" id="lastStart" value="" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="开始日期" title="开始日期"/></td>
46   - <td style="padding-left:2px;"><input class="span10 date-picker" name="lastEnd" name="lastEnd" value="" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="结束日期" title="结束日期"/></td>
47 37 <td style="vertical-align:top;padding-left:2px;">
48   - <select class="chosen-select form-control" name="name" id="id" data-placeholder="请选择" style="vertical-align:top;width: 120px;">
  38 + <select class="chosen-select form-control" name="TERM_ID" id="TERM_ID" data-placeholder="请选择" style="vertical-align:top;width: 120px;">
49 39 <option value=""></option>
50 40 <option value="">全部</option>
51   - <option value="">1</option>
52   - <option value="">2</option>
  41 + <c:forEach var="item" items="${terms}">
  42 + <option value="${item.TERM_ID}">${item.NAME}</option>
  43 + </c:forEach>
53 44 </select>
54 45 </td>
55 46 <c:if test="${QX.cha == 1 }">
... ...
WebRoot/WEB-INF/jsp/sunvote/event/event_edit.jsp 0 → 100644
  1 +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2 +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
  3 +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  4 +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
  5 +<%
  6 + String path = request.getContextPath();
  7 + String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
  8 +%>
  9 +<!DOCTYPE html>
  10 +<html lang="en">
  11 + <head>
  12 + <base href="<%=basePath%>">
  13 + <!-- 下拉框 -->
  14 + <link rel="stylesheet" href="static/ace/css/chosen.css" />
  15 + <!-- jsp文件头和头部 -->
  16 + <%@ include file="../../system/index/top.jsp"%>
  17 + <!-- 日期框 -->
  18 + <link rel="stylesheet" href="static/ace/css/datepicker.css" />
  19 +</head>
  20 +<body class="no-skin">
  21 +<!-- /section:basics/navbar.layout -->
  22 +<div class="main-container" id="main-container">
  23 + <!-- /section:basics/sidebar -->
  24 + <div class="main-content">
  25 + <div class="main-content-inner">
  26 + <div class="page-content">
  27 + <div class="row">
  28 + <div class="col-xs-12">
  29 +
  30 + <form action="event/${msg }.do" name="Form" id="Form" method="post">
  31 + <input type="hidden" name="EVENT_ID" id="EVENT_ID" value="${pd.EVENT_ID}"/>
  32 + <div id="zhongxin" style="padding-top: 13px;">
  33 + <table id="table_report" class="table table-striped table-bordered table-hover">
  34 + <tr>
  35 + <td style="width:75px;text-align: right;padding-top: 13px;">时间名称:</td>
  36 + <td><input type="text" name="EVENT_NAME" id="EVENT_NAME" value="${pd.EVENT_NAME}" maxlength="255" placeholder="这里输入时间名称" title="时间名称" style="width:98%;"/></td>
  37 + </tr>
  38 + <tr>
  39 + <td style="width:75px;text-align: right;padding-top: 13px;">事件人:</td>
  40 + <td><input type="text" name="EVENT_USER" id="EVENT_USER" value="${pd.EVENT_USER}" maxlength="255" placeholder="这里输入事件人" title="事件人" style="width:98%;"/></td>
  41 + </tr>
  42 + <tr>
  43 + <td style="width:75px;text-align: right;padding-top: 13px;">事件类型:</td>
  44 + <td><input type="text" name="EVENT_TYPE" id="EVENT_TYPE" value="${pd.EVENT_TYPE}" maxlength="255" placeholder="这里输入事件类型" title="事件类型" style="width:98%;"/></td>
  45 + </tr>
  46 + <tr>
  47 + <td style="width:75px;text-align: right;padding-top: 13px;">事件起始时间:</td>
  48 + <td><input type="text" name="EVENT_START_TIME" id="EVENT_START_TIME" value="${pd.EVENT_START_TIME}" maxlength="255" placeholder="这里输入事件起始时间" title="事件起始时间" style="width:98%;"/></td>
  49 + </tr>
  50 + <tr>
  51 + <td style="width:75px;text-align: right;padding-top: 13px;">事件结束时间:</td>
  52 + <td><input type="text" name="EVENT_STOP_TIME" id="EVENT_STOP_TIME" value="${pd.EVENT_STOP_TIME}" maxlength="255" placeholder="这里输入事件结束时间" title="事件结束时间" style="width:98%;"/></td>
  53 + </tr>
  54 + <tr>
  55 + <td style="width:75px;text-align: right;padding-top: 13px;">客户ID:</td>
  56 + <td><input type="text" name="CLIENT_ID" id="CLIENT_ID" value="${pd.CLIENT_ID}" maxlength="255" placeholder="这里输入客户ID" title="客户ID" style="width:98%;"/></td>
  57 + </tr>
  58 + <tr>
  59 + <td style="width:75px;text-align: right;padding-top: 13px;">IP:</td>
  60 + <td><input type="text" name="EVENT_IP" id="EVENT_IP" value="${pd.EVENT_IP}" maxlength="255" placeholder="这里输入IP" title="IP" style="width:98%;"/></td>
  61 + </tr>
  62 + <tr>
  63 + <td style="text-align: center;" colspan="10">
  64 + <a class="btn btn-mini btn-primary" onclick="save();">保存</a>
  65 + <a class="btn btn-mini btn-danger" onclick="top.Dialog.close();">取消</a>
  66 + </td>
  67 + </tr>
  68 + </table>
  69 + </div>
  70 + <div id="zhongxin2" class="center" style="display:none"><br/><br/><br/><br/><br/><img src="static/images/jiazai.gif" /><br/><h4 class="lighter block green">提交中...</h4></div>
  71 + </form>
  72 + </div>
  73 + <!-- /.col -->
  74 + </div>
  75 + <!-- /.row -->
  76 + </div>
  77 + <!-- /.page-content -->
  78 + </div>
  79 + </div>
  80 + <!-- /.main-content -->
  81 +</div>
  82 +<!-- /.main-container -->
  83 +
  84 +
  85 + <!-- 页面底部js¨ -->
  86 + <%@ include file="../../system/index/foot.jsp"%>
  87 + <!-- 下拉框 -->
  88 + <script src="static/ace/js/chosen.jquery.js"></script>
  89 + <!-- 日期框 -->
  90 + <script src="static/ace/js/date-time/bootstrap-datepicker.js"></script>
  91 + <!--提示框-->
  92 + <script type="text/javascript" src="static/js/jquery.tips.js"></script>
  93 + <script type="text/javascript">
  94 + $(top.hangge());
  95 + //保存
  96 + function save(){
  97 + if($("#EVENT_NAME").val()==""){
  98 + $("#EVENT_NAME").tips({
  99 + side:3,
  100 + msg:'请输入时间名称',
  101 + bg:'#AE81FF',
  102 + time:2
  103 + });
  104 + $("#EVENT_NAME").focus();
  105 + return false;
  106 + }
  107 + if($("#EVENT_USER").val()==""){
  108 + $("#EVENT_USER").tips({
  109 + side:3,
  110 + msg:'请输入事件人',
  111 + bg:'#AE81FF',
  112 + time:2
  113 + });
  114 + $("#EVENT_USER").focus();
  115 + return false;
  116 + }
  117 + if($("#EVENT_TYPE").val()==""){
  118 + $("#EVENT_TYPE").tips({
  119 + side:3,
  120 + msg:'请输入事件类型',
  121 + bg:'#AE81FF',
  122 + time:2
  123 + });
  124 + $("#EVENT_TYPE").focus();
  125 + return false;
  126 + }
  127 + if($("#EVENT_START_TIME").val()==""){
  128 + $("#EVENT_START_TIME").tips({
  129 + side:3,
  130 + msg:'请输入事件起始时间',
  131 + bg:'#AE81FF',
  132 + time:2
  133 + });
  134 + $("#EVENT_START_TIME").focus();
  135 + return false;
  136 + }
  137 + if($("#EVENT_STOP_TIME").val()==""){
  138 + $("#EVENT_STOP_TIME").tips({
  139 + side:3,
  140 + msg:'请输入事件结束时间',
  141 + bg:'#AE81FF',
  142 + time:2
  143 + });
  144 + $("#EVENT_STOP_TIME").focus();
  145 + return false;
  146 + }
  147 + if($("#CLIENT_ID").val()==""){
  148 + $("#CLIENT_ID").tips({
  149 + side:3,
  150 + msg:'请输入客户ID',
  151 + bg:'#AE81FF',
  152 + time:2
  153 + });
  154 + $("#CLIENT_ID").focus();
  155 + return false;
  156 + }
  157 + if($("#EVENT_IP").val()==""){
  158 + $("#EVENT_IP").tips({
  159 + side:3,
  160 + msg:'请输入IP',
  161 + bg:'#AE81FF',
  162 + time:2
  163 + });
  164 + $("#EVENT_IP").focus();
  165 + return false;
  166 + }
  167 + $("#Form").submit();
  168 + $("#zhongxin").hide();
  169 + $("#zhongxin2").show();
  170 + }
  171 +
  172 + $(function() {
  173 + //日期框
  174 + $('.date-picker').datepicker({autoclose: true,todayHighlight: true});
  175 + });
  176 + </script>
  177 +</body>
  178 +</html>
0 179 \ No newline at end of file
... ...
WebRoot/WEB-INF/jsp/sunvote/event/event_list.jsp 0 → 100644
  1 +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2 +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
  3 +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  4 +<%
  5 + String path = request.getContextPath();
  6 + String basePath = request.getScheme() + "://"
  7 + + request.getServerName() + ":" + request.getServerPort()
  8 + + path + "/";
  9 +%>
  10 +<!DOCTYPE html>
  11 +<html lang="en">
  12 +<head>
  13 +<base href="<%=basePath%>">
  14 +<!-- 下拉框 -->
  15 +<link rel="stylesheet" href="static/ace/css/chosen.css" />
  16 +<!-- jsp文件头和头部 -->
  17 +<%@ include file="../../system/index/top.jsp"%>
  18 +<!-- 日期框 -->
  19 +<link rel="stylesheet" href="static/ace/css/datepicker.css" />
  20 +</head>
  21 +<body class="no-skin">
  22 +
  23 + <!-- /section:basics/navbar.layout -->
  24 + <div class="main-container" id="main-container">
  25 + <!-- /section:basics/sidebar -->
  26 + <div class="main-content">
  27 + <div class="main-content-inner">
  28 + <div class="page-content">
  29 + <div class="row">
  30 + <div class="col-xs-12">
  31 +
  32 + <!-- 检索 -->
  33 + <form action="event/list.do" method="post" name="Form" id="Form">
  34 + <table style="margin-top:5px;">
  35 + <tr>
  36 + <td>
  37 + <div class="nav-search">
  38 + <span class="input-icon">
  39 + <input type="text" placeholder="这里输入关键词" class="nav-search-input" id="nav-search-input" autocomplete="off" name="keywords" value="${pd.keywords }" placeholder="这里输入关键词"/>
  40 + <i class="ace-icon fa fa-search nav-search-icon"></i>
  41 + </span>
  42 + </div>
  43 + </td>
  44 + <td style="padding-left:2px;"><input class="span10 date-picker" name="lastStart" id="lastStart" value="" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="开始日期" title="开始日期"/></td>
  45 + <td style="padding-left:2px;"><input class="span10 date-picker" name="lastEnd" name="lastEnd" value="" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="结束日期" title="结束日期"/></td>
  46 + <td style="vertical-align:top;padding-left:2px;">
  47 + <select class="chosen-select form-control" name="name" id="id" data-placeholder="请选择" style="vertical-align:top;width: 120px;">
  48 + <option value=""></option>
  49 + <option value="">全部</option>
  50 + <option value="">1</option>
  51 + <option value="">2</option>
  52 + </select>
  53 + </td>
  54 + <c:if test="${QX.cha == 1 }">
  55 + <td style="vertical-align:top;padding-left:2px"><a class="btn btn-light btn-xs" onclick="tosearch();" title="检索"><i id="nav-search-icon" class="ace-icon fa fa-search bigger-110 nav-search-icon blue"></i></a></td>
  56 + </c:if>
  57 + <c:if test="${QX.toExcel == 1 }"><td style="vertical-align:top;padding-left:2px;"><a class="btn btn-light btn-xs" onclick="toExcel();" title="导出到EXCEL"><i id="nav-search-icon" class="ace-icon fa fa-download bigger-110 nav-search-icon blue"></i></a></td></c:if>
  58 + </tr>
  59 + </table>
  60 + <!-- 检索 -->
  61 +
  62 + <table id="simple-table" class="table table-striped table-bordered table-hover" style="margin-top:5px;">
  63 + <thead>
  64 + <tr>
  65 + <th class="center" style="width:35px;">
  66 + <label class="pos-rel"><input type="checkbox" class="ace" id="zcheckbox" /><span class="lbl"></span></label>
  67 + </th>
  68 + <th class="center" style="width:50px;">序号</th>
  69 + <th class="center">时间名称</th>
  70 + <th class="center">事件人</th>
  71 + <th class="center">事件类型</th>
  72 + <th class="center">事件起始时间</th>
  73 + <th class="center">事件结束时间</th>
  74 + <th class="center">客户ID</th>
  75 + <th class="center">IP</th>
  76 + <th class="center">操作</th>
  77 + </tr>
  78 + </thead>
  79 +
  80 + <tbody>
  81 + <!-- 开始循环 -->
  82 + <c:choose>
  83 + <c:when test="${not empty varList}">
  84 + <c:if test="${QX.cha == 1 }">
  85 + <c:forEach items="${varList}" var="var" varStatus="vs">
  86 + <tr>
  87 + <td class='center'>
  88 + <label class="pos-rel"><input type='checkbox' name='ids' value="${var.EVENT_ID}" class="ace" /><span class="lbl"></span></label>
  89 + </td>
  90 + <td class='center' style="width: 30px;">${vs.index+1}</td>
  91 + <td class='center'>${var.EVENT_NAME}</td>
  92 + <td class='center'>${var.EVENT_USER}</td>
  93 + <td class='center'>${var.EVENT_TYPE}</td>
  94 + <td class='center'>${var.EVENT_START_TIME}</td>
  95 + <td class='center'>${var.EVENT_STOP_TIME}</td>
  96 + <td class='center'>${var.CLIENT_ID}</td>
  97 + <td class='center'>${var.EVENT_IP}</td>
  98 + <td class="center">
  99 + <c:if test="${QX.edit != 1 && QX.del != 1 }">
  100 + <span class="label label-large label-grey arrowed-in-right arrowed-in"><i class="ace-icon fa fa-lock" title="无权限"></i></span>
  101 + </c:if>
  102 + <div class="hidden-sm hidden-xs btn-group">
  103 + <c:if test="${QX.edit == 1 }">
  104 + <a class="btn btn-xs btn-success" title="编辑" onclick="edit('${var.EVENT_ID}');">
  105 + <i class="ace-icon fa fa-pencil-square-o bigger-120" title="编辑"></i>
  106 + </a>
  107 + </c:if>
  108 + <c:if test="${QX.del == 1 }">
  109 + <a class="btn btn-xs btn-danger" onclick="del('${var.EVENT_ID}');">
  110 + <i class="ace-icon fa fa-trash-o bigger-120" title="删除"></i>
  111 + </a>
  112 + </c:if>
  113 + </div>
  114 + <div class="hidden-md hidden-lg">
  115 + <div class="inline pos-rel">
  116 + <button class="btn btn-minier btn-primary dropdown-toggle" data-toggle="dropdown" data-position="auto">
  117 + <i class="ace-icon fa fa-cog icon-only bigger-110"></i>
  118 + </button>
  119 +
  120 + <ul class="dropdown-menu dropdown-only-icon dropdown-yellow dropdown-menu-right dropdown-caret dropdown-close">
  121 + <c:if test="${QX.edit == 1 }">
  122 + <li>
  123 + <a style="cursor:pointer;" onclick="edit('${var.EVENT_ID}');" class="tooltip-success" data-rel="tooltip" title="修改">
  124 + <span class="green">
  125 + <i class="ace-icon fa fa-pencil-square-o bigger-120"></i>
  126 + </span>
  127 + </a>
  128 + </li>
  129 + </c:if>
  130 + <c:if test="${QX.del == 1 }">
  131 + <li>
  132 + <a style="cursor:pointer;" onclick="del('${var.EVENT_ID}');" class="tooltip-error" data-rel="tooltip" title="删除">
  133 + <span class="red">
  134 + <i class="ace-icon fa fa-trash-o bigger-120"></i>
  135 + </span>
  136 + </a>
  137 + </li>
  138 + </c:if>
  139 + </ul>
  140 + </div>
  141 + </div>
  142 + </td>
  143 + </tr>
  144 +
  145 + </c:forEach>
  146 + </c:if>
  147 + <c:if test="${QX.cha == 0 }">
  148 + <tr>
  149 + <td colspan="100" class="center">您无权查看</td>
  150 + </tr>
  151 + </c:if>
  152 + </c:when>
  153 + <c:otherwise>
  154 + <tr class="main_info">
  155 + <td colspan="100" class="center" >没有相关数据</td>
  156 + </tr>
  157 + </c:otherwise>
  158 + </c:choose>
  159 + </tbody>
  160 + </table>
  161 + <div class="page-header position-relative">
  162 + <table style="width:100%;">
  163 + <tr>
  164 + <td style="vertical-align:top;">
  165 + <c:if test="${QX.add == 1 }">
  166 + <a class="btn btn-mini btn-success" onclick="add();">新增</a>
  167 + </c:if>
  168 + <c:if test="${QX.del == 1 }">
  169 + <a class="btn btn-mini btn-danger" onclick="makeAll('确定要删除选中的数据吗?');" title="批量删除" ><i class='ace-icon fa fa-trash-o bigger-120'></i></a>
  170 + </c:if>
  171 + </td>
  172 + <td style="vertical-align:top;"><div class="pagination" style="float: right;padding-top: 0px;margin-top: 0px;">${page.pageStr}</div></td>
  173 + </tr>
  174 + </table>
  175 + </div>
  176 + </form>
  177 +
  178 + </div>
  179 + <!-- /.col -->
  180 + </div>
  181 + <!-- /.row -->
  182 + </div>
  183 + <!-- /.page-content -->
  184 + </div>
  185 + </div>
  186 + <!-- /.main-content -->
  187 +
  188 + <!-- 返回顶部 -->
  189 + <a href="#" id="btn-scroll-up" class="btn-scroll-up btn btn-sm btn-inverse">
  190 + <i class="ace-icon fa fa-angle-double-up icon-only bigger-110"></i>
  191 + </a>
  192 +
  193 + </div>
  194 + <!-- /.main-container -->
  195 +
  196 + <!-- basic scripts -->
  197 + <!-- 页面底部js¨ -->
  198 + <%@ include file="../../system/index/foot.jsp"%>
  199 + <!-- 删除时确认窗口 -->
  200 + <script src="static/ace/js/bootbox.js"></script>
  201 + <!-- ace scripts -->
  202 + <script src="static/ace/js/ace/ace.js"></script>
  203 + <!-- 下拉框 -->
  204 + <script src="static/ace/js/chosen.jquery.js"></script>
  205 + <!-- 日期框 -->
  206 + <script src="static/ace/js/date-time/bootstrap-datepicker.js"></script>
  207 + <!--提示框-->
  208 + <script type="text/javascript" src="static/js/jquery.tips.js"></script>
  209 + <script type="text/javascript">
  210 + $(top.hangge());//关闭加载状态
  211 + //检索
  212 + function tosearch(){
  213 + top.jzts();
  214 + $("#Form").submit();
  215 + }
  216 + $(function() {
  217 +
  218 + //日期框
  219 + $('.date-picker').datepicker({
  220 + autoclose: true,
  221 + todayHighlight: true
  222 + });
  223 +
  224 + //下拉框
  225 + if(!ace.vars['touch']) {
  226 + $('.chosen-select').chosen({allow_single_deselect:true});
  227 + $(window)
  228 + .off('resize.chosen')
  229 + .on('resize.chosen', function() {
  230 + $('.chosen-select').each(function() {
  231 + var $this = $(this);
  232 + $this.next().css({'width': $this.parent().width()});
  233 + });
  234 + }).trigger('resize.chosen');
  235 + $(document).on('settings.ace.chosen', function(e, event_name, event_val) {
  236 + if(event_name != 'sidebar_collapsed') return;
  237 + $('.chosen-select').each(function() {
  238 + var $this = $(this);
  239 + $this.next().css({'width': $this.parent().width()});
  240 + });
  241 + });
  242 + $('#chosen-multiple-style .btn').on('click', function(e){
  243 + var target = $(this).find('input[type=radio]');
  244 + var which = parseInt(target.val());
  245 + if(which == 2) $('#form-field-select-4').addClass('tag-input-style');
  246 + else $('#form-field-select-4').removeClass('tag-input-style');
  247 + });
  248 + }
  249 +
  250 +
  251 + //复选框全选控制
  252 + var active_class = 'active';
  253 + $('#simple-table > thead > tr > th input[type=checkbox]').eq(0).on('click', function(){
  254 + var th_checked = this.checked;//checkbox inside "TH" table header
  255 + $(this).closest('table').find('tbody > tr').each(function(){
  256 + var row = this;
  257 + if(th_checked) $(row).addClass(active_class).find('input[type=checkbox]').eq(0).prop('checked', true);
  258 + else $(row).removeClass(active_class).find('input[type=checkbox]').eq(0).prop('checked', false);
  259 + });
  260 + });
  261 + });
  262 +
  263 + //新增
  264 + function add(){
  265 + top.jzts();
  266 + var diag = new top.Dialog();
  267 + diag.Drag=true;
  268 + diag.Title ="新增";
  269 + diag.URL = '<%=basePath%>event/goAdd.do';
  270 + diag.Width = 450;
  271 + diag.Height = 355;
  272 + diag.Modal = true; //有无遮罩窗口
  273 + diag. ShowMaxButton = true; //最大化按钮
  274 + diag.ShowMinButton = true; //最小化按钮
  275 + diag.CancelEvent = function(){ //关闭事件
  276 + if(diag.innerFrame.contentWindow.document.getElementById('zhongxin').style.display == 'none'){
  277 + if('${page.currentPage}' == '0'){
  278 + tosearch();
  279 + }else{
  280 + tosearch();
  281 + }
  282 + }
  283 + diag.close();
  284 + };
  285 + diag.show();
  286 + }
  287 +
  288 + //删除
  289 + function del(Id){
  290 + bootbox.confirm("确定要删除吗?", function(result) {
  291 + if(result) {
  292 + top.jzts();
  293 + var url = "<%=basePath%>event/delete.do?EVENT_ID="+Id+"&tm="+new Date().getTime();
  294 + $.get(url,function(data){
  295 + tosearch();
  296 + });
  297 + }
  298 + });
  299 + }
  300 +
  301 + //修改
  302 + function edit(Id){
  303 + top.jzts();
  304 + var diag = new top.Dialog();
  305 + diag.Drag=true;
  306 + diag.Title ="编辑";
  307 + diag.URL = '<%=basePath%>event/goEdit.do?EVENT_ID='+Id;
  308 + diag.Width = 450;
  309 + diag.Height = 355;
  310 + diag.Modal = true; //有无遮罩窗口
  311 + diag. ShowMaxButton = true; //最大化按钮
  312 + diag.ShowMinButton = true; //最小化按钮
  313 + diag.CancelEvent = function(){ //关闭事件
  314 + if(diag.innerFrame.contentWindow.document.getElementById('zhongxin').style.display == 'none'){
  315 + tosearch();
  316 + }
  317 + diag.close();
  318 + };
  319 + diag.show();
  320 + }
  321 +
  322 + //批量操作
  323 + function makeAll(msg){
  324 + bootbox.confirm(msg, function(result) {
  325 + if(result) {
  326 + var str = '';
  327 + for(var i=0;i < document.getElementsByName('ids').length;i++){
  328 + if(document.getElementsByName('ids')[i].checked){
  329 + if(str=='') str += document.getElementsByName('ids')[i].value;
  330 + else str += ',' + document.getElementsByName('ids')[i].value;
  331 + }
  332 + }
  333 + if(str==''){
  334 + bootbox.dialog({
  335 + message: "<span class='bigger-110'>您没有选择任何内容!</span>",
  336 + buttons:
  337 + { "button":{ "label":"确定", "className":"btn-sm btn-success"}}
  338 + });
  339 + $("#zcheckbox").tips({
  340 + side:1,
  341 + msg:'点这里全选',
  342 + bg:'#AE81FF',
  343 + time:8
  344 + });
  345 + return;
  346 + }else{
  347 + if(msg == '确定要删除选中的数据吗?'){
  348 + top.jzts();
  349 + $.ajax({
  350 + type: "POST",
  351 + url: '<%=basePath%>event/deleteAll.do?tm='+new Date().getTime(),
  352 + data: {DATA_IDS:str},
  353 + dataType:'json',
  354 + //beforeSend: validateData,
  355 + cache: false,
  356 + success: function(data){
  357 + $.each(data.list, function(i, list){
  358 + tosearch();
  359 + });
  360 + }
  361 + });
  362 + }
  363 + }
  364 + }
  365 + });
  366 + };
  367 +
  368 + //导出excel
  369 + function toExcel(){
  370 + window.location.href='<%=basePath%>event/excel.do';
  371 + }
  372 + </script>
  373 +
  374 +
  375 +</body>
  376 +</html>
0 377 \ No newline at end of file
... ...
WebRoot/WEB-INF/jsp/sunvote/schoolgradesubject/schoolgradesubject_edit.jsp
... ... @@ -33,15 +33,33 @@
33 33 <table id="table_report" class="table table-striped table-bordered table-hover">
34 34 <tr>
35 35 <td style="width:75px;text-align: right;padding-top: 13px;">学校:</td>
36   - <td><input type="number" name="SCHOOL_ID" id="SCHOOL_ID" value="${pd.SCHOOL_ID}" maxlength="32" placeholder="这里输入学校" title="学校" style="width:98%;"/></td>
  36 + <td>
  37 + <select class="chosen-select form-control" name="SCHOOL_ID" id="SCHOOL_ID" data-placeholder="这里输入所属学校">
  38 + <c:forEach var="item" items="${schools}">
  39 + <option value="${item.ID}" <c:if test="${pd.SCHOOL_ID==item.ID}">selected="true"</c:if>>${item.NAME}</option>
  40 + </c:forEach>
  41 + </select>
  42 + </td>
37 43 </tr>
38 44 <tr>
39 45 <td style="width:75px;text-align: right;padding-top: 13px;">年级:</td>
40   - <td><input type="number" name="GRADE_ID" id="GRADE_ID" value="${pd.GRADE_ID}" maxlength="32" placeholder="这里输入年级" title="年级" style="width:98%;"/></td>
  46 + <td>
  47 + <select class="chosen-select form-control" name="GRADE_ID" id="GRADE_ID" data-placeholder="这里输入所属学校">
  48 + <c:forEach var="item" items="${grades}">
  49 + <option value="${item.ID}" <c:if test="${pd.GRADE_ID==item.ID}">selected="true"</c:if>>${item.NAME}</option>
  50 + </c:forEach>
  51 + </select>
  52 + </td>
41 53 </tr>
42 54 <tr>
43 55 <td style="width:75px;text-align: right;padding-top: 13px;">科目:</td>
44   - <td><input type="number" name="SUBJECT_ID" id="SUBJECT_ID" value="${pd.SUBJECT_ID}" maxlength="32" placeholder="这里输入科目" title="科目" style="width:98%;"/></td>
  56 + <td>
  57 + <select class="chosen-select form-control" name="SUBJECT_ID" id="SUBJECT_ID" data-placeholder="这里输入所属学校">
  58 + <c:forEach var="item" items="${subjects}">
  59 + <option value="${item.ID}" <c:if test="${pd.SUBJECT_ID==item.ID}">selected="true"</c:if>>${item.CNAME}</option>
  60 + </c:forEach>
  61 + </select>
  62 + </td>
45 63 </tr>
46 64 <tr>
47 65 <td style="text-align: center;" colspan="10">
... ...
WebRoot/WEB-INF/jsp/sunvote/schoolgradesubject/schoolgradesubject_list.jsp
1 1 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
2 2 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
3 3 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  4 +<%@ taglib prefix="myelfun" uri="/WEB-INF/tld/elfun.tld"%>
4 5 <%
5 6 String path = request.getContextPath();
6 7 String basePath = request.getScheme() + "://"
... ... @@ -33,27 +34,15 @@
33 34 <form action="schoolgradesubject/list.do" method="post" name="Form" id="Form">
34 35 <table style="margin-top:5px;">
35 36 <tr>
36   - <td>
37   - <div class="nav-search">
38   - <span class="input-icon">
39   - <input type="text" placeholder="这里输入关键词" class="nav-search-input" id="nav-search-input" autocomplete="off" name="keywords" value="${pd.keywords }" placeholder="这里输入关键词"/>
40   - <i class="ace-icon fa fa-search nav-search-icon"></i>
41   - </span>
42   - </div>
43   - </td>
44   - <td style="padding-left:2px;"><input class="span10 date-picker" name="lastStart" id="lastStart" value="" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="开始日期" title="开始日期"/></td>
45   - <td style="padding-left:2px;"><input class="span10 date-picker" name="lastEnd" name="lastEnd" value="" type="text" data-date-format="yyyy-mm-dd" readonly="readonly" style="width:88px;" placeholder="结束日期" title="结束日期"/></td>
46 37 <td style="vertical-align:top;padding-left:2px;">
47   - <select class="chosen-select form-control" name="name" id="id" data-placeholder="请选择" style="vertical-align:top;width: 120px;">
  38 + <select class="chosen-select form-control" name="SCHOOL_ID" id="SCHOOL_ID" data-placeholder="请选择" style="vertical-align:top;width: 120px;">
48 39 <option value=""></option>
49 40 <option value="">全部</option>
50   - <option value="">1</option>
51   - <option value="">2</option>
  41 + <c:forEach var="item" items="${schools}">
  42 + <option value="${item.ID}">${item.NAME}</option>
  43 + </c:forEach>
52 44 </select>
53 45 </td>
54   - <c:if test="${QX.cha == 1 }">
55   - <td style="vertical-align:top;padding-left:2px"><a class="btn btn-light btn-xs" onclick="tosearch();" title="检索"><i id="nav-search-icon" class="ace-icon fa fa-search bigger-110 nav-search-icon blue"></i></a></td>
56   - </c:if>
57 46 <c:if test="${QX.toExcel == 1 }"><td style="vertical-align:top;padding-left:2px;"><a class="btn btn-light btn-xs" onclick="toExcel();" title="导出到EXCEL"><i id="nav-search-icon" class="ace-icon fa fa-download bigger-110 nav-search-icon blue"></i></a></td></c:if>
58 47 </tr>
59 48 </table>
... ... @@ -84,9 +73,9 @@
84 73 <label class="pos-rel"><input type='checkbox' name='ids' value="${var.SCHOOLGRADESUBJECT_ID}" class="ace" /><span class="lbl"></span></label>
85 74 </td>
86 75 <td class='center' style="width: 30px;">${vs.index+1}</td>
87   - <td class='center'>${var.SCHOOL_ID}</td>
88   - <td class='center'>${var.GRADE_ID}</td>
89   - <td class='center'>${var.SUBJECT_ID}</td>
  76 + <td class='center'>${myelfun:findSchoolName(var.SCHOOL_ID)}</td>
  77 + <td class='center'>${myelfun:findGradeName(var.GRADE_ID)}</td>
  78 + <td class='center'>${myelfun:findSubjectCName(var.SUBJECT_ID)}</td>
90 79 <td class="center">
91 80 <c:if test="${QX.edit != 1 && QX.del != 1 }">
92 81 <span class="label label-large label-grey arrowed-in-right arrowed-in"><i class="ace-icon fa fa-lock" title="无权限"></i></span>
... ...
WebRoot/afterService/document/高思答题器售后维修流程.pdf 0 → 100644
No preview for this file type
WebRoot/afterService/gsdt_info.html
... ... @@ -74,8 +74,7 @@
74 74 <select id="system" class="form-control">
75 75 <option value="请选择">请选择</option>
76 76 <option value="Windows">Windows</option>
77   - <option value="Mac">Mac</option>
78   - <option value="IOS">IOS</option>
  77 + <option value="Mac">安卓(小鱼)</option>
79 78 </select>
80 79 </div>
81 80 </div>
... ... @@ -84,8 +83,8 @@
84 83 <div class="controls col-md-12" style="padding:0;">
85 84 <select id="softname" class="form-control">
86 85 <option value="请选择">请选择</option>
87   - <option value="互动课堂">互动课堂</option>
88   - <option value="配对工具Match Tool">配对工具Match Tool</option>
  86 + <option value="互动课堂">爱学习课堂答题器软件</option>
  87 + <option value="配对工具Match Tool">爱学习主讲端</option>
89 88 </select>
90 89 </div>
91 90 </div>
... ...
WebRoot/afterService/gsindex.html
... ... @@ -105,7 +105,7 @@
105 105 <script>
106 106 function down(type){
107 107 switch(type){
108   - case 0: $(".modal-body").html('<p><a href="document/产品售后维修流程.pdf" target="_blank">产品售后维修流程</a></p>');break;
  108 + case 0: $(".modal-body").html('<p><a href="document/高思答题器售后维修流程.pdf" target="_blank">产品售后维修流程</a></p>');break;
109 109 case 1: $(".modal-body").html('<p>等待更新</p>');break;
110 110 case 2: $(".modal-body").html('<p><a href="document/答题器-S56-常见问题解答V1.0-20180227(高思定制).pdf" target="_blank">答题器-S56-常见问题解答V1.0-20180227(高思定制)</a></p><p><a href="document/基站-EA1000-常见问题解答V1.0-20170825.pdf" target="_blank">基站-EA1000-常见问题解答V1.0-20170825</a></p>');break;
111 111 }
... ...
WebRoot/afterService/gsinfo.html
... ... @@ -74,8 +74,7 @@
74 74 <select id="system" class="form-control">
75 75 <option value="请选择">请选择</option>
76 76 <option value="Windows">Windows</option>
77   - <option value="Mac">Mac</option>
78   - <option value="IOS">IOS</option>
  77 + <option value="Mac">安卓(小鱼)</option>
79 78 </select>
80 79 </div>
81 80 </div>
... ... @@ -84,8 +83,8 @@
84 83 <div class="controls col-md-12" style="padding:0;">
85 84 <select id="softname" class="form-control">
86 85 <option value="请选择">请选择</option>
87   - <option value="互动课堂">互动课堂</option>
88   - <option value="配对工具Match Tool">配对工具Match Tool</option>
  86 + <option value="互动课堂">爱学习课堂答题器软件</option>
  87 + <option value="配对工具Match Tool">爱学习主讲端</option>
89 88 </select>
90 89 </div>
91 90 </div>
... ...
resources/mybatis1/api/V1Mapper.xml
... ... @@ -50,6 +50,8 @@
50 50 sv_term.START_DATE &lt; NOW()
51 51 AND sv_term.END_DATE &gt; NOW()
52 52 AND SCLASS_ID = #{SCLASS_ID}
  53 +
  54 + order by sv_student.`SNO`
53 55 </select>
54 56  
55 57 <!-- 通过教师ID获取科目数据
... ...
resources/mybatis1/sunvote/AttachKeyboardMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="AttachKeyboardMapper">
  4 +
  5 + <!--表名 -->
  6 + <sql id="tableName">
  7 + SV_ATTACHKEYBOARD
  8 + </sql>
  9 +
  10 + <!-- 字段 -->
  11 + <sql id="Field">
  12 + CLASS_ID,
  13 + KEYBOARD_ID,
  14 + ATTACHKEYBOARD_ID
  15 + </sql>
  16 +
  17 + <!-- 字段值 -->
  18 + <sql id="FieldValue">
  19 + #{CLASS_ID},
  20 + #{KEYBOARD_ID},
  21 + #{ATTACHKEYBOARD_ID}
  22 + </sql>
  23 +
  24 + <!-- 新增-->
  25 + <insert id="save" parameterType="pd">
  26 + insert into
  27 + <include refid="tableName"></include>
  28 + (
  29 + <include refid="Field"></include>
  30 + ) values (
  31 + <include refid="FieldValue"></include>
  32 + )
  33 + </insert>
  34 +
  35 + <!-- 删除-->
  36 + <delete id="delete" parameterType="pd">
  37 + delete from
  38 + <include refid="tableName"></include>
  39 + where
  40 + ATTACHKEYBOARD_ID = #{ATTACHKEYBOARD_ID}
  41 + </delete>
  42 +
  43 + <!-- 修改 -->
  44 + <update id="edit" parameterType="pd">
  45 + update
  46 + <include refid="tableName"></include>
  47 + set
  48 + CLASS_ID = #{CLASS_ID},
  49 + KEYBOARD_ID = #{KEYBOARD_ID},
  50 + ATTACHKEYBOARD_ID = ATTACHKEYBOARD_ID
  51 + where
  52 + ATTACHKEYBOARD_ID = #{ATTACHKEYBOARD_ID}
  53 + </update>
  54 +
  55 + <!-- 通过ID获取数据 -->
  56 + <select id="findById" parameterType="pd" resultType="pd">
  57 + select
  58 + <include refid="Field"></include>
  59 + from
  60 + <include refid="tableName"></include>
  61 + where
  62 + ATTACHKEYBOARD_ID = #{ATTACHKEYBOARD_ID}
  63 + </select>
  64 +
  65 + <!-- 列表 -->
  66 + <select id="datalistPage" parameterType="page" resultType="pd">
  67 + select
  68 + <include refid="Field"></include>
  69 + from
  70 + <include refid="tableName"></include>
  71 + where 1=1
  72 + <if test="pd.keywords!= null and pd.keywords != ''"><!-- 关键词检索 -->
  73 + and
  74 + (
  75 + <!-- 根据需求自己加检索条件
  76 + 字段1 LIKE CONCAT(CONCAT('%', #{pd.keywords}),'%')
  77 + or
  78 + 字段2 LIKE CONCAT(CONCAT('%', #{pd.keywords}),'%')
  79 + -->
  80 + )
  81 + </if>
  82 + </select>
  83 +
  84 + <!-- 列表(全部) -->
  85 + <select id="listAll" parameterType="pd" resultType="pd">
  86 + select
  87 + <include refid="Field"></include>
  88 + from
  89 + <include refid="tableName"></include>
  90 + </select>
  91 +
  92 + <!-- 列表(全部) -->
  93 + <select id="listAllClassId" parameterType="pd" resultType="pd">
  94 + select
  95 + KEYBOARD_ID
  96 + from
  97 + <include refid="tableName"></include>
  98 + where 1 = 1
  99 + <if test="CLASS_ID != null and CLASS_ID != ''"><!-- 关键词检索 -->
  100 + and CLASS_ID = #{CLASS_ID}
  101 + </if>
  102 + </select>
  103 +
  104 + <!-- 批量删除 -->
  105 + <delete id="deleteAll" parameterType="String">
  106 + delete from
  107 + <include refid="tableName"></include>
  108 + where
  109 + ATTACHKEYBOARD_ID in
  110 + <foreach item="item" index="index" collection="array" open="(" separator="," close=")">
  111 + #{item}
  112 + </foreach>
  113 + </delete>
  114 +
  115 + <!-- fh313596790qq(青苔) -->
  116 +</mapper>
0 117 \ No newline at end of file
... ...
resources/mybatis1/sunvote/CourseManagementMapper.xml
... ... @@ -106,11 +106,14 @@
106 106 <if test="pd.keywords!= null and pd.keywords != ''"><!-- 关键词检索 -->
107 107 and
108 108 (
109   - <!-- 根据需求自己加检索条件
110   - 字段1 LIKE CONCAT(CONCAT('%', #{pd.keywords}),'%')
111   - or
112   - 字段2 LIKE CONCAT(CONCAT('%', #{pd.keywords}),'%')
113   - -->
  109 +
  110 + )
  111 + </if>
  112 +
  113 + <if test="pd.TERM_ID!= null and pd.TERM_ID != ''"><!-- 关键词检索 -->
  114 + and
  115 + (
  116 + TERM_ID = #{pd.TERM_ID}
114 117 )
115 118 </if>
116 119 </select>
... ...
resources/mybatis1/sunvote/EventMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="EventMapper">
  4 +
  5 + <!--表名 -->
  6 + <sql id="tableName">
  7 + SV_EVENT
  8 + </sql>
  9 +
  10 + <!-- 字段 -->
  11 + <sql id="Field">
  12 + EVENT_NAME,
  13 + EVENT_USER,
  14 + EVENT_TYPE,
  15 + EVENT_START_TIME,
  16 + EVENT_STOP_TIME,
  17 + CLIENT_ID,
  18 + EVENT_IP,
  19 + EVENT_ID
  20 + </sql>
  21 +
  22 + <!-- 字段值 -->
  23 + <sql id="FieldValue">
  24 + #{EVENT_NAME},
  25 + #{EVENT_USER},
  26 + #{EVENT_TYPE},
  27 + #{EVENT_START_TIME},
  28 + #{EVENT_STOP_TIME},
  29 + #{CLIENT_ID},
  30 + #{EVENT_IP},
  31 + #{EVENT_ID}
  32 + </sql>
  33 +
  34 + <!-- 新增-->
  35 + <insert id="save" parameterType="pd">
  36 + insert into
  37 + <include refid="tableName"></include>
  38 + (
  39 + <include refid="Field"></include>
  40 + ) values (
  41 + <include refid="FieldValue"></include>
  42 + )
  43 + </insert>
  44 +
  45 + <!-- 删除-->
  46 + <delete id="delete" parameterType="pd">
  47 + delete from
  48 + <include refid="tableName"></include>
  49 + where
  50 + EVENT_ID = #{EVENT_ID}
  51 + </delete>
  52 +
  53 + <!-- 修改 -->
  54 + <update id="edit" parameterType="pd">
  55 + update
  56 + <include refid="tableName"></include>
  57 + set
  58 + EVENT_NAME = #{EVENT_NAME},
  59 + EVENT_USER = #{EVENT_USER},
  60 + EVENT_TYPE = #{EVENT_TYPE},
  61 + EVENT_START_TIME = #{EVENT_START_TIME},
  62 + EVENT_STOP_TIME = #{EVENT_STOP_TIME},
  63 + CLIENT_ID = #{CLIENT_ID},
  64 + EVENT_IP = #{EVENT_IP},
  65 + EVENT_ID = EVENT_ID
  66 + where
  67 + EVENT_ID = #{EVENT_ID}
  68 + </update>
  69 +
  70 + <!-- 通过ID获取数据 -->
  71 + <select id="findById" parameterType="pd" resultType="pd">
  72 + select
  73 + <include refid="Field"></include>
  74 + from
  75 + <include refid="tableName"></include>
  76 + where
  77 + EVENT_ID = #{EVENT_ID}
  78 + </select>
  79 +
  80 + <!-- 列表 -->
  81 + <select id="datalistPage" parameterType="page" resultType="pd">
  82 + select
  83 + <include refid="Field"></include>
  84 + from
  85 + <include refid="tableName"></include>
  86 + where 1=1
  87 + <if test="pd.keywords!= null and pd.keywords != ''"><!-- 关键词检索 -->
  88 + and
  89 + (
  90 + <!-- 根据需求自己加检索条件
  91 + 字段1 LIKE CONCAT(CONCAT('%', #{pd.keywords}),'%')
  92 + or
  93 + 字段2 LIKE CONCAT(CONCAT('%', #{pd.keywords}),'%')
  94 + -->
  95 + )
  96 + </if>
  97 + </select>
  98 +
  99 + <!-- 列表(全部) -->
  100 + <select id="listAll" parameterType="pd" resultType="pd">
  101 + select
  102 + <include refid="Field"></include>
  103 + from
  104 + <include refid="tableName"></include>
  105 + </select>
  106 +
  107 + <!-- 批量删除 -->
  108 + <delete id="deleteAll" parameterType="String">
  109 + delete from
  110 + <include refid="tableName"></include>
  111 + where
  112 + EVENT_ID in
  113 + <foreach item="item" index="index" collection="array" open="(" separator="," close=")">
  114 + #{item}
  115 + </foreach>
  116 + </delete>
  117 +
  118 + <!-- fh313596790qq(青苔) -->
  119 +</mapper>
0 120 \ No newline at end of file
... ...
src/com/fh/controller/api/ApiServer.java
... ... @@ -348,44 +348,33 @@ public class ApiServer extends BaseController {
348 348  
349 349 @RequestMapping(value = "/feedback/add", produces = "application/json;charset=UTF-8")
350 350 @ResponseBody
351   - public Object feedbackAdd(CommonsMultipartFile file, HttpServletRequest request)
352   - throws Exception {
  351 + public Object feedbackAdd(HttpServletRequest request)
  352 + throws Exception {
353 353 PageData pd = this.getPageData();
354 354 ResponseGson<PageData> res = new ResponseGson();
355 355 String path = request.getSession().getServletContext()
356 356 .getRealPath("/images");
357 357 File pathFile = new File(path);
358   - if(!pathFile.exists()){
  358 + if (!pathFile.exists()) {
359 359 pathFile.mkdirs();
360 360 }
361 361 logger.info(path);
362   - if (file != null) {
363   - String fileName = file.getOriginalFilename();
364   - File dir = new File(path, Tools.date2Str(new Date()) + fileName);
365   - if (!dir.exists()) {
366   - dir.mkdirs();
367   - }
368   - file.transferTo(dir);
369   -
370   - pd.put("PROBLEM_PATH", dir.getAbsolutePath());
371   - logger.info(dir.getAbsolutePath());
372   - } else {
373   - if (pd.get("PROBLEM_PATH") != null) {
374   - String imgStr = pd.getString("PROBLEM_PATH");
375   - String[] content = imgStr.split(";base64,");
376   - if (content.length >= 2) {
377   - String fileType = ".file";
378   - if (content[0].contains("image")) {
379   - fileType = content[0].substring(11,content[0].length());
380   - }
381   - String filename = "fb_" + System.currentTimeMillis() + "." + fileType ;
382   - File dir = new File(path + File.separator + filename );
383   - if (!dir.exists()) {
384   - dir.createNewFile();
385   - }
386   - generateImage(content[1], dir.getAbsolutePath());
387   - pd.put("PROBLEM_PATH", filename);
  362 + if (pd.get("PROBLEM_PATH") != null) {
  363 + String imgStr = pd.getString("PROBLEM_PATH");
  364 + String[] content = imgStr.split(";base64,");
  365 + if (content.length >= 2) {
  366 + String fileType = ".file";
  367 + if (content[0].contains("image")) {
  368 + fileType = content[0].substring(11, content[0].length());
  369 + }
  370 + String filename = "fb_" + System.currentTimeMillis() + "."
  371 + + fileType;
  372 + File dir = new File(path + File.separator + filename);
  373 + if (!dir.exists()) {
  374 + dir.createNewFile();
388 375 }
  376 + generateImage(content[1], dir.getAbsolutePath());
  377 + pd.put("PROBLEM_PATH", filename);
389 378 }
390 379 }
391 380 String id = pd.getString("ID");
... ...
src/com/fh/controller/api/V.java
... ... @@ -54,6 +54,7 @@ public class V extends BaseController {
54 54 PageData ret = schoolService.findById(pd);
55 55 ResponseGson<PageData> res = new ResponseGson();
56 56 res.setData(ret);
  57 +
57 58 return res.toJson();
58 59 } else {
59 60 List<PageData> ret = schoolService.listAll(pd);
... ...
src/com/fh/controller/api/V1.java
... ... @@ -24,6 +24,7 @@ import com.fh.service.api.V1Manager;
24 24 import com.fh.service.feedback.feedback.FeedbackManager;
25 25 import com.fh.service.feedback.problemphenomenon.ProblemPhenomenonManager;
26 26 import com.fh.service.software.softwareversion.SoftwareVersionManager;
  27 +import com.fh.service.sunvote.attachkeyboard.AttachKeyboardManager;
27 28 import com.fh.service.sunvote.basestation.BasestationManager;
28 29 import com.fh.service.sunvote.chapter.ChapterManager;
29 30 import com.fh.service.sunvote.classbasetation.ClassBasetationManager;
... ... @@ -146,6 +147,9 @@ public class V1 extends BaseController {
146 147  
147 148 @Resource(name="softwareversionService")
148 149 private SoftwareVersionManager softwareversionService;
  150 +
  151 + @Resource(name="attachkeyboardService")
  152 + private AttachKeyboardManager attachkeyboardService;
149 153  
150 154 @RequestMapping(value = "/login", produces = "application/json;charset=UTF-8")
151 155 @ResponseBody
... ... @@ -200,6 +204,9 @@ public class V1 extends BaseController {
200 204 pt.put("SCLASS_ID", pageData.get("ID"));
201 205 List<PageData> studentList = v1Service.getClassStudent(pt);
202 206 pageData.put("studentList", studentList);
  207 + pt.put("CLASS_ID", pageData.get("ID"));
  208 + List<PageData> keyboards = attachkeyboardService.listAllClassId(pt);
  209 + pageData.put("keyboards", keyboards);
203 210 res.setData(pageData);
204 211 } else {
205 212 res.set2Error();
... ...
src/com/fh/controller/sunvote/attachkeyboard/AttachKeyboardController.java 0 → 100644
  1 +package com.fh.controller.sunvote.attachkeyboard;
  2 +
  3 +import java.io.PrintWriter;
  4 +import java.text.DateFormat;
  5 +import java.text.SimpleDateFormat;
  6 +import java.util.ArrayList;
  7 +import java.util.Date;
  8 +import java.util.HashMap;
  9 +import java.util.List;
  10 +import java.util.Map;
  11 +
  12 +import javax.annotation.Resource;
  13 +
  14 +import org.springframework.beans.propertyeditors.CustomDateEditor;
  15 +import org.springframework.stereotype.Controller;
  16 +import org.springframework.web.bind.WebDataBinder;
  17 +import org.springframework.web.bind.annotation.InitBinder;
  18 +import org.springframework.web.bind.annotation.RequestMapping;
  19 +import org.springframework.web.bind.annotation.ResponseBody;
  20 +import org.springframework.web.servlet.ModelAndView;
  21 +
  22 +import com.fh.controller.base.BaseController;
  23 +import com.fh.entity.Page;
  24 +import com.fh.util.AppUtil;
  25 +import com.fh.util.ObjectExcelView;
  26 +import com.fh.util.PageData;
  27 +import com.fh.util.Jurisdiction;
  28 +import com.fh.util.Tools;
  29 +import com.fh.service.sunvote.attachkeyboard.AttachKeyboardManager;
  30 +import com.fh.service.sunvote.sclass.SClassManager;
  31 +
  32 +/**
  33 + * 说明:班级附加键盘
  34 + * 创建人:FH Q313596790
  35 + * 创建时间:2018-06-25
  36 + */
  37 +@Controller
  38 +@RequestMapping(value="/attachkeyboard")
  39 +public class AttachKeyboardController extends BaseController {
  40 +
  41 + String menuUrl = "attachkeyboard/list.do"; //菜单地址(权限用)
  42 + @Resource(name="attachkeyboardService")
  43 + private AttachKeyboardManager attachkeyboardService;
  44 +
  45 + @Resource(name="sclassService")
  46 + private SClassManager sclassService;
  47 +
  48 + /**保存
  49 + * @param
  50 + * @throws Exception
  51 + */
  52 + @RequestMapping(value="/save")
  53 + public ModelAndView save() throws Exception{
  54 + logBefore(logger, Jurisdiction.getUsername()+"新增AttachKeyboard");
  55 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "add")){return null;} //校验权限
  56 + ModelAndView mv = this.getModelAndView();
  57 + PageData pd = new PageData();
  58 + pd = this.getPageData();
  59 + pd.put("ATTACHKEYBOARD_ID", this.get32UUID()); //主键
  60 + attachkeyboardService.save(pd);
  61 + mv.addObject("msg","success");
  62 + mv.setViewName("save_result");
  63 + return mv;
  64 + }
  65 +
  66 + /**删除
  67 + * @param out
  68 + * @throws Exception
  69 + */
  70 + @RequestMapping(value="/delete")
  71 + public void delete(PrintWriter out) throws Exception{
  72 + logBefore(logger, Jurisdiction.getUsername()+"删除AttachKeyboard");
  73 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return;} //校验权限
  74 + PageData pd = new PageData();
  75 + pd = this.getPageData();
  76 + attachkeyboardService.delete(pd);
  77 + out.write("success");
  78 + out.close();
  79 + }
  80 +
  81 + /**修改
  82 + * @param
  83 + * @throws Exception
  84 + */
  85 + @RequestMapping(value="/edit")
  86 + public ModelAndView edit() throws Exception{
  87 + logBefore(logger, Jurisdiction.getUsername()+"修改AttachKeyboard");
  88 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){return null;} //校验权限
  89 + ModelAndView mv = this.getModelAndView();
  90 + PageData pd = new PageData();
  91 + pd = this.getPageData();
  92 + attachkeyboardService.edit(pd);
  93 + mv.addObject("msg","success");
  94 + mv.setViewName("save_result");
  95 + return mv;
  96 + }
  97 +
  98 + /**列表
  99 + * @param page
  100 + * @throws Exception
  101 + */
  102 + @RequestMapping(value="/list")
  103 + public ModelAndView list(Page page) throws Exception{
  104 + logBefore(logger, Jurisdiction.getUsername()+"列表AttachKeyboard");
  105 + //if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码)
  106 + ModelAndView mv = this.getModelAndView();
  107 + PageData pd = new PageData();
  108 + pd = this.getPageData();
  109 + String keywords = pd.getString("keywords"); //关键词检索条件
  110 + if(null != keywords && !"".equals(keywords)){
  111 + pd.put("keywords", keywords.trim());
  112 + }
  113 + page.setPd(pd);
  114 + List<PageData> varList = attachkeyboardService.list(page); //列出AttachKeyboard列表
  115 + mv.setViewName("sunvote/attachkeyboard/attachkeyboard_list");
  116 + mv.addObject("varList", varList);
  117 + mv.addObject("pd", pd);
  118 + mv.addObject("QX",Jurisdiction.getHC()); //按钮权限
  119 + return mv;
  120 + }
  121 +
  122 + /**去新增页面
  123 + * @param
  124 + * @throws Exception
  125 + */
  126 + @RequestMapping(value="/goAdd")
  127 + public ModelAndView goAdd()throws Exception{
  128 + ModelAndView mv = this.getModelAndView();
  129 + PageData pd = new PageData();
  130 + pd = this.getPageData();
  131 + mv.setViewName("sunvote/attachkeyboard/attachkeyboard_edit");
  132 + List<PageData> classs = sclassService.listAll(pd);
  133 + mv.addObject("classs",classs);
  134 + mv.addObject("msg", "save");
  135 + mv.addObject("pd", pd);
  136 + return mv;
  137 + }
  138 +
  139 + /**去修改页面
  140 + * @param
  141 + * @throws Exception
  142 + */
  143 + @RequestMapping(value="/goEdit")
  144 + public ModelAndView goEdit()throws Exception{
  145 + ModelAndView mv = this.getModelAndView();
  146 + PageData pd = new PageData();
  147 + pd = this.getPageData();
  148 + pd = attachkeyboardService.findById(pd); //根据ID读取
  149 + mv.setViewName("sunvote/attachkeyboard/attachkeyboard_edit");
  150 + List<PageData> classs = sclassService.listAll(pd);
  151 + mv.addObject("classs",classs);
  152 + mv.addObject("msg", "edit");
  153 + mv.addObject("pd", pd);
  154 + return mv;
  155 + }
  156 +
  157 + /**批量删除
  158 + * @param
  159 + * @throws Exception
  160 + */
  161 + @RequestMapping(value="/deleteAll")
  162 + @ResponseBody
  163 + public Object deleteAll() throws Exception{
  164 + logBefore(logger, Jurisdiction.getUsername()+"批量删除AttachKeyboard");
  165 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return null;} //校验权限
  166 + PageData pd = new PageData();
  167 + Map<String,Object> map = new HashMap<String,Object>();
  168 + pd = this.getPageData();
  169 + List<PageData> pdList = new ArrayList<PageData>();
  170 + String DATA_IDS = pd.getString("DATA_IDS");
  171 + if(null != DATA_IDS && !"".equals(DATA_IDS)){
  172 + String ArrayDATA_IDS[] = DATA_IDS.split(",");
  173 + attachkeyboardService.deleteAll(ArrayDATA_IDS);
  174 + pd.put("msg", "ok");
  175 + }else{
  176 + pd.put("msg", "no");
  177 + }
  178 + pdList.add(pd);
  179 + map.put("list", pdList);
  180 + return AppUtil.returnObject(pd, map);
  181 + }
  182 +
  183 + /**导出到excel
  184 + * @param
  185 + * @throws Exception
  186 + */
  187 + @RequestMapping(value="/excel")
  188 + public ModelAndView exportExcel() throws Exception{
  189 + logBefore(logger, Jurisdiction.getUsername()+"导出AttachKeyboard到excel");
  190 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;}
  191 + ModelAndView mv = new ModelAndView();
  192 + PageData pd = new PageData();
  193 + pd = this.getPageData();
  194 + Map<String,Object> dataMap = new HashMap<String,Object>();
  195 + List<String> titles = new ArrayList<String>();
  196 + titles.add("班级ID"); //1
  197 + titles.add("键盘ID"); //2
  198 + dataMap.put("titles", titles);
  199 + List<PageData> varOList = attachkeyboardService.listAll(pd);
  200 + List<PageData> varList = new ArrayList<PageData>();
  201 + for(int i=0;i<varOList.size();i++){
  202 + PageData vpd = new PageData();
  203 + vpd.put("var1", varOList.get(i).getString("CLASS_ID")); //1
  204 + vpd.put("var2", varOList.get(i).getString("KEYBOARD_ID")); //2
  205 + varList.add(vpd);
  206 + }
  207 + dataMap.put("varList", varList);
  208 + ObjectExcelView erv = new ObjectExcelView();
  209 + mv = new ModelAndView(erv,dataMap);
  210 + return mv;
  211 + }
  212 +
  213 + @InitBinder
  214 + public void initBinder(WebDataBinder binder){
  215 + DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  216 + binder.registerCustomEditor(Date.class, new CustomDateEditor(format,true));
  217 + }
  218 +}
... ...
src/com/fh/controller/sunvote/coursemanagement/CourseManagementController.java
... ... @@ -61,6 +61,8 @@ public class CourseManagementController extends BaseController {
61 61 @Resource(name="gradeService")
62 62 private GradeManager gradeService;
63 63  
  64 +
  65 +
64 66 /**保存
65 67 * @param
66 68 * @throws Exception
... ... @@ -131,6 +133,10 @@ public class CourseManagementController extends BaseController {
131 133 List<PageData> varList = coursemanagementService.list(page); //列出CourseManagement列表
132 134 mv.setViewName("sunvote/coursemanagement/coursemanagement_list");
133 135 mv.addObject("varList", varList);
  136 +
  137 + List<PageData> terms = termService.listAll(pd);
  138 + mv.addObject("terms", terms);
  139 +
134 140 mv.addObject("pd", pd);
135 141 mv.addObject("QX",Jurisdiction.getHC()); //按钮权限
136 142 return mv;
... ...
src/com/fh/controller/sunvote/event/EventController.java 0 → 100644
  1 +package com.fh.controller.sunvote.event;
  2 +
  3 +import java.io.PrintWriter;
  4 +import java.text.DateFormat;
  5 +import java.text.SimpleDateFormat;
  6 +import java.util.ArrayList;
  7 +import java.util.Date;
  8 +import java.util.HashMap;
  9 +import java.util.List;
  10 +import java.util.Map;
  11 +import javax.annotation.Resource;
  12 +import org.springframework.beans.propertyeditors.CustomDateEditor;
  13 +import org.springframework.stereotype.Controller;
  14 +import org.springframework.web.bind.WebDataBinder;
  15 +import org.springframework.web.bind.annotation.InitBinder;
  16 +import org.springframework.web.bind.annotation.RequestMapping;
  17 +import org.springframework.web.bind.annotation.ResponseBody;
  18 +import org.springframework.web.servlet.ModelAndView;
  19 +import com.fh.controller.base.BaseController;
  20 +import com.fh.entity.Page;
  21 +import com.fh.util.AppUtil;
  22 +import com.fh.util.ObjectExcelView;
  23 +import com.fh.util.PageData;
  24 +import com.fh.util.Jurisdiction;
  25 +import com.fh.util.Tools;
  26 +import com.fh.service.sunvote.event.EventManager;
  27 +
  28 +/**
  29 + * 说明:事件记录
  30 + * 创建人:FH Q313596790
  31 + * 创建时间:2018-06-26
  32 + */
  33 +@Controller
  34 +@RequestMapping(value="/event")
  35 +public class EventController extends BaseController {
  36 +
  37 + String menuUrl = "event/list.do"; //菜单地址(权限用)
  38 + @Resource(name="eventService")
  39 + private EventManager eventService;
  40 +
  41 + /**保存
  42 + * @param
  43 + * @throws Exception
  44 + */
  45 + @RequestMapping(value="/save")
  46 + public ModelAndView save() throws Exception{
  47 + logBefore(logger, Jurisdiction.getUsername()+"新增Event");
  48 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "add")){return null;} //校验权限
  49 + ModelAndView mv = this.getModelAndView();
  50 + PageData pd = new PageData();
  51 + pd = this.getPageData();
  52 + pd.put("EVENT_ID", this.get32UUID()); //主键
  53 + eventService.save(pd);
  54 + mv.addObject("msg","success");
  55 + mv.setViewName("save_result");
  56 + return mv;
  57 + }
  58 +
  59 + /**删除
  60 + * @param out
  61 + * @throws Exception
  62 + */
  63 + @RequestMapping(value="/delete")
  64 + public void delete(PrintWriter out) throws Exception{
  65 + logBefore(logger, Jurisdiction.getUsername()+"删除Event");
  66 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return;} //校验权限
  67 + PageData pd = new PageData();
  68 + pd = this.getPageData();
  69 + eventService.delete(pd);
  70 + out.write("success");
  71 + out.close();
  72 + }
  73 +
  74 + /**修改
  75 + * @param
  76 + * @throws Exception
  77 + */
  78 + @RequestMapping(value="/edit")
  79 + public ModelAndView edit() throws Exception{
  80 + logBefore(logger, Jurisdiction.getUsername()+"修改Event");
  81 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "edit")){return null;} //校验权限
  82 + ModelAndView mv = this.getModelAndView();
  83 + PageData pd = new PageData();
  84 + pd = this.getPageData();
  85 + eventService.edit(pd);
  86 + mv.addObject("msg","success");
  87 + mv.setViewName("save_result");
  88 + return mv;
  89 + }
  90 +
  91 + /**列表
  92 + * @param page
  93 + * @throws Exception
  94 + */
  95 + @RequestMapping(value="/list")
  96 + public ModelAndView list(Page page) throws Exception{
  97 + logBefore(logger, Jurisdiction.getUsername()+"列表Event");
  98 + //if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;} //校验权限(无权查看时页面会有提示,如果不注释掉这句代码就无法进入列表页面,所以根据情况是否加入本句代码)
  99 + ModelAndView mv = this.getModelAndView();
  100 + PageData pd = new PageData();
  101 + pd = this.getPageData();
  102 + String keywords = pd.getString("keywords"); //关键词检索条件
  103 + if(null != keywords && !"".equals(keywords)){
  104 + pd.put("keywords", keywords.trim());
  105 + }
  106 + page.setPd(pd);
  107 + List<PageData> varList = eventService.list(page); //列出Event列表
  108 + mv.setViewName("sunvote/event/event_list");
  109 + mv.addObject("varList", varList);
  110 + mv.addObject("pd", pd);
  111 + mv.addObject("QX",Jurisdiction.getHC()); //按钮权限
  112 + return mv;
  113 + }
  114 +
  115 + /**去新增页面
  116 + * @param
  117 + * @throws Exception
  118 + */
  119 + @RequestMapping(value="/goAdd")
  120 + public ModelAndView goAdd()throws Exception{
  121 + ModelAndView mv = this.getModelAndView();
  122 + PageData pd = new PageData();
  123 + pd = this.getPageData();
  124 + mv.setViewName("sunvote/event/event_edit");
  125 + mv.addObject("msg", "save");
  126 + mv.addObject("pd", pd);
  127 + return mv;
  128 + }
  129 +
  130 + /**去修改页面
  131 + * @param
  132 + * @throws Exception
  133 + */
  134 + @RequestMapping(value="/goEdit")
  135 + public ModelAndView goEdit()throws Exception{
  136 + ModelAndView mv = this.getModelAndView();
  137 + PageData pd = new PageData();
  138 + pd = this.getPageData();
  139 + pd = eventService.findById(pd); //根据ID读取
  140 + mv.setViewName("sunvote/event/event_edit");
  141 + mv.addObject("msg", "edit");
  142 + mv.addObject("pd", pd);
  143 + return mv;
  144 + }
  145 +
  146 + /**批量删除
  147 + * @param
  148 + * @throws Exception
  149 + */
  150 + @RequestMapping(value="/deleteAll")
  151 + @ResponseBody
  152 + public Object deleteAll() throws Exception{
  153 + logBefore(logger, Jurisdiction.getUsername()+"批量删除Event");
  154 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "del")){return null;} //校验权限
  155 + PageData pd = new PageData();
  156 + Map<String,Object> map = new HashMap<String,Object>();
  157 + pd = this.getPageData();
  158 + List<PageData> pdList = new ArrayList<PageData>();
  159 + String DATA_IDS = pd.getString("DATA_IDS");
  160 + if(null != DATA_IDS && !"".equals(DATA_IDS)){
  161 + String ArrayDATA_IDS[] = DATA_IDS.split(",");
  162 + eventService.deleteAll(ArrayDATA_IDS);
  163 + pd.put("msg", "ok");
  164 + }else{
  165 + pd.put("msg", "no");
  166 + }
  167 + pdList.add(pd);
  168 + map.put("list", pdList);
  169 + return AppUtil.returnObject(pd, map);
  170 + }
  171 +
  172 + /**导出到excel
  173 + * @param
  174 + * @throws Exception
  175 + */
  176 + @RequestMapping(value="/excel")
  177 + public ModelAndView exportExcel() throws Exception{
  178 + logBefore(logger, Jurisdiction.getUsername()+"导出Event到excel");
  179 + if(!Jurisdiction.buttonJurisdiction(menuUrl, "cha")){return null;}
  180 + ModelAndView mv = new ModelAndView();
  181 + PageData pd = new PageData();
  182 + pd = this.getPageData();
  183 + Map<String,Object> dataMap = new HashMap<String,Object>();
  184 + List<String> titles = new ArrayList<String>();
  185 + titles.add("时间名称"); //1
  186 + titles.add("事件人"); //2
  187 + titles.add("事件类型"); //3
  188 + titles.add("事件起始时间"); //4
  189 + titles.add("事件结束时间"); //5
  190 + titles.add("客户ID"); //6
  191 + titles.add("IP"); //7
  192 + dataMap.put("titles", titles);
  193 + List<PageData> varOList = eventService.listAll(pd);
  194 + List<PageData> varList = new ArrayList<PageData>();
  195 + for(int i=0;i<varOList.size();i++){
  196 + PageData vpd = new PageData();
  197 + vpd.put("var1", varOList.get(i).getString("EVENT_NAME")); //1
  198 + vpd.put("var2", varOList.get(i).getString("EVENT_USER")); //2
  199 + vpd.put("var3", varOList.get(i).getString("EVENT_TYPE")); //3
  200 + vpd.put("var4", varOList.get(i).getString("EVENT_START_TIME")); //4
  201 + vpd.put("var5", varOList.get(i).getString("EVENT_STOP_TIME")); //5
  202 + vpd.put("var6", varOList.get(i).getString("CLIENT_ID")); //6
  203 + vpd.put("var7", varOList.get(i).getString("EVENT_IP")); //7
  204 + varList.add(vpd);
  205 + }
  206 + dataMap.put("varList", varList);
  207 + ObjectExcelView erv = new ObjectExcelView();
  208 + mv = new ModelAndView(erv,dataMap);
  209 + return mv;
  210 + }
  211 +
  212 + @InitBinder
  213 + public void initBinder(WebDataBinder binder){
  214 + DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  215 + binder.registerCustomEditor(Date.class, new CustomDateEditor(format,true));
  216 + }
  217 +}
... ...
src/com/fh/controller/sunvote/schoolgradesubject/SchoolGradeSubjectController.java
... ... @@ -8,7 +8,9 @@ import java.util.Date;
8 8 import java.util.HashMap;
9 9 import java.util.List;
10 10 import java.util.Map;
  11 +
11 12 import javax.annotation.Resource;
  13 +
12 14 import org.springframework.beans.propertyeditors.CustomDateEditor;
13 15 import org.springframework.stereotype.Controller;
14 16 import org.springframework.web.bind.WebDataBinder;
... ... @@ -16,6 +18,7 @@ import org.springframework.web.bind.annotation.InitBinder;
16 18 import org.springframework.web.bind.annotation.RequestMapping;
17 19 import org.springframework.web.bind.annotation.ResponseBody;
18 20 import org.springframework.web.servlet.ModelAndView;
  21 +
19 22 import com.fh.controller.base.BaseController;
20 23 import com.fh.entity.Page;
21 24 import com.fh.util.AppUtil;
... ... @@ -23,7 +26,11 @@ import com.fh.util.ObjectExcelView;
23 26 import com.fh.util.PageData;
24 27 import com.fh.util.Jurisdiction;
25 28 import com.fh.util.Tools;
  29 +import com.fh.service.sunvote.grade.GradeManager;
  30 +import com.fh.service.sunvote.school.SchoolManager;
26 31 import com.fh.service.sunvote.schoolgradesubject.SchoolGradeSubjectManager;
  32 +import com.fh.service.sunvote.subject.SubjectManager;
  33 +import com.fh.service.system.fhlog.FHlogManager;
27 34  
28 35 /**
29 36 * 说明:学校年级科目表
... ... @@ -37,6 +44,15 @@ public class SchoolGradeSubjectController extends BaseController {
37 44 @Resource(name="schoolgradesubjectService")
38 45 private SchoolGradeSubjectManager schoolgradesubjectService;
39 46  
  47 + @Resource(name="schoolService")
  48 + private SchoolManager schoolService;
  49 +
  50 + @Resource(name="gradeService")
  51 + private GradeManager gradeService;
  52 +
  53 + @Resource(name="subjectService")
  54 + private SubjectManager subjectService;
  55 +
40 56 /**保存
41 57 * @param
42 58 * @throws Exception
... ... @@ -106,6 +122,12 @@ public class SchoolGradeSubjectController extends BaseController {
106 122 List<PageData> varList = schoolgradesubjectService.list(page); //列出SchoolGradeSubject列表
107 123 mv.setViewName("sunvote/schoolgradesubject/schoolgradesubject_list");
108 124 mv.addObject("varList", varList);
  125 +
  126 + List<PageData> schools = schoolService.listAll(pd);
  127 + mv.addObject("schools",schools);
  128 + List<PageData> grades = gradeService.listAll(pd);
  129 + mv.addObject("grades", grades);
  130 +
109 131 mv.addObject("pd", pd);
110 132 mv.addObject("QX",Jurisdiction.getHC()); //按钮权限
111 133 return mv;
... ... @@ -122,6 +144,12 @@ public class SchoolGradeSubjectController extends BaseController {
122 144 pd = this.getPageData();
123 145 mv.setViewName("sunvote/schoolgradesubject/schoolgradesubject_edit");
124 146 mv.addObject("msg", "save");
  147 + List<PageData> schools = schoolService.listAll(pd);
  148 + mv.addObject("schools",schools);
  149 + List<PageData> grades = gradeService.listAll(pd);
  150 + mv.addObject("grades", grades);
  151 + List<PageData> subjects = subjectService.listAll(pd);
  152 + mv.addObject("subjects", subjects);
125 153 mv.addObject("pd", pd);
126 154 return mv;
127 155 }
... ... @@ -138,6 +166,14 @@ public class SchoolGradeSubjectController extends BaseController {
138 166 pd = schoolgradesubjectService.findById(pd); //根据ID读取
139 167 mv.setViewName("sunvote/schoolgradesubject/schoolgradesubject_edit");
140 168 mv.addObject("msg", "edit");
  169 + List<PageData> schools = schoolService.listAll(pd);
  170 + mv.addObject("schools",schools);
  171 + List<PageData> grades = gradeService.listAll(pd);
  172 + mv.addObject("grades", grades);
  173 + List<PageData> subjects = subjectService.listAll(pd);
  174 + mv.addObject("subjects", subjects);
  175 +
  176 +
141 177 mv.addObject("pd", pd);
142 178 return mv;
143 179 }
... ...
src/com/fh/controller/system/login/LoginController.java
1 1 package com.fh.controller.system.login;
2 2  
3 3 import java.util.ArrayList;
  4 +import java.util.Date;
4 5 import java.util.HashMap;
5 6 import java.util.List;
6 7 import java.util.Map;
... ... @@ -21,8 +22,12 @@ import org.springframework.web.bind.annotation.ResponseBody;
21 22 import org.springframework.web.servlet.ModelAndView;
22 23  
23 24 import com.fh.controller.base.BaseController;
  25 +import com.fh.entity.system.Menu;
  26 +import com.fh.entity.system.Role;
  27 +import com.fh.entity.system.User;
24 28 import com.fh.service.api.V1Manager;
25 29 import com.fh.service.fhoa.datajur.DatajurManager;
  30 +import com.fh.service.sunvote.event.EventManager;
26 31 import com.fh.service.sunvote.school.SchoolManager;
27 32 import com.fh.service.sunvote.teacher.TeacherManager;
28 33 import com.fh.service.system.appuser.AppuserManager;
... ... @@ -31,9 +36,6 @@ import com.fh.service.system.fhbutton.FhbuttonManager;
31 36 import com.fh.service.system.fhlog.FHlogManager;
32 37 import com.fh.service.system.loginimg.LogInImgManager;
33 38 import com.fh.service.system.menu.MenuManager;
34   -import com.fh.entity.system.Menu;
35   -import com.fh.entity.system.Role;
36   -import com.fh.entity.system.User;
37 39 import com.fh.service.system.role.RoleManager;
38 40 import com.fh.service.system.user.UserManager;
39 41 import com.fh.util.AppUtil;
... ... @@ -81,6 +83,8 @@ public class LoginController extends BaseController {
81 83 @Resource(name = "v1Service")
82 84 private V1Manager v1Service ;
83 85  
  86 + @Resource(name="eventService")
  87 + private EventManager eventService;
84 88 /**
85 89 * 访问登录页
86 90 *
... ... @@ -134,6 +138,17 @@ public class LoginController extends BaseController {
134 138 user.setNAME(pd.getString("NAME"));
135 139 user.setRIGHTS(pd.getString("RIGHTS"));
136 140 user.setROLE_ID(pd.getString("ROLE_ID"));
  141 +
  142 + PageData eventPd = new PageData();
  143 + eventPd.put("EVENT_ID", get32UUID());
  144 + eventPd.put("EVENT_NAME", "login");
  145 + eventPd.put("EVENT_USER", pd.getString("USER_ID"));
  146 + eventPd.put("EVENT_TYPE", "0");
  147 + eventPd.put("EVENT_START_TIME",Tools.date2Str(new Date()));
  148 + eventPd.put("CLIENT_ID", "SERVER");
  149 + eventPd.put("EVENT_IP",pd.getString("IP"));
  150 + eventService.save(eventPd);
  151 +
137 152 if("57bb1e6f138247a0b05cc721a5da1b64".equals(pd.getString("ROLE_ID"))){
138 153 map.put("teacher", pd.getString("RIGHTS"));
139 154 }
... ...
src/com/fh/service/sunvote/attachkeyboard/AttachKeyboardManager.java 0 → 100644
  1 +package com.fh.service.sunvote.attachkeyboard;
  2 +
  3 +import java.util.List;
  4 +
  5 +import com.fh.entity.Page;
  6 +import com.fh.util.PageData;
  7 +
  8 +/**
  9 + * 说明: 班级附加键盘接口
  10 + * 创建人:FH Q313596790
  11 + * 创建时间:2018-06-25
  12 + * @version
  13 + */
  14 +public interface AttachKeyboardManager{
  15 +
  16 + /**新增
  17 + * @param pd
  18 + * @throws Exception
  19 + */
  20 + public void save(PageData pd)throws Exception;
  21 +
  22 + /**删除
  23 + * @param pd
  24 + * @throws Exception
  25 + */
  26 + public void delete(PageData pd)throws Exception;
  27 +
  28 + /**修改
  29 + * @param pd
  30 + * @throws Exception
  31 + */
  32 + public void edit(PageData pd)throws Exception;
  33 +
  34 + /**列表
  35 + * @param page
  36 + * @throws Exception
  37 + */
  38 + public List<PageData> list(Page page)throws Exception;
  39 +
  40 + /**列表(全部)
  41 + * @param pd
  42 + * @throws Exception
  43 + */
  44 + public List<PageData> listAll(PageData pd)throws Exception;
  45 +
  46 + /**通过id获取数据
  47 + * @param pd
  48 + * @throws Exception
  49 + */
  50 + public PageData findById(PageData pd)throws Exception;
  51 +
  52 + /**批量删除
  53 + * @param ArrayDATA_IDS
  54 + * @throws Exception
  55 + */
  56 + public void deleteAll(String[] ArrayDATA_IDS)throws Exception;
  57 +
  58 + public List<PageData> listAllClassId(PageData pd)throws Exception;
  59 +
  60 +}
  61 +
... ...
src/com/fh/service/sunvote/attachkeyboard/impl/AttachKeyboardService.java 0 → 100644
  1 +package com.fh.service.sunvote.attachkeyboard.impl;
  2 +
  3 +import java.util.List;
  4 +import javax.annotation.Resource;
  5 +import org.springframework.stereotype.Service;
  6 +import com.fh.dao.DaoSupport;
  7 +import com.fh.entity.Page;
  8 +import com.fh.util.PageData;
  9 +import com.fh.service.sunvote.attachkeyboard.AttachKeyboardManager;
  10 +
  11 +/**
  12 + * 说明: 班级附加键盘
  13 + * 创建人:FH Q313596790
  14 + * 创建时间:2018-06-25
  15 + * @version
  16 + */
  17 +@Service("attachkeyboardService")
  18 +public class AttachKeyboardService implements AttachKeyboardManager{
  19 +
  20 + @Resource(name = "daoSupport")
  21 + private DaoSupport dao;
  22 +
  23 + /**新增
  24 + * @param pd
  25 + * @throws Exception
  26 + */
  27 + public void save(PageData pd)throws Exception{
  28 + dao.save("AttachKeyboardMapper.save", pd);
  29 + }
  30 +
  31 + /**删除
  32 + * @param pd
  33 + * @throws Exception
  34 + */
  35 + public void delete(PageData pd)throws Exception{
  36 + dao.delete("AttachKeyboardMapper.delete", pd);
  37 + }
  38 +
  39 + /**修改
  40 + * @param pd
  41 + * @throws Exception
  42 + */
  43 + public void edit(PageData pd)throws Exception{
  44 + dao.update("AttachKeyboardMapper.edit", pd);
  45 + }
  46 +
  47 + /**列表
  48 + * @param page
  49 + * @throws Exception
  50 + */
  51 + @SuppressWarnings("unchecked")
  52 + public List<PageData> list(Page page)throws Exception{
  53 + return (List<PageData>)dao.findForList("AttachKeyboardMapper.datalistPage", page);
  54 + }
  55 +
  56 + /**列表(全部)
  57 + * @param pd
  58 + * @throws Exception
  59 + */
  60 + @SuppressWarnings("unchecked")
  61 + public List<PageData> listAll(PageData pd)throws Exception{
  62 + return (List<PageData>)dao.findForList("AttachKeyboardMapper.listAll", pd);
  63 + }
  64 + /**列表(全部)
  65 + * @param pd
  66 + * @throws Exception
  67 + */
  68 + @SuppressWarnings("unchecked")
  69 + public List<PageData> listAllClassId(PageData pd)throws Exception{
  70 + return (List<PageData>)dao.findForList("AttachKeyboardMapper.listAllClassId", pd);
  71 + }
  72 +
  73 + /**通过id获取数据
  74 + * @param pd
  75 + * @throws Exception
  76 + */
  77 + public PageData findById(PageData pd)throws Exception{
  78 + return (PageData)dao.findForObject("AttachKeyboardMapper.findById", pd);
  79 + }
  80 +
  81 + /**批量删除
  82 + * @param ArrayDATA_IDS
  83 + * @throws Exception
  84 + */
  85 + public void deleteAll(String[] ArrayDATA_IDS)throws Exception{
  86 + dao.delete("AttachKeyboardMapper.deleteAll", ArrayDATA_IDS);
  87 + }
  88 +
  89 +}
  90 +
... ...
src/com/fh/service/sunvote/event/EventManager.java 0 → 100644
  1 +package com.fh.service.sunvote.event;
  2 +
  3 +import java.util.List;
  4 +import com.fh.entity.Page;
  5 +import com.fh.util.PageData;
  6 +
  7 +/**
  8 + * 说明: 事件记录接口
  9 + * 创建人:FH Q313596790
  10 + * 创建时间:2018-06-26
  11 + * @version
  12 + */
  13 +public interface EventManager{
  14 +
  15 + /**新增
  16 + * @param pd
  17 + * @throws Exception
  18 + */
  19 + public void save(PageData pd)throws Exception;
  20 +
  21 + /**删除
  22 + * @param pd
  23 + * @throws Exception
  24 + */
  25 + public void delete(PageData pd)throws Exception;
  26 +
  27 + /**修改
  28 + * @param pd
  29 + * @throws Exception
  30 + */
  31 + public void edit(PageData pd)throws Exception;
  32 +
  33 + /**列表
  34 + * @param page
  35 + * @throws Exception
  36 + */
  37 + public List<PageData> list(Page page)throws Exception;
  38 +
  39 + /**列表(全部)
  40 + * @param pd
  41 + * @throws Exception
  42 + */
  43 + public List<PageData> listAll(PageData pd)throws Exception;
  44 +
  45 + /**通过id获取数据
  46 + * @param pd
  47 + * @throws Exception
  48 + */
  49 + public PageData findById(PageData pd)throws Exception;
  50 +
  51 + /**批量删除
  52 + * @param ArrayDATA_IDS
  53 + * @throws Exception
  54 + */
  55 + public void deleteAll(String[] ArrayDATA_IDS)throws Exception;
  56 +
  57 +}
  58 +
... ...
src/com/fh/service/sunvote/event/impl/EventService.java 0 → 100644
  1 +package com.fh.service.sunvote.event.impl;
  2 +
  3 +import java.util.List;
  4 +import javax.annotation.Resource;
  5 +import org.springframework.stereotype.Service;
  6 +import com.fh.dao.DaoSupport;
  7 +import com.fh.entity.Page;
  8 +import com.fh.util.PageData;
  9 +import com.fh.service.sunvote.event.EventManager;
  10 +
  11 +/**
  12 + * 说明: 事件记录
  13 + * 创建人:FH Q313596790
  14 + * 创建时间:2018-06-26
  15 + * @version
  16 + */
  17 +@Service("eventService")
  18 +public class EventService implements EventManager{
  19 +
  20 + @Resource(name = "daoSupport")
  21 + private DaoSupport dao;
  22 +
  23 + /**新增
  24 + * @param pd
  25 + * @throws Exception
  26 + */
  27 + public void save(PageData pd)throws Exception{
  28 + dao.save("EventMapper.save", pd);
  29 + }
  30 +
  31 + /**删除
  32 + * @param pd
  33 + * @throws Exception
  34 + */
  35 + public void delete(PageData pd)throws Exception{
  36 + dao.delete("EventMapper.delete", pd);
  37 + }
  38 +
  39 + /**修改
  40 + * @param pd
  41 + * @throws Exception
  42 + */
  43 + public void edit(PageData pd)throws Exception{
  44 + dao.update("EventMapper.edit", pd);
  45 + }
  46 +
  47 + /**列表
  48 + * @param page
  49 + * @throws Exception
  50 + */
  51 + @SuppressWarnings("unchecked")
  52 + public List<PageData> list(Page page)throws Exception{
  53 + return (List<PageData>)dao.findForList("EventMapper.datalistPage", page);
  54 + }
  55 +
  56 + /**列表(全部)
  57 + * @param pd
  58 + * @throws Exception
  59 + */
  60 + @SuppressWarnings("unchecked")
  61 + public List<PageData> listAll(PageData pd)throws Exception{
  62 + return (List<PageData>)dao.findForList("EventMapper.listAll", pd);
  63 + }
  64 +
  65 + /**通过id获取数据
  66 + * @param pd
  67 + * @throws Exception
  68 + */
  69 + public PageData findById(PageData pd)throws Exception{
  70 + return (PageData)dao.findForObject("EventMapper.findById", pd);
  71 + }
  72 +
  73 + /**批量删除
  74 + * @param ArrayDATA_IDS
  75 + * @throws Exception
  76 + */
  77 + public void deleteAll(String[] ArrayDATA_IDS)throws Exception{
  78 + dao.delete("EventMapper.deleteAll", ArrayDATA_IDS);
  79 + }
  80 +
  81 +}
  82 +
... ...