Skip to content

Commit

Permalink
https://github.com/uavorg/uavstack/issues/369
Browse files Browse the repository at this point in the history
Apphub Authorized user experience enhancement

Apphub 服务治理--监控授权:

UAV应用下线后,在UAV容器监控中,定义的AppGroup(JAppGroup)将会不存在,

此时授权编辑时,将已经不存在的AppGroup屏蔽显示,

当用户页面提交的时候,自然不会有该数据提交,达到对授权信息删除垃圾数据的效果
  • Loading branch information
lbay2015 committed Aug 17, 2018
1 parent e5a79f6 commit 142de46
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,23 @@ function initGroupSelect(id,type) {
$("#"+id).empty();
var opStr = new StringBuffer();
$.each(gorupsSet, function(index, groupName) {

if("edit"==type){
/**
* 编辑页面,检查是否数据为最新
*/
//授权组数据是否还存在profile授权中(JAppGroup 设置的值)
var existJAppGroup = PageClass.groupsMap.get(groupName);
if(!existJAppGroup){
/**
* 如果已经不存在:跳过不显示,当用户编辑时,也同逻辑。
*
* 在用户点击保存时,没显示的不会被选中,则也不会被提交,达到删除的效果。
*/
return true;
}
}


var isSel=false; //用户选中
if(DataBindClass.userEditInfo[groupName]){
Expand Down Expand Up @@ -157,11 +174,16 @@ function showAddDiv(){
$("#addEmailListName").val("");
DataBindClass.userEditInfo={};

PageClass.ajaxGProfile("addGroupList","save");
initGroupSelect("addGroupList","save");

$("#addGroupFilterDiv").modal({backdrop: 'static', keyboard: false});

};
function showEditDiv(id){

PageClass.ajaxGProfile();


//init
$("#editTrTitle").hide();
$("#editTrBody").hide();
Expand All @@ -183,6 +205,18 @@ function showEditDiv(id){
var groupListStr = {};
//填充选中数据
$.each(obj.groupList,function(groupName,ctrlAuthorObj){

//授权组数据是否还存在profile授权中(JAppGroup 设置的值)
var existJAppGroup = PageClass.groupsMap.get(groupName);
if(!existJAppGroup){
/**
* 跳过不显示,当用户编辑时,也同逻辑。
*
* 在用户点击保存时,没显示的不会被选中,则也不会被提交,达到删除的效果。
*/
return true;
}

DataBindClass.addGroupInfo(groupName); // 数据填充
var ctrlStr = new StringBuffer();
$.each(ctrlAuthorObj,function(ctrlName,ctrlValue){
Expand Down Expand Up @@ -225,7 +259,9 @@ function showEditSaveButton(obj){
console.log(obj);
$("#showTr").hide();
$("#editGroupList").empty(); //提前做处理,提高用户体验
PageClass.ajaxGProfile("editGroupList","edit");

PageClass.ajaxGProfile();
initGroupSelect("editGroupList","edit");

$("#editTrTitle").show();
$("#editTrBody").show();
Expand Down Expand Up @@ -307,6 +343,7 @@ function loadListData(reset){
//TODO 页面与后台交互类
PageClass = {
groups : new Set(), //所有group数据
groupsMap : new Map(), //所有group数据(key value 形式)
emailList:null, //所有列表数据(含映射group)
pageEmailList : [], //当前页面的列表数据(含映射group),页面手动分页
submitParam : {
Expand Down Expand Up @@ -336,10 +373,10 @@ PageClass = {
}
});
},
ajaxGProfile : function(selectId,type) {
ajaxGProfile : function() {
AjaxHelper.call({
url : "../../rs/godeye/filter/profile/q/cache",
async : true,
async : false,
cache : false,
type : "GET",
dataType : "html",
Expand All @@ -348,7 +385,6 @@ PageClass = {
result = eval("(" + result + ")");
result = eval("(" + result["rs"] + ")");
PageClass.setGroups(result);
initGroupSelect(selectId,type);
} else {
console.log("result is empty");
}
Expand Down Expand Up @@ -422,11 +458,14 @@ PageClass = {
},
setGroups : function(profileObj) {
PageClass.groups.clear();

PageClass.groupsMap.clear();
for ( var key in profileObj) {
var index = key.indexOf("@");
if (index > 0) {
var groupName = key.substring(0, index);
PageClass.groups.add(groupName);
PageClass.groupsMap.set(groupName,"existJAppGroup");
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -344,28 +344,23 @@ private void queryCache(UAVHttpMessage data, String cacheKey) {

List<String> keys = cm.getHashKeys("store.region.uav", cacheKey);
List<String> targets = new ArrayList<String>();
if ("appgroup".equals(filterKey)) {
for (String key : keys) {
String keyCheck = key.substring(0, key.indexOf("@"));
for (String vString : fValues) {
if (vString.equals(keyCheck)) {
targets.add(key);
}
}

for (String key : keys) {

String keyCheck = "";
if ("appgroup".equals(filterKey)) {
keyCheck = key.substring(0, key.indexOf("@"));
}
else if ("appurl".equals(filterKey)) {
keyCheck = key.substring(key.indexOf("@") + 1);
}
}
else if ("appurl".equals(filterKey)) {

for (String key : keys) {
String keyCheck = key.substring(key.indexOf("@") + 1);
for (String vString : fValues) {
if (vString.equals(keyCheck)) {
targets.add(key);
}
for (String vString : fValues) {
if (vString.equals(keyCheck)) {
targets.add(key);
}

}

}

String[] tkeys = new String[targets.size()];
Expand Down

0 comments on commit 142de46

Please sign in to comment.