温红权 9 жил өмнө
parent
commit
95f97fa98a

+ 0 - 0
VisualInspection/css/user/addUser.css


+ 256 - 0
VisualInspection/js/lib/imageupload/css/common.css

@@ -0,0 +1,256 @@
+* {
+	box-sizing: border-box;
+	-moz-box-sizing: border-box;
+	/* Firefox */
+	-webkit-box-sizing: border-box;
+	/* Safari */
+}
+.up-section .type-upimg{
+	display: none;
+}
+::-ms-clear,::-ms-reveal{display:none;}
+textarea{
+	outline: none;
+	line-height: 14px;
+	padding-left: 4px;
+	padding-top: 4px;
+	border: 1px solid #ccc;
+	color: #444;
+	font-size: 14px;
+	outline: none;
+	text-align: left;
+}
+.overflow{
+	overflow: hidden;
+	text-overflow: ellipsis;
+	white-space: nowrap;
+}
+button{
+	outline: none;
+	border: 0px;
+	font-family: "微软雅黑", "PingFang SC", "arial, helvetica, sans-serif";
+}
+input{
+	font-family: "微软雅黑", "PingFang SC", "arial, helvetica, sans-serif";
+	outline: none;
+}
+a {
+	outline: none;
+}
+a,button{cursor:pointer;} 
+
+body {
+	background: #f4f4f4;
+	font-size: 14px;
+	font-family: "微软雅黑", "PingFang SC", "arial, helvetica, sans-serif";
+}
+.clear {
+	clear: both;
+}
+.full{
+	width: 1210px;
+	min-width: 1210px;
+	margin: 0 auto;
+}
+.full-big{
+	width: 1340px;
+	min-width: 1340px;
+	margin: 0 auto;
+}
+.img-full{
+	display: block;
+	width: 100%;
+}
+::-webkit-input-placeholder {
+	color: #777;
+	font-size: 14px;
+}
+:-moz-placeholder {
+	/* Firefox 18- */
+	color: #777;
+	font-size: 14px;
+}
+::-moz-placeholder {
+	/* Firefox 19+ */
+	color: #777;
+	font-size: 14px;
+}
+:-ms-input-placeholder {
+	color:#777;
+	font-size: 14px;
+}
+/* ====clear float====== */
+/*nav a:visited{color: rgb(65,65,65);}
+aside a:visited{color: rgb(65,65,65);}*/
+.fl {
+	float: left;
+}
+.fr {
+	float: right;
+}
+.clear:after {
+	content: '';
+	display: block;
+	clear: both;
+}
+/* reset */
+.pic img{display: none;}
+i,
+p,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+hr,
+br,
+em,
+dl,
+dd,
+li,
+ul,
+ol,
+td,
+th,
+pre,
+form,
+body,
+input,
+strong,
+textarea,
+select,figcaption,figure{
+	margin: 0;
+	padding: 0;
+}
+em {
+	font-style: normal
+}
+li {
+	list-style: none
+}
+a {
+	text-decoration: none;
+}
+img {
+	border: none;
+	
+}
+table {
+	border-collapse: collapse;
+}
+textarea {
+	resize: none;
+	overflow: auto;
+}
+a,button{cursor:pointer;} 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+ 159 - 0
VisualInspection/js/lib/imageupload/css/index.css

