wenhongquan 8 лет назад
Родитель
Сommit
cce11df5d3
34 измененных файлов с 378 добавлено и 131 удалено
  1. 7 2
      VisualInspection/js/appeal_management/appeal_checked.js
  2. 3 3
      VisualInspection/js/appeal_management/appeal_list.js
  3. 5 1
      VisualInspection/js/appeal_management/appeal_submited.js
  4. 1 1
      VisualInspection/js/assess_management/assess_item.js
  5. 1 1
      VisualInspection/js/assess_management/assess_way.js
  6. 2 2
      VisualInspection/js/assess_management/assess_way_edit.js
  7. 36 0
      VisualInspection/js/main.js
  8. 1 1
      VisualInspection/js/menu/menu.js
  9. 22 3
      VisualInspection/js/mytask/check.js
  10. 33 33
      VisualInspection/js/mytask/checkDetail.js1
  11. 1 1
      VisualInspection/js/role/permision.js
  12. 1 1
      VisualInspection/js/role/role.js
  13. 13 0
      VisualInspection/js/teamClass/charge_team_schedule.js
  14. 96 26
      VisualInspection/js/teamClass/check_team_schedule.js
  15. 1 1
      VisualInspection/js/user/userManager.js
  16. 2 1
      VisualInspection/js/util/service.js
  17. 9 19
      VisualInspection/js/util/util.js
  18. 1 0
      VisualInspection/view/common/commoncsslink.html
  19. 1 0
      VisualInspection/view/common/commonscriptlink.html
  20. 4 5
      VisualInspection/view/main.html
  21. 1 0
      VisualInspection/view/mytask/check.html
  22. 1 2
      VisualInspection/view/mytask/taskDetail.html
  23. 1 1
      VisualInspection/view/statistics/static1.html
  24. 1 1
      VisualInspection/view/statistics/static2.html
  25. 1 1
      VisualInspection/view/statistics/static3.html
  26. 1 1
      VisualInspection/view/statistics/static4.html
  27. 1 1
      VisualInspection/view/statistics/static5.html
  28. 1 1
      VisualInspection/view/term_management/charge_stuff_schedule.html
  29. 7 3
      VisualInspection/view/term_management/check_stuff_schedule.html
  30. 1 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/dao/master/TeamClassDao.java
  31. 3 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/TaskMapper.xml
  32. 21 8
      VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/TeamClassMapper.xml
  33. 91 7
      VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/UserClassServiceImpl.java
  34. 7 4
      VisualInspection_server/src/main/resources/application.properties

+ 7 - 2
VisualInspection/js/appeal_management/appeal_checked.js

@@ -11,13 +11,18 @@ function queryCheckedAppealTask(){
         "status_search_type":1,
         "check_status":14
     }
