xyg 2 жил өмнө
parent
commit
1a6c838f0a

+ 262 - 0
spring-cloud/server-page/src/main/resources/static/page/js/basic/ssoSystem.js

@@ -0,0 +1,262 @@
+layui.config({
+    base: 'js/encryption/'
+}).use(['layer', 'form', 'jquery', 'table', 'ajax'], function () {
+    $ = layui.jquery;
+    ly = layui.ajax;
+    layer = layui.layer;
+    table = layui.table;
+    form = layui.form;
+
+    // 主要表格
+    table.render({
+        elem: '#ssoSystemTable',
+        url: PAGE_BASIC + '/ssoSystem/getSsoSystemListByPage',
+        toolbar: '#ssoSystemTable_toolbar', //开启头部工具栏,并为其绑定左侧模板
+        page: true,
+        cols: [
+            [{
+                type: 'numbers',
+                title: '序号'
+            }, {
+                field: 'name',
+                title: '业务系统',
+            }, {
+                field: 'appid',
+                title: '唯一标识',
+            }, {
+                field: 'redirect_url',
+                title: '回调地址',
+            }, {
+                field: 'create_time',
+                title: '创建时间',
+            }, {
+                fixed: 'right',
+                title: '操作',
+                toolbar: '#ssoSystemTable_bar',
+                width: 150
+            }]
+        ]
+    });
+
+    //头工具栏事件(主要表格)
+    table.on('toolbar(ssoSystemTable)', function (obj) {
+        switch (obj.event) {
+            case 'add': //新增
+                $(".main").addClass("layui-hide").removeClass("layui-show");
+                $(".add").addClass("layui-show").removeClass("layui-hide");
+                $('#ssoSystemForm')[0].reset();
+                $(".add .header_title span").html("新增");
+                $('#submit').attr('submitType', 'insert');
+                break;
+        }
+    });
+
+    //监听行工具事件(主要表格)
+    table.on('tool(ssoSystemTable)', function (obj) {
+        let data = obj.data;
+        if (obj.event === 'del') {
+            layer.confirm('确认删除', function (index) {
+                deleteSystem(data.id);
+                layer.close(index);
+            });
+        } else if (obj.event === 'edit') {
+            // 页面初始化
+            $(".main").addClass("layui-hide").removeClass("layui-show");
+            $(".add").addClass("layui-show").removeClass("layui-hide");
+            $('#ssoSystemForm')[0].reset();
+            $(".add .header_title span").html("编辑");
+            $('#submit').attr('submitType', 'update');
+            // 数据初始化
+            initSystem(data.id);
+        }
+    });
+
+    form.verify({
+        name: function (value, item) {
+            if (!value.trim()) {
+                return '系统名称不能为空!';
+            }
+            if (/\s/.test(value)) {
+                return "系统名称中不能存在空格";
+            }
+            if (!new RegExp("^[a-zA-Z0-9_\u4e00-\u9fa5\\s·]+$").test(value)) {
+                return '系统名称不能有特殊字符';
+            }
+        },
+        redirectUrl: function (value, item) {
+            if (value.trim()) {
+                if (/\s/.test(value)) {
+                    return "回调地址中不能存在空格";
+                }
+            }
+        },
+        titleImg: function (value, item) {
+            if (value.trim()) {
+            }
+        },
+    });
+
+    // 监听提交按钮
+    form.on('submit(submit)', function (data) {
+        var submitType = data.elem.getAttribute("submitType");
+        // 新增
+        if (submitType == 'insert') {
+            addSystem();
+            return false;
+        } else if (submitType == 'update') {
+            updateSystem();
+            return false;
+        }
+    });
+
+    // 查询
+    $(".search_btn").click(function () {
+        let queryValue = $("#queryValue").val();
+        let params = {
+            "queryValue": queryValue
+        };
+        table.reload('ssoSystemTable', {
+            where: params,
+            page: {
+                curr: 1 //重新从第 1 页开始
+            }
+        }); //只重载数据
+    });
+
+    //用户搜索回车事件
+    $('#queryValue').bind('keypress', function (event) {
+        if (event.keyCode == "13") {
+            let queryValue = $("#queryValue").val();
+            let params = {
+                "queryValue": queryValue
+            };
+            table.reload('ssoSystemTable', {
+                where: params,
+                page: {
+                    curr: 1 //重新从第 1 页开始
+                }
+            }); //只重载数据
+        }
+    });
+
+    // 返回
+    $(".back").click(function () {
+        $(".main").addClass("layui-show").removeClass("layui-hide");
+        $(".add").addClass("layui-hide").removeClass("layui-show");
+    });
+
+})
+
+
+function addSystem() {
+    let postData = form.val("ssoSystemForm");
+    let index = layer.load(2);
+    ly.ajax({
+        type: 'POST',
+        url: PAGE_BASIC + '/ssoSystem/insertSsoSystem',
+        dataType: 'json',
+        data: postData,
+        success: function (json) {
+            layer.close(index);
+            if (json.result) {
+                layer.msg("新增成功");
+                $(".main").addClass("layui-show").removeClass("layui-hide");
+                $(".add").addClass("layui-hide").removeClass("layui-show");
+                reloadTable();
+            } else {
+                layer.msg("新增失败," + json.msg);
+            }
+        },
+        error: function (msg) {
+            layer.close(index);
+        }
+    });
+}
+
+function updateSystem() {
+    let postData = form.val("ssoSystemForm");
+    let index = layer.load(2);
+    ly.ajax({
+        type: 'POST',
+        url: PAGE_BASIC + '/ssoSystem/updateSsoSystem',
+        dataType: 'json',
+        data: postData,
+        success: function (json) {
+            layer.close(index);
+            if (json.result) {
+                layer.msg("编辑成功");
+                $(".main").addClass("layui-show").removeClass("layui-hide");
+                $(".add").addClass("layui-hide").removeClass("layui-show");
+                reloadTable();
+            } else {
+                layer.msg("编辑失败");
+            }
+        },
+        error: function (msg) {
+            layer.close(index);
+        }
+    });
+}
+
+
+function initSystem(id) {
+    let index = layer.load(2);
+    ly.ajax({
+        type: 'GET',
+        url: PAGE_BASIC + '/ssoSystem/getSsoSystemInfo',
+        dataType: 'json',
+        data: {
+            "id": id,
+        },
+        success: function (json) {
+            layer.close(index);
+            if (json.result) {
+                // 页面数据初始化
+                $('#id').empty().val(id);
+                $('#name').val(json.data.name);
+                $('#redirectUrl').val(json.data.redirect_url);
+                $('#titleImg').val(json.data.title_img);
+            } else {
+                layer.msg("数据获取失败");
+            }
+        },
+        error: function (msg) {
+            layer.close(index);
+        }
+    });
+}
+
+/* 删除用户组 */
+function deleteSystem(id) {
+    let index = layer.load(2);
+    ly.ajax({
+        type: 'POST',
+        url: PAGE_BASIC + '/ssoSystem/deleteSsoSystem',
+        dataType: 'json',
+        data: {
+            "id": id
+        },
+        success: function (json) {
+            layer.close(index);
+            if (json.result) {
+                layer.msg("删除成功");
+                reloadTable();
+            } else {
+                layer.msg("删除失败," + json.msg);
+            }
+        },
+        error: function (msg) {
+            layer.close(index);
+        }
+    });
+}
+
+/* 表格重载 */
+function reloadTable() {
+    table.reload('ssoSystemTable', {
+        page: {
+            curr: 1 //重新从第 1 页开始
+        }
+    }); //只重载数据
+}
+