@@ -0,0 +1,159 @@
+/*上传图片插件的样式*/
+
+.img-box {
+    margin-top: 40px;
+}
+
+.img-box .up-p {
+    margin-bottom: 20px;
+    font-size: 16px;
+    color: #555;
+}
+
+.z_photo {
+    padding: 18px;
+    border: 2px dashed #E7E6E6;
+    /*padding: 18px;*/
+}
+
+.z_photo .z_file {
+    position: relative;
+}
+
+.z_file .file {
+    width: 100%;
+    height: 100%;
+    opacity: 0;
+    position: absolute;
+    top: 0px;
+    left: 0px;
+    z-index: 100;
+}
+
+.z_photo .up-section {
+    position: relative;
+    margin-right: 20px;
+    margin-bottom: 20px;
+}
+
+.up-section .close-upimg {
+    position: absolute;
+    top: 6px;
+    right: 8px;
+    display: none;
+    z-index: 10;
+}
+
+.up-section .up-span {
+    display: block;
+    width: 100%;
+    height: 100%;
+    visibility: hidden;
+    position: absolute;
+    top: 0px;
+    left: 0px;
+    z-index: 9;
+    background: rgba(0, 0, 0, .5);
+}
+
+.up-section:hover {
+    border: 2px solid #f15134;
+}
+
+.up-section:hover .close-upimg {
+    display: block;
+}
+
+.up-section:hover .up-span {
+    visibility: visible;
+}
+
+.up-img {
+    display: block;
+    width: 100%;
+    height: 100%;
+}
+
+.loading {
+    border: 1px solid #D1D1D1;
+    background: url(../img/loading.gif) no-repeat center;
+}
+
+.up-opcity {
+    opacity: 0;
+}
+
+.img-name-p {
+    display: none;
+}
+
+.upimg-div .up-section {
+    width: 190px;
+    height: 180px;
+}
+
+.img-box .upimg-div .z_file {
+    width: 190px;
+    height: 180px;
+}
+
+.z_file .add-img {
+    display: block;
+    width: 190px;
+    height: 180px;
+}
+
+
+/*遮罩层样式*/
+
+.mask {
+    z-index: 1000;
+    display: none;
+    position: fixed;
+    top: 0px;
+    left: 0px;
+    width: 100%;
+    height: 100%;
+    background: rgba(0, 0, 0, .4);
+}
+
+.mask .mask-content {
+    width: 500px;
+    position: absolute;
+    top: 50%;
+    left: 50%;
+    margin-left: -250px;
+    margin-top: -80px;
+    background: white;
+    height: 160px;
+    text-align: center;
+}
+
+.mask .mask-content .del-p {
+    color: #555;
+    height: 94px;
+    line-height: 94px;
+    font-size: 18px;
+    border-bottom: 1px solid #D1D1D1;
+}
+
+.mask-content .check-p {
+    height: 66px;
+    line-height: 66px;
+    position: absolute;
+    bottom: 0px;
+    left: 0px;
+    width: 100%;
+}
+
+.mask-content .check-p span {
+    width: 49%;
+    display: inline-block;
+    text-align: center;
+    color: #d4361d;
+    font-size: 18px;
+}
+
+.check-p .del-com {
+    border-right: 1px solid #D1D1D1;
+}

BIN
VisualInspection/js/lib/imageupload/img/a11.png


BIN
VisualInspection/js/lib/imageupload/img/a7.png


BIN
VisualInspection/js/lib/imageupload/img/loading.gif


+ 133 - 0
VisualInspection/js/lib/imageupload/js/imgUp.js

