diff --git a/src/api/trials.js b/src/api/trials.js
index 7808c3f3..c0d188d7 100644
--- a/src/api/trials.js
+++ b/src/api/trials.js
@@ -3519,3 +3519,18 @@ export function getTrialSiteSurveySelectList(param) {
data: param
})
}
+export function getCanMergeLesion(param) {
+ return request({
+ url: `/ReadingImageTask/getCanMergeLesion`,
+ method: 'post',
+ data: param
+ })
+}
+
+export function mergeLesion(param) {
+ return request({
+ url: `/ReadingImageTask/mergeLesion`,
+ method: 'post',
+ data: param
+ })
+}
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/DicomCanvas.vue b/src/views/trials/trials-panel/reading/dicoms/components/DicomCanvas.vue
index 8e1a48f3..4e14aaff 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/DicomCanvas.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/DicomCanvas.vue
@@ -14,7 +14,7 @@
-
+
@@ -223,7 +223,7 @@ export default {
taskBlindName: '',
frame: null,
imageRendered: false,
- isExistsClinicalData:false
+ isExistsClinicalData: false
// preventCache: true
},
dicomInfo: {
@@ -539,7 +539,7 @@ export default {
this.mousePosition.y = currentPoints.image.y + 1
this.mousePosition.mo = stats.mo
this.mousePosition.suv = stats.suv
- if (this.isFirstChangeTask && this.pointNearTool(e)) {
+ if ((this.isFirstChangeTask || this.disabledMarks.length > 0) && this.pointNearTool(e)) {
e.stopImmediatePropagation()
e.stopPropagation()
e.preventDefault()
@@ -555,7 +555,7 @@ export default {
mouseDown(e) {
this.image = e.detail.image
var pointNearTool = this.pointNearTool(e)
- if (this.isFirstChangeTask && pointNearTool) {
+ if ((this.isFirstChangeTask || this.disabledMarks.length > 0) && pointNearTool) {
e.stopImmediatePropagation()
e.stopPropagation()
e.preventDefault()
@@ -604,6 +604,15 @@ export default {
})
return arr
},
+ getMergeMarks(measureDatas) {
+ var arr = []
+ measureDatas.map(i => {
+ if ((i.LesionType === 0) && i.SplitOrMergeType === 1) {
+ arr.push(i.OrderMarkName)
+ }
+ })
+ return arr
+ },
getRGBPixels(element, x, y, width, height) {
if (!element) {
return
@@ -1064,11 +1073,15 @@ export default {
var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === dicomSeries.visitTaskId)
this.stack.visitTaskNum = this.visitTaskList[idx].VisitTaskNum
this.isFirstChangeTask = this.visitTaskList[idx].IsFirstChangeTask
+ var criterionType = parseInt(localStorage.getItem('CriterionType'))
if (this.isFirstChangeTask) {
this.disabledMarks = this.getDisabledMarks(this.visitTaskList[idx].MeasureData)
+ } else if (criterionType === 2) {
+ this.disabledMarks = this.getMergeMarks(this.visitTaskList[idx].MeasureData)
} else {
this.disabledMarks = []
}
+
this.maxVistNum = this.visitTaskList[this.visitTaskList.length - 1].VisitTaskNum
this.minVistNum = this.visitTaskList[0].VisitTaskNum
this.measureData = this.visitTaskList[idx].MeasureData
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionForm.vue b/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionForm.vue
index 5928f3e0..8ee76602 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionForm.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionForm.vue
@@ -30,7 +30,7 @@
{lesionTypeChange(val)})"
>
@@ -63,7 +63,7 @@
{formItemChange(val, qs)})"
>
@@ -77,7 +77,7 @@
v-model="questionForm[qs.Id]"
type="textarea"
:autosize="{ minRows: 2, maxRows: 4}"
- :disabled="!isCurrentTask || readingTaskState>=2"
+ :disabled="!isCurrentTask || readingTaskState>=2 || answers.SplitOrMergeType === '1'"
@change="((val)=>{formItemChange(val, qs)})"
/>
@@ -88,7 +88,7 @@
v-model="questionForm[qs.Id]"
filterable
:placeholder="qs.QuestionMark === 8 ? $t('common:placeholder:selectorsearch') : $t('common:placeholder:select')"
- :disabled="!isCurrentTask || readingTaskState>=2 || qs.QuestionMark === 0 || qs.QuestionMark === 1 || qs.QuestionMark === 2 || qs.QuestionMark === 5 || (qs.QuestionMark === 6 && (isCurrentTaskAdd === 'False' || (isCurrentTaskAdd === 'True' && !questionForm.IsCanEditPosition) || !!answers.SplitOrMergeLesionName))|| (qs.QuestionMark === 8 && (isCurrentTaskAdd === 'False'|| !!answers.SplitOrMergeLesionName)) || (qs.QuestionMark === 10 && (isCurrentTaskAdd === 'False' || (isCurrentTaskAdd === 'True' && !questionForm.IsCanEditPosition) || !!answers.SplitOrMergeLesionName)) || (qs.QuestionMark === 7 && stateDisabled)"
+ :disabled="!isCurrentTask || readingTaskState>=2 || qs.QuestionMark === 0 || qs.QuestionMark === 1 || qs.QuestionMark === 2 || qs.QuestionMark === 5 || (qs.QuestionMark === 6 && (isCurrentTaskAdd === 'False' || (isCurrentTaskAdd === 'True' && !questionForm.IsCanEditPosition) || !!answers.SplitOrMergeLesionName))|| (qs.QuestionMark === 8 && (isCurrentTaskAdd === 'False'|| !!answers.SplitOrMergeLesionName)) || (qs.QuestionMark === 10 && (isCurrentTaskAdd === 'False' || (isCurrentTaskAdd === 'True' && !questionForm.IsCanEditPosition) || !!answers.SplitOrMergeLesionName)) || (qs.QuestionMark === 7 && stateDisabled) || answers.SplitOrMergeType === '1'"
:popper-append-to-body="lesionType === 0 ? false :true"
@change="((val)=>{formItemChange(val, qs)})"
>
@@ -166,7 +166,7 @@
-
@@ -149,10 +149,62 @@
@setNonTargetMeasurementStatus="setNonTargetMeasurementStatus"
/>
+
+
+
+
+ {{ mergeInfo.lesionName }}
+ {{ mergeInfo.lesionPart }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ $t('common:button:confirm') }}
+
+ {{ $t('common:button:cancel') }}
+
+