Authored by 王涛

Merge branch 'master-V32-XuHaoJie' into 'master'

通用-用户管理、角色管理-配置首页问题解决



See merge request !15
@@ -350,16 +350,20 @@ layui.define(['xmSelect', 'md5'], function (exports) { @@ -350,16 +350,20 @@ layui.define(['xmSelect', 'md5'], function (exports) {
350 } 350 }
351 }); 351 });
352 }, 352 },
353 - menuXmSelect: function (xmSelectParams, done) { 353 + menuXmSelect: function (xmSelectParams, done, username_, roleId_) {
  354 + var username = username_ ? username_ : '';
  355 + var roleId = roleId_ ? roleId_ : '';
354 admin.req({ 356 admin.req({
355 - url: `${obj.domainName}/api-user/menus/findMenus`, 357 + url: `${obj.domainName}/api-user/menus/findMenus?username=` + username + '&roleIds=' + roleId,
356 success: function (res) { 358 success: function (res) {
357 // 菜单下拉框 359 // 菜单下拉框
358 var menuList = res.data; 360 var menuList = res.data;
359 - menuList.forEach(item => {  
360 - item.disabled = item.isLeaf !== 'Y';  
361 - }); 361 + // menuList.forEach(item => {
  362 + // item.disabled = item.isLeaf !== 'Y';
  363 + // });
362 var menuTree = obj.pidToChildren(menuList, "id", "parentId"); 364 var menuTree = obj.pidToChildren(menuList, "id", "parentId");
  365 + //XuHaoJie 2021/10/21 添加是否是父节点
  366 + addProperty(menuTree);
363 var menuSelect = xmSelect.render(Object.assign({ 367 var menuSelect = xmSelect.render(Object.assign({
364 el: '#', 368 el: '#',
365 tips: '=菜单=', 369 tips: '=菜单=',
@@ -392,6 +396,19 @@ layui.define(['xmSelect', 'md5'], function (exports) { @@ -392,6 +396,19 @@ layui.define(['xmSelect', 'md5'], function (exports) {
392 } 396 }
393 } 397 }
394 }); 398 });
  399 +
  400 + //添加是否是父节点的删除
  401 + function addProperty(list) {
  402 + list.forEach(item => {
  403 + if (item.children && item.children.length > 0) {
  404 + item['isParent'] = 1;
  405 + addProperty(item.children);
  406 + } else {
  407 + item['isParent'] = 0;
  408 + }
  409 + return item;
  410 + })
  411 + }
395 }, 412 },
396 relationTypeXmSelect: function (xmSelectParams, done) { 413 relationTypeXmSelect: function (xmSelectParams, done) {
397 admin.req({ 414 admin.req({
@@ -110,7 +110,7 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl' @@ -110,7 +110,7 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl'
110 ' <button role-data-menu="' + d.id + '" lay-tips="菜单授权" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-org-btn"><i class="layui-icon layui-icon-menu-fill"></i></button>' + 110 ' <button role-data-menu="' + d.id + '" lay-tips="菜单授权" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-org-btn"><i class="layui-icon layui-icon-menu-fill"></i></button>' +
111 // ' <button role-data-query-menus="'+d.id+'" role-data-name="'+d.name+'" lay-tips="角色菜单查看" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-org-btn"><i class="layui-icon layui-icon-search"></i></button>'+ 111 // ' <button role-data-query-menus="'+d.id+'" role-data-name="'+d.name+'" lay-tips="角色菜单查看" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-org-btn"><i class="layui-icon layui-icon-search"></i></button>'+
112 ' <button role-data-oneKey="' + d.id + '" lay-tips="' + tips + '" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-org-btn"><i class="layui-icon layui-icon-auz"></i></button>' + 112 ' <button role-data-oneKey="' + d.id + '" lay-tips="' + tips + '" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-org-btn"><i class="layui-icon layui-icon-auz"></i></button>' +
113 - ' <button data-code="' + d.code + '" lay-tips="配置默认首页" type="button" class="layui-btn layui-btn-xs layui-btn-normal config-default-index"><i class="layui-icon layui-icon-website"></i></button>' + 113 + ' <button data-code="' + d.code + '" data-id="'+d.id+'" lay-tips="配置默认首页" type="button" class="layui-btn layui-btn-xs layui-btn-normal config-default-index"><i class="layui-icon layui-icon-website"></i></button>' +
114 '</div>'; 114 '</div>';
115 }} 115 }}
116 ]], 116 ]],
@@ -176,6 +176,7 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl' @@ -176,6 +176,7 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl'
176 // 配置默认首页 176 // 配置默认首页
177 $('.config-default-index').unbind('click').on('click', function () { 177 $('.config-default-index').unbind('click').on('click', function () {
178 var roleCode = $(this).data('code'); 178 var roleCode = $(this).data('code');
  179 + var roleId =$(this).data('id');
179 layer.load(2); 180 layer.load(2);
180 admin.req({ 181 admin.req({
181 url: domainName + '/api-web/defaultIndex/getDefaultIndex', 182 url: domainName + '/api-web/defaultIndex/getDefaultIndex',
@@ -231,8 +232,25 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl' @@ -231,8 +232,25 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl'
231 common.menuXmSelect({ 232 common.menuXmSelect({
232 el: '#slt-menu-tree', 233 el: '#slt-menu-tree',
233 radio: true, 234 radio: true,
  235 + prop: {
  236 + name: 'name',
  237 + value: 'id',
  238 + isParent: 'isParent',
  239 + },
234 clickClose: true, 240 clickClose: true,
235 on(data) { 241 on(data) {
  242 + //XuHaoJie 2021/10/21 添加是否是父节点
  243 + //arr: 当前多选已选中的数据
  244 + var arr = data.arr;
  245 + if (arr && arr.length > 0) {
  246 + if (arr[0].isParent == 1) {
  247 + layer.msg('父节点不能选', {icon: 7});
  248 + setTimeout(function () {
  249 + xmSelect.get('#slt-menu-tree', true).setValue([]);
  250 + },1000);
  251 + return false;
  252 + }
  253 + }
236 if (data.arr.length) { 254 if (data.arr.length) {
237 switch (data.arr[0].moduleid) { 255 switch (data.arr[0].moduleid) {
238 case 'index-topo': { 256 case 'index-topo': {
@@ -285,7 +303,7 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl' @@ -285,7 +303,7 @@ layui.define(['table', 'form', 'laydate','treeTable', 'admin', 'layer', 'laytpl'
285 } 303 }
286 }, function (select) { 304 }, function (select) {
287 select.setValue([defaultIndex], null, true); 305 select.setValue([defaultIndex], null, true);
288 - }); 306 + },null,roleId);
289 307
290 308
291 function reSetForm() { 309 function reSetForm() {
@@ -341,8 +341,25 @@ layui.define(['table', 'form', 'admin', 'layer', 'upload', 'common', 'sessions', @@ -341,8 +341,25 @@ layui.define(['table', 'form', 'admin', 'layer', 'upload', 'common', 'sessions',
341 common.menuXmSelect({ 341 common.menuXmSelect({
342 el: '#slt-menu-tree', 342 el: '#slt-menu-tree',
343 radio: true, 343 radio: true,
  344 + prop: {
  345 + name: 'name',
  346 + value: 'id',
  347 + isParent: 'isParent',
  348 + },
344 clickClose: true, 349 clickClose: true,
345 on(data) { 350 on(data) {
  351 + //XuHaoJie 2021/10/21 添加是否是父节点
  352 + //arr: 当前多选已选中的数据
  353 + var arr = data.arr;
  354 + if (arr && arr.length > 0) {
  355 + if (arr[0].isParent == 1) {
  356 + layer.msg('父节点不能选', {icon: 7});
  357 + setTimeout(function () {
  358 + xmSelect.get('#slt-menu-tree', true).setValue([]);
  359 + },1000);
  360 + return false;
  361 + }
  362 + }
346 if (data.arr.length) { 363 if (data.arr.length) {
347 switch (data.arr[0].moduleid) { 364 switch (data.arr[0].moduleid) {
348 case 'index-topo': { 365 case 'index-topo': {
@@ -395,7 +412,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'upload', 'common', 'sessions', @@ -395,7 +412,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'upload', 'common', 'sessions',
395 } 412 }
396 }, function (select) { 413 }, function (select) {
397 select.setValue([defaultIndex], null, true); 414 select.setValue([defaultIndex], null, true);
398 - }); 415 + },username);
399 416
400 417
401 function reSetForm() { 418 function reSetForm() {
@@ -855,7 +855,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'laytpl', 'common', 'view', 'se @@ -855,7 +855,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'laytpl', 'common', 'view', 'se
855 }).done(function (response) { 855 }).done(function (response) {
856 layer.close(loading); 856 layer.close(loading);
857 if (response.success) { 857 if (response.success) {
858 - layer.msg('添加绑定成功!此次添加了' + insertCount + '个新资源' + (isExistCount > 0 ? ',有' + isExistCount + '个已经存在。' : ''), {icon: 1, time: 5000}); 858 + layer.msg('添加绑定成功!此次添加了' + insertCount + '个新资源(父资源)' + (isExistCount > 0 ? ',有' + isExistCount + '个已经存在。' : ''), {icon: 1, time: 5000});
859 layer.close(addResLayerIndex); 859 layer.close(addResLayerIndex);
860 reloadTable(resType,busId); 860 reloadTable(resType,busId);
861 } else { 861 } else {