@@ -0,0 +1,133 @@
+$(function() {
+    var delParent;
+    var defaults = {
+        fileType: ["jpg", "png", "bmp", "jpeg"], // 上传文件的类型
+        fileSize: 1024 * 1024 * 10 // 上传文件的大小 10M
+    };
+    /*点击图片的文本框*/
+    $(".file").change(function() {
+        var idFile = $(this).attr("id");
+        var file = document.getElementById(idFile);
+        var imgContainer = $(this).parents(".z_photo"); //存放图片的父亲元素
+        var fileList = file.files; //获取的图片文件
+        console.log(fileList + "======filelist=====");
+        var input = $(this).parent(); //文本框的父亲元素
+        var imgArr = [];
+        //遍历得到的图片文件
+        var numUp = imgContainer.find(".up-section").length;
+        var totalNum = numUp + fileList.length; //总的数量
+        if (fileList.length > 1 || totalNum > 1) {
+            alert("上传图片数目不可以超过1个,请重新选择"); //一次选择上传超过5个 或者是已经上传和这次上传的到的总数也不可以超过5个
+        } else if (numUp < 1) {
+            fileList = validateUp(fileList);
+            for (var i = 0; i < fileList.length; i++) {
+                var imgUrl = window.URL.createObjectURL(fileList[i]);
+                imgArr.push(imgUrl);
+                $("#user_img_pre").removeClass("hide");
+                $("#user_img_add").addClass("hide");
+
+                var $section = $("#user_img_pre2");
+                var $span = $("<span class='up-span'>");
+                $span.appendTo($section);
+                var $img0 = $("<img class='close-upimg'>").on("click", function(event) {
+                    event.preventDefault();
+                    event.stopPropagation();
+                    // $(".works-mask").show();
+                    // delParent = $(this).parent();
+
+                    $section.html("")
+                    $("#user_img_add").removeClass("hide");
+                    $("#user_img_pre").addClass("hide");
+
+                });
+                $img0.attr("src", "/js/lib/imageupload/img/a7.png").appendTo($section);
+                var $img = $("<img class='up-img up-opcity'>");
+                $img.attr("src", imgArr[i]);
+                $img.appendTo($section);
+                var $p = $("<p class='img-name-p'>");
+                $p.html(fileList[i].name).appendTo($section);
+                var $input = $("<input id='taglocation' name='taglocation' value='' type='hidden'>");
+                $input.appendTo($section);
+                var $input2 = $("<input id='tags' name='tags' value='' type='hidden'/>");
+                $input2.appendTo($section);
+
+
+                //上传
+                uploadFile(fileList[i], "file", function(data) {
+                    $img.attr("src", base_server_url + data.path);
+                }, function(error) {
+                    console.log(error)
+                });
+
+
+
+
+
+
+
+
+            }
+        }
+        setTimeout(function() {
+            $(".up-section").removeClass("loading");
+            $(".up-img").removeClass("up-opcity");
+        }, 450);
+        numUp = imgContainer.find(".up-section").length;
+        if (numUp >= 5) {
+            $(this).parent().hide();
+        }
+
+        //input内容清空
+        $(this).val("");
+    });
+
+
+
+
+    $(".z_photo").delegate(".close-upimg", "click", function() {
+        $(".works-mask").show();
+        delParent = $(this).parent();
+    });
+
+    $(".wsdel-ok").click(function() {
+        $(".works-mask").hide();
+        var numUp = delParent.siblings().length;
+        if (numUp < 6) {
+            delParent.parent().find(".z_file").show();
+        }
+        delParent.remove();
+
+    });
+
+    $(".wsdel-no").click(function() {
+        $(".works-mask").hide();
+    });
+
+    function validateUp(files) {
+        var arrFiles = []; //替换的文件数组
+        for (var i = 0, file; file = files[i]; i++) {
+            //获取文件上传的后缀名
+            var newStr = file.name.split("").reverse().join("");
+            if (newStr.split(".")[0] != null) {
+                var type = newStr.split(".")[0].split("").reverse().join("");
+                console.log(type + "===type===");
+                if (jQuery.inArray(type, defaults.fileType) > -1) {
+                    // 类型符合,可以上传
+                    if (file.size >= defaults.fileSize) {
+                        alert(file.size);
+                        alert('您这个"' + file.name + '"文件大小过大');
+                    } else {
+                        // 在这里需要判断当前所有文件中
+                        arrFiles.push(file);
+                    }
+                } else {
+                    alert('您这个"' + file.name + '"上传类型不符合');
+                }
+            } else {
+                alert('您这个"' + file.name + '"没有类型, 无法识别');
+            }
+        }
+        return arrFiles;
+    }
+
+})

+ 14 - 14
VisualInspection/js/main.js

@@ -16,8 +16,19 @@ $(document).ready(function() {
 
     //获取用户信息
     var user = $.zui.store.get("user")
-    var html = "<i class=\"icon icon-user\"></i>  " + user.username + ",欢迎您"
-    $("#user").html(html);
+    if (user == null || typeof(user) == "undefined") {
+        layer.msg('登陆已经过期,将重新登陆!', {
+            time: 2000, //20s后自动关闭
+        }, function() {
+            self.location = base_ui_url + UI_USER_LOGIN
+        })
+
+        return;
+    } else {
+        var html = "<i class=\"icon icon-user\"></i>  " + user.username + ",欢迎您"
+        $("#user").html(html);
+    }
+
 
 
     MenuGetAll(function(data) {
@@ -39,22 +50,15 @@ $(document).ready(function() {
                 }
                 datatemp["children"] = datac;
             }
-
-
             treedata.push(datatemp)
         }
-
         // 获取 tree 实例
         var myTree = $('#treeMenu').data('zui.tree');
-
         // 更新数据
         myTree.reload(treedata);
         myTree.collapse();
 
         MENU = data;
-
-
-
         //获取当前页
         var currentpage = 0;
         currentpage = $.zui.store.get("currentpage");
@@ -62,11 +66,7 @@ $(document).ready(function() {
             //改变页面
             getPageInfo(currentpage);
         }
-
-
-    }, function(error) {
-
-    });
+    }, function(error) {});
 
 });
 

