From 59972ef15c319da3b1e9490ccab317d0d5998327 Mon Sep 17 00:00:00 2001 From: elizabevil Date: Wed, 22 Jul 2026 03:40:55 -0400 Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E5=A4=8D=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=8E=92=E5=BA=8F=E9=94=99=E8=AF=AF=20--bug?= =?UTF-8?q?=3D159019273=20=E3=80=90CMDB=E3=80=91=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E6=8B=96=E6=8B=BD=E6=8E=92=E5=BA=8F=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ui/src/views/model-manage/index.vue | 31 +++++++++++++++++++++---- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/src/ui/src/views/model-manage/index.vue b/src/ui/src/views/model-manage/index.vue index 07ebbb64eb..d5892e78cd 100644 --- a/src/ui/src/views/model-manage/index.vue +++ b/src/ui/src/views/model-manage/index.vue @@ -558,7 +558,12 @@ ...classification, bk_objects: classification.bk_objects .filter(model => !model.bk_ishidden) - .sort((a, b) => a.bk_ispaused - b.bk_ispaused), + .sort((a, b) => { + if (a.bk_ispaused !== b.bk_ispaused) { + return a.bk_ispaused ? 1 : -1 + } + return a.obj_sort_number - b.obj_sort_number + }), }) }) return allClassifications @@ -840,9 +845,25 @@ find(classifications => classifications?.bk_objects?. find(item => item?.id === id)) + if (!group) return + const curGroup = group?.bk_classification_id - const curIndex = newIndex + 1 - this.updateModelGroup({ id, curGroup, curIndex }) + const curModels = (group.bk_objects || []).filter(model => !model.bk_ishidden) + + if (!curModels || curModels.length === 0) return + + const sortedModels = curModels.sort((a, b) => { + if (a.bk_ispaused !== b.bk_ispaused) { + return a.bk_ispaused ? 1 : -1 + } + return a.obj_sort_number - b.obj_sort_number + }) + + const targetModel = sortedModels[newIndex] + if (!targetModel) return + + const objSortNumber = targetModel.obj_sort_number + this.updateModelGroup({ id, curGroup, objSortNumber }) }, getExportModels() { return this.currentClassifications @@ -1139,12 +1160,12 @@ this.modelDialog.groupId = groupId || '' this.modelDialog.isShow = true }, - updateModelGroup({ id, curGroup, curIndex }) { + updateModelGroup({ id, curGroup, objSortNumber }) { return this.updateObject({ id, params: { bk_classification_id: curGroup, - obj_sort_number: +curIndex + obj_sort_number: objSortNumber } }) .then(() => {