Parcourir la source

修改机房管理功能SQL,上传机房管理页面文件

lyq il y a 3 ans
Parent
commit
14f12862d1

+ 20 - 5
spring-cloud/server-basic/src/main/resources/mapper/ComputerRoomMapper.xml

@@ -40,7 +40,7 @@
     <!--判断相同名称重复次数-->
     <select id="checkSameName" resultType="java.lang.Integer">
         select count(1)
-        from t_computer_room where
+        from t_computer_room
         <where>
             <if test="computerRoomName != null and computerRoomName != ''">
                 AND computer_room_name = #{computerRoomName}
@@ -54,7 +54,12 @@
     <!--根据id获取弹窗详情-->
     <select id="getComputerRoomInfoById" resultType="java.util.Map">
         SELECT
-            *
+            id,
+            computer_room_name,
+            link,
+            image_path,
+            create_time,
+            update_time
         FROM
             t_computer_room
         WHERE
@@ -64,7 +69,12 @@
     <!--查询所有弹窗列表-->
     <select id="getComputerRoomAll" resultType="java.util.Map">
         SELECT
-            *
+            id,
+            computer_room_name,
+            link,
+            image_path,
+            create_time,
+            update_time
         FROM
             t_computer_room
     </select>
@@ -72,10 +82,15 @@
     <!--分页查询所有弹窗列表-->
     <select id="getComputerRoomByPage" resultType="java.util.Map">
         SELECT
-            *
+            id,
+            computer_room_name,
+            link,
+            image_path,
+            create_time,
+            update_time
         FROM
             t_computer_room
         ORDER BY create_time DESC
-        limit #{page}, #{limit}
+            LIMIT #{startRows}, #{limit}
     </select>
 </mapper>

+ 100 - 0
spring-cloud/server-page/src/main/resources/static/page/computerRoomManager.html

