Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing Details

uat_us
caiyiling 2026-03-30 15:45:52 +08:00
commit c63811d55c
2 changed files with 41 additions and 31 deletions

View File

@ -7,7 +7,7 @@ import {
extractSliceThicknessFromDataset, extractSliceThicknessFromDataset,
} from "@/utils/extractPositioningFromDataset"; } from "@/utils/extractPositioningFromDataset";
import getNumberValues from "@/utils/getNumberValues"; import getNumberValues from "@/utils/getNumberValues";
import isNMReconstructable from "@/utils/isNMReconstructable";
function getSpacingBetweenSlices(dataSet) { function getSpacingBetweenSlices(dataSet) {
if (dataSet?.elements?.x00180088) { if (dataSet?.elements?.x00180088) {
return dataSet.floatString("x00180088"); return dataSet.floatString("x00180088");

View File

@ -351,7 +351,8 @@ export default {
statsKey: [], statsKey: [],
drawing: false, // drawing: false, //
isDel: false, isDel: false,
digitPlaces: 2 digitPlaces: 2,
isloaded: false
} }
}, },
mounted() { mounted() {
@ -367,6 +368,8 @@ export default {
this.series = series this.series = series
}) })
DicomEvent.$on('isloaded', (data) => { DicomEvent.$on('isloaded', (data) => {
if (this.isloaded) return false
this.isloaded = true
let { segment } = data let { segment } = data
this.delAllSegment() this.delAllSegment()
this.getSegmentationList(segment) this.getSegmentationList(segment)
@ -1429,43 +1432,49 @@ export default {
let res = await getSegmentationList(data); let res = await getSegmentationList(data);
this.loading = false; this.loading = false;
if (res.IsSuccess) { if (res.IsSuccess) {
this.segmentList = [] // this.segmentList = []
let list = res.Result.CurrentPageData; let list = res.Result.CurrentPageData;
for (let i = 0; i < list.length; i++) { for (let i = 0; i < list.length; i++) {
let item = list[i] let item = list[i]
let obj = { let obj = this.segmentList.find(i => i.segmentationId === item.Id)
segmentationId: item.Id, if (!obj) {
name: item.SegmentationName, obj = {
view: true, segmentationId: item.Id,
segUrl: item.SEGUrl, name: item.SegmentationName,
segments: [] view: true,
} segUrl: item.SEGUrl,
this.segmentList.push(obj) segments: []
if (item.SEGUrl) { }
await this.readSegmentation(obj) this.segmentList.push(obj)
} else { if (item.SEGUrl) {
await this.createSegmentation(obj.segmentationId) await this.readSegmentation(obj)
this.createSegmentationRepresentation(obj.segmentationId) } else {
await this.createSegmentation(obj.segmentationId)
this.createSegmentationRepresentation(obj.segmentationId)
}
} }
let segments = await this.getSegmentList(item.Id) let segments = await this.getSegmentList(item.Id)
segments.forEach((s, index) => { segments.forEach((s, index) => {
let SegmentJson = s.SegmentJson ? JSON.parse(s.SegmentJson) : {}; let SegmentJson = s.SegmentJson ? JSON.parse(s.SegmentJson) : {};
let o = { let o = obj.segments.find(i => i.id === s.Id)
segmentIndex: s.SegmentMumber, if (!o) {
segmentationId: s.SegmentationId, o = {
SegmentLabel: s.SegmentName, segmentIndex: s.SegmentMumber,
color: s.ColorRgb, segmentationId: s.SegmentationId,
stats: SegmentJson.stats, SegmentLabel: s.SegmentName,
bidirectional: SegmentJson.bidirectional, color: s.ColorRgb,
bidirectionalView: true, stats: SegmentJson.stats,
view: true, bidirectional: SegmentJson.bidirectional,
lock: item.locked, bidirectionalView: true,
id: s.Id view: true,
lock: item.locked,
id: s.Id
}
obj.segments.push(o)
this.selectSegment(o)
this.changeColor(s.ColorRgb, o)
this.lockSegment(o, true)
} }
obj.segments.push(o)
this.selectSegment(o)
this.changeColor(s.ColorRgb, o)
this.lockSegment(o, true)
}) })
this.$nextTick(() => { this.$nextTick(() => {
if (SEGMENT) { if (SEGMENT) {
@ -1475,6 +1484,7 @@ export default {
this.getBidirectional(obj.segments) this.getBidirectional(obj.segments)
}) })
} }
this.isloaded = false
} }
} catch (err) { } catch (err) {
this.loading = false this.loading = false