Skip to content

Commit 7b1550d

Browse files
committed
feat(ui): 新增应用与服务拓扑图功能并引入图标字体
1 parent 3d33ecd commit 7b1550d

21 files changed

Lines changed: 1658 additions & 4 deletions

File tree

ui-vue3/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,15 @@
2222
},
2323
"dependencies": {
2424
"@antv/g2": "^5.1.12",
25+
"@antv/g6": "^5.0.51",
2526
"@iconify/json": "^2.2.157",
2627
"@iconify/vue": "^4.1.1",
2728
"@types/lodash": "^4.14.202",
2829
"@types/lodash-es": "^4.17.12",
2930
"@types/nprogress": "^0.2.3",
3031
"ant-design-vue": "4.x",
3132
"dayjs": "^1.11.13",
33+
"g6-extension-vue": "^0.1.0",
3234
"gsap": "^3.12.7",
3335
"js-cookie": "^3.0.5",
3436
"js-yaml": "^4.1.0",

ui-vue3/src/Login.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ function loginHandle() {
107107
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
108108
display: flex;
109109
justify-content: center;
110+
min-width: 350px;
110111
width: 22vw;
111112
//height: 30vh;
112113

ui-vue3/src/api/mock/mockApp.ts

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,53 @@
1818
import Mock from 'mockjs'
1919
import devTool from '@/utils/DevToolUtil'
2020

21+
Mock.mock(devTool.mockUrl('/interface/graph'), 'get', () => {
22+
return {
23+
code: 'Success',
24+
message: 'success',
25+
data: {
26+
nodes: [
27+
{
28+
id: 'dubbo-springboot-demo-provider10.83.120.105:50051',
29+
label: 'dubbo-springboot-demo-provider10.83.120.105:50051',
30+
data: {
31+
appName: 'dubbo-springboot-demo-provider',
32+
ip: '10.83.120.105',
33+
name: 'dubbo-springboot-demo-provider10.83.120.105:50051',
34+
protocol: 'tri',
35+
qosPort: 0,
36+
rpcPort: 50051,
37+
tags: {
38+
'meta-v': '2.0.0'
39+
}
40+
}
41+
},
42+
{
43+
id: 'dubbo-springboot-demo-consumer10.83.120.106:50052',
44+
label: 'dubbo-springboot-demo-consumer10.83.120.106:50052',
45+
data: {
46+
appName: 'dubbo-springboot-demo-consumer',
47+
ip: '10.83.120.106',
48+
name: 'dubbo-springboot-demo-consumer10.83.120.106:50052',
49+
protocol: 'tri',
50+
qosPort: 0,
51+
rpcPort: 50052,
52+
tags: {
53+
'meta-v': '2.0.0'
54+
}
55+
}
56+
}
57+
],
58+
edges: [
59+
{
60+
source: 'dubbo-springboot-demo-consumer10.83.120.106:50052',
61+
target: 'dubbo-springboot-demo-provider10.83.120.105:50051'
62+
}
63+
]
64+
}
65+
}
66+
})
67+
2168
Mock.mock('/mock/application/metrics', 'get', () => {
2269
return {
2370
code: 200,

ui-vue3/src/api/mock/mockService.ts

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,65 @@
1818
import Mock from 'mockjs'
1919
import devTool from '@/utils/DevToolUtil'
2020

21+
Mock.mock(devTool.mockUrl('/service/graph'), 'get', () => {
22+
return {
23+
code: 'Success',
24+
message: 'success',
25+
data: {
26+
nodes: [
27+
{
28+
id: 'provider-01',
29+
label: 'provider-01',
30+
type: 'application',
31+
rule: 'provider'
32+
},
33+
{
34+
id: 'provider-02',
35+
label: 'provider-02',
36+
type: 'application',
37+
rule: 'provider'
38+
},
39+
{
40+
id: 'serviceName:version:group',
41+
label: 'serviceName:version:group',
42+
type: 'service',
43+
rule: ''
44+
},
45+
{
46+
id: 'consumer-01',
47+
label: 'consumer-01',
48+
type: 'application',
49+
rule: 'consumer'
50+
},
51+
{
52+
id: 'consumer-02',
53+
label: 'consumer-02',
54+
type: 'application',
55+
rule: 'consumer'
56+
}
57+
],
58+
edges: [
59+
{
60+
source: 'serviceName:version:group',
61+
target: 'provider-01'
62+
},
63+
{
64+
source: 'serviceName:version:group',
65+
target: 'provider-02'
66+
},
67+
{
68+
source: 'consumer-01',
69+
target: 'serviceName:version:group'
70+
},
71+
{
72+
source: 'consumer-02',
73+
target: 'serviceName:version:group'
74+
}
75+
]
76+
}
77+
}
78+
})
79+
2180
Mock.mock(devTool.mockUrl('/mock/service/search'), 'get', {
2281
code: 200,
2382
msg: 'success',

ui-vue3/src/api/service/app.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,3 +174,11 @@ export const updateAppGrayIsolation = (appName: string, graySets: Array<any>): P
174174
}
175175
})
176176
}
177+
178+
export const getInterfaceGraph = (serviceName: string): Promise<any> => {
179+
return request({
180+
url: '/interface/graph',
181+
method: 'get',
182+
params: { serviceName }
183+
})
184+
}

ui-vue3/src/api/service/service.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export const searchService = (params: any): Promise<any> => {
2727
}
2828

2929
export const getServiceDetail = (params: any): Promise<any> => {
30-
return request({
30+
return request({
3131
url: '/service/detail',
3232
method: 'get',
3333
params
@@ -136,3 +136,10 @@ export const updateParamRouteAPI = (data: {
136136
data
137137
})
138138
}
139+
140+
export const getServiceGraph = (): Promise<any> => {
141+
return request({
142+
url: '/service/graph',
143+
method: 'get'
144+
})
145+
}

0 commit comments

Comments
 (0)