+    var hide = false;
+    
+    if(hasRole(ROLE_STATION_ADMIN) || hasRole(ROLE_STATION) ||  hasRole(ROLE_JICHA)|| roleContains('STATION')) {
+        hide = true;
+    }
     var cols = [
                 {width: 80, text: '序号', type: 'number', flex: true, colClass: 'text-center',field: 'num'},
                 {width: 160, text: '任务名称', type: 'string', flex: true, sort: 'down',field: 'name'},
                 {width: 80, text: '考核人员', type: 'string', flex: true, colClass: '',field: 'checked_person_name'},
                 {width: 160, text: '考核部门', type: 'string', flex: true, sort: 'down',field: 'checked_dept_name'},
-                // {width: 80, text: '稽查人员', type: 'string', flex: true, colClass: '',field: 'checkman_name'},
-                //  {width: 80, text: '复核人员', type: 'string', flex: true, colClass: '',field: 'recheckman_name'},
+                {width: 80, text: '稽查人员', type: 'string', flex: true, hide: hide,field: 'checkman_name'},
+                {width: 80, text: '复核人员', type: 'string', flex: true, hide: hide,field: 'recheckman_name'},
                 {width: 160, text: '稽查时间段', type: 'string', flex: true, sort: 'down',field: 'check_period'},
                 // {width: 80, text: '状态', type: 'string', flex: true, colClass: '',field: 'check_status_name'},
                 {width: 160, text: '操作', type: 'string', flex: true, field: 'id',

+ 3 - 3
VisualInspection/js/appeal_management/appeal_list.js

@@ -66,7 +66,7 @@ function queryAppeal(){
         "check_status": cur_status,
     }
     var hide = false;
-    if(hasRole(ROLE_STATION_ADMIN) || hasRole(ROLE_STATION) ||  hasRole(ROLE_JICHA)) {
+    if(hasRole(ROLE_STATION_ADMIN) || hasRole(ROLE_STATION) ||  hasRole(ROLE_JICHA) || roleContains('STATION')) {
         hide = true;
     }
     
@@ -75,8 +75,8 @@ function queryAppeal(){
             {width: 100, text: '任务名称', flex: true,colClass: '',field:'name'},
             {width: 80, text: '申诉人员',  flex: true, colClass: '',field:'checked_person_name'},
             {width: 100, text: '申诉部门',  flex: true, colClass: '',sort: 'down',field:'checked_dept_name'},
-            {width: 80, text: '稽查人员', type: 'string', flex: true, hide:hide,colClass: '',field:'checkman_name'},
-            {width: 80, text: '复核人员', type: 'string', flex: true, hide:hide,colClass: '',field:'recheckman_name'},
+            {width: 80, text: '稽查人员', type: 'string', flex: true, hide:hide,field:'checkman_name'},
+            {width: 80, text: '复核人员', type: 'string', flex: true, hide:hide,field:'recheckman_name'},
             {width: 120, text: '稽查时间段', type: 'string', flex: true, colClass: '',field:'check_period'},
             {width: 80, text: '状态', type: 'string', flex: true, colClass: '',field:'check_status_name'},
         ];

+ 5 - 1
VisualInspection/js/appeal_management/appeal_submited.js

@@ -12,12 +12,16 @@ function querySubmitedAppealTask(){
         "check_status":11,
         "check_status_end":14
     }
+    var hide = false;
+    if(hasRole(ROLE_STATION_ADMIN) || hasRole(ROLE_STATION) ||  hasRole(ROLE_JICHA) || roleContains('STATION')) {
+        hide = true;
+    }
     var cols = [
                 {width: 80, text: '序号', type: 'number', flex: true, colClass: 'text-center',field: 'num'},
                 {width: 160, text: '任务名称', type: 'string', flex: true, sort: 'down',field: 'name'},
                 {width: 80, text: '考核人员', type: 'string', flex: true, colClass: '',field: 'checked_person_name'},
                 {width: 160, text: '考核部门', type: 'string', flex: true, sort: 'down',field: 'checked_dept_name'},
-                {width: 80, text: '稽查人员', type: 'string', flex: true, colClass: '',field: 'checkman_name'},
+                {width: 80, text: '稽查人员', type: 'string', flex: true, hide: hide,field: 'checkman_name'},
                 {width: 160, text: '稽查时间段', type: 'string', flex: true, sort: 'down',field: 'check_period'},
                 // {width: 80, text: '状态', type: 'string', flex: true, colClass: '',field: 'check_status_name'},
                 {width: 160, text: '操作', type: 'string', flex: true, field: 'id',

+ 1 - 1
VisualInspection/js/assess_management/assess_item.js

@@ -31,7 +31,7 @@
  }];
  $(document).ready(function() {
 
-     $("#main_content_title").html("考核项管理")
+    //  $("#main_content_title").html("考核项管理")
 
      $('#dashboard').dashboard({ draggable: false });
      var zTreeObj;

+ 1 - 1
VisualInspection/js/assess_management/assess_way.js

@@ -143,7 +143,7 @@ function idVal(id){
 
 $(document).ready(function() {
     // 初始化标题
-    $("#main_content_title").html("考核办法管理")
+    // $("#main_content_title").html("考核办法管理")
 
     // 检索表格数据
     queryTable();

+ 2 - 2
VisualInspection/js/assess_management/assess_way_edit.js

@@ -35,8 +35,8 @@ var check_rule_tree = null ;
      colClass: 'text-center'
  }];
  $(document).ready(function() {
-
-     $("#main_content_title").html("<span><a href='#'>考核项管理</a></span><span> / </span><span>考核项</span>");
+    addBreadMenu("/view/assess_management/assess_way_edit.html", "考核项");
+    //  $("#main_content_title").html("<span><a href='#'>考核项管理</a></span><span> / </span><span>考核项</span>");
 
      $('#dashboard').dashboard({ draggable: false });
      var zTreeObj;

+ 36 - 0
VisualInspection/js/main.js

@@ -67,10 +67,13 @@ $(document).ready(function () {
                     datactemp["html"] = "<a id=\"" + mtemp.id + "\" href=\"#\"><i class=\"icon\">·</i>" + mtemp.menuname + "</a>";
                     secondMenus.push(mtemp.id);
                     datac.push(datactemp);
+
+                    $.zui.store.set(mtemp.url,mtemp.menuname); 
                 }
                 datatemp["children"] = datac;
             }
             treedata.push(datatemp)
+
         }
         // 获取 tree 实例
         var myTree = $('#treeMenu').data('zui.tree');
@@ -155,6 +158,11 @@ function changePage(url) {
         $.zui.store.set("page_params", page_params);
         $("#main_content").load(base_ui_url + url);
 
+        var name = $.zui.store.get(url); 
+        if(name){
+            // $("#breadcrumb_menu").html('<li murl="'+url+'" mname="'+name+'"><a href="#" onclick="changePage('+url+')">'+name+'</a></li>');
+            addBreadMenu(url, name, true);
+        }
         event = document.createEvent('MessageEvent');
         var origin = window.location.protocol + '//' + window.location.host;
         event.initMessageEvent('changepage', true, true, CURRENT_PAGE_URL, origin, 1234, window, null);
@@ -174,4 +182,32 @@ function GetQueryString(url)
         }
      }
      return theRequest;
+}
+
+function addBreadMenu(url, name, flag){
+    var menu = hasMenu(url, name, flag);
+    if(menu >= 0){
+        // $("#breadcrumb_menu").remove($(menu).nextAll());
+        var children = $("#breadcrumb_menu").children("li");
+        for(var i =0;i<children.length;i++) {
+            if(i>menu){
+                $(children[i]).remove();
+            }
+        }
+    }else{
+        if(flag)
+            $("#breadcrumb_menu").html('<li murl="'+url+'" mname="'+name+'"><a href="#" onclick="changePage(\''+url+'\')">'+name+'</a></li>');
+        else
+            $("#breadcrumb_menu").append('<li murl="'+url+'" mname="'+name+'"><a href="#" onclick="changePage(\''+url+'\')">'+name+'</a></li>');
+    }        
+}
+
+function hasMenu(url, name){
+    var children = $("#breadcrumb_menu").children("li");
+    for(var i =0;i<children.length;i++) {
+        if($(children[i]).attr("murl")==url && $(children[i]).attr("mname")==name){
+            return i;
+        }
+    }
+    return -1;
 }

+ 1 - 1
VisualInspection/js/menu/menu.js

@@ -1,6 +1,6 @@
 function initMenu(){
 
-     $("#main_content_title").html("菜单管理")
+    //  $("#main_content_title").html("菜单管理")
 
      $('#dashboard').dashboard({ draggable: true });
      var zTreeObj;

+ 22 - 3
VisualInspection/js/mytask/check.js

@@ -1,6 +1,7 @@
 function initCheck() {
-    $('#ex1').slider({ tooltip: 'hide' });
-    $("#ex1").on("slideStop", function (slideEvt) {
+    addBreadMenu("/view/mytask/check.html", "视频稽查");
+    $('#ex1').slider({tooltip: 'hide'});
+    $("#ex1").on("slideStop", function(slideEvt) {
         setVideoProcess(slideEvt.value);
     });
 
@@ -325,9 +326,12 @@ function showChangeUser() {
             var pic = "../../images/body-bg.png";
             if (data[i].pic) pic = base_image_server_url + data[i].pic;
             str = '<div style="width:90px;float:left;margin:5px;">'
-                + '<a class="card" href="javascript:void(0)" onclick="changePerson(\'' + data[i].id + '\')">'
+                + '<a class="card" href="javascript:void(0)" onclick="showBigImg(\'' + pic+ '\')">'
                 + '<img src="' + pic + '" alt="" style="height:100px;width:90px;">'
                 + '<div class="card-heading"><strong>' + name + '</strong></div>'
+                + '<div class="card-actions">'
+                +     '<button type="button" class="btn btn-mini btn-danger" onclick="changePerson(\'' + data[i].id + '\')">选择</button>'
+                +  '</div>'
                 + '</a>'
                 + '</div>';
             userStr += str;
@@ -351,6 +355,21 @@ function changePerson(id) {
         alert(error);
     });
 }
+
+function showBigImg(src){
+    $('#userBigImg').attr("src",src);
+    layer.open({
+        offset:'r',
+        type: 1,
+        title: false,
+        closeBtn: 1,
+        area: '450px',
+        skin: 'layui-layer-nobg', //没有背景色
+        shadeClose: true,
+        shade: 0,
+        content: $('#userBigImg')
+    });
+}
 function resetUserImgInfo() {
     $("#user_img_container").empty();
     var str = '<a id="person_img" href="../../images/img4.jpg" class="lightbox-toggle">'

+ 33 - 33
VisualInspection/js/mytask/checkDetail.js → VisualInspection/js/mytask/checkDetail.js1

@@ -1,38 +1,38 @@
 function initCheck(){
     
-        // 仅选择日期
-        $("#start-time").datetimepicker({
-            language: "zh-CN",
-            weekStart: 1,
-            todayBtn: 1,
-            autoclose: 1,
-            todayHighlight: 1,
-            startView: 2,
-            minView: 2,
-            forceParse: 0,
-            format: "yyyy-mm-dd"
-        });
-        // 仅选择日期
-        $("#end-time").datetimepicker({
-            language: "zh-CN",
-            weekStart: 1,
-            todayBtn: 1,
-            autoclose: 1,
-            todayHighlight: 1,
-            startView: 2,
-            minView: 2,
-            forceParse: 0,
-            format: "yyyy-mm-dd"
-        });
-        if($.checkTask) {
-            setFeSelect("#fsList",$.checkTask.deptid);
-            setLaneSelect("#lane",$.checkTask.checked_location);
-            get_common_service('user/getUserById/'+$.checkTask.checked_person, null, function(data){
-                $("#checked_person").html(data.truename);
-            }) 
-            //查询评分情况
-            queryScores();
-        }
+    // 仅选择日期
+    $("#start-time").datetimepicker({
+        language: "zh-CN",
+        weekStart: 1,
+        todayBtn: 1,
+        autoclose: 1,
+        todayHighlight: 1,
+        startView: 2,
+        minView: 2,
+        forceParse: 0,
+        format: "yyyy-mm-dd"
+    });
+    // 仅选择日期
+    $("#end-time").datetimepicker({
+        language: "zh-CN",
+        weekStart: 1,
+        todayBtn: 1,
+        autoclose: 1,
+        todayHighlight: 1,
+        startView: 2,
+        minView: 2,
+        forceParse: 0,
+        format: "yyyy-mm-dd"
+    });
+    if($.checkTask) {
+        setFeSelect("#fsList",$.checkTask.deptid);
+        setLaneSelect("#lane",$.checkTask.checked_location);
+        get_common_service('user/getUserById/'+$.checkTask.checked_person, null, function(data){
+            $("#checked_person").html(data.truename);
+        }) 
+        //查询评分情况
+        queryScores();
+    }
 }
     // 使用data参数更新数据:
     function queryScores(){

+ 1 - 1
VisualInspection/js/role/permision.js

@@ -29,7 +29,7 @@ var cols = [{
     colClass: 'text-center'
 }];
 $(document).ready(function () {
-    $("#main_content_title").html("权限管理")
+    // $("#main_content_title").html("权限管理")
     $('#dashboard').dashboard({ draggable: true });
     var zTreeObj;
     var zNodes = [];

+ 1 - 1
VisualInspection/js/role/role.js

@@ -36,7 +36,7 @@ var pagesize = 30;
 var RoleMap = new HashMap()
 $(document).ready(function () {
 
-    $("#main_content_title").html("角色管理")
+    // $("#main_content_title").html("角色管理")
 
     $('.datatable').datatable({
         checkable: false,

+ 13 - 0
VisualInspection/js/teamClass/charge_team_schedule.js

@@ -345,6 +345,19 @@
             var end_time = $("#end_time").val() ;
             var name = $("#team_info_ti").find("option:selected").text(); 
             
+            if(start_time >= end_time){
+                tip("时间设置不合理,开始时间不能大于结束时间");
+                return ;
+            }
+
+            // 这边需要判断一下,时间不能重叠
+            for(var i=0;i<bind_data.length;i++){
+                if(!(start_time >= bind_data[i].end_time || end_time <= bind_data[i].start_time)){
+                    tip("设置的时间不能重叠");
+                    return ;
+                }
+            }
+
             if( id !="" && start_time !='' && end_time !=''){
                 bind_data.push({"user_name":name , "start_time":start_time , "end_time": end_time,"id":id});
               

+ 96 - 26
VisualInspection/js/teamClass/check_team_schedule.js

@@ -1,5 +1,4 @@
-    
-   $(document).ready(function() {
+    $(document).ready(function() {
 
          $("#main_content_title").html("稽查人员排班")
 
@@ -14,7 +13,25 @@
         // 日期游标
         var date_cursor = 0 ;
 
+        // 选择下拉框
+        var role_selectinput ;
 
+        var team_stuffs = [] ;
+
+        selectInitInput(team_stuffs);
+
+        function selectInitInput(objs){
+            $("#relash").empty();
+            $("#relash").append('<input type="text" class="form-control class_team_41" id="team_detail" >');
+            role_selectinput = $('#relash #team_detail').comboTree({
+                source: objs,
+                isMultiple: true
+            });
+        }
+
+        function getSelectInputValue(){
+            return  role_selectinput.getSelectedItemsId();
+        }
 
         $('#calendar').calendar();
         var calendar = $('#calendar').data('zui.calendar');
@@ -115,7 +132,7 @@
             setAddTermTitle(date.format("yyyy-MM-dd"));
             // 保存当前日期
             $("#save_term_class").data("date",date.format("yyyy-MM-dd"));
-             $("#team_detail").html("");
+             $("#team_detail").val("");
             var data = {
                 "dept_id": user_dept_id ,
                 "start_time":date.format("yyyy-MM-dd 00:00:00"),
@@ -127,12 +144,34 @@
                 for(var i=0;i<$("select[id*='_term']").length;i++){
                     $("select[id*='_term']").eq(i).val("");
                 }
+               
                 if(data.length > 0){
+                  
                     $("#save_term_class").data("modify_flag",1);
                     for(var i=0;i<data.length;i++){
                         $(".class_team_"+data[i].class_type).val(data[i].team_id);
                     }
-                    $("#team_detail").html(data[0].user_ids_name);
+
+                    var user_ids_name = data[0].user_ids_name ;
+                    var user_ids = data[0].user_ids;
+                    // 请求班组下人员信息
+                    var dataObj ={ "id": data[0].team_id };
+                    post_common_service( "team/getDetailById",dataObj,function(data){
+                        get_input_data(data) ;    
+                        // $("#team_detail").val(user_ids_name.substring(0,user_ids_name.length-1));
+                        var user_id = user_ids.split(",");
+                        var user_name = user_ids_name.substring(0,data.user_ids_name.length-1).split(',');
+                        var team_temp_stuffs = [];
+                        for(var i=0; i< user_id.length ;i++ ){
+                            $('span[data-id="'+ user_id[i] +'"] input').attr("checked",true);
+                            var zdataItem = {};
+                            zdataItem["id"] =user_id[i] ;
+                            zdataItem["title"] = user_name[i];
+                            team_temp_stuffs.push(zdataItem);
+                        }
+                        role_selectinput._selectedItems = team_temp_stuffs ;
+                        role_selectinput.refreshInputVal();
+                    },function(error){})
                 }else{
                      $("#save_term_class").data("modify_flag",0);
                 }
@@ -180,6 +219,17 @@
 
         $("#save_term_class").click(function(){
             var data = [];
+            var user_ids = getSelectInputValue();
+            var str_user_ids = '';
+            if(user_ids!=false){
+                for(var i=0;i<user_ids.length;i++){
+                    str_user_ids = str_user_ids + ((i!=0)?(','+user_ids[i]):user_ids[i]);
+                }
+            }
+           if(str_user_ids == ''){
+               tip("请选择值班人员");
+               return ;
+           }
             for(var i=0;i<$("select[id*='_term']").length;i++){
                 if($("select[id*='_term']").eq(i).val()!=""){
                     var obj = {
@@ -189,18 +239,20 @@
                         "start_time": $("#save_term_class").data("date")+" 00:00:00",
                         "end_time": $("#save_term_class").data("date")+" 00:00:00",
                         "dept_id": user_dept_id,
-                        "user_ids":  $("#team_detail").data("user_ids")      
+                        "user_ids":  str_user_ids    
                     };
                     data.push(obj);
                 }
             }
+
             if(data.length == 0 ){
-                tip("请增加排班!");
+                tip("请填写排班信息!");
                 return ;
             }
             if( $("#save_term_class").data("modify_flag") != 1){
                 post_common_service("teamClass/add/list",data,function(data){
                     updateCalendar();
+                    tip("今日排班成功!");
                     $('#myModal').modal('hide');
                 },function(error){
                     $('#myModal').modal('hide');
@@ -208,6 +260,7 @@
             }else{
                 post_common_service("teamClass/update/list",data,function(data){
                     updateCalendar();
+                     tip("今日排班成功!");
                     $('#myModal').modal('hide');
                 },function(error){
                     $('#myModal').modal('hide');
@@ -235,34 +288,51 @@
             },function(error){})
         }
 
-   })
 
-   $("#all_term").change(function(){
+    $("#all_term").change(function(){
        if($(this).val() !="" ){
            // 请求班组下人员信息
            var data ={ "id": $(this).val() };
            post_common_service( "team/getDetailById",data,function(data){
-                $("#team_detail").html(data.user_ids_name); 
-                $("#team_detail").data("user_ids",data.user_ids);            
+               
+                get_input_data(data)         
            },function(error){})
        }else{
-            $("#team_detail").html("");   
+            $("#team_detail").val();   
        }
    })
 
-   // 根据class_type 获取班次名称
-   function getTeamName(class_type){
-       if(class_type == 1){
-           return "早班";
-       }else if(class_type == 2){
-            return "中班";
-       }else if(class_type == 3){
-           return "夜班";
-       }else if(class_type == 4){
-           return "全班";
-       }
-   }
+    function get_input_data(data){
+        if(data.user_ids.length > 0){
+            var user_name = data.user_ids_name.substring(0,data.user_ids_name.length-1).split(',');
+            var user_id = data.user_ids.split(",");
+            team_stuffs = [] ;
+            for(var i =0;i< user_name.length;i++){
+                var zdataItem = {};
+                zdataItem["id"] =user_id[i] ;
+                zdataItem["title"] = user_name[i];
+                team_stuffs.push(zdataItem);
+            }
+            selectInitInput(team_stuffs);
+        }
+    }
+
+
+    // 根据class_type 获取班次名称
+    function getTeamName(class_type){
+        if(class_type == 1){
+            return "早班";
+        }else if(class_type == 2){
+                return "中班";
+        }else if(class_type == 3){
+            return "夜班";
+        }else if(class_type == 4){
+            return "全班";
+        }
+    }
+
+    function setAddTermTitle(title){
+        $(".modal-title").html("添加班组-"+title);
+    }
 
-   function setAddTermTitle(title){
-       $(".modal-title").html("添加班组-"+title);
-   }
+   })

+ 1 - 1
VisualInspection/js/user/userManager.js

@@ -51,7 +51,7 @@
  var roles = [];
  $(document).ready(function() {
 
-     $("#main_content_title").html("用户管理")
+    //  $("#main_content_title").html("用户管理")
 
      $('#dashboard').dashboard({ draggable: true });
      var zTreeObj;

+ 2 - 1
VisualInspection/js/util/service.js

@@ -300,7 +300,8 @@ function no_return_common_service(url, param, success, fail) {
     ajaxPost(url, param, function(response) {
         var data = response;
         if (data.result_code == 0) {
-            success(data.result_desc)
+            if(success)
+                success(data.result_desc)
         } else {
             layer.msg(data.result_desc, {
                 time: 2000//20s后自动关闭

+ 9 - 19
VisualInspection/js/util/util.js

@@ -292,6 +292,15 @@ function hasRole(role){
     return false;
 }
 
+function roleContains(role){
+    var user = getCurrentUser();
+    var roles = user.roles;
+    for(var i in roles){
+        if(roles[i].name.indexOf(role) >= 0) return true;
+    }
+    return false;
+}
+
 function setCheckmanSelect(div, selectId, notHaveUserId){
     post_common_service("/user/getAllCheckman",null,function(data){
         var optStr = '';
@@ -368,22 +377,3 @@ function showClientImg(src){
 function downloadClientfile(src){
     callFunc("downloadfile", src);
 }
-
-// function initDateFormat(){
-//     Date.prototype.Format = function (fmt) { //author: meizz 
-//     var o = {
-//         "M+": this.getMonth() + 1, //月份 
-//         "d+": this.getDate(), //日 
-//         "H+": this.getHours(), //小时 
-//         "m+": this.getMinutes(), //分 
-//         "s+": this.getSeconds(), //秒 
-//         "q+": Math.floor((this.getMonth() + 3) / 3), //季度 
-//         "S": this.getMilliseconds() //毫秒 
-//     };
-//     if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
-//     for (var k in o)
-//     if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
-//     return fmt;
-//     }
-// }
-// initDateFormat();

+ 1 - 0
VisualInspection/view/common/commoncsslink.html

@@ -9,3 +9,4 @@
 <link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/calendar/zui.calendar.css">
 <link rel="stylesheet" type="text/css" href="/js/lib/webuploader/webuploader.css">  
 <link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/uploader/zui.uploader.min.css">
+<link rel="stylesheet" type="text/css" href="/js/lib/zoom/css/zoom.css">

+ 1 - 0
VisualInspection/view/common/commonscriptlink.html

@@ -18,6 +18,7 @@
 <script src="/js/lib/kkpager.min.js"></script>
 <script src="/js/lib/slide/js/bootstrap-slider.min.js"></script>
 <script src="/js/lib/webuploader/webuploader.js"></script>
+<script src="/js/lib/zoom/js/zoom.js"></script>
 <script src="/js/util/util.js"></script>
 <script src="/js/util/service.js"></script>
 <script src="/js/constant/constant.js"></script>

+ 4 - 5
VisualInspection/view/main.html

@@ -10,6 +10,7 @@
     <link rel="stylesheet" type="text/css" href="/css/main.css">
     <link rel="import" href="/view/common/commonscriptlink.html?__inline">
     <style>
+        html{overflow:auto;}
         img.lightbox-img{width:600px;}
     </style>
     <script src="/js/mytask/check.js"></script>
@@ -34,11 +35,9 @@
 
                     <div class="panel">
                         <div class="panel-heading" id="main_content_title">
-                            <!--<ol class="breadcrumb" style="margin-bottom: 0;padding:0px;">
-                                <li><a href="your/url/">视频稽查</a></li>
-                                <li><a href="your/url/">已稽查</a></li>
-                                <li class="active">稽查详情</li>
-                            </ol>-->
+                            <ol class="breadcrumb" id="breadcrumb_menu" style="margin-bottom: 0;padding:0px;">
+                               
+                            </ol>
                         </div>
                         <div class="panel-body" id="main_content">
                             <!--<link rel="import" href="/view/mytask/unchecked.html?__inline">-->

+ 1 - 0
VisualInspection/view/mytask/check.html

@@ -181,6 +181,7 @@
         </div>
     </div>
 </div>
+<img id="userBigImg" style="display:none;margin-right:20px;"/>
 <script>
     var curVideo;
     $(document).ready(function () {

+ 1 - 2
VisualInspection/view/mytask/taskDetail.html

@@ -94,6 +94,7 @@
 </style>
 <script>
     $(document).ready(function() {
+        addBreadMenu("/view/mytask/taskDetail.html", "稽查详情");
         checkAuth();
         $("#name").html($.checkTask.name);
         $("#checkman").html($.checkTask.checkman_name);
@@ -113,8 +114,6 @@
 
         genFlow();
         queryScores();
-       
-       
     });
     
     //初始化表行按钮

+ 1 - 1
VisualInspection/view/statistics/static1.html

@@ -1,5 +1,5 @@
 <img src="/images/static1.png"></img>
 <script type="text/javascript">
 
- $("#main_content_title").html("总体考核分析")
+//  $("#main_content_title").html("总体考核分析")
 </script>

+ 1 - 1
VisualInspection/view/statistics/static2.html

@@ -1,5 +1,5 @@
 <img src="/images/static2.png"></img>
 <script type="text/javascript">
 
- $("#main_content_title").html("考核扣分等级分析")
+//  $("#main_content_title").html("考核扣分等级分析")
 </script>

+ 1 - 1
VisualInspection/view/statistics/static3.html

@@ -1,5 +1,5 @@
 <img src="/images/static3.png"></img>
 <script type="text/javascript">
 
- $("#main_content_title").html("考核问题分布")
+//  $("#main_content_title").html("考核问题分布")
 </script>

+ 1 - 1
VisualInspection/view/statistics/static4.html

@@ -1,5 +1,5 @@
 <img src="/images/static4.png"></img>
 <script type="text/javascript">
 
- $("#main_content_title").html("员工排名分析")
+//  $("#main_content_title").html("员工排名分析")
 </script>

+ 1 - 1
VisualInspection/view/statistics/static5.html

@@ -1,5 +1,5 @@
 <img src="/images/static5.png"></img>
 <script type="text/javascript">
 
- $("#main_content_title").html("个人考核情况")
+//  $("#main_content_title").html("个人考核情况")
 </script>

+ 1 - 1
VisualInspection/view/term_management/charge_stuff_schedule.html

@@ -104,7 +104,7 @@
     </div>
 </div>
 
-<div id="add_detail_info" style="width:700px;">
+<div id="add_detail_info" style="width:700px;display:none;">
     <div id="lists">
          <div class="datatable" style="padding-left:20px;padding-top:10px;"></div>
          <div class="form-group">

+ 7 - 3
VisualInspection/view/term_management/check_stuff_schedule.html

@@ -33,8 +33,8 @@
                     </div>
                     <div class="form-group">
                         <label for="exampleInputAccount4" class="col-sm-offset-1 col-sm-2">人员详情</label>
-                        <div class="col-md-6 col-sm-8">
-                            <div class="form-control class_team_4" id="team_detail" style="height:auto;min-height:32px;"></div>
+                        <div class="col-md-6 col-sm-8 cc" id="relash">
+                            <input type="text" class="form-control" id="team_detail" >
                         </div>
                     </div>
                     <hr>
@@ -52,10 +52,14 @@
 </div>
 </div>
 <!--对话框 结束-->
+
+<link rel="stylesheet" type="text/css" href="/css/user/userManager.css?__inline">
+
+<script type="text/javascript" src="/js/lib/combotree/icontains.js?__inline"></script>
+<script type="text/javascript" src="/js/lib/combotree/comboTreePlugin.js?__inline"></script>
 <link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/calendar/zui.calendar.css">   
 <script src="/node_modules/zui/dist/lib/calendar/zui.calendar.js"></script>
 <script src="/js/teamClass/check_team_schedule.js"></script>
-
 <style type="text/css" >
     span.time{
         display: none !important ;

+ 1 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/dao/master/TeamClassDao.java

@@ -17,6 +17,7 @@ public interface TeamClassDao  {
     public List<TeamClass> getClassList(TeamClass teamClass);
     public void insert(TeamClass teamClass);
     public void update(TeamClass teamClass);
+    public void updateUserIds(TeamClass teamClass);
     public void delete(Long id);
     public void deleteByDeptWorkdate(TeamClass teamClass);
     

+ 3 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/TaskMapper.xml

@@ -60,6 +60,7 @@
         	<if test="end_time != null">AND end_time &lt;= #{end_time}</if>
         	<if test="checked_dept != null">AND checked_dept = #{checked_dept}</if>
         	<if test="checkman != null">AND checkman = #{checkman}</if>
+        	<if test="recheckman != null">AND recheckman = #{recheckman}</if>
         	<if test="checked_person != null">AND checked_person = #{checked_person}</if>
     </select>
     
@@ -74,6 +75,7 @@
         	<if test="end_time != null">AND end_time &lt;= #{end_time}</if>
         	<if test="checked_dept != null">AND checked_dept = #{checked_dept}</if>
         	<if test="checkman != null">AND checkman = #{checkman}</if>
+        	<if test="recheckman != null">AND recheckman = #{recheckman}</if>
         	<if test="checked_person != null">AND checked_person = #{checked_person}</if>
     </select>
 
@@ -89,6 +91,7 @@
         	<if test="end_time != null">AND end_time &lt;= #{end_time}</if>
         	<if test="checked_dept != null">AND checked_dept = #{checked_dept}</if>
         	<if test="checkman != null">AND checkman = #{checkman}</if>
+        	<if test="recheckman != null">AND recheckman = #{recheckman}</if>
         	<if test="checked_person != null">AND checked_person = #{checked_person}</if>
     </select>
     <insert id="insert" parameterType="com.xintong.visualinspection.bean.Task" >

+ 21 - 8
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/TeamClassMapper.xml

@@ -55,17 +55,30 @@
     <update id="update" parameterType="com.xintong.visualinspection.bean.TeamClass" >
         UPDATE
         sys_team_class
-        SET
-        <if test="work_date != null">work_date = #{work_date},</if>
-        <if test="dept_id != null">dept_id = #{dept_id},</if>
-        <if test="user_ids != null">user_ids = #{user_ids},</if>
-        <if test="class_type != null">class_type = #{class_type},</if>
-        <if test="team_id != null">team_id = #{team_id},</if>
-        <if test="start_time != null">start_time = #{start_time},</if>
-        <if test="end_time != null">end_time = #{end_time}</if>
+        SET id=id 
+        <if test="work_date != null">,work_date = #{work_date}</if>
+        <if test="dept_id != null">,dept_id = #{dept_id}</if>
+        <if test="user_ids != null">,user_ids = #{user_ids}</if>
+        <if test="class_type != null">,class_type = #{class_type}</if>
+        <if test="team_id != null">,team_id = #{team_id},</if>
+        <if test="start_time != null">,start_time = #{start_time}</if>
+        <if test="end_time != null">,end_time = #{end_time}</if>
         WHERE
         id = #{id}
     </update>
+    
+     <update id="updateUserIds" parameterType="com.xintong.visualinspection.bean.TeamClass" >
+        UPDATE
+        sys_team_class
+        SET id=id 
+        <if test="dept_id != null">,dept_id = #{dept_id}</if>
+        <if test="user_ids != null">,user_ids = #{user_ids}</if>
+        <if test="class_type != null">,class_type = #{class_type}</if>
+        <if test="start_time != null">,start_time = #{start_time}</if>
+        <if test="end_time != null">,end_time = #{end_time}</if>
+        WHERE
+        team_id = #{team_id} and work_date = #{work_date}
+    </update>
 
     <delete id="delete" parameterType="java.lang.Long" >
         DELETE FROM

+ 91 - 7
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/UserClassServiceImpl.java

@@ -8,9 +8,11 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.mysql.jdbc.StringUtils;
+import com.xintong.visualinspection.bean.TeamClass;
 import com.xintong.visualinspection.bean.UnregularUserClass;
 import com.xintong.visualinspection.bean.User;
 import com.xintong.visualinspection.bean.UserClass;
+import com.xintong.visualinspection.dao.master.TeamClassDao;
 import com.xintong.visualinspection.dao.master.UserClassDao;
 import com.xintong.visualinspection.service.BaseService;
 import com.xintong.visualinspection.service.UserClassService;
@@ -28,12 +30,31 @@ public class UserClassServiceImpl extends BaseService implements UserClassServic
     @Autowired
     UserClassDao userClassDao ;
     
+    @Autowired
+    TeamClassDao teamClassDao;
+    
 	@Override
 	public void insertList(List<UserClass> list) {
 		// TODO Auto-generated method stub
+		StringBuffer nightClassStuff = new StringBuffer();
+		StringBuffer middleClassStuff = new StringBuffer();
+		StringBuffer mooringClassStuff = new StringBuffer();
+		Long mooringTeamId = 0L , middleTeamId =0L , nightTeamId =0L;
 		for(int i=0;i<list.size();i++){
-			if(list.get(i).getList()!=null && list.get(i).getList().size()>0 )
-				list.get(i).setClass_flag(1);
+			if(list.get(i).getList()!=null && list.get(i).getList().size()>0 ){
+				list.get(i).setClass_flag(1);				
+			}
+			UserClass objTemp = list.get(i);
+			if(objTemp.getClass_type() ==1){
+				mooringTeamId = objTemp.getTeam_id();
+				mooringClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==2){
+				middleTeamId = objTemp.getTeam_id();
+				middleClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==3){
+				nightTeamId = objTemp.getTeam_id();
+				nightClassStuff.append(objTemp.getUser_id()+",");
+			}
 			userClassDao.insert(list.get(i));
 			List<UnregularUserClass> obj = list.get(i).getList() ;
 			if(obj!=null && obj.size()>0){
@@ -49,17 +70,58 @@ public class UserClassServiceImpl extends BaseService implements UserClassServic
 				userClassDao.insert_detail(obj);
 			}
 		}
+		if(nightClassStuff.toString()!=""){
+			// 更新晚班人员
+			TeamClass teamClass = new TeamClass();
+			teamClass.setTeam_id(nightTeamId);
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setUser_ids(nightClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(middleClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setTeam_id(middleTeamId);
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setUser_ids(middleClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(mooringClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setTeam_id(mooringTeamId);
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setUser_ids(mooringClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
 	}
-
+	
 	@Override
 	public void updateList(List<UserClass> list) {
 		userClassDao.delete(list.get(0));
 		userClassDao.deleteDetail(list.get(0));
+		
+		StringBuffer nightClassStuff = new StringBuffer();
+		StringBuffer middleClassStuff = new StringBuffer();
+		StringBuffer mooringClassStuff = new StringBuffer();
+		Long mooringTeamId = 0L , middleTeamId =0L , nightTeamId =0L;
+		
 		for(int i=0;i<list.size();i++){
-			if(list.get(i).getList()!=null && list.get(i).getList().size() >0 )
-				list.get(i).setClass_flag(1);
-			else
-				list.get(i).setClass_flag(0);
+			if(list.get(i).getList()!=null && list.get(i).getList().size() >0 ){
+				list.get(i).setClass_flag(1);				
+			}
+			else{
+				list.get(i).setClass_flag(0);				
+			}
+			UserClass objTemp = list.get(i);
+			if(objTemp.getClass_type() ==1){
+				mooringTeamId = objTemp.getTeam_id();
+				mooringClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==2){
+				middleTeamId = objTemp.getTeam_id();
+				middleClassStuff.append(objTemp.getUser_id()+",");
+			}else if(objTemp.getClass_type() ==3){
+				nightTeamId = objTemp.getTeam_id();
+				nightClassStuff.append(objTemp.getUser_id()+",");
+			}
 			userClassDao.insert(list.get(i));
 			List<UnregularUserClass> obj = list.get(i).getList() ;
 			if(obj!=null && obj.size() > 0){
@@ -75,6 +137,28 @@ public class UserClassServiceImpl extends BaseService implements UserClassServic
 				userClassDao.insert_detail(obj);
 			}
 		}
+		if(nightClassStuff.toString()!=""){
+			// 更新晚班人员
+			TeamClass teamClass = new TeamClass();
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setTeam_id(nightTeamId);
+			teamClass.setUser_ids(nightClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(middleClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setTeam_id(middleTeamId);
+			teamClass.setUser_ids(middleClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
+		if(mooringClassStuff.toString()!=""){
+			TeamClass teamClass = new TeamClass();
+			teamClass.setWork_date(list.get(0).getWork_date());
+			teamClass.setTeam_id(mooringTeamId);
+			teamClass.setUser_ids(mooringClassStuff.toString());
+			teamClassDao.updateUserIds(teamClass);
+		}
 	}
 
 	@Override

+ 7 - 4
VisualInspection_server/src/main/resources/application.properties

@@ -2,17 +2,18 @@ server.port=8089
 spring.thymeleaf.cache=false
 context.listener.classes=com.xintong.SystemInit
 
-master.datasource.url = jdbc:mysql://10.112.0.199:7002/visualinspection?useUnicode=true&characterEncoding=utf-8
+#master.datasource.url = jdbc:mysql://10.112.0.199:3306/visualinspection?useUnicode=true&characterEncoding=utf-8
 #master.datasource.url = jdbc:mysql://git.topm.win:6381/visualinspection?useUnicode=true&characterEncoding=utf-8
-#master.datasource.url = jdbc:mysql://192.168.8.236:3306/visualinspection?useUnicode=true&characterEncoding=utf-8
+master.datasource.url = jdbc:mysql://10.112.0.199:7002/visualinspection?useUnicode=true&characterEncoding=utf-8
 master.datasource.username = root
 master.datasource.password = root
 master.datasource.driver-class-name = com.mysql.jdbc.Driver
 master.mapper-locations=classpath:com/xintong/visualinspection/mapper/master/*.xml
 
 ## \u7528\u6237\u6570\u636e\u6e90\u914d\u7f6e
-cluster.datasource.url=jdbc:mysql://10.112.0.199:7002/yanhai?useUnicode=true&characterEncoding=utf8
+#cluster.datasource.url=jdbc:mysql://10.112.0.199:3306/yanhai?useUnicode=true&characterEncoding=utf8
 #cluster.datasource.url=jdbc:mysql://git.topm.win:6381/yanhai?useUnicode=true&characterEncoding=utf8
+cluster.datasource.url=jdbc:mysql://10.112.0.199:7002/yanhai?useUnicode=true&characterEncoding=utf8
 cluster.datasource.username=root
 cluster.datasource.password=root
 cluster.datasource.driver-class-name = com.mysql.jdbc.Driver
@@ -57,7 +58,9 @@ spring.redis.host=10.112.0.199
 #spring.redis.host=git.topm.win
 # Redis\u670d\u52a1\u5668\u8fde\u63a5\u7aef\u53e3
 #spring.redis.port=6380
-spring.redis.port=7003 
+
+spring.redis.port=7003
+#spring.redis.port=6379 
 # Redis\u670d\u52a1\u5668\u8fde\u63a5\u5bc6\u7801\uff08\u9ed8\u8ba4\u4e3a\u7a7a\uff09
 spring.redis.password=xintong
 # \u8fde\u63a5\u6c60\u6700\u5927\u8fde\u63a5\u6570\uff08\u4f7f\u7528\u8d1f\u503c\u8868\u793a\u6ca1\u6709\u9650\u5236\uff09