Commit 64e6048f by zym

Initial commit

0 parents
Showing with 1707 additions and 0 deletions

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

NODE_ENV = 'development'
VUE_APP_BASE_URL = ""
NODE_ENV = 'production'
VUE_APP_BASE_URL = "http://192.168.0.102:80"
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# dwawio-vue
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset'
]
}
The file could not be displayed because it is too large.
{
"compilerOptions": {
"target": "es5",
"module": "esnext",
"baseUrl": "./",
"moduleResolution": "node",
"paths": {
"@/*": [
"src/*"
]
},
"lib": [
"esnext",
"dom",
"dom.iterable",
"scripthost"
]
}
}
{
"name": "dwawio-vue",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve --mode development",
"build": "vue-cli-service build --mode production"
},
"dependencies": {
"@onlyoffice/document-editor-vue": "^1.3.0",
"@wangeditor/editor-for-vue": "^1.0.2",
"axios": "^1.6.2",
"core-js": "^3.8.3",
"echarts": "^5.5.0",
"element-ui": "^2.15.14",
"jquery": "^3.7.1",
"scss": "^0.2.4",
"vue": "^2.6.14",
"vue-cli": "^2.9.6",
"vue-router": "^3.5.1",
"vuex": "^3.6.2",
"webpack": "^5.89.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~5.0.0",
"@vue/cli-plugin-router": "~5.0.0",
"@vue/cli-plugin-vuex": "~5.0.0",
"@vue/cli-service": "~5.0.0",
"node-sass": "^6.0.1",
"sass-loader": "^10.0.1",
"vue-template-compiler": "^2.6.14"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}
cff-version: 1.2.0
message: "To cite draw.io in publications please use:"
type: software
license: Apache-2.0
abstract: "draw.io - JavaScript Diagramming and Whiteboard Application"
authors:
- name: "JGraph"
website: "http://www.drawio.com"
title: "draw.io"
version: 15.5.2
date-released: 2021-10-14
repository-code: "https://github.com/jgraph/drawio"
url: "https://www.drawio.com/"
\ No newline at end of file
Manifest-Version: 1.0
Class-Path:
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<threadsafe>true</threadsafe>
<sessions-enabled>false</sessions-enabled>
<runtime>java8</runtime>
<!-- Configure java.util.logging -->
<system-properties>
<property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
</system-properties>
<!-- Path patterns not supported in production -->
<static-files>
<include path="/**">
<http-header name="Referrer-Policy" value="strict-origin"/>
<http-header name="Access-Control-Allow-Origin" value="*"/>
<http-header name="X-XSS-Protection" value="1; mode=block"/>
<http-header name="X-Content-Type-Options" value="nosniff"/>
</include>
</static-files>
<!-- App engine has conflicting interfaces for javax.cache.CacheManager -->
<class-loader-config>
<priority-specifier filename="cache-api-1.1.1.jar"/>
</class-loader-config>
<instance-class>F1</instance-class>
<automatic-scaling>
<max-idle-instances>1</max-idle-instances>
</automatic-scaling>
</appengine-web-app>
Replace_with_your_own_cloud_convert_api_key
\ No newline at end of file
Replace_with_your_own_dropbox_client_id
\ No newline at end of file
Replace_with_your_own_dropbox_client_secret
\ No newline at end of file
Replace_with_your_own_github_client_id
\ No newline at end of file
Replace_with_your_own_github_client_secret
\ No newline at end of file
Replace_with_your_own_gitlab_client_id
\ No newline at end of file
Replace_with_your_own_gitlab_client_secret
\ No newline at end of file
Replace_with_your_own_google_client_id
\ No newline at end of file
Replace_with_your_own_google_client_secret
\ No newline at end of file
Replace_with_your_own_iconfinder_client_id
\ No newline at end of file
Replace_with_your_own_iconfinder_client_secret
\ No newline at end of file
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
# Set the default logging level for all loggers to WARNING
.level = CONFIG
Replace_with_your_own_microsoft_graph_client_id
\ No newline at end of file
Replace_with_your_own_microsoft_graph_client_secret
\ No newline at end of file
app_id=Replace_with_your_pusher_app_id
key=Replace_with_your_pusher_key
secret=Replace_with_your_pusher_secret
cluster=Replace_with_your_pusher_cluster
<?xml version="1.0" encoding="utf-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<servlet>
<description/>
<display-name>ProxyServlet</display-name>
<servlet-name>ProxyServlet</servlet-name>
<servlet-class>com.mxgraph.online.ProxyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ProxyServlet</servlet-name>
<url-pattern>/proxy</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>EmbedServlet</display-name>
<servlet-name>EmbedServlet</servlet-name>
<servlet-class>com.mxgraph.online.EmbedServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>EmbedServlet</servlet-name>
<url-pattern>/embed.js</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>EmbedServlet2</display-name>
<servlet-name>EmbedServlet2</servlet-name>
<servlet-class>com.mxgraph.online.EmbedServlet2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>EmbedServlet2</servlet-name>
<url-pattern>/embed2.js</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>ImgurRedirect</display-name>
<servlet-name>ImgurRedirect</servlet-name>
<servlet-class>com.mxgraph.online.ImgurRedirectServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ImgurRedirect</servlet-name>
<url-pattern>/i/*</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>GitHubAuthServlet</display-name>
<servlet-name>GitHubAuthServlet</servlet-name>
<servlet-class>com.mxgraph.online.GitHubAuthServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>GitHubAuthServlet</servlet-name>
<url-pattern>/github2</url-pattern>
</servlet-mapping>
<servlet>
<display-name>LogServlet</display-name>
<servlet-name>LogServlet</servlet-name>
<servlet-class>com.mxgraph.online.LogServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LogServlet</servlet-name>
<url-pattern>/log</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>MSGraphAuthServlet</display-name>
<servlet-name>MSGraphAuthServlet</servlet-name>
<servlet-class>com.mxgraph.online.MSGraphAuthServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MSGraphAuthServlet</servlet-name>
<url-pattern>/microsoft</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>GoogleAuthServlet</display-name>
<servlet-name>GoogleAuthServlet</servlet-name>
<servlet-class>com.mxgraph.online.GoogleAuthServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>GoogleAuthServlet</servlet-name>
<url-pattern>/google</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>ConverterServlet</display-name>
<servlet-name>ConverterServlet</servlet-name>
<servlet-class>com.mxgraph.online.ConverterServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConverterServlet</servlet-name>
<url-pattern>/convert</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>ExportProxyServlet</display-name>
<servlet-name>ExportProxyServlet</servlet-name>
<servlet-class>com.mxgraph.online.ExportProxyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ExportProxyServlet</servlet-name>
<url-pattern>/export</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ExportProxyServlet</servlet-name>
<url-pattern>/service/*</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>GitlabAuthServlet</display-name>
<servlet-name>GitlabAuthServlet</servlet-name>
<servlet-class>com.mxgraph.online.GitlabAuthServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>GitlabAuthServlet</servlet-name>
<url-pattern>/gitlab</url-pattern>
</servlet-mapping>
<servlet>
<description/>
<display-name>DropboxAuthServlet</display-name>
<servlet-name>DropboxAuthServlet</servlet-name>
<servlet-class>com.mxgraph.online.DropboxAuthServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DropboxAuthServlet</servlet-name>
<url-pattern>/dropbox</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>css</extension>
<mime-type>text/css</mime-type>
</mime-mapping>
<mime-mapping>
<extension>manifest</extension>
<mime-type>text/cache-manifest</mime-type>
</mime-mapping>
<mime-mapping>
<extension>mjs</extension>
<mime-type>text/javascript</mime-type>
</mime-mapping>
</web-app>
<!DOCTYPE html>
<html>
<head>
<title>Clear diagrams.net Cache</title>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
</head>
<body style="font-size: large;">
<script src="js/clear.js"></script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<script>
if (window.opener != null && window.opener.onDropboxCallback != null)
{
try
{
var hash = window.location.hash;
var i1 = hash.indexOf('access_token=');
var token = null;
if (i1 >= 0)
{
var i2 = hash.indexOf('&', i1 + 13);
if (i2 > i1)
{
token = hash.substring(i1 + 13, i2);
}
}
// Continues execution of main program flow
window.opener.onDropboxCallback(token, window);
}
catch (e)
{
alert('Dropbox: ' + e.toString());
window.close();
}
}
</script>
</body>
</html>
{
"eadata": [{
"id" : "busi-archi-chart",
"type" : "business-ea",
"title" : "业务架构22222222222",
"elements" : [
{
"name" : "箭头测试",
"w" : 100,
"h" : 50,
"showLable" : "长方形",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "矩形",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "长方形",
"w" : 100,
"h" : 50,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "矩形",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "长方形",
"w" : 100,
"h" : 50,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
}
]
},{
"id" : "appl-archi-chart",
"type" : "appl-ea",
"title" : "应用架构",
"elements" : [{
"name" : "原型",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "菱形",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
}]
},{
"id" : "data-archi-chart",
"type" : "data-ea",
"title" : "数据架构",
"elements" : [{
"name" : "",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
}]
},{
"id" : "tech-archi-chart",
"type" : "tech-ea",
"title" : "技术架构",
"elements" : [{
"name" : "",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
}]
},{
"type" : "secr-ea",
"title" : "安全架构",
"id" : "secr-archi-chart",
"elements" : [{
"name" : "",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
},{
"name" : "",
"w" : 50,
"h" : 100,
"showLable" : "",
"styles" : "strokeWidth=2;html=1;shape=mxgraph.eachart.annotation_2;align=left;labelPosition=right;pointerEvents=1;"
}]
}]
}
\ No newline at end of file
/* Add any special fonts css for export3.html (mainly PDF export) */
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="js/export-init.js"></script>
<!-- CSS for print output is needed for using current window -->
<style type="text/css">
.MathJax svg { shape-rendering: crispEdges; }
table.mxPageSelector { display: none; }
hr.mxPageBreak { display: none; }
</style>
<link rel="stylesheet" href="mxgraph/css/common.css" charset="UTF-8" type="text/css">
<link rel="stylesheet" href="export-fonts.css" charset="UTF-8" type="text/css">
<script src="js/app.min.js"></script>
<script src="js/export.js"></script>
</head>
<body style="margin:0px;overflow:hidden;">
</body>
</html>
const customSaveFileMenu = function(that, editorUi) {//自定义保存文件菜单按钮
that.put('customSaveFileMenu', new Menu(mxUtils.bind(that, function(menu, parent)//二次开发,添加菜单按钮
{
// console.log("自定义菜单");
const file = editorUi.getCurrentFile();
// const encodedData = Base64.encode('<?xml version="1.0" encoding="UTF-8"?>' + file.data);//base64加密给压缩一下
// const decodedData = Base64.decode(encodedData);//base64解密
// console.log(encodedData)
var composedXMLData = Graph.xmlDeclaration +'\n' +editorUi.getFileData(true, null, null, null, true, true, null, null, null, true);
var parser = new DOMParser();
var xmlDoc = parser.parseFromString(composedXMLData, "text/xml");
const mxGraphModel = xmlDoc.getElementsByTagName('diagram')[0].innerHTML;
var graph = editorUi.editor.graph;
var svgImage = graph.getSvg('#fff', 1, 0, true, null, true, null, null, null, null, true, 'light', 'diagram');//当前画布的预览图,svg格式
var svgToString = new XMLSerializer().serializeToString(svgImage);
var base64SvgToString = Base64.encode(svgToString);
window.parent.postMessage({ type: 'saveData', data: { mxGraphModel, base64SvgToString } }, '*');
// that.editorUi.editor.graph.destroy();
// that.editorUi.editor.graph.getModel().beginUpdate();
// that.editorUi.editor.graph.getModel().endUpdate();
// console.log(that.editorUi.editor.graph.destroy)
// that.addMenuItems(menu, ['customSubMenu1', 'customSubMenu2']);
// editorUi.menus.addSubmenu(['customSubMenu1', 'customSubMenu2'], menu, parent);
// menu.addSeparator(parent);
// console.log(editorUi.menus)
// const saveFileData = new File([ file.data ], '测试.xml', { type: "text/xml" });
// const formData = new FormData();
// formData.append("file", saveFileData);
})));
}
\ No newline at end of file
function tipData(tip) {//二次开发,取消鼠标移动到图形上出现的提示框
return tip;
}
\ No newline at end of file
function urlData(params, data) {//二次开发,导出URL时,导出地址为本地地址,默认代码导出的为DrawIO官网的远程地址
const url = 'http://' + window.location.host + '/' + ((params.length > 0) ? '?' + params.join('&') : '') + data;
return url;
}
\ No newline at end of file
//二次开发,自定义属性面板
//二次开发,自定义属性面板
const initAttributePanel = function(that) {
var graph = that.editorUi.editor.graph;
const cell = graph.getSelectionCell();
// const str_AES_decode = str => {
// const str2 = CryptoJS.AES.decrypt(str, 'secretkey');
// return str2.toString(CryptoJS.enc.Utf8);
// }
// var ss = that.editorUi.getSelectionState();
const objectTag = cell.value;
//元素名称--------------------------------------------------------------------------
// const labelName = graph.getLabel(graph.getSelectionCell());//获取节点名称
// const nodeName = labelName.replace(/<[^>]+>/g, '');
// var label_name_container = document.createElement('div');
// label_name_container.style.cssText = 'padding: 8px;display: flex;align-items: center;';
// const label = document.createElement('div');
// label.innerHTML = '节点名称: ';
// label_name_container.appendChild(label);
// const name = document.createElement("div");
// name.style.marginLeft = '20px';
// name.innerHTML = nodeName;
// graph.getModel().setValue(graph.getSelectionCell(), value_);//修改节点名称
// label_name_container.appendChild(name);
// that.container.appendChild(label_name_container);
const button_container = document.createElement('div');
button_container.style.cssText = 'padding: 8px;display: flex;justify-content: space-between;';
//新增属性按钮--------------------------------------------------------------------------
// const add_button = document.createElement('button');
// add_button.innerHTML = '新增属性';
// add_button.style.cssText = 'padding: 4px;text-align: center;cursor: pointer;background-color: rgb(228,228,228);color: rgb(97, 97, 97);';
// add_button.addEventListener('click', () => {
// that.addListPanel('', '');
// });
// button_container.appendChild(add_button);
//保存属性按钮--------------------------------------------------------------------------
const save_button = document.createElement('button');
save_button.innerHTML = '保存属性';
save_button.style.cssText = 'padding: 4px;text-align: center;cursor: pointer;background-color: rgb(228,228,228);color: rgb(97, 97, 97);';
let attrArray = [];
save_button.addEventListener('click', () => {
let propertyArray = [];
if(attrArray.length > 0) {
attrArray.forEach(item => {
propertyArray.push({
propertyId: Number(item.id),
propertyValue: item.value
})
})
window.parent.postMessage({ type: 'saveProperty', data: propertyArray }, '*');
}
});
button_container.appendChild(save_button);
that.container.appendChild(button_container);
console.log(cell.style.split("attr=")[1])
if(cell.style.includes('svg+xml')) {//新增图库的图形
const decode_style = window.atob(cell.style.split("svg+xml,")[1].split(';')[0]);//svg解码,为字符串
const svgDocument = new DOMParser().parseFromString(decode_style, 'text/xml');//svg字符串转标签
const svgTag = svgDocument.getElementsByTagName('svg')[0];
const svgAttr = Array.from(svgTag.attributes);
svgAttr.forEach(item => {
if(item.name.includes('attr_')) {
const attr_name = item.name.split("attr_")[1];
const value_ = item.value.split("attr_")[1].split('&')[0];
const id_ = item.value.split("attr_")[1].split('&')[1].split("=")[1];
const attr_value = Base64.decode(value_);
attrArray.push({
id: id_,
name: attr_name,
value: attr_value,
})
}
})
if(attrArray.length > 0) {
attrArray.forEach(item => {
addListPanel(that, attrArray, item.name, item.value);
})
}
}
let currentNode = graph.getModel().getValue(cell);//获取没有属性的节点,返回的是文字
if(currentNode) {
if(typeof currentNode == 'string') {//此节点没有属性
var doc = mxUtils.createXmlDocument();
var obj = doc.createElement('object');
obj.setAttribute('label', currentNode || '');
currentNode = obj;//文字节点转化为 object标签,属性label值为文字
}
var clone_currentNode = currentNode.cloneNode(false);
if(attrArray.length > 0) {
attrArray.forEach(item => {
clone_currentNode.setAttribute(item.name, item.value);
})
}
}
// graph.getModel().setValue(cell, clone_currentNode);//更新图形界面
// if(objectTag) {
// if(typeof objectTag == 'object') {//意思是此节点是有属性的
// console.log(12)
// const attributeArr = Array.from(objectTag.attributes);
// attributeArr.shift();//去掉节点名称
// attributeArr.forEach(item => {
// addListPanel(that, item.name, item.value);
// })
// }
// }
}
const addListPanel = function(that, originAttr, attrName_, attrValue_) {
const add_item_container = document.createElement('div');
add_item_container.style.cssText = 'display: flex;justify-content: space-between;padding: 4px;';
add_item_container.className = 'add_item_container';
//属性名--------------------------------------------------------------------
const item_left_container = document.createElement('div');
item_left_container.style.cssText = 'display: flex;justify-content: center;width: 30%;';
const item_left_span = document.createElement('span');
item_left_span.innerHTML = attrName_ + ': ';
// const item_left_input = document.createElement('input');
// item_left_input.type = "text";
// item_left_input.value = attrName_;
// item_left_input.style.cssText = 'width: 50px;margin-left: 5px;';
// item_left_input.className = 'attrName';
// item_left_input.setAttribute('readonly', true);
// item_left_input.oninput = function (e) {
// // console.log('属性名')
// // console.log(e)
// // console.log(attrName_)
// }
item_left_container.appendChild(item_left_span);
// item_left_container.appendChild(item_left_input);
//属性值--------------------------------------------------------------------
const item_right_container = document.createElement('div');
item_right_container.style.cssText = 'margin-right: 15px;;margin-left: 5px;display: flex;justify-content: space-between;width: 70%;';
// const item_right_span = document.createElement('span');
// item_right_span.innerHTML = '属性值: ';
const item_right_input = document.createElement('input');
item_right_input.type = "text";
item_right_input.value = attrValue_;
item_right_input.style.cssText = 'width: 100%;';
item_right_input.className = 'attrValue';
item_right_input.oninput = function (e) {
const res = originAttr.find(item => item.name == attrName_);
res.value = e.data;
}
// var removeAttr = document.createElement('a');
// removeAttr.style.margin = '0px 8px 0 8px';
// removeAttr.style.width = '9px';
// removeAttr.style.height = '9px';
// removeAttr.style.cursor = 'pointer';
// var img = mxUtils.createImage(Dialog.prototype.closeImage);
// img.style.height = '9px';
// img.style.fontSize = '9px';
// removeAttr.setAttribute('title', mxResources.get('delete'));
// removeAttr.appendChild(img);
// removeAttr.onclick = function() {
// $(that).parents(".add_item_container").remove();
// // console.log($(that).parents(".add_item_container"))
// }
// item_right_container.appendChild(item_right_span);
item_right_container.appendChild(item_right_input);
// item_right_container.appendChild(removeAttr);
add_item_container.appendChild(item_left_container);
add_item_container.appendChild(item_right_container);
that.container.appendChild(add_item_container);
}
//初始化右侧属性面板控件
const attributeNode = function(that, label3, div, ui, addClickHandler, idx) {
var label4 = label3.cloneNode(false);//二次开发,自己写的属性面板
label4.style.backgroundColor = Format.inactiveTabBackgroundColor;
mxUtils.write(label4, mxResources.get('attribute'));
div.appendChild(label4);
var attributePanel = div.cloneNode(false);
attributePanel.style.display = 'none';
that.panels.push(new AttributePanel(that, ui, attributePanel));
that.container.appendChild(attributePanel);
addClickHandler(label4, attributePanel, idx++, true);
}
\ No newline at end of file
/**
/**
* 动态获取架构设计的分层归属信息(业务架构、应用架构、数据架构、技术架构、安全架构等信息)
* 该方法可以将归属信息、元素信息带出
*/
// (function()// 旧代码--------------------------------------------------------------
// {
// Sidebar.prototype.addCustomGraph = function()
// {
// this.setCurrentSearchEntryLibrary('eachart');
// $.ajax({
// url: '/drawio/eachart.json', // 代表请求的服务器地址
// method: 'get', // 使用的请求方法
// contentType: 'application/x-www-form-urlencoded', // 请求的 enctype
// dataType: 'json', // 默认根据 response 头部的信息自动推测
// async: true, // 是否使用异步请求的方式
// }).done(data => {
// var ea = data.eadata;
// if(ea) {
// ea.forEach(ele => {
// var ii = ele.elements;
// var items = [];
// ii.forEach(element => {
// // items.push(this.createVertexTemplateEntry(element.styles, element.w, element.h, null, element.name, null, null, element.name));
// items.push(
// this.createEdgeTemplateEntry('endArrow=none;html=1;姓名=测试;', 50, 50, '', 'Line', null, 'simple undirected plain blank no')
// );
// });
// this.addPaletteFunctions(ea.id, ele.title, false, items);
// });
// }
// });
// // this.setCurrentSearchEntryLibrary();
// };
// })();
(function()
{
Sidebar.prototype.addCustomGraph = function()
{
const commonGraph_ = JSON.parse(localStorage.getItem('commonGraph'));
if(commonGraph_.show) {
const graphGroup = window.location.href.split("id=")[1].split("&")[1].split("=")[1];
const commonGraph = commonGraph_.graph.filter(item => item.arciBelongId == graphGroup);
this.sidebarTitles = true;//勾选标签
commonGraph.forEach(item => {
let fns = [];
item.eleDtos.forEach(item2 => {
if(item2.icon) {
if(item2.icon.includes('data')) {
let attr_ = [];
if(item2.dicys && item2.dicys.length > 0) {
item2.dicys.forEach(res => {
if(res.fieldName) {
attr_.push(
{
name: res.fieldName,
value: res.propertyValue,
id: res.propertyId,
controlType: res.controlType,
}
)
}
})
}
fns.push(
item2.color ? this.createVertexTemplateEntry(
item2.iconName + ';fillColor=' + item2.color + ';' + 'attr=' + JSON.stringify(attr_) + ';eleId=' + item2.eleBelongId + ';eaLevel=' + item2.eaLevel + ';',
item2.shapeWidth ? item2.shapeWidth : 150,
item2.shapeHeight ? item2.shapeHeight : 75,
null,
item2.eleName,
null,
null,
'封闭图形2'
) : this.createEdgeTemplateEntry(
item2.iconName + 'attr=' + JSON.stringify(attr_),
item2.shapeWidth ? item2.shapeWidth : 150,
item2.shapeHeight ? item2.shapeHeight : 75,
'',
item2.elementName,
null,
'非封闭图形2'
)
)
}
}
})
this.addPaletteFunctions(item.arciBelongId, item.arciBelongName, true, fns);
});
// $.ajax({
// url: '/drawio/eachart.json', // 代表请求的服务器地址
// method: 'get', // 使用的请求方法
// contentType: 'application/x-www-form-urlencoded', // 请求的 enctype
// dataType: 'json', // 默认根据 response 头部的信息自动推测
// async: true, // 是否使用异步请求的方式
// }).done(data => {
// var ea = data.eadata;
// if(ea) {
// ea.forEach(ele => {
// var ii = ele.elements;
// var items = [];
// ii.forEach(element => {
// // items.push(this.createVertexTemplateEntry(element.styles, element.w, element.h, null, element.name, null, null, element.name));
// items.push(
// this.createEdgeTemplateEntry('endArrow=none;html=1;姓名=测试;', 50, 50, '', 'Line', null, 'simple undirected plain blank no')
// );
// });
// this.addPaletteFunctions(ea.id, ele.title, false, items);
// });
// }
// });
}
};
})();
\ No newline at end of file
/**
* 动态获取架构设计的分层归属信息(业务架构、应用架构、数据架构、技术架构、安全架构等信息)
* 该方法可以将归属信息、元素信息带出
*/
// (function()// 旧代码--------------------------------------------------------------
// {
// Sidebar.prototype.addCustomGraph = function()
// {
// this.setCurrentSearchEntryLibrary('eachart');
// $.ajax({
// url: '/drawio/eachart.json', // 代表请求的服务器地址
// method: 'get', // 使用的请求方法
// contentType: 'application/x-www-form-urlencoded', // 请求的 enctype
// dataType: 'json', // 默认根据 response 头部的信息自动推测
// async: true, // 是否使用异步请求的方式
// }).done(data => {
// var ea = data.eadata;
// if(ea) {
// ea.forEach(ele => {
// var ii = ele.elements;
// var items = [];
// ii.forEach(element => {
// // items.push(this.createVertexTemplateEntry(element.styles, element.w, element.h, null, element.name, null, null, element.name));
// items.push(
// this.createEdgeTemplateEntry('endArrow=none;html=1;姓名=测试;', 50, 50, '', 'Line', null, 'simple undirected plain blank no')
// );
// });
// this.addPaletteFunctions(ea.id, ele.title, false, items);
// });
// }
// });
// // this.setCurrentSearchEntryLibrary();
// };
// })();
(function () {
Sidebar.prototype.addCustomGraph = function () {
let joinGraph_ = null;
if (urlParams.page === "metaModelListDetails") {
joinGraph_ = JSON.parse(localStorage.getItem("metaModelJoinGraph"));
} else {
joinGraph_ = JSON.parse(localStorage.getItem("joinGraph"));
}
const joinGraph = joinGraph_.graph;
this.sidebarTitles = true; //勾选标签
if (joinGraph_.state == 1) {
joinGraph.forEach((item) => {
if (item.arciBelongName == "架构元素关系") {
let fns = [];
item.eleDtos.forEach((item2) => {
let archi = null;
archi = this.createEdgeTemplateEntry(
item2.iconName + "attr=[];assetName=[" + item2.rsName + "];",
item2.shapeWidth ? item2.shapeWidth : 150,
item2.shapeHeight ? item2.shapeHeight : 75,
"",
item2.rsName,
null,
"非封闭图形2"
);
fns.push(archi);
});
this.addPaletteFunctions(
item.arciBelongId,
item.arciBelongName,
true,
fns
);
} else {
let fns = [];
item.eleDtos.forEach((item2) => {
// if(item2.assets && item2.dicys) {
let attr_ = [];
item2.dicys &&
item2.dicys.forEach((res) => {
if (res.cnName) {
attr_.push({
name: res.cnName,
value: res.propertyValue,
id: res.propertyId,
controlType: res.controlType,
});
}
});
fns.push(
this.createVertexTemplateEntry(
// 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#d2edfd;shape=mxgraph.archimate3.application;appType=rightTopCircleHasLeft;archiType=rounded',
item2.iconName + ";attr=" + JSON.stringify(attr_),
item2.shapeWidth ? item2.shapeWidth : 71,
item2.shapeHeight ? item2.shapeHeight : 41,
null,
item2.eleName,
null,
null,
"封闭图形2"
)
);
// }
});
this.addPaletteFunctions(
item.eleBelongId,
item.arciBelongName,
true,
fns
);
}
});
}
if (joinGraph_.state == 2) {
// 远程获取数据,不再在本地获取
try {
let urlParams1 = window.top.location.href.split("?")[1].split("&");
let updateParams = {};
urlParams1 = urlParams1.filter(
(i) =>
i.includes("assetConstant") ||
i.includes("viewId") ||
i.includes("page")
);
urlParams1.forEach((i) => {
let [key, value] = i.split("=");
updateParams[key] = value;
});
console.error("updateParams", updateParams);
var that = this;
$.ajax({
async: false,
type: "POST",
dataType: "json",
contentType: "application/json",
timeout: 3000, //设置超时时间为8s
url: `http://${ajaxUrl}/eadc-architecture/ma-ml/archi-asset-list`,
data: JSON.stringify({
archiAssetState: 2,
archiStage: 1,
delFlag: 0,
state: 1,
archiBelongId: "1", // 不应该写死-----------TODO:
archiType: updateParams.assetConstant,
archiViewId: updateParams.viewId,
assetName: "",
current: 1,
pageSize: 10,
}), //需要确认formData如何获取
async: false,
headers: {
tkv: "yMCwNqQ9yRQ37K3h2UVw56gwzWpzPxcs50w7nfsmyFGKuUp-LGB_M0sSgCzGqs8xMkXck0CMDupY_5T6My0bt2p4SEHsibGhMsdoNT55-2s-0bGUm_UIZliqXnCJwZJtOUavqh4OrAWgLBEV82RhEJbGuRY-pIrsGtM0jouSkhRyxpek91B0URTRFitm_A_-",
},
success: function (res) {
loading = false;
if (res.code == 200) {
const { dataEle } = res.data;
console.log("dataEle=======>", dataEle);
dataEle.forEach((item) => {
that.createEXSideBarRows({ page: updateParams.page, ...item });
});
}
},
complete: function (XHR, TextStatus) {
if (TextStatus == "timeout") {
//超时执行的程序
console.log("请求超时!");
}
},
error: function (error) {
loading = false;
console.log(error);
},
});
} catch {}
// joinGraph.forEach((item) => {
// this.createEXSideBarRows({ page: joinGraph_.page, ...item });
// });
}
};
})();
function lookCurrentDetailsMenu(that, graph, menu, evt) {//添加下钻数据按钮
if (!graph.isSelectionEmpty())
{
that.addMenuItems(menu, ['-', 'lookCurrentDetails'], null, evt);
}
}
function lookCurrentDetailsMenuAction(editorUi, graph) {//下钻数据按钮点击操作
editorUi.actions.addAction('lookCurrentDetails', function(evt)
{
// editorUi.spinner.spin(document.body, mxResources.get('loading'));
if (!graph.isSelectionEmpty())
{
console.log('下钻数据');
var cells = graph.getSelectionCells();
if(cells.length == 1) {
const mockFile = {
data: `<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="localhost" modified="2024-01-25T01:38:55.223Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0" etag="Jj3tz59PongmzpeU5rfP" version="@DRAWIO-VERSION@" type="device">
<diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
<mxGraphModel dx="1335" dy="569" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-3" value="" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="30" y="180" width="770" height="220" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-1" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;业务能力视图&lt;/font&gt;" style="text;strokeColor=none;fillColor=none;html=1;fontSize=16;fontStyle=1;verticalAlign=middle;align=center;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="350" y="190" width="100" height="20" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-3" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#007FFF;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="60" y="220" width="710" height="150" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-4" value="业务域" style="text;strokeColor=none;fillColor=none;html=1;fontSize=16;fontStyle=1;verticalAlign=middle;align=center;fontColor=#ffffff;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="350" y="220" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-5" value="生产检修" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="80" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-8" value="财力资源" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="180" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-9" value="物力资源" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="280" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-10" value="规划计划" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="375" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-11" value="XXX建设" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="470" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-12" value="XX营销" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="570" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-13" value="调度运行" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="670" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-16" value="XX交易" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="80" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-17" value="产业业务" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="180" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-18" value="金融业务" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="280" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-19" value="国际业务" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="375" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-20" value="科研业务" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="470" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-21" value="协同办公" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="570" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-22" value="综合管理" style="rounded=0;whiteSpace=wrap;html=1;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="670" y="310" width="80" height="40" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>`,
title: '下钻数据'
}
editorUi.editor.setStatus('');
editorUi.fileLoaded(null);
editorUi.spinner.stop();
const file = new LocalFile(editorUi, mockFile.data, mockFile.title, null);
editorUi.fileLoaded(file);
}
}
});
}
function propertyTransferMenu(that, graph, menu, evt) {//添加属性传递按钮
if (!graph.isSelectionEmpty())
{
that.addMenuItems(menu, ['-', 'propertyTransfer'], null, evt);
}
}
function propertyTransferMenuAction(editorUi, graph) {//属性传递按钮点击操作
editorUi.actions.addAction('propertyTransfer', function(evt)
{
if (!graph.isSelectionEmpty())
{
var cell = graph.getSelectionCell();console.log('cell', cell)
window.parent.postMessage({ type: 'propertyConnect', data: {value: cell.value}} , '*');
// graph.setCellStyles('property', '属性', [cells[0]]);//设置style里面拼接属性
// var style = graph.getCurrentCellStyle(cells[0]);
// console.log(cells);
// console.log(style);
}
});
}
\ No newline at end of file
function initSetScratchpad() {
console.log('urlParams', urlParams)
//左侧便签本初始化数据
$.ajax({
method: 'post',
url: `http://${ajaxUrl}/eadc-architecture/short-cut-model/qSCMList`,
data: {
referenceId: urlParams.referenceId,
referenceType: isMetaModel()
},
success: function (result) {
let images = []
result.data.forEach((item) => {
images.push({
xml: item.icon,
h: item.height,
w: item.width,
title: item.title ? item.title : null,
})
})
// console.log(images)
let xml = '<mxlibrary>' + JSON.stringify(images, null, 2) + '</mxlibrary>'
let request = window.indexedDB.open('database', 2)
request.onsuccess = function (event) {
let db = request.result
let trx = db.transaction('filesInfo', 'readwrite')
let trx2 = db.transaction('files', 'readwrite')
trx.objectStore('filesInfo').put({
title: '.scratchpad',
size: xml.length,
lastModified: Date.now(),
type: 'L',
})
trx2.objectStore('files').put({
title: '.scratchpad',
data: xml,
})
}
},
error: function (error) {
console.error(error)
},
})
// const images = [
// {
// aspect: "fixed",
// data: "data:image/svg+xml;base64,PHN2ZyB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWw6c3BhY2U9InByZXNlcnZlIiB2aWV3Qm94PSIwIDAgMjU2IDI1NiIgeT0iMHB4IiB4PSIwcHgiIHZlcnNpb249IjEuMSI+JiN4YTsJPG1ldGFkYXRhPiYjeGE7CQlTdmcgVmVjdG9yIEljb25zIDogaHR0cDovL3d3dy5vbmxpbmV3ZWJmb250cy5jb20vaWNvbiYjeGE7CTwvbWV0YWRhdGE+JiN4YTsJPGc+JiN4YTsJCTxnPiYjeGE7CQkJPHBhdGggZD0iTTIxNS4zLDEwMS41bDEzLjksMjQuMWwtOTcuNSw1LjNsMjIuNSwzOWw0My41LDQuN2w4LDEzLjhsLTU3LjUsMjIuM0wxMDYuMiwyNDZsLTguMS0xNGwxNy45LTQwLjRsLTIyLTM4LjFsLTUzLjMsODEuN2wtMTMuOS0yNC4xbDM3LjgtMTA4LjVsLTM0LTU4LjhjLTYuMy0xMS0zLTI0LjgsNy41LTMwLjljMTAuNS02LDI0LjItMiwzMC41LDguOWwzMy42LDU4LjFMMjE1LjMsMTAxLjV6IE0yMTMuOCwxMTcuM2wtNC40LTcuNmwtMTEzLTIxLjZMNjAuOCwyNi4zYy0zLjgtNi42LTExLjktOS4xLTE4LTUuNnMtOCwxMS44LTQuMiwxOC40bDM2LjEsNjIuNEwzNi44LDIxMC4xbDQuNCw3LjZsNTMuMy04MS43bDMxLjgsNTUuMWwtMTcuOSw0MC40bDAuMywwLjVsMzQuNS0yOWwxLjMtMC42bDQ3LjktMTguNmwtMC40LTAuNmwtNDMuNS00LjdsLTMyLjMtNTUuOUwyMTMuOCwxMTcuM3oiIGZpbGw9IiMwMDAwMDAiLz4mI3hhOwkJPC9nPiYjeGE7CTwvZz4mI3hhOzwvc3ZnPg==",
// h: 256,
// title: "svg",
// w: 256
// }
// ];
// 若为压缩的xml,则内容是diagram的内容
}
function isMetaModel() {
if(urlParams.page === 'metaModelListDetails') {
return 1
} else {
return 2
}
}
function saveScratchpad(data) {
//左侧便签本保存数据
let params = []
if (data.length > 0) {
data.forEach((item) => {
params.push({
icon: item.xml,
height: item.h,
width: item.w,
title: item.title ? item.title : null,
sort: 1,
referenceId: urlParams.referenceId,
referenceType: isMetaModel()
})
})
} else {
params = []
}
$.ajax({
method: 'post',
url: `http://${ajaxUrl}/eadc-architecture/short-cut-model/cSCModel`,
data: JSON.stringify(params),
contentType: 'application/json',
success: function (result) {
console.log(result)
},
error: function (error) {
console.error(error)
},
})
}
var loadDiagram = function (id, diagramTitle) {
var requestUrl = id == 1 ? '/drawio/extention/xml/meta-model.xml':'/drawio/extention/xml/architecture-assets.xml';
if(id == 3) {
requestUrl = '/drawio/extention/xml/meta-model-data.xml';
}
var resultData = {};
$.ajax({
type: "get",
dataType: 'text',
url: requestUrl,
// data: formData, //需要确认formData如何获取
processData: false,
async: false,
headers: {
'tkv': 'yMCwNqQ9yRQ37K3h2UVw56gwzWpzPxcs50w7nfsmyFGKuUp-LGB_M0sSgCzGqs8xMkXck0CMDupY_5T6My0bt2p4SEHsibGhMsdoNT55-2s-0bGUm_UIZliqXnCJwZJtOUavqh4OrAWgLBEV82RhEJbGuRY-pIrsGtM0jouSkhRyxpek91B0URTRFitm_A_-',
},
success: function (result) {
resultData = {
title: diagramTitle,
data: result,
}
const draft = {
type: 'draft',
created: new Date().getTime(),
modified: new Date().getTime(),
data: result,
title: diagramTitle,
fileObject: null,
aliveCheck: null
};
},
error: function (error) {
console.log(error);
}
});
// console.log(resultData);
return resultData;
}
\ No newline at end of file
// const ajaxUrl = '172.20.10.3:7003';
// const ajaxUrl = '43.143.211.42';
// const ajaxUrl = "http://172.20.10.7:19000";
const ajaxUrl = "192.168.0.102:80";
<mxfile host="localhost" modified="2023-11-16T10:01:06.979Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36" etag="KN7kc_wFUq9wIHPuiLVd" version="@DRAWIO-VERSION@" type="device">
<diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
<mxGraphModel dx="1380" dy="656" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-3" value="" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="30" y="180" width="770" height="220" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-1" value="&lt;font style=&quot;font-size: 16px;&quot;&gt;业务能力视图&lt;/font&gt;" style="text;strokeColor=none;fillColor=none;html=1;fontSize=16;fontStyle=1;verticalAlign=middle;align=center;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="350" y="190" width="100" height="20" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-3" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#007FFF;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="60" y="220" width="710" height="150" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-4" value="业务域" style="text;strokeColor=none;fillColor=none;html=1;fontSize=16;fontStyle=1;verticalAlign=middle;align=center;fontColor=#ffffff;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="350" y="220" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-5" value="生产检修" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="80" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-8" value="财力资源" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="180" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-9" value="物力资源" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="280" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-10" value="规划计划" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="375" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-11" value="电网建设" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="470" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-12" value="电力营销" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="570" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-13" value="调度运行" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="670" y="260" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-16" value="电力交易" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="80" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-17" value="产业业务" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="180" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-18" value="金融业务" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="280" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-19" value="国际业务" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="375" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-20" value="科研业务" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="470" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-21" value="协同办公" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="570" y="310" width="80" height="40" as="geometry" />
</mxCell>
<mxCell id="8R2J-Gmg41mkb3V32hNC-22" value="综合管理" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="670" y="310" width="80" height="40" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
No preview for this file type
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
This window will be closed automatically.
<script>
if (window.opener != null && window.opener.onGitHubCallback != null)
{
try
{
var search = window.location.search;
var idx1 = search.indexOf('code=');
var code = null;
if (idx1 >= 0)
{
code = search.substring(idx1 + 5);
}
// Continues execution of main program flow
window.opener.onGitHubCallback(code, window);
}
catch (e)
{
alert('GitHub: ' + e.toString());
window.close();
}
}
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
This window will be closed automatically.
<script>
if (window.opener != null && window.opener.onGitLabCallback != null)
{
try
{
var search = window.location.href;
var idx1 = search.indexOf('access_token=');
var code = null;
if (idx1 >= 0)
{
var idx2 = search.indexOf('&', idx1);
code = search.substring(idx1 + 13, idx2);
}
// Continues execution of main program flow
window.opener.onGitLabCallback(code, window);
window.close();
}
catch (e)
{
alert('GitLab error: ' + e.toString());
window.close();
}
}
</script>
</body>
</html>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="14px" height="10px" viewBox="0 0 14 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: sketchtool 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
<title>0E334220-6C14-41EC-B9A8-AD4B4ACC6069</title>
<desc>Created with sketchtool.</desc>
<defs></defs>
<g id="Artboards" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="V5-START-grid-veiw" transform="translate(-1005.000000, -468.000000)" fill="#FFFFFF">
<g id="recent-diagrams" transform="translate(428.000000, 442.000000)">
<g id="all-diagrams" transform="translate(567.000000, 18.000000)">
<path d="M21.5,13 C20.6715729,13 20,12.3284271 20,11.5 C20,10.6715729 20.6715729,10 21.5,10 C22.3284271,10 23,10.6715729 23,11.5 C23,12.3284271 22.3284271,13 21.5,13 Z M21,14 L22,14 C23.1045695,14 24,14.8954305 24,16 L24,18 L21,18 L21,14 Z M12.5,13 C11.6715729,13 11,12.3284271 11,11.5 C11,10.6715729 11.6715729,10 12.5,10 C13.3284271,10 14,10.6715729 14,11.5 C14,12.3284271 13.3284271,13 12.5,13 Z M12,14 L13,14 L13,18 L10,18 L10,16 C10,14.8954305 10.8954305,14 12,14 Z M17,12 C15.8954305,12 15,11.1045695 15,10 C15,8.8954305 15.8954305,8 17,8 C18.1045695,8 19,8.8954305 19,10 C19,11.1045695 18.1045695,12 17,12 Z M16,13 L18,13 C19.1045695,13 20,13.8954305 20,15 L20,18 L14,18 L14,15 C14,13.8954305 14.8954305,13 16,13 Z" id="Combined-Shape"></path>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="14px" height="10px" viewBox="0 0 14 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: sketchtool 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
<title>0E334220-6C14-41EC-B9A8-AD4B4ACC6069</title>
<desc>Created with sketchtool.</desc>
<defs></defs>
<g id="Artboards" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="V5-START-grid-veiw" transform="translate(-1005.000000, -468.000000)" fill="#555555">
<g id="recent-diagrams" transform="translate(428.000000, 442.000000)">
<g id="all-diagrams" transform="translate(567.000000, 18.000000)">
<path d="M21.5,13 C20.6715729,13 20,12.3284271 20,11.5 C20,10.6715729 20.6715729,10 21.5,10 C22.3284271,10 23,10.6715729 23,11.5 C23,12.3284271 22.3284271,13 21.5,13 Z M21,14 L22,14 C23.1045695,14 24,14.8954305 24,16 L24,18 L21,18 L21,14 Z M12.5,13 C11.6715729,13 11,12.3284271 11,11.5 C11,10.6715729 11.6715729,10 12.5,10 C13.3284271,10 14,10.6715729 14,11.5 C14,12.3284271 13.3284271,13 12.5,13 Z M12,14 L13,14 L13,18 L10,18 L10,16 C10,14.8954305 10.8954305,14 12,14 Z M17,12 C15.8954305,12 15,11.1045695 15,10 C15,8.8954305 15.8954305,8 17,8 C18.1045695,8 19,8.8954305 19,10 C19,11.1045695 18.1045695,12 17,12 Z M16,13 L18,13 C19.1045695,13 20,13.8954305 20,15 L20,18 L14,18 L14,15 C14,13.8954305 14.8954305,13 16,13 Z" id="Combined-Shape"></path>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1712834760096" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6391" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16"><path d="M960 416V192l-73.056 73.056a447.712 447.712 0 0 0-373.6-201.088C265.92 63.968 65.312 264.544 65.312 512S265.92 960.032 513.344 960.032a448.064 448.064 0 0 0 415.232-279.488 38.368 38.368 0 1 0-71.136-28.896 371.36 371.36 0 0 1-344.096 231.584C308.32 883.232 142.112 717.024 142.112 512S308.32 140.768 513.344 140.768c132.448 0 251.936 70.08 318.016 179.84L736 416h224z" p-id="6392"></path></svg>
\ No newline at end of file
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1713148019040" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3261" width="64" height="64" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M905.216 895.488H119.808c-11.264 0-22.016-6.144-27.648-15.872-5.632-9.728-5.632-22.016 0-31.744L484.864 167.424c5.632-9.728 16.384-15.872 27.648-15.872s22.016 6.144 27.648 15.872l392.704 679.936c5.632 9.728 5.632 22.016 0 31.744s-16.384 16.384-27.648 16.384zM175.104 831.488H849.92L512.512 247.296 175.104 831.488z" fill="#2c2c2c" p-id="3262"></path></svg>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square150x150logo src="/images/mstile-150x150.png"/>
<TileColor>#d89000</TileColor>
</tile>
</msapplication>
</browserconfig>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:version="1.0beta1 (32d4812, 2019-09-19)"
sodipodi:docname="drawlogo-text-bottom copy.svg"
xml:space="preserve"
style="enable-background:new 0 0 161.6 217.4;"
viewBox="0 0 161.6 217.4"
y="0px"
x="0px"
id="Ebene_1"
version="1.1"><metadata
id="metadata43">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs41">
</defs>
<sodipodi:namedview
inkscape:current-layer="Ebene_1"
inkscape:window-maximized="0"
inkscape:window-y="23"
inkscape:window-x="0"
inkscape:cy="132.49309"
inkscape:cx="73.775536"
inkscape:zoom="1.979899"
showgrid="false"
id="namedview39"
inkscape:window-height="1229"
inkscape:window-width="1967"
inkscape:pageshadow="2"
inkscape:pageopacity="0"
guidetolerance="10"
gridtolerance="10"
objecttolerance="10"
borderopacity="1"
inkscape:document-rotation="0"
bordercolor="#666666"
pagecolor="#ffffff" />
<style
id="style10"
type="text/css">
.st0{fill:#F08705;}
.st1{fill:#DF6C0C;}
.st2{fill:#FFFFFF;}
.st3{fill:#333333;}
</style>
<path
class="st0"
d="m 161.6,154.7 c 0,3.9 -3.2,6.9 -6.9,6.9 H 6.9 C 3,161.6 0,158.4 0,154.7 V 6.9 C 0,3 3.2,0 6.9,0 h 147.8 c 3.9,0 6.9,3.2 6.9,6.9 z"
id="path12"
inkscape:connector-curvature="0"
style="opacity:1;stop-opacity:1" />
<g
transform="matrix(0.78848791,0,0,0.77866629,34.180353,35.767528)"
id="g16"
style="opacity:1;stop-opacity:1">
<path
class="st1"
d="m 161.6,154.7 c 0,3.9 -3.2,6.9 -6.9,6.9 H 55.3 l -32.2,-32.7 20,-32.7 59.4,-73.8 58.9,60.7 z"
id="path14"
inkscape:connector-curvature="0" />
</g>
<path
class="st2"
d="M 103.85111,83.757028 H 97.468953 L 90.711376,72.49346 c 1.501684,-0.294472 2.627947,-1.619598 2.627947,-3.165578 v -8.502889 c 0,-1.803643 -1.464142,-3.239196 -3.303704,-3.239196 H 78.772991 c -1.839563,0 -3.303705,1.435553 -3.303705,3.239196 v 8.502889 c 0,1.582789 1.126263,2.871106 2.590405,3.165578 l -6.757577,11.300377 h -6.382156 c -1.839562,0 -3.303704,1.435553 -3.303704,3.239196 v 8.50289 c 0,1.803643 1.464142,3.239196 3.303704,3.239196 h 11.262628 c 1.839563,0 3.303704,-1.435553 3.303704,-3.239196 v -8.50289 c 0,-1.803643 -1.464141,-3.239196 -3.303704,-3.239196 h -1.088721 l 6.682493,-11.189949 h 5.218351 l 6.720035,11.189949 h -1.126263 c -1.839563,0 -3.303704,1.435553 -3.303704,3.239196 v 8.50289 c 0,1.803643 1.464141,3.239196 3.303704,3.239196 h 11.262629 c 1.83956,0 3.3037,-1.435553 3.3037,-3.239196 v -8.50289 c 0,-1.803643 -1.46414,-3.276005 -3.3037,-3.276005 z"
id="path18"
inkscape:connector-curvature="0"
style="opacity:1;stroke-width:0.371738;stop-opacity:1" />
<path
class="st2"
d="m 0,0 -23.738,17.487 c -2.462,1.924 -5.005,2.709 -7.002,2.477 4.853,6.568 7.486,14.827 6.874,23.611 -1.369,19.591 -18.363,34.362 -37.953,32.991 -19.59,-1.37 -34.362,-18.364 -32.993,-37.953 1.371,-19.592 18.363,-34.362 37.953,-32.992 8.786,0.612 16.596,4.372 22.424,10.093 0.05,-2.009 1.179,-4.417 3.427,-6.588 l 20.621,-21.075 c 3.521,-3.394 8.872,-3.329 11.896,0.148 C 4.534,-8.321 3.854,-3.012 0,0 m -57.505,14.898 c -14.464,-1.01 -27.011,9.899 -28.022,24.361 -1.01,14.465 9.897,27.012 24.36,28.023 14.463,1.013 27.011,-9.896 28.023,-24.36 1.01,-14.464 -9.897,-27.012 -24.361,-28.024"
id="path20"
inkscape:connector-curvature="0"
style="opacity:1;stroke-width:0.371738;stop-opacity:1" />
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xml:space="preserve"
style="enable-background:new 0 0 161.6 217.4;"
viewBox="0 0 161.6 217.4"
y="0px"
x="0px"
id="Ebene_1"
version="1.1"><metadata
id="metadata43">
</metadata>
<defs
id="defs41">
</defs>
<style
id="style10"
type="text/css">
.st0{fill:#F08705;}
.st1{fill:#DF6C0C;}
.st2{fill:#FFFFFF;}
.st3{fill:#333333;}
</style>
<path
class="st0"
d="m 161.6,154.7 c 0,3.9 -3.2,6.9 -6.9,6.9 H 6.9 C 3,161.6 0,158.4 0,154.7 V 6.9 C 0,3 3.2,0 6.9,0 h 147.8 c 3.9,0 6.9,3.2 6.9,6.9 z"
id="path12"
style="opacity:1;stop-opacity:1" />
<g
id="g16"
style="opacity:1;stop-opacity:1">
<path
class="st1"
d="m 161.6,154.7 c 0,3.9 -3.2,6.9 -6.9,6.9 H 55.3 l -32.2,-32.7 20,-32.7 59.4,-73.8 58.9,60.7 z"
id="path14" />
</g>
<path
class="st2"
d="m 132.7,90.3 h -17 l -18,-30.6 c 4,-0.8 7,-4.4 7,-8.6 V 28 c 0,-4.9 -3.9,-8.8 -8.8,-8.8 h -30 c -4.9,0 -8.8,3.9 -8.8,8.8 v 23.1 c 0,4.3 3,7.8 6.9,8.6 L 46,90.4 H 29 c -4.9,0 -8.8,3.9 -8.8,8.8 v 23.1 c 0,4.9 3.9,8.8 8.8,8.8 h 30 c 4.9,0 8.8,-3.9 8.8,-8.8 V 99.2 c 0,-4.9 -3.9,-8.8 -8.8,-8.8 H 56.1 L 73.9,60 h 13.9 l 17.9,30.4 h -3 c -4.9,0 -8.8,3.9 -8.8,8.8 v 23.1 c 0,4.9 3.9,8.8 8.8,8.8 h 30 c 4.9,0 8.8,-3.9 8.8,-8.8 V 99.2 c 0,-4.9 -3.9,-8.9 -8.8,-8.9 z"
id="path18"
style="opacity:1;stop-opacity:1" />
</svg>
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" id="Ebene_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 250 250" style="enable-background:new 0 0 250 250;" xml:space="preserve">
<style type="text/css">
.st0{fill:#a2a2a2;}
.st1{fill:#8e8e8e;}
.st2{fill:#FFFFFF;}
</style>
<path class="st0" d="M237.5,227.9c0,5.3-4.3,9.6-9.5,9.6c0,0,0,0,0,0H22.1c-5.3,0-9.6-4.3-9.6-9.5c0,0,0,0,0,0V22.1
c0-5.3,4.3-9.6,9.5-9.6c0,0,0,0,0,0h205.9c5.3,0,9.6,4.3,9.6,9.5c0,0,0,0,0,0V227.9z"/>
<path class="st1" d="M237.5,227.9c0,5.3-4.3,9.6-9.5,9.6c0,0,0,0,0,0H89.6L44.8,192l27.9-45.5l82.7-102.7l82.1,84.5V227.9z"/>
<path class="st2" d="M197.1,138.3h-23.7l-25-42.7c5.7-1.2,9.8-6.2,9.7-12V51.5c0-6.8-5.4-12.3-12.2-12.3c0,0-0.1,0-0.1,0h-41.7
c-6.8,0-12.3,5.4-12.3,12.2c0,0,0,0.1,0,0.1v32.1c0,5.8,4,10.8,9.7,12l-25,42.7H52.9c-6.8,0-12.3,5.4-12.3,12.2c0,0,0,0.1,0,0.1
v32.1c0,6.8,5.4,12.3,12.2,12.3c0,0,0.1,0,0.1,0h41.7c6.8,0,12.3-5.4,12.3-12.2c0,0,0-0.1,0-0.1v-32.1c0-6.8-5.4-12.3-12.2-12.3
c0,0-0.1,0-0.1,0h-4l24.8-42.4h19.3l24.9,42.4h-4.1c-6.8,0-12.3,5.4-12.3,12.2c0,0,0,0.1,0,0.1v32.1c0,6.8,5.4,12.3,12.2,12.3
c0,0,0.1,0,0.1,0h41.7c6.8,0,12.3-5.4,12.3-12.2c0,0,0-0.1,0-0.1v-32.1c0-6.8-5.4-12.3-12.2-12.3
C197.2,138.3,197.2,138.3,197.1,138.3z"/>
</svg>
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!