ソースを参照

Merge branch 'master' of http://git_xt.jsxt.jsjtyxt.com/wenhongquan/VisualInspection

# Conflicts:
#	Visuallnspection_fjq/visuallnspectioninteface/.idea/workspace.xml
温红权 8 年 前
コミット
2bd9ce519a
32 ファイル変更2986 行追加381 行削除
  1. 2 0
      .gitignore
  2. 1000 0
      VisualInspection/fwq/js/other_check/other_check.js
  3. 174 0
      VisualInspection/fwq/view/other_check/onsite_check.html
  4. 178 0
      VisualInspection/fwq/view/other_check/third_unannounced_check.html
  5. 2 0
      VisualInspection/js/main.js
  6. 33 0
      VisualInspection/js/util/util.js
  7. 12 5
      VisualInspection_server/src/main/java/com/xintong/SystemInit.java
  8. 98 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/gettway/CheckOtherController_F.java
  9. 51 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/gettway/FileExcelController_F.java
  10. 17 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/dao/cluster/ItemDao.java
  11. 23 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/cluster/ItemMapper.xml
  12. 18 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/CommonServiceImpl.java
  13. 36 0
      VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/ItemServiceImpl.java
  14. 69 10
      VisualInspection_server/visual/visual.log
  15. 23 0
      Visuallnspection_fjq/visuallnspection_fjq/src/main/java/com/xintong/visualinspection/visuallnspection_fjq/dao/FwqCheckOtherDao.java
  16. 63 0
      Visuallnspection_fjq/visuallnspection_fjq/src/main/java/com/xintong/visualinspection/visuallnspection_fjq/mapper/master/CheckOtherMapper.xml
  17. 374 0
      Visuallnspection_fjq/visuallnspection_fjq/src/main/java/com/xintong/visualinspection/visuallnspection_fjq/service/impl/CheckOtherServiceImpl.java
  18. BIN
      Visuallnspection_fjq/visuallnspection_fjq/src/main/resources/fwq_other_check_info_anfang.xls
  19. BIN
      Visuallnspection_fjq/visuallnspection_fjq/src/main/resources/fwq_third_check.xls
  20. 9 1
      Visuallnspection_fjq/visuallnspectioninteface/.idea/compiler.xml
  21. 7 1
      Visuallnspection_fjq/visuallnspectioninteface/.idea/misc.xml
  22. 368 243
      Visuallnspection_fjq/visuallnspectioninteface/.idea/workspace.xml
  23. 65 0
      Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckOther.java
  24. 40 0
      Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckOtherStatistics.java
  25. 27 0
      Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Item.java
  26. 74 0
      Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/CheckOtherService_F.java
  27. 7 0
      Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/CommonService.java
  28. 15 0
      Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/ItemService.java
  29. 161 91
      Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CacheUtil.java
  30. 1 1
      Visuallnspection_fjq/visuallnspectioninteface/target/maven-archiver/pom.properties
  31. 13 8
      Visuallnspection_fjq/visuallnspectioninteface/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  32. 26 21
      Visuallnspection_fjq/visuallnspectioninteface/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

+ 2 - 0
.gitignore