@@ -0,0 +1,100 @@
+<!DOCTYPE html>
+<html>
+
+	<head>
+		<meta charset="UTF-8">
+		<meta name="renderer" content="webkit">
+		<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
+		<title>机房管理</title>
+		<link rel="stylesheet" type="text/css" href="layui/css/layui.css" />
+		<link rel="stylesheet" type="text/css" href="css/admin.css" />
+		<link rel="stylesheet" type="text/css" href="css/common.css" />
+		<link rel="stylesheet" type="text/css" href="css/animate.css" />
+	</head>
+	<body>
+		<!-- 主要内容 -->
+		<div class="main fadeIn animated">
+			<div class="header_title"><span>机房管理</span></div>
+			<div class="main_content">
+				<table class="layui-hide" id="computerRoomTable" lay-filter="computerRoomTable"></table>
+
+				<script type="text/html" id="computerRoomTable_toolbar">
+					{{# if (sessionStorage.getItem("menuid-" + sessionStorage.MENU_ID + "-add")  == 'add') { }}
+						<div class="layui-btn-container">
+							<button class="layui-btn layui-btn-sm main_head_btn" lay-event="add"><span class="iconfont">&#xe607;</span>新增</button>
+						</div>
+					{{# } }}
+				</script>
+				
+				<script type="text/html" id="computerRoomTable_bar">
+					{{# if (sessionStorage.getItem("menuid-" + sessionStorage.MENU_ID + "-update") == 'update') { }}
+						<a class="main_tab_btn" lay-event="edit" style="color: #64ADF9;"><span class="iconfont">&#xe637;</span>编辑</a>
+					{{# } }}
+					{{# if (sessionStorage.getItem("menuid-" + sessionStorage.MENU_ID + "-delete") == 'delete') { }}
+						<a class="main_tab_btn" lay-event="del" style="color: #FC7D8C;"><span class="iconfont">&#xe78d;</span>删除</a>
+					{{# } }}
+				</script>
+
+<!--				<div class="search_box">-->
+<!--					&lt;!&ndash; <form class="layui-form" action=""> &ndash;&gt;-->
+<!--						<div class="layui-input-inline">-->
+<!--							<input type="text" name="queryValue" id="queryValue" autocomplete="off" class="layui-input" placeholder="请输入方案名称查询">-->
+<!--						</div>-->
+<!--						<button type="button" class="layui-btn layui-btn-sm search_btn">搜 索</button>-->
+<!--					&lt;!&ndash; </form> &ndash;&gt;-->
+<!--				</div>-->
+			</div>
+		</div>
+
+		<!-- 新增 -->
+		<div class="add layui-hide fadeIn animated">
+			<div class="header_title"><span>新增</span></div>
+			<div class="main_content">
+				<form class="layui-form" action="" id="computerRoomInfo" lay-filter="computerRoomInfo">
+					<input id="id" readonly="" class="layui-hide" name="id" />
+					<input id="imagePath" readonly="" class="layui-hide" name="imagePath"/>
+					<div class="layui-form-item">
+						<label class="layui-form-label"><span class="font-red">*</span>机房名称:</label>
+						<div class="layui-input-inline">
+							<input type="text" name="computerRoomName" id="computerRoomName" maxlength="50" lay-verify="computerRoomName" autocomplete="off" placeholder="请输入弹窗名称" class="layui-input">
+						</div>
+					</div>
+					<div class="layui-form-item">
+						<label class="layui-form-label"><span class="font-red">*</span>链接:</label>
+						<div class="layui-input-inline">
+							<input type="text" name="link" id="link" lay-verify="link" autocomplete="off" placeholder="请输入链接地址" class="layui-input">
+						</div>
+					</div>
+					<div class="layui-form-item">
+						<label class="layui-form-label">机房背景:</label>
+						<div class="layui-input-inline">
+							<div class="layui-row">
+								<div style="width: 180px;height: 120px;" class="layui-upload-drag layui-col-xs6"
+									 id="uploadFile">
+									<i class="layui-icon"></i>
+									<p>点击上传,或将图片拖拽到此处</p>
+								</div>
+								<div style="margin-left: 4px;width: 180px;height: 120px;" class="layui-hide layui-col-xs6"
+									 id="uploadDemoView">
+									<img style="max-width: 180px;max-height: 120px;" src="" alt="上传成功后渲染"
+										 style="max-width: 196px">
+								</div>
+							</div>
+						</div>
+					</div>
+					<button type="submit" id="submit" class="layui-btn submit_btn" lay-submit="" lay-filter="submit" submitType=""
+					 style="margin-left: 50px;margin-top: 30px;">提交</button>
+					<button type="button" class="layui-btn layui-btn-primary back back_btn" style="margin-top: 30px;">返回</button>
+				</form>
+			</div>
+		</div>
+
+		<script src="layui/layui.js" type="text/javascript" charset="utf-8"></script>
+		<script src="js/common.js" type="text/javascript" charset="utf-8"></script>
+		<script src="js/constants.js" type="text/javascript" charset="utf-8"></script>
+		<script src="js/js-util.js" type="text/javascript" charset="utf-8"></script>
+		<script src="js/basic/computerRoomManager.js" type="text/javascript" charset="utf-8"></script>
+	</body>
+
+</html>

+ 260 - 0
spring-cloud/server-page/src/main/resources/static/page/js/basic/computerRoomManager.js

@@ -0,0 +1,260 @@
+layui.config({
+    base: 'js/encryption/'
+}).use(['layer', 'form', 'jquery', 'table', 'laydate', 'upload', 'ajax'], function () {
+    layer = layui.layer,
+        laydate = layui.laydate,
+        upload = layui.upload,
+        table = layui.table,
+        form = layui.form,
+        $ = layui.jquery,
+    ly = layui.ajax;
+
+    // 主要表格
+    table.render({
+        elem: '#computerRoomTable',
+        url: PAGE_BASIC + '/computerRoom/getComputerRoomByPage',
+        toolbar: '#computerRoomTable_toolbar', //开启头部工具栏,并为其绑定左侧模板
+        page: true,
+        cols: [
+            [{
+                type: 'numbers',
+                title: '序号',
+                fixed: 'left'
+            }, {
+                field: 'computer_room_name',
+                title: '机房名称',
+            }, {
+                field: 'create_time',
+                title: '创建时间'
+            }, {
+                fixed: 'right',
+                title: '操作',
+                toolbar: '#computerRoomTable_bar',
+                width: 150
+            }]
+        ]
+    });
+
+    //拖拽上传
+    upload.render({
+            elem: '#uploadFile'
+            , url: PAGE_BASIC + '/upload/fileUpload' //此处用的是第三方的 http 请求演示,实际使用时改成您自己的上传接口即可。
+            , headers: {
+                timestamp: new Date().getTime(),
+                Authorization: sessionStorage.TOKEN_TYPE + ' ' + sessionStorage.ACCESS_TOKEN
+            }
+            , accept: 'image'
+            , acceptMime: 'image/*'
+            , ext: 'jpg|png|gif|bmp|jpeg'
+            , data: {prefix: 'computerRoom'}
+            , done: function (res) {
+                $("#imagePath").val(res.data.filePath)
+                layer.msg('上传成功');
+                layui.$('#uploadDemoView').removeClass('layui-hide').find('img').attr('src', PAGE_BASIC + res.data.filePath);
+            }
+        });
+
+    //头工具栏事件(主要表格)
+    table.on('toolbar(computerRoomTable)', function (obj) {
+        switch (obj.event) {
+            case 'add': //新增
+                $(".main").addClass("layui-hide").removeClass("layui-show");
+                $(".add").addClass("layui-show").removeClass("layui-hide");
+                $('#submit').attr('submitType', 'insert');
+                $(".add .header_title span").html("新增");
+                $('#computerRoomInfo')[0].reset();
+                $('#uploadDemoView').addClass('layui-hide')
+                break;
+        }
+    });
+
+    //监听行工具事件(主要表格)
+    table.on('tool(computerRoomTable)', function (obj) {
+        var data = obj.data;
+        if (obj.event === 'del') {
+            layer.confirm('是否确认删除', function (index) {
+                deleteComputerRoom(data.id);
+                layer.close(index);
+            });
+        } else if (obj.event === 'edit') {
+            $(".main").addClass("layui-hide").removeClass("layui-show");
+            $(".add").addClass("layui-show").removeClass("layui-hide");
+            $(".add .header_title span").html("编辑");
+            $('#submit').attr('submitType', 'update');
+            $('#computerRoomInfo')[0].reset();
+            // 数据初始化
+			$('#id').empty().val(data.id);
+			$('#computerRoomName').empty().val(data.computer_room_name);
+			$('#link').val(data.link);
+			$('#imagePath').val(data.image_path);
+			layui.$('#uploadDemoView').removeClass('layui-hide').find('img').attr('src', PAGE_BASIC + data.image_path);
+			form.render();
+            //initComputerRoom(data.id);
+        }
+    });
+
+    // 验证表单
+    form.verify({
+        computerRoomName: function (value, item) {
+            if (!value.trim()) {
+                return '弹窗名称不能为空!';
+            }
+        },
+        link: function (value, item) {
+            if (!value.trim()) {
+                return '链接地址不能为空!';
+            }
+            if (value != '#' && value.indexOf("http") < 0) {
+                if (!(/^([a-zA-Z]([-_a-zA-Z0-9])+[.]?)*[A-Za-z]$/.test(value))) {
+                    return '请输入合法的 HTML 文件名或者 #!';
+                }
+            }
+        }
+    });
+
+    // 监听提交按钮
+    form.on('submit(submit)', function (data) {
+        var submitType = data.elem.getAttribute("submitType");
+        // 新增
+        if (submitType == 'insert') {
+            addComputerRoom();
+            return false;
+        } else if (submitType == 'update') {
+            updateComputerRoom();
+            return false;
+        }
+    });
+
+    // 返回
+    $(".back").click(function () {
+        $(".main").addClass("layui-show").removeClass("layui-hide");
+        $(".add").addClass("layui-hide").removeClass("layui-show");
+    })
+
+});
+
+
+/* 新增弹窗信息 */
+function addComputerRoom() {
+    var postData = form.val('computerRoomInfo');
+    index = layer.load(2);
+    ly.ajax({
+        type: 'POST',
+        url: PAGE_BASIC + '/computerRoom/addComputerRoom',
+        dataType: 'json',
+        data: postData,
+        success: function (json) {
+            if (json.result) {
+                layer.msg("新增成功");
+                $(".main").addClass("layui-show").removeClass("layui-hide");
+                $(".add").addClass("layui-hide").removeClass("layui-show");
+                reloadTable();
+            } else if (json.msg === 'EXIST') {
+                layer.msg("新增失败,名称重复");
+            } else {
+                layer.msg("新增失败");
+            }
+            layer.close(index);
+        },
+        error: function (msg) {
+            layer.close(index);
+            goPage(msg, 1);
+        }
+    });
+}
+
+/* 修改弹窗 */
+function updateComputerRoom() {
+    var postData = form.val('computerRoomInfo');
+    index = layer.load(2);
+    ly.ajax({
+        type: 'POST',
+        url: PAGE_BASIC + '/computerRoom/editComputerRoom',
+        dataType: 'json',
+        data: postData,
+        success: function (json) {
+            if (json.result) {
+                layer.msg("修改成功");
+                $(".main").addClass("layui-show").removeClass("layui-hide");
+                $(".add").addClass("layui-hide").removeClass("layui-show");
+                reloadTable();
+            } else if (json.msg = 'EXIST') {
+                layer.msg("修改失败,名称重复");
+            } else {
+                layer.msg("修改失败");
+            }
+            layer.close(index);
+        },
+        error: function (msg) {
+            layer.close(index);
+            goPage(msg, 1);
+        }
+    });
+}
+
+/* 回显数据 */
+function initComputerRoom(id) {
+    index = layer.load(2);
+    ly.ajax({
+        type: 'GET',
+        url: PAGE_BASIC + '/computerRoom/getComputerRoomInfoById',
+        dataType: 'json',
+        data: {
+            "id": id,
+        },
+        success: function (json) {
+            if (json.result) {
+                $('#id').empty().val(id);
+                $('#computerRoomName').empty().val(json.data.computerRoom_name);
+                $('#topLeft').empty().val(json.data.top_left);
+                $('#widthHeight').val(json.data.width_height);
+                $('#link').val(json.data.link);
+                $('#imagePath').val(json.data.image_path);
+                layui.$('#uploadDemoView').removeClass('layui-hide').find('img').attr('src', PAGE_BASIC + json.data.image_path);
+                form.render();
+            } else {
+                layer.msg("数据获取失败");
+            }
+            layer.close(index);
+        },
+        error: function (msg) {
+            layer.close(index);
+            goPage(msg, 1);
+        }
+    });
+}
+
+/* 删除基础数据 */
+function deleteComputerRoom(id) {
+    index = layer.load(2);
+    ly.ajax({
+        type: 'POST',
+        url: PAGE_BASIC + '/computerRoom/delComputerRoom',
+        dataType: 'json',
+        data: {
+            "id": id,
+        },
+        success: function (json) {
+            if (json.result) {
+                layer.msg("删除成功");
+                reloadTable();
+            } else {
+                layer.msg("删除失败");
+            }
+            layer.close(index);
+        },
+        error: function (msg) {
+            layer.close(index);
+            goPage(msg, 1);
+        }
+    });
+}
+
+/* 表格重载 */
+function reloadTable() {
+    table.reload('computerRoomTable', {
+        page: {
+            curr: 1 //重新从第 1 页开始
+        }
+    }); //只重载数据
+}