+ 87 - 0
spring-cloud/server-page/src/main/resources/static/page/ssoSystem.html

@@ -0,0 +1,87 @@
+<!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>SSO业务系统管理</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>SSO系统管理</span></div>
+    <div class="main_content">
+        <table class="layui-hide" id="ssoSystemTable" lay-filter="ssoSystemTable"></table>
+
+        <script type="text/html" id="ssoSystemTable_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="ssoSystemTable_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">
+            <div class="layui-input-inline">
+                <input type="text" class="layui-input" id="queryValue" name="queryValue" autocomplete="off" placeholder="请输入系统名称查询"/>
+            </div>
+            <button type="button" class="layui-btn layui-btn-sm search_btn">搜 索</button>
+        </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="ssoSystemForm" lay-filter="ssoSystemForm">
+            <input type="hidden" class="layui-hide" id="id" name="id" readonly=""/>
+            <div class="layui-form-item account">
+                <label class="layui-form-label"><span class="font-red">*</span>系统名称:</label>
+                <div class="layui-input-inline">
+                    <input type="text" class="layui-input" id="name" name="name" lay-verify="name" autocomplete="off" placeholder="请输入系统名称" maxlength="50">
+                </div>
+            </div>
+            <div class="layui-form-item">
+                <label class="layui-form-label">回调地址:</label>
+                <div class="layui-input-inline">
+                    <input type="text" class="layui-input" id="redirectUrl" name="redirectUrl" lay-verify="redirectUrl" autocomplete="off" placeholder="请输入回调地址" maxlength="200">
+                </div>
+            </div>
+            <div class="layui-form-item">
+                <label class="layui-form-label">系统图标:</label>
+                <div class="layui-input-inline">
+                    <input type="text" class="layui-input" id="titleImg" name="titleImg" lay-verify="titleImg" autocomplete="off" placeholder="请输入系统图标" maxlength="200">
+                </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/ssoSystem.js" type="text/javascript" charset="utf-8"></script>
+
+</body>
+
+</html>