@@ -9,6 +9,8 @@
 *.war
 *.ear
 .idea/*
+target/*
+*.log
 # VisualInspection_server/.idea/*
 # Visuallnspection_fjq/visuallnspection_fjq/.idea/*
 # Visuallnspection_fjq/visuallnspectioninteface/.idea/*

+ 1000 - 0
VisualInspection/fwq/js/other_check/other_check.js

@@ -0,0 +1,1000 @@
+var file_src = "";
+var imgs_src = [];
+var idUpdate;
+var check_id;
+var check_type;
+var check_item_tree = null;
+var edittype = "add";
+var al_data = [];
+var isconfirmC = false;
+// 页面初始化
+function init() {
+    $(document).delegate("#editImage img", "mouseenter", function() {
+        var myself = $(this);
+        var xx = $("<i class='icon-remove' img_src='" + $(this).attr('img_src') + "'></i>");
+        xx.css({ "position": "absolute", "display": "" });
+        $(this).parent().append(xx);
+        $(".icon-remove").click(function() {
+            myself.hide();
+            imgs_src.push($(this).attr("img_src"));
+        });
+    })
+    $(document).delegate("#editImage div", "mouseleave", function() {
+            $(".icon-remove").hide();
+        })
+        // 初始化上传
+    refreshUploader();
+    setVisit();
+    $.jeDate("#month_date", {
+        isinitVal: true,
+        format: 'YYYY/MM' // 分隔符可以任意定义,该例子表示只显示年月
+    });
+    $.jeDate("#month_date2", {
+        isinitVal: true,
+        format: 'YYYY-MM-DD hh:mm',
+        zIndex: 300000000000 // 分隔符可以任意定义,该例子表示只显示年月日
+    });
+    var road_manager;
+    if (roleContains("STATION") || roleContains("WRECKER")) {
+        road_manager = getCurrentUser().road_manager_id;
+    }
+    if (roleContains("ROAD_MANAGER")) {
+        road_manager = getCurrentUser().organid;
+    }
+    // 设置道管
+    setRoadManagerSelect("#first", road_manager, true);
+    // 设置服务区
+    var checked_dept = null;
+    if (roleContains("SERVICEAREA")) {
+        checked_dept = getCurrentUser().organid;
+    }
+    setSASelect("#fsList", checked_dept);
+
+    // 新增服务区下拉框
+    var dept;
+    if (roleContains("STATION") || roleContains("WRECKER")) {
+        dept = getCurrentUser().organid;
+    }
+    var roadManager2;
+    if (roleContains("ROAD_MANAGER")) {
+        roadManager2 = getCurrentUser().organid;
+    }
+    var feeList = getOrganList(roadManager2);
+    setSASelectValueNoAll(feeList, "#select-dept", dept);
+    // setPersonal();// 2期不需要人员显示
+    var zTreeObj;
+    var zNodes = [];
+    check_item_tree = $.fn.zTree.init($("#check_rule_tree2"), {}, zNodes);
+
+    getOtherCheckItems();
+
+    $("#check_item_select input").on("click", function() {
+        //debugger;
+        var nodedata;
+        if ($("#check_item_select input") != undefined && $("#check_item_select input") != "") {
+            nodedata = check_item_tree.getNodeByParam("name", $("#check_item_select input").val(), null);
+        }
+        $("#add_btn").data("tree_flag", 1);
+        loadData(nodedata);
+        $("#add_btn").data("tree_flag", 0);
+    })
+
+    setCheckTypeSelect('#speacial_type_select', '', 'special_check_type', true);
+    queryTable();
+    setCheckTypeSelect('#select-check-type', '', 'wrecker_group_check_type');
+    setCheckTypeSelect('#select-special-check-type', '', 'special_check_type');
+}
+
+//关闭弹窗
+$("#close-layer").click(function() {
+        layer.closeAll();
+    })
+    //条件查询
+$("#conditional_query").click(function() {
+        queryTable();
+    })
+    //保存修改或添加
+$("#save-check").click(function() {
+        var dept_id = $("#select-dept").val();
+        // var user_id = $("#select-personal").val();
+        var check_item_id = dept_selectinput != null ? dept_selectinput.value : null;
+        var remark = $("#remark").val();
+        var check_score = $("#check_score").val();
+        var check_time = $("#month_date2").val();
+        var check_num = $("#check_num").val();
+        var wrecker_check_type = $("#select-check-type").val();
+        var special_check_type = $("#select-special-check-type").val();
+        if (idUpdate) {
+            if ($("#editImage").attr("file_src") != '') {
+                var src = $("#editImage").attr("file_src").split(",");
+                var flag = 1;
+                for (var i = 0; i < src.length; i++) {
+                    for (var j = 0; j < imgs_src.length; j++) {
+                        if (src[i] == imgs_src[j]) {
+                            flag = 0;
+                            break;
+                        }
+                    }
+                    if (flag == 1) {
+                        file_src += src[i] + ",";
+                    }
+                }
+            }
+        }
+        var file_ids = (file_src.substring(file_src.length - 1) == ',') ? file_src.substring(0, file_src.length - 1) : file_src;
+
+        // var check_time_name = timeStamp2String(new Date(),"yyyy/MM");
+        var check_time_name = timeStamp2String(new Date((check_time + ":00").replace("-g-/", "")), "yyyy/MM");
+        var timeday = moment(check_time);
+        var timec = moment(timeday.get("year") + "-" + (timeday.get('month') + 1) + "-25 23:00:00");
+
+
+        if (timeday.valueOf() > timec.valueOf()) {
+            var year = timeday.get("year");
+            var month = timeday.get('month') + 2;
+
+            if (month > 12) {
+                year += 1;
+                month -= 12;
+            }
+            check_time_name = year + "/" + (month > 9 ? month : ("0" + month));
+        } else {
+            var year = timeday.get("year");
+            var month = timeday.get('month') + 1;
+
+            if (month > 12) {
+                year += 1;
+                month -= 12;
+            }
+            check_time_name = year + "/" + (month > 9 ? month : ("0" + month));
+        }
+
+
+        if (dept_id == null || dept_id == undefined || dept_id == "") {
+            layer.msg('请选择服务区');
+            return;
+        } else if (check_item_id == null || check_item_id == undefined || check_item_id == "") {
+            layer.msg('请选择扣分类别');
+            return;
+        } else if (check_score == null || check_score == undefined || check_score == "") {
+            layer.msg('请选择扣分值');
+            return;
+        }
+        data = {
+            "id": check_id,
+            "dept_id": dept_id,
+            // "user_id": user_id,
+            "check_item_id": check_item_id,
+            "check_type": check_type,
+            "remark": remark,
+            "check_score": check_score,
+            "file_ids": file_ids,
+            "check_time": check_time,
+            "check_time_name": check_time_name,
+            "check_num": check_num,
+            "wrecker_check_type": wrecker_check_type,
+            "special_check_type": special_check_type
+        }
+        console.log(data);
+        if (idUpdate) {
+            post_common_service("f/checkOther/update", data, function(data) {
+                file_src = "";
+                imgs_src = [];
+                layer.closeAll();
+                queryTable();
+            }, function() {
+
+            });
+        } else {
+            post_common_service("f/checkOther/add", data, function(data) {
+                file_src = "";
+                imgs_src = [];
+                layer.closeAll();
+                queryTable();
+            }, function() {
+
+            });
+        }
+    })
+    //添加稽查记录
+$("#add_btn").click(function() {
+    idUpdate = false;
+    edittype = "add";
+    check_id = null;
+    $("#select-dept").val("");
+    // $("#select-personal").val("");
+    $(".treeSelect-input").val("");
+    $("#remark").val("");
+    $("#check_score").val("");
+    $("#month_date2").val(timeStamp2String(new Date(), "yyyy-MM-dd HH:mm"));
+    $("#check_num").val(1);
+    $("#editImage").empty();
+    layerUpdateTeam('form-div', '稽查记录新增', '550px');
+    $("#save-check").html("保存");
+
+    if (check_type == 2) {
+        //特情稽查处理
+        $("#confirmC").prop('checked', false);
+        isconfirmC = false;
+    }
+
+
+    //debugger;
+    var nodedata;
+    $("#add_btn").data("tree_flag", 1);
+    loadData(nodedata);
+    $("#add_btn").data("tree_flag", 0);
+
+
+    $("#check_item_select input").on("click", function() {
+        //debugger;
+        // var nodedata;
+        // $("#add_btn").data("tree_flag",1);
+        // loadData(nodedata);
+        // $("#add_btn").data("tree_flag",0);
+    })
+})
+
+function confirmCfun() {
+    isconfirmC = $("#confirmC").prop("checked");
+}
+
+function queryTable() {
+    $(".datatable").empty();
+    var data = {
+        "check_time_name": $("#month_date").val(),
+        "dept_id": $("#fsList").val(),
+        "check_type": check_type,
+        "special_check_type": $("#speacial_type_select").val()
+    }
+    var hide = true;
+    if (check_type == 5) {
+        hide = false;
+    }
+    operation = true;
+    var hide1 = true;
+    if (check_type == 2) {
+        hide1 = false;
+    }
+
+    if (check_type == 4) {
+        data["scoretype"] = $("#scoretype").val();
+    }
+
+    var cols = [
+        { width: 30, text: '序号', flex: false, colClass: 'text-center', field: 'num' },
+        { width: 50, text: '时间', flex: false, colClass: '', field: 'check_time' },
+        { width: 50, text: '部门', flex: false, colClass: '', field: 'organ_name' },
+        // {
+        //     width: 30,
+        //     text: '人员',
+        //     flex: false,
+        //     colClass: '',
+        //     field: 'username',
+        //     func: function(obj) {
+        //         if (obj == null || obj == undefined) {
+        //             return "站部";
+        //         }
+        //         return obj;
+        //     }
+        // },// 2期以服务区维度
+        { width: 50, text: '扣分类型', flex: false, colClass: '', field: 'pcheckname' },
+        { width: 50, text: '扣分项', flex: false, colClass: '', field: 'check_item_name' },
+        { width: 30, text: '扣分值', flex: false, colClass: '', field: 'check_score' },
+        { width: 120, text: '扣分描述', flex: false, colClass: '', field: 'remark' },
+        { width: 30, text: '检查类型', flex: false, hide: hide, field: 'wrecker_check_type_name' },
+        { width: 50, text: '稽查类型', flex: false, hide: hide1, field: 'special_check_type_name' },
+        { width: 70, text: '附件', type: 'imagedd', flex: false, colClass: '', field: 'file_ids' }
+    ];
+    if (roleContains("JICHA") || hasRole("ROLE_ADMIN")) {
+        cols.push({
+            width: 60,
+            text: '操作',
+            flex: false,
+            field: 'id',
+            oper: [
+                { func: 'updateCheckTeam', text: '修改', icon_class: 'icon-edit' }, { func: 'deleteCheckTeam', text: '删除', icon_class: 'icon-remove-circle' }
+            ]
+        });
+    }
+    $('.datatable').mytable({
+        'cols': cols,
+        'url': "f/checkOther/getAllCheckOther",
+        'param': data
+    });
+}
+
+function deleteCheckTeam(id) {
+    deleteItem4Common(id, "f/checkOther/delete", queryTable);
+}
+
+function updateCheckTeam(id) {
+    check_id = id;
+    data = {
+        "id": id
+    }
+    post_common_service("f/checkOther/getCheckById", data, function(data) {
+        var select_road = $(".div-roadManage select").val();
+        var feeList = getOrganList(select_road);
+        setSASelectValueNoAll(feeList, "#select-dept", data.dept_id);
+        // setPersonal(data.user_id);
+        // $("#select-dept").val(data.dept_id);
+        // $("#select-personal").val(data.user_id);
+        $("#check_item_select input").val(data.check_item_name);
+        $("#remark").val(data.remark);
+        $("#check_score").val(data.check_score);
+        var time = data.check_time;
+        $("#month_date2").val(data.check_time);
+        $("#check_num").val(data.check_num);
+        setCheckTypeSelect('#select-check-type', data.wrecker_check_type, "wrecker_group_check_type");
+        setCheckTypeSelect('#select-special-check-type', data.special_check_type, 'special_check_type');
+        $("#editImage").empty();
+        if (data.file_ids != null && data.file_ids != "") {
+            var ids = data.file_ids.split(",");
+            var str = "";
+            for (i = 0; i < ids.length; i++) {
+                str += ids[i] + ",";
+                $("#editImage").append("<div style='float:left;width:60px;'><img  img_src='" + ids[i] + "' class='pic-class  img-thumbnail' style='width:50px;height:50px;' alt='' src='http://file_release_yanhai.jsxt.jsjtyxt.com/" + ids[i] + "' ></div>");
+            }
+            $("#editImage").attr("file_src", (str.substring(str.length - 1) == ',') ? str.substring(0, str.length - 1) : str);
+        }
+
+        idUpdate = true;
+        edittype = "edit";
+        layerUpdateTeam('form-div', '稽查记录修改', '550px');
+        $("#save-check").html("修改");
+
+        var nodedata;
+        if ($("#check_item_select input") != undefined && $("#check_item_select input") != "") {
+            nodedata = check_item_tree.getNodeByParam("name", $("#check_item_select input").val(), null);
+        }
+        loadData(nodedata);
+
+
+        $("#check_item_select input").on("click", function() {
+            //debugger;
+            // var nodedata;
+            // if($("#check_item_select input") != undefined && $("#check_item_select input") != ""){
+            //     nodedata = check_item_tree.getNodeByParam("name",$("#check_item_select input").val(), null);
+            // }
+            // $("#add_btn").data("tree_flag",1);
+            // loadData(nodedata);
+            // $("#add_btn").data("tree_flag",0);
+        })
+    }, function() {
+
+    });
+
+}
+
+function refreshUploader() {
+    // 文件上传
+    $('#uploaderExample').uploader({
+        autoUpload: true, // 当选择文件后立即自动进行上传操作
+        unique_names: true, // 生成唯一名称
+        url: base_image_server_url + 'fileServer/file/upload', // 文件上传提交地址
+        filters: {
+            mime_types: [
+                { title: '图片', extensions: 'jpg,gif,png' },
+                { title: '图标', extensions: 'ico' },
+                { title: '视频', extensions: 'mp4,avi' },
+                { title: '文档', extensions: 'doc,docx' }
+            ],
+            // 不允许上传重复文件
+            prevent_duplicates: true
+        },
+        fileTemplate: '<div class="file"><div class="file-progress-bar"></div><div class="file-wrapper"><div class="file-icon"><i class="icon icon-file-o"></i></div><div class="content"></div><div class="actions"><div class="file-status" data-toggle="tooltip"><i class="icon"></i> <span class="text"></span></div><a data-toggle="tooltip" class="btn btn-link btn-download-file" target="_blank"><i class="icon icon-download-alt"></i></a><button type="button" data-toggle="tooltip" class="btn btn-link btn-reset-file" title="Repeat"><i class="icon icon-repeat"></i></button><button type="button" data-toggle="tooltip" class="btn btn-link btn-rename-file" title="Rename"><i class="icon icon-pencil"></i></button><button type="button" data-toggle="tooltip" title="Remove" class="btn btn-link btn-delete-file"><i class="icon icon-trash text-danger"></i></button></div></div></div>', // 设置模板
+        onFileUploaded: function(file, responseObject) {
+            var datas = eval('(' + responseObject.response + ')');
+            file_src += datas.result_data.path + ",";
+            //$(".file").append("<div style='float:left;width:60px;'><img  img_src='"+datas.result_data.path+"' class='pic-class  img-thumbnail' style='width:50px;height:50px;' alt='' src='http://file_release_yanhai.jsxt.jsjtyxt.com/"+datas.result_data.path+"' ></div>");
+        },
+        onInit: function() {
+            $("#file-list").empty();
+        },
+        onFilesRemoved: function(files) {
+            // alert(files);
+        }
+    });
+}
+
+function setVisit() {
+    if (roleContains("STATION") || roleContains("WRECKER")) {
+        $("#first").attr("disabled", "disabled");
+        $("#second").attr("disabled", "disabled");
+    }
+    if (roleContains("ROAD_MANAGER")) {
+        $("#first").attr("disabled", "disabled");
+    }
+
+    if (!(roleContains("JICHA") || hasRole("ROLE_ADMIN"))) {
+        $("#add_btn").hide();
+        // $("#second").hide();
+    }
+}
+/**
+ * 根据道管中心获取服务区列表(下拉框)
+ */
+$(".div-roadManage select").change(function() {
+    setSASelect("#fsList", null);
+    flag = true;
+});
+
+function getOrganList(select_road) {
+    var organList;
+    if (select_road) {
+        if (check_type == 5) {
+            organList = cache_road_manager_wrecker_group_map.get(select_road);
+        } else {
+            organList = cache_service_area_map.get(select_road);
+        }
+    } else {
+        if (check_type == 5) {
+            organList = $.zui.store.get("cache_wrecker_group_list");
+        } else {
+            organList = $.zui.store.get("cache_service_area_list");
+        }
+    }
+    return organList;
+}
+
+// function setSecond() {
+//     var select_road = $(".div-roadManage select").val();
+//     var feeList = getOrganList(select_road);
+//     var dept;
+//     if (roleContains("STATION") || roleContains("WRECKER")) {
+//         dept = getCurrentUser().organid;
+//     }
+//     refreshFee(feeList, dept);
+// }
+
+function setscoretype() {
+    var sec = document.getElementById('scoretype');
+    var tempStr = '<option value="all" selected>全部</option>'
+    if (all_data.length > 0) {
+        if (all_data[0].children.length > 0) {
+            all_data[0].children.forEach(child => {
+                tempStr += "<option value=" + child.name + " >" + child.name + "</option>";
+            });
+            sec.innerHTML = tempStr;
+        } else {
+            sec.innerHTML = '';
+        }
+    } else {
+        sec.innerHTML = '';
+    }
+}
+
+
+function refreshFee(data, selectId) {
+    var sec = document.getElementById('second');
+    var tempStr = '<option value="">全部</option>'
+    if (data.length != 0) {
+        for (var i = 0; i < data.length; i++) {
+            if (data[i].deptid == selectId)
+                tempStr += "<option value=" + data[i].deptid + " selected>" + data[i].name + "</option>";
+            else
+                tempStr += "<option value=" + data[i].deptid + ">" + data[i].name + "</option>";
+            // }
+            sec.innerHTML = tempStr;
+        }
+
+    } else {
+        sec.innerHTML = '';
+    }
+}
+
+// /**
+//  * 部门人员下拉框
+//  */
+// function setPersonal(selectUserId) {
+//     var select_road = $("#select-dept").val();
+//     var sec = document.getElementById('select-personal');
+//     var tempStr = ''
+//     var param = {
+//         "organid": select_road
+//     }
+//     var url = "user/getFsUserList";
+//     if (check_type == 5) {
+//         url = "user/getWGUserList";
+//     }
+//     post_common_service(url, param, function(data) {
+//         console.log(data);
+//         if (data.length != 0) {
+//             var userId;
+//             if (hasRole("ROLE_STATION")) {
+//                 userId = getCurrentUser().id;
+//             } else {
+//                 userId = selectUserId;
+//             }
+//             // console.log(data);
+//             if (check_type != 2) {
+//                 tempStr += "<option value=0>收费站</option>";
+//             }
+//             for (var i = 0; i < data.length; i++) {
+//                 // for (var j = 33; j <= 53; j++) {
+//                 // if (select_road == j) {
+//                 var workno = data[i].workno;
+//                 if (workno) workno = workno.substring(workno.length - 3);
+//                 if (data[i].id == userId) {
+//                     tempStr += "<option value='" + data[i].id + "' selected='selected' > " + workno + data[i].truename + "</option>";
+//                 } else {
+//                     tempStr += "<option value='" + data[i].id + "'" + (i == 0 ? " selected='selected'" : "") + "”>" + workno + data[i].truename + "</option>";
+//                 }
+//                 // }
+//                 // }
+
+
+//                 sec.innerHTML = tempStr;
+//             }
+
+//             sec.innerHTML = tempStr;
+//         } else {
+//             sec.innerHTML = '';
+//         }
+//     }, function(error) {
+//         return "";
+//     });
+// }
+// 部门改变后 重新生成人员下拉框
+// $("#select-dept").change(function() {
+//     if (check_type == 2) {
+//         if (isconfirmC) return;
+//     }
+//     setPersonal();
+// });
+
+$("#check_item_select").delegate("div[id*='treeSelect_panel_'] ", "blur", function() {
+    // alert(1)
+    if ($(this).is(":hidden")) {
+        if (map[dept_selectinput.value] != null) {
+            $("#check_score").val(map[dept_selectinput.value]);
+        } else {
+            $("#check_score").val("");
+        }
+    }
+})
+
+function layerUpdateTeam(domId, title, area) {
+    var uploader = $('#uploaderExample').data('zui.uploader');
+    uploader.destroy();
+    refreshUploader();
+    $(".file-list").empty();
+    file_src = "";
+    imgs_src = [];
+    layer.open({
+        type: 1,
+        title: false,
+        closeBtn: 1,
+        title: title,
+        shadeClose: true,
+        skin: 'yourclass',
+        area: area,
+        content: $("#" + domId)
+    });
+}
+
+// 增加和编辑框
+var dept_selectinput;
+
+function loadData(nodedata) {
+    var pnode = nodedata;
+    if (pnode != null) {
+        dept_selectinput = new TreeSelect({
+            element: '#check_item_select',
+            data: all_data,
+            valueKey: "id",
+            placeholder: "请选择扣分类别",
+            selectvalue: pnode.id
+        });
+    } else {
+        if ($("#add_btn").data("tree_flag") == 1) {
+            dept_selectinput = new TreeSelect({
+                element: '#check_item_select',
+                data: all_data,
+                valueKey: "id",
+                placeholder: "请选择扣分类别"
+            });
+        } else {
+
+        }
+    }
+}
+
+function getOtherCheckItems() {
+    function zTreeOnRename(event, treeId, treeNode, isCancel) {
+        alert(treeNode.tId + ", " + treeNode.name);
+    }
+
+    function zTreeOnRemove(event, treeId, treeNode) {
+        alert(treeNode.tId + ", " + treeNode.name);
+    }
+
+
+    function getTreeData(c_obj, id) {
+        if (c_obj.id == id) {
+            return c_obj;
+        } else {
+            if (c_obj.subCheckItem != null) {
+                for (var i = 0; i < c_obj.subCheckItem.length; i++) {
+                    var tmp = getTreeData(c_obj.subCheckItem[i], id);
+                    if (tmp != null) {
+                        return tmp;
+                    }
+                }
+            }
+            return null;
+        }
+    }
+
+    var seq = 0;
+
+    function getTree(obj, rowObj) {
+        var userdata = {};
+        userdata["checked"] = false;
+        if (obj.score != null) {
+            userdata["data"] = [++seq, obj.name, (obj.score != null ? obj.score : ""), '<a href="javascript:void(0)" onclick="modify_check_item(' + obj.id + ')"  ><i class="icon icon-edit"></i> 修改</a><a href="javascript:void(0)" onclick="delete_check_item(' + obj.id + ')" ><i class="icon icon-remove-circle"></i> 删除</a>'];
+            rowObj.push(userdata);
+        }
+
+        if (obj.subCheckItem != null) {
+            for (var i = 0; i < obj.subCheckItem.length; i++) {
+                getTree(obj.subCheckItem[i], rowObj);
+            }
+        }
+        return rowObj;
+    }
+
+    function zTreeOnClick(event, treeId, treeNode) {
+        var rowdata = [];
+
+        seq = 0;
+
+        for (var i = 0; i < z_cache.length; i++) {
+            var treeObj = getTreeData(z_cache[i], treeNode.id);
+            if (treeObj != null) {
+                rowdata = getTree(treeObj, rowdata);
+                break;
+            }
+        }
+
+        // 使用data参数更新数据:
+        $('.datatable').datatable('load', {
+            cols: cols,
+            rows: rowdata
+        });
+    };
+
+    var setting = {
+        data: {
+            simpleData: {
+                enable: true,
+                idKey: "id",
+                pIdKey: "pId",
+                rootPId: null
+            }
+        },
+        view: { //表示tree的显示状态
+            selectMulti: false //表示禁止多选
+        },
+        check: { //表示tree的节点在点击时的相关设置
+            enable: false, //是否显示radio/checkbox
+            chkStyle: "checkbox", //值为checkbox或者radio表示
+            checkboxType: { p: "", s: "" }, //表示父子节点的联动效果
+            radioType: "level" //设置tree的分组
+        },
+        callback: {
+            onRename: zTreeOnRename,
+            //  beforeDrop: zTreeBeforeDrop,
+            onRemove: zTreeOnRemove,
+            onClick: zTreeOnClick
+        },
+        edit: {
+            enable: true,
+            drag: {
+                autoExpandTrigger: true,
+                isMove: true,
+                prev: false,
+                next: true,
+                inner: true,
+                autoOpenTime: 0
+            },
+            showRenameBtn: false,
+            showRemoveBtn: false
+        }
+    };
+
+    var param = {};
+    if (check_type == 1) {
+        param.rule_type = 2;
+    } else if (check_type == 2) {
+        param.rule_type = 3;
+    } else if (check_type == 3) {
+        param.rule_type = 4;
+    } else if (check_type == 4) {
+        param.rule_type = 5;
+    } else if (check_type == 5) {
+        param.rule_type = 6;
+    }
+    post_common_service('checkRule/getItemListByRuleType', param, function(data) {
+        all_data = [];
+        z_cache = data;
+        if (data) {
+            for (var i = 0; i < data.length; i++) {
+                var m = data[i];
+                var zdataItem = {};
+                zdataItem["id"] = m.id;
+                zdataItem["value"] = m.id;
+                zdataItem["pId"] = null;
+                zdataItem["score"] = m.score;
+                zdataItem["name"] = m.name;
+                zdataItem["open"] = true;
+                zdataItem["children"] = addobj(m);
+                zdataItem.open = true;
+                all_data.push(zdataItem);
+            }
+            check_item_tree = $.fn.zTree.init($("#check_rule_tree2"), setting, all_data)
+
+            if (check_type == 4) {
+                setscoretype();
+            }
+        }
+    }, function(error) {})
+}
+
+function addobj(data) {
+    var zdata = [];
+    if (typeof(data.subCheckItem) != "undefinde" && data.subCheckItem != null &&
+        data.subCheckItem.length > 0) {
+        for (var i = 0; i < data.subCheckItem.length; i++) {
+            var m = data.subCheckItem[i];
+            var zdataItem = {};
+            //   if(m.score != null){
+            //      continue;
+            //   }
+            zdataItem["id"] = m.id;
+            zdataItem["value"] = m.id;
+            zdataItem["pId"] = data.id;
+            zdataItem["score"] = m.score;
+            zdataItem["icon"] = "";
+            zdataItem["name"] = m.name;
+            zdataItem["children"] = addobj(m);
+            zdataItem.open = false;
+            zdata.push(zdataItem);
+            map[m.id] = m.score;
+        }
+        return zdata;
+    } else {
+        return [];
+    }
+}
+
+var map = {};
+
+function setCheckTypeSelect(div, selectId, codeFlag, hasAll) {
+    post_common_service("/constant/getConstantByFlag", { code_flag: codeFlag }, function(data) {
+        var optStr = '';
+        if (hasAll) optStr = '<option value="">全部</option>';
+        for (var i in data) {
+            if (data[i].code_value == selectId)
+                optStr += '<option value="' + data[i].code_value + '" selected="selected">' + data[i].code_name + '</option>';
+            else
+                optStr += '<option value="' + data[i].code_value + '">' + data[i].code_name + '</option>';
+        }
+        $(div).html('');
+        $(div).html(optStr);
+    });
+}
+
+
+
+
+function static() {
+
+    var type = $("#speacial_type_select").val();
+
+    if (check_type == 1 || check_type == 4 || check_type == 3 || (type != "" && check_type == 2)) {
+        var p = {
+            "check_type": check_type,
+            "check_period": $("#month_date").val(),
+            "special_check_type": type
+        };
+
+
+        post_common_service("f/checkOther/getOtherCheckStatistics", p, function(data) {
+
+            var names = new Array();
+            var totalnamesvalue = new HashMap();
+            var itemsname = "";
+            var datas = '';
+            var t8 = 0;
+            var title = "第三方暗访情况";
+            if (check_type == 1) title = "第三方暗访情况";
+            if (check_type == 3) title = "现场检查情况";
+            if (check_type == 4) title = "数据平台应用情况";
+            if (check_type == 2 && type == "1") title = "公司特情稽查情况";
+            if (check_type == 2 && type == "2") title = "联网特情稽查情况";
+            for (var key in data) {
+                for (var i in data[key]) {
+                    itemsname = "";
+                    var itemvalue = "";
+                    names = new Array();
+                    for (var name in data[key][i].scoremap) {
+                        names.push(name);
+                        itemsname += '<td style="width:78px">' + name + '</td>';
+                        itemvalue += '<td>' + data[key][i].scoremap[name] + '</td>';
+
+                        var v = totalnamesvalue.get(name);
+                        if (v == null || v == undefined) v = 0;
+                        v += data[key][i].scoremap[name];
+                        totalnamesvalue.set(name, v);
+                    }
+
+
+                    datas += '<tr>';
+                    if (i == 0) {
+                        datas += '<td rowspan=' + data[key].length + '>' + key + "</td>";
+                    }
+                    datas += '<td>' + data[key][i].deptname + "</td>";
+                    datas += itemvalue;
+                    datas += '<td>' + data[key][i].totalScore + '</td>';
+                    datas += '<td>' + data[key][i].level + '</td>';
+                    datas += '</tr>';
+
+                    t8 += data[key][i].totalScore;
+                }
+            }
+
+            datas += '<tr><td colspan=2>合计</td>';
+            for (var i in names) {
+                datas += '<td>' + totalnamesvalue.get(names[i]) + '</td>';
+            }
+            datas += '<td>' + t8 + '</td><td> - </td></tr>';
+
+            var html = ' <table class="statable">' +
+                '            <thead style="font-size:  20px;text-align:  center;border:  0px;">' +
+                '                <tr>' +
+                '                    <td colspan="13" style="padding:  10px;border:  0px;">' + $("#month_date").val().replace("/", "-") + '月份' + title + '</td>' +
+                '                </tr>' +
+                '            </thead>' +
+                '            <tbody>' +
+                '                <tr>' +
+                '                    <td style="width:40px">道管</td>' +
+                '                    <td style="width:78px">服务区</td>' +
+                itemsname +
+                '                    <td>得分<br>(1000)</td>' +
+                '                    <td>服务<br>评价</td>' +
+                '                </tr>' +
+                datas +
+                '            </tbody>' +
+                '        </table>';
+
+            layer.open({
+                area: ["800px", "500px"],
+                type: 1,
+                title: '统计',
+                maxmin: true,
+                closeBtn: 1,
+                shadeClose: true,
+                skin: '#fff', //没有背景色
+                resize: true,
+                content: "<div style='width:100%;background: #fff;text-align: center;padding:10px'>   <button class=\"btn btn-info3\" type=\"button\" style=\"    position: absolute;right: 10px;top: 17px;\" onclick=\"exportThirds()\"> 导出Excel</button>" + html + "</div>"
+            });
+        });
+    }
+
+    if (check_type == 2 && type == "") {
+
+        var p = {
+            "check_type": check_type,
+            "check_period": $("#month_date").val()
+        };
+
+
+        post_common_service("/f/checkOther/getOtherCheckStatistics", p, function(data) {
+
+            var names = new Array();
+            var totalnamesvalue = new HashMap();
+            var itemsname = "";
+            var datas = '';
+            var t8 = 0;
+            var t1 = 0;
+            var t2 = 0;
+            var t3 = 0;
+
+            //key 盐城道管
+            for (var key in data) {
+                //i list 盐城
+                for (var i in data[key]) {
+
+                    var itemvalue = "";
+                    //type 1
+                    for (var j in data[key][i].scoretypemap) {
+                        var scoremap = data[key][i].scoretypemap[j];
+                        names = new Array();
+                        itemsname = "";
+                        var totalvalue = 0;
+                        for (var name in scoremap) {
+                            names.push(name);
+                            itemsname += '<td style="width:78px">' + name + '</td>';
+                            itemvalue += '<td>' + scoremap[name] + '</td>';
+
+                            totalvalue += scoremap[name];
+
+                            var v = totalnamesvalue.get(name + j);
+                            if (v == null || v == undefined) v = 0;
+                            v += scoremap[name];
+                            totalnamesvalue.set(name + j, v);
+                        }
+                        itemvalue += '<td>' + totalvalue + '</td>';
+
+                        if (j == "1") t2 += totalvalue;
+                        if (j == "2") t3 += totalvalue;
+
+                    }
+
+                    datas += '<tr>';
+                    if (i == 0) {
+                        datas += '<td rowspan=' + data[key].length + '>' + key + "</td>";
+                    }
+                    datas += '<td>' + data[key][i].deptname + "</td>";
+                    datas += '<td>' + data[key][i].totalcheck + "</td>";
+                    datas += itemvalue;
+                    datas += '<td>' + data[key][i].totalScore + '</td>';
+                    datas += '</tr>';
+
+                    t1 += data[key][i].totalcheck;
+                    t8 += data[key][i].totalScore;
+                }
+            }
+
+            datas += '<tr><td colspan=2>合计</td>';
+            datas += '<td>' + t1 + '</td>';
+            for (var i in names) {
+                datas += '<td>' + totalnamesvalue.get(names[i] + "1") + '</td>';
+            }
+            datas += '<td>' + t2 + '</td>';
+            for (var i in names) {
+                datas += '<td>' + totalnamesvalue.get(names[i] + "2") + '</td>';
+            }
+            datas += '<td>' + t3 + '</td>';
+            datas += '<td>' + t8 + '</td></tr>';
+
+            var html = ' <table class="statable">' +
+                '            <thead style="font-size:  20px;text-align:  center;border:  0px;">' +
+                '                <tr>' +
+                '                    <td colspan="13" style="padding:  10px;border:  0px;">' + $("#month_date").val().replace("/", "-") + '月份特情稽查情况汇总</td>' +
+                '                </tr>' +
+                '            </thead>' +
+                '            <tbody>' +
+                '                <tr>' +
+                '<td rowspan=2>道管</td>' +
+                '<td rowspan=2>服务区</td>' +
+                '<td rowspan=2>存在问题特情数量</td>' +
+                '<td colspan=' + (names.length + 1) + '>内部特情稽查存在问题数量</td>' +
+                '<td colspan=' + (names.length + 1) + '>联网中心特情稽查存在问题数量</td>' +
+                '<td rowspan=2>合计扣分</td>' +
+                '                </tr>' +
+                '                <tr>' +
+                itemsname +
+                '<td >合计</td>' +
+                itemsname +
+                '<td >合计</td>' +
+                '                </tr>' +
+                datas +
+                '            </tbody>' +
+                '        </table>';
+            layer.open({
+                area: ["800px", "500px"],
+                type: 1,
+                title: '统计',
+                maxmin: true,
+                closeBtn: 1,
+                shadeClose: true,
+                skin: '#fff', //没有背景色
+                resize: true,
+                content: "<div style='width:100%;background: #fff;text-align: center;padding:10px'>   <button class=\"btn btn-info3\" type=\"button\" style=\"    position: absolute;right: 10px;top: 17px;\" onclick=\"exportThirds()\"> 导出Excel</button>" + html + "</div>"
+            });
+        });
+    }
+}

