|
@@ -0,0 +1,351 @@
|
|
|
+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;
|
|
|
+
|
|
|
+ // 初始化下拉框
|
|
|
+ initSystemSelect();
|
|
|
+
|
|
|
+ // 主要表格
|
|
|
+ table.render({
|
|
|
+ elem: '#ssoUserTable',
|
|
|
+ url: PAGE_BASIC + '/ssoUser/getSsoUserListByPage',
|
|
|
+ toolbar: '#ssoUserTable_toolbar', //开启头部工具栏,并为其绑定左侧模板
|
|
|
+ page: true,
|
|
|
+ cols: [
|
|
|
+ [{
|
|
|
+ type: 'numbers',
|
|
|
+ title: '序号'
|
|
|
+ }, {
|
|
|
+ field: 'login_account',
|
|
|
+ title: '登录帐号',
|
|
|
+ }, {
|
|
|
+ field: 'system_name',
|
|
|
+ title: '业务系统',
|
|
|
+ }, {
|
|
|
+ field: 'create_time',
|
|
|
+ title: '创建时间',
|
|
|
+ }, {
|
|
|
+ fixed: 'right',
|
|
|
+ title: '操作',
|
|
|
+ toolbar: '#ssoUserTable_bar',
|
|
|
+ width: 150
|
|
|
+ }]
|
|
|
+ ]
|
|
|
+ });
|
|
|
+
|
|
|
+ //头工具栏事件(主要表格)
|
|
|
+ table.on('toolbar(ssoUserTable)', function (obj) {
|
|
|
+ switch (obj.event) {
|
|
|
+ case 'add': //新增
|
|
|
+ $(".main").addClass("layui-hide").removeClass("layui-show");
|
|
|
+ $(".add").addClass("layui-show").removeClass("layui-hide");
|
|
|
+ $('#ssoUserForm')[0].reset();
|
|
|
+ $(".add .header_title span").html("新增");
|
|
|
+ $('#submit').attr('submitType', 'insert');
|
|
|
+ $(".password .font-red").removeClass("layui-hide");
|
|
|
+ $('#loginAccount').attr('lay-verify', 'loginAccount');
|
|
|
+ $('#loginPwd').attr('lay-verify', 'loginPwd');
|
|
|
+ $('#rePassword').attr('lay-verify', 'rePassword');
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ //监听行工具事件(主要表格)
|
|
|
+ table.on('tool(ssoUserTable)', function (obj) {
|
|
|
+ let data = obj.data;
|
|
|
+ if (obj.event === 'del') {
|
|
|
+ layer.confirm('确认删除', function (index) {
|
|
|
+ deleteUser(data.user_id)
|
|
|
+ layer.close(index);
|
|
|
+ });
|
|
|
+ } else if (obj.event === 'edit') {
|
|
|
+ // 页面初始化
|
|
|
+ $(".main").addClass("layui-hide").removeClass("layui-show");
|
|
|
+ $(".add").addClass("layui-show").removeClass("layui-hide");
|
|
|
+ $('#ssoUserForm')[0].reset();
|
|
|
+ $(".add .header_title span").html("编辑");
|
|
|
+ $('#submit').attr('submitType', 'update');
|
|
|
+ $('#loginAccount').css('pointer-events', 'none');
|
|
|
+ $(".password .font-red").addClass('layui-hide');
|
|
|
+ $('#loginPwd').attr('lay-verify', 'editPassword');
|
|
|
+ $('#rePassword').attr('lay-verify', 'editRePassword');
|
|
|
+
|
|
|
+ // 数据初始化
|
|
|
+ initUser(data.user_id);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ form.verify({
|
|
|
+ loginAccount: function (value, item) {
|
|
|
+ if (!value.trim()) {
|
|
|
+ return '帐号不能为空!';
|
|
|
+ }
|
|
|
+ if (/\s/.test(value)) {
|
|
|
+ return "帐号中不能存在空格";
|
|
|
+ }
|
|
|
+ if (value.length < 5 || value.length > 20) {
|
|
|
+ return '帐号长度为5到20位';
|
|
|
+ }
|
|
|
+ if (!new RegExp("^[a-zA-Z0-9_\u4e00-\u9fa5\\s·]+$").test(value)) {
|
|
|
+ return '帐号不能有特殊字符';
|
|
|
+ }
|
|
|
+ },
|
|
|
+ loginPwd: function (value, item) {
|
|
|
+ if (!value.trim()) {
|
|
|
+ return '密码不能为空!';
|
|
|
+ }
|
|
|
+ if (/\s/.test(value)) {
|
|
|
+ return "密码中不能存在空格";
|
|
|
+ }
|
|
|
+ if (value.length < 6 || value.length > 20) {
|
|
|
+ return '密码长度为6到20位';
|
|
|
+ }
|
|
|
+ if (!new RegExp("^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)])+$)^.{6,20}$").test(value)) {
|
|
|
+ return '密码需包含数字、字母、特殊字符中至少两种';
|
|
|
+ }
|
|
|
+ },
|
|
|
+ rePassword: function (value, item) {
|
|
|
+ let pass = $('#loginPwd').val();
|
|
|
+ if (value != pass) {
|
|
|
+ return '两次输入的密码不一致';
|
|
|
+ }
|
|
|
+ },
|
|
|
+ systemId: function (value, item) {
|
|
|
+ if (!value.trim()) {
|
|
|
+ return '请选择业务系统'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editPassword: function (value, item) {
|
|
|
+ if (value.trim()) {
|
|
|
+ if (/\s/.test(value)) {
|
|
|
+ return "密码中不能存在空格";
|
|
|
+ }
|
|
|
+ if (value.length < 6 || value.length > 20) {
|
|
|
+ return '密码长度为6到20位';
|
|
|
+ }
|
|
|
+ if (!new RegExp("^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?!([^(0-9a-zA-Z)])+$)^.{6,20}$").test(value)) {
|
|
|
+ return '密码需包含数字、字母、特殊字符中至少两种';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ editRePassword: function (value, item) {
|
|
|
+ let pass = $('#loginPwd').val();
|
|
|
+ if (value.trim() && pass.trim() && value != pass) {
|
|
|
+ return '两次输入的密码不一致';
|
|
|
+ }
|
|
|
+ },
|
|
|
+ identity: function (value, item) {
|
|
|
+ if (value.trim()) {
|
|
|
+ if (!new RegExp(/(^\d{15}$)|(^\d{17}(x|X|\d)$)/).test(value)) {
|
|
|
+ return '请输入正确的身份证号';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ phone: function (value, item) {
|
|
|
+ if (value.trim()) {
|
|
|
+ if (!new RegExp(/^1[3-9]\d{9}$/).test(value)) {
|
|
|
+ return '请输入正确的手机号';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ // 监听提交按钮
|
|
|
+ form.on('submit(submit)', function (data) {
|
|
|
+ var submitType = data.elem.getAttribute("submitType");
|
|
|
+ // 新增
|
|
|
+ if (submitType == 'insert') {
|
|
|
+ addUser();
|
|
|
+ return false;
|
|
|
+ } else if (submitType == 'update') {
|
|
|
+ updateUser();
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ // 查询
|
|
|
+ $(".search_btn").click(function () {
|
|
|
+ let queryValue = $("#queryValue").val();
|
|
|
+ let params = {
|
|
|
+ "queryValue": queryValue
|
|
|
+ };
|
|
|
+ table.reload('ssoUserTable', {
|
|
|
+ where: params,
|
|
|
+ page: {
|
|
|
+ curr: 1 //重新从第 1 页开始
|
|
|
+ }
|
|
|
+ }); //只重载数据
|
|
|
+ });
|
|
|
+
|
|
|
+ //用户搜索回车事件
|
|
|
+ $('#queryUserName').bind('keypress', function (event) {
|
|
|
+ if (event.keyCode == "13") {
|
|
|
+ let queryValue = $("#queryValue").val();
|
|
|
+ let params = {
|
|
|
+ "queryValue": queryValue
|
|
|
+ };
|
|
|
+ table.reload('ssoUserTable', {
|
|
|
+ where: params,
|
|
|
+ page: {
|
|
|
+ curr: 1 //重新从第 1 页开始
|
|
|
+ }
|
|
|
+ }); //只重载数据
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ // 返回
|
|
|
+ $(".back").click(function () {
|
|
|
+ $(".main").addClass("layui-show").removeClass("layui-hide");
|
|
|
+ $(".tree").addClass("layui-show").removeClass("layui-hide");
|
|
|
+ $(".add").addClass("layui-hide").removeClass("layui-show");
|
|
|
+ })
|
|
|
+
|
|
|
+})
|
|
|
+
|
|
|
+
|
|
|
+function addUser() {
|
|
|
+ let postData = form.val("ssoUserForm");
|
|
|
+ let index = layer.load(2);
|
|
|
+ ly.ajax({
|
|
|
+ type: 'POST',
|
|
|
+ url: PAGE_BASIC + '/ssoUser/insertSsoUser',
|
|
|
+ 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 updateUser() {
|
|
|
+ let postData = form.val("ssoUserForm");
|
|
|
+ let index = layer.load(2);
|
|
|
+ ly.ajax({
|
|
|
+ type: 'POST',
|
|
|
+ url: PAGE_BASIC + '/ssoUser/updateSsoUser',
|
|
|
+ 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 initUser(userId) {
|
|
|
+ let index = layer.load(2);
|
|
|
+ ly.ajax({
|
|
|
+ type: 'GET',
|
|
|
+ url: PAGE_BASIC + '/ssoUser/getSsoUserInfo',
|
|
|
+ dataType: 'json',
|
|
|
+ data: {
|
|
|
+ "userId": userId,
|
|
|
+ },
|
|
|
+ success: function (json) {
|
|
|
+ layer.close(index);
|
|
|
+ if (json.result) {
|
|
|
+ // 页面数据初始化
|
|
|
+ $('#userId').empty().val(userId);
|
|
|
+ $('#loginAccount').val(json.data.login_account);
|
|
|
+ $('#systemId').val(json.data.system_id);
|
|
|
+ $('#mobile').val(json.data.mobile);
|
|
|
+ $('#cardType').val(json.data.card_type);
|
|
|
+ $('#cardNo').val(json.data.card_no);
|
|
|
+ $('#address').val(json.data.address);
|
|
|
+ form.render('select');
|
|
|
+ } else {
|
|
|
+ layer.msg("数据获取失败");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ error: function (msg) {
|
|
|
+ layer.close(index);
|
|
|
+ }
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+/* 删除用户组 */
|
|
|
+function deleteUser(userId) {
|
|
|
+ let index = layer.load(2);
|
|
|
+ ly.ajax({
|
|
|
+ type: 'POST',
|
|
|
+ url: PAGE_BASIC + '/ssoUser/deleteSsoUser',
|
|
|
+ dataType: 'json',
|
|
|
+ data: {
|
|
|
+ "userId": userId
|
|
|
+ },
|
|
|
+ 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('ssoUserTable', {
|
|
|
+ page: {
|
|
|
+ curr: 1 //重新从第 1 页开始
|
|
|
+ }
|
|
|
+ }); //只重载数据
|
|
|
+}
|
|
|
+
|
|
|
+function initSystemSelect() {
|
|
|
+ let index = layer.load(2);
|
|
|
+ // 初始化用户组下拉框
|
|
|
+ ly.ajax({
|
|
|
+ type: 'GET',
|
|
|
+ url: PAGE_BASIC + '/ssoSystem/getSsoSystemList',
|
|
|
+ async: false,
|
|
|
+ dataType: 'json',
|
|
|
+ success: function (json) {
|
|
|
+ layer.close(index);
|
|
|
+ if (json.data) {
|
|
|
+ let str = '<option value="">' + '请选择业务系统' + '</option>';
|
|
|
+ let datas = json.data;
|
|
|
+ for (let i = 0; i < datas.length; i++) {
|
|
|
+ str += '<option value="' + datas[i].id + '">' + datas[i].name + '</option>';
|
|
|
+ }
|
|
|
+ $('#systemId').empty().append(str);
|
|
|
+ form.render('select'); //刷新select选择框渲染
|
|
|
+ }
|
|
|
+ },
|
|
|
+ error: function (msg) {
|
|
|
+ layer.close(index);
|
|
|
+ }
|
|
|
+ });
|
|
|
+}
|