Toggle navigation
Toggle navigation
This project
Loading...
Sign in
monitor_v3
/
hg-monitor-web
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
0
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Email Patches
Plain Diff
Browse Files
Authored by
张凯
2 years ago
Commit
e441614f067951aa01acc13df1df73cf417fb029
1 parent
19d1b0ee
chore:停机管理屏蔽影响业务及资源
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
129 additions
and
99 deletions
hg-monitor-web-base/src/main/resources/static/src/controller/shutdownplanAdd.js
hg-monitor-web-base/src/main/resources/static/src/controller/shutdownplanIndex.js
hg-monitor-web-base/src/main/resources/static/src/views/baseconfig/shutdownplan/add.html
hg-monitor-web-base/src/main/resources/static/src/controller/shutdownplanAdd.js
View file @
e441614
...
...
@@ -69,18 +69,18 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
height
:
'300px'
,
data
:
[]
});
affectedResIdSelect
=
xmSelect
.
render
({
el
:
'#shutdown_plan_add_affected_res'
,
name
:
'affectedResIds'
,
autoRow
:
true
,
filterable
:
true
,
toolbar
:
{
show
:
true
,
list
:
[
'ALL'
,
'REVERSE'
,
'CLEAR'
]
},
height
:
'300px'
,
data
:
[]
});
// affectedResIdSelect = xmSelect.render({
// el: '#shutdown_plan_add_affected_res',
// name: 'affectedResIds',
// autoRow: true,
// filterable: true,
// toolbar: {
// show: true,
// list: ['ALL', 'REVERSE', 'CLEAR']
// },
// height: '300px',
// data: []
// });
// 影响业务下拉框
busIdSelect
=
xmSelect
.
render
({
el
:
'#shutdown_plan_add_biz'
,
...
...
@@ -108,8 +108,8 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
busIdList
=
data
.
arr
.
map
(
item
=>
item
.
value
);
renderResSelectByBusIdList
(
busIdList
,
resIdSelect
,
initResIdList
);
initResIdList
=
[];
var
busIds
=
[...
new
Set
([...
affectedBusIdList
,
...
busIdList
])];
renderResSelectByBusIdList
(
busIds
,
affectedResIdSelect
);
// var busIds = [...new Set([...affectedBusIdList, ...busIdList])];
// renderResSelectByBusIdList(busIds, affectedResIdSelect);
// 把业务负责人放入接收用户
var
userIdList
=
userSelect
.
getValue
(
'value'
);
...
...
@@ -121,33 +121,33 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
form
.
render
(
'select'
);
}
});
affectedBusIdSelect
=
xmSelect
.
render
({
el
:
'#shutdown_plan_add_affected_biz'
,
name
:
'affectedBusIds'
,
autoRow
:
true
,
filterable
:
true
,
toolbar
:
{
show
:
true
,
list
:
[
'ALL'
,
'REVERSE'
,
'CLEAR'
]
},
height
:
'300px'
,
tree
:
{
//是否显示树状结构
show
:
true
,
//是否展示三角图标
showFolderIcon
:
true
,
//是否显示虚线
showLine
:
false
,
//是否严格遵守父子模式
strict
:
true
},
data
:
bizTree
,
on
:
function
(
data
)
{
var
busIds
=
[...
new
Set
([...
data
.
arr
.
map
(
item
=>
item
.
value
),
...
busIdList
])];
renderResSelectByBusIdList
(
busIds
,
affectedResIdSelect
,
initAffectedResIdList
);
initAffectedResIdList
=
[];
}
});
// affectedBusIdSelect = xmSelect.render({
// el: '#shutdown_plan_add_affected_biz',
// name: 'affectedBusIds',
// autoRow: true,
// filterable: true,
// toolbar: {
// show: true,
// list: ['ALL', 'REVERSE', 'CLEAR']
// },
// height: '300px',
// tree: {
// //是否显示树状结构
// show: true,
// //是否展示三角图标
// showFolderIcon: true,
// //是否显示虚线
// showLine: false,
// //是否严格遵守父子模式
// strict: true
// },
// data: bizTree,
// on: function (data) {
// var busIds = [...new Set([...data.arr.map(item => item.value), ...busIdList])];
// renderResSelectByBusIdList(busIds, affectedResIdSelect, initAffectedResIdList);
// initAffectedResIdList = [];
// }
// });
}
else
{
layer
.
msg
(
'获取业务失败'
,
{
icon
:
2
});
}
...
...
@@ -156,12 +156,11 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
layer
.
msg
(
'获取业务失败'
,
{
icon
:
2
});
}
});
$
.
ajax
({
url
:
domainName
+
'/
api-user/users/getAll?access_token='
+
accessToken
,
url
:
domainName
+
'/
mj/user/page?username=&nickname=&enabled=&perPage=10000&page=1&accessToken='
+
common
.
getMjToken
()
,
async
:
false
,
success
:
function
(
response
)
{
var
userlist
=
response
.
map
(
item
=>
{
var
userlist
=
response
.
data
.
rows
.
map
(
item
=>
{
return
{
name
:
item
.
nickname
,
value
:
item
.
username
...
...
@@ -187,7 +186,7 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
form
.
render
();
if
(
cutoverId
)
{
var
url
=
common
.
domainName
+
'/api-web/manage/cutover/findById'
;
$
.
get
(
url
,
{
'cutoverId'
:
cutoverId
,
'access
_token'
:
accessToken
},
function
(
res
)
{
$
.
get
(
url
,
{
'cutoverId'
:
cutoverId
,
'access
Token'
:
common
.
getMjToken
()
},
function
(
res
)
{
if
(
res
.
object
)
{
var
bean
=
res
.
object
;
form
.
val
(
"shutdownplan-add-form"
,
bean
);
...
...
@@ -201,10 +200,10 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
})
}
else
{
$
.
ajax
({
url
:
domainName
+
'/api-user/users/current?access_token='
+
accessToken
,
url
:
domainName
+
'/mj/sys/auth/getCurrenUser?token='
+
common
.
getMjToken
()
,
success
:
function
(
response
)
{
acceptUserName
=
response
.
nickname
;
userSelect
.
setValue
([
response
.
username
]);
acceptUserName
=
response
.
data
.
user
.
nickname
;
userSelect
.
setValue
([
response
.
data
.
user
.
username
]);
}
});
if
(
resId
)
{
...
...
@@ -227,12 +226,12 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
var
bean
=
data
.
field
;
bean
.
acceptUserName
=
acceptUserName
;
var
loading
=
layer
.
load
(
2
);
$
.
ajax
({
admin
.
req
({
url
:
common
.
domainName
+
'/api-web/manage/cutover/save'
,
type
:
'post'
,
url
:
common
.
domainName
+
'/api-web/manage/cutover/save?access_token='
+
accessToken
,
data
:
JSON
.
stringify
(
bean
),
contentType
:
"application/json; charset=utf-8"
,
success
:
function
(
res
)
{
success
(
res
)
{
layer
.
close
(
loading
);
if
(
res
&&
res
.
success
)
{
layer
.
msg
(
'保存成功'
,
{
icon
:
1
});
...
...
@@ -256,11 +255,45 @@ layui.define(['table', 'form', 'laydate', 'common', 'sessions', 'xmSelect', 'vie
layer
.
msg
(
'保存失败!'
,
{
icon
:
2
});
}
},
error
:
function
(
res
)
{
error
(
res
)
{
layer
.
close
(
loading
);
layer
.
msg
(
'服务异常'
,
{
icon
:
7
});
}
})
});
// $.ajax({
// type: 'post',
// url: common.domainName + '/api-web/manage/cutover/save?access_token=' + accessToken,
// data: JSON.stringify(bean),
// contentType: "application/json; charset=utf-8",
// success: function (res) {
// layer.close(loading);
// if (res && res.success) {
// layer.msg('保存成功', {icon: 1});
//
// layer.closeAll();
// table.reload('shutdownplan_table', {
// page: {
// curr: 1
// },
// where: {
// access_token: accessToken,
// cutoverName: $("#shutdownplanSearchForm").find("input[name='cutoverName']").val(),
// cutoverMode: $("#shutdownplanSearchForm").find("select[name='cutoverMode']").val(),
// startTime: $("#shutdownplanStartTime").val(),
// endTime: $("#shutdownplanEndTime").val(),
// createStart: $("#shutdownplanCreateStart").val(),
// createEnd: $("#shutdownplanCreateEnd").val()
// }
// });
// } else {
// layer.msg('保存失败!', {icon: 2});
// }
// },
// error: function (res) {
// layer.close(loading);
// layer.msg('服务异常', {icon: 7});
// }
// })
});
/**
...
...
hg-monitor-web-base/src/main/resources/static/src/controller/shutdownplanIndex.js
View file @
e441614
...
...
@@ -83,8 +83,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
$
(
"#addshutdownplan"
).
unbind
().
on
(
"click"
,
function
()
{
if
(
$
.
inArray
(
'back:cutover:save'
,
checkList
)
==
-
1
)
{
layer
.
msg
(
'暂无权限!'
,
{
icon
:
7
,
time
:
3000
});
if
(
!
common
.
hasPermission
(
'back:cutover:save'
)){
return
;
}
openEditHtml
(
undefined
);
...
...
@@ -94,8 +93,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
* 暂停
*/
$
(
'#btn-shutdown-pause'
).
unbind
(
'click'
).
on
(
'click'
,
function
()
{
if
(
$
.
inArray
(
'back:cutover:synchronization'
,
checkList
)
==
-
1
)
{
layer
.
msg
(
'暂无权限!'
,
{
icon
:
7
,
time
:
3000
});
if
(
!
common
.
hasPermission
(
'back:cutover:synchronization'
)){
return
;
}
var
data
=
table
.
checkStatus
(
'shutdownplan_table'
).
data
;
...
...
@@ -114,8 +112,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
* 恢复
*/
$
(
'#btn-shutdown-recover'
).
unbind
(
'click'
).
on
(
'click'
,
function
()
{
if
(
$
.
inArray
(
'back:cutover:synchronization'
,
checkList
)
==
-
1
)
{
layer
.
msg
(
'暂无权限!'
,
{
icon
:
7
,
time
:
3000
});
if
(
!
common
.
hasPermission
(
'back:cutover:synchronization'
)){
return
;
}
var
data
=
table
.
checkStatus
(
'shutdownplan_table'
).
data
;
...
...
@@ -168,7 +165,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
createEnd
:
$
(
"#shutdownplanCreateEnd"
).
val
()
}
,
height
:
'full-210'
,
cellMinWidth
:
8
0
,
cellMinWidth
:
10
0
,
page
:
{
layout
:
[
'count'
,
'prev'
,
'page'
,
'next'
,
'limit'
,
'skip'
]
,
theme
:
'#1E9FFF'
...
...
@@ -179,7 +176,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
,
cols
:
[[{
type
:
'checkbox'
},
{
field
:
'cutoverName'
,
title
:
'计划名称'
,
align
:
'center'
,
width
:
23
0
,
field
:
'cutoverName'
,
title
:
'计划名称'
,
align
:
'center'
,
width
:
30
0
,
templet
:
'<div><span shutdownplan-data-edit="{{d.cutoverId}}" class="layui-table-link">{{d.cutoverName}}</span></div>'
},
{
field
:
'busNum'
,
...
...
@@ -193,20 +190,23 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
align
:
'center'
,
width
:
120
,
templet
:
'<div><span shutdownplan-data-res="{{d.cutoverId}}" data-haveNum="{{d.resNum}}" data-type="res" class="layui-table-link">{{d.resNum}}</span>'
},
{
field
:
'affectedBusNum'
,
title
:
'受影响的业务'
,
align
:
'center'
,
width
:
120
,
templet
:
'<div><span shutdownplan-data-bus="{{d.cutoverId}}" data-haveNum="{{d.affectedBusNum}}" data-type="affectedBiz" class="layui-table-link">{{d.affectedBusNum}}</span>'
},
{
field
:
'affectedResNum'
,
title
:
'受影响的资源'
,
align
:
'center'
,
width
:
120
,
templet
:
'<div><span shutdownplan-data-res="{{d.cutoverId}}" data-haveNum="{{d.affectedResNum}}" data-type="affectedRes" class="layui-table-link">{{d.affectedResNum}}</span>'
},
{
field
:
'startTime'
,
title
:
'说明'
,
align
:
'center'
,
width
:
320
,
templet
:
function
(
d
)
{
},
//根据鹏军要求,去除受影响的业务与资源字段
// {
// field: 'affectedBusNum',
// title: '受影响的业务',
// align: 'center',
// width: 120,
// templet: '<div><span shutdownplan-data-bus="{{d.cutoverId}}" data-haveNum="{{d.affectedBusNum}}" data-type="affectedBiz" class="layui-table-link">{{d.affectedBusNum}}</span>'
// }, {
// field: 'affectedResNum',
// title: '受影响的资源',
// align: 'center',
// width: 120,
// templet: '<div><span shutdownplan-data-res="{{d.cutoverId}}" data-haveNum="{{d.affectedResNum}}" data-type="affectedRes" class="layui-table-link">{{d.affectedResNum}}</span>'
// },
{
field
:
'startTime'
,
title
:
'说明'
,
align
:
'center'
,
templet
:
function
(
d
)
{
return
layui
.
util
.
toDateString
(
d
.
startTime
,
"yyyy-MM-dd HH:mm:ss"
)
+
' 至 '
+
layui
.
util
.
toDateString
(
d
.
endTime
,
"yyyy-MM-dd HH:mm:ss"
)
}
},
{
...
...
@@ -261,7 +261,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
return
html
}
},
{
title
:
'操作'
,
fixed
:
'right'
,
align
:
'center'
,
minW
idth
:
100
,
templet
:
function
(
d
)
{
title
:
'操作'
,
fixed
:
'right'
,
align
:
'center'
,
w
idth
:
100
,
templet
:
function
(
d
)
{
var
html
=
'<div><button shutdownplan-data-delete="'
+
d
.
cutoverId
+
'" class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="删除"><i class="layui-icon layui-icon-delete"></i></button>'
;
if
(
d
.
stopStatus
==
'2'
)
{
html
+=
'<button shutdownplan-data-stop="'
+
d
.
cutoverId
+
'" class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="暂停"><i class="layui-icon layui-icon-pause"></i></button>'
...
...
@@ -275,8 +275,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
done
:
function
(
res
,
curr
,
count
)
{
//点击名称 进行编辑
$
(
'[shutdownplan-data-edit]'
).
on
(
'click'
,
function
()
{
if
(
$
.
inArray
(
'back:cutover:update'
,
checkList
)
==
-
1
)
{
layer
.
msg
(
'暂无权限!'
,
{
icon
:
7
,
time
:
3000
});
if
(
!
common
.
hasPermission
(
'back:cutover:update'
)){
return
;
}
openEditHtml
(
$
(
this
).
attr
(
"shutdownplan-data-edit"
));
...
...
@@ -332,8 +331,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
});
$
(
"#syncshutdownplan"
).
unbind
().
on
(
"click"
,
function
()
{
if
(
$
.
inArray
(
'back:cutover:synchronization'
,
checkList
)
==
-
1
)
{
layer
.
msg
(
'暂无权限!'
,
{
icon
:
7
,
time
:
3000
});
if
(
!
common
.
hasPermission
(
'back:cutover:synchronization'
)){
return
;
}
var
data
=
table
.
checkStatus
(
'shutdownplan_table'
).
data
;
...
...
@@ -460,8 +458,7 @@ layui.define(['table', 'form', 'laydate', 'admin', 'layer', 'laytpl', 'common',
}
function
deleteByIds
(
ids
)
{
if
(
$
.
inArray
(
'back:cutover:delete'
,
checkList
)
==
-
1
)
{
layer
.
msg
(
'暂无权限!'
,
{
icon
:
7
,
time
:
3000
});
if
(
!
common
.
hasPermission
(
'back:cutover:delete'
)){
return
;
}
//确认提示框
...
...
hg-monitor-web-base/src/main/resources/static/src/views/baseconfig/shutdownplan/add.html
View file @
e441614
...
...
@@ -60,23 +60,23 @@
</div>
</div>
</div>
<div
class=
"layui-form-item"
>
<div
class=
"layui-inline layui-inline-xm-select"
>
<label
class=
"layui-form-label"
style=
"min-width: 120px!important;max-width: 120px!important;"
>
影响业务:
</label>
<div
class=
"layui-input-inline"
>
<div
class=
"xm-select-demo"
id=
"shutdown_plan_add_affected_biz"
></div>
</div>
</div>
<div
class=
"layui-inline layui-inline-xm-select"
>
<label
class=
"layui-form-label"
style=
"min-width: 120px!important;max-width: 120px!important;"
>
影响资源:
</label>
<div
class=
"layui-input-inline"
>
<div
class=
"xm-select-demo"
id=
"shutdown_plan_add_affected_res"
lay-tips=
"影响资源必须是停机业务或影响业务下的资源"
></div>
</div>
</div>
</div>
<!-- <div class="layui-form-item">-->
<!-- <div class="layui-inline layui-inline-xm-select">-->
<!-- <label class="layui-form-label"-->
<!-- style="min-width: 120px!important;max-width: 120px!important;">影响业务:</label>-->
<!-- <div class="layui-input-inline">-->
<!-- <div class="xm-select-demo" id="shutdown_plan_add_affected_biz"></div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="layui-inline layui-inline-xm-select">-->
<!-- <label class="layui-form-label"-->
<!-- style="min-width: 120px!important;max-width: 120px!important;">影响资源:</label>-->
<!-- <div class="layui-input-inline">-->
<!-- <div class="xm-select-demo" id="shutdown_plan_add_affected_res"-->
<!-- lay-tips="影响资源必须是停机业务或影响业务下的资源"></div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<div
class=
"layui-form-item"
>
<div
class=
"layui-inline layui-inline-xm-select"
>
<label
class=
"layui-form-label"
...
...
Please
register
or
login
to post a comment