+ 174 - 0
VisualInspection/fwq/view/other_check/onsite_check.html

@@ -0,0 +1,174 @@
+<!--现场稽查-->
+<link rel="stylesheet" type="text/css" href="/css/other_check/other_check.css">
+<script src="/fwq/js/other_check/other_check.js?_inline"></script>
+<!--  start -->
+<div class="container-fluid ">
+    <div class="row">
+        <div>
+            <span style="float: left;
+                padding-top: 5px;">时间:</span>
+            <div class="div-month">
+                <input id="month_date" class="form-control form-date" type="text" placeholder="请选择" style="height:30px;">
+            </div>
+            <!-- <span style="float: left;
+                 padding-top: 5px;">道管:</span>
+            <div class="div-roadManage">
+                <select class="form-control" id="first"></select>
+            </div> -->
+            <span style="float: left;
+                padding-top: 5px;">服务区:</span>
+            <div class="div-station">
+                <select class="form-control" id="fsList"></select>
+            </div>
+
+            <div class="col-xs-1">
+                <div class="input-group">
+                    <button class="btn btn-primary " type="button" id="conditional_query">查询</button>
+                </div>
+            </div>
+
+            <div style="float:right;margin-right:30px;">
+
+                <button class="btn btn-info3" type="button" style="margin-right:30px;" onclick="static()">统计</button>
+
+                <button class="btn btn-primary" type="button" id="add_btn"><i class="icon icon-plus-sign"></i> 增加稽查记录</button>
+
+                <button class="btn btn-info3" type="button" style="margin-left:30px;" onclick="exportThird()"> 导出Excel</button>
+            </div>
+        </div>
+    </div>
+    <hr>
+    <div class="row">
+        <!-- 使用一个div来显示数据表格 -->
+        <div class="datatable" data-checkable="true" data-sortable="true"></div>
+    </div>
+    <div class="">
+
+
+    </div>
+
+</div>
+<!--  end -->
+<div style="display:none;" id="form-div">
+    <div class="layer-content" style="width:100%;height:100%;">
+        <div style="width:350px;overflow:hidden;zoom:1;margin:auto;">
+            <div style="width:100%;margin-top:20px;overflow:hidden;zoom:1;">
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">选择服务区</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div class="div-select"><select class="form-control" id="select-dept"></select></button>
+                        </div>
+                        <!-- <div class="div-select"><select class="form-control" id="select-personal"></select></button>
+                        </div> -->
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">扣分类别</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div id="check_item_select" style="position: relative;">
+                            <input class="form-control" id="check_item_id">
+                        </div>
+                        <div class="form-group check_item_group">
+                            <!--<label for="exampleInputPassword4" class="col-sm-2">分类:</label>-->
+                            <div class="col-md-6 col-sm-10">
+                                <div id="check_item_select"></div>
+
+                            </div>
+                        </div>
+                    </div>
+                    <div class="panel-body" style="display:none;">
+                        <ul id="check_rule_tree2" class="ztree">
+
+                        </ul>
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">扣分描述</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <input class="form-control" id="remark">
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">扣分值</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <input class="form-control" id="check_score" onkeypress="return kkpager.keypress_gopage(event);">
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">附件上传</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div class="col-md-10">
+                            <div id="uploaderExample" class="uploader">
+                                <div id="editImage" file_src="" style="overflow:hidden;zoom:1;"></div>
+                                <div class="file-list" data-drag-placeholder="请拖拽文件到此处"></div>
+                                <button type="button" class="btn btn-primary  uploader-btn-browse" style="float:left;"><i class="icon icon-cloud-upload"></i> 选择文件</button>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">稽查时间</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div class="div-month2">
+                            <input id="month_date2" class="form-control form-date" type="text" placeholder="请选择" style="height:32px;">
+                        </div>
+                        <select class="form-control" style="width:130px;" id="check_num">
+                        <option value="1">第一次检查</option>
+                        <option value="2">第二次检查</option>
+                        <option value="3">第三次检查</option>
+                    </select>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="operation" style="width:100%;overflow:hidden;zoom:1;border-top:1px solid #ddd;margin-top:20px;padding:10px 10px 10px 10px;">
+            <button class="btn btn-primary" type="button" style="float:right;" id="save-check"> 保存</button>
+            <button class="btn btn-primary" type="button" style="float:right;background-color:#fff;color:#333;margin-right:20px;" id="close-layer"> 关闭</button>
+        </div>
+    </div>
+    <script>
+        $(document).ready(function() {
+            check_type = 3;
+            init();
+        });
+
+        function exportThird() {
+            var param = '';
+            var month_date = $("#month_date").val();
+            // var first = $("#first").val();
+            var second = $("#fsList").val();
+            if (month_date != '') {
+                param = "&check_time_name=" + month_date;
+            }
+            if (second != '') {
+                param += "&dept_id=" + second;
+            }
+            window.open(getserveraddr() + "/f/file/other/check/excel?check_type=3" + param);
+        }
+
+        function exportThirds() {
+            var param = '';
+            var month_date = $("#month_date").val();
+            // var first = $("#first").val();
+            var second = $("#fsList").val();
+            if (month_date != '') {
+                param = "&check_time_name=" + month_date;
+            }
+            if (second != '') {
+                param += "&dept_id=" + second;
+            }
+            window.open(getserveraddr() + "/f/file/other/check/static/excel?check_type=3" + param);
+        }
+    </script>

+ 178 - 0
VisualInspection/fwq/view/other_check/third_unannounced_check.html

@@ -0,0 +1,178 @@
+<link rel="stylesheet" type="text/css" href="/css/other_check/other_check.css">
+<script src="/fwq/js/other_check/other_check.js?_inline"></script>
+<!--  start -->
+<div class="container-fluid ">
+    <div class="row">
+        <div>
+            <div class="col-xs-1" style="width:160px">
+                <span style="float: left;
+                padding-top: 5px;">时间:</span>
+                <div class="div-month">
+                    <input id="month_date" class="form-control form-date" type="text" placeholder="请选择" style="height:30px;">
+                </div>
+            </div>
+            <!-- <div class="col-xs-1" style="width:220px">
+                <span style="float: left;
+                 padding-top: 5px;">道管:</span>
+                <div class="div-roadManage">
+                    <select class="form-control" id="first"></select>
+                </div>
+            </div> -->
+            <div class="col-xs-1" style="width:212px">
+                <span style="float: left;
+                padding-top: 5px;">服务区:</span>
+                <div class="div-station">
+                    <select class="form-control" id="fsList"></select>
+                </div>
+            </div>
+
+            <div class="col-xs-1">
+                <div class="input-group">
+                    <button class="btn btn-primary " type="button" id="conditional_query">查询</button>
+                </div>
+            </div>
+
+            <div class="col-xs-4" style="float:right;margin-right:30px;">
+                <button class="btn btn-info3" type="button" style="margin-right:30px;" onclick="static()">统计</button>
+
+                <button class="btn btn-primary" type="button" id="add_btn"><i class="icon icon-plus-sign"></i> 增加稽查记录</button>
+
+                <button class="btn btn-info3" type="button" style="margin-left:30px;" onclick="exportThird()"> 导出Excel</button>
+            </div>
+
+        </div>
+    </div>
+    <hr>
+    <div class="row">
+        <!-- 使用一个div来显示数据表格 -->
+        <div class="datatable" data-checkable="true" data-sortable="true"></div>
+    </div>
+    <div class="">
+
+    </div>
+
+</div>
+<!--  end -->
+<div style="display:none;" id="form-div">
+    <div class="layer-content" style="width:100%;height:100%;">
+        <div style="width:350px;overflow:hidden;zoom:1;margin:auto;">
+            <div style="width:100%;margin-top:20px;overflow:hidden;zoom:1;">
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">选择服务区</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div class="div-select"><select class="form-control" id="select-dept"></select></button>
+                        </div>
+                        <!-- <div class="div-select"><select class="form-control" id="select-personal"></select></button>
+                        </div> -->
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">扣分类别</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div id="check_item_select" style="position: relative;">
+                            <input class="form-control" id="check_item_id">
+                        </div>
+                        <div class="form-group check_item_group">
+                            <!--<label for="exampleInputPassword4" class="col-sm-2">分类:</label>-->
+                            <div class="col-md-6 col-sm-10">
+                                <div id="check_item_select"></div>
+
+                            </div>
+                        </div>
+                    </div>
+                    <div class="panel-body" style="display:none;">
+                        <ul id="check_rule_tree2" class="ztree">
+
+                        </ul>
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">扣分描述</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <input class="form-control" id="remark">
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">扣分值</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <input class="form-control" id="check_score" onkeypress="return kkpager.keypress_gopage(event);">
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">附件上传</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div class="col-md-10">
+                            <div id="uploaderExample" class="uploader">
+                                <div id="editImage" file_src="" style="overflow:hidden;zoom:1;"></div>
+                                <div class="file-list" data-drag-placeholder="请拖拽文件到此处"></div>
+                                <button type="button" class="btn btn-primary  uploader-btn-browse" style="float:left;"><i class="icon icon-cloud-upload"></i> 选择文件</button>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                <div style="width:100%;margin-top:10px;overflow:hidden;zoom:1;">
+                    <div style="width:80px;float:left;">
+                        <span style="line-height:32px;">稽查时间</span>
+                    </div>
+                    <div style="width:260px;float:left;">
+                        <div class="div-month2">
+                            <input id="month_date2" class="form-control form-date" type="text" placeholder="请选择" style="height:32px;">
+                        </div>
+                        <select class="form-control" style="width:130px;" id="check_num">
+                        <option value="1">第一次检查</option>
+                        <option value="2">第二次检查</option>
+                        <option value="3">第三次检查</option>
+                    </select>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="operation" style="width:100%;overflow:hidden;zoom:1;border-top:1px solid #ddd;margin-top:20px;padding:10px 10px 10px 10px;">
+            <button class="btn btn-primary" type="button" style="float:right;" id="save-check"> 保存</button>
+            <button class="btn btn-primary" type="button" style="float:right;background-color:#fff;color:#333;margin-right:20px;" id="close-layer"> 关闭</button>
+        </div>
+    </div>
+    <script>
+        $(document).ready(function() {
+            check_type = 1;
+            init();
+        });
+
+        function exportThird() {
+            var param = '';
+            var month_date = $("#month_date").val();
+            // var first = $("#first").val();
+            var second = $("#fsList").val();
+            if (month_date != '') {
+                param = "&check_time_name=" + month_date;
+            }
+            if (second != '') {
+                param += "&dept_id=" + second;
+            }
+            window.open(getserveraddr() + "/f/file/other/check/excel?check_type=1" + param);
+        }
+
+        function exportThirds() {
+            var param = '';
+            var month_date = $("#month_date").val();
+            // var first = $("#first").val();
+            var second = $("#fsList").val();
+            if (month_date != '') {
+                param = "&check_time_name=" + month_date;
+            }
+            if (second != '') {
+                param += "&dept_id=" + second;
+            }
+            window.open(getserveraddr() + "/f/file/other/check/static/excel?check_type=1" + param);
+        }
+    </script>

+ 2 - 0
VisualInspection/js/main.js

