Commit fa585326 by liuyong

修改菜单

1 parent 243cc637
...@@ -729,7 +729,7 @@ App.main = function(callback, createUi) ...@@ -729,7 +729,7 @@ App.main = function(callback, createUi)
{ {
var content = mxUtils.getTextContent(scripts[0]); var content = mxUtils.getTextContent(scripts[0]);
if (CryptoJS.MD5(content).toString() != 'dda613656c97435b378def799740801e')//二次开发----修改校验值,不然会有弹框 if (CryptoJS.MD5(content).toString() != 'b6679dd946d10c3b1e3a0cb4fde17c71')//二次开发----修改校验值,不然会有弹框
{ {
console.warn('Change bootstrap script MD5 in the previous line:', CryptoJS.MD5(content).toString()); console.warn('Change bootstrap script MD5 in the previous line:', CryptoJS.MD5(content).toString());
console.warn(CryptoJS.MD5(content).toString()); console.warn(CryptoJS.MD5(content).toString());
...@@ -3766,15 +3766,23 @@ App.prototype.showSplash = function(force) ...@@ -3766,15 +3766,23 @@ App.prototype.showSplash = function(force)
}else if (urlParams['id']) {//二次开发,初始化画面内容 }else if (urlParams['id']) {//二次开发,初始化画面内容
console.log(urlParams); console.log(urlParams);
$.ajax({ $.ajax({
method: "get", method: "post",
url: "http://192.168.148.128:7003/api/ynMol/getByMetaModelId", url: 'http://192.168.148.128:7003/ynMol/getByMetaModelId',
data: { metaModelId: urlParams['id'] }, data: {
metaModelId: urlParams['id']
},
// dataType: "xml",
// contentType: "application/xml",
// crossDomain: true,
success: result => { success: result => {
console.log(result) // console.log(result)
// const file = new LocalFile(this, result.data.content, '测试文件', this.mode); const xmlData = result.data.metaModelData;
// this.loadFile(`-1`, true, file); const xmlTitle = result.data.verName;
const file = new LocalFile(this, xmlData, xmlTitle, this.mode);
this.loadFile(`-1`, true, file);
}, },
error: function( error ) { error: error => {
} }
}); });
......
...@@ -4701,8 +4701,10 @@ ...@@ -4701,8 +4701,10 @@
// const decodedData = Base64.decode(encodedData);//base64解密 // const decodedData = Base64.decode(encodedData);//base64解密
// console.log(encodedData) // console.log(encodedData)
var composedXMLData = Graph.xmlDeclaration +'\n' +editorUi.getFileData(true, null, null, null, true, true, null, null, null, false); 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 graph = editorUi.editor.graph;
var svgImage = graph.getSvg('#fff', 1, 0, true, null, true, null, null, null, null, true, 'light', 'diagram');//当前画布的预览图,svg格式 var svgImage = graph.getSvg('#fff', 1, 0, true, null, true, null, null, null, null, true, 'light', 'diagram');//当前画布的预览图,svg格式
...@@ -4713,26 +4715,29 @@ ...@@ -4713,26 +4715,29 @@
// menu.addSeparator(parent); // menu.addSeparator(parent);
// console.log(editorUi.menus) // console.log(editorUi.menus)
const saveFileData = new File([ file.data ], '测试.xml', { type: "text/xml" }); // const saveFileData = new File([ file.data ], '测试.xml', { type: "text/xml" });
const formData = new FormData(); // const formData = new FormData();
formData.append("file", saveFileData); // formData.append("file", saveFileData);
swal({ title: "文件保存", text: file.title, icon: "success", buttons: ["取消", "确定"] }).then(res => { swal({ title: "文件保存", text: file.title, icon: "success", buttons: ["取消", "确定"] }).then(res => {
if(res) { if(res) {
$.ajax({ $.ajax({
method: "post", method: "post",
url: "http://192.168.161.129:7001/architecture/vi/file/upload", url: "http://192.168.148.128:7003/ynMol/upMxGraph",
data: formData, data: {
processData: false, metaModelId: urlParams['id'],
contentType: false, metaModelData: mxGraphModel
headers: {
'tkv': 'yMCwNqQ9yRQ37K3h2UVw56gwzWpzPxcs50w7nfsmyFGKuUp-LGB_M0sSgCzGqs8xMkXck0CMDupY_5T6My0bt2p4SEHsibGhMsdoNT55-2s-0bGUm_UIZliqXnCJwZJtOUavqh4OrAWgLBEV82RhEJbGuRY-pIrsGtM0jouSkhRyxpek91B0URTRFitm_A_-',
}, },
success: function( result ) { success: function( result ) {
swal ( "文件保存" , "保存成功!" ); // console.log(result)
if(result.code == 200) {
swal( "文件保存" , "保存成功!" );
}else {
swal( "文件保存" , result.msg );
}
}, },
error: function( error ) { error: function( error ) {
swal ( "文件保存" , "保存失败!" ); swal( "文件保存" , "保存失败!" );
} }
}); });
}else { }else {
......
...@@ -53,4 +53,16 @@ export function getJGYSGLUpdate(params) { ...@@ -53,4 +53,16 @@ export function getJGYSGLUpdate(params) {
// 删除元素 // 删除元素
export function getJGYSGLDel(params) { export function getJGYSGLDel(params) {
return post('/eleRel/deleteEleRel', params); return post('/eleRel/deleteEleRel', params);
}
// 查询画布跳转的表格数据
export function get_drawio_transform_table(params) {
return post('/mxFile/fdBmd', params);
}
// 查询元模型管理页面
export function get_yuan_mo_xing_list(params) {
return post('/ynMol/', params);
}
// 元模型管理页面的删除
export function delete_yuan_mo_xing_list(params) {
return post('/ynMol/deleteYnMol', params);
} }
\ No newline at end of file
<template> <template>
<div class="Details"> <div class="Details">
<el-tabs type="border-card"> <el-select class="select_version_control" v-model="select_version" placeholder="请选择">
<el-option label="版本1" value="版本1"></el-option>
</el-select>
<el-tabs type="border-card" @tab-click="tabs_click_func">
<el-tab-pane> <el-tab-pane>
<span slot="label"> <span slot="label">
<i class="el-icon-picture"></i> <i class="el-icon-picture"></i>
</span> </span>
<YuanMoXingGuanLiCanvas></YuanMoXingGuanLiCanvas> <YuanMoXingGuanLiCanvas ref="canvasComponent"></YuanMoXingGuanLiCanvas>
</el-tab-pane> </el-tab-pane>
<el-tab-pane> <el-tab-pane>
<span slot="label"> <span slot="label">
<i class="el-icon-s-grid"></i> <i class="el-icon-s-grid"></i>
</span> </span>
<YuanMoXingGuanLiTable></YuanMoXingGuanLiTable> <YuanMoXingGuanLiTable ref="tableComponent"></YuanMoXingGuanLiTable>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
...@@ -29,14 +32,21 @@ export default { ...@@ -29,14 +32,21 @@ export default {
}, },
data() { data() {
return { return {
select_version: null
}; };
}, },
mounted(){ mounted(){
}, },
methods: { methods: {
tabs_click_func(data) {
if(data.index == '0') {
console.log('画布页面')
}else{
console.log('表格页面')
this.$refs.tableComponent.get_table();
}
}
} }
} }
</script> </script>
...@@ -44,6 +54,13 @@ export default { ...@@ -44,6 +54,13 @@ export default {
.Details{ .Details{
width: 100%; width: 100%;
height: 100%; height: 100%;
position: relative;
}
.select_version_control{
position: absolute;
top: 0;
right: 140px;
z-index: 9;
} }
/deep/ .el-tabs__nav{ /deep/ .el-tabs__nav{
float: right; float: right;
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<el-dropdown-item command="基于模版绘图">基于模版绘图</el-dropdown-item> <el-dropdown-item command="基于模版绘图">基于模版绘图</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
<el-input v-model="query_item1" placeholder="请输入内容" class="search_item" prefix-icon="el-icon-search"></el-input> <el-input v-model="query_item1" @change="search_list" placeholder="请输入内容" class="search_item" prefix-icon="el-icon-search"></el-input>
<div class="query_btn"> <div class="query_btn">
<p>版本分析</p> <p>版本分析</p>
</div> </div>
...@@ -26,14 +26,14 @@ ...@@ -26,14 +26,14 @@
<el-divider></el-divider> <el-divider></el-divider>
</div> </div>
<div class="card_container"> <div class="card_container">
<el-card class="card_item" v-for="o in 7" :key="o"> <el-card class="card_item" v-for="item in yi_fa_bu" :key="item.metaModelId">
<img class="card_image" @click="to_current_details" src="@/assets/元模型管理.svg" alt="" /> <img class="card_image" @click="to_current_details(item)" src="@/assets/元模型管理.svg" alt="" />
<div class="card_info"> <div class="card_info">
<div class="card_title"> <div class="card_title">
<i class="el-icon-location"></i> <i class="el-icon-location"></i>
元模型 版本XX {{ item.verName }}&nbsp;&nbsp;&nbsp;{{ item.version }}
</div> </div>
<div class="card_icon"> <div class="card_icon" @click.stop="deleteItem(item)">
<i class="el-icon-delete"></i> <i class="el-icon-delete"></i>
</div> </div>
</div> </div>
...@@ -47,14 +47,14 @@ ...@@ -47,14 +47,14 @@
<el-divider></el-divider> <el-divider></el-divider>
</div> </div>
<div class="card_container"> <div class="card_container">
<el-card class="card_item" v-for="o in 7" :key="o"> <el-card class="card_item" v-for="item in zan_cun" :key="item.metaModelId">
<img class="card_image" @click="to_current_details" src="@/assets/元模型管理.svg" alt="" /> <img class="card_image" @click="to_current_details(item)" src="@/assets/元模型管理.svg" alt="" />
<div class="card_info"> <div class="card_info">
<div class="card_title"> <div class="card_title">
<i class="el-icon-location"></i> <i class="el-icon-location"></i>
元模型 版本XX {{ item.verName }}&nbsp;&nbsp;&nbsp;{{ item.version }}
</div> </div>
<div class="card_icon"> <div class="card_icon" @click.stop="deleteItem(item)">
<i class="el-icon-delete"></i> <i class="el-icon-delete"></i>
</div> </div>
</div> </div>
...@@ -79,14 +79,18 @@ ...@@ -79,14 +79,18 @@
<el-button @click="add_dialog = false">取消</el-button> <el-button @click="add_dialog = false">取消</el-button>
</span> </span>
</el-dialog> </el-dialog>
<img :src="imgS" alt="">
</div> </div>
</template> </template>
<script> <script>
import { import {
add_yuan_mo_xing, add_yuan_mo_xing,
get_yuan_mo_xing_list,
delete_yuan_mo_xing_list
} from '@/api/index.js'; } from '@/api/index.js';
import { MessageBox, Message } from 'element-ui'; import { MessageBox, Message } from 'element-ui';
import $ from 'jquery';
export default { export default {
name: 'metaModelList', name: 'metaModelList',
...@@ -104,13 +108,71 @@ export default { ...@@ -104,13 +108,71 @@ export default {
name: [ name: [
{ required: true, message: '请输入版本名称', trigger: 'blur' }, { required: true, message: '请输入版本名称', trigger: 'blur' },
], ],
} },
yi_fa_bu: [],
zan_cun: [],
imgS: ''
}; };
}, },
mounted(){ mounted(){
this.get_list();
}, },
methods: { methods: {
search_list() {//搜索
const params = {
verName: this.query_item1
}
get_yuan_mo_xing_list(params).then(res => {
if(res.code == 200) {
this.yi_fa_bu = res.data.filter(item => item.state == 1);
this.zan_cun = res.data.filter(item => item.state == 2);
}else {
}
})
},
deleteItem(item) {//删除
const params = {
metaModelId: item.metaModelId,
state: item.state
}
delete_yuan_mo_xing_list(params).then(res => {
if(res.code == 200) {
this.get_list();
Message({
type: 'success',
message: '删除成功!'
});
}else {
Message({
type: 'error',
message: '删除失败!'
});
}
})
},
get_list() {//查询列表
get_yuan_mo_xing_list({}).then(res => {
if(res.code == 200) {
this.yi_fa_bu = res.data.filter(item => item.state == 1);
this.zan_cun = res.data.filter(item => item.state == 2);
const res0 = res.data[0].metaModelData;
const blob = new Blob([res0], { type: 'application/xml' });
const imageUrl = (window.URL || window.webkitURL).createObjectURL(blob);
console.log(imageUrl)
this.imgS = imageUrl;
// Message({
// type: 'success',
// message: '版本发布成功!'
// });
}else {
// Message({
// type: 'error',
// message: '版本发布失败!'
// });
}
})
},
ok() {//弹框点击确定 ok() {//弹框点击确定
this.$refs.ruleForm.validate(valid => { this.$refs.ruleForm.validate(valid => {
if(valid) { if(valid) {
...@@ -139,8 +201,8 @@ export default { ...@@ -139,8 +201,8 @@ export default {
} }
}); });
}, },
to_current_details() {//跳转到详情 to_current_details(item) {//跳转到详情
this.$router.push( '/main/metaModelListDetails/1', () => {}, () => {} ); this.$router.push( `/main/metaModelListDetails/id=${item.metaModelId}`, () => {}, () => {} );
}, },
handleCommand(command) {//新建按钮点击 handleCommand(command) {//新建按钮点击
if(command == '自由绘图') { if(command == '自由绘图') {
...@@ -187,7 +249,7 @@ export default { ...@@ -187,7 +249,7 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
margin: 30px 40px 0 40px; margin: 30px 0 0 0;
} }
.card_image{ .card_image{
width: 165px; width: 165px;
......
<template> <template>
<div class="table"> <div class="table">
<div class="table_container"> <div class="table_container">
<el-table v-loading="loading" :data="tableData" stripe border> <el-table v-loading="loading" :data="tableData" stripe border height="500">
<el-table-column type="selection" width="55"></el-table-column> <!-- <el-table-column type="selection" width="55"></el-table-column> -->
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column> <el-table-column type="index" label="序号" width="80" align="center"></el-table-column>
<el-table-column prop="let1" label="元素名称" align="center"></el-table-column> <el-table-column prop="source" label="元素名称" align="center"></el-table-column>
<el-table-column prop="let2" label="元素id" align="center"></el-table-column> <el-table-column prop="sourceId" label="元素id" align="center"></el-table-column>
<el-table-column prop="let3" label="关联元素名称" align="center"></el-table-column> <el-table-column prop="linkName" label="关联元素名称" align="center"></el-table-column>
<el-table-column prop="let4" label="关联元素id" align="center"></el-table-column> <el-table-column prop="targetId" label="关联元素id" align="center"></el-table-column>
<el-table-column prop="let4" label="关联关系名称" align="center"></el-table-column> <el-table-column prop="target" label="关联关系名称" align="center"></el-table-column>
<el-table-column prop="let4" label="关联关系描述" align="center"></el-table-column> <el-table-column prop="linkNameDesc" label="关联关系描述" align="center"></el-table-column>
<el-table-column prop="let4" label="方向" align="center"></el-table-column> <el-table-column prop="direction" label="方向" align="center"></el-table-column>
<el-table-column label="操作" align="center"> <!-- <el-table-column label="操作" align="center">
<template> <template>
<div style="display: flex;align-items: center;justify-content: center;"> <div style="display: flex;align-items: center;justify-content: center;">
<div class="add_btn" @click="add_dialog = true" style="border: 0;margin-right: 8px;"> <div class="add_btn" @click="add_dialog = true" style="border: 0;margin-right: 8px;">
<!-- <img class="btn_icon" src="@/assets/编辑_icon_default.png" alt="" /> -->
<p>编辑</p> <p>编辑</p>
</div> </div>
<div class="reset_btn" style="border: 0;margin-right: 8px;"> <div class="reset_btn" style="border: 0;margin-right: 8px;">
<!-- <img class="btn_icon" src="@/assets/停用_icon_default.png" alt="" /> -->
<p>停用</p> <p>停用</p>
</div> </div>
<div class="add_btn" style="border: 0;margin-right: 8px;"> <div class="add_btn" style="border: 0;margin-right: 8px;">
<!-- <img class="btn_icon" src="@/assets/发布_icon_default.png" alt="" /> -->
<p>发布</p> <p>发布</p>
</div> </div>
<div class="reset_btn" style="border: 0;"> <div class="reset_btn" style="border: 0;">
<!-- <img class="btn_icon" src="@/assets/删除_icon_default.png" alt="" /> -->
<p>删除</p> <p>删除</p>
</div> </div>
</div> </div>
</template> </template>
</el-table-column> </el-table-column> -->
</el-table> </el-table>
</div> </div>
...@@ -75,7 +75,10 @@ ...@@ -75,7 +75,10 @@
</template> </template>
<script> <script>
import {
get_drawio_transform_table,
} from '@/api/index.js';
import { MessageBox, Message } from 'element-ui';
export default { export default {
name: 'Table', name: 'Table',
components: { components: {
...@@ -89,9 +92,38 @@ export default { ...@@ -89,9 +92,38 @@ export default {
let2: '', let2: '',
let3: '', let3: '',
let4: '', let4: '',
loading: false loading: false,
routerId: null
}; };
}, },
mounted(){
this.routerId = window.location.href.split("=")[1];
// this.get_table();
},
methods: {
get_table() {
this.loading = true;
const params = {
metaModelId: this.routerId
}
get_drawio_transform_table(params).then(res => {
// console.log(res)
if(res.code == 200) {
this.loading = false;
this.tableData = res.data;
// Message({
// type: 'success',
// message: '获取表格数据成功!'
// });
}else {
// Message({
// type: 'error',
// message: '获取表格数据失败!'
// });
}
})
}
}
} }
</script> </script>
<style scoped> <style scoped>
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!