This commit is contained in:
lzp
2026-04-01 16:10:17 +08:00
7 changed files with 54 additions and 32 deletions

View File

@@ -175,6 +175,22 @@
NODE_DATATIER.COLOR_PALETTE,
]
let tier = (tritList.includes(currentComponent.value.tier) && typeList.includes(currentComponent.value.type))?currentComponent.value.tier - 1:currentComponent.value.tier
if(NODE_DATATYPE.TO_REAL_STYLE == currentComponent.value.type && false){
let imageProcessTasks = taskList
nodeManager.createResultNode({
data: {
superiorID: attrs.node.id,
superiorNodeType: attrs.node?.data?.type,
createIndexPosition: subordNodes.length,
tier: tier,
isActive: subordNodes.length == 0,
data: {
imageProcessTasks,
selectTaskId:imageProcessTasks[0].taskId,
}
}
})
}else{
taskList.forEach((item,index) => {
nodeManager.createResultNode({
data: {
@@ -191,10 +207,11 @@
})
})
}
}
//删除功能卡片
const onDeleteClick = async ()=>{
console.log(stateManager.nodes)
stateManager.getSubordinateAllNodes(attrs.node.id,{ isElMessageBox: true })
stateManager.deleteSubordinateAllNodes(attrs.node.id,{ isElMessageBox: true })
}
const setDate = () => {
for (const key in props.data) {

View File

@@ -4,10 +4,10 @@
<div class="result-image"
v-for="(item, i) in data.imageProcessTasks"
:key="item.taskId"
:class="{'active': node.id == stateManager.activeNodeID.value}"
:class="{'active': node.id == stateManager.activeNodeID.value && item.taskId == data.selectTaskId}"
@click="setSelectTaskId(item.taskId)"
>
<div class="header" v-if="item.status == 'RETURNED'" v-show="showHeader && node.id == stateManager.activeNodeID.value" @mousedown.stop>
<div class="header" v-if="item.status == 'RETURNED'" v-show="showHeader && node.id == stateManager.activeNodeID.value && item.taskId == data.selectTaskId" @mousedown.stop>
<span class="icon">
<svg-icon name="chat-compose" size="20" size-unit="px" />
</span>
@@ -114,10 +114,12 @@
watch(
() => props.data.status,
(newVal) => {
let selectNode = data.imageProcessTasks.find((item) => item.taskId === data.selectTaskId)
if(selectNode.status !== 'RETURNED'){
generateManager.addTaskId(selectNode,props.node.id)
data.imageProcessTasks.forEach((item) => {
if(item.status !== 'RETURNED'){
generateManager.addTaskId(item,props.node.id)
}
})
},
{ immediate: true }
)
@@ -127,14 +129,7 @@
label: 'Delete',
tip: 'Del',
on: () => {
if(data.imageProcessTasks.length > 1){
if(clickTaskId.value){
data.imageProcessTasks = data.imageProcessTasks.filter((item) => item.taskId !== clickTaskId.value)
clickTaskId.value = ''
}
}else{
emit('delete-node', props.node.id)
}
},
disabled: !!props.config?.disableDelete
},
@@ -159,10 +154,12 @@
tip: '',
on: () => {
data.imageProcessTasks.forEach((item) => {
if(item.taskId == data.selectTaskId){
if(!item.scale){
item.scale = { x: 1, y: 1 }
}
item.scale.x = -item.scale.x
}
})
stateManager.recordState()
stateManager.exportFlow(stateManager.saveCanvasTimeInterval)
@@ -173,10 +170,12 @@
tip: '',
on: () => {
data.imageProcessTasks.forEach((item) => {
if(item.taskId == data.selectTaskId){
if(!item.scale){
item.scale = { x: 1, y: 1 }
}
item.scale.y = -item.scale.y
}
})
stateManager.recordState()
stateManager.exportFlow(stateManager.saveCanvasTimeInterval)

View File

@@ -94,7 +94,7 @@ export class EventManager {
handleDelete(event: any, activeNodeID: string) {
event.preventDefault()
if (!activeNodeID) return console.warn('没有选中节点')
this.stateManager.getSubordinateAllNodes(activeNodeID, { isElMessageBox: true })
this.stateManager.deleteSubordinateAllNodes(activeNodeID, { isElMessageBox: true })
}
/** 处理键盘事件 */
_handleKeyDown: any

View File

@@ -34,7 +34,7 @@ export class NodeManager {
/** 删除节点 */
deleteNode(id: string) {
this.stateManager.getSubordinateAllNodes(id, { isElMessageBox: true })
this.stateManager.deleteSubordinateAllNodes(id, { isElMessageBox: true })
}
/** 添加节点 */
addNode(node: any) {
@@ -146,6 +146,7 @@ export class NodeManager {
const flowNode = this.stateManager.flowManager.getNodeById(id)
if (!node) return console.warn(`${id}找不到对应节点`)
if (node.data?.disableCopy) return console.warn(`${id}节点已禁用复制`)
copyNode.data.data.imageProcessTasks = copyNode.data.data.imageProcessTasks.filter((item) => item.taskId === copyNode.data.data.selectTaskId)
const node_ = {
...copyNode,
id: createId(),

View File

@@ -176,7 +176,7 @@ export class StateManager {
return superiorNodeUrl
}
/** 获取下级所有子级节点 */
async getSubordinateAllNodes(id: string,{ isElMessageBox } = { isElMessageBox: false }) {
async deleteSubordinateAllNodes(id: string,{ isElMessageBox } = { isElMessageBox: false }) {
const node = this.getNodeById(id)
if (!node) return console.warn(`没有找到指定id:${id}`)
if (node.data.disableDelete) return ElMessage.error(t('flowCanvas.initialNodeProhibited'))
@@ -211,6 +211,11 @@ export class StateManager {
}
if(!deletePromise) return console.log('删除操作被取消')
if(node.data.data.imageProcessTasks.length > 1){
node.data.data.imageProcessTasks = node.data.data.imageProcessTasks.filter((item) => item.taskId !== node.data.data.selectTaskId)
return
}
this.deleteNode(id)
result.forEach(item => {
this.deleteNode(item.id)

View File

@@ -166,7 +166,7 @@ export default {
delete: 'Delete',
edit: 'Edit',
generatingReport:
'We are generating your report. This may take a few minutes, but you can continue with other tasks while its being generated.',
'Were generating your report. This may take a few minutes.',
deleteSketchTip:
'Are you sure you want to delete this sketch? This action cannot be undone.',
confirm: 'Confirm',

View File

@@ -16,7 +16,7 @@
<span class="title" v-show="!isCollapse">{{ $t('Home.home') }}</span>
</div> -->
<div class="menu-item" @click="onHistory" :class="{ active: showHistory }">
<span class="icon"><svg-icon name="history" size="16" /></span>
<span class="icon"><svg-icon name="history" size="18" /></span>
<span class="title" v-show="!isCollapse">{{ $t('Home.history') }}</span>
<span class="icon jiantou" v-show="!isCollapse"
><svg-icon name="arrow-right" size="14" />