diff --git a/web/pages/addrole.html b/web/pages/addrole.html index 6357b83..eb39dbc 100644 --- a/web/pages/addrole.html +++ b/web/pages/addrole.html @@ -5,7 +5,7 @@
- +
@@ -13,10 +13,10 @@
-
+
@@ -39,9 +39,13 @@ diff --git a/web/pages/apiadmin.html b/web/pages/apiadmin.html new file mode 100644 index 0000000..6f3fafa --- /dev/null +++ b/web/pages/apiadmin.html @@ -0,0 +1,36 @@ + +
+
+
+
事件管理
+ +
+
+ + + +
+
+ + 显示名配置 +
+ +
+ + api添加 +
+ +
+ +
+ +
+
+
+
+
+ + \ No newline at end of file diff --git a/web/pages/apiadmin_add.html b/web/pages/apiadmin_add.html new file mode 100644 index 0000000..d85a61a --- /dev/null +++ b/web/pages/apiadmin_add.html @@ -0,0 +1,28 @@ + +
+
+

添加api

+ +
+ +
+
标题
+ +
+ +
+
路径
+ +
+ +
+
简介
+ +
+ +
+
取消
+
确定
+
+
+ diff --git a/web/pages/projectadmin.html b/web/pages/projectadmin.html index 2da6844..1c46d88 100644 --- a/web/pages/projectadmin.html +++ b/web/pages/projectadmin.html @@ -29,12 +29,12 @@
-
+
项目内角色 @@ -58,6 +58,8 @@
+ +
@@ -69,30 +71,28 @@
- + diff --git a/web/pages/projectinfo.html b/web/pages/projectinfo.html index e0a0d48..5298975 100644 --- a/web/pages/projectinfo.html +++ b/web/pages/projectinfo.html @@ -6,6 +6,7 @@ diff --git a/web/src/x.min.js b/web/src/x.min.js index d861fbd..64a7d70 100644 --- a/web/src/x.min.js +++ b/web/src/x.min.js @@ -9,8 +9,8 @@ var X = window.X || { 'taboperationdata':{ kanban:[ {'title':'重命名','img':'xiugai.png','click':'modifyname'}, - {'title':'移动至','img':'yidong.png','click':'move'}, - {'title':'复制看板','img':'fuzhi.png','click':'copy'}, + {'title':'移动至','img':'yidong.png','click':'yidong-pop'}, + // {'title':'复制看板','img':'fuzhi.png','click':'copykanban'}, {'title':'删除看板','img':'del.png','click':'del'}, ], wenjian:[ @@ -105,7 +105,6 @@ var X = window.X || { var ipurl = "http://10.0.0.77:7889/api/v1/"; // var ipurl = "http://139.159.159.3:9865/api/v1/"; - // var ipurl = "10.0.0.77"; //设置或读取登录缓存,需要保存到localStorage,防止刷新时候登录数据丢失 X.loginCache = function(data){ @@ -143,7 +142,7 @@ var X = window.X || { } } var index; - $.ajax({ + $.ajax({ headers: { Authorization:token//此处放置请求到的用户token }, @@ -216,7 +215,7 @@ var X = window.X || { }; //渲染表格有分页有操作 - X.laytabledata = function(id,url,data,arr){ + X.laytabledata = function(id,url,data,arr,height){ var loginCache = X.loginCache(); var token = (loginCache? loginCache.token:""); token = "Bearer "+token; @@ -226,6 +225,9 @@ var X = window.X || { }else { url = ipurl+url+"?game="+X.DATA.game; } + if(!height){ + var height = 'full-20' + } layui.table.render({ headers: { Authorization: token @@ -234,7 +236,7 @@ var X = window.X || { ,url: url ,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增 ,cols: data - ,height: 'full-20' + ,height: height }); }; @@ -592,12 +594,10 @@ var X = window.X || { type: 'line', data: arr } - console.log(arr); for(let i in arr){ sum = sum + arr[i]; sameday = arr[i]; } - console.log(mean); date = '近'+xAxisData.length+'天时间'; mean = (sum / arr.length).toFixed(2); @@ -1062,26 +1062,47 @@ var X = window.X || { // srczip/logic/addrole.js (function(){ X.pageLogic['addrole'] = { - init : function(){ + init : function(parms){ + var me = this; + var data; - X.api("authority/api_list/","get",{},function(d){ + X.api("authz/api_list","get",{},function(d){ data = d; X.laytpldata("#addrole-info-table-con-dot",d,".addrole-info-table-con"); layui.form.render(); - }) + }); + if(parms){ + this.parms = parms; + var passdata = parms; + console.log(passdata); + X.api("authz/get_permissions_for_user_in_domain","post",{role_id:passdata.id,game:X['DATA']['game']},function(d){ + console.log(d); + $('.addrole-tit').val(passdata.title); + var selinput = {} + for(let i in d){ + selinput[d[i]['_id']] = true + } + console.log(selinput); + layui.form.val('addroleexample', selinput) + }); + } $(".addrole-qd").click(function(){ var tit = $(".addrole-tit").val(); var addroledata = layui.form.val("addroleexample"); + console.log(addroledata); var dataArr =[]; for(let i in addroledata){ dataArr.push(i); } - X.api("authority/add_role","post",{role_name:tit,role_api:dataArr},function(d){ - layer.msg("创建成功"); - $(".addrole-qx a").click(); + X.api("authz/add_roles","post",{name:tit,game:X['DATA']['game'],desc:'111'},function(d){ + + X.api("authz/add_policy","post",{role_id:d,game:X['DATA']['game'],act:"*",path_list:dataArr},function(d){ + layer.msg("创建成功"); + $(".addrole-qx a").click(); + }) }) - }) + }); } }; @@ -1294,7 +1315,7 @@ var X = window.X || { } } - console.log(ProjectData) + for(let i in ProjectData){ if(ProjectData[i]['title'].indexOf(txt) != -1){ ssProjectData.push(ProjectData[i]) @@ -1370,7 +1391,8 @@ var X = window.X || { 'mykanban':selectkanbanidarr(mykanban), 'kongjian':selectkongjianidarr(kongjian) } - X.parametersopen(data,'yidong-pop','auto',function(){ + var source_id = data['mykanban'].concat(data['kongjian']); + X.parametersopen(source_id,'yidong-pop','auto',function(){ me.updata(X.DATA['projectid']); }) }); @@ -1391,18 +1413,18 @@ var X = window.X || { layer.confirm('确认删除选中的看板吗?该操作不可恢复', { btn: ['取消','删除 '] //按钮 }, function(){ - // 取消 + //取消 layer.close(layer.index); }, function(){ //删除 - X.api("dashboard/delete",'post',{ids:data},function(d){ layer.msg('删除成功'); layer.close(layer.index); X.pageLogic.dashboard.freshMenu(X.DATA.projectid);//刷新侧边栏 me.updata(X.DATA.projectid);//刷新数据 }) - }); + }); + }); @@ -2636,6 +2658,107 @@ var X = window.X || { +// srczip/logic/apiadmin.js +(function(){ + X.pageLogic['apiadmin'] = { + init : function(parms){ + var me = this; + me.updataapilist(); + $(document).off('click','.eventattradmin-actions___141YT').on('click','.eventattradmin-actions___141YT',function(){ + X.parametersopen('','apiadmin_add','auto',function(){ + me.updataapilist(); + }) + }); + + layui.table.on('tool(apiadminntest)', function(obj){ + var data = obj.data; + if(obj.event === 'edit'){ + X.parametersopen(data,"apiadmin_add",'auto',function(){ + me.updataapilist(); + }) + }else if(obj.event === 'del'){ + layer.confirm('确认删除当前api吗?该操作不可恢复', { + btn: ['取消','删除 '] //按钮 + }, function(){ + //取消 + layer.close(layer.index); + }, function(){ + //删除 + var arr = []; + arr.push(data._id); + X.api("authz/del_api",'post',{ids:arr},function(d){ + layer.msg('删除成功'); + layer.close(layer.index); + me.updataapilist(); + }) + }); + } + }) + + }, + updataapilist:function(){ + X.laytabledata("#apiadmin-table","authz/api_list",[[ + {field:'name', title: '标题', width: '10%', sort: true} + ,{field:'path', title: '路径'} + ,{field:'desc', title: '简介',width: '60%'} + ,{fixed: 'right', title:'操作', toolbar: '#apiadminbarDemo', width:117} + ]],null,'685'); + } + }; +})(); +// srczip/logic/apiadmin_add.js +(function(){ + X.pageLogic['apiadmin_add'] = { + init : function(parms){ + var me = this; + this.parms = parms; + this.callback = parms.callback; //选择后执行的回调 + var data = parms.extData;//获取到上层弹窗传的数据 + console.log(data); + if(data){ + $("#path").val(data.path); + $("#name").val(data.name); + $("#desc").val(data.desc); + } + $(document).off('click','.newwenjian-qd').on('click','.newwenjian-qd',function(){ + if($("#path").val() == "" && $("#name").val() == ""){ + layer.msg('标题,路径为必填项'); + return; + } + var arr = { + "path": $("#path").val(), + "name": $("#name").val(), + "desc": $("#desc").val() + } + if(!data){ + X.api('authz/add_api','post',arr,function(d){ + layer.closeAll(); + X.pageLogic.apiadmin.updataapilist(); + }); + }else { + arr['id'] = data['_id']; + X.api('authz/edit_api','post',arr,function(d){ + layer.closeAll(); + X.pageLogic.apiadmin.updataapilist(); + }); + } + + }); + + $(document).off('click','.newwenjian-qx').on('click','.newwenjian-qx',function(){ + layer.closeAll(); + + }); + + $(document).off('click','.newwenjian-cha').on('click','.newwenjian-cha',function(){ + layer.closeAll(); + + }); + + + } + }; +})(); // srczip/logic/attribute.js (function(){ X.pageLogic['attribute'] = { @@ -3507,14 +3630,6 @@ var X = window.X || { var id = $(this).attr('data-id'); var gourl=''; - //
事件分析
- //
留存分析
- //
LTV模型
- //
漏斗分析
- //
分布分析
- //
路径分析
- //
SQL查询
- if(cat == 'event'){ gourl = 'analysis'; }else if(cat == 'retention'){ @@ -3533,7 +3648,37 @@ var X = window.X || { // 渲染下拉框 $(document).off('click','.nav-action-bar').on('click','.nav-action-bar',function(e){ e.stopPropagation(); - console.log('更多操作按钮'); + // console.log('更多操作按钮'); + var obj = $(this); + var offset = obj.offset(); + var offsets = [ offset.top + 10,offset.left]; + var id = $(this).attr('data-id'); + X.parametersopen(X.DATA.taboperationdata['kanban'],"dropdownlist",offsets,function(d){ + var arr = []; + arr.push(id); + if(d.click != 'del'){ + X.parametersopen(arr,d.click,'auto',function(){ + // me.updata(X.DATA['projectid']); + me.freshMenu(); + }) + }else { + layer.confirm('确认删除选中的看板吗?该操作不可恢复', { + btn: ['取消','删除 '] //按钮 + }, function(){ + //取消 + layer.close(layer.index); + }, function(){ + //删除 + X.api("dashboard/delete",'post',{ids:arr},function(d){ + layer.msg('删除成功'); + layer.close(layer.index); + X.pageLogic.dashboard.freshMenu(X.DATA.projectid);//刷新侧边栏 + me.updata(X.DATA.projectid);//刷新数据 + }) + }); + } + + }); }); }, @@ -3651,9 +3796,6 @@ var X = window.X || { X.pageLogic['dashboard'].morefeatures(eventdata[z]); }); } - - - } } }) @@ -3760,7 +3902,7 @@ var X = window.X || { for(let i in d){ modellist.push(d[i]['sort']); } - modellist.sort(); + modellist.sort(); //排序 for(let i in modellist){ for(let z in d){ if(modellist[i] == d[z]['sort']){ @@ -4501,8 +4643,8 @@ var X = window.X || { $(document).off('click','.dropdownlist-list').on('click','.dropdownlist-list',function(){ var index = $(this).attr("data-index"); var dataArr = listdata[index]; - me.callback && me.callback(dataArr); layer.closeAll(); + me.callback && me.callback(dataArr); }) } @@ -6450,6 +6592,34 @@ var X = window.X || { } }; })(); +// srczip/logic/modifyname.js +(function(){ + X.pageLogic['modifyname'] = { + init : function(parms){ + var me = this; + this.parms = parms; + this.callback = parms.callback; //选择后执行的回调 + var data = parms.extData; + console.log(11111,data); + $(document).off('click','.modifyname-qd').on('click','.modifyname-qd',function(){ + var txt = $(".modifyname-txt").val(); + X.api("dashboard/edit","post",{dashboard_id:data[0],new_name:txt},function(d){ + console.log(d); + layer.closeAll(0); + }) + }); + + $(document).off('click','.modifyname-qx').on('click','.modifyname-qx',function(){ + layer.closeAll(); + }); + + $(document).off('click','.modifyname-cha').on('click','.modifyname-cha',function(){ + layer.closeAll(); + }); + + } + }; +})(); // srczip/logic/newkanban.js (function(){ X.pageLogic['newkanban'] = { @@ -6870,46 +7040,105 @@ var X = window.X || { // srczip/logic/projectadmin.js (function(){ X.pageLogic['projectadmin'] = { - init : function(){ + init : function(parms){ + var role_id,datalist; + updataroles(); + function updataroles(){ + X.api("authz/roles","get",{},function(d){ + datalist = d; + role_id = d[0]['_id']; + $(".projectadmin-list-name").html(d[0]["name"]); + X.laytpldata("#projectadmin-con-hz-left-list-tit-xiangmu-dot",d,".projectadmin-con-hz-left-list-tit-xiangmu"); + // X.laytpldata("#projectadmin-info-box-dot",d.sys_role[0]['authority'],".projectadmin-info-box"); + updataapiinfo(d[0]['_id']); + }); + } - - var data - X.api("authority/all_role","get",{},function(d){ - // console.log(d); - data = d; - $(".projectadmin-list-name").html(d.sys_role[0]["title"]); - X.laytpldata("#projectadmin-con-hz-left-list-xtong-dot",d.sys_role,".projectadmin-con-hz-left-list-xtong"); - X.laytpldata("#projectadmin-con-hz-left-list-tit-xiangmu-dot",d.dom_role,".projectadmin-con-hz-left-list-tit-xiangmu"); - X.laytpldata("#projectadmin-info-box-dot",d.sys_role[0]['authority'],".projectadmin-info-box"); - }) - $(".menu_dapax .item_kuvn").click(function(){ $(".menu_dapax .item_kuvn").removeClass("selected___3ctlt"); $(this).addClass("selected___3ctlt"); var url = $(this).attr("data-url"); - }) - - // $(document).on("click",".projectadmin-con-hz-left-list-con",function(){ - // $(".projectadmin-con-hz-left-list-con").removeClass("selected___3ctlt"); - // $(this).addClass("selected___3ctlt"); - // $(".projectadmin-list-name").html($(this).html()); - // }) - - $(document).on("click",".systemrole-tit",function(){ - $(".projectadmin-con-hz-left-list-con").removeClass("selected___3ctlt"); - $(this).addClass("selected___3ctlt"); - $(".projectadmin-list-name").html($(this).html()); - var index = $(this).attr("data-index"); - X.laytpldata("#projectadmin-info-box-dot",data.sys_role[index]['authority'],".projectadmin-info-box"); - }) + }); $(document).on("click",".roleinproject-tit",function(){ + var index = $(this).attr("data-index"); $(".projectadmin-con-hz-left-list-con").removeClass("selected___3ctlt"); $(this).addClass("selected___3ctlt"); - $(".projectadmin-list-name").html($(this).html()); - var index = $(this).attr("data-index"); - X.laytpldata("#projectadmin-info-box-dot",data.dom_role[index]['authority'],".projectadmin-info-box"); - }) + $(".projectadmin-list-name").html(datalist[index]['name']); + var id = $(this).attr("data-id"); + updataapiinfo(id); + // X.laytpldata("#projectadmin-info-box-dot",data.dom_role[index]['authority'],".projectadmin-info-box"); + }); + + function updataapiinfo(id){ + role_id = id; + X.api("authz/get_permissions_for_user_in_domain","post",{role_id:id,game:X['DATA']['game']},function(d){ + X.laytpldata("#projectadmin-info-box-dot",d,".projectadmin-info-box"); + }); + }; + + $(document).off('click','.projectadmin-del').on('click','.projectadmin-del',function(){ + var index = $(this).attr('data-index'); + var path = $(this).attr('data-path'); + layer.confirm('确认删除当前api吗?', { + btn: ['取消','删除 '] //按钮 + }, function(){ + //取消 + layer.close(layer.index); + }, function(){ + //删除 + X.api("authz/del_policy",'post',{role_id:role_id,game:X['DATA']['game'],path:path,act:"*"},function(d){ + layer.msg('删除成功'); + layer.close(layer.index); + updataapiinfo(role_id); + }) + }); + }); + + $(document).off('click','.projectadmin-gongduo').on('click','.projectadmin-gongduo',function(e){ + e.stopPropagation(); + var obj = $(this); + var offset = obj.offset(); + var id = obj.attr('data-id'); + var name = obj.attr("data-name"); + var arr = [ + { + title:'编辑', + id:'edit' + }, + { + title:'删除', + id:'del' + } + ] + X.querycriteriapop(arr,'dropdownlist',offset.left,offset.top+obj.height(),function(val){ + if(val.id == 'del'){ + layer.confirm('确认删除当前角色吗?', { + btn: ['取消','删除 '] //按钮 + }, function(){ + //取消 + layer.close(layer.index); + }, function(){ + //删除 + X.api("authz/del_role_user_domain",'post',{role_id:id,game:X['DATA']['game'],username:name},function(d){ + layer.close(layer.index); + layer.msg('删除成功'); + updataroles(); + }) + }); + }else { + var arr = { + id:id, + title:$(".projectadmin-list-name").html() + } + X.template('addrole','projectadmin-con-box',arr,function(d){ + + }) + } + }) + }); + + } @@ -9427,9 +9656,9 @@ var X = window.X || { alert('请选择添加的位置'); return; } - var source_id = data['mykanban'].concat(data['kongjian']); + // var source_id = data['mykanban'].concat(data['kongjian']); var dataArr = { - 'source_ids':source_id, + 'source_ids':data, 'dest_pid': id, 'cat':type }; diff --git a/web/srczip/common.js b/web/srczip/common.js index c8b1a4e..4b4e452 100644 --- a/web/srczip/common.js +++ b/web/srczip/common.js @@ -141,7 +141,7 @@ var X = window.X || { } } var index; - $.ajax({ + $.ajax({ headers: { Authorization:token//此处放置请求到的用户token }, @@ -214,7 +214,7 @@ var X = window.X || { }; //渲染表格有分页有操作 - X.laytabledata = function(id,url,data,arr){ + X.laytabledata = function(id,url,data,arr,height){ var loginCache = X.loginCache(); var token = (loginCache? loginCache.token:""); token = "Bearer "+token; @@ -224,6 +224,9 @@ var X = window.X || { }else { url = ipurl+url+"?game="+X.DATA.game; } + if(!height){ + var height = 'full-20' + } layui.table.render({ headers: { Authorization: token @@ -232,7 +235,7 @@ var X = window.X || { ,url: url ,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增 ,cols: data - ,height: 'full-20' + ,height: height }); }; diff --git a/web/srczip/logic/addrole.js b/web/srczip/logic/addrole.js index 78856dd..40b3b0b 100644 --- a/web/srczip/logic/addrole.js +++ b/web/srczip/logic/addrole.js @@ -1,25 +1,57 @@ (function(){ X.pageLogic['addrole'] = { - init : function(){ + init : function(parms){ + var me = this; + var data; - X.api("authority/api_list/","get",{},function(d){ + X.api("authz/api_list","get",{},function(d){ data = d; X.laytpldata("#addrole-info-table-con-dot",d,".addrole-info-table-con"); layui.form.render(); - }) + }); + if(parms){ + this.parms = parms; + var passdata = parms; + console.log(passdata); + X.api("authz/get_permissions_for_user_in_domain","post",{role_id:passdata.id,game:X['DATA']['game']},function(d){ + console.log(d); + $('.addrole-tit').val(passdata.title); + var selinput = {} + for(let i in d){ + selinput[d[i]['_id']] = true + } + console.log(selinput); + layui.form.val('addroleexample', selinput) + }); + } $(".addrole-qd").click(function(){ var tit = $(".addrole-tit").val(); var addroledata = layui.form.val("addroleexample"); + console.log(addroledata); var dataArr =[]; for(let i in addroledata){ dataArr.push(i); } - X.api("authority/add_role","post",{role_name:tit,role_api:dataArr},function(d){ - layer.msg("创建成功"); - $(".addrole-qx a").click(); - }) - }) + if(passdata){ + // X.api("authz/add_roles","post",{name:tit,game:X['DATA']['game'],desc:'111'},function(d){ + + // X.api("authz/add_policy","post",{role_id:d,game:X['DATA']['game'],act:"*",path_list:dataArr},function(d){ + // layer.msg("创建成功"); + // $(".addrole-qx a").click(); + // }) + // }) + }else{ + X.api("authz/add_roles","post",{name:tit,game:X['DATA']['game'],desc:'111'},function(d){ + + X.api("authz/add_policy","post",{role_id:d,game:X['DATA']['game'],act:"*",path_list:dataArr},function(d){ + layer.msg("创建成功"); + $(".addrole-qx a").click(); + }) + }) + } + + }); } }; diff --git a/web/srczip/logic/apiadmin.js b/web/srczip/logic/apiadmin.js new file mode 100644 index 0000000..ee9134a --- /dev/null +++ b/web/srczip/logic/apiadmin.js @@ -0,0 +1,47 @@ +(function(){ + X.pageLogic['apiadmin'] = { + init : function(parms){ + var me = this; + me.updataapilist(); + $(document).off('click','.eventattradmin-actions___141YT').on('click','.eventattradmin-actions___141YT',function(){ + X.parametersopen('','apiadmin_add','auto',function(){ + me.updataapilist(); + }) + }); + + layui.table.on('tool(apiadminntest)', function(obj){ + var data = obj.data; + if(obj.event === 'edit'){ + X.parametersopen(data,"apiadmin_add",'auto',function(){ + me.updataapilist(); + }) + }else if(obj.event === 'del'){ + layer.confirm('确认删除当前api吗?该操作不可恢复', { + btn: ['取消','删除 '] //按钮 + }, function(){ + //取消 + layer.close(layer.index); + }, function(){ + //删除 + var arr = []; + arr.push(data._id); + X.api("authz/del_api",'post',{ids:arr},function(d){ + layer.msg('删除成功'); + layer.close(layer.index); + me.updataapilist(); + }) + }); + } + }) + + }, + updataapilist:function(){ + X.laytabledata("#apiadmin-table","authz/api_list",[[ + {field:'name', title: '标题', width: '10%', sort: true} + ,{field:'path', title: '路径'} + ,{field:'desc', title: '简介',width: '60%'} + ,{fixed: 'right', title:'操作', toolbar: '#apiadminbarDemo', width:117} + ]],null,'685'); + } + }; +})(); \ No newline at end of file diff --git a/web/srczip/logic/apiadmin_add.js b/web/srczip/logic/apiadmin_add.js new file mode 100644 index 0000000..9bc1248 --- /dev/null +++ b/web/srczip/logic/apiadmin_add.js @@ -0,0 +1,52 @@ +(function(){ + X.pageLogic['apiadmin_add'] = { + init : function(parms){ + var me = this; + this.parms = parms; + this.callback = parms.callback; //选择后执行的回调 + var data = parms.extData;//获取到上层弹窗传的数据 + console.log(data); + if(data){ + $("#path").val(data.path); + $("#name").val(data.name); + $("#desc").val(data.desc); + } + $(document).off('click','.newwenjian-qd').on('click','.newwenjian-qd',function(){ + if($("#path").val() == "" && $("#name").val() == ""){ + layer.msg('标题,路径为必填项'); + return; + } + var arr = { + "path": $("#path").val(), + "name": $("#name").val(), + "desc": $("#desc").val() + } + if(!data){ + X.api('authz/add_api','post',arr,function(d){ + layer.closeAll(); + X.pageLogic.apiadmin.updataapilist(); + }); + }else { + arr['id'] = data['_id']; + X.api('authz/edit_api','post',arr,function(d){ + layer.closeAll(); + X.pageLogic.apiadmin.updataapilist(); + }); + } + + }); + + $(document).off('click','.newwenjian-qx').on('click','.newwenjian-qx',function(){ + layer.closeAll(); + + }); + + $(document).off('click','.newwenjian-cha').on('click','.newwenjian-cha',function(){ + layer.closeAll(); + + }); + + + } + }; +})(); \ No newline at end of file diff --git a/web/srczip/logic/dashboard.js b/web/srczip/logic/dashboard.js index c1bf585..69b5170 100644 --- a/web/srczip/logic/dashboard.js +++ b/web/srczip/logic/dashboard.js @@ -409,9 +409,6 @@ X.pageLogic['dashboard'].morefeatures(eventdata[z]); }); } - - - } } }) @@ -518,7 +515,7 @@ for(let i in d){ modellist.push(d[i]['sort']); } - modellist.sort(); + modellist.sort(); //排序 for(let i in modellist){ for(let z in d){ if(modellist[i] == d[z]['sort']){ diff --git a/web/srczip/logic/modifyname.js b/web/srczip/logic/modifyname.js index 5b435ba..6c81352 100644 --- a/web/srczip/logic/modifyname.js +++ b/web/srczip/logic/modifyname.js @@ -12,7 +12,15 @@ console.log(d); layer.closeAll(0); }) - }) + }); + + $(document).off('click','.modifyname-qx').on('click','.modifyname-qx',function(){ + layer.closeAll(); + }); + + $(document).off('click','.modifyname-cha').on('click','.modifyname-cha',function(){ + layer.closeAll(); + }); } }; diff --git a/web/srczip/logic/projectadmin.js b/web/srczip/logic/projectadmin.js index cc611d3..f808099 100644 --- a/web/srczip/logic/projectadmin.js +++ b/web/srczip/logic/projectadmin.js @@ -1,45 +1,104 @@ (function(){ X.pageLogic['projectadmin'] = { - init : function(){ + init : function(parms){ + var role_id,datalist; + updataroles(); + function updataroles(){ + X.api("authz/roles","get",{},function(d){ + datalist = d; + role_id = d[0]['_id']; + $(".projectadmin-list-name").html(d[0]["name"]); + X.laytpldata("#projectadmin-con-hz-left-list-tit-xiangmu-dot",d,".projectadmin-con-hz-left-list-tit-xiangmu"); + // X.laytpldata("#projectadmin-info-box-dot",d.sys_role[0]['authority'],".projectadmin-info-box"); + updataapiinfo(d[0]['_id']); + }); + } - - var data - X.api("authority/all_role","get",{},function(d){ - // console.log(d); - data = d; - $(".projectadmin-list-name").html(d.sys_role[0]["title"]); - X.laytpldata("#projectadmin-con-hz-left-list-xtong-dot",d.sys_role,".projectadmin-con-hz-left-list-xtong"); - X.laytpldata("#projectadmin-con-hz-left-list-tit-xiangmu-dot",d.dom_role,".projectadmin-con-hz-left-list-tit-xiangmu"); - X.laytpldata("#projectadmin-info-box-dot",d.sys_role[0]['authority'],".projectadmin-info-box"); - }) - $(".menu_dapax .item_kuvn").click(function(){ $(".menu_dapax .item_kuvn").removeClass("selected___3ctlt"); $(this).addClass("selected___3ctlt"); var url = $(this).attr("data-url"); - }) - - // $(document).on("click",".projectadmin-con-hz-left-list-con",function(){ - // $(".projectadmin-con-hz-left-list-con").removeClass("selected___3ctlt"); - // $(this).addClass("selected___3ctlt"); - // $(".projectadmin-list-name").html($(this).html()); - // }) - - $(document).on("click",".systemrole-tit",function(){ - $(".projectadmin-con-hz-left-list-con").removeClass("selected___3ctlt"); - $(this).addClass("selected___3ctlt"); - $(".projectadmin-list-name").html($(this).html()); - var index = $(this).attr("data-index"); - X.laytpldata("#projectadmin-info-box-dot",data.sys_role[index]['authority'],".projectadmin-info-box"); - }) + }); $(document).on("click",".roleinproject-tit",function(){ + var index = $(this).attr("data-index"); $(".projectadmin-con-hz-left-list-con").removeClass("selected___3ctlt"); $(this).addClass("selected___3ctlt"); - $(".projectadmin-list-name").html($(this).html()); - var index = $(this).attr("data-index"); - X.laytpldata("#projectadmin-info-box-dot",data.dom_role[index]['authority'],".projectadmin-info-box"); - }) + $(".projectadmin-list-name").html(datalist[index]['name']); + var id = $(this).attr("data-id"); + updataapiinfo(id); + // X.laytpldata("#projectadmin-info-box-dot",data.dom_role[index]['authority'],".projectadmin-info-box"); + }); + + function updataapiinfo(id){ + role_id = id; + X.api("authz/get_permissions_for_user_in_domain","post",{role_id:id,game:X['DATA']['game']},function(d){ + X.laytpldata("#projectadmin-info-box-dot",d,".projectadmin-info-box"); + }); + }; + + $(document).off('click','.projectadmin-del').on('click','.projectadmin-del',function(){ + var index = $(this).attr('data-index'); + var path = $(this).attr('data-path'); + layer.confirm('确认删除当前api吗?', { + btn: ['取消','删除 '] //按钮 + }, function(){ + //取消 + layer.close(layer.index); + }, function(){ + //删除 + X.api("authz/del_policy",'post',{role_id:role_id,game:X['DATA']['game'],path:path,act:"*"},function(d){ + layer.msg('删除成功'); + layer.close(layer.index); + updataapiinfo(role_id); + }) + }); + }); + + $(document).off('click','.projectadmin-gongduo').on('click','.projectadmin-gongduo',function(e){ + e.stopPropagation(); + var obj = $(this); + var offset = obj.offset(); + var id = obj.attr('data-id'); + var name = obj.attr("data-name"); + var arr = [ + { + title:'编辑', + id:'edit' + }, + { + title:'删除', + id:'del' + } + ] + X.querycriteriapop(arr,'dropdownlist',offset.left,offset.top+obj.height(),function(val){ + if(val.id == 'del'){ + layer.confirm('确认删除当前角色吗?', { + btn: ['取消','删除 '] //按钮 + }, function(){ + //取消 + layer.close(layer.index); + }, function(){ + //删除 + X.api("authz/del_role_user_domain",'post',{role_id:id,game:X['DATA']['game'],username:name},function(d){ + layer.close(layer.index); + layer.msg('删除成功'); + updataroles(); + }) + }); + }else { + var arr = { + id:id, + title:$(".projectadmin-list-name").html() + } + X.template('addrole','projectadmin-con-box',arr,function(d){ + + }) + } + }) + }); + + } diff --git a/web/static/css/projectadmin.css b/web/static/css/projectadmin.css index 7c06c9f..25f6a07 100644 --- a/web/static/css/projectadmin.css +++ b/web/static/css/projectadmin.css @@ -35,19 +35,29 @@ .projectadmin-info-box { height: calc(100% - 48px); overflow-y: auto; margin-top: 16px; } .projectadmin-info-bg { width: 100%; height: 100%; } -.projectadmin-info-table-top { width: 100%; background-color: #f0f2f5; color: #202d3f; font-weight: 400; font-size: 13px; display: flex; align-items: center;} +.projectadmin-info-table-top { width: 100%; background-color: #f0f2f5; color: #202d3f; font-weight: 400; font-size: 13px; display: flex; align-items: center; border-left: 1px solid #e6e6e6; } .projectadmin-info-table-top div { padding: 20px 0px; text-indent:13px; border-right: 1px solid #e6e6e6; border-bottom: 1px solid #e6e6e6;} .projectadmin-info-table1 { width: 20%; } -.projectadmin-info-table2 { width: 80%; } -.projectadmin-info-table-con { width: 100%; border-bottom: 1px solid #e6e6e6; background-color: #fff; color: #202d3f; font-weight: 400; font-size: 13px; display: flex;} +.projectadmin-info-table2 { width: 70%; } +.projectadmin-info-table3 { width: 10%; } +.projectadmin-info-table-con { width: 100%; border-bottom: 1px solid #e6e6e6; background-color: #fff; color: #202d3f; font-weight: 400; font-size: 13px; display: flex; border-left: 1px solid #e6e6e6; } .projectadmin-info-table-con div { text-indent:13px; } .projectadmin-info-table-left { width: 20%; } -.projectadmin-info-table-left div { height: 100%; min-height: 57px; border-left: 1px solid #e6e6e6; border-right: 1px solid #e6e6e6; display: flex; justify-content: space-between; align-items: center;} -.projectadmin-info-table-center-box { width: 80% ; } +.projectadmin-info-table-left div { height: 100%; min-height: 57px; display: flex; justify-content: space-between; align-items: center;} +.projectadmin-info-table-center-box { width: 70% ; } + +.projectadmin-info-table-center-box div { height: 100%; min-height: 57px; border-left: 1px solid #e6e6e6; border-right: 1px solid #e6e6e6; display: flex; justify-content: space-between; align-items: center;} + .projectadmin-info-table-center { width: 100%; display: flex;} -.projectadmin-info-table-center .projectadmin-info-table-center-info { width: 100%; padding: 20px 8px; border-top: 1px solid #e6e6e6; border-right: 1px solid #e6e6e6; display: flex; justify-content: space-between; align-items: center; } -.projectadmin-info-table-right { width: 75%;} -.projectadmin-info-table-right div { padding: 20px 8px; border-right: 1px solid #e6e6e6; border-bottom: 1px solid #e6e6e6;} +.projectadmin-info-table-center .projectadmin-info-table-center-info { width: 100%; padding: 20px 8px; border-top: 0px solid #e6e6e6; border-right: 1px solid #e6e6e6; display: flex; justify-content: space-between; align-items: center; } +.projectadmin-info-table-right { width: 10%; display: flex; align-items: center; border-right: 1px solid #e6e6e6; } +.projectadmin-info-table-right div { margin-left: 14px; text-indent: 0; height: 22px; line-height: 22px; padding: 0 5px; font-size: 12px; color: #fff; white-space: nowrap; text-align: center; border-radius: 2px; cursor: pointer; } +.projectadmin-edit { background-color: #009688; } +.projectadmin-del { background-color: #FF5722; } + +.projectadmin-gongduo { margin-top: 8px; float:right; display: none; } +.projectadmin-con-hz-left-list-con:hover > .projectadmin-gongduo { display: block; } + /* 项目信息 */ .projectinfo-info-box { background-color: #fff; margin-bottom: 0px; padding: 28px 24px 22px; border-radius: 2px; } @@ -310,7 +320,7 @@ /* 创建角色 */ .addrole-box { background-color: #fff; width: 100%; height: 100%; } .addrole-con-box { padding-right: 24px; padding-top: 24px; } -.addrole-info-table-con { height: 600px; overflow-y: auto; } +.addrole-info-table-con { height: 600px; overflow-y: auto; display: flex; flex-wrap: wrap; } .addrole-but-box { padding: 24px 0px 0 0; border-top: 1px solid #f0f0f0; display: flex; justify-content:flex-end; align-items: center; } .addrole-but-box div { cursor: pointer; margin-left: 10px; height: 32px; padding: 0 16px; font-weight: 400; font-size: 14px; line-height: 30px; border-radius: 2px; } .addrole-qx { color: #42546d; border: 1px solid #f0f0f0; }