MSI\liwei 7 лет назад
Родитель
Сommit
146f5c38dd

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

@@ -399,7 +399,8 @@ function setWreckerGroupSelect(div, selectId) {
 }
 
 function setWreckerGroupSelectValue(data, div, selectId) {
-    var optStr = '<option value="">全部</option>';
+    //var optStr = '<option value="">全部</option>';
+    var optStr = '';
     for (var i in data) {
         if (data[i].deptid == selectId)
             optStr += '<option value="' + data[i].deptid + '" selected="selected">' + data[i].name + '</option>';

+ 285 - 237
VisualInspection/qzd/js/task/add.js

@@ -1,7 +1,8 @@
 var selectedData = { cols: [], array: [] };
 var checkusersselect = null;
-var checkuserlist = null;
+var checkuserlist = new Array();
 var tabledatagride = null;
+var rowsDate;
 $(document).ready(function() {
     $.jeDate("#month_date", {
         isinitVal: true,
@@ -9,17 +10,18 @@ $(document).ready(function() {
     });
     $("#month_date").val(getCurrentTimeFormat());
     var checked_dept = null;
-    if (roleContains("FWQ")) {
+    if (roleContains("QZD")) {
         checked_dept = getCurrentUser().organid;
     }
-    setSASelecttemp("#qzd", checked_dept);
+    setWreckerGroupSelect("#qzd", checked_dept);
+    getpeople();
 
     //默认值 $("#qzd").val()
     var dd = 89;
     if ($("#qzd").val() != "") {
         dd = $("#qzd").val();
     }
-    inittAreaable($("#month_date").val(), dd);
+    inittAreaable($("#month_date").val(), $("#qzd").val(),$("#qzdpeople").val());
 
     initselecttable();
 
@@ -37,14 +39,13 @@ $(document).ready(function() {
 
 });
 
-var arealist = null;
+var recordlist = null;
 var stimemonth = null;
 
 function initselecttable() {
     selectedData = { cols: [], array: [], cache: false };
-    selectedData.cols.push({ width: 0.3, name: "time", label: '时间', style: { 'text-align': 'center', 'line-height': '34px' } });
-    selectedData.cols.push({ width: 0.2, name: "dept_name", label: '部门', style: { 'text-align': 'center', 'line-height': '34px' } });
-    selectedData.cols.push({ width: 0.2, name: "area_name", label: '区域', style: { 'text-align': 'center', 'line-height': '34px' } });
+    selectedData.cols.push({ width: 0.2, name: "name", label: '人员', style: { 'text-align': 'center', 'line-height': '34px' } });
+    selectedData.cols.push({ width: 0.4, name: "car", label: '任务名称', style: { 'text-align': 'center', 'line-height': '34px' } });
     selectedData.cols.push({ width: 0.3, name: "option", label: '操作', html: true, style: { 'text-align': 'center', 'line-height': '34px' } });
     reloadtable();
 
@@ -63,200 +64,194 @@ function reloadtable() {
 var layindex = null;
 var taskMap = new HashMap();
 
-function inittAreaable(time, dept) {
-
+function inittAreaable(time, dept, people) {
     layindex = layer.load(0, { shade: false });
     var t = time.replace("/", "-") + "";
     var endtime = moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss");
     var starttime = moment(moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss").subtract(1, 'month'));
 
 
-    var param1 = { "start_time": starttime.format("YYYY-MM-DD HH:mm:ss"), "end_time": endtime.format("YYYY-MM-DD HH:mm:ss"), "checked_dept": dept }
-    post_common_service("/f/task/getall/0/0", param1, function(taskdata) {
-
+    var param1 = { "startTime":new Date(starttime), "endTime": new Date(endtime), "dept": dept }
+    post_common_service("/q/record/getall/0/0", param1, function(taskdata) {
         taskMap = new HashMap();
+        recordlist = taskdata;
         taskdata.forEach(t => {
-            var key = t.area_id + "_" + moment(t.start_time).format("YYYY-MM-DD");
-            if (taskMap.get(key) != null) {
-                var list = taskMap.get(key);
-                list.push(t);
-                taskMap.set(key, list);
-            } else {
-                var list = [];
-                list.push(t);
-                taskMap.set(key, list);
-            }
-
+            var user = t.users.split(",");
+              for(var i=0;i<user.length;i++){
+                   var key = user[i]+"_"+moment(t.received_time).format("YYYY-MM-DD");
+                   if (taskMap.get(key) != null) {
+                    var list = taskMap.get(key);
+                    list.push(t);
+                    taskMap.set(key, list);
+                } else {
+                    var list = [];
+                    list.push(t);
+                    taskMap.set(key, list);
+                }
+              }
         });
 
-
-        var param = { "dept_id": dept };
-        post_common_service('/f/area/getall', param, function(redata) {
-
-            layer.close(layer.index);
-            var data = redata.areas;
-            checkuserlist = redata.checkusers;
-
-            var datac = { cols: [], array: [] };
-
-            var days = endtime.diff(starttime, 'days');
-
-            datac.cols.push({ width: 120, name: 'type', label: "", });
-
-            for (var i = 1; i <= days; i++) {
-                var temp = moment(moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss").subtract(1, 'month'));
-                var currentday = temp.add(i, "day");
-                var day = currentday.date();
-                datac.cols.push({ width: 80, name: "day_" + i, label: currentday.format("MM-DD"), html: true, className: "table_content" });
-            }
-            arealist = data;
-            stimemonth = time;
-
-            for (var index in data) {
-                var area = data[index];
-                var data_table = {};
-                data_table.type = area.name;
+        var userData = {
+            "organid": dept
+        }
+            UserGetList(userData, function(redata) { 
+                layer.close(layer.index);
+                var data ;
+                var people = $("#qzdpeople").val();
+                if( people != "全部"){
+                    for(var i in redata){
+                        if(people == redata[i].id){
+                            data = new Array();
+                            data[0]=redata[i];
+                        }
+                    }
+                }else{
+                    data = redata;
+                    rowsDate = redata;
+                }
+              //  checkuserlist = redata.checkusers;
+                var datac = { cols: [], array: [] };
+    
+                var days = endtime.diff(starttime, 'days');
+    
+                datac.cols.push({ width: 120, name: 'type', label: "", });
+    
                 for (var i = 1; i <= days; i++) {
-                    //内容
                     var temp = moment(moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss").subtract(1, 'month'));
                     var currentday = temp.add(i, "day");
-                    var key = area.id + "_" + currentday.format("YYYY-MM-DD");
-
-                    var temphtml = "";
-
-                    if (taskMap.get(key) != null) {
-                        //存在稽查记录
-                        var list = taskMap.get(key);
-                        var hasc = 0;
-                        var invc = 0;
-                        list.forEach(t => {
-                            if (t.check_status == 4 || t.check_status == 16 || t.check_status == 6) {
-                                //完成稽查
-                                hasc++;
+                    var day = currentday.date();
+                    datac.cols.push({ width: 80, name: "day_" + i, label: currentday.format("MM-DD"), html: true, className: "table_content" });
+                }
+               // arealist = data;
+                stimemonth = time;
+                var timedate = [
+                    {},
+                ]
+                var dataconfigs =  {
+                    C1: { className: "datagrid-cell-index", style: { 'text-align': 'center', } },               
+                    R0: { style: { 'text-align': 'center', 'line-height': '36px' } }
+                } 
+                var row = 1;
+                for (var index in rowsDate) {
+                    var people = rowsDate[index];
+                    var data_table = {};
+                    data_table.type = people.truename;
+                    var maxsize = 0;
+                    for (var i = 1; i <= days; i++) {
+                        //内容
+                        var temp = moment(moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss").subtract(1, 'month'));
+                        var currentday = temp.add(i, "day");
+                        var key = people.id + "_" + currentday.format("YYYY-MM-DD");
+                        var temphtml = "";
+                        if(taskMap.get(key) != null){
+                            if(taskMap.get(key).length > maxsize){
+                                 maxsize = taskMap.get(key).length;
                             }
-                            if (t.check_status == 22) {
-                                //存在无效任务
-                                invc++;
+                             for(var k in taskMap.get(key)){
+                                var record = taskMap.get(key)[k];
+                                var stime = moment(record.received_time).format("HH:mm");
+                                var etime = moment(record.back_time).format("HH:mm");
+                                if(record.check_status == 2){
+                                    temphtml = temphtml+'<div class="" data-toggle="buttons" id="div_' + people.id+ '_' + i + '" >' +
+                                    '<label class="btn btn-info3" style="font-size:10px;padding:5%;width:90%;margin:5%">' +
+                                    '<input type="checkbox" name="options" onchange="selectedTask(this)" id="' + people.id+'_' + i +'_'+k+'">'+stime+'-'+etime+
+                                    '</label>'+
+                                    "</div>";
+                                }else{
+                                temphtml = temphtml+'<div class="" data-toggle="buttons" id="div_' + people.id+ '_' + i + '" >' +
+                                           '<label class="btn btn-info2" style="font-size:10px;padding:5%;width:90%;margin:5%">' +
+                                           '<input type="checkbox" name="options" onchange="selectedTask(this)" id="' + people.id+'_' + i +'_'+k+'">'+stime+'-'+etime+
+                                           '</label>'+
+                                           "</div>";
                             }
-                        });
-                        //无效
-                        if (invc == list.length) {
-                            temphtml = '<div class="btn-group btn_c" data-toggle="buttons" id="div_' + area.id + '_' + i + '" >' +
-                                '<label class="btn btn-info6" >' +
-                                '<input type="checkbox" name="options" onchange="selectedTask(this)" id="' + area.id + '_' + i + '"> 无效' +
-                                '</label>';
-                        } else
-                        //已完成
-                        if (hasc + invc == list.length) {
-                            temphtml = '<div class="btn-group btn_c" data-toggle="buttons"  id="div_' + area.id + '_' + i + '">' +
-                                '<label class="btn btn-info5 " >' +
-                                '<input type="checkbox" name="options" onchange="selectedTask(this)" id="' + area.id + '_' + i + '"> 已稽查' +
-                                '</label>';
-                        } else {
-                            //进行中
-                            temphtml = '<div class="btn-group btn_c" data-toggle="buttons" id="div_' + area.id + '_' + i + '" >' +
-                                '<label class="btn btn-info3" >' +
-                                '<input type="checkbox" name="options" onchange="selectedTask(this)" id="' + area.id + '_' + i + '"> 稽查中' +
-                                '</label>';
+                             }  
                         }
-
-
-                    } else {
-                        //不存在稽查
-                        temphtml = '<div class="btn-group btn_c" data-toggle="buttons" id="div_' + area.id + '_' + i + '" >' +
-                            '<label class="btn btn-info2" >' +
-                            '<input type="checkbox" name="options" onchange="selectedTask(this)" id="' + area.id + '_' + i + '"> 待稽查' +
-                            '</label>';
+                       
+                        //eval("dataconfigs."+dkey+"="+cssValue);
+                        // if(i == 4 ){
+                        //     temphtml = '<div class="" data-toggle="buttons" id="div_' + people.id + '_' + i + '" >' +
+                        //      '<label class="btn btn-info2" style="font-size:10px;padding:5%;width:90%;margin:5%">' +
+                        //      "10:00-12:00"+
+                        //      '</label>'+
+                        //     "</div>";
+                        //     temphtml = temphtml+'<div class="" data-toggle="buttons" id="div_' + people.id + '_' + i + '" >' +
+                        //     '<label class="btn btn-info2" style="font-size:10px;padding:5%;width:90%;margin:5%">' +
+                        //     '<input type="checkbox" name="options" onchange="selectedTask(this)" id="' + people.id + '_' + i + '"> 10:00-12:00'+
+                        //     '</label>'+
+                        //    "</div>";
+                        // }else{
+                        //     //不存在稽查
+                        //     temphtml = '<div class="" data-toggle="buttons" id="div_' + people.id + '_' + i + '" >' +
+                        //     // '<label class="btn btn-info2" style="font-size:10px">' +
+                        //     // "10:00-12:00"+
+                        //     // '</label>';
+                        //     "</div>";
+                        // }
+                        data_table["day_" + i] = temphtml;
                     }
-
-                    data_table["day_" + i] = temphtml;
+                    if(maxsize > 1){ 
+                        var dkey = "R"+maxsize;
+                        var cssValue = {'rowspan': maxsize};
+                        eval("dataconfigs.R"+row+"="+"{'rowspan': "+maxsize+"}");
+                        rowsDate.splice(row,0,"无效");
+                        row = row+1;
+                    }else{
+                        row = row+1;
+                    }
+                    datac.array.push(data_table);
                 }
-                datac.array.push(data_table);
-            }
-
-            if (tabledatagride != null) {
-                tabledatagride.dataSource.data = null;
-                tabledatagride.setDataSource(datac);
-                tabledatagride.setPager(1, datac.array.length, datac.array.length);
-                tabledatagride.render();
-            } else {
-                $('#table_s').datagrid({
-                    dataSource: datac,
-                    states: { fixedLeftUntil: 1, fixedTopUntil: 0 },
-                    showRowIndex: false,
-
-                    onRender: function() {
-
-
-
-                        $(".btn_c").mouseover(function() {
-                            var tempids = this.id.split("_");
-                            var t = stimemonth.replace("/", "-") + "";
-                            var starttime = moment(moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss").subtract(1, 'month'));
-                            var ctime = starttime.add(tempids[2], "day");
-                            var key = tempids[1] + "_" + ctime.format("YYYY-MM-DD");
-                            if (taskMap.get(key) != null) {
-                                var temphtml = "";
-                                var list = taskMap.get(key);
-
-                                list.forEach(t => {
-                                    var startus = "";
-                                    if (t.check_status == 4 || t.check_status == 16 || t.check_status == 6) {
-                                        startus = "已完成";
-                                    } else
-                                    if (t.check_status == 22) {
-                                        startus = "无效";
-                                    } else {
-                                        startus = "进行中";
-                                    }
-                                    temphtml += '<tr><td>' + moment(t.start_time).format("HH:mm:ss") + '</td><td>' + moment(t.end_time).format("HH:mm:ss") + '</td><td>' + startus + '</td></tr>';
-                                });
-
-                                var thtml = '<table border=1 style="border:solid 1px;width:180px;"><tr><th>开始时间</th><th>结束时间</th><th>状态</th></tr>' + temphtml + '</table>';
-                                layer.tips(thtml, "#" + this.id, {
-                                    tips: [1, '#8e8e8e'],
-                                    time: 0,
-                                    width: '240px'
-                                });
-                            }
-                        });
-                        $(".btn_c").mouseout(function() {
-                            layer.close(layer.index);
-                        });
-
-
-                    },
-                    configs: {
-                        C1: { className: "datagrid-cell-index", style: { 'text-align': 'center', } },
-                        R0: { style: { 'text-align': 'center', 'line-height': '36px' } }
+                if (tabledatagride != null) {
+                    tabledatagride.dataSource.data = null;
+                    tabledatagride.setDataSource(datac);
+                    tabledatagride.setPager(1, datac.array.length, datac.array.length);
+                    tabledatagride.setConfigs(dataconfigs);
+                    tabledatagride.render();
+                } else {
+                    $('#table_s').datagrid({
+                        dataSource: datac,
+                        states: { fixedLeftUntil: 1, fixedTopUntil: 0 },
+                        showRowIndex: false,
+    
+                        onRender: function() {
+                        },
+                        configs: dataconfigs
+                    });
+                    tabledatagride = $('#table_s').data('zui.datagrid');
+                }
+    
+                var jcb = {
+                    "organid":"29"
+                }
+                UserGetList(jcb, function(jcbdata) { 
+                    console.log(jcbdata);
+                   // checkuserlist = jcbdata;
+                for (var index in jcbdata) {
+                    var p = jcbdata[index];
+                    if(p.roles[0].id == 5){
+                        p.title = p.truename;
+                        checkuserlist.push(p);
                     }
-                });
-                tabledatagride = $('#table_s').data('zui.datagrid');
-            }
-
-
-
-
-            for (var index in checkuserlist) {
-                var p = checkuserlist[index];
-                p.title = p.truename;
-            }
-
-
-            if (checkusersselect != null) {
-                reset();
-            } else {
-                checkusersselect = $('#check_users').comboTree({
-                    source: checkuserlist,
-                    isMultiple: true
-                });
-            }
-
+                }
+                console.log(checkuserlist);
+    
+                if (checkusersselect != null) {
+                    reset();
+                } else {
+                    checkusersselect = $('#check_users').comboTree({
+                        source: checkuserlist,
+                        isMultiple: true
+                    });
+                }
+            
+            });
         });
-
     });
 }
 
+function setdatagrid(){
+    
+}
+
 function reset() {
     initselecttable();
     var myDataGrid = $('#selected_table').data('zui.datagrid');
@@ -284,52 +279,58 @@ function reset() {
 
 function selectedTask(obj) {
     changeListItem(obj.id);
-
+  
 }
 
 function removeListItem(obj) {
     var ids = obj.id.split("delete_");
-
     $("#" + ids[1]).parent().removeClass("active");
     $("#" + ids[1]).prop("checked", false);
     changeListItem(ids[1]);
-
 }
 
 function changeListItem(id) {
+    console.log(taskMap);
+    var cobj;
     var tempids = id.split("_");
     var t = stimemonth.replace("/", "-") + "";
-    var starttime = moment(moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss").subtract(1, 'month'));
-    var ctime = starttime.add(tempids[1], "day");
-    var carea = null;
-    for (var i in arealist) {
-        var a = arealist[i];
-        if (a.id == tempids[0]) {
-            carea = a;
+     var temp = moment(moment(t + "-25T23:00:00", "YYYY-MM-DD HH:mm:ss").subtract(1, 'month'));
+     var currentday = temp.add(tempids[1], "day");
+    var taskMapid = tempids[0]+"_"+currentday.format("YYYY-MM-DD");
+    var cpeople;
+    for(var index in rowsDate){
+       var  obj = rowsDate[index];
+       if(obj.id == tempids[0]){
+           cpeople = obj;
+           // truename = obj.truename; 
+       }
+    }
+    for(var i in recordlist){ 
+        if(taskMap.get(taskMapid)[id.split("_")[2]].id == recordlist[i].id){
+           cobj = recordlist[i];
         }
     }
 
-
     if ($("#" + id).prop('checked')) {
-        addlisttable(carea, ctime, id);
+        activteChange(cobj,tempids);
+       addlisttable(cobj, taskMapid,id);
     } else {
-        removelisttable(carea, ctime);
+        activteRemove(cobj,tempids);
+        removelisttable(cobj, currentday.format("YYYY-MM-DD"));
     }
 }
 
 
-function addlisttable(area, time, id) {
-    var feeList = $.zui.store.get("cache_sa_station_list");
+function addlisttable(people, id,arryid) {
     var dept_info = null;
-    for (var index in feeList) {
-        var dept = feeList[index];
-        if (area.dept_id == dept.deptid) {
-            dept_info = dept;
-        }
-    }
     id = trim(id);
-    var btn = '<button class="btn btn-primary" type="button" onclick="removeListItem(this)" id="delete_' + id + '">删除</button>';
-    selectedData.array.push({ "time": time.format("YYYY-MM-DD"), "dept_name": dept_info.name, "area_name": area.name, "option": btn, areaInfo: area, deptInfo: dept_info });
+    var time = id.split("_")[1];
+    var record =  taskMap.get(id)[arryid.split("_")[2]];
+    var date = moment(record.received_time).format("MM/DD");
+    var stime = moment(record.received_time).format("HH:mm");
+     var etime = moment(record.back_time).format("HH:mm");
+    var btn = '<button class="btn btn-primary" type="button" onclick="removeListItem(this)" id="delete_' + arryid + '">删除</button>';
+    selectedData.array.push({"name": people.userNames, "car": date+' '+stime+"-"+etime+record.car_info+"清障任务", "option": btn, peopleinfo:people,time:time});
 
     var myDataGrid = $('#selected_table').data('zui.datagrid');
     myDataGrid.dataSource.data = null;
@@ -341,14 +342,14 @@ function addlisttable(area, time, id) {
     // $('#selected_table').data('zui.datagrid').renderData();
 }
 
-function removelisttable(area, time) {
-    for (var index in selectedData.array) {
-        var o = selectedData.array[index];
-        if (o != null && o.areaInfo.id == area.id && time.format("YYYY-MM-DD") == o.time) {
-            selectedData.array.splice(index, 1);
-        }
-    }
-    var myDataGrid = $('#selected_table').data('zui.datagrid');
+function removelisttable(people,time) {
+     for (var index in selectedData.array) {
+         var o = selectedData.array[index];
+         if (o != null && o.peopleinfo.id == people.id && time.format("YYYY-MM-DD") == o.time) {
+             selectedData.array.splice(index, 1);
+         }
+     }
+     var myDataGrid = $('#selected_table').data('zui.datagrid');
     myDataGrid.dataSource.data = null;
     myDataGrid.setDataSource(selectedData);
     myDataGrid.setPager(1, selectedData.array.length, selectedData.array.length);
@@ -360,7 +361,7 @@ function removelisttable(area, time) {
 
 
 function search() {
-    inittAreaable($("#month_date").val(), $("#qzd").val());
+    inittAreaable($("#month_date").val(), $("#qzd").val(),$("#qzdpeople").val());
 
 }
 
@@ -368,40 +369,87 @@ function search() {
 function addTask() {
     //获取列表
     var tasklist = selectedData.array;
-    var start_time = $("#starttime").val();
-    var end_time = $("#endtime").val();
-
-    if (start_time == "" || end_time == "") {
-        layer.msg('须选择稽查时间段!', {
-            time: 2000, //20s后自动关闭
-        });
-        return;
-    }
-    if (moment("2018-01-01 " + end_time).valueOf() - moment("2018-01-01 " + start_time).valueOf() < 15 * 60 * 1000) {
-        layer.msg('稽查时间段需满足15分钟以上!', {
-            time: 2000, //20s后自动关闭
-        });
-        return;
-    }
+    console.log(tasklist);
     if (tasklist.length < 1) {
-        layer.msg('未选择任务区域!', {
+        layer.msg('未选择清障记录!', {
             time: 2000, //20s后自动关闭
         });
         return;
     }
-
-
     var check_user_list = checkusersselect.getSelectedItemsId();
-    tasklist.forEach(t => {
-        t.start_time = t.time + " " + start_time;
-        t.end_time = t.time + " " + end_time;
+    var count = tasklist.length / check_user_list.length;
+    var u_index = 0;
+    var index = 0;
+    for(var i in tasklist){
+        var obj = tasklist[i];
+        if (index++ == count) {
+            u_index++;
+            if (u_index == check_user_list.length) {
+                u_index--;
+            }
+        }
+          var param = {
+               "name": obj.car,
+              "check_status": 2,
+             "start_time" :moment(obj.peopleinfo.received_time).format("YYYY-MM-DD HH:mm:ss"),
+               "end_time" : moment(obj.peopleinfo.back_time).format("YYYY-MM-DD HH:mm:ss"),
+               "checked_dept": obj.peopleinfo.dept,
+             "checkman" : parseInt(check_user_list[u_index]),
+              "record_id" : parseInt(obj.peopleinfo.id),
+               "checked_users" : obj.peopleinfo.users,
+               "rule_id" : 6      
+            }
+            console.log(param);
+         post_common_service('/q/task/add', param, function(redata) {
+         layer.msg('已添加', { icon: 1 });
+        //inittAreaable($("#month_date").val(), $("#qzd").val());
     });
+    }
+    // post_common_service('/f/task/add', param, function(redata) {
+    //     // layer.msg('已添加', { icon: 1 });
+    //     inittAreaable($("#month_date").val(), $("#qzd").val());
+    // });
+
+
+}
 
-    var param = { "userids": check_user_list, "checkAreaData": tasklist };
-    post_common_service('/f/task/add', param, function(redata) {
-        // layer.msg('已添加', { icon: 1 });
-        inittAreaable($("#month_date").val(), $("#qzd").val());
+function getpeople(){
+    var orginid = $("#qzd").val();
+    var userData = {
+        "organid": orginid
+    }
+    UserGetList(userData, function(data) {
+        var opstr ='<option>全部</option>';
+        for(var i in data){
+            opstr += "<option value='"+data[i].id+"'>"+data[i].truename+"</option>";
+        }
+        $(qzdpeople).html('');
+        $(qzdpeople).html(opstr);
     });
+}
 
+function activteChange(cobj,tempids){
+    var usersids = cobj.users.split(",");
+        if(usersids.length >1){
+            for(var j in usersids){
+                var objid = usersids[j]+"_"+tempids[1]+"_"+tempids[2];
+                if($("#" + objid).prop('checked') == false){
+                   $("#" + objid).parent().addClass("active");
+                   $("#" + objid).prop("checked", true);
+                }
+           }
+        }
+}
 
-}
+function activteRemove(cobj,tempids){
+    var usersids = cobj.users.split(",");
+        if(usersids.length >1){
+            for(var j in usersids){
+                var objid = usersids[j]+"_"+tempids[1]+"_"+tempids[2];
+                if($("#" + objid).prop('checked')){
+                   $("#" + objid).parent().removeClass("active");
+                   $("#" + objid).prop("checked", false);
+                }
+           }
+        }
+}

+ 194 - 0
VisualInspection/qzd/js/task/new.js

@@ -0,0 +1,194 @@
+var cur_status;
+var cur_page;
+var is_save;
+var user = $.zui.store.get("user")
+$("#fileupload").change(function() {
+    UpladFile();
+});
+
+function initTaskPage() {
+    initQueryParams();
+    initTableRowBtn();
+    queryTask();
+}
+
+function initQueryParams() {
+    // 仅选择日期
+    $.jeDate("#start_time", {
+        isinitVal: true,
+        format: 'YYYY/MM' // 分隔符可以任意定义,该例子表示只显示年月
+    });
+
+    $("#start_time").val(getCurrentTimeFormat());
+    var page_params = $.zui.store.get("page_params");
+    if (page_params && page_params.status) {
+        cur_status = page_params.status;
+    }
+
+    var checked_dept = null;
+    if (roleContains("FWQ")) {
+        checked_dept = getCurrentUser().organid;
+    }
+    setWreckerGroupSelect("#deptlist", checked_dept);
+    setWreckerGroupSelect("#dept", checked_dept);
+
+
+    if (hasRole(ROLE_JICHA_ADMIN) && cur_status == 4) {
+        $("#dispatchPatchBtn").show();
+        $("#dispatchAllNoScoreBtn").show();
+    }
+    if (roleContains("STATION") && cur_status == 5) {
+        $("#confirmPatchBtn").show();
+    }
+    $("#checkPersonDiv").show();
+
+    if (cur_status == 4 || cur_status == 5 || cur_status == 6) {
+        $("#hasScoreDiv").show();
+    }
+
+}
+//初始化表行按钮
+function initTableRowBtn() {
+    $.zui.store.set("task_table_btn_1", [{ func: 'checkUpdate', text: '修改',icon_class: ''},
+    { func: 'deleteRecord', text: '删除',icon_class: 'text-center' } 
+]);
+    $.zui.store.set("task_table_btn_2", [{ func: 'showCheck', text: '开始稽查', icon_class: 'icon-eye-open' }]);
+    // $.zui.store.set("task_table_btn_2", [{ func: 'showCheck', text: '开始稽查', icon_class: 'icon-eye-open' }]);
+    // $.zui.store.set("task_table_btn_3", [{ func: 'showCheck', text: '开始稽查', icon_class: 'icon-eye-open' }]);
+    // $.zui.store.set("task_table_btn_7", [{ func: 'showContinueCheck', text: '继续稽查', icon_class: 'icon-eye-open' }]);
+    // $.zui.store.set("task_table_btn_4", [{ func: 'showTaskDetail', text: '详情', icon_class: 'icon-tasks' },
+    //     { func: 'dispatchTaskById', text: '下发', icon_class: 'icon-signin' }
+    // ]);
+    // $.zui.store.set("task_table_btn_5", [{ func: 'showTaskDetail', text: '详情', icon_class: 'icon-tasks' }]);
+    // $.zui.store.set("task_table_btn_6", [{ func: 'showTaskDetail', text: '详情', icon_class: 'icon-tasks' }]);
+    // $.zui.store.set("task_table_btn_21", [{ func: 'showApplyDetail', text: '处理', icon_class: 'icon-hand-up' }]);
+}
+//查询任务
+function queryTask() {
+    console.log(user.roles[0]);
+    var t = getTimeByMonth(GV("#start_time"));
+    var data = {
+          "startTime": new Date(getMomentTimeFormat(t.starttime)),
+          "endTime":new Date(getMomentTimeFormat(t.endtime)),
+          "dept": $("#deptlist").val(),
+        // "check_status": cur_status
+    };
+    var hide = false;
+    if (hasRole(ROLE_QZD_ADMIN) || hasRole(ROLE_QZD) || hasRole(ROLE_JICHA) || roleContains('QZD')) {
+        hide = true;
+    }
+    var cols = [
+        { width: 80, text: '序号', type: 'number', flex: true, colClass: 'text-center', field: 'num' },
+        { width: 80, text: '清障队', type: 'string', flex: true,colClass: 'text-center', sort: 'down', field: 'deptName' },
+        { width: 80, text: '桩号', type: 'string', flex: true, colClass: 'text-center',sort: 'down', field: 'addr' },
+        { width: 80, text: '车牌号', type: 'string', flex: true, hide: hide, colClass: 'text-center', field: 'car_info' },
+        { width: 80, text: '客户信息', type: 'string', flex: true, sort: 'down',colClass: 'text-center', field: 'car_user_info' },
+        { width: 120, text: '接警时间', type: 'string', flex: true, sort: 'down',colClass: 'text-center', field: 'received_time' },
+        { width: 160, text: '出勤人员', type: 'string', flex: true, sort: 'down',colClass: 'text-center', field: 'userNames' },
+        // {width: 120, text: '状态', type: 'string', flex: true, colClass: '',field: 'check_status_name'}
+    ];
+    user.roles[0].id = 16;
+    if(user.roles[0].id == 1){
+        var colFunc = { width: 160, text: '操作', type: 'string', flex: true, field: 'id',colClass: 'text-center' };
+        colFunc.oper = $.zui.store.get("task_table_btn_1");
+        cols.push(colFunc);
+        $("#saveButton").show();
+    }else if(user.roles[0].id == 16 || user.roles[0].id == 17){
+        var colFunc = { width: 160, text: '操作', type: 'imagebutton', flex: true, field: 'pics',colClass: 'text-center' };
+        colFunc.oper = $.zui.store.get("task_table_btn_1");
+        cols.push(colFunc);
+    }
+    //只有下发才显示复选框
+    var checkable = false;
+    if ((hasRole(ROLE_JICHA_ADMIN) && cur_status == 4) || (roleContains("STATION") && cur_status == 5)) {
+        checkable = true;
+    }
+    // console.log("checkable:" + checkable);
+    // if (cur_status == 2 || cur_status == 3) {
+    //     data.check_status_arr = [2, 3];
+    //     data.check_status = null;
+    // }
+    taskTableObj = $('#task_list_table').mytable({
+        'cols': cols,
+        'checkable': checkable,
+        'url': "/q/record/getall/",
+        'param': data,
+        'pager': {
+            'p_cur': cur_page
+        },
+    });
+
+    $.zui.store.set('store_param_' + current_url, data);
+}
+
+
+function addTask(){
+    is_save = 0;
+    resert();
+    // var contenthtml =  base_ui_url+'qzd/view/task/addtask.html';
+    // document.getElementById("addrecord").href = contenthtml;
+    $('#addModal').modal('show');
+}
+
+function openUpload(){
+    return $("#fileupload").click();
+}
+
+
+function UpladFile() {
+    var fileObj = document.getElementById("fileupload").files[0]; // 获取文件对象
+    // var FileController = base_image_server_url +'fileServer/file/upload';// 接收上传文件的后台地址
+    // FormData 对象
+    // var form = new FormData();
+    // form.append("name", "hooyes");                        // 可以增加表单数据
+    // form.append("file", fileObj);                           // 文件对象
+    uploadFile(fileObj, "file", function(data) {
+        addPic(base_image_server_url + data.path);
+    }, function(error) {
+        console.log(error)
+    }, "task");
+}
+
+function checkUpdate(id){
+    is_save = "_"+id;
+    var data ={
+        "id":id
+    };
+    post_common_service('q/record/one', data, function(redata) {
+        $('#addModal').modal('show');
+        $("#type").val(redata.type);
+        $("#carinfo").val(redata.car_info);
+        time = moment(redata.arrive_time).format("YYYY-MM-DD HH:mm:ss");
+        $("#startTime").val(time);
+        $("#carUserinfo").val(redata.car_user_info);
+        $("#dept").val(redata.dept);
+        $("#carUserSatisfaction").val(redata.car_user_satisfaction);
+        var userids = redata.users.split(",");
+        for(var i in userids){
+            $('span[data-id="'+userids[i]+'"] input').click();
+        }
+        $("#recordUser").val(redata.userNames);
+        $("#addr").val(redata.addr);
+ })
+}
+
+function deleteRecord(id){
+    var data ={
+        "id":id
+    };
+    post_common_service('q/record/delete', data, function(redata) {
+        queryTask();
+ });
+} 
+
+function resert(){
+        $("#type").val('1');
+        $("#carinfo").val('');
+        $("#startTime").val('');
+        $("#carUserinfo").val('');
+        $("#dept").val('');
+        $("#carUserSatisfaction").val('');
+        $(".ComboTreeItemChlid").find("input").prop('checked', false);
+        $("#recordUser").val('');
+        $("#addr").val('');
+}

+ 65 - 16
VisualInspection/qzd/js/task/task_list.js

@@ -8,23 +8,60 @@ function initTaskPage() {
 }
 
 function initQueryParams() {
+    $("#start_time").datetimepicker({
+        language: "zh-CN",
+        weekStart: 1,
+        todayBtn: 1,
+        autoclose: 1,
+        todayHighlight: 1,
+        startView: 2,
+        minView: 2,
+        forceParse: 0,
+        format: "yyyy-mm-dd"
+    });
     // 仅选择日期
-    $.jeDate("#start_time", {
-        isinitVal: true,
-        format: 'YYYY/MM' // 分隔符可以任意定义,该例子表示只显示年月
+    $("#end_time").datetimepicker({
+        language: "zh-CN",
+        weekStart: 1,
+        todayBtn: 1,
+        autoclose: 1,
+        todayHighlight: 1,
+        startView: 2,
+        minView: 2,
+        forceParse: 0,
+        format: "yyyy-mm-dd"
     });
 
-    $("#start_time").val(getCurrentTimeFormat());
+    var store_params = $.zui.store.get('store_param_' + current_url);
+    var checked_dept = null;
+    if (store_params) {
+        checked_dept = store_params.checked_dept;
+
+        // $("#start_time").val(store_params.end_time.substr(0, 7));
+        $("#start_time").val(store_params.start_time.substr(0, 11));
+        $("#end_time").val(store_params.end_time.substr(0, 11));
+        $("#hasScoreList").val(store_params.hasScore);
+        cur_page = store_params.currentpage;
+    } else {
+        var cm = getCurrentRealTimeFormat();
+        var tyt = getTimeByMonth(cm);
+        $("#start_time").val((tyt.starttime.add(1, "d")).format("YYYY-MM-DD"));
+        $("#end_time").val(tyt.endtime.format("YYYY-MM-DD"));
+        // $("#start_time").val(getCurrentRealTimeFormat());
+    }
+
+
     var page_params = $.zui.store.get("page_params");
+
+
     if (page_params && page_params.status) {
         cur_status = page_params.status;
     }
 
-    var checked_dept = null;
     if (roleContains("FWQ")) {
         checked_dept = getCurrentUser().organid;
     }
-    setSASelect("#fsList", checked_dept);
+    setWreckerGroupSelect("#qzd", checked_dept);
 
 
     if (hasRole(ROLE_JICHA_ADMIN) && cur_status == 4) {
@@ -55,15 +92,17 @@ function initTableRowBtn() {
 }
 //查询任务
 function queryTask() {
-
-    var t = getTimeByMonth(GV("#start_time"));
+    var start_time = "";
+    if ($("#start_time").val()) start_time = (moment($("#start_time").val()).subtract(1, "d")).format("YYYY-MM-DD") + " 23:00:00";
+    var end_time = "";
+    if ($("#end_time").val()) end_time = $("#end_time").val() + " 23:00:00";
     var data = {
-        "start_time": getMomentTimeFormat(t.starttime),
-        "end_time": getMomentTimeFormat(t.endtime),
-        "checked_dept": $("#fsList").val(),
+        "start_time": (start_time),
+        "end_time": (end_time),
+        "checked_dept": $("#qzd").val(),
         "check_status": cur_status
     };
-    // console.log(data);
+     console.log(data);
     var hide = false;
     if (hasRole(ROLE_QZD_ADMIN) || hasRole(ROLE_QZD) || hasRole(ROLE_JICHA) || roleContains('QZD')) {
         hide = true;
@@ -92,7 +131,7 @@ function queryTask() {
     taskTableObj = $('#task_list_table').mytable({
         'cols': cols,
         'checkable': checkable,
-        'url': "/f/task/getall/",
+        'url': "/q/task/getall/",
         'param': data,
         'pager': {
             'p_cur': cur_page
@@ -108,7 +147,7 @@ function showCheck(id) {
     $.checkTask = getItemByIdFromArr(id, $('#task_list_table').mytable('getTableData'));
     $.checkTask.appeal = null;
     //开始稽查
-    no_return_common_service('/f/task/update', { "id": $.checkTask.id, "check_status": 3 });
+    no_return_common_service('/q/task/update', { "id": $.checkTask.id, "check_status": 3 });
 
     changePage("/qzd/view/task/check.html", taskTableObj);
 }
@@ -164,6 +203,7 @@ function dispatchTaskPatch() {
 
 //下发单条任务
 function dispatchTaskById(id) {
+    alert(id);
     layer.confirm('确定下发任务?', {
         btn: ['确定', '取消'] //按钮
     }, function() {
@@ -171,7 +211,7 @@ function dispatchTaskById(id) {
             "id": id,
             "check_status": 5
         }
-        no_return_common_service('/f/task/dispatchById', param, function(data) {
+        no_return_common_service('/q/task/dispatchById', param, function(data) {
             queryTask();
             layer.msg(data, {
                 time: 2000 //20s后自动关闭
@@ -217,7 +257,7 @@ function confirmTaskPatch() {
     layer.confirm('确定确认选中任务?', {
         btn: ['确定', '取消'] //按钮
     }, function() {
-        no_return_common_service('/f/task/confirm', param, function(data) {
+        no_return_common_service('/q/task/confirm', param, function(data) {
             queryTask();
             layer.msg(data, {
                 time: 2000 //20s后自动关闭
@@ -226,4 +266,13 @@ function confirmTaskPatch() {
     }, function(index) {
         layer.close(index);
     });
+}
+
+
+function gettask(){
+    param={"check_status":2};
+    post_common_service('/q/task/getall/0/0', param, function(redata) {
+      console.log(redata);
+       //inittAreaable($("#month_date").val(), $("#qzd").val());
+   });
 }

+ 123 - 0
VisualInspection/qzd/view/addrecord.html

@@ -0,0 +1,123 @@
+<script type="text/javascript" src="/node_modules/zui/dist/lib/uploader/zui.uploader.min.js?__inline">
+</script>
+<link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/uploader/zui.uploader.min.css">
+<script type="text/javascript" src="/js/user/addUser.js?__inline"></script>
+<link rel="stylesheet" type="text/css" href="/css/user/addUser.css?__inline">
+<link rel="stylesheet" type="text/css" href="/css/user/userManager.css?__inline">
+
+
+<script type="text/javascript" src="/js/lib/imageupload/js/imgUp.js?__inline"></script>
+<link rel="stylesheet" type="text/css" href="/js/lib/imageupload/css/common.css?__inline">
+<link rel="stylesheet" type="text/css" href="/js/lib/imageupload/css/index.css?__inline">
+
+<div class="container-fluid ">
+    <form class="form-horizontal">
+        <div class="form-group" style="margin-bottom:0">
+            <div class="col-md-8" style="padding:0px;">
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3 ll required">账号:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_name" class="form-control" placeholder="账号" maxlength="20">
+                    </div>
+                </div>
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3 ll">真实姓名:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_true_name" class="form-control" placeholder="真实姓名" maxlength="20">
+                    </div>
+                </div>
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3 ll">工号:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_workno" class="form-control" placeholder="工号" maxlength="20">
+                    </div>
+                </div>
+
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3 ll ">密码:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_password" class="form-control" placeholder="密码" maxlength="20">
+                    </div>
+                </div>
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3 ll ">确定密码:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_confirm_password" class="form-control" placeholder="确认密码" maxlength="20">
+                    </div>
+                </div>
+
+
+
+            </div>
+            <div class="col-md-4" style="padding:0px;">
+                <div class="row hide" id="user_img_pre">
+                    <section class='up-section fl loading' id="user_img_pre2">
+                    </section>
+                    <!--<img id="user_img" src="http://zui.sexy/docs/img/img1.jpg" class="img-rounded" alt="圆角图片">-->
+                </div>
+                <div class="row" id="user_img_add">
+
+                    <section class="z_file fl">
+                        <img src="/js/lib/imageupload/img/a11.png" class="add-img">
+                        <input type="file" name="file" id="file" class="file" value="" accept="image/jpg,image/jpeg,image/png,image/bmp" multiple />
+                    </section>
+
+
+                </div>
+            </div>
+        </div>
+
+
+
+        <!--<div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2">生日:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_birth" class="form-control" placeholder="生日">
+            </div>
+        </div>-->
+
+
+        <div class="form-group">
+            <label for="exampleInputPassword4" class="col-sm-3 ll required">用户角色: </label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_role_select" class="form-control" placeholder="请选择角色">
+
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputPassword4" class="col-sm-3  ll required">组织机构: </label>
+            <div class="col-md-10 col-sm-10">
+                <div id="user_dept_select">选择部门</div>
+
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2  ll">手机:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_mobile" class="form-control" placeholder="手机号" maxlength="11">
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2  ll">职位:</label>
+            <div class="col-md-10 col-sm-10">
+                <select id="user_position" data-placeholder="选择职位" class="chosen-select form-control">
+
+                </select>
+                <!-- <input type="text" id="user_position" class="form-control" placeholder="职位"> -->
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2  ll">身份证:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_idno" class="form-control" placeholder="身份证" maxlength="18">
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2  ll">邮箱:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_email" class="form-control" placeholder="邮箱" maxlength="50">
+            </div>
+        </div>
+
+    </form>
+</div>

+ 47 - 16
VisualInspection/qzd/view/record/record_list.html

@@ -1,31 +1,62 @@
-<link href="/qzd/css/record/record.css?__inline" rel="stylesheet" />
-<script src="/qzd/js/record/record.js?__inline"></script>
+<script src="/js/statistics/common_statistic.js?__inline"></script>
+<script src="/qzd/js/task/new.js"></script>
+<style>
+   .button_new{
+           width: 50px
+   }
 
+</style>
 <div class="container-fluid ">
     <div class="row">
         <form class="form-horizontal" style="margin:0px;">
             <div class="form-group" style="margin:0px;">
-                <div class="form-group col-sm-3">
-                    <label for="exampleInputAccount1" class="ll" style="text-align: left;padding-right:0">月份:</label>
-                    <input type="text" id="start_time" class="form-control form-date ll" placeholder="选择月份">
+                <div class="form-group col-sm-2">
+                    <label for="exampleInputAccount1" class="col-sm-4" style="text-align: left;padding-right:0">时间:</label>
+                    <div class="col-sm-8">
+                        <input type="text" id="start_time" class="form-control form-date" placeholder="选择周期">
+                    </div>
                 </div>
-                <div class="form-group col-sm-3">
-                    <label for="exampleInputAccount1" class="ll">部门:</label>
-                    <select class="form-control ll" id="fsList"></select>
-                    <button class="btn btn-primary llbtn" type="button" onclick="">查询</button>
+                <div class="form-group col-sm-2">
+                    <label for="exampleInputAccount1" class="col-sm-4">部门:</label>
+                    <div class="col-sm-8">
+                        <select class="form-control" id="deptlist">
+                        </select>
+                    </div>
                 </div>
 
-                <div class="col-sm-6 v_r">
-                    <button class="btn btn-primary " type="button" onclick="">新增清障记录</button>
+
+                <div class="form-group col-sm-2">
+                    <button class="btn btn-info2 col-sm-1" style="width:80px;" type="button" onclick="queryTask()" style="">查询</button>
                 </div>
-            </div>
+                <div class="form-group col-sm-2" style="float: right">
+                <button id="saveButton" class="btn btn-info2 col-sm-1" style="height:40px;width:90px;display: none" type="button" onclick="addTask()" >新增</button>
+                </div>
+            </div>  
         </form>
     </div>
+    <hr style="margin-top:0px;">
 
-    <div class="row" style="margin-top: 20px;">
-
-        <div class="datatable" id="record_list_table"></div>
+    <div class="datatable" id="task_list_table"></div>
+</div>
+<script>
+    $(document).ready(function() {
+        initTaskPage();
+    });
+</script>
 
+<div class="modal fade" id="addModal" style="height: 800px">
+    <div class="modal-dialog">
+        <div class="modal-content">
+            <div class="modal-header">
+                <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">关闭</span></button>
+                <h4 class="modal-title">新增清障记录</h4>
+            </div>
+            <div class="modal-body">
+                <link id="addrecord" rel="import" href="/qzd/view/task/addtask.html?__inline">
+            </div>
+            <div class="modal-footer" style="border-color: white">
+                <!-- <button type="button" id="dept_add_btn" class="btn btn-primary" onclick="addDept()">添加</button> -->
+            </div>
+        </div>
     </div>
-
 </div>

+ 40 - 23
VisualInspection/qzd/view/task/add.html

@@ -10,11 +10,10 @@
     .table_content {
         padding: 0;
     }
-    
     .btn_c,
     .btn_c label {
-        width: 100% !important;
-        height: 100% !important;
+        width: 80% !important;
+        height: 80% !important;
         border-radius: 0;
     }
     
@@ -22,10 +21,15 @@
     table th {
         text-align: center;
     }
+    .divstyle{
+        width: 60px;
+        height: 20px;
+        float: left;
+    }
 </style>
 
 <div class="container-fluid ">
-    <div class="row">
+    <div class="row" >
 
         <span style="float: left;
         padding-top: 5px;">时间:</span>
@@ -33,9 +37,14 @@
             <input id="month_date" class="form-control form-date" type="text" placeholder="请选择" style="height:30px;">
         </div>
         <span style="float: left;
-        padding-top: 5px;">服务区:</span>
+        padding-top: 5px;">部门:</span>
+        <div class="div-station">
+            <select class="form-control" id="qzd" onchange="getpeople()"></select>
+        </div>
+        <span style="float: left;
+        padding-top: 5px;">人员:</span>
         <div class="div-station">
-            <select class="form-control" id="qzd"></select>
+            <select class="form-control" id="qzdpeople"></select>
         </div>
 
         <div class="col-xs-1">
@@ -48,6 +57,30 @@
     <div class="row" style="height: 400px;">
         <div class="datagrid" id="table_s" data-checkable="false" data-sortable="false"></div>
     </div>
+    <br/>
+    <div class="row">
+        <div class="col-xs-2">
+             <div class="divstyle" style="background-color: white"></div><span style="float: left;">&nbsp;&nbsp;未上传视频</span>
+        </div> 
+        <div class="col-xs-2">
+                <div class="divstyle" style="background-color: #03b8cf"></div><span style="float: left;">&nbsp;&nbsp;上传视频未稽查</span>
+        </div> 
+        <div class="col-xs-2">
+            <div class="divstyle" style="background-color: gray"></div><span style="float: left;">&nbsp;&nbsp;已选任务</span>
+        </div> 
+    </div>
+    <br/>
+    <div class="row">
+            <div class="col-xs-2">
+                 <div class="divstyle" style="background-color: red"></div><span style="float: left;">&nbsp;&nbsp;已稽查</span>
+            </div> 
+            <div class="col-xs-2">
+                    <div class="divstyle" style="background-color: green"></div><span style="float: left;">&nbsp;&nbsp;稽查中</span>
+            </div> 
+            <div class="col-xs-2">
+                <div class="divstyle" style="background-color: blue"></div><span style="float: left;">&nbsp;&nbsp;无效</span>
+            </div> 
+        </div>
     <div class="row">
         <div class="col-xs-6" style="">
             <div class="row">
@@ -59,23 +92,7 @@
             </div>
         </div>
         <div class="col-xs-4" style="padding: 0 15px 0 15px">
-            <div class="row">
-                <span style="float: left;
-                padding-top: 5px;">稽查时间段:</span>
-            </div>
-
-            <div class="row" style="padding-top: 10px">
-                <div class="col-xs-5">
-                    <input type="text" style="width:100%;" id="starttime">
-                </div>
-                <div class="col-xs-2" style="text-align: center"> ~ </div>
-
-                <div class="col-xs-5"><input type="text" style="width:100%;" id="endtime"></div>
-
-            </div>
-
-
-            <div class="row" style="margin-top: 100px">
+            <div class="row" style="">
                 <div class="row" style="margin: 0">
                     <span style="float: left;
                 padding-top: 5px;">分配稽查任务:</span>

+ 261 - 0
VisualInspection/qzd/view/task/addtask.html

@@ -0,0 +1,261 @@
+<div>
+<form class="form-horizontal" style="margin-top:10px;">
+        <div class="form-group" style="margin:0px;width: 100%">
+                <div class="form-group col-xs-4">
+                    <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">时间:</label>
+                    <div class="col-xs-8">
+                            <select class="form-control" id="fsList">
+                                <option>白天</option>
+                                <option>夜间</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="form-group col-xs-4">
+                    <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">天气:</label>
+                    <div class="col-xs-8">
+                            <select class="form-control" id="fsList">
+                                <option>晴天</option>
+                                <option>恶劣天气</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="form-group col-xs-4">
+                        <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">里程数:</label>
+                        <div class="col-xs-8">
+                                <input type="text" id="start_time" class="form-control form-date" placeholder="公里" onchange="changestatus()">
+                            </div>
+                    </div>
+                </div>
+        </div>  
+        <div class="form-group" style="margin:0px;vertical-align: middle">
+            <div class="form-group col-xs-5">
+                <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding:0">清障情况:</label>
+                <div class="col-xs-8">
+                        <select class="form-control" id="type">
+                            <option value="1">抛锚</option>
+                            <option value="2">事故</option>
+                        </select>
+                    </div>
+            </div>
+            <div class="form-group col-xs-7">
+                <label for="exampleInputAccount1" class="col-xs-4">车牌号:</label>
+                <div class="col-xs-8">
+                        <input type="text" id="carinfo" class="form-control form-date" placeholder="">
+                    </div>
+            </div>
+        </div>  
+        <div class="form-group">
+                <div class="form-group col-xs-5">
+                    <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding: 0px">接警时间:</label>
+                    <div class="col-xs-8">
+                        <input type="text" style="width:100%;" id="startTime" class="form-control">
+                        </div>
+                </div>
+                <div class="form-group col-xs-7">
+                    <label for="exampleInputAccount1" class="col-xs-4">客户信息:</label>
+                    <div class="col-xs-8">
+                            <input type="text" id="carUserinfo" class="form-control form-date" placeholder="">
+                        </div>
+                </div>
+            </div> 
+            <div class="form-group" style="margin:0px;">
+                    <div class="form-group col-xs-5">
+                        <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">清障队:</label>
+                        <div class="col-xs-8">
+                                <select class="form-control" id="dept" onchange="setRecordUser()">
+                                </select>
+                            </div>
+                    </div>
+                    <div class="form-group col-xs-7">
+                            <label for="" class="col-xs-4">是否满意:</label>
+                            <div class="col-xs-6">
+                                    <select class="form-control" id="carUserSatisfaction">
+                                            <option value="1">非常满意</option>
+                                            <option value="2">满意</option>
+                                            <option value="3">不满意</option>
+                                    </select>
+                                </div>
+                    </div>
+                </div> 
+                <div class="form-group" style="margin:0px;">
+                        <div class="form-group col-xs-5">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding:0">出勤人员:</label>
+                            <div class="col-xs-8">
+                                    <input type="text" id="recordUser" class="form-control" placeholder="请选择出勤人员" autocomplete="off">
+                                </div>
+                        </div>
+                        <div class="form-group col-xs-7">
+                                <label for="" class="col-xs-4">桩号:</label>
+                                <div class="col-xs-6">
+                                    <input type="text" style="width:100%;" id="addr" class="form-control">
+                                    </div>
+                        </div>
+                    </div> 
+                <div class="form-group" style="margin:0px;">
+                        <div class="form-group col-xs-5">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding:0">送达时间:</label>
+                            <div class="col-xs-8">
+                                <input type="text" style="width:100%;" id="arriveTime" class="form-control">
+                                </div>
+                        </div>
+                        <div class="form-group col-xs-7">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">接受时间:</label>
+                            <div class="col-xs-6">
+                                <input type="text" style="width:100%;" id="backTime" class="form-control">
+                                </div>
+                        </div>
+                    </div> 
+                    <div class="form-group" style="margin:0px;">
+                        <div class="form-group col-xs-5">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding:0">出发时间:</label>
+                            <div class="col-xs-8">
+                                <input type="text" style="width:100%;" id="arriveTime" class="form-control">
+                                </div>
+                        </div>
+                        <div class="form-group col-xs-7">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">到达时间:</label>
+                            <div class="col-xs-6">
+                                <input type="text" style="width:100%;" id="backTime" class="form-control">
+                                </div>
+                        </div>
+                    </div> 
+                    <div class="form-group" style="margin:0px;">
+                        <div class="form-group col-xs-5">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding:0">施救时间:</label>
+                            <div class="col-xs-8">
+                                <input type="text" style="width:100%;" id="arriveTime" class="form-control">
+                                </div>
+                        </div>
+                        <div class="form-group col-xs-7">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">离场时间:</label>
+                            <div class="col-xs-6">
+                                <input type="text" style="width:100%;" id="backTime" class="form-control">
+                                </div>
+                        </div>
+                    </div> 
+                    <div class="form-group" style="margin:0px;">
+                        <div class="form-group col-xs-5">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding:0">解脱时间:</label>
+                            <div class="col-xs-8">
+                                <input type="text" style="width:100%;" id="arriveTime" class="form-control">
+                                </div>
+                        </div>
+                        <div class="form-group col-xs-7">
+                            <label for="exampleInputAccount1" class="col-xs-4" style="text-align: left;padding-right:0">回场时间:</label>
+                            <div class="col-xs-6">
+                                <input type="text" style="width:100%;" id="backTime" class="form-control">
+                                </div>
+                        </div>
+                    </div> 
+                <div class="form-group" style="margin:0px;">
+                    </div> 
+                <div class="form-group" style="margin-top:50px;float: right;margin-right: 40px">
+                        <button class="btn btn-info2 col-xs-1" style="height:40px;width:90px;" type="button" onclick="save()" >保存</button>
+                    </div> 
+             
+    </form>
+</div>
+    <script>
+    var selectRecord;
+    var arrive = 30;
+    var back = 60;
+       laydate.render({
+        elem: '#startTime',
+        type: 'datetime',                                                                                              
+    });
+
+      laydate.render({
+        elem: '#arriveTime',
+        type: 'datetime',                                                                                              
+    });
+
+      laydate.render({
+        elem: '#backTime',
+        type: 'datetime',                                                                                              
+    });
+
+    setRecordUser();
+
+    function changestatus(){
+        // $("#status").html("到达");
+           
+    }
+
+    function setRecordUser(){
+        var dept = $("#dept").val();
+        var userData = {
+            "organid": dept
+        }
+      UserGetList(userData, function(data) {
+          console.log(data);
+        for (var index in data) {
+                    var p = data[index];
+                    p.title = p.truename;
+                }
+                if (selectRecord != null) {
+        $("#recordUser").val("");
+         selectRecord.unbind();
+         selectRecord.options = {
+                    source: data,
+                    isMultiple: true
+                };
+        selectRecord.closeDropDownMenu();
+        selectRecord.init();
+        $(".ComboTreeItemChlid").find("input").prop('checked', false);
+    }else{   
+        selectRecord = $('#recordUser').comboTree({
+                    source: data,
+                    isMultiple: true
+                });
+            }
+        });
+    }
+
+    function save(){
+       var arriveIntime;
+       var unimpededInTime;
+       var arriveHour = new Date($("#arriveTime").val()) - new Date($("#startTime").val());
+       var umipededHour = new Date($("#backTime").val()) - new Date($("#arriveTime").val());
+       if(arriveHour/100/60 > arrive){
+             arriveIntime = 0;
+       }else{
+             arriveIntime = 1;
+       }
+       if(umipededHour/100/60 > back){
+            unimpededInTime = 0;
+       }else{
+            unimpededInTime = 1;
+       }
+       var userids = new Array();
+       userids = selectRecord.getSelectedItemsId();
+       console.log(userids);
+       var userid = userids.join(',');
+    
+       var data={
+        'type' : $("#type").val(),
+        'car_info' :  $("#carinfo").val(),
+        'received_time' :  new Date($("#startTime").val()),
+        'car_user_info' :  $("#carUserinfo").val(),
+        'dept' :  $("#dept").val(),
+        'car_user_satisfaction' :  $("#carUserSatisfaction").val(),
+        'users' :  userid,
+        'arrive_time' :  new Date($("#arriveTime").val()),
+        'back_time' :  new Date($("#backTime").val()),
+        'arrive_in_time' : arriveIntime,
+        'unimpeded_in_time' : unimpededInTime,
+        'addr': $("#addr").val()
+    }
+    if(is_save == 0){
+        post_common_service('q/record/add', data, function(redata) {
+               window.parent.location.reload();
+        });
+    }else{
+        data.id = is_save.split("_")[1];
+        console.log(data);
+        post_common_service('q/record/update', data, function(redata) {
+               window.parent.location.reload();
+        });
+    }
+}
+    </script>
+

+ 62 - 0
VisualInspection/qzd/view/task/new.html

@@ -0,0 +1,62 @@
+<script src="/js/statistics/common_statistic.js?__inline"></script>
+<script src="/qzd/js/task/new.js"></script>
+<style>
+   .button_new{
+           width: 50px
+   }
+
+</style>
+<div class="container-fluid ">
+    <div class="row">
+        <form class="form-horizontal" style="margin:0px;">
+            <div class="form-group" style="margin:0px;">
+                <div class="form-group col-sm-2">
+                    <label for="exampleInputAccount1" class="col-sm-4" style="text-align: left;padding-right:0">时间:</label>
+                    <div class="col-sm-8">
+                        <input type="text" id="start_time" class="form-control form-date" placeholder="选择周期">
+                    </div>
+                </div>
+                <div class="form-group col-sm-2">
+                    <label for="exampleInputAccount1" class="col-sm-4">部门:</label>
+                    <div class="col-sm-8">
+                        <select class="form-control" id="deptlist">
+                        </select>
+                    </div>
+                </div>
+
+
+                <div class="form-group col-sm-2">
+                    <button class="btn btn-info2 col-sm-1" style="width:80px;" type="button" onclick="queryTask()" style="">查询</button>
+                </div>
+                <div class="form-group col-sm-2" style="float: right">
+                <button class="btn btn-info2 col-sm-1" style="height:40px;width:90px;" type="button" onclick="addTask()" >新增</button>
+                </div>
+            </div>  
+        </form>
+    </div>
+    <hr style="margin-top:0px;">
+
+    <div class="datatable" id="task_list_table"></div>
+</div>
+<script>
+    $(document).ready(function() {
+        initTaskPage();
+    });
+</script>
+
+<div class="modal fade" id="addModal" style="height: 800px">
+    <div class="modal-dialog">
+        <div class="modal-content">
+            <div class="modal-header">
+                <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">关闭</span></button>
+                <h4 class="modal-title">添加部门</h4>
+            </div>
+            <div class="modal-body">
+                <link id="addrecord" rel="import" href="/qzd/view/task/addtask.html?__inline">
+            </div>
+            <div class="modal-footer" style="border-color: white">
+                <!-- <button type="button" id="dept_add_btn" class="btn btn-primary" onclick="addDept()">添加</button> -->
+            </div>
+        </div>
+    </div>
+</div>

+ 1 - 1
VisualInspection/qzd/view/task/taskDetail.html

@@ -319,7 +319,7 @@
         var data = {
             "id": $.checkTask.id
         };
-        post_common_service("/f/task/getStatusById/", data, function(data) {
+        post_common_service("/q/task/getStatusById/", data, function(data) {
             if (data) {
                 // console.log(data)
                 var flowStr = "";

+ 10 - 6
VisualInspection/qzd/view/task/task_list.html

@@ -5,16 +5,20 @@
     <div class="row">
         <form class="form-horizontal" style="margin:0px;">
             <div class="form-group" style="margin:0px;">
-                <div class="form-group col-sm-3">
-                    <label for="exampleInputAccount1" class="col-sm-4" style="text-align: left;padding-right:0">稽查周期</label>
-                    <div class="col-sm-8">
-                        <input type="text" id="start_time" class="form-control form-date" placeholder="选择周期">
+                <div class="form-group col-sm-6">
+                    <!-- <label for="exampleInputAccount1" class="col-sm-4" style="text-align: left;padding-right:0">稽查周期</label> -->
+                    <label for="exampleInputAccount1" class="col-sm-2">稽查日期</label>
+                    <div class="col-sm-5">
+                        <input type="text" id="start_time" class="form-control form-date" placeholder="开始时间">
+                    </div>
+                    <div class="col-sm-5">
+                        <input type="text" id="end_time" class="form-control form-date" placeholder="截止时间">
                     </div>
                 </div>
                 <div class="form-group col-sm-3">
-                    <label for="exampleInputAccount1" class="col-sm-4">考核部门</label>
+                    <label for="exampleInputAccount1" class="col-sm-4">部门</label>
                     <div class="col-sm-8">
-                        <select class="form-control" id="fsList">
+                        <select class="form-control" id="qzd">
                         </select>
                     </div>
                 </div>