+ 32 - 0
VisualInspection/js/user/addUser.js

@@ -0,0 +1,32 @@
+var dept_selectinput;
+var selectednodetemp;
+
+function loadUserData(nodedata) {
+    var pnode = nodedata;
+
+    if (edittype == "add") {
+        $("#dept_name").val("")
+    }
+    if (edittype == "edit") {
+        selectednodetemp = nodedata[0];
+        $("#dept_name").val(nodedata[0].name)
+        $("#dept_add_btn").html("保存")
+        if (pnode != null && pnode.length > 0) {
+            pnode = [dept_tree.getNodeByParam("id", pnode[0].pId, null)]
+        }
+    }
+
+
+    dept_selectinput = new TreeSelect({
+        element: '#user_dept_select',
+        data: zdata,
+        valueKey: "id",
+        placeholder: "选择部门",
+        selectvalue: pnode.length > 0 ? pnode[0].id : null
+    });
+
+
+
+
+
+}

+ 0 - 1
VisualInspection/js/user/adddept.js

@@ -14,7 +14,6 @@ function loadData(nodedata) {
         if (pnode != null && pnode.length > 0) {
             pnode = [dept_tree.getNodeByParam("id", pnode[0].pId, null)]
         }
-
     }
 
 

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

@@ -57,6 +57,14 @@
 
      getDept();
 
