111
This commit is contained in:
parent
3302c8f97d
commit
0d6fea354a
@ -5,7 +5,7 @@
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">角色名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="title" lay-verify="title" autocomplete="off" placeholder="12字以内" class="layui-input addrole-tit">
|
||||
<input type="text" name="title" lay-verify="title" autocomplete="off" placeholder="12字以内" class="layui-input addrole-tit">
|
||||
</div>
|
||||
</div>
|
||||
<form class="layui-form" action="" lay-filter="addroleexample">
|
||||
@ -13,10 +13,10 @@
|
||||
<label class="layui-form-label">权限配置</label>
|
||||
<div class="layui-input-block">
|
||||
|
||||
<div class="projectadmin-info-table-top">
|
||||
<!-- <div class="projectadmin-info-table-top">
|
||||
<div class="projectadmin-info-table1">功能</div>
|
||||
<div class="projectadmin-info-table2">操作权限</div>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<div class="addrole-info-table-con">
|
||||
|
||||
@ -39,9 +39,13 @@
|
||||
|
||||
<script id="addrole-info-table-con-dot" type="text/html">
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
<div class="projectadmin-info-table-con">
|
||||
<div class="projectadmin-info-table-left">
|
||||
<input type="checkbox" name="{{item._id}}" lay-skin="primary" title="{{item.name}}" data-api="{{item.path}}">
|
||||
</div>
|
||||
<!-- <div class="projectadmin-info-table-con">
|
||||
<div class="projectadmin-info-table-left">
|
||||
<div>{{item.title}}</div>
|
||||
<div>{{item.name}}</div>
|
||||
<input type="checkbox" name="apichrck" lay-skin="primary" title="{{item.name}}" data-api="{{item.path}}">
|
||||
</div>
|
||||
<div class="projectadmin-info-table-center-box">
|
||||
{{# layui.each(item.list, function(indexs, items){ }}
|
||||
@ -52,7 +56,7 @@
|
||||
</div>
|
||||
{{# }); }}
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
{{# }); }}
|
||||
</script>
|
||||
|
||||
|
36
web/pages/apiadmin.html
Normal file
36
web/pages/apiadmin.html
Normal file
@ -0,0 +1,36 @@
|
||||
<!-- api管理 -->
|
||||
<div class="main___Tea6c">
|
||||
<div class="projectadmin-con-bg">
|
||||
<div class="eventattradmin-top-box">
|
||||
<div class="eventattradmin-left___y490Q">事件管理<i class="layui-icon" title="在该页面进行事件及事件属性的管理。包括设置事件的显示名,显示状态等;设置事件属性的显示名,显示状态,计数单位,上传维度表等功能"></i> </div>
|
||||
|
||||
<div class="eventattradmin-right___1TIt8">
|
||||
<div class="eventattradmin-search___23TMG">
|
||||
<i class="layui-icon"></i>
|
||||
<input type="text" placeholder="请输入搜索" />
|
||||
<img src="./static/img/cha1.png">
|
||||
</div>
|
||||
<div class="eventattradmin-display___21tQp">
|
||||
<img src="./static/img/peizhi2.png">
|
||||
<span>显示名配置</span>
|
||||
</div>
|
||||
|
||||
<div class="eventattradmin-actions___141YT">
|
||||
<i class="layui-icon"></i>
|
||||
<span>api添加</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="eventattradmin-table-box">
|
||||
<table class="layui-hide" id="apiadmin-table" lay-filter="apiadminntest"></table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/html" id="apiadminbarDemo">
|
||||
<a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="del">删除</a>
|
||||
<a class="layui-btn layui-btn-xs " lay-event="edit">编辑</a>
|
||||
</script>
|
28
web/pages/apiadmin_add.html
Normal file
28
web/pages/apiadmin_add.html
Normal file
@ -0,0 +1,28 @@
|
||||
<!-- 添加api -->
|
||||
<div class="apiadd-box" style="height:330px; width: 400px;">
|
||||
<div class="newwenjian-top">
|
||||
<p>添加api</p>
|
||||
<img src="./static/img/cha.png" class="newwenjian-cha"/>
|
||||
</div>
|
||||
|
||||
<div class="newwenjian-name-box">
|
||||
<div class="newwenjian-title">标题</div>
|
||||
<input type="text" class="newwenjianname-txt" id="name"/>
|
||||
</div>
|
||||
|
||||
<div class="newwenjian-name-box">
|
||||
<div class="newwenjian-title">路径</div>
|
||||
<input type="text" class="newwenjianname-txt" id="path"/>
|
||||
</div>
|
||||
|
||||
<div class="newwenjian-name-box">
|
||||
<div class="newwenjian-title">简介</div>
|
||||
<input type="text" class="newwenjianname-txt" id="desc"/>
|
||||
</div>
|
||||
|
||||
<div class="newwenjian-but-box">
|
||||
<div class="newwenjian-qx">取消</div>
|
||||
<div class="newwenjian-qd">确定</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -29,12 +29,12 @@
|
||||
</div>
|
||||
|
||||
<div class="projectadmin-con-hz-left-list-box">
|
||||
<div class="projectadmin-con-hz-left-list-tit">
|
||||
<!-- <div class="projectadmin-con-hz-left-list-tit">
|
||||
<div class="sekuai"></div> 系统角色
|
||||
</div>
|
||||
<div class="projectadmin-con-hz-left-list-xtong">
|
||||
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<div class="projectadmin-con-hz-left-list-tit">
|
||||
<div class="sekuai"></div> 项目内角色
|
||||
@ -58,6 +58,8 @@
|
||||
|
||||
<div class="projectadmin-info-box">
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@ -69,30 +71,28 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- </div> -->
|
||||
<!-- </div> -->
|
||||
|
||||
<!-- </div> -->
|
||||
<script id="projectadmin-info-box-dot" type="text/html">
|
||||
<div class="projectadmin-info-bg">
|
||||
<div class="projectadmin-info-table-top">
|
||||
<div class="projectadmin-info-table1">功能</div>
|
||||
<div class="projectadmin-info-table2">操作权限</div>
|
||||
<!-- <div class="projectadmin-info-table2">功能明细</div> -->
|
||||
<div class="projectadmin-info-table1">api名字</div>
|
||||
<div class="projectadmin-info-table2">api路径</div>
|
||||
<div class="projectadmin-info-table3">操作</div>
|
||||
</div>
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
|
||||
<div class="projectadmin-info-table-con">
|
||||
<div class="projectadmin-info-table-left">
|
||||
<div>{{item.title}}</div>
|
||||
<div>{{item.name}}</div>
|
||||
</div>
|
||||
<div class="projectadmin-info-table-center-box">
|
||||
{{# layui.each(item.child, function(indexs, items){ }}
|
||||
{{# if(items.selected){ }}
|
||||
<div class="projectadmin-info-table-center">
|
||||
<div class="projectadmin-info-table-center-info">{{items.name}}</div>
|
||||
</div>
|
||||
{{# } }}
|
||||
{{# }); }}
|
||||
<div>{{item.path}}</div>
|
||||
</div>
|
||||
<div class="projectadmin-info-table-right">
|
||||
<!-- <div class="projectadmin-edit" data-index="{{index}}" data-id="{{item._id}}" >编辑</div> -->
|
||||
<div class="projectadmin-del" data-index="{{index}}" data-path="{{item.path}}" >删除</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -116,9 +116,15 @@
|
||||
|
||||
<script id="projectadmin-con-hz-left-list-tit-xiangmu-dot" type="text/html">
|
||||
{{# layui.each(d, function(index, item){ }}
|
||||
<div class="projectadmin-con-hz-left-list-con roleinproject-tit" data-index="{{index}}">
|
||||
{{item.title}}
|
||||
{{# if(index === 0){ }}
|
||||
<div class="projectadmin-con-hz-left-list-con roleinproject-tit selected___3ctlt" data-id="{{item._id}}" data-index="{{index}}">
|
||||
<span>{{item.name}}</span> <img src="./static/img/gengduo.png" alt="" class="projectadmin-gongduo" data-id="{{item._id}}" data-name="{{item.name}}">
|
||||
</div>
|
||||
{{# } else { }}
|
||||
<div class="projectadmin-con-hz-left-list-con roleinproject-tit" data-id="{{item._id}}" data-index="{{index}}">
|
||||
<span>{{item.name}}</span> <img src="./static/img/gengduo.png" alt="" class="projectadmin-gongduo" data-id="{{item._id}}" data-name="{{item.name}}">
|
||||
</div>
|
||||
{{# } }}
|
||||
{{# }); }}
|
||||
</script>
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
<div class="menu_dapax">
|
||||
<div class="item_kuvn" data-url=""> <a class="item_kuvn-pl ajax-content selected___3ctlt" href="projectinfo" data-id="conetnt">项目信息</a> </div>
|
||||
<div class="item_kuvn" data-url=""> <a class="item_kuvn-pl ajax-content" href="useradmin" data-id="projectadmin-con-box">成员管理</a> </div>
|
||||
<div class="item_kuvn" data-url=""> <a class="item_kuvn-pl ajax-content" href="apiadmin" data-id="projectadmin-con-box">api管理</a> </div>
|
||||
<div class="item_kuvn" data-url=""> <a class="item_kuvn-pl ajax-content" href="projectadmin" data-id="projectadmin-con-box">角色管理</a></div>
|
||||
<div class="item_kuvn" data-url=""> <a class="item_kuvn-pl ajax-content" href="datarights" data-id="projectadmin-con-box">数据权限</a></div>
|
||||
</div>
|
||||
|
363
web/src/x.min.js
vendored
363
web/src/x.min.js
vendored
@ -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='';
|
||||
|
||||
// <dd><a class="ajax-content" href="analysis" data-id="conetnt">事件分析</a></dd>
|
||||
// <dd><a class="ajax-content" href="retained" data-id="conetnt">留存分析</a></dd>
|
||||
// <dd><a class="ajax-content" href="ltvmodel" data-id="conetnt">LTV模型</a></dd>
|
||||
// <dd><a class="ajax-content" href="funnelanalysis" data-id="conetnt">漏斗分析</a></dd>
|
||||
// <dd><a class="ajax-content" href="distribution" data-id="conetnt">分布分析</a></dd>
|
||||
// <dd><a class="ajax-content" href="routeanalysis" data-id="conetnt">路径分析</a></dd>
|
||||
// <dd><a class="ajax-content" href="sqlquery" data-id="conetnt">SQL查询</a></dd>
|
||||
|
||||
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
|
||||
};
|
||||
|
@ -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
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -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();
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
};
|
||||
|
47
web/srczip/logic/apiadmin.js
Normal file
47
web/srczip/logic/apiadmin.js
Normal file
@ -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');
|
||||
}
|
||||
};
|
||||
})();
|
52
web/srczip/logic/apiadmin_add.js
Normal file
52
web/srczip/logic/apiadmin_add.js
Normal file
@ -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();
|
||||
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
};
|
||||
})();
|
@ -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']){
|
||||
|
@ -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();
|
||||
});
|
||||
|
||||
}
|
||||
};
|
||||
|
@ -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){
|
||||
|
||||
})
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
@ -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; }
|
||||
|
Loading…
Reference in New Issue
Block a user