添加排序
This commit is contained in:
@@ -1,66 +1,40 @@
|
||||
<template>
|
||||
<div id="mt-edit" class="relative flex-auto w-1/1 h-1/1 dark">
|
||||
<el-container class="h-1/1">
|
||||
<el-header
|
||||
height="45px"
|
||||
class="dark:bg-myDarkBgColor cb-border p-0 select-none"
|
||||
@mousedown="mainPanelRef?.stopListenerKeyDown()"
|
||||
>
|
||||
<header-panel
|
||||
v-model:leftAside="aside_state.left_show"
|
||||
v-model:rightAside="aside_state.right_show"
|
||||
v-model:lock-state="globalStore.lock"
|
||||
:selected-items-id="globalStore.selected_items_id"
|
||||
:group-enabled="header_group_enabled"
|
||||
:un-group-enabled="header_un_group_enabled"
|
||||
:align-enabled="header_align_enabled"
|
||||
:delete-enabled="header_delete_enabled"
|
||||
<el-header height="45px" class="dark:bg-myDarkBgColor cb-border p-0 select-none"
|
||||
@mousedown="mainPanelRef?.stopListenerKeyDown()">
|
||||
<header-panel v-model:leftAside="aside_state.left_show" v-model:rightAside="aside_state.right_show"
|
||||
v-model:lock-state="globalStore.lock" :selected-items-id="globalStore.selected_items_id"
|
||||
:group-enabled="header_group_enabled" :un-group-enabled="header_un_group_enabled"
|
||||
:align-enabled="header_align_enabled" :delete-enabled="header_delete_enabled"
|
||||
:undo-enabled="cacheStore.historyIndex > 0"
|
||||
:redo-enabled="cacheStore.historyIndex < cacheStore.history.length - 1"
|
||||
:real-time-data="globalStore.real_time_data"
|
||||
:use-thumbnail="mtEidtProps.useThumbnail"
|
||||
@on-group-click="mainPanelRef?.createGroupItem"
|
||||
@on-ungroup-click="mainPanelRef?.onUngroup"
|
||||
@on-delete-click="onDeleteClick"
|
||||
@on-export-click="onExportClick"
|
||||
@on-tree-click="done_json_tree_visiable = true"
|
||||
@on-help-click="onHelpClick"
|
||||
@align-selected="onAlignSelected"
|
||||
@on-redo-click="onRedoClick"
|
||||
@on-undo-click="onUndoClick"
|
||||
@on-import-click="onImportClick"
|
||||
@on-return-click="emits('onReturnClick')"
|
||||
@on-save-click="onSaveClick"
|
||||
@on-preview-click="onPreviewClick"
|
||||
@on-thumbnail-click="onThumbnailClick"
|
||||
@on-draw-line-click="onDrawLineClick"
|
||||
@on-save-all="onSaveAll"
|
||||
></header-panel>
|
||||
:real-time-data="globalStore.real_time_data" :use-thumbnail="mtEidtProps.useThumbnail"
|
||||
@on-group-click="mainPanelRef?.createGroupItem" @on-ungroup-click="mainPanelRef?.onUngroup"
|
||||
@on-delete-click="onDeleteClick" @on-export-click="onExportClick"
|
||||
@on-tree-click="done_json_tree_visiable = true" @on-help-click="onHelpClick"
|
||||
@align-selected="onAlignSelected" @on-redo-click="onRedoClick" @on-undo-click="onUndoClick"
|
||||
@on-import-click="onImportClick" @on-return-click="emits('onReturnClick')"
|
||||
@on-save-click="onSaveClick" @on-preview-click="onPreviewClick"
|
||||
@on-thumbnail-click="onThumbnailClick" @on-draw-line-click="onDrawLineClick"
|
||||
@on-save-all="onSaveAll"></header-panel>
|
||||
</el-header>
|
||||
<el-container class="h-[calc(100%-45px-40px)]">
|
||||
<el-aside
|
||||
:width="aside_state.left_show ? '300px' : '0px'"
|
||||
<el-aside :width="aside_state.left_show ? '300px' : '0px'"
|
||||
class="dark:bg-myDarkBgColor cr-border mt-edit-aside h-1/1 select-none mt-edit-aside-left"
|
||||
@mousedown="mainPanelRef?.stopListenerKeyDown()"
|
||||
>
|
||||
@mousedown="mainPanelRef?.stopListenerKeyDown()">
|
||||
<tabs></tabs>
|
||||
|
||||
<!-- <left-aside :leftAsideConfig="leftAsideStore.config"></left-aside> -->
|
||||
</el-aside>
|
||||
<el-main class="dark:bg-myMainDarkBgColor" @mousedown="mainPanelRef?.beginListenerKeyDown()">
|
||||
<main-panel
|
||||
ref="mainPanelRef"
|
||||
:group-enabled="header_group_enabled"
|
||||
:un-group-enabled="header_un_group_enabled"
|
||||
:delete-enabled="header_delete_enabled"
|
||||
:line-append-enable="line_append_enable"
|
||||
></main-panel>
|
||||
<main-panel ref="mainPanelRef" :group-enabled="header_group_enabled"
|
||||
:un-group-enabled="header_un_group_enabled" :delete-enabled="header_delete_enabled"
|
||||
:line-append-enable="line_append_enable"></main-panel>
|
||||
</el-main>
|
||||
<el-aside
|
||||
:width="aside_state.right_show ? '300px' : '0px'"
|
||||
<el-aside :width="aside_state.right_show ? '300px' : '0px'"
|
||||
class="dark:bg-myDarkBgColor cl-border mt-edit-aside select-none"
|
||||
@mousedown="mainPanelRef?.stopListenerKeyDown()"
|
||||
>
|
||||
@mousedown="mainPanelRef?.stopListenerKeyDown()">
|
||||
<right-aside>
|
||||
<template v-if="hasDeviceBindSlot" #deviceBind="{ item }">
|
||||
<slot name="deviceBind" :item="item" />
|
||||
@@ -72,36 +46,22 @@
|
||||
<footer-panel></footer-panel>
|
||||
</el-footer>
|
||||
</el-container>
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
v-model="import_visible"
|
||||
title="数据导入"
|
||||
@close="mainPanelRef?.beginListenerKeyDown()"
|
||||
>
|
||||
<el-dialog :close-on-click-modal="false" v-model="import_visible" title="数据导入"
|
||||
@close="mainPanelRef?.beginListenerKeyDown()">
|
||||
<import-json ref="importJsonRef"></import-json>
|
||||
<template #footer>
|
||||
<el-button type="primary" @click="onImportYes">确定</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
:close-on-click-modal="false"
|
||||
v-model="export_visible"
|
||||
title="数据导出"
|
||||
@close="mainPanelRef?.beginListenerKeyDown()"
|
||||
>
|
||||
<export-json
|
||||
:done-json="objectDeepClone(globalStore.done_json)"
|
||||
:canvas-cfg="globalStore.canvasCfg"
|
||||
:grid-cfg="globalStore.gridCfg"
|
||||
></export-json>
|
||||
<el-dialog :close-on-click-modal="false" v-model="export_visible" title="数据导出"
|
||||
@close="mainPanelRef?.beginListenerKeyDown()">
|
||||
<export-json :done-json="objectDeepClone(globalStore.done_json)" :canvas-cfg="globalStore.canvasCfg"
|
||||
:grid-cfg="globalStore.gridCfg"></export-json>
|
||||
</el-dialog>
|
||||
<el-drawer v-model="done_json_tree_visiable" title="图形结构树" direction="ltr" size="30%">
|
||||
<done-tree
|
||||
:done-json="globalStore.done_json"
|
||||
:selected-items-id="globalStore.selected_items_id"
|
||||
<done-tree :done-json="globalStore.done_json" :selected-items-id="globalStore.selected_items_id"
|
||||
@update-selected-items-id="onTreeUpdateSelectedItemsId"
|
||||
@update-selected-id-hide="onDoneTreeUpdateSelectedIdHide"
|
||||
></done-tree>
|
||||
@update-selected-id-hide="onDoneTreeUpdateSelectedIdHide"></done-tree>
|
||||
</el-drawer>
|
||||
</div>
|
||||
</template>
|
||||
@@ -229,9 +189,15 @@ const onSaveClick = () => {
|
||||
}
|
||||
|
||||
const useData = useDataStore()
|
||||
const onSaveAll = () => {
|
||||
const onSaveAll = async () => {
|
||||
let data: any = await useData.dataTree.map((item, ind) => {
|
||||
item.sort = ind
|
||||
return item
|
||||
})
|
||||
|
||||
|
||||
let form = new FormData()
|
||||
let blob = new Blob([JSON.stringify(useData.dataTree)], {
|
||||
let blob = new Blob([JSON.stringify(data)], {
|
||||
type: 'application/json'
|
||||
})
|
||||
form.append('multipartFile', blob)
|
||||
@@ -261,6 +227,7 @@ defineExpose({
|
||||
.mt-edit-aside {
|
||||
transition: width 0.3s;
|
||||
}
|
||||
|
||||
.mt-edit-aside-left {
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
@@ -800,9 +800,9 @@ const searchDevicesConnect = (transmissionDeviceIds: string[]) => {
|
||||
]
|
||||
|
||||
// 查找所有开关元素
|
||||
const switchElements = savedExportJson.value.json.filter(item => targetKeywords.some(keyword =>
|
||||
item.title?.includes(keyword)
|
||||
))
|
||||
const switchElements = savedExportJson.value.json.filter(item =>
|
||||
targetKeywords.some(keyword => item.title?.includes(keyword))
|
||||
)
|
||||
// const switchElements = savedExportJson.value.json.filter(item =>
|
||||
// bindList.value.some(keyword => item.id?.includes(keyword) && item.lineId=='')
|
||||
// )
|
||||
|
||||
Reference in New Issue
Block a user