+     $("#user_add").on("click", function() {
+         var nodedata = dept_tree.getSelectedNodes();
+         edittype = "add"
+         loadUserData(nodedata)
+         $('#addUserModal').modal('show')
+     })
+
+
      $("#dept_add").on("click", function() {
          var nodedata = dept_tree.getSelectedNodes();
          edittype = "add"
@@ -237,7 +245,7 @@
 
  function addobj(data) {
      var zdata = [];
-     if (typeof(data.childs) != "undefinde" && data.childs != null &&
+     if (typeof(data.childs) != "undefined" && data.childs != null &&
          data.childs.length > 0) {
          for (var i = 0; i < data.childs.length; i++) {
              var m = data.childs[i];

+ 6 - 1
VisualInspection/js/util/const.js

@@ -15,4 +15,9 @@ var MENU_GET_ALL = "menu/get/all"
 var DEPT_GET_ALL = "dept/get/all"
 var DEPT_ADD = "dept/addDept"
 var DEPT_EDIT = "dept/updateDept/"
-var DEPT_DELETE = "/dept/deleteDept/"
+var DEPT_DELETE = "/dept/deleteDept/"
+
+
+
+//File
+var FILE_UPLOAD = "/file/upload"

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

@@ -127,7 +127,8 @@ function addConstant_service(url, param, success, fail) {
         fail("网络错误");
     });
 }
-function deleteConstant_service(url, param, success, fail) {   
+
+function deleteConstant_service(url, param, success, fail) {
     var url = base_server_url + url;
     ajaxPost(url, param, function(response) {
         var data = response;
@@ -141,7 +142,7 @@ function deleteConstant_service(url, param, success, fail) {
     });
 }
 
-function common_post_service(url, param, success, fail) {   
+function common_post_service(url, param, success, fail) {
     var url = base_server_url + url;
     ajaxPost(url, param, function(response) {
         var data = response;
@@ -153,4 +154,34 @@ function common_post_service(url, param, success, fail) {
     }, function(error) {
         fail("网络错误");
     });
+}
+
+
+
+// 上传文件
+function uploadFile(file, name, successfunc, errorfunc) {
+    var dataurl = base_server_url + FILE_UPLOAD
+    var form = new FormData();
+    form.append(name, file);
+    $.ajax({
+        url: dataurl,
+        type: "POST",
+        cache: false,
+        contentType: false,
+        processData: false,
+        dataType: "json",
+        data: form,
+        success: function(response) {
+            var data = response;
+            console.log(data)
+            if (data.result_code == 0) {
+                successfunc(data.result_data)
+            } else {
+                errorfunc(data.result_desc);
+            }
+        },
+        error: function(error) {
+            errorfunc("网络错误");
+        }
+    });
 }

+ 2 - 2
VisualInspection/view/user/addDept.html

@@ -1,9 +1,9 @@
-<script type="text/javascript" src="/node_modules/zui/dist/lib/chosen/chosen.min.js?__inline">
+<!--<script type="text/javascript" src="/node_modules/zui/dist/lib/chosen/chosen.min.js?__inline">
 </script>
 <link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/chosen/chosen.min.css">
 <script type="text/javascript" src="/node_modules/zui/dist/lib/chosenicons/zui.chosenicons.min.js?__inline">
 </script>
-<link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/chosenicons/zui.chosenicons.min.css">
+<link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/chosenicons/zui.chosenicons.min.css">-->
 <script type="text/javascript" src="/js/user/adddept.js?__inline"></script>
 <link rel="stylesheet" type="text/css" href="/css/user/addDept.css?__inline">
 

+ 101 - 0
VisualInspection/view/user/addUser.html

@@ -0,0 +1,101 @@
+<script type="text/javascript" src="/node_modules/zui/dist/lib/uploader/zui.uploader.min.js?__inline">
+</script>
+<link rel="stylesheet" type="text/css" href="/node_modules/zui/dist/lib/uploader/zui.uploader.min.css">
+<script type="text/javascript" src="/js/user/addUser.js?__inline"></script>
+<link rel="stylesheet" type="text/css" href="/css/user/addUser.css?__inline">
+
+
+<script type="text/javascript" src="/js/lib/imageupload/js/imgUp.js?__inline"></script>
+<link rel="stylesheet" type="text/css" href="/js/lib/imageupload/css/common.css?__inline">
+<link rel="stylesheet" type="text/css" href="/js/lib/imageupload/css/index.css?__inline">
+
+<div class="container-fluid ">
+    <form class="form-horizontal">
+        <div class="form-group" style="margin-bottom:0">
+            <div class="col-md-8">
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3">姓名:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+                    </div>
+                </div>
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3">工号:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+                    </div>
+                </div>
+
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3">密码:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+                    </div>
+                </div>
+                <div class="form-group">
+                    <label for="exampleInputAccount4" class="col-sm-3">确定密码:</label>
+                    <div class="col-md-9 col-sm-9">
+                        <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+                    </div>
+                </div>
+
+
+            </div>
+            <div class="col-md-4">
+                <div class="row hide" id="user_img_pre">
+                    <section class='up-section fl loading' id="user_img_pre2">
+                    </section>
+                    <!--<img id="user_img" src="http://zui.sexy/docs/img/img1.jpg" class="img-rounded" alt="圆角图片">-->
+                </div>
+                <div class="row" id="user_img_add">
+
+                    <section class="z_file fl">
+                        <img src="/js/lib/imageupload/img/a11.png" class="add-img">
+                        <input type="file" name="file" id="file" class="file" value="" accept="image/jpg,image/jpeg,image/png,image/bmp" multiple />
+                    </section>
+
+
+                </div>
+            </div>
+        </div>
+
+
+
+
+
+
+        <div class="form-group">
+            <label for="exampleInputPassword4" class="col-sm-2">用户角色:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputPassword4" class="col-sm-2">组织机构:</label>
+            <div class="col-md-10 col-sm-10">
+                <div id="user_dept_select">选择部门</div>
+
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2">手机:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2">身份证:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+            </div>
+        </div>
+        <div class="form-group">
+            <label for="exampleInputAccount4" class="col-sm-2">邮箱:</label>
+            <div class="col-md-10 col-sm-10">
+                <input type="text" id="user_dept_name" class="form-control" id="code_flag" placeholder="名称">
+            </div>
+        </div>
+
+    </form>
+</div>

+ 18 - 1
VisualInspection/view/user/userManager.html

@@ -28,7 +28,7 @@
                     <div class="panel-heading">
                         <span class="title">人员详情</span>
                         <div class="panel-actions">
-                            <button type="button" class="btn" data-toggle="tooltip" title="添加人员"><i class="icon-plus"></i></button>
+                            <button type="button" class="btn" id="user_add" data-toggle="tooltip" title="添加人员"><i class="icon-plus"></i></button>
                         </div>
                     </div>
                     <div class="panel-body no-padding" style="padding:0">
@@ -54,4 +54,21 @@
             </div>
         </div>
     </div>
+</div>
+
+<div class="modal fade" id="addUserModal">
+    <div class="modal-dialog">
+        <div class="modal-content">
+            <div class="modal-header">
+                <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">关闭</span></button>
+                <h4 class="modal-title">添加用户</h4>
+            </div>
+            <div class="modal-body">
+                <link rel="import" href="/view/user/addUser.html?__inline">
+            </div>
+            <div class="modal-footer">
+                <button type="button" class="btn btn-primary">保存</button>
+            </div>
+        </div>
+    </div>
 </div>

+ 3 - 1
VisualInspection_server/src/main/java/com/xintong/visualinspection/bean/User.java

@@ -22,7 +22,6 @@ public class User implements UserDetails {
 	// 姓名
 	private String truename;
 	// 密码
-	 @JsonIgnore
 	private String password;
 	// 组织机构ID
 	private Integer organid;
@@ -78,6 +77,8 @@ public class User implements UserDetails {
 	private List<Role> roles;
 	private List<? extends GrantedAuthority> authorities;
 
+	
+	
 
 	public User() {
        super();
@@ -95,6 +96,7 @@ public class User implements UserDetails {
 		return id;
 	}
 
+
 //	@JsonIgnore
 //	@Override
 //	public String getPassword() {

+ 19 - 4
VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/FileController.java

@@ -7,7 +7,10 @@ import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+import java.util.UUID;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -22,6 +25,9 @@ import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
 
+import com.github.pagehelper.PageInfo;
+import com.xintong.system.err.BusinessException;
+
 @RestController
 @RequestMapping(value = "file")
 public class FileController extends BaseController {
@@ -40,22 +46,25 @@ public class FileController extends BaseController {
 	}
 	
 	@RequestMapping(value = "upload")
-	public void UploadFile(HttpServletRequest req, MultipartHttpServletRequest multiReq) {
+	public String UploadFile(HttpServletRequest req, MultipartHttpServletRequest multiReq) {
 		initfile();
 		// 获取上传文件的路径
-		String uploadFilePath = multiReq.getFile("file1").getOriginalFilename();
+		String uploadFilePath = multiReq.getFile("file").getOriginalFilename();
 		System.out.println("uploadFlePath:" + uploadFilePath);
 		// 截取上传文件的文件名
 		String uploadFileName = uploadFilePath.substring(uploadFilePath.lastIndexOf('\\') + 1,
 				uploadFilePath.indexOf('.'));
 		System.out.println("multiReq.getFile()" + uploadFileName);
+		
+		uploadFileName = UUID.randomUUID().toString();
+		
 		// 截取上传文件的后缀
 		String uploadFileSuffix = uploadFilePath.substring(uploadFilePath.indexOf('.') + 1, uploadFilePath.length());
 		System.out.println("uploadFileSuffix:" + uploadFileSuffix);
 		FileOutputStream fos = null;
 		FileInputStream fis = null;
 		try {
-			fis = (FileInputStream) multiReq.getFile("file1").getInputStream();
+			fis = (FileInputStream) multiReq.getFile("file").getInputStream();
 			fos = new FileOutputStream(new File(path + uploadFileName + ".") + uploadFileSuffix);
 			byte[] temp = new byte[1024];
 			int i = fis.read(temp);
@@ -72,6 +81,7 @@ public class FileController extends BaseController {
 					fis.close();
 				} catch (IOException e) {
 					e.printStackTrace();
+					throw new BusinessException(20001);
 				}
 			}
 			if (fos != null) {
@@ -79,9 +89,14 @@ public class FileController extends BaseController {
 					fos.close();
 				} catch (IOException e) {
 					e.printStackTrace();
+					throw new BusinessException(20001);
 				}
 			}
 		}
+		Map<String, String> data=new HashMap<>();
+		data.put("path", req.getContextPath()+"file/download/"+uploadFileName + "." + uploadFileSuffix);
+		
+		return returnResult(0, "获取成功", data); 
 	}
 
 	@RequestMapping(value = "/batch/upload", method = RequestMethod.POST)
@@ -127,7 +142,7 @@ public class FileController extends BaseController {
 		System.out.println("文件接受成功了");
 	}
 
-	@RequestMapping(value = "/download/{filename:[a-zA-Z0-9.]+}", method = RequestMethod.GET)
+	@RequestMapping(value = "/download/{filename:[a-zA-Z0-9-.]+}", method = RequestMethod.GET)
 	public void Download(HttpServletResponse res, @PathVariable String filename) {
 		String fileName = filename;
 		res.setHeader("content-type", "application/octet-stream");

+ 2 - 0
VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/UserController.java

@@ -48,6 +48,7 @@ public class UserController extends BaseController {
     @RequestMapping(value = "/auth/login",method=RequestMethod.POST,produces="application/json;charset=UTF-8")
     public String login(@RequestBody User user){
     	User u = authService.login(user.getUsername(), user.getPassword());
+    	u.setPassword(null);
         return returnSuccessResult("登陆成功", u);
     }
     
@@ -129,6 +130,7 @@ public class UserController extends BaseController {
         	PageHelper.startPage(page, size); 
         	List<User> users= userService.getAll();
         	
+        	
         	return returnResult(0, "获取成功", new PageInfo(users));
         }catch(Exception e){
         	throw new BusinessException(20001);

+ 8 - 1
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/UserServiceImpl.java

@@ -53,7 +53,13 @@ public class UserServiceImpl extends BaseService implements UserService {
 
     @Override
     public List<User> getAll() {
-        return userInfoDao.getAll();
+    	List<User> users = userInfoDao.getAll();
+    	if(users!=null && users.size()>0){
+    		for(User u :users){
+    			u.setPassword(null);
+    		}
+    	}
+        return users;
     }
     
 	@Override
@@ -63,6 +69,7 @@ public class UserServiceImpl extends BaseService implements UserService {
 		List<User> users= userInfoDao.getUsers(user);
 		if(users!=null && users.size()>0){
 			for(User u : users){
+				u.setPassword(null);
 				List<Permission> permissions = permissionDao.findByAdminUserId(u.getId());
 	            List<GrantedAuthority> grantedAuthorities = new ArrayList<>();
 	            for (Permission permission : permissions) {

+ 6 - 6
VisualInspection_server/src/main/resources/application.properties

@@ -2,16 +2,16 @@ server.port=8089
 spring.thymeleaf.cache=false
 
 
-master.datasource.url = jdbc:mysql://git.topm.win:9001/visualinspection?useUnicode=true&characterEncoding=utf-8
+master.datasource.url = jdbc:mysql://localhost:3307/visualinspection?useUnicode=true&characterEncoding=utf-8
 master.datasource.username = root
-master.datasource.password = root
+master.datasource.password = wenhongquan
 master.datasource.driver-class-name = com.mysql.jdbc.Driver
 master.mapper-locations=classpath:com/xintong/visualinspection/mapper/master/*.xml
 
 ## \u7528\u6237\u6570\u636e\u6e90\u914d\u7f6e
-cluster.datasource.url=jdbc:mysql://git.topm.win:9001/yanhai?useUnicode=true&characterEncoding=utf8
+cluster.datasource.url=jdbc:mysql://localhost:3307/yanhai?useUnicode=true&characterEncoding=utf8
 cluster.datasource.username=root
-cluster.datasource.password=root
+cluster.datasource.password=wenhongquan
 cluster.datasource.driver-class-name = com.mysql.jdbc.Driver
 cluster.mapper-locations=classpath:com/xintong/visualinspection/mapper/cluster/*.xml
 
@@ -50,9 +50,9 @@ spring.datasource.useGlobalDataSourceStat=true
 # Redis\u6570\u636e\u5e93\u7d22\u5f15\uff08\u9ed8\u8ba4\u4e3a0\uff09
 spring.redis.database=0  
 # Redis\u670d\u52a1\u5668\u5730\u5740
-spring.redis.host=git.topm.win
+spring.redis.host=localhost
 # Redis\u670d\u52a1\u5668\u8fde\u63a5\u7aef\u53e3
-spring.redis.port=6379  
+spring.redis.port=32768  
 # Redis\u670d\u52a1\u5668\u8fde\u63a5\u5bc6\u7801\uff08\u9ed8\u8ba4\u4e3a\u7a7a\uff09
 spring.redis.password=xintong
 # \u8fde\u63a5\u6c60\u6700\u5927\u8fde\u63a5\u6570\uff08\u4f7f\u7528\u8d1f\u503c\u8868\u793a\u6ca1\u6709\u9650\u5236\uff09