@@ -127,6 +127,8 @@ $(document).ready(function() {
         getRoadManagerList();
         //加载清障大队列表
         getWreckerGroupList();
+        //加载服务区列表
+        getServiceAreaList();
         getFeeList(function(data1) {
             getFeePersonList(function(data3) {
                 getJobList(function(data2) {

+ 33 - 0
VisualInspection/js/util/util.js

@@ -218,6 +218,7 @@ function setRoadManagerValue(data, div, selectId, hasAll, isname) {
 
 var cache_road_manager_fee_list_map;
 
+//获取收费站列表
 function getFeeList(callback) {
     get_common_service("/dept/getAllFs", null, function(data) {
         $.zui.store.set("cache_fee_station_list", data);
@@ -285,6 +286,18 @@ function setSASelectValue(data, div, selectId) {
     $(div).html(optStr);
 }
 
+function setSASelectValueNoAll(data, div, selectId) {
+    var optStr = '<option value="">请选择服务区</option>';
+    for (var i in data) {
+        if (data[i].deptid == selectId)
+            optStr += '<option value="' + data[i].deptid + '" selected="selected">' + data[i].name + '</option>';
+        else
+            optStr += '<option value="' + data[i].deptid + '">' + data[i].name + '</option>';
+    }
+    $(div).html('');
+    $(div).html(optStr);
+}
+
 function setFeeSelectValue(data, div, selectId) {
     var optStr = '<option value="">全部</option>';
     for (var i in data) {
@@ -311,6 +324,7 @@ function setFeeSelectValueNoAll(data, div, selectId) {
 
 var cache_road_manager_wrecker_group_map;
 
+//获取清障部队列表
 function getWreckerGroupList(callback) {
     get_common_service("/dept/getAllWG", null, function(data) {
         $.zui.store.set("cache_wrecker_group_list", data);
@@ -327,6 +341,25 @@ function getWreckerGroupList(callback) {
     });
 }
 
+var cache_service_area_map;
+
+//获取服务区列表
+function getServiceAreaList(callback) {
+    get_common_service("/dept/getAllSA", null, function(data) {
+        $.zui.store.set("cache_service_area_list", data);
+        var map = new Map();
+        for (var i = 0; i < data.length; i++) {
+            if (!map.get(data[i].parentid)) {
+                map.put(data[i].parentid, []);
+            }
+            var arr = map.get(data[i].parentid);
+            arr.push(data[i]);
+        }
+        cache_service_area_map = map;
+        if (callback) callback(data);
+    });
+}
+
 function setWreckerGroupSelect(div, selectId) {
     var feeList = $.zui.store.get("cache_wrecker_group_list");
     if (feeList) {

+ 12 - 5
VisualInspection_server/src/main/java/com/xintong/SystemInit.java

@@ -1,18 +1,19 @@
 package com.xintong;
 
-import com.xintong.visualinspection.service.UserService;
-import org.slf4j.LoggerFactory;
-import org.springframework.context.ApplicationListener;
-import org.springframework.context.event.ContextRefreshedEvent;
-
 import com.xintong.visualinspection.service.ConstantService;
 import com.xintong.visualinspection.service.DepartmentService;
+import com.xintong.visualinspection.service.ItemService;
 import com.xintong.visualinspection.service.JobService;
+import com.xintong.visualinspection.service.UserService;
 import com.xintong.visualinspection.service.impl.ConstantServiceImpl;
 import com.xintong.visualinspection.service.impl.DepartmentServiceImpl;
+import com.xintong.visualinspection.service.impl.ItemServiceImpl;
 import com.xintong.visualinspection.service.impl.JobServiceImpl;
 import com.xintong.visualinspection.service.impl.UserServiceImpl;
 import com.xintong.visualinspection.util.CacheUtil;
+import org.slf4j.LoggerFactory;
+import org.springframework.context.ApplicationListener;
+import org.springframework.context.event.ContextRefreshedEvent;
 
 public class SystemInit implements ApplicationListener<ContextRefreshedEvent> {
 
@@ -20,6 +21,7 @@ public class SystemInit implements ApplicationListener<ContextRefreshedEvent> {
 	UserService userService;
 	DepartmentService deptService;
 	JobService jobService;
+	ItemService itemService;
 	private static final org.slf4j.Logger logger = LoggerFactory.getLogger(SystemInit.class);
 	@Override
 	public void onApplicationEvent(ContextRefreshedEvent arg0) {
@@ -45,6 +47,7 @@ public class SystemInit implements ApplicationListener<ContextRefreshedEvent> {
 		//加载部门信息
 		deptService = arg0.getApplicationContext().getBean(DepartmentServiceImpl.class);
 		CacheUtil.refreshDeptMap(deptService);
+		CacheUtil.refreshSAList(deptService);
 //		List<Organ> deptList = deptService.getAll();
 //		for(Organ organ:deptList){
 //			CacheUtil.deptMap.put(new Long(organ.getId()), organ);
@@ -53,5 +56,9 @@ public class SystemInit implements ApplicationListener<ContextRefreshedEvent> {
 		
 		jobService = arg0.getApplicationContext().getBean(JobServiceImpl.class);
 		CacheUtil.refreshJobMap(jobService);
+
+		itemService = arg0.getApplicationContext().getBean(ItemServiceImpl.class);
+		CacheUtil.refreshItemMap(itemService);
+		CacheUtil.refreshItemNameMap(itemService);
 	}
 }

+ 98 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/gettway/CheckOtherController_F.java

@@ -0,0 +1,98 @@
+package com.xintong.visualinspection.controller.gettway;
+
+import com.alibaba.dubbo.config.annotation.Reference;
+import com.xintong.system.err.BusinessException;
+import com.xintong.visualinspection.bean.FwqCheckOther;
+import com.xintong.visualinspection.controller.BaseController;
+import com.xintong.visualinspection.service.CheckOtherService_F;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.validation.Valid;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/f/checkOther")
+public class CheckOtherController_F extends BaseController {
+
+    @Reference(version = "1.0.0",
+            application = "${dubbo.application.id}",
+            registry = "${dubbo.registry.address}")
+    private CheckOtherService_F checkOtherService_f;
+
+    /**
+     * 第三方暗访稽查查询(查询条件:时间,道管,服务区)
+     * @param request
+     * @param page
+     * @param size
+     * @param fwqCheckOther
+     * @return
+     */
+    @RequestMapping(value = "/getAllCheckOther/{page}/{size}")
+    public String getAllCheckOther(HttpServletRequest request, @PathVariable Integer page, @PathVariable Integer size, @RequestBody FwqCheckOther fwqCheckOther){
+        Object result = checkOtherService_f.getAllCheckOther(page,size,fwqCheckOther);
+        return super.returnSuccessResult(result);
+    }
+
+    /**
+     * 添加其他稽查查记录
+     * @param request
+     * @param fwqCheckOther
+     * @return
+     */
+    @RequestMapping(value = "/add")
+    public String add(HttpServletRequest request, @Valid @RequestBody FwqCheckOther fwqCheckOther) {
+        checkOtherService_f.addCheckOther(fwqCheckOther);
+        return super.returnSuccessResult("添加成功");
+    }
+
+    /**
+     * 更新稽查记录
+     * @param fwqCheckOther
+     * @return
+     */
+    @RequestMapping(value = "/update")
+    public String update(@RequestBody FwqCheckOther fwqCheckOther){
+        if(fwqCheckOther.getId()==null){
+            throw new BusinessException(20002);
+        }
+        checkOtherService_f.updateCheckOther(fwqCheckOther);
+        return super.returnSuccessResult("修改成功");
+    }
+
+    /**
+     * 根据id删除稽查记录
+     * @param fwqCheckOther
+     * @return
+     */
+    @RequestMapping(value = "/delete")
+    public String delete(@RequestBody FwqCheckOther fwqCheckOther){
+        if(fwqCheckOther.getId()==null){
+            throw new BusinessException(20002);
+        }
+        checkOtherService_f.deleteCheckOther(fwqCheckOther.getId());
+        return super.returnSuccessResult("删除成功");
+    }
+
+    /**根据id获取稽查记录
+     * @param fwqCheckOther
+     * @return
+     */
+    @RequestMapping(value = "/getCheckById")
+    public String getCheckById(@RequestBody FwqCheckOther fwqCheckOther){
+        if(fwqCheckOther.getId()==null){
+            throw new BusinessException(20002);
+        }
+        FwqCheckOther result =checkOtherService_f.selectCheckById(fwqCheckOther.getId());
+        return super.returnSuccessResult(result);
+    }
+
+    @RequestMapping(value = "/getOtherCheckStatistics")
+    public String getOtherCheckStatistics(@RequestBody FwqCheckOther fwqCheckOther){
+        Map<String,Object> checkStatistics = checkOtherService_f.getCheckOtherStatistics(fwqCheckOther);
+        return super.returnSuccessResult(checkStatistics);
+    }
+}

+ 51 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/gettway/FileExcelController_F.java

@@ -0,0 +1,51 @@
+package com.xintong.visualinspection.controller.gettway;
+
+import com.alibaba.dubbo.config.annotation.Reference;
+import com.xintong.visualinspection.bean.FwqCheckOther;
+import com.xintong.visualinspection.controller.BaseController;
+import com.xintong.visualinspection.service.CheckOtherService_F;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+@RestController
+@RequestMapping("/f/file")
+public class FileExcelController_F extends BaseController {
+
+    @Reference(version = "1.0.0",
+            application = "${dubbo.application.id}",
+            registry = "${dubbo.registry.address}")
+    private CheckOtherService_F checkOtherService_f;
+
+    /**
+     * 第三方暗访稽查导出
+     * @param req
+     * @param resp
+     * @param fwqCheckOther
+     * @return
+     */
+    @RequestMapping(value = "/other/check/excel",method=RequestMethod.GET)
+    public String getOtherCheck(HttpServletRequest req,HttpServletResponse resp,
+                                FwqCheckOther fwqCheckOther){
+        checkOtherService_f.getOtherCheckExcel(fwqCheckOther, req, resp);
+        return super.returnSuccessResult(null);
+    }
+
+    /**
+     * 第三方暗访稽查统计-导出
+     * @param req
+     * @param resp
+     * @param fwqCheckOther
+     * @returnE
+     */
+    @RequestMapping(value = "/other/check/static/excel",method= RequestMethod.GET)
+    public String getOtherCheckststic(HttpServletRequest req,HttpServletResponse resp,
+                                      FwqCheckOther fwqCheckOther){
+        checkOtherService_f.getExcel(fwqCheckOther, req, resp);
+        return super.returnSuccessResult(null);
+    }
+
+}

+ 17 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/dao/cluster/ItemDao.java

@@ -0,0 +1,17 @@
+package com.xintong.visualinspection.dao.cluster;
+
+import com.xintong.visualinspection.bean.Item;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 文件名:UserInfoDao
+ * 版本信息:日期:2017/3/30 Copyright 江苏省交通规划设计院 Corporation 2017 版权所有.
+ */
+@Mapper
+public interface ItemDao {
+    public List<Item> getAll();
+
+    List<String> getCheckItemName(Long aLong);
+}

+ 23 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/cluster/ItemMapper.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xintong.visualinspection.dao.cluster.ItemDao" >
+    <resultMap id="BaseResultMap" type="com.xintong.visualinspection.bean.Item" >
+        <id column="id" property="id" jdbcType="INTEGER" />
+        <result column="parent_id" property="parent_id" jdbcType="INTEGER" />
+        <result column="name" property="name" jdbcType="VARCHAR" />
+        <result column="content" property="content" jdbcType="VARCHAR" />
+        <result column="score" property="score" jdbcType="INTEGER" />
+        <result column="score_type" property="score_type" jdbcType="INTEGER" />
+        <result column="type" property="type" jdbcType="INTEGER" />
+    </resultMap>
+
+    <select id="getAll" resultMap="BaseResultMap"  >
+        SELECT *
+        FROM check_item ORDER BY parent_id ASC , id ASC
+    </select>
+
+    <select id="getCheckItemName" parameterType="java.lang.Long" resultType="java.lang.String">
+        select if(p.score is NULL,p.name,(select name from check_item where id = p.parent_id)) itemname from check_item p where p.id in (select item_id from check_rule_item where rule_id=#{id}) GROUP BY itemname
+    </select>
+
+</mapper>

+ 18 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/CommonServiceImpl.java

@@ -1,6 +1,8 @@
 package com.xintong.visualinspection.service.impl;
 
 import com.xintong.visualinspection.bean.Constant;
+import com.xintong.visualinspection.bean.FeeStation;
+import com.xintong.visualinspection.bean.Item;
 import com.xintong.visualinspection.bean.Job;
 import com.xintong.visualinspection.bean.Organ;
 import com.xintong.visualinspection.bean.User;
@@ -52,4 +54,20 @@ public class CommonServiceImpl implements CommonService {
     public Map<Long, Job> getJobMap() {
         return CacheUtil.jobMap;
     }
+
+    @Override
+    public Map<Long, Item> getItemMap() {
+        return CacheUtil.itemMap;
+    }
+
+    @Override
+    public List<String> getCheckItemName(Long aLong) {
+        return CacheUtil.itemNameMap.get(aLong);
+    }
+
+    @Override
+    public List<FeeStation> getAllDeptByLayer(String s) {
+        return CacheUtil.allDeptMap.get(s);
+    }
+
 }

+ 36 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/ItemServiceImpl.java

@@ -0,0 +1,36 @@
+package com.xintong.visualinspection.service.impl;
+
+import com.xintong.visualinspection.bean.Item;
+import com.xintong.visualinspection.dao.cluster.ItemDao;
+import com.xintong.visualinspection.service.BaseService;
+import com.xintong.visualinspection.service.ItemService;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 文件名:UserServiceImpl 版本信息:日期:2017/3/30 Copyright 江苏省交通规划设计院 Corporation 2017
+ * 版权所有.
+ */
+@Service
+public class ItemServiceImpl extends BaseService implements ItemService {
+
+	private static final org.slf4j.Logger logger = LoggerFactory.getLogger(ItemService.class);
+
+	@Autowired
+	private ItemDao itemDao;
+
+	@Override
+	public List<Item> getAll() {
+
+		return itemDao.getAll();
+	}
+
+	@Override
+	public List<String> getCheckItemName(Long aLong) {
+		return itemDao.getCheckItemName(aLong);
+	}
+
+}

ファイルの差分が大きいため隠しています
+ 69 - 10
VisualInspection_server/visual/visual.log


+ 23 - 0
Visuallnspection_fjq/visuallnspection_fjq/src/main/java/com/xintong/visualinspection/visuallnspection_fjq/dao/FwqCheckOtherDao.java

@@ -0,0 +1,23 @@
+package com.xintong.visualinspection.visuallnspection_fjq.dao;
+
+import com.xintong.visualinspection.bean.FwqCheckOther;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 文件名:FwqCheckOtherDao
+ * 版本信息:日期:2018/5/2 Copyright 江苏省交通规划设计院 Corporation 2018 版权所有.
+ */
+@Mapper
+public interface FwqCheckOtherDao {
+    List<FwqCheckOther> getAllCheckOther(FwqCheckOther fwqCheckOther);
+
+    void addCheckOther(FwqCheckOther fwqOtherCheck);
+
+    void deleteCheckOther(Long id);
+
+    void updateCheckOther(FwqCheckOther fwqCheckOther);
+
+    FwqCheckOther selectCheckById(Long id);
+}

+ 63 - 0
Visuallnspection_fjq/visuallnspection_fjq/src/main/java/com/xintong/visualinspection/visuallnspection_fjq/mapper/master/CheckOtherMapper.xml

@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xintong.visualinspection.visuallnspection_fjq.dao.FwqCheckOtherDao">
+
+    <select id="getAllCheckOther" parameterType="com.xintong.visualinspection.bean.FwqCheckOther" resultType="com.xintong.visualinspection.bean.FwqCheckOther">
+        SELECT *
+        FROM other_check
+        WHERE check_type = #{check_type}
+        <if test="check_time_name != null and check_time_name != ''">
+            AND check_time_name = #{check_time_name}
+        </if>
+        <if test="dept_id != null">
+            AND dept_id = #{dept_id}
+        </if>
+        <if test="special_check_type != null">
+            AND special_check_type = #{special_check_type}
+        </if>
+        ORDER BY check_time DESC
+    </select>
+
+    <insert id="addCheckOther" parameterType="com.xintong.visualinspection.bean.FwqCheckOther">
+        INSERT INTO
+        other_check
+        (dept_id,check_person_id,check_score,check_item_id,remark,check_type,file_ids,check_num,check_time,check_time_name,update_time,wrecker_check_type, special_check_type)
+        VALUES
+        (#{dept_id},#{check_person_id},#{check_score},#{check_item_id},#{remark},#{check_type},#{file_ids},#{check_num},#{check_time},#{check_time_name},now(),#{wrecker_check_type},#{special_check_type})
+    </insert>
+
+    <delete id="deleteCheckOther" parameterType="java.lang.Long" >
+        DELETE FROM other_check WHERE id =#{id}
+    </delete>
+
+    <update id="updateCheckOther" parameterType="com.xintong.visualinspection.bean.FwqCheckOther" >
+        UPDATE
+        other_check
+        SET
+        <if test="dept_id != null">dept_id = #{dept_id}</if>
+        <if test="check_person_id != null">,check_person_id = #{check_person_id}</if>
+        <if test="check_type != null">,check_type = #{check_type}</if>
+        <if test="check_type != null">,check_type = #{check_type}</if>
+        <if test="check_item_id != null">,check_item_id = #{check_item_id}</if>
+        <if test="remark != null and remark !='' " >,remark = #{remark}</if>
+        <if test="check_score != null">,check_score = #{check_score}</if>
+        <if test="file_ids != null">,file_ids = #{file_ids}</if>
+        <if test="check_time != null">,check_time = #{check_time}</if>
+        <if test="check_time_name !=  null">,check_time_name= #{check_time_name} </if>
+        <if test="check_num != null">,check_num = #{check_num}</if>
+        <if test="wrecker_check_type != null">,wrecker_check_type = #{wrecker_check_type}</if>
+        <if test="special_check_type != null">,special_check_type = #{special_check_type}</if>
+        WHERE
+        id = #{id}
+    </update>
+
+    <select id="selectCheckById" parameterType="java.lang.Long" resultType="com.xintong.visualinspection.bean.FwqCheckOther" >
+        SELECT o.id,o.dept_id,o.check_person_id,o.check_score,o.check_item_id,o.remark,o.check_type,o.file_ids,o.check_num,o.check_time,
+        o.check_time_name,o.delete_flag,o.update_time, o.wrecker_check_type,o.special_check_type
+        FROM other_check o
+        WHERE o.id = #{id}
+    </select>
+
+</mapper>
+
+

+ 374 - 0
Visuallnspection_fjq/visuallnspection_fjq/src/main/java/com/xintong/visualinspection/visuallnspection_fjq/service/impl/CheckOtherServiceImpl.java

@@ -0,0 +1,374 @@
+package com.xintong.visualinspection.visuallnspection_fjq.service.impl;
+
+import com.alibaba.dubbo.config.annotation.Reference;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.xintong.visualinspection.bean.Constant;
+import com.xintong.visualinspection.bean.FeeStation;
+import com.xintong.visualinspection.bean.FwqCheckOther;
+import com.xintong.visualinspection.bean.FwqCheckOtherStatistics;
+import com.xintong.visualinspection.bean.Item;
+import com.xintong.visualinspection.bean.Organ;
+import com.xintong.visualinspection.service.CheckOtherService_F;
+import com.xintong.visualinspection.service.CommonService;
+import com.xintong.visualinspection.visuallnspection_fjq.dao.FwqCheckOtherDao;
+import org.jxls.common.Context;
+import org.jxls.util.JxlsHelper;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 文件名:OtherCheckServiceImpl_F
+ * 版本信息:日期:2017/4/7 Copyright 江苏省交通规划设计院 Corporation 2017 版权所有.
+ *
+ * @author wenhongquan
+ * @date 2018/05/02
+ */
+
+@com.alibaba.dubbo.config.annotation.Service(
+        version = "1.0.0",
+        application = "${dubbo.application.id}",
+        protocol = "${dubbo.protocol.id}",
+        registry = "${dubbo.registry.id}"
+)
+public class CheckOtherServiceImpl implements CheckOtherService_F {
+
+    private static final Logger logger = LoggerFactory.getLogger(CheckOtherServiceImpl.class);
+
+    @Autowired
+    private FwqCheckOtherDao fwqCheckOtherDao;
+
+    @Reference(version = "1.0.0",
+            application = "${dubbo.application.id}",
+            registry = "${dubbo.registry.address}")
+    private CommonService commonService;
+
+    /**
+     * 第三方暗访稽查查询(查询条件:时间,道管,服务区)
+     *
+     * @param page
+     * @param size
+     * @param fwqCheckOther
+     * @return
+     */
+    @Override
+    public Object getAllCheckOther(Integer page, Integer size, FwqCheckOther fwqCheckOther) {
+        if (!(page.equals(0) && size.equals(0))) {
+            PageHelper.startPage(page, size);
+        }
+        List<FwqCheckOther> checkOtherList = fwqCheckOtherDao.getAllCheckOther(fwqCheckOther == null ? new FwqCheckOther() : fwqCheckOther);
+        Map<Long, Organ> deptMap = commonService.getDeptMap();
+        Map<Long, Item> itemMap = commonService.getItemMap();
+        Map<String, Constant> codeMap = commonService.getCodeMap();
+        for (FwqCheckOther data : checkOtherList) {
+            if (deptMap.get(data.getDept_id()) != null) {
+                data.setOrgan_name(deptMap.get(data.getDept_id()).getOrganname());
+            }
+            if (itemMap.get(data.getCheck_item_id()) != null) {
+                data.setCheck_item_name(itemMap.get(data.getCheck_item_id()).getName());
+                if (itemMap.get(data.getCheck_item_id()).getParent_id() != null) {
+                    if (itemMap.get(data.getCheck_item_id()).getScore() == null) {
+                        data.setPcheckname(itemMap.get(data.getCheck_item_id()).getName());
+                    } else {
+                        data.setPcheckname(itemMap.get(itemMap.get(data.getCheck_item_id()).getParent_id()).getName());
+                    }
+                }
+            }
+            if (codeMap.get(data.getWrecker_check_type()) != null) {
+                data.setWrecker_check_type_name(codeMap.get(data.getWrecker_check_type()).getCode_name());
+            }
+            if (codeMap.get(data.getSpecial_check_type()) != null) {
+                data.setSpecial_check_type_name(codeMap.get(data.getSpecial_check_type()).getCode_name());
+            }
+        }
+        if (!(page.equals(0) && size.equals(0))) {
+            return new PageInfo<FwqCheckOther>(checkOtherList);
+        }
+        return checkOtherList;
+    }
+
+    /**
+     * 第三方暗访稽查查询(查询条件:时间,道管,服务区),<无分页>
+     *
+     * @param fwqCheckOther
+     * @return
+     */
+    private Object getAllCheckOther(FwqCheckOther fwqCheckOther) {
+
+        List<FwqCheckOther> checkOtherList = fwqCheckOtherDao.getAllCheckOther(fwqCheckOther == null ? new FwqCheckOther() : fwqCheckOther);
+        Map<Long, Organ> deptMap = commonService.getDeptMap();
+        Map<Long, Item> itemMap = commonService.getItemMap();
+        Map<String, Constant> codeMap = commonService.getCodeMap();
+        for (FwqCheckOther data : checkOtherList) {
+            if (deptMap.get(data.getDept_id()) != null) {
+                data.setOrgan_name(deptMap.get(data.getDept_id()).getOrganname());
+            }
+            if (itemMap.get(data.getCheck_item_id()) != null) {
+                data.setCheck_item_name(itemMap.get(data.getCheck_item_id()).getName());
+                if (itemMap.get(data.getCheck_item_id()).getParent_id() != null) {
+                    if (itemMap.get(data.getCheck_item_id()).getScore() == null) {
+                        data.setPcheckname(itemMap.get(data.getCheck_item_id()).getName());
+                    } else {
+                        data.setPcheckname(itemMap.get(itemMap.get(data.getCheck_item_id()).getParent_id()).getName());
+                    }
+                }
+            }
+            if (codeMap.get(data.getWrecker_check_type()) != null) {
+                data.setWrecker_check_type_name(codeMap.get(data.getWrecker_check_type()).getCode_name());
+            }
+            if (codeMap.get(data.getSpecial_check_type()) != null) {
+                data.setSpecial_check_type_name(codeMap.get(data.getSpecial_check_type()).getCode_name());
+            }
+        }
+        return checkOtherList;
+    }
+
+    /**
+     * 新增稽查数据
+     *
+     * @param fwqOtherCheck
+     */
+    @Override
+    public void addCheckOther(FwqCheckOther fwqOtherCheck) {
+        fwqCheckOtherDao.addCheckOther(fwqOtherCheck);
+    }
+
+    @Override
+    public void deleteCheckOther(Long id) {
+        fwqCheckOtherDao.deleteCheckOther(id);
+    }
+
+    @Override
+    public void updateCheckOther(FwqCheckOther fwqCheckOther) {
+        fwqCheckOtherDao.updateCheckOther(fwqCheckOther);
+    }
+
+    @Override
+    public FwqCheckOther selectCheckById(Long id) {
+        FwqCheckOther fwqCheckOther = fwqCheckOtherDao.selectCheckById(id);
+        Map<Long, Item> itemMap = commonService.getItemMap();
+        fwqCheckOther.setCheck_item_name(itemMap.get(fwqCheckOther.getCheck_item_id()).getName());
+        return fwqCheckOther;
+    }
+
+    /**
+     * 统计数据
+     *
+     * @param fwqCheckOther
+     * @return
+     */
+    @Override
+    public Map<String, Object> getCheckOtherStatistics(FwqCheckOther fwqCheckOther) {
+
+        Map<String, Object> datas = new HashMap<>();
+        List<FwqCheckOtherStatistics> fwqCheckOtherStatisticses = new ArrayList<>();
+
+        fwqCheckOther.setCheck_time_name(fwqCheckOther.getCheck_period());
+        List<FwqCheckOther> checkOtherList = fwqCheckOtherDao.getAllCheckOther(fwqCheckOther);
+        Map<Long, Organ> deptMap = commonService.getDeptMap();
+        Map<Long, Item> itemMap = commonService.getItemMap();
+        Map<String, Constant> codeMap = commonService.getCodeMap();
+        for (FwqCheckOther data : checkOtherList) {
+            if (deptMap.get(data.getDept_id()) != null) {
+                data.setOrgan_name(deptMap.get(data.getDept_id()).getOrganname());
+            }
+            if (itemMap.get(data.getCheck_item_id()) != null) {
+                data.setCheck_item_name(itemMap.get(data.getCheck_item_id()).getName());
+                if (itemMap.get(data.getCheck_item_id()).getParent_id() != null) {
+                    if (itemMap.get(data.getCheck_item_id()).getScore() == null) {
+                        data.setPcheckname(itemMap.get(data.getCheck_item_id()).getName());
+                    } else {
+                        data.setPcheckname(itemMap.get(itemMap.get(data.getCheck_item_id()).getParent_id()).getName());
+                    }
+                }
+            }
+            if (codeMap.get(data.getWrecker_check_type()) != null) {
+                data.setWrecker_check_type_name(codeMap.get(data.getWrecker_check_type()).getCode_name());
+            }
+            if (codeMap.get(data.getSpecial_check_type()) != null) {
+                data.setSpecial_check_type_name(codeMap.get(data.getSpecial_check_type()).getCode_name());
+            }
+        }
+
+        // 获得所有服务区数据
+        List<FeeStation> saList = commonService.getAllDeptByLayer("SA");
+        // 获得所有道管中心数据
+        List<FeeStation> rmList = commonService.getAllDeptByLayer("RM");
+
+        int checkType = fwqCheckOther.getCheck_type();
+        if (checkType == 1 || checkType == 3 || checkType == 4 || (checkType == 2 && fwqCheckOther.getSpecial_check_type() != null)) {
+            Long id = 21L;
+            if (checkType == 1) {
+                id = 21L;
+            }
+            if (checkType == 3) {
+                id = 23L;
+            }
+            if (checkType == 4) {
+                id = 24L;
+            }
+            if (checkType == 2) {
+                id = 22L;
+            }
+            //获取考核办法对应的考核项
+            List<String> itemName = commonService.getCheckItemName(id);
+
+            for (FwqCheckOther c : checkOtherList) {
+                if (!itemName.contains(c.getPcheckname())) {
+                    itemName.add(c.getPcheckname());
+                }
+            }
+
+            for (FeeStation station : saList) {
+                FwqCheckOtherStatistics fwqCheckOtherStatistics = new FwqCheckOtherStatistics();
+                fwqCheckOtherStatistics.setDeptid(station.getDeptid());
+                fwqCheckOtherStatistics.setDeptname(station.getName().replaceAll("服务区", ""));
+                fwqCheckOtherStatistics.setPdeptid(station.getParentid());
+                HashMap<String, Integer> s = new HashMap<>();
+                for (String i : itemName) {
+                    s.put(i, 0);
+                }
+                for (FwqCheckOther c : checkOtherList) {
+                    if (c.getDept_id().toString().equals(station.getDeptid())) {
+                        Integer i = s.get(c.getPcheckname());
+                        if (i == null) {
+                            i = 0;
+                        }
+//                        if (checkType == 2) {
+                        s.put(c.getPcheckname(), Integer.valueOf((int) (i + c.getCheck_score())));
+//                        } else {
+//                            if (c.getOrgan_name() == null || "".equals(c.getOrgan_name())) {
+//                                s.put(c.getPcheckname(), Integer.valueOf((int) (i + c.getCheck_score())));
+//                            } else {
+//                                s.put(c.getPcheckname(), i);
+//                            }
+//                        }
+                    }
+                }
+                fwqCheckOtherStatistics.setScoremap(s);
+                fwqCheckOtherStatisticses.add(fwqCheckOtherStatistics);
+            }
+
+            for (FeeStation a : rmList) {
+                List<FwqCheckOtherStatistics> s = new ArrayList<>();
+                for (FwqCheckOtherStatistics o : fwqCheckOtherStatisticses) {
+                    if (o.getPdeptid().equals(a.getDeptid())) {
+                        o.setPdeptname(a.getName());
+                        s.add(o);
+                    }
+                }
+                datas.put(a.getName().replaceAll("道管中心", ""), s);
+            }
+
+        }
+
+        return datas;
+    }
+
+    @Override
+    public void getExcel(FwqCheckOther fwqCheckOther, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
+        String title = fwqCheckOther.getCheck_time_name();
+        int checkType = fwqCheckOther.getCheck_type();
+        if (checkType == 1 || checkType == 4 || checkType == 3 || (checkType == 2 && fwqCheckOther.getSpecial_check_type() != null)) {
+            Map<String, Object> m = getCheckOtherStatistics(fwqCheckOther);
+            Map<String, Object> map = new HashMap<>();
+            map.put("datas", m);
+
+            if (checkType == 1) {
+                title += "月份第三方暗访情况";
+            }
+            if (checkType == 4) {
+                title += "月份数据平台应用情况";
+            }
+            if (checkType == 3) {
+                title += "月份现场检查情况";
+            }
+            if (checkType == 2 && (fwqCheckOther.getSpecial_check_type().intValue() == 1)) {
+                title += "公司特情稽查情况";
+            }
+            if (checkType == 2 && (fwqCheckOther.getSpecial_check_type().intValue() == 2)) {
+                title += "联网特情稽查情况";
+            }
+            map.put("title", title.replaceAll("/", "-"));
+
+            exportExcel(title.replaceAll("/", "-"), "fwq_other_check_info_anfang", map, httpServletResponse);
+        }
+    }
+
+    @Override
+    public void getOtherCheckExcel(FwqCheckOther fwqCheckOther, HttpServletRequest req, HttpServletResponse resp) {
+        List<FwqCheckOther> checkOtherList = (List<FwqCheckOther>) getAllCheckOther(fwqCheckOther);
+        Map<String, Object> map = new HashMap<>();
+        map.put("list", checkOtherList);
+        if(fwqCheckOther.getCheck_type() == 1){
+            exportExcel("第三方暗访稽查" , "fwq_third_check", map, resp);
+        }else if(fwqCheckOther.getCheck_type() == 2){
+            exportExcel("特情稽查" , "fwq_special_check", map, resp);
+        }else if(fwqCheckOther.getCheck_type() == 3){
+            exportExcel("现场稽查" , "fwq_duty_check", map, resp);
+        }else if(fwqCheckOther.getCheck_type() == 4){
+            exportExcel("数据平台应用稽查" , "fwq_data_platform", map, resp);
+        }else if(fwqCheckOther.getCheck_type() == 5){
+            exportExcel("清排障稽查" , "fwq_solve_traffic", map, resp);
+        }
+    }
+
+    private void exportExcel(String fileName, String excelTemplateName, Map<String, Object> map,
+                             HttpServletResponse resp) {
+        String path = "./" + fileName + ".xls";
+        try (InputStream is = this.getClass().getResourceAsStream("/" + excelTemplateName + ".xls")) {
+            try (OutputStream os = new FileOutputStream(path)) {
+                Context context = new Context();
+                // context.putVar("list", map.get("list"));
+                // context.putVar("totalMan", map.get("totalMan"));
+                for (String key : map.keySet()) {
+                    context.putVar(key, map.get(key));
+                }
+                JxlsHelper.getInstance().processTemplate(is, os, context);
+            }
+            Thread.sleep(1000);
+            // path是指欲下载的文件的路径。
+            File file = new File(path);
+            // 取得文件名。
+            String filename = file.getName();
+            // 以流的形式下载文件。
+            InputStream bis = new BufferedInputStream(new FileInputStream(file));
+            byte[] buffer = new byte[bis.available()];
+            bis.read(buffer);
+            bis.close();
+            // 清空response
+            resp.reset();
+            // 设置response的Header
+            resp.addHeader("Content-Disposition",
+                    "attachment;filename=" + new String(filename.getBytes("gb2312"), "ISO8859-1"));
+            resp.addHeader("Content-Length", "" + file.length());
+            OutputStream toClient = new BufferedOutputStream(resp.getOutputStream());
+            resp.setContentType("application/vnd.ms-excel;charset=gb2312");
+            toClient.write(buffer);
+            toClient.flush();
+            toClient.close();
+            // 删除生成的临时文件
+            if (file.exists()) {
+                file.delete();
+            }
+
+        } catch (Exception e) {
+            logger.error(e.toString());
+        }
+    }
+}

BIN
Visuallnspection_fjq/visuallnspection_fjq/src/main/resources/fwq_other_check_info_anfang.xls


BIN
Visuallnspection_fjq/visuallnspection_fjq/src/main/resources/fwq_third_check.xls


+ 9 - 1
Visuallnspection_fjq/visuallnspectioninteface/.idea/compiler.xml

@@ -1,13 +1,21 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="CompilerConfiguration">
+    <resourceExtensions />
     <annotationProcessing>
-      <profile name="Maven default annotation processors profile" enabled="true">
+      <profile default="true" name="Default" enabled="false">
+        <processorPath useClasspath="true" />
+      </profile>
+      <profile default="false" name="Maven default annotation processors profile" enabled="true">
         <sourceOutputDir name="target/generated-sources/annotations" />
         <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
         <outputRelativeToContentRoot value="true" />
+        <processorPath useClasspath="true" />
         <module name="visuallnspectioninteface" />
       </profile>
     </annotationProcessing>
+    <bytecodeTargetLevel>
+      <module name="visuallnspectioninteface" target="1.6" />
+    </bytecodeTargetLevel>
   </component>
 </project>

+ 7 - 1
Visuallnspection_fjq/visuallnspectioninteface/.idea/misc.xml

@@ -1,5 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
+  <component name="EntryPointsManager">
+    <entry_points version="2.0" />
+  </component>
   <component name="ExternalStorageConfigurationManager" enabled="true" />
   <component name="MavenProjectsManager">
     <option name="originalFiles">
@@ -8,7 +11,10 @@
       </list>
     </option>
   </component>
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_3" project-jdk-name="1.8" project-jdk-type="JavaSDK">
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_3" assert-keyword="false" jdk-15="false" project-jdk-name="1.8" project-jdk-type="JavaSDK">
     <output url="file://$PROJECT_DIR$/out" />
   </component>
+  <component name="SvnBranchConfigurationManager">
+    <option name="mySupportsUserInfoFilter" value="true" />
+  </component>
 </project>

+ 368 - 243
Visuallnspection_fjq/visuallnspectioninteface/.idea/workspace.xml

@@ -1,9 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="ChangeListManager">
-    <list default="true" id="3c73e9d8-fd3b-4d0f-883f-b13169e80478" name="Default" comment="" />
+    <list default="true" readonly="true" id="3c73e9d8-fd3b-4d0f-883f-b13169e80478" name="Default" comment="" />
     <ignored path="$PROJECT_DIR$/out/" />
     <ignored path="$PROJECT_DIR$/target/" />
+    <ignored path=".idea/dataSources.local.xml" />
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="TRACKING_ENABLED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
@@ -11,92 +12,37 @@
     <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
     <option name="LAST_RESOLUTION" value="IGNORE" />
   </component>
+  <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
+  <component name="CreatePatchCommitExecutor">
+    <option name="PATCH_PATH" value="" />
+  </component>
+  <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
+  <component name="FavoritesManager">
+    <favorites_list name="visuallnspectioninteface" />
+  </component>
   <component name="FileEditorManager">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
-      <file leaf-file-name="Job.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Job.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="135">
-              <caret line="11" column="40" selection-start-line="11" selection-start-column="40" selection-end-line="11" selection-end-column="40" />
-              <folding>
-                <element signature="imports" expanded="true" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="Organ.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Organ.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="135">
-              <caret line="13" column="42" selection-start-line="13" selection-start-column="42" selection-end-line="13" selection-end-column="42" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="TaskService_F.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/TaskService_F.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="150">
-              <caret line="10" column="59" lean-forward="true" selection-start-line="10" selection-start-column="59" selection-end-line="10" selection-end-column="59" />
-              <folding>
-                <element signature="imports" expanded="true" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
       <file leaf-file-name="DepartmentService.java" pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/DepartmentService.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="360">
-              <caret line="29" column="39" selection-start-line="29" selection-start-column="39" selection-end-line="29" selection-end-column="39" />
+            <state relative-caret-position="270">
+              <caret line="23" column="39" selection-start-line="23" selection-start-column="39" selection-end-line="23" selection-end-column="39" />
+              <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="Role.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Role.java">
+      <file leaf-file-name="CommonService.java" pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CommonService.java">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="135">
-              <caret line="11" column="41" selection-start-line="11" selection-start-column="41" selection-end-line="11" selection-end-column="41" />
-              <folding>
-                <element signature="imports" expanded="true" />
-              </folding>
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="User.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/User.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="315">
-              <caret line="30" selection-start-line="30" selection-end-line="30" selection-end-column="50" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="WreckerGroup.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/WreckerGroup.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="60">
-              <caret line="7" column="3" selection-start-line="7" selection-start-column="3" selection-end-line="7" selection-end-column="3" />
-            </state>
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="FwqCheckTask.java" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java">
-          <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="182">
-              <caret line="35" column="28" lean-forward="true" selection-start-line="35" selection-start-column="28" selection-end-line="35" selection-end-column="28" />
-              <folding>
-                <element signature="imports" expanded="true" />
-              </folding>
+            <state relative-caret-position="120">
+              <caret line="8" column="0" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" />
+              <folding />
             </state>
           </provider>
         </entry>
       </file>
+<<<<<<< HEAD
       <file leaf-file-name="AreaInfo.java" pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/AreaInfo.java">
           <provider selected="true" editor-type-id="text-editor">
@@ -108,9 +54,13 @@
       </file>
       <file leaf-file-name="CustomJsonDateDeserializer.java" pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CustomJsonDateDeserializer.java">
+=======
+      <file leaf-file-name="TaskService_F.java" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/TaskService_F.java">
+>>>>>>> c5a52b7568ef02c65e9fbcecd82f0abc923c0371
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="105">
-              <caret line="15" column="3" selection-start-line="15" selection-start-column="3" selection-end-line="15" selection-end-column="3" />
+            <state relative-caret-position="120">
+              <caret line="10" column="59" selection-start-line="10" selection-start-column="59" selection-end-line="10" selection-end-column="59" />
               <folding>
                 <element signature="imports" expanded="true" />
               </folding>
@@ -128,6 +78,11 @@
       </list>
     </option>
   </component>
+  <component name="GradleLocalSettings">
+    <option name="externalProjectsViewState">
+      <projects_view />
+    </option>
+  </component>
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
@@ -142,9 +97,6 @@
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CodeUtil.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/UserService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/ConstantService.java" />
-        <option value="$PROJECT_DIR$/pom.xml" />
-        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CacheUtil.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CommonService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Constant.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FeeStation.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Job.java" />
@@ -153,17 +105,28 @@
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/WreckerGroup.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/DepartmentService.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CustomJsonDateDeserializer.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java" />
         <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/TaskService_F.java" />
-        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/AreaInfo.java" />
+        <option value="$PROJECT_DIR$/pom.xml" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqOtherCheck.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/OtherCheckService_F.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CheckItemService.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/CheckItem.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Item.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/ItemService.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CacheUtil.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckOtherStatistics.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CheckOtherService_F.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckOther.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CommonService.java" />
+        <option value="$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CommonService.java" />
       </list>
     </option>
   </component>
-  <component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
-  <component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
+  <component name="JsBuildToolGruntFileManager" detection-done="true" />
+  <component name="JsBuildToolPackageJson" detection-done="true" />
   <component name="JsGulpfileManager">
     <detection-done>true</detection-done>
-    <sorting>DEFINITION_ORDER</sorting>
   </component>
   <component name="MavenImportPreferences">
     <option name="generalSettings">
@@ -178,95 +141,170 @@
       </MavenImportingSettings>
     </option>
   </component>
-  <component name="ProjectFrameBounds" extendedState="6" fullScreen="true">
+  <component name="ProjectFrameBounds">
+    <option name="y" value="23" />
     <option name="width" value="1440" />
-    <option name="height" value="900" />
+    <option name="height" value="877" />
+  </component>
+  <component name="ProjectLevelVcsManager" settingsEditedManually="false">
+    <OptionsSetting value="true" id="Add" />
+    <OptionsSetting value="true" id="Remove" />
+    <OptionsSetting value="true" id="Checkout" />
+    <OptionsSetting value="true" id="Update" />
+    <OptionsSetting value="true" id="Status" />
+    <OptionsSetting value="true" id="Edit" />
+    <ConfirmationsSetting value="0" id="Add" />
+    <ConfirmationsSetting value="0" id="Remove" />
   </component>
   <component name="ProjectView">
-    <navigator proportions="" version="1">
+    <navigator currentView="ProjectPane" proportions="" version="1">
+      <flattenPackages />
+      <showMembers />
+      <showModules />
+      <showLibraryContents />
+      <hideEmptyPackages />
+      <abbreviatePackageNames />
+      <autoscrollToSource />
+      <autoscrollFromSource />
+      <sortByType />
+      <manualOrder />
       <foldersAlwaysOnTop value="true" />
     </navigator>
     <panes>
-      <pane id="AndroidView" />
-      <pane id="PackagesPane">
-        <subPane>
-          <expand>
-            <path>
-              <item name="visuallnspectioninteface" type="58d84e3e:PackageViewProjectNode" />
-              <item name="visuallnspectioninteface" type="616d4139:PackageViewModuleNode" />
-            </path>
-          </expand>
-          <select />
-        </subPane>
-      </pane>
       <pane id="Scope" />
       <pane id="ProjectPane">
         <subPane>
-          <expand>
-            <path>
-              <item name="visuallnspectioninteface" type="b2602c69:ProjectViewProjectNode" />
-              <item name="visuallnspectioninteface" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="visuallnspectioninteface" type="b2602c69:ProjectViewProjectNode" />
-              <item name="visuallnspectioninteface" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="visuallnspectioninteface" type="b2602c69:ProjectViewProjectNode" />
-              <item name="visuallnspectioninteface" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="visuallnspectioninteface" type="b2602c69:ProjectViewProjectNode" />
-              <item name="visuallnspectioninteface" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="visuallnspectioninteface" type="b2602c69:ProjectViewProjectNode" />
-              <item name="visuallnspectioninteface" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="visualinspection" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="visuallnspectioninteface" type="b2602c69:ProjectViewProjectNode" />
-              <item name="visuallnspectioninteface" type="462c0819:PsiDirectoryNode" />
-              <item name="src" type="462c0819:PsiDirectoryNode" />
-              <item name="main" type="462c0819:PsiDirectoryNode" />
-              <item name="java" type="462c0819:PsiDirectoryNode" />
-              <item name="visualinspection" type="462c0819:PsiDirectoryNode" />
-              <item name="bean" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="visuallnspectioninteface" type="b2602c69:ProjectViewProjectNode" />
-              <item name="External Libraries" type="cb654da1:ExternalLibrariesNode" />
-            </path>
-          </expand>
-          <select />
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+          </PATH>
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+          </PATH>
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="src" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="main" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="java" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visualinspection" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="util" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+          </PATH>
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="src" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="main" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="java" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visualinspection" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="service" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+          </PATH>
+          <PATH>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visuallnspectioninteface" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="src" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="main" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="java" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="visualinspection" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+            <PATH_ELEMENT>
+              <option name="myItemId" value="bean" />
+              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+            </PATH_ELEMENT>
+          </PATH>
         </subPane>
       </pane>
+      <pane id="Scratches" />
+      <pane id="PackagesPane">
+        <subPane />
+      </pane>
+      <pane id="AndroidView" />
     </panes>
   </component>
   <component name="PropertiesComponent">
     <property name="WebServerToolWindowFactoryState" value="false" />
     <property name="aspect.path.notification.shown" value="true" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/../../VisualInspection_server" />
     <property name="nodejs_interpreter_path.stuck_in_default_project" value="/usr/local/bin/node" />
     <property name="nodejs_npm_path_reset_for_default_project" value="true" />
-    <property name="project.structure.last.edited" value="Modules" />
-    <property name="project.structure.proportion" value="0.0" />
-    <property name="project.structure.side.proportion" value="0.0" />
+    <property name="project.structure.last.edited" value="SDKs" />
+    <property name="project.structure.proportion" value="0.15" />
+    <property name="project.structure.side.proportion" value="0.2" />
     <property name="settings.editor.selected.configurable" value="preferences.updates" />
+    <property name="settings.editor.splitter.proportion" value="0.2" />
   </component>
   <component name="RecentsManager">
     <key name="CopyClassDialog.RECENTS_KEY">
-      <recent name="com.xintong.visualinspection.util" />
       <recent name="com.xintong.visualinspection.bean" />
+      <recent name="com.xintong.visualinspection.util" />
       <recent name="com.xintong.visualinspection.service" />
       <recent name="com.xintong.visuallnspection.bean" />
       <recent name="com.xintong.visuallnspection.service" />
@@ -291,13 +329,38 @@
     </option>
   </component>
   <component name="RunManager">
+    <configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
+      <module name="" />
+      <option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
+      <option name="PROGRAM_PARAMETERS" />
+      <predefined_log_file id="idea.log" enabled="true" />
+      <method />
+    </configuration>
     <configuration default="true" type="Applet" factoryName="Applet">
       <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
+      <option name="WIDTH" value="0" />
+      <option name="HEIGHT" value="0" />
+      <module />
+      <method />
     </configuration>
     <configuration default="true" type="Application" factoryName="Application">
+      <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
+      <option name="MAIN_CLASS_NAME" />
+      <option name="VM_PARAMETERS" />
+      <option name="PROGRAM_PARAMETERS" />
       <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+      <option name="ENABLE_SWING_INSPECTOR" value="false" />
+      <option name="ENV_VARIABLES" />
+      <option name="PASS_PARENT_ENVS" value="true" />
+      <module name="" />
+      <envs />
+      <method />
     </configuration>
     <configuration default="true" type="JUnit" factoryName="JUnit">
+      <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
+      <module name="" />
       <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
       <option name="ALTERNATIVE_JRE_PATH" />
       <option name="PACKAGE_NAME" />
@@ -307,13 +370,26 @@
       <option name="VM_PARAMETERS" value="-ea" />
       <option name="PARAMETERS" />
       <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
+      <option name="ENV_VARIABLES" />
       <option name="PASS_PARENT_ENVS" value="true" />
       <option name="TEST_SEARCH_SCOPE">
         <value defaultName="singleModule" />
       </option>
+      <envs />
       <patterns />
+      <method />
+    </configuration>
+    <configuration default="true" type="Remote" factoryName="Remote">
+      <option name="USE_SOCKET_TRANSPORT" value="true" />
+      <option name="SERVER_MODE" value="false" />
+      <option name="SHMEM_ADDRESS" value="javadebug" />
+      <option name="HOST" value="localhost" />
+      <option name="PORT" value="5005" />
+      <method />
     </configuration>
     <configuration default="true" type="TestNG" factoryName="TestNG">
+      <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
+      <module name="" />
       <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
       <option name="ALTERNATIVE_JRE_PATH" />
       <option name="SUITE_NAME" />
@@ -326,33 +402,26 @@
       <option name="PARAMETERS" />
       <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
       <option name="OUTPUT_DIRECTORY" />
+      <option name="ANNOTATION_TYPE" />
+      <option name="ENV_VARIABLES" />
       <option name="PASS_PARENT_ENVS" value="true" />
       <option name="TEST_SEARCH_SCOPE">
         <value defaultName="singleModule" />
       </option>
       <option name="USE_DEFAULT_REPORTERS" value="false" />
       <option name="PROPERTIES_FILE" />
+      <envs />
       <properties />
       <listeners />
-    </configuration>
-    <configuration default="true" type="Remote" factoryName="Remote">
-      <option name="USE_SOCKET_TRANSPORT" value="true" />
-      <option name="SERVER_MODE" value="false" />
-      <option name="SHMEM_ADDRESS" value="javadebug" />
-      <option name="HOST" value="localhost" />
-      <option name="PORT" value="5005" />
-      <method />
-    </configuration>
-    <configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
-      <module name="" />
-      <option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
-      <option name="PROGRAM_PARAMETERS" />
-      <predefined_log_file id="idea.log" enabled="true" />
       <method />
     </configuration>
   </component>
-  <component name="SvnConfiguration">
-    <configuration />
+  <component name="ShelveChangesManager" show_recycled="false">
+    <option name="remove_strategy" value="false" />
+  </component>
+  <component name="SvnConfiguration" cleanupOnStartRun="true">
+    <configuration>$USER_HOME$/.subversion</configuration>
+    <supportedVersion>125</supportedVersion>
   </component>
   <component name="TaskManager">
     <task active="true" id="Default" summary="Default task">
@@ -367,17 +436,29 @@
       <workItem from="1523151336860" duration="449000" />
       <workItem from="1523428036367" duration="2235000" />
       <workItem from="1524015022257" duration="15178000" />
-      <workItem from="1524904608637" duration="753000" />
+      <workItem from="1524904608637" duration="1149000" />
+      <workItem from="1525240138731" duration="302000" />
+      <workItem from="1525240465985" duration="422000" />
+      <workItem from="1525240901538" duration="58000" />
+      <workItem from="1525241172441" duration="1224000" />
+      <workItem from="1525242464460" duration="16149000" />
+      <workItem from="1525311552824" duration="31815000" />
+      <workItem from="1525706720308" duration="2999000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
+<<<<<<< HEAD
     <option name="totallyTimeSpent" value="27444000" />
+=======
+    <option name="totallyTimeSpent" value="80693000" />
+>>>>>>> c5a52b7568ef02c65e9fbcecd82f0abc923c0371
   </component>
   <component name="ToolWindowManager">
-    <frame x="0" y="0" width="1440" height="900" extended-state="6" />
-    <editor active="true" />
+    <frame x="0" y="23" width="1440" height="877" extended-state="6" />
+    <editor active="false" />
     <layout>
+<<<<<<< HEAD
       <window_info anchor="right" id="Palette" order="3" />
       <window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
       <window_info anchor="right" id="Maven Projects" order="3" />
@@ -434,50 +515,76 @@
       <window_info active="true" anchor="bottom" id="Terminal" order="7" visible="true" weight="0.3260606" />
       <window_info anchor="right" id="Commander" order="0" weight="0.4" />
       <window_info id="Designer" order="2" />
+=======
+      <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
+      <window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+      <window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.1388535" sideWeight="0.5028612" order="7" side_tool="true" content_ui="tabs" />
+      <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3297568" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3299363" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+      <window_info id="Spring" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3299363" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.21146497" sideWeight="0.49713877" order="7" side_tool="false" content_ui="tabs" />
+      <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+      <window_info id="Designer" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.24964234" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
+      <window_info id="Bean Validation" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+      <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+      <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
+      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
+      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
+      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
+      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3299363" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+>>>>>>> c5a52b7568ef02c65e9fbcecd82f0abc923c0371
     </layout>
   </component>
   <component name="TypeScriptGeneratedFilesManager">
     <option name="version" value="1" />
   </component>
+  <component name="Vcs.Log.UiProperties">
+    <option name="RECENTLY_FILTERED_USER_GROUPS">
+      <collection />
+    </option>
+    <option name="RECENTLY_FILTERED_BRANCH_GROUPS">
+      <collection />
+    </option>
+  </component>
   <component name="VcsContentAnnotationSettings">
     <option name="myLimit" value="2678400000" />
   </component>
+  <component name="VcsManagerConfiguration">
+    <ignored-roots>
+      <path value="$PROJECT_DIR$/../.." />
+    </ignored-roots>
+  </component>
+  <component name="XDebuggerManager">
+    <breakpoint-manager />
+    <watches-manager />
+  </component>
   <component name="antWorkspaceConfiguration">
     <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
     <option name="FILTER_TARGETS" value="false" />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/User.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="315">
-          <caret line="30" selection-start-line="30" selection-end-line="30" selection-end-column="50" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/WreckerGroup.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="60">
-          <caret line="7" column="3" selection-start-line="7" selection-start-column="3" selection-end-line="7" selection-end-column="3" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="555">
           <caret line="43" column="28" selection-start-line="43" selection-start-column="17" selection-end-line="43" selection-end-column="28" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+          <folding />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CustomJsonDateDeserializer.java">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="105">
-          <caret line="15" column="3" lean-forward="true" selection-start-line="15" selection-start-column="3" selection-end-line="15" selection-end-column="3" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+          <caret line="15" column="3" selection-start-line="15" selection-start-column="3" selection-end-line="15" selection-end-column="3" />
         </state>
       </provider>
     </entry>
@@ -508,7 +615,7 @@
     <entry file="file://$PROJECT_DIR$/install.sh">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="60">
-          <caret line="4" selection-start-line="4" selection-end-line="4" />
+          <caret line="4" column="0" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="0" />
         </state>
       </provider>
     </entry>
@@ -525,17 +632,15 @@
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/User.java">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="315">
-          <caret line="30" lean-forward="true" selection-start-line="30" selection-end-line="30" selection-end-column="50" />
+          <caret line="30" column="0" selection-start-line="30" selection-start-column="0" selection-end-line="30" selection-end-column="50" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="225">
-          <caret line="19" column="29" lean-forward="true" selection-start-line="19" selection-start-column="29" selection-end-line="19" selection-end-column="29" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+          <caret line="19" column="29" selection-start-line="19" selection-start-column="29" selection-end-line="19" selection-end-column="29" />
+          <folding />
         </state>
       </provider>
     </entry>
@@ -563,7 +668,7 @@
     <entry file="file://$PROJECT_DIR$/pom.xml">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="342">
-          <caret line="18" column="20" lean-forward="true" selection-start-line="18" selection-start-column="20" selection-end-line="18" selection-end-column="20" />
+          <caret line="18" column="20" selection-start-line="18" selection-start-column="20" selection-end-line="18" selection-end-column="20" />
         </state>
       </provider>
     </entry>
@@ -571,28 +676,28 @@
     <entry file="file://$PROJECT_DIR$/pom.xml">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="190">
-          <caret line="10" selection-start-line="10" selection-end-line="10" />
+          <caret line="10" column="0" selection-start-line="10" selection-start-column="0" selection-end-line="10" selection-end-column="0" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/pom.xml">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="798">
-          <caret line="42" lean-forward="true" selection-start-line="42" selection-end-line="42" />
+          <caret line="42" column="0" selection-start-line="42" selection-start-column="0" selection-end-line="42" selection-end-column="0" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/pom.xml">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="798">
-          <caret line="42" selection-start-line="42" selection-end-line="42" />
+          <caret line="42" column="0" selection-start-line="42" selection-start-column="0" selection-end-line="42" selection-end-column="0" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/pom.xml">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="225">
-          <caret line="15" column="20" lean-forward="true" selection-start-line="15" selection-start-column="20" selection-end-line="15" selection-end-column="20" />
+          <caret line="15" column="20" selection-start-line="15" selection-start-column="20" selection-end-line="15" selection-end-column="20" />
         </state>
       </provider>
     </entry>
@@ -606,7 +711,7 @@
     <entry file="file://$PROJECT_DIR$/install.sh">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="60">
-          <caret line="4" lean-forward="true" selection-start-line="4" selection-end-line="4" />
+          <caret line="4" column="0" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="0" />
         </state>
       </provider>
     </entry>
@@ -641,7 +746,7 @@
     <entry file="file://$PROJECT_DIR$/pom.xml">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="294">
-          <caret line="89" column="32" lean-forward="true" selection-start-line="89" selection-start-column="32" selection-end-line="89" selection-end-column="32" />
+          <caret line="89" column="32" selection-start-line="89" selection-start-column="32" selection-end-line="89" selection-end-column="32" />
         </state>
       </provider>
     </entry>
@@ -666,20 +771,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CacheUtil.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="240">
-          <caret line="29" column="18" selection-start-line="29" selection-start-column="18" selection-end-line="29" selection-end-column="38" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CommonService.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="240">
-          <caret line="16" column="39" lean-forward="true" selection-start-line="16" selection-start-column="39" selection-end-line="16" selection-end-column="39" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Constant.java">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="91">
@@ -687,19 +778,12 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FeeStation.java">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="135">
-          <caret line="12" column="47" selection-start-line="12" selection-start-column="47" selection-end-line="12" selection-end-column="47" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/Job.java">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="135">
           <caret line="11" column="40" selection-start-line="11" selection-start-column="40" selection-end-line="11" selection-end-column="40" />
           <folding>
-            <element signature="imports" expanded="true" />
+            <element signature="imports" expanded="false" />
           </folding>
         </state>
       </provider>
@@ -716,7 +800,7 @@
         <state relative-caret-position="135">
           <caret line="11" column="41" selection-start-line="11" selection-start-column="41" selection-end-line="11" selection-end-column="41" />
           <folding>
-            <element signature="imports" expanded="true" />
+            <element signature="imports" expanded="false" />
           </folding>
         </state>
       </provider>
@@ -724,7 +808,7 @@
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/User.java">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="315">
-          <caret line="30" selection-start-line="30" selection-end-line="30" selection-end-column="50" />
+          <caret line="30" column="0" selection-start-line="30" selection-start-column="0" selection-end-line="30" selection-end-column="50" />
         </state>
       </provider>
     </entry>
@@ -737,8 +821,9 @@
     </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/DepartmentService.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="360">
-          <caret line="29" column="39" selection-start-line="29" selection-start-column="39" selection-end-line="29" selection-end-column="39" />
+        <state relative-caret-position="270">
+          <caret line="23" column="39" selection-start-line="23" selection-start-column="39" selection-end-line="23" selection-end-column="39" />
+          <folding />
         </state>
       </provider>
     </entry>
@@ -753,36 +838,76 @@
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="105">
           <caret line="15" column="3" selection-start-line="15" selection-start-column="3" selection-end-line="15" selection-end-column="3" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/TaskService_F.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="120">
+          <caret line="10" column="59" selection-start-line="10" selection-start-column="59" selection-end-line="10" selection-end-column="59" />
           <folding>
             <element signature="imports" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/AreaInfo.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="240">
+          <caret line="16" column="0" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/util/CacheUtil.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="149">
+          <caret line="89" column="43" selection-start-line="89" selection-start-column="43" selection-end-line="89" selection-end-column="43" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
     <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="182">
-          <caret line="35" column="28" lean-forward="true" selection-start-line="35" selection-start-column="28" selection-end-line="35" selection-end-column="28" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="435">
+          <caret line="35" column="28" selection-start-line="35" selection-start-column="28" selection-end-line="35" selection-end-column="28" />
+          <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/TaskService_F.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FeeStation.java">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="150">
-          <caret line="10" column="59" lean-forward="true" selection-start-line="10" selection-start-column="59" selection-end-line="10" selection-end-column="59" />
-          <folding>
-            <element signature="imports" expanded="true" />
-          </folding>
+        <state relative-caret-position="195">
+          <caret line="16" column="24" selection-start-line="16" selection-start-column="24" selection-end-line="16" selection-end-column="24" />
+          <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/AreaInfo.java">
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckOther.java">
       <provider selected="true" editor-type-id="text-editor">
+<<<<<<< HEAD
         <state relative-caret-position="225">
           <caret line="15" column="1" lean-forward="true" selection-start-line="15" selection-start-column="1" selection-end-line="15" selection-end-column="1" />
+=======
+        <state relative-caret-position="135">
+          <caret line="14" column="13" selection-start-line="14" selection-start-column="13" selection-end-line="14" selection-end-column="13" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/bean/FwqCheckOtherStatistics.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="135">
+          <caret line="12" column="13" selection-start-line="12" selection-start-column="13" selection-end-line="12" selection-end-column="13" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main/java/com/xintong/visualinspection/service/CommonService.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="120">
+          <caret line="8" column="0" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" />
+          <folding />
+>>>>>>> c5a52b7568ef02c65e9fbcecd82f0abc923c0371
         </state>
       </provider>
     </entry>
@@ -803,7 +928,7 @@
       </state>
       <state key="FacetStructureConfigurable.UI">
         <settings>
-          <last-edited>Spring</last-edited>
+          <last-edited>No facets are configured</last-edited>
           <splitter-proportions>
             <option name="proportions">
               <list>
@@ -826,7 +951,7 @@
       </state>
       <state key="JdkListConfigurable.UI">
         <settings>
-          <last-edited>1.7</last-edited>
+          <last-edited>1.8</last-edited>
           <splitter-proportions>
             <option name="proportions">
               <list>
@@ -863,7 +988,7 @@
       </state>
       <state key="ProjectLibrariesConfigurable.UI">
         <settings>
-          <last-edited>Maven: aopalliance:aopalliance:1.0</last-edited>
+          <last-edited>Maven: org.springframework:spring-context:4.3.7.RELEASE</last-edited>
           <splitter-proportions>
             <option name="proportions">
               <list>

+ 65 - 0
Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckOther.java

@@ -0,0 +1,65 @@
+package com.xintong.visualinspection.bean;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 文件名:FwqCheckOther
+ * 版本信息:日期:2018/5/2 Copyright 江苏省交通规划设计院 Corporation 2018 版权所有.
+ */
+@Data
+public class FwqCheckOther implements Serializable {
+
+    // pk
+    private Long id;
+    // 服务区id
+    private Long dept_id;
+    // 服务区名称
+    private String organ_name;
+    // 稽查人
+    private Long check_person_id;
+    // 扣分值
+    private Long check_score;
+    // 考核项id
+    private Long check_item_id;
+    // 扣分描述
+    private String remark;
+    // 稽查类型1,2,3,4
+    private Integer check_type;
+    // 附件ids
+    private String file_ids;
+    // 稽查次数
+    private Integer check_num;
+    // 稽查时间
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm",timezone = "GMT+8")
+    private Date check_time;
+    // 稽查月份名称 年/月
+    private String check_time_name;
+    // 删除标志 0 正常,1删除
+    private Integer delete_flag;
+    // 更新时间
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date update_time;
+    // 清障检查类型
+    private Integer wrecker_check_type;
+    // 清障检查类型名称
+    private String wrecker_check_type_name;
+    // 特情稽查类型
+    private Integer special_check_type;
+    // 特情稽查类型名称
+    private String special_check_type_name;
+    // 扣分项名称
+    private String check_item_name;
+    // 扣分类型名
+    private String pcheckname;
+    // 统计时,查询条件(期间)
+    private String check_period;
+    //
+    private String scoretype;
+
+}

+ 40 - 0
Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckOtherStatistics.java

@@ -0,0 +1,40 @@
+package com.xintong.visualinspection.bean;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.HashMap;
+
+/**
+ * 文件名:OtherCheckStatistics
+ * 版本信息:日期:2017/12/20 Copyright 江苏省交通规划设计院 Corporation 2017 版权所有.
+ */
+@Data
+public class FwqCheckOtherStatistics implements Serializable {
+    private String deptid;
+    private String pdeptid;
+    private String deptname;
+    private String pdeptname;
+    private HashMap<String,Integer> scoremap;
+    private Integer totalcheck;
+    private HashMap<String,HashMap<String,Integer>> scoretypemap;
+    private Integer totalScore;
+    private String level;
+
+
+
+    public void setScoremap(HashMap<String, Integer> scoremap) {
+        this.scoremap = scoremap;
+
+        this.totalScore = 1000;
+        for (Integer i:scoremap.values()
+             ) {
+            this.totalScore-=i;
+        }
+        this.level="优秀";
+        if(this.totalScore<1000 && this.totalScore>=985 ){ this.level="优秀";}
+        if(this.totalScore<985 && this.totalScore>=950 ){ this.level="优良";}
+        if(this.totalScore<950 ){ this.level="合格";}
+    }
+
+}

+ 27 - 0
Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Item.java

@@ -0,0 +1,27 @@
+package com.xintong.visualinspection.bean;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 文件名:Item
+ * 版本信息:日期:2018/5/2 Copyright 江苏省交通规划设计院 Corporation 2018 版权所有.
+ */
+@Data
+public class Item implements Serializable {
+    //编号
+    private Integer id;
+    //父节点id
+    private Long parent_id;
+    //名称
+    private String name;
+    //内容
+    private String content;
+    //分数
+    private Integer score;
+    //分数类型(奖励--1  or惩罚--2 )
+    private Integer score_type;
+    //考核类型或考核项,1:考核类型;2:考核项
+    private Integer type;
+}

+ 74 - 0
Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/CheckOtherService_F.java

@@ -0,0 +1,74 @@
+package com.xintong.visualinspection.service;
+
+import com.xintong.visualinspection.bean.FwqCheckOther;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Map;
+
+public interface CheckOtherService_F {
+
+    /**
+     * 查询第三方暗访稽查数据
+     *
+     * @param page
+     * @param size
+     * @param fwqOtherCheck
+     * @return
+     */
+    Object getAllCheckOther(Integer page, Integer size, FwqCheckOther fwqOtherCheck);
+
+    /**
+     * 新增稽查数据
+     *
+     * @param fwqOtherCheck
+     */
+    void addCheckOther(FwqCheckOther fwqOtherCheck);
+
+    /**
+     * 根据id删除稽查记录
+     *
+     * @param id
+     */
+    void deleteCheckOther(Long id);
+
+    /**
+     * 根据id修改稽查记录
+     *
+     * @param fwqOtherCheck
+     */
+    void updateCheckOther(FwqCheckOther fwqOtherCheck);
+
+    /**
+     * 根据id获取稽查记录
+     *
+     * @param id
+     * @return
+     */
+    FwqCheckOther selectCheckById(Long id);
+
+    /**
+     * 统计数据
+     *
+     * @param fwqOtherCheck
+     * @return
+     */
+    Map<String, Object> getCheckOtherStatistics(FwqCheckOther fwqOtherCheck);
+
+    /**
+     * 统计数据导出
+     *
+     * @param fwqOtherCheck
+     * @param req
+     * @param resp
+     */
+    void getExcel(FwqCheckOther fwqOtherCheck, HttpServletRequest req, HttpServletResponse resp);
+
+    /**
+     * 第三方暗访稽查导出excel
+     * @param fwqOtherCheck
+     * @param req
+     * @param resp
+     */
+    void getOtherCheckExcel(FwqCheckOther fwqOtherCheck, HttpServletRequest req, HttpServletResponse resp);
+}

+ 7 - 0
Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/CommonService.java

@@ -1,6 +1,8 @@
 package com.xintong.visualinspection.service;
 
 import com.xintong.visualinspection.bean.Constant;
+import com.xintong.visualinspection.bean.FeeStation;
+import com.xintong.visualinspection.bean.Item;
 import com.xintong.visualinspection.bean.Job;
 import com.xintong.visualinspection.bean.Organ;
 import com.xintong.visualinspection.bean.User;
@@ -19,4 +21,9 @@ public interface CommonService {
     public Map<String,Constant> getCodeMap();
     public Map<String,List<Constant>> getCodeFlagMap();
     public Map<Long,Job> getJobMap();
+    public Map<Long, Item> getItemMap();
+    // 获得考核项(ruleId=21,22,23,24)
+    public List<String> getCheckItemName(Long ruleId);
+    // 获得部门信息,比如SA,RM内容
+    public List<FeeStation> getAllDeptByLayer(String key);
 }

+ 15 - 0
Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/ItemService.java

@@ -0,0 +1,15 @@
+package com.xintong.visualinspection.service;
+
+
+import com.xintong.visualinspection.bean.Item;
+
+import java.util.List;
+
+/**
+ * @author huangcheng
+ * @since 2018/5/2
+ */
+public interface ItemService {
+    public List<Item> getAll();
+    public List<String> getCheckItemName(Long id);
+}

+ 161 - 91
Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CacheUtil.java

@@ -1,11 +1,14 @@
 package com.xintong.visualinspection.util;
 
 import com.xintong.visualinspection.bean.Constant;
+import com.xintong.visualinspection.bean.FeeStation;
+import com.xintong.visualinspection.bean.Item;
 import com.xintong.visualinspection.bean.Job;
 import com.xintong.visualinspection.bean.Organ;
 import com.xintong.visualinspection.bean.User;
 import com.xintong.visualinspection.service.ConstantService;
 import com.xintong.visualinspection.service.DepartmentService;
+import com.xintong.visualinspection.service.ItemService;
 import com.xintong.visualinspection.service.JobService;
 import com.xintong.visualinspection.service.UserService;
 import org.slf4j.LoggerFactory;
@@ -17,95 +20,162 @@ import java.util.Map;
 
 public class CacheUtil {
 
-    public static Map<String,String> commonDataMap = new HashMap<String,String>();
-
-	public static Map<Long,User> userMap = new HashMap<Long,User>();
-	
-	public static Map<Long,Organ> deptMap = new HashMap<Long,Organ>();
-	
-	public static Map<String,Constant> codeMap = new HashMap<String,Constant>();
-	
-	public static Map<String,List<Constant>> codeFlagMap = new HashMap<String,List<Constant>>();
-	
-	public static Map<Long,Job> jobMap = new HashMap<Long,Job>();
-	
-	private static final org.slf4j.Logger logger = LoggerFactory.getLogger(CacheUtil.class);
-	
-	public static void refreshCodeMap(ConstantService constantService){
-		//加载用户信息
-		List<Constant> constantList = constantService.getAll();
-		for(Constant c:constantList){
-			CacheUtil.codeMap.put(c.getCode_flag()+"_"+c.getCode_value(), c);
-			List<Constant> list = CacheUtil.codeFlagMap.get(c.getCode_flag());
-			if(list==null) list = new ArrayList<Constant>();
-			list.add(c);
-			CacheUtil.codeFlagMap.put(c.getCode_flag(),list);
-		}
-		logger.info("加载用户信息成功,数据数:"+CacheUtil.userMap.size());
-	}
-	
-	public static void refreshUserMap(UserService userService){
-		//加载用户信息
-		List<User> userList = userService.getAll();
-		for(User user:userList){
-			CacheUtil.userMap.put(new Long(user.getId()), user);
-		}
-		logger.info("加载用户信息成功,数据数:"+CacheUtil.userMap.size());
-	}
-	
-	public static void refreshDeptMap(DepartmentService deptService){
-		//加载部门信息
-		List<Organ> deptList = deptService.getAll();
-		for(Organ organ:deptList){
-			CacheUtil.deptMap.put(new Long(organ.getId()), organ);
-		}
-		logger.info("加载部门信息成功,数据数:"+CacheUtil.deptMap.size());
-	}
-	
-	public static void refreshJobMap(JobService jobService){
-		//加载用户信息
-		Job j = new Job();
-		j.setDept_id(1L);
-		List<Job> jobList = jobService.getJobList(j);
-		for(Job job:jobList){
-			CacheUtil.jobMap.put(new Long(job.getId()), job);
-		}
-		logger.info("加载用户信息成功,数据数:"+CacheUtil.userMap.size());
-	}
-	
-	public static User getUserFromMap(Long key){
-		if(key == null) return null;
-		return  CacheUtil.userMap.get(key);
-	}
-	
-	public static String getUserTurenameFromMap(Long key){
-		if(getUserFromMap(key)!=null && key!=null){
-			return getUserFromMap(key).getTruename();
-		}
-		return null;
-	}
-	
-	public static Organ getOrganFromMap(Long key){
-		if(key == null) return null;
-		return  CacheUtil.deptMap.get(key);
-	}
-	
-	public static String getOrgannameFromMap(Long key){
-		if(getOrganFromMap(key)!=null){
-			return getOrganFromMap(key).getOrganname();
-		}
-		return null;
-	}
-	
-	public static Job getJobFromMap(Long key){
-		if(key == null) return null;
-		return  CacheUtil.jobMap.get(key);
-	}
-	
-	public static String getJobnameFromMap(Long key){
-		if(getJobFromMap(key)!=null){
-			return getJobFromMap(key).getName();
-		}
-		return null;
-	}
+    public static Map<String, String> commonDataMap = new HashMap<String, String>();
+
+    public static Map<Long, User> userMap = new HashMap<Long, User>();
+
+    public static Map<Long, Organ> deptMap = new HashMap<Long, Organ>();
+
+    public static Map<String, Constant> codeMap = new HashMap<String, Constant>();
+
+    public static Map<String, List<Constant>> codeFlagMap = new HashMap<String, List<Constant>>();
+
+    public static Map<Long, Job> jobMap = new HashMap<Long, Job>();
+
+    public static Map<Long, Item> itemMap = new HashMap<Long, Item>();
+
+    public static Map<Long, List<String>> itemNameMap = new HashMap<Long, List<String>>();
+
+    public static Map<String, List<FeeStation>> allDeptMap = new HashMap<String, List<FeeStation>>();
+
+    private static final org.slf4j.Logger logger = LoggerFactory.getLogger(CacheUtil.class);
+
+    public static void refreshCodeMap(ConstantService constantService) {
+        //加载用户信息
+        List<Constant> constantList = constantService.getAll();
+        for (Constant c : constantList) {
+            CacheUtil.codeMap.put(c.getCode_flag() + "_" + c.getCode_value(), c);
+            List<Constant> list = CacheUtil.codeFlagMap.get(c.getCode_flag());
+            if (list == null) {
+                list = new ArrayList<Constant>();
+            }
+            list.add(c);
+            CacheUtil.codeFlagMap.put(c.getCode_flag(), list);
+        }
+        logger.info("加载CODE信息成功,数据数:" + CacheUtil.codeFlagMap.size());
+    }
+
+    public static void refreshUserMap(UserService userService) {
+        //加载用户信息
+        List<User> userList = userService.getAll();
+        for (User user : userList) {
+            CacheUtil.userMap.put(new Long(user.getId()), user);
+        }
+        logger.info("加载用户信息成功,数据数:" + CacheUtil.userMap.size());
+    }
+
+    public static void refreshDeptMap(DepartmentService deptService) {
+        //加载部门信息
+        List<Organ> deptList = deptService.getAll();
+        for (Organ organ : deptList) {
+            CacheUtil.deptMap.put(new Long(organ.getId()), organ);
+        }
+        logger.info("加载部门信息成功,数据数:" + CacheUtil.deptMap.size());
+    }
+
+    public static void refreshJobMap(JobService jobService) {
+        //加载用户信息
+        Job j = new Job();
+        j.setDept_id(1L);
+        List<Job> jobList = jobService.getJobList(j);
+        for (Job job : jobList) {
+            CacheUtil.jobMap.put(new Long(job.getId()), job);
+        }
+        logger.info("加载职位信息成功,数据数:" + CacheUtil.jobMap.size());
+    }
+
+    public static void refreshItemMap(ItemService itemService) {
+        //加载部门信息
+        List<Item> itemList = itemService.getAll();
+        for (Item checkItem : itemList) {
+            CacheUtil.itemMap.put(new Long(checkItem.getId()), checkItem);
+        }
+        logger.info("加载考核项信息成功,数据数:" + CacheUtil.itemMap.size());
+    }
+
+    public static void refreshItemNameMap(ItemService itemService) {
+        List<Long> list = new ArrayList<Long>();
+        list.add(21L);// 第三方暗访
+        list.add(22L);// 特情稽查
+        list.add(23L);// 现场检查
+        list.add(24L);// 数据平台应用
+        for (Long id : list) {
+            List<String> itemList = itemService.getCheckItemName(id);
+            CacheUtil.itemNameMap.put(id, itemList);
+            logger.info("加载ruleId={},查询考核项信息成功,数据数:{}", id, CacheUtil.itemNameMap.size());
+        }
+    }
+
+    public static void refreshSAList(DepartmentService deptService) {
+        List<FeeStation> saList = deptService.getAllSA();
+        List<FeeStation> rmList = deptService.getAllRM();
+        CacheUtil.allDeptMap.put("SA", saList);
+        CacheUtil.allDeptMap.put("RM", rmList);
+        logger.info(CacheUtil.allDeptMap.toString());
+        logger.info("加载所有服务区,道管信息成功,数据list数:{}", CacheUtil.allDeptMap.size());
+    }
+
+    public static User getUserFromMap(Long key) {
+        if (key == null) {
+            return null;
+        }
+        return CacheUtil.userMap.get(key);
+    }
+
+    public static String getUserTurenameFromMap(Long key) {
+        if (getUserFromMap(key) != null && key != null) {
+            return getUserFromMap(key).getTruename();
+        }
+        return null;
+    }
+
+    public static Organ getOrganFromMap(Long key) {
+        if (key == null) {
+            return null;
+        }
+        return CacheUtil.deptMap.get(key);
+    }
+
+    public static String getOrgannameFromMap(Long key) {
+        if (getOrganFromMap(key) != null) {
+            return getOrganFromMap(key).getOrganname();
+        }
+        return null;
+    }
+
+    public static Job getJobFromMap(Long key) {
+        if (key == null) {
+            return null;
+        }
+        return CacheUtil.jobMap.get(key);
+    }
+
+    public static String getJobnameFromMap(Long key) {
+        if (getJobFromMap(key) != null) {
+            return getJobFromMap(key).getName();
+        }
+        return null;
+    }
+
+    public static Item getItemFromMap(Long key) {
+        if (key == null) {
+            return null;
+        }
+        return CacheUtil.itemMap.get(key);
+    }
+
+    public static String getItemNameFromMap(Long key) {
+        if (getItemFromMap(key) != null) {
+            return getItemFromMap(key).getName();
+        }
+        return null;
+    }
+
+    public static List<String> getItemNameList(Long key) {
+        return CacheUtil.itemNameMap.get(key);
+    }
+
+    public static List<FeeStation> getDeptByLayerFromMap(String key) {
+        return CacheUtil.allDeptMap.get(key);
+    }
 }

+ 1 - 1
Visuallnspection_fjq/visuallnspectioninteface/target/maven-archiver/pom.properties

@@ -1,5 +1,5 @@
 #Generated by Maven
-#Mon May 07 17:43:37 CST 2018
+#Mon May 07 23:56:49 CST 2018
 version=1.0-SNAPSHOT
 groupId=com.xintong.visuallnspection.inteface
 artifactId=visuallnspectioninteface

+ 13 - 8
Visuallnspection_fjq/visuallnspectioninteface/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -1,21 +1,26 @@
 com/xintong/visualinspection/service/CommonService.class
+com/xintong/visualinspection/bean/Organ.class
+com/xintong/visualinspection/service/CheckOtherService_F.class
+com/xintong/visualinspection/bean/FwqCheckOtherStatistics.class
+com/xintong/visualinspection/bean/FeeStation.class
+com/xintong/visualinspection/bean/User.class
+com/xintong/visualinspection/bean/Constant.class
+com/xintong/visualinspection/bean/FwqCheckOther.class
+com/xintong/visualinspection/service/TaskService_F.class
+com/xintong/visualinspection/service/JobService.class
+com/xintong/visualinspection/bean/Job.class
+com/xintong/visualinspection/bean/WreckerGroup.class
 com/xintong/visualinspection/util/DateUtil.class
 com/xintong/visualinspection/util/CacheUtil.class
-com/xintong/visualinspection/bean/Organ.class
+com/xintong/visualinspection/bean/Item.class
 com/xintong/visualinspection/bean/Role.class
 com/xintong/visualinspection/service/UserService.class
-com/xintong/visualinspection/bean/FeeStation.class
-com/xintong/visualinspection/bean/User.class
+com/xintong/visualinspection/service/ItemService.class
 com/xintong/visualinspection/bean/AreaInfo.class
 com/xintong/visualinspection/util/Constants.class
-com/xintong/visualinspection/bean/Constant.class
-com/xintong/visualinspection/service/TaskService_F.class
 com/xintong/visualinspection/service/DepartmentService.class
 com/xintong/visualinspection/util/CodeUtil.class
 com/xintong/visualinspection/util/AuthorUtil.class
 com/xintong/visualinspection/bean/FwqCheckTask.class
-com/xintong/visualinspection/service/JobService.class
 com/xintong/visualinspection/util/CustomJsonDateDeserializer.class
-com/xintong/visualinspection/bean/Job.class
-com/xintong/visualinspection/bean/WreckerGroup.class
 com/xintong/visualinspection/service/ConstantService.class

+ 26 - 21
Visuallnspection_fjq/visuallnspectioninteface/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -1,21 +1,26 @@
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CodeUtil.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/ConstantService.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/User.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Role.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CustomJsonDateDeserializer.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/CommonService.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/Constants.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Organ.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/DepartmentService.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/DateUtil.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/AreaInfo.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CacheUtil.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/UserService.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/TaskService_F.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/WreckerGroup.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/AuthorUtil.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Job.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Constant.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FeeStation.java
-/Users/wenhongquan/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/JobService.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CacheUtil.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/WreckerGroup.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Role.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/Constants.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FeeStation.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/JobService.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CodeUtil.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/CustomJsonDateDeserializer.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/User.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/CommonService.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/DepartmentService.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Organ.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/AreaInfo.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Job.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/TaskService_F.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/AuthorUtil.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/ConstantService.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckOther.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Constant.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/util/DateUtil.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/Item.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/CheckOtherService_F.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckOtherStatistics.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/bean/FwqCheckTask.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/ItemService.java
+/Users/huangcheng/work/idea/VisualInspection/Visuallnspection_fjq/visuallnspectioninteface/src/main/java/com/xintong/visualinspection/service/UserService.java

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません