@@ -317,7 +317,7 @@ import const_ from '@/const/sign-code'
import { getToken } from '@/utils/auth'
import SignForm from '@/views/trials/components/newSignForm'
import DicomEvent from '@/views/trials/trials-panel/reading/dicoms/components/DicomEvent'
-import store from '@/store'
+// import store from '@/store'
import { changeURLStatic } from '@/utils/history.js'
import Viewer from 'v-viewer'
export default {
@@ -424,48 +424,58 @@ export default {
}
},
methods: {
- getAdInfo() {
+ async getAdInfo() {
this.loading = true
- getJudgeReadingInfo({ visitTaskId: this.visitTaskId }).then(res => {
- var judgeQS = []
- if (res.Result.VisitInfoList.length > 0) {
- res.Result.VisitInfoList[0].VisitTaskInfoList.map((v, index) => {
- var qsObj = { armEnum: v.ArmEnum, judgeQuestionList: [], index: index }
- v.JudgeQuestionList.map(q => {
- if (q.QuestionType === 1) {
- qsObj.judgeQuestionList.push(q.QuestionName)
- } else if (q.QuestionType === 3 && this.criterionType === 10) {
- qsObj.judgeQuestionList.push(this.$t('trials:globalReview:table:visitRemark'))
- } else {
- qsObj.judgeQuestionList.push(this.$fd('JudgeReadingQuestionType', q.QuestionType))
- }
+ try {
+ const res = await getJudgeReadingInfo({ visitTaskId: this.visitTaskId })
+ if (res.IsSuccess) {
+ var judgeQS = []
+ if (res.Result.VisitInfoList.length > 0) {
+ res.Result.VisitInfoList[0].VisitTaskInfoList.map((v, index) => {
+ var qsObj = { armEnum: v.ArmEnum, judgeQuestionList: [], index: index }
+ v.JudgeQuestionList.map(q => {
+ if (q.QuestionType === 1) {
+ qsObj.judgeQuestionList.push(q.QuestionName)
+ } else if (q.QuestionType === 3 && this.criterionType === 10) {
+ qsObj.judgeQuestionList.push(this.$t('trials:globalReview:table:visitRemark'))
+ } else {
+ qsObj.judgeQuestionList.push(this.$fd('JudgeReadingQuestionType', q.QuestionType))
+ }
+ })
+ judgeQS.push(qsObj)
})
- judgeQS.push(qsObj)
- })
- }
- this.judgeQuestion = judgeQS
- this.isFixed = this.judgeQuestion.length > 0 && this.judgeQuestion[0].judgeQuestionList.length > 4
- this.adInfo = res.Result
- this.adForm.judgeResultTaskId = res.Result.JudgeResultTaskId
+ }
+ this.judgeQuestion = judgeQS
+ this.isFixed = this.judgeQuestion.length > 0 && this.judgeQuestion[0].judgeQuestionList.length > 4
+ this.adInfo = res.Result
+ this.adForm.judgeResultTaskId = res.Result.JudgeResultTaskId
- this.adForm.judgeResultRemark = res.Result.JudgeResultRemark
- this.fileList = []
- if (res.Result.JudgeResultImagePathList) {
- res.Result.JudgeResultImagePathList.map(url => {
- if (url) { this.fileList.push({ name: '', url: url }) }
- })
- this.adForm.judgeResultImagePathList = res.Result.JudgeResultImagePathList
+ this.adForm.judgeResultRemark = res.Result.JudgeResultRemark
+ this.fileList = []
+ if (res.Result.JudgeResultImagePathList) {
+ res.Result.JudgeResultImagePathList.map(url => {
+ if (url) { this.fileList.push({ name: '', url: url }) }
+ })
+ this.adForm.judgeResultImagePathList = res.Result.JudgeResultImagePathList
+ }
+ this.visitTaskArmList = res.Result.VisitTaskArmList
}
- this.visitTaskArmList = res.Result.VisitTaskArmList
this.loading = false
- }).catch(() => { this.loading = false })
+ } catch (e) {
+ this.loading = false
+ }
},
- getPriorAdList() {
+ async getPriorAdList() {
this.priorLoading = true
- getReadingPastResultList({ visitTaskId: this.visitTaskId }).then(res => {
- this.priorADList = res.Result
+ try {
+ const res = await getReadingPastResultList({ visitTaskId: this.visitTaskId })
+ if (res.IsSuccess) {
+ this.priorADList = res.Result
+ }
this.priorLoading = false
- }).catch(() => { this.priorLoading = false })
+ } catch (e) {
+ this.priorLoading = false
+ }
},
handleVisitTaskArmChange(v) {
var i = this.visitTaskArmList.findIndex(i => i.VisitTaskId === v)
@@ -491,33 +501,32 @@ export default {
})
window.open(routeData.href, '_blank')
},
- handleSave() {
- this.$refs['adForm'].validate((valid) => {
- if (!valid) return
- this.loading = true
- var paths = []
- this.fileList.map(file => {
- if (file.url) {
- paths.push(file.url)
- }
- })
- this.adForm.judgeResultImagePathList = paths
- this.adForm.visitTaskId = this.visitTaskId
- saveJudgeVisitTaskResult(this.adForm).then(res => {
- this.$message.success(this.$t('common:message:savedSuccessfully'))
- this.loading = false
- }).catch(() => {
- this.loading = false
- })
+ async handleSave() {
+ const valid = await this.$refs['adForm'].validate()
+ if (!valid) return
+ this.loading = true
+ var paths = []
+ this.fileList.map(file => {
+ if (file.url) {
+ paths.push(file.url)
+ }
})
+ this.adForm.judgeResultImagePathList = paths
+ this.adForm.visitTaskId = this.visitTaskId
+ try {
+ await saveJudgeVisitTaskResult(this.adForm)
+ this.$message.success(this.$t('common:message:savedSuccessfully'))
+ this.loading = false
+ } catch (e) {
+ this.loading = false
+ }
},
- handleSubmit() {
- this.$refs['adForm'].validate((valid) => {
- if (!valid) return
- const { ImageAssessmentReportConfirmation } = const_.processSignature
- this.signCode = ImageAssessmentReportConfirmation
- this.signVisible = true
- })
+ async handleSubmit() {
+ const valid = await this.$refs['adForm'].validate()
+ if (!valid) return
+ const { ImageAssessmentReportConfirmation } = const_.processSignature
+ this.signCode = ImageAssessmentReportConfirmation
+ this.signVisible = true
},
// 关闭签名框
closeSignDialog(isSign, signInfo) {
@@ -528,7 +537,7 @@ export default {
}
},
// 签名并确认
- signConfirm(signInfo) {
+ async signConfirm(signInfo) {
this.loading = true
var paths = []
this.fileList.map(file => {
@@ -543,7 +552,8 @@ export default {
},
signInfo: signInfo
}
- submitJudgeVisitTaskResult(params).then(async res => {
+ try {
+ const res = await submitJudgeVisitTaskResult(params)
if (res.IsSuccess) {
this.$message.success(this.$t('common:message:savedSuccessfully'))
this.isEdit = false
@@ -553,38 +563,35 @@ export default {
// window.opener.postMessage('refreshTaskList', window.location)
// 设置当前任务阅片状态为已读
this.adInfo.ReadingTaskState = 2
- var isAutoTask = await this.getAutoTaskVal()
+ const res = await getAutoCutNextTask()
+ var isAutoTask = res.Result.AutoCutNextTask
if (isAutoTask) {
- store.dispatch('reading/resetVisitTasks')
- DicomEvent.$emit('getNextTask')
+ // store.dispatch('reading/resetVisitTasks')
+ window.location.reload()
} else {
// '当前阅片任务已完成,是否进入下一个阅片任务?'
- this.$confirm(this.$t('trials:adReview:title:msg2'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(() => {
- store.dispatch('reading/resetVisitTasks')
- DicomEvent.$emit('getNextTask')
- })
- .catch(action => {
- changeURLStatic('visitTaskId', this.visitTaskId)
- })
+ const confirm = await this.$confirm(
+ this.$t('trials:adReview:title:msg2'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm === 'confirm') {
+ // store.dispatch('reading/resetVisitTasks')
+ // DicomEvent.$emit('getNextTask')
+ window.location.reload()
+ } else {
+ changeURLStatic('visitTaskId', this.visitTaskId)
+ }
}
window.opener.postMessage('refreshTaskList', window.location)
}
this.loading = false
- }).catch(_ => {
+ } catch (e) {
this.loading = false
this.$refs['signForm'].btnLoading = false
- })
- },
- getAutoTaskVal() {
- return new Promise((resolve, reject) => {
- getAutoCutNextTask().then(res => {
- resolve(res.Result.AutoCutNextTask)
- }).catch(() => { reject() })
- })
+ }
},
handleViewDetail(visitTaskId) {
if (this.openWindow) {
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/AdditionalAssessment.vue b/src/views/trials/trials-panel/reading/dicoms/components/AdditionalAssessment.vue
index b4e33999..e342b6f4 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/AdditionalAssessment.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/AdditionalAssessment.vue
@@ -111,10 +111,11 @@ export default {
this.isRender = true
},
methods: {
- handleSave() {
- this.$refs.assessmentForm.validate(async valid => {
- if (!valid) return
- const loading = this.$loading({ fullscreen: true })
+ async handleSave() {
+ const valid = await this.$refs.assessmentForm.validate()
+ if (!valid) return
+ const loading = this.$loading({ fullscreen: true })
+ try {
var answers = []
for (const k in this.form) {
answers.push({ questionId: k, answer: this.form[k] })
@@ -123,13 +124,15 @@ export default {
visitTaskId: this.visitTaskId,
answerList: answers
}
- submitTaskAdditionalQuestion(params).then(res => {
+ const res = await submitTaskAdditionalQuestion(params)
+ if (res.IsSuccess) {
this.$emit('sign')
- loading.close()
- }).catch(() => {
- loading.close()
- })
- })
+ }
+ loading.close()
+ } catch (e) {
+ console.log(e)
+ loading.close()
+ }
},
handleCancel() {
this.$emit('close')
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/CustomWwwcForm.vue b/src/views/trials/trials-panel/reading/dicoms/components/CustomWwwcForm.vue
index 1922d17b..163b49b3 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/CustomWwwcForm.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/CustomWwwcForm.vue
@@ -1,6 +1,6 @@
{
- if (!valid) return
- this.$emit('setWwwc', this.form)
- })
+ async handleSave() {
+ const valid = await this.$refs.customWWWC.validate()
+ if (!valid) return
+ this.$emit('setWwwc', this.form)
},
handleCancel() {
this.$emit('close')
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/DicomViewer.vue b/src/views/trials/trials-panel/reading/dicoms/components/DicomViewer.vue
index b2453258..00f18d84 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/DicomViewer.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/DicomViewer.vue
@@ -1021,6 +1021,10 @@ export default {
if (!this.petctWindow) return
this.petctWindow.postMessage({ type: 'readingPageUpdate', data: data }, window.location)
})
+ DicomEvent.$on('resetPage', () => {
+ if (!this.petctWindow) return
+ this.petctWindow.postMessage({ type: 'resetPage' }, window.location)
+ })
DicomEvent.$on('setReadingState', (data) => {
if (!this.petctWindow) return
this.petctWindow.postMessage({ type: 'setReadingState', data: data }, window.location)
@@ -1058,28 +1062,30 @@ export default {
})
},
methods: {
- getWwcTpl() {
- const loading = this.$loading({ fullscreen: true })
- getUserWLTemplateList().then(res => {
+ async getWwcTpl() {
+ // const loading = this.$loading({ fullscreen: true })
+ try {
+ const res = await getUserWLTemplateList()
this.customWwcTpl = []
res.Result.map(i => {
this.customWwcTpl.push({ label: i.TemplateName, wc: i.WL, ww: i.WW })
})
this.wwwcArr = [...this.defaultWwwc, ...this.customWwcTpl]
- loading.close()
- }).catch(() => { loading.close() })
+ } catch (e) {
+ console.log(e)
+ }
},
- getHotKeys() {
- const loading = this.$loading({ fullscreen: true })
- getDoctorShortcutKey({ imageToolType: 0 }).then(res => {
+ async getHotKeys() {
+ // const loading = this.$loading({ fullscreen: true })
+ try {
+ const res = await getDoctorShortcutKey({ imageToolType: 0 })
res.Result.map(item => {
this.hotKeyList.push({ id: item.Id, altKey: item.AltKey, ctrlKey: item.CtrlKey, shiftKey: item.ShiftKey, metaKey: item.MetaKey, key: item.Keyboardkey, code: item.Code, text: item.Text, shortcutKeyEnum: item.ShortcutKeyEnum })
})
this.bindHotKey()
- loading.close()
- }).catch(() => {
- loading.close()
- })
+ } catch (e) {
+ console.log(e)
+ }
},
resetHotkeyList(arr) {
this.hotKeyList = []
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/PetCt.vue b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/PetCt.vue
index c251c89a..9ca41a88 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/PetCt.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/PetCt.vue
@@ -798,17 +798,17 @@ export default {
var imageIds = []
var instanceList = []
series.InstanceInfoList.forEach(instance => {
- if (instance.NumberOfFrames && instance.NumberOfFrames > 1) {
- for (let i = 0; i < instance.NumberOfFrames; i++) {
- const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}?frame=${i}`
- imageIds.push(imageId)
- }
- } else {
- const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}`
+ if (instance.NumberOfFrames && instance.NumberOfFrames > 1) {
+ for (let i = 0; i < instance.NumberOfFrames; i++) {
+ const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}?frame=${i}`
imageIds.push(imageId)
}
- instanceList.push(instance.Id)
- })
+ } else {
+ const imageId = `wadouri:${localStorage.getItem('location') !== 'USA' ? this.OSSclientConfig.basePath : this.OSSclientConfig.basePath}${instance.Path}`
+ imageIds.push(imageId)
+ }
+ instanceList.push(instance.Id)
+ })
resolve({
imageIds: imageIds,
instanceList: instanceList,
@@ -2149,7 +2149,49 @@ export default {
this.screenshotWindow.close()
}
},
+ async clearAnnotations() {
+ const viewportIds = ['PT_AXIAL', 'CT_AXIAL', 'FUSION_AXIAL']
+ viewportIds.map(v => {
+ const viewport = renderingEngine.getViewport(v)
+ if (viewport) {
+ var annotations = annotation.state.getAnnotations('CircleROI', viewport.element)
+
+ if (annotations && annotations.length > 0) {
+ annotations.map(i => {
+ if (i.metadata.toolName === 'CircleROI') {
+ annotation.state.removeAnnotation(i.annotationUID)
+ }
+ })
+ }
+ }
+ viewport.render()
+ })
+ try {
+ const visitTaskId = this.$route.query.visitTaskId
+ const res = await getTableAnswerRowInfoList(visitTaskId)
+ if (res.IsSuccess) {
+ var arr = []
+ res.Result.forEach(el => {
+ if (el.OtherMeasureData) {
+ el.OtherMeasureData = JSON.parse(el.OtherMeasureData)
+ el.OtherMeasureData.invalidated = false
+ if (this.readingTaskState === 2) {
+ el.OtherMeasureData.isLocked = true
+ }
+ el.OtherMeasureData.data.remark = el.OrderMarkName
+ const viewport = renderingEngine.getViewport('PT_AXIAL')
+ annotation.state.addAnnotation(el.OtherMeasureData, viewport.element)
+ }
+ arr.push(el)
+ })
+ this.measureDatas = arr
+ }
+ } catch (e) {
+
+ }
+ },
async receiveMsg(event) {
+ console.log(event.data.type)
if (event.data.type === 'readingPageUpdate') {
// this.$refs['questions'].initList()
this.$refs['tableQuestions'].initList(true)
@@ -2171,6 +2213,14 @@ export default {
FusionEvent.$emit('closeHistoryScreenshot')
window.close()
}
+ } else if (event.data.type === 'resetPage') {
+ if (this.screenshotWindow) {
+ this.screenshotWindow.close()
+ }
+ this.$refs['tableQuestions'].initList(true)
+ this.$refs['questions'].initList(true)
+ this.isLocate = true
+ this.clearAnnotations()
}
},
startTimer() {
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/QuestionItem.vue b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/QuestionItem.vue
index 294b31ff..64a6eb2f 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/QuestionItem.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/QuestionItem.vue
@@ -66,6 +66,27 @@
+
+ {formItemChange(val, question)})"
+ >
+
+
+
+
+
+
+
{formItemChange(val, question)})"
>
-
-
-
-
-
-
+
+
+
+
+
+
+
+
@@ -99,23 +124,27 @@
clearable
@change="((val)=>{formItemChange(val, question)})"
>
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/Questions.vue b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/Questions.vue
index ddb2848e..20fe04be 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/Questions.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/Questions.vue
@@ -14,7 +14,7 @@
:question-form="questionForm"
:reading-task-state="readingTaskState"
:visit-task-id="visitTaskId"
- :pet5PS="questionForm[pet5PSId]"
+ :pet5p-s="questionForm[pet5PSId]"
:lung-is-inside-volume="lungIsInsideVolume"
:liver-is-inside-volume="liverIsInsideVolume"
@setFormItemData="setFormItemData"
@@ -163,42 +163,49 @@ export default {
}
this.initList(true)
},
- initList(isInit) {
+ async initList(isInit) {
this.loading = true
- var params = {
- trialId: this.trialId,
- visitTaskId: this.visitTaskId,
- questionClassify: 0
- }
- getDicomReadingQuestionAnswer(params).then(res => {
- var questions = res.Result
+ try {
+ const params = {
+ trialId: this.trialId,
+ visitTaskId: this.visitTaskId,
+ questionClassify: 0
+ }
+ const res = await getDicomReadingQuestionAnswer(params)
+ if (res.IsSuccess) {
+ const questions = res.Result
- questions.map((v) => {
- v.IsBaseLineTask = this.isBaseLineTask
- if (v.Type === 'group' && v.Childrens.length === 0) return
- if (!v.IsPage && v.Type !== 'group' && v.Type !== 'summary') {
- this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
- }
- if (v.Childrens.length > 0) {
- this.setChild(v.Childrens)
- }
- })
- this.questions = questions
- this.setPet5PSCommentDisplay()
- this.measurements = []
- res.OtherInfo.QuestionMarkInfoList.forEach(i => {
- if (i.OtherMeasureData) {
- i.OtherMeasureData = JSON.parse(i.OtherMeasureData)
- if (i.QuestionType === 51 && isInit) {
- this.liverRender = false
- } else if (i.QuestionType === 52 && isInit) {
- this.lungRender = false
+ questions.map((v) => {
+ v.IsBaseLineTask = this.isBaseLineTask
+ if (v.Type === 'group' && v.Childrens.length === 0) return
+ if (!v.IsPage && v.Type !== 'group' && v.Type !== 'summary') {
+ this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
}
- }
- this.measurements.push(i)
- })
+ if (v.Childrens.length > 0) {
+ this.setChild(v.Childrens)
+ }
+ })
+ console.log(this.questionForm,questions)
+ this.questions = questions
+ this.setPet5PSCommentDisplay()
+ this.measurements = []
+ res.OtherInfo.QuestionMarkInfoList.forEach(i => {
+ if (i.OtherMeasureData) {
+ i.OtherMeasureData = JSON.parse(i.OtherMeasureData)
+ if (i.QuestionType === 51 && isInit) {
+ this.liverRender = false
+ } else if (i.QuestionType === 52 && isInit) {
+ this.lungRender = false
+ }
+ }
+ this.measurements.push(i)
+ })
+ }
this.loading = false
- }).catch(() => { this.loading = false })
+ } catch (e) {
+ console.log(e)
+ this.loading = false
+ }
},
setChild(obj) {
obj.forEach(i => {
@@ -263,37 +270,28 @@ export default {
// }
})
},
- saveQuestionsForm() {
+ async saveQuestionsForm() {
this.loading = true
- var answers = []
- for (const k in this.questionForm) {
- answers.push({ id: k, answer: this.questionForm[k] })
- }
- // var questionMarkInfoList = []
- // this.measurements.forEach(item => {
- // var i = Object.assign({}, item)
- // if (i.OtherMeasureData) {
- // for (const k in i.OtherMeasureData.data.cachedStats) {
- // i.OtherMeasureData.data.cachedStats[k].pointsInShape = []
- // }
- // i.OtherMeasureData = JSON.stringify(i.OtherMeasureData)
- // }
-
- // questionMarkInfoList.push(i)
- // })
- var params = {
- visitTaskId: this.visitTaskId,
- answers: answers
- // questionMarkInfoList
- }
- saveTaskQuestion(1, params).then(async res => {
- window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
+ try {
+ var answers = []
+ for (const k in this.questionForm) {
+ answers.push({ id: k, answer: this.questionForm[k] })
+ }
+ var params = {
+ visitTaskId: this.visitTaskId,
+ answers: answers
+ }
+ const res = await saveTaskQuestion(1, params)
+ if (res.IsSuccess) {
+ window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
+ this.loading = false
+ this.questionFormChangeState = false
+ this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
+ }
+ } catch (e) {
+ console.log(e)
this.loading = false
- this.questionFormChangeState = false
- this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
- }).catch(() => {
- this.loading = false
- })
+ }
},
checkAnnotationStatus(obj) {
for (let i = 0; i < obj.length; i++) {
@@ -422,21 +420,27 @@ export default {
break
}
}
- var params = {
- visitTaskId: this.visitTaskId,
- answers,
- questionMarkInfoList
+ try {
+ var params = {
+ visitTaskId: this.visitTaskId,
+ answers,
+ questionMarkInfoList
+ }
+ const qsType = question.QuestionType === 51 ? 2 : question.QuestionType === 52 ? 3 : null
+
+ const res = await saveTaskQuestion(qsType, params)
+ if (res.IsSuccess) {
+ this.$set(question, 'SaveEnum', 0)
+ window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
+ loading.close()
+ this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
+ this.resetSuvQuestions(1)
+ }
+ loading.close()
+ } catch (e) {
+ console.log(e)
+ loading.close()
}
- const qsType = question.QuestionType === 51 ? 2 : question.QuestionType === 52 ? 3 : null
- saveTaskQuestion(qsType, params).then(async res => {
- this.$set(question, 'SaveEnum', 0)
- window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
- loading.close()
- this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
- this.resetSuvQuestions(1)
- }).catch(() => {
- loading.close()
- })
})
},
viewAnnotations(question) {
@@ -622,7 +626,7 @@ export default {
console.log('setfocalFDG')
if (this.questionForm[this.pet5PSId] !== '-1' && this.questionForm[this.focalFDGId] === '1') {
this.questionForm[this.focalFDGId] = ''
- }
+ }
},
setpet5PS() {
console.log('setpet5PS')
@@ -654,40 +658,38 @@ export default {
return ''
}
},
- resetSuvQuestions(type = 0) {
+ async resetSuvQuestions(type = 0) {
this.loading = true
- var params = {
- trialId: this.trialId,
- visitTaskId: this.visitTaskId,
- questionClassify: 0
- }
- getDicomReadingQuestionAnswer(params).then(res => {
- var questions = res.Result
- questions.map((v) => {
- if (v.Type === 'group' && v.Childrens.length === 0) return
- // if (!v.IsPage && v.Type !== 'group' && v.Type !== 'summary') {
- // this.$set(this.questionForm, v.Id, v.Answer ? v.Answer : null)
- // }
- if (v.Childrens.length > 0) {
- this.setSuvChild(v.Childrens, type)
- }
- // var pet5PS = this.setpet5PS()
- // this.questionForm[this.pet5PSId] = pet5PS
- // this.calculatePet5PS = pet5PS
- // this.setPet5PSCommentDisplay()
- // this.setUptakeFormBaseline()
- })
- for (let i = 0; i < this.questions[0].Childrens[0].Childrens.length; i++) {
- if (this.questions[0].Childrens[0].Childrens[i].QuestionType === 59) {
- this.questions[0].Childrens[0].Childrens[i].ShowQuestion = 2
- this.questions[0].Childrens[0].Childrens[i].IsRequired = 3
- this.questionForm[this.pet5PSCommentsId] = ''
- break
- }
+ try {
+ const params = {
+ trialId: this.trialId,
+ visitTaskId: this.visitTaskId,
+ questionClassify: 0
+ }
+ const res = await getDicomReadingQuestionAnswer(params)
+ if (res.IsSuccess) {
+ const questions = res.Result
+ questions.map((v) => {
+ if (v.Type === 'group' && v.Childrens.length === 0) return
+ if (v.Childrens.length > 0) {
+ this.setSuvChild(v.Childrens, type)
+ }
+ })
+ for (let i = 0; i < this.questions[0].Childrens[0].Childrens.length; i++) {
+ if (this.questions[0].Childrens[0].Childrens[i].QuestionType === 59) {
+ this.questions[0].Childrens[0].Childrens[i].ShowQuestion = 2
+ this.questions[0].Childrens[0].Childrens[i].IsRequired = 3
+ this.questionForm[this.pet5PSCommentsId] = ''
+ break
+ }
+ }
+ this.questionFormChangeState = true
}
- this.questionFormChangeState = true
this.loading = false
- }).catch(() => { this.loading = false })
+ } catch (e) {
+ console.log(e)
+ this.loading = false
+ }
},
setSuvChild(obj, type) {
obj.forEach(i => {
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/TableQuestionItem.vue b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/TableQuestionItem.vue
index 0fd43d8b..f16cbf50 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/Fusion/TableQuestionItem.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/Fusion/TableQuestionItem.vue
@@ -316,7 +316,7 @@ export default {
this.$set(this.questionForm, 'OrganInfoId', this.answers.OrganInfoId ? this.answers.OrganInfoId : '')
// saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断);2:已保存,信息完整
- var lesionState = this.getQuestionVal(7)
+ // var lesionState = this.getQuestionVal(7)
if (!isRerender) {
if (this.questionForm.RowId) {
this.$set(this.questionForm, 'saveTypeEnum', 2)
@@ -625,7 +625,7 @@ export default {
}
}
}
- var lesionState = this.getQuestionVal(7)
+ // var lesionState = this.getQuestionVal(7)
if (this.firstRenderAnnotation) {
this.$set(this.questionForm, 'saveTypeEnum', 2)
} else {
@@ -871,75 +871,79 @@ export default {
this.deleteInfo = null
params.rowId = ''
}
- submitTableQuestion(params).then(async res => {
- this.currentMarkTool = otherMeasureData ? otherMeasureData.type : ''
- // saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断);2:已保存,信息完整
+ try {
+ const res = await submitTableQuestion(params)
+ if (res.IsSuccess) {
+ this.currentMarkTool = otherMeasureData ? otherMeasureData.type : ''
+ this.$set(this.questionForm, 'saveTypeEnum', 2)
+ this.originalQuestionForm = { ...this.questionForm }
+ var isLymphLesion = this.getQuestionVal(2)
+ isLymphLesion = isLymphLesion ? parseInt(isLymphLesion) : null
+ var lesionOrgan = this.getQuestionVal(6)
+ this.$set(this.questionForm, 'RowId', res.Result.RowId)
+ const lesionPart = this.getQuestionVal(8)
+ const suvMax = this.getQuestionVal(20)
+ this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
- this.$set(this.questionForm, 'saveTypeEnum', 2)
- this.originalQuestionForm = { ...this.questionForm }
- loading.close()
- var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = isLymphLesion ? parseInt(isLymphLesion) : null
- var lesionOrgan = this.getQuestionVal(6)
- this.$set(this.questionForm, 'RowId', res.Result.RowId)
- const lesionPart = this.getQuestionVal(8)
- const suvMax = this.getQuestionVal(20)
- this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
+ FusionEvent.$emit('resetSuvQuestions')
+ window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
+ this.$emit('close')
- // FusionEvent.$emit('getAnnotations')
- FusionEvent.$emit('resetSuvQuestions')
- window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
- this.$emit('close')
+ this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
+ }
loading.close()
- this.$message({ message: this.$t('common:message:savedSuccessfully'), type: 'success', duration: 2000 })
- }).catch(() => { loading.close() })
+ } catch (e) {
+ console.log(e)
+ loading.close()
+ }
})
})
},
- handleDeleteMeasureData() {
+ async handleDeleteMeasureData() {
// 是否确认清除标记?
- this.$confirm(this.$t('trials:reading:warnning:msg47'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(async() => {
- this.organList = []
- await this.getOrganInfoList()
- // 重置SUV
- var suvId = this.getQuestionId(20)
- this.$set(this.questionForm, suvId, '')
- // saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断)
- if (this.questionForm.RowId) {
- this.$set(this.questionForm, 'saveTypeEnum', 1)
- } else {
- this.$set(this.questionForm, 'saveTypeEnum', 0)
- }
- FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'clear' })
- // await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
+ const confirm = await this.$confirm(
+ this.$t('trials:reading:warnning:msg47'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ this.organList = []
+ await this.getOrganInfoList()
+ // 重置SUV
+ var suvId = this.getQuestionId(20)
+ this.$set(this.questionForm, suvId, '')
+ // saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断)
+ if (this.questionForm.RowId) {
+ this.$set(this.questionForm, 'saveTypeEnum', 1)
+ } else {
+ this.$set(this.questionForm, 'saveTypeEnum', 0)
+ }
+ FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'clear' })
+ // await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
- // Store.$emit('updateImage', this.questionForm.MeasureData.instanceId)
- var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
- const lesionPart = this.getQuestionVal(8)
- const lesionOrgan = this.getQuestionVal(6)
+ // Store.$emit('updateImage', this.questionForm.MeasureData.instanceId)
+ var isLymphLesion = this.getQuestionVal(2)
+ isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
+ const lesionPart = this.getQuestionVal(8)
+ const lesionOrgan = this.getQuestionVal(6)
- if (!this.questionForm.IsDicomReading) {
+ if (!this.questionForm.IsDicomReading) {
- }
- this.$set(this.questionForm, 'IsDicomReading', true)
+ }
+ this.$set(this.questionForm, 'IsDicomReading', true)
- this.$set(this.questionForm, 'OtherMeasureData', '')
- let anwsers = null
- if (this.answers.measureObj) {
- anwsers = Object.assign({ measureObj: '' }, this.questionForm)
- } else {
- anwsers = Object.assign({}, this.questionForm)
- }
- var suvMax = this.getQuestionVal(20)
- this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
- this.isInsideVolume = true
- })
- .catch(() => {})
+ this.$set(this.questionForm, 'OtherMeasureData', '')
+ let anwsers = null
+ if (this.answers.measureObj) {
+ anwsers = Object.assign({ measureObj: '' }, this.questionForm)
+ } else {
+ anwsers = Object.assign({}, this.questionForm)
+ }
+ var suvMax = this.getQuestionVal(20)
+ this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
+ this.isInsideVolume = true
},
async clearMeasurement() {
this.organList = []
@@ -975,65 +979,63 @@ export default {
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, suvMax, saveTypeEnum: this.questionForm.saveTypeEnum, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
this.isInsideVolume = true
},
- handleDelete() {
- // 是否确认删除?
- this.$confirm(this.$t('trials:reading:warnning:msg48'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(async() => {
- if (this.questionForm.RowId) {
- const loading = this.$loading({ fullscreen: true })
- var param = {
- visitTaskId: this.visitTaskId,
- questionId: this.parentQsId,
- rowId: this.questionForm.RowId
- }
- deleteReadingRowAnswer(param)
- .then(async res => {
- loading.close()
- if (res.IsSuccess) {
- // this.$emit('getReadingQuestionAndAnswer')
- if (this.questionForm.IsDicomReading && this.questionForm.OtherMeasureData) {
- // await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
- FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'delete' })
- }
- this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
-
- // '删除成功!'
- this.$message.success(this.$t('common:message:deletedSuccessfully'))
- loading.close()
- window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
- }
- }).catch(() => { loading.close() })
- } else {
- // const loading = this.$loading({ fullscreen: true })
- // 移除新建病灶并关闭窗口
- if (this.questionForm.OtherMeasureData && this.questionForm.IsDicomReading) {
- // await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
- FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
- }
- this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
- // loading.close()
- }
- })
- },
- handleClose() {
- if (!this.questionForm.RowId) {
- // '当前病灶为新建病灶,未保存。如果关闭窗口,将会删除病灶信息,是否继续?'
- this.$confirm(this.$t('trials:reading:warnning:msg49'), {
+ async handleDelete() {
+ const confirm = await this.$confirm(
+ this.$t('trials:reading:warnning:msg48'),
+ {
type: 'warning',
distinguishCancelAndClose: true
- })
- .then(async() => {
- // 移除新建病灶并关闭窗口
- if (this.questionForm.OtherMeasureData) {
- FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
- // await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
+ }
+ )
+ if (confirm !== 'confirm') return
+ if (this.questionForm.RowId) {
+ const loading = this.$loading({ fullscreen: true })
+ try {
+ var param = {
+ visitTaskId: this.visitTaskId,
+ questionId: this.parentQsId,
+ rowId: this.questionForm.RowId
+ }
+ const res = await deleteReadingRowAnswer(param)
+ if (res.IsSuccess) {
+ if (this.questionForm.IsDicomReading && this.questionForm.OtherMeasureData) {
+ FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData, type: 'delete' })
}
this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
- })
- .catch(() => {})
+ // '删除成功!'
+ this.$message.success(this.$t('common:message:deletedSuccessfully'))
+ loading.close()
+ window.opener.postMessage({ type: 'petctLesionUpdate' }, window.location)
+ }
+ loading.close()
+ } catch (e) {
+ console.log(e)
+ loading.close()
+ }
+ } else {
+ // 移除新建病灶并关闭窗口
+ if (this.questionForm.OtherMeasureData && this.questionForm.IsDicomReading) {
+ FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
+ }
+ this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
+ }
+ },
+ async handleClose() {
+ if (!this.questionForm.RowId) {
+ // '当前病灶为新建病灶,未保存。如果关闭窗口,将会删除病灶信息,是否继续?'
+ const confirm = await this.$confirm(
+ this.$t('trials:reading:warnning:msg49'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ // 移除新建病灶并关闭窗口
+ if (this.questionForm.OtherMeasureData) {
+ FusionEvent.$emit('removeAnnotation', { otherMeasureData: this.questionForm.OtherMeasureData })
+ }
+ this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
} else {
if (this.questionForm.saveTypeEnum === 1) {
this.$emit('close')
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/Hotkeys.vue b/src/views/trials/trials-panel/reading/dicoms/components/Hotkeys.vue
index c259ba62..1f1cdb63 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/Hotkeys.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/Hotkeys.vue
@@ -56,22 +56,25 @@ export default {
this.getHotkeys()
},
methods: {
- getHotkeys(isReset = false) {
+ async getHotkeys(isReset = false) {
this.loading = true
this.hotKeyList = []
- getDoctorShortcutKey({ imageToolType: this.readingTool }).then(res => {
- res.Result.map(item => {
- this.hotKeyList.push({ id: item.Id, keys: { controlKey: { altKey: item.AltKey, ctrlKey: item.CtrlKey, shiftKey: item.ShiftKey, metaKey: item.MetaKey, key: item.Keyboardkey, code: item.Code }, text: item.Text }, label: item.ShortcutKeyEnum })
- })
- if (isReset) {
- this.$emit('reset', this.hotKeyList)
+ try {
+ const res = await getDoctorShortcutKey({ imageToolType: this.readingTool })
+ if (res.IsSuccess) {
+ res.Result.map(item => {
+ this.hotKeyList.push({ id: item.Id, keys: { controlKey: { altKey: item.AltKey, ctrlKey: item.CtrlKey, shiftKey: item.ShiftKey, metaKey: item.MetaKey, key: item.Keyboardkey, code: item.Code }, text: item.Text }, label: item.ShortcutKeyEnum })
+ })
+ if (isReset) {
+ this.$emit('reset', this.hotKeyList)
+ }
}
this.loading = false
- }).catch(() => {
+ } catch (e) {
this.loading = false
- })
+ }
},
- handleSave() {
+ async handleSave() {
var params = {
imageToolType: this.readingTool,
shortcutKeyList: []
@@ -86,17 +89,15 @@ export default {
emptyLabel = item.label
break
} else {
- shortcutKeyList.push(
- {
- shortcutKeyEnum: item.label,
- keyboardkey: item.keys.controlKey.key,
- code: item.keys.controlKey.code,
- text: item.keys.text,
- altKey: item.keys.controlKey.altKey,
- ctrlKey: item.keys.controlKey.ctrlKey,
- shiftKey: item.keys.controlKey.shiftKey,
- metaKey: item.keys.controlKey.metaKey }
- )
+ shortcutKeyList.push({
+ shortcutKeyEnum: item.label,
+ keyboardkey: item.keys.controlKey.key,
+ code: item.keys.controlKey.code,
+ text: item.keys.text,
+ altKey: item.keys.controlKey.altKey,
+ ctrlKey: item.keys.controlKey.ctrlKey,
+ shiftKey: item.keys.controlKey.shiftKey,
+ metaKey: item.keys.controlKey.metaKey })
}
}
if (isExistEmptyText) {
@@ -112,43 +113,40 @@ export default {
})
} else {
this.loading = true
- // this.hotKeyList.map(item => {
- // shortcutKeyList.push(
- // {
- // shortcutKeyEnum: item.label,
- // keyboardkey: item.keys.controlKey.key,
- // code: item.keys.controlKey.code,
- // text: item.keys.text,
- // altKey: item.keys.controlKey.altKey,
- // ctrlKey: item.keys.controlKey.ctrlKey,
- // shiftKey: item.keys.controlKey.shiftKey,
- // metaKey: item.keys.controlKey.metaKey }
- // )
- // })
params.shortcutKeyList = shortcutKeyList
- setShortcutKey(params).then(res => {
- this.$emit('reset', this.hotKeyList)
- // this.$emit('close')
+ try {
+ const res = await setShortcutKey(params)
+ if (res.IsSuccess) {
+ this.$emit('reset', this.hotKeyList)
+ }
this.loading = false
- }).catch(() => {
+ } catch (e) {
this.loading = false
- })
+ }
}
},
- handleReset() {
+ async handleReset() {
// '是否确认重置?'
- this.$confirm(this.$t('trials:hotkeys:message:confirmReset'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(() => {
- this.loading = true
- restoreDefaultShortcutKey({ imageToolType: this.readingTool }).then(res => {
- this.$message.success(this.$t('trials:hotkeys:message:resetSuccessfully')) // '重置成功!'
- this.getHotkeys(true)
- }).catch(() => { this.loading = false })
- })
- .catch(action => {})
+ const confirm = await this.$confirm(
+ this.$t('trials:hotkeys:message:confirmReset'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+
+ this.loading = true
+ try {
+ const res = await restoreDefaultShortcutKey({ imageToolType: this.readingTool })
+ if (res.IsSuccess) {
+ this.$message.success(this.$t('trials:hotkeys:message:resetSuccessfully')) // '重置成功!'
+ this.getHotkeys(true)
+ }
+ this.loading = false
+ } catch (e) {
+ this.loading = false
+ }
},
handleHotkeyVerify(hotkey) {
for (const item of this.hotKeyList) {
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/IRecist/QuestionList.vue b/src/views/trials/trials-panel/reading/dicoms/components/IRecist/QuestionList.vue
index 31bbc9d2..8ef8db80 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/IRecist/QuestionList.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/IRecist/QuestionList.vue
@@ -1080,17 +1080,17 @@ export default {
this.$refs['ecrf'].getQuestions(obj.visitTaskId)
},
async resetMeasuredData() {
+ const confirm = await this.$confirm(
+ this.$t('trials:dicomReading:message:confirmReset1'),
+ this.$t('trials:dicomReading:message:confirmReset2'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ const loading = this.$loading({ fullscreen: true })
try {
- const confirm = await this.$confirm(
- this.$t('trials:dicomReading:message:confirmReset1'),
- this.$t('trials:dicomReading:message:confirmReset2'),
- {
- type: 'warning',
- distinguishCancelAndClose: true
- }
- )
- if (confirm !== 'confirm') return
- this.loading = true
const res = await resetReadingTask({ visitTaskId: this.visitTaskId })
this.loading = false
if (res.IsSuccess) {
@@ -1099,13 +1099,16 @@ export default {
this.activeItem.activeRowIndex = null
this.activeItem.activeCollapseId = null
await this.getReadingQuestionAndAnswer(this.visitTaskId)
- this.$refs['ecrf'].resetQSForm()
+ const triald = this.$router.currentRoute.query.trialId
+ await store.dispatch('reading/refreshDicomReadingQuestionAnswer', { trialId: triald, visitTaskId: this.visitTaskId })
+ this.$refs['ecrf'].getQuestions(this.visitTaskId, true)
DicomEvent.$emit('getMeasureData')
DicomEvent.$emit('getReportInfo', true)
DicomEvent.$emit('refreshStudyListMeasureData')
}
+ loading.close()
} catch (e) {
- this.loading = false
+ loading.close()
console.log(e)
}
},
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 c123bdff..c5e7430a 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
@@ -116,34 +116,38 @@
/>
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
{
+ return new Promise(async(resolve, reject) => {
const loading = this.$loading({ fullscreen: true })
var param = {
visitTaskId: this.visitTaskId,
questionId: this.parentQsId,
rowId: this.questionForm.RowId
}
- deleteReadingRowAnswer(param)
- .then(async res => {
- if (res.IsSuccess) {
- DicomEvent.$emit('getReportInfo', true)
- }
- loading.close()
- resolve()
- }).catch(() => {
- loading.close()
- reject()
- })
+ try {
+ const res = await deleteReadingRowAnswer(param)
+ if (res.IsSuccess) {
+ DicomEvent.$emit('getReportInfo', true)
+ }
+ loading.close()
+ resolve()
+ } catch (e) {
+ loading.close()
+ reject()
+ }
})
},
async formItemChange(v, question) {
@@ -717,12 +706,11 @@ export default {
this.$set(this.questionForm, 'saveTypeEnum', 0)
}
var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
const lesionPart = this.getQuestionVal(8)
const lesionOrgan = this.getQuestionVal(6)
- const lesionLength = !isNaN(parseFloat(this.getQuestionVal(0))) ? this.getQuestionVal(0) : ''
- const lesionShort = !isNaN(parseFloat(this.getQuestionVal(1))) ? this.getQuestionVal(1) : ''
- const lesionState = !isNaN(parseInt(this.getQuestionVal(7))) ? parseInt(this.getQuestionVal(7)) : ''
+ const lesionLength = this.getQuestionVal(0)
+ const lesionShort = this.getQuestionVal(1)
+ const lesionState = this.getQuestionVal(7)
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, lesionShort, lesionState, saveTypeEnum: this.questionForm.saveTypeEnum, lesionLength, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
if (question.QuestionMark === 7) {
@@ -772,46 +760,10 @@ export default {
this.$set(this.questionForm, lengthObj.Id, '')
this.$set(this.questionForm, shortObj.Id, '')
}
- // if (this.toolType !== measureData.type) {
- // 获取器官问题
- // var organ = this.getQuestionVal(5)
-
- // 十字线工具 器官只能是淋巴结类型
-
- // if (measureData.type === 'Bidirectional') {
- // this.organList = []
- // this.getOrganInfoList(1)
- // } else if (measureData.type === 'Length') {
- // // 直径测量工具 且是靶病灶 器官只能是非淋巴结类型
- // this.organList = []
- // this.getOrganInfoList(0)
- // } else {
- // this.organList = []
- // this.getOrganInfoList()
- // }
var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
- // if (isLymphLesion === 1) {
- // // 淋巴结类型
- // this.organList = []
- // this.getOrganInfoList(1)
- // } else if (isLymphLesion === 0) {
- // this.organList = []
- // this.getOrganInfoList(0)
- // } else {
- // this.organList = []
- // this.getOrganInfoList()
- // }
this.organList = []
this.getOrganInfoList()
- // if (this.toolType) {
- // this.questionForm[this.getQuestionId(8)] = ''
- // this.questionForm[this.getQuestionId(5)] = ''
- // this.questionForm[this.getQuestionId(6)] = ''
- // this.questionForm[this.getQuestionId(2)] = ''
- // }
-
var data = {}
if (measureData.isDicomReading === false) {
this.$set(this.questionForm, 'IsDicomReading', false)
@@ -836,11 +788,7 @@ export default {
const stateId = this.getQuestionId(7)
this.$set(this.questionForm, stateId, 0)
}
-
- // var isLymphLesion = this.getQuestionVal(2)
- // isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
- var lesionLength = !isNaN(parseFloat(this.getQuestionVal(0))) ? this.getQuestionVal(0) : ''
- // var lesionShort = !isNaN(parseInt(this.getQuestionVal(1))) ? this.getQuestionVal(1) : ''
+ var lesionLength = this.getQuestionVal(0)
// 当前添加的新病灶不做处理
if (!(this.isCurrentTaskAdd === 'True') && this.lesionType === 0 && !this.isBaseLineTask && measureData.type === 'Bidirectional') {
if (isLymphLesion) {
@@ -869,7 +817,7 @@ export default {
if (this.lesionType === 0) {
this.calculatePPD()
}
- const lesionState = !isNaN(parseInt(this.getQuestionVal(7))) ? parseInt(this.getQuestionVal(7)) : ''
+ const lesionState = this.getQuestionVal(7)
var status = ''
if (lesionState) {
if (this.lesionType === 0 && lesionState === 1) {
@@ -914,14 +862,11 @@ export default {
}
this.$set(this.questionForm, 'MeasureData', measureData)
var isLymph = this.getQuestionVal(2)
- isLymph = !isNaN(parseInt(isLymph)) ? parseInt(isLymph) : null
const lesionPart = this.getQuestionVal(8)
const lesionOrgan = this.getQuestionVal(6)
- // const lesionLength = !isNaN(parseInt(this.getQuestionVal(0))) ? Number(this.getQuestionVal(0)) : ''
- // const lesionShort = !isNaN(parseInt(this.getQuestionVal(1))) ? Number(this.getQuestionVal(1)) : ''
- const lesionL = !isNaN(parseFloat(this.getQuestionVal(0))) ? this.getQuestionVal(0) : ''
- const lesionS = !isNaN(parseFloat(this.getQuestionVal(1))) ? this.getQuestionVal(1) : ''
- var lesionState = !isNaN(parseInt(this.getQuestionVal(7))) ? parseInt(this.getQuestionVal(7)) : ''
+ const lesionL = this.getQuestionVal(0)
+ const lesionS = this.getQuestionVal(1)
+ var lesionState = this.getQuestionVal(7)
// // 状态为空时,非淋巴结靶病灶长径>0mm,自动给“存在”状态,如果淋巴结靶病灶短径>=10mm,自动给“存在”状态。淋巴结靶病灶在短径小于10mm时,用十字线标记测量时标记为消失
// if (!this.isBaseLineTask && this.lesionType === 0 && ((isLymphLesion === 0 && lesionLength > 0) || (isLymphLesion === 1 && lesionShort >= 10))) {
// const stateId = this.getQuestionId(7)
@@ -1081,27 +1026,31 @@ export default {
}
},
getQuestionVal(questionMark) {
- var idx = this.questions.findIndex(i => i.QuestionMark === questionMark)
+ const idx = this.questions.findIndex(i => i.QuestionMark === questionMark)
if (idx > -1) {
- var questionId = this.questions[idx].Id
- return this.questionForm[questionId]
+ const questionId = this.questions[idx].Id
+ const answer = this.questionForm[questionId]
+ if (isNaN(parseFloat(answer))) {
+ return answer
+ } else {
+ return parseFloat(answer)
+ }
} else {
return ''
}
},
filterState(arr) {
if (!this.isBaseLineTask) {
- var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
- const lesionLength = !isNaN(parseFloat(this.getQuestionVal(0))) ? this.getQuestionVal(0) : 0
- const lesionShort = !isNaN(parseFloat(this.getQuestionVal(1))) ? this.getQuestionVal(1) : 0
- const lastLesionL = !isNaN(parseFloat(this.answers.LastTaskMajorAxis)) ? parseFloat(this.answers.LastTaskMajorAxis) : 0
- const lastLesionS = !isNaN(parseFloat(this.answers.LastTaskShortAxis)) ? parseFloat(this.answers.LastTaskShortAxis) : 0
- if (this.lesionType === 1 && isLymphLesion === 1 && this.questionForm.MeasureData && (this.questionForm.MeasureData.type === 'Length' || this.questionForm.MeasureData.type === 'Bidirectional') && lesionShort < lastLesionS) {
+ const isLymphLesion = this.getQuestionVal(2)
+ const lesionLength = this.getQuestionVal(0)
+ const lesionShort = this.getQuestionVal(1)
+ const bLesionL = !isNaN(parseInt(this.answers.LastTaskMajorAxis)) ? parseInt(this.answers.LastTaskMajorAxis) : 0
+ const bLesionS = !isNaN(parseInt(this.answers.LastTaskShortAxis)) ? parseInt(this.answers.LastTaskShortAxis) : 0
+ if (this.lesionType === 1 && isLymphLesion === 1 && this.questionForm.MeasureData && this.questionForm.MeasureData.type === 'Bidirectional' && lesionShort < bLesionS) {
arr = arr.filter(i => i.value !== 1)
- } else if (this.lesionType === 1 && isLymphLesion === 1 && this.questionForm.MeasureData && (this.questionForm.MeasureData.type === 'Length' || this.questionForm.MeasureData.type === 'Bidirectional') && lesionShort >= 10 && lesionShort > lastLesionS) {
+ } else if (this.lesionType === 1 && isLymphLesion === 1 && this.questionForm.MeasureData && this.questionForm.MeasureData.type === 'Bidirectional' && lesionShort >= 10 && lesionShort > bLesionS) {
arr = arr.filter(i => i.value === 0 || i.value === 1)
- } else if (this.lesionType === 1 && isLymphLesion === 0 && this.questionForm.MeasureData && (this.questionForm.MeasureData.type === 'Length' || this.questionForm.MeasureData.type === 'Bidirectional') && lesionLength < lastLesionL) {
+ } else if (this.lesionType === 1 && isLymphLesion === 0 && this.questionForm.MeasureData && (this.questionForm.MeasureData.type === 'Length' || this.questionForm.MeasureData.type === 'Bidirectional') && lesionLength < bLesionL) {
arr = arr.filter(i => i.value !== 1)
}
return arr
@@ -1112,20 +1061,6 @@ export default {
setDeleteInfo(deleteInfo) {
this.deleteInfo = deleteInfo
},
- deleteOldLesion(questionId, rowId) {
- return new Promise((resolve, reject) => {
- var param = {
- visitTaskId: this.visitTaskId,
- questionId: questionId,
- rowId: rowId
- }
- deleteReadingRowAnswer(param)
- .then(async res => {
- resolve()
- }).catch(() => {
- })
- })
- },
// async uploadScreenshots(fileName, file) {
// try {
// file = this.convertBase64ToBlob(file)
@@ -1179,630 +1114,630 @@ export default {
// 生成Blob对象(文件对象)
return new Blob([bytesCode], { type: imgtype })
},
- handleSave() {
- console.log('handleSave')
- this.$refs.measurementForm.validate(async valid => {
- if (!valid) {
- if(this.lesionType === 0){
- this.$refs['scrollPanel'].scrollTo({ top: 0, behavior: 'smooth' })
- }
- return
+ async handleSave() {
+ const valid = await this.$refs.measurementForm.validate()
+ if (!valid) {
+ if (this.lesionType === 0) {
+ this.$refs['scrollPanel'].scrollTo({ top: 0, behavior: 'smooth' })
}
- const loading = this.$loading({ fullscreen: true })
- var measureData = this.questionForm.MeasureData
- var lesionState = this.getQuestionVal(7)
- // var lesionLength = !isNaN(parseInt(this.getQuestionVal(0))) ? Number(this.getQuestionVal(0)) : ''
- // var lesionShort = !isNaN(parseInt(this.getQuestionVal(1))) ? Number(this.getQuestionVal(1)) : ''
- var lesionLength = !isNaN(parseFloat(this.getQuestionVal(0))) ? this.getQuestionVal(0) : ''
- var lesionShort = !isNaN(parseFloat(this.getQuestionVal(1))) ? this.getQuestionVal(1) : ''
- var lymphNodes = this.getQuestionVal(2)
- lymphNodes = (lymphNodes !== null && lymphNodes !== undefined) ? parseInt(lymphNodes) : null
- if (this.isBaseLineTask) {
- // 基线
- // 靶病灶且状态为存在(0)
- if (this.lesionType === 0 && lesionState === 0) {
- if (lymphNodes === 1) {
- // 评估状态为“存在”的淋巴结靶病灶,长径应大于15 mm,请使用长短径测量工具添加标记。
- if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 15 && lesionLength >= 2 * measureData.thick)) {
- this.$confirm(this.$t('trials:lugano:message:validState1'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 评估状态为“存在”的非淋巴结靶病灶,长径应大于10 mm,请使用长短径测量工具添加标记。
- if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 10 && lesionLength >= 2 * measureData.thick)) {
- this.$confirm(this.$t('trials:lugano:message:validState2'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
+ return
+ }
+ const loading = this.$loading({ fullscreen: true })
+ var measureData = this.questionForm.MeasureData
+ var lesionState = this.getQuestionVal(7)
+ var lesionLength = this.getQuestionVal(0)
+ var lesionShort = this.getQuestionVal(1)
+ var lymphNodes = this.getQuestionVal(2)
+ lymphNodes = (lymphNodes !== null && lymphNodes !== undefined) ? parseInt(lymphNodes) : null
+ if (this.isBaseLineTask) {
+ // 基线
+ // 靶病灶且状态为存在(0)
+ if (this.lesionType === 0 && lesionState === 0) {
+ if (lymphNodes === 1) {
+ // 评估状态为“存在”的淋巴结靶病灶,长径应大于15 mm,请使用长短径测量工具添加标记。
+ if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 15 && lesionLength >= 2 * measureData.thick)) {
+ this.$confirm(this.$t('trials:lugano:message:validState1'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 评估状态为“存在”的非淋巴结靶病灶,长径应大于10 mm,请使用长短径测量工具添加标记。
+ if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 10 && lesionLength >= 2 * measureData.thick)) {
+ this.$confirm(this.$t('trials:lugano:message:validState2'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
}
}
+ }
- // 非靶病灶且状态为存在(0)
- if (this.lesionType === 1 && lesionState === 0) {
- if (lymphNodes === 1) {
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
+ // 非靶病灶且状态为存在(0)
+ if (this.lesionType === 1 && lesionState === 0) {
+ if (lymphNodes === 1) {
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
// 评估状态为存在的淋巴结非靶病灶需使用长短径测量工具或矩形工具添加标记
- this.$confirm(this.$t('trials:reading:warnning:msg21'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
+ this.$confirm(this.$t('trials:reading:warnning:msg21'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
// 评估状态为存在的非淋巴结非靶病灶需使用长短径测量工具或矩形工具添加标记
- this.$confirm(this.$t('trials:lugano:message:validState12'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
- } else {
- // 非基线
- // 靶病灶且状态为存在(0)
- if (this.lesionType === 0 && lesionState === 0) {
- if (lymphNodes === 1) {
- if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 15)) {
- // 状态为“存在”的淋巴结靶病灶,长径应大于15 mm,请使用长短径测量工具添加标记。
- this.$confirm(this.$t('trials:lugano:message:validState3'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结靶病灶 长短径测量工具
- if (!(measureData && measureData.type === 'Bidirectional')) {
- // 状态为“存在”的非淋巴结靶病灶,长径应大于10 mm,请使用长短径测量工具添加标记。
- this.$confirm(this.$t('trials:lugano:message:validState4'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
- // 靶病灶且状态为太小(1)
- if (this.lesionType === 0 && lesionState === 1) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 必须使用箭头工具,长径、短径记录为5mm
- if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为太小的淋巴结靶病灶需使用箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg25'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- } else if (measureData && measureData.type === 'ArrowAnnotate') {
- const shortId = this.getQuestionId(1)
- this.$set(this.questionForm, shortId, 5)
- lesionShort = 5
- const lengthId = this.getQuestionId(0)
- this.$set(this.questionForm, lengthId, 5)
- lesionLength = 5
- }
- } else {
- // 非淋巴结靶病灶 箭头工具,长径记录为5mm
- if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为太小的非淋巴结靶病灶需使用箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg26'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- } else if (measureData && measureData.type === 'ArrowAnnotate') {
- const shortId = this.getQuestionId(1)
- this.$set(this.questionForm, shortId, 5)
- lesionShort = 5
- const lengthId = this.getQuestionId(0)
- this.$set(this.questionForm, lengthId, 5)
- lesionLength = 5
- }
- }
- }
-
- // 靶病灶且状态为无法评估(2)
- if (this.lesionType === 0 && lesionState === 2) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 不需要添加标记
- if (measureData) {
- // 评估状态为无法评估的淋巴结靶病灶不需要添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg27'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结靶病灶 不需要添加标记
- if (measureData) {
- // 状态为无法评估的非淋巴结靶病灶不需要添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg28'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 靶病灶且状态为消失(3)
- if (this.lesionType === 0 && lesionState === 3) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 使用箭头工具
- if (!(measureData && (measureData.type === 'ArrowAnnotate' || measureData.type === 'Bidirectional'))) {
- // 评估状态为消失的淋巴结靶病灶需使用箭头工具或长短径工具添加标记!
- this.$confirm(this.$t('trials:lugano:message:validState5'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- } else if (measureData && measureData.type === 'Bidirectional' && lesionLength > 15) {
- // 评估状态为消失的淋巴结靶病灶,短径应不大于15mm!
- this.$confirm(this.$t('trials:lugano:message:validState6'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- // if (!(measureData && (measureData.type === 'Bidirectional' && lesionShort < 10))) {
- // // `评估状态为消失的淋巴结靶病灶需使用长短径工具添加标记,且短径需小于10mm!`
- // this.$confirm(this.$t('trials:reading:warnning:msg29'), {
- // type: 'warning',
- // showCancelButton: false,
- // callback: action => {}
- // })
- // loading.close()
- // return
- // }
- } else {
- // 非淋巴结靶病灶 箭头工具
- if (!(measureData && measureData.type === 'ArrowAnnotate')) {
- // 评估状态为消失的非淋巴结靶病灶只能使用箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg30'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- // else if (measureData && measureData.type === 'ArrowAnnotate') {
- // const lId = this.getQuestionId(0)
- // this.$set(this.questionForm, lId, 0)
- // lesionLength = 0
- // }
- }
- if (measureData && measureData.type === 'ArrowAnnotate') {
- const shortId = this.getQuestionId(1)
- this.$set(this.questionForm, shortId, null)
- lesionShort = null
- const lengthId = this.getQuestionId(0)
- this.$set(this.questionForm, lengthId, null)
- lesionLength = null
- }
- }
-
- // 靶病灶且状态为疾病进展 (4)
- if (this.lesionType === 0 && lesionState === 4) {
- if (lymphNodes === 1) {
- if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 15)) {
- // 状态为“疾病进展”的淋巴结靶病灶,长径应大于15 mm,请使用长短径测量工具添加标记。
- this.$confirm(this.$t('trials:lugano:message:validState7'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结靶病灶 直径测量工具
- if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 10)) {
- // 状态为“疾病进展”的非淋巴结靶病灶,长径应大于10 mm,请使用长短径测量工具添加标记。
- this.$confirm(this.$t('trials:lugano:message:validState8'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 非靶病灶且状态为存在(0)
- if (this.lesionType === 1 && lesionState === 0) {
- if (lymphNodes === 1) {
- // 淋巴结非靶病灶 必须使用长短径测量工具、箭头工具
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
- // 评估状态为存在的淋巴结非靶病灶需使用长短径测量工具或箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg31'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结非靶病灶 直径测量工具、箭头工具
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
- // 评估状态为存在的非淋巴结非靶病灶需使用长短径测量工具或箭头工具添加标记!
- this.$confirm(this.$t('trials:lugano:message:validState9'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 非靶病灶且状态为显著增大(1)
- if (this.lesionType === 1 && lesionState === 1) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
- // `评估状态为显著增大的淋巴结非靶病灶需使用长短径测量工具或矩形工具添加标记!`
- this.$confirm(this.$t('trials:reading:warnning:msg33'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结非靶病灶 矩形工具
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
- // 评估状态为显著增大的非淋巴结非靶病灶需使用矩形工具添加标记!
- this.$confirm(this.$t('trials:lugano:message:validState10'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 非靶病灶且状态为无法评估(2)
- if (this.lesionType === 1 && lesionState === 2) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 无标记
- if (measureData) {
- // 评估状态为无法评估的淋巴结非靶病灶不需要添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg35'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结非靶病灶 无标记
- if (measureData) {
- // 评估状态为无法评估的非淋巴结非靶病灶不需要添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg36'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 非靶病灶且状态为消失(3)
- if (this.lesionType === 1 && lesionState === 3) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
- if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为消失的淋巴结非靶病灶需使用箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg37'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结非靶病灶 箭头工具
- if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为消失的非淋巴结非靶病灶需使用箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg38'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 新病灶且状态为存在(0)
- if (this.lesionType === 2 && lesionState === 0) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为存在的淋巴结新病灶需使用长短径测量工具或箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg39'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结非靶病灶 直径测量工具、箭头工具
- if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为存在的非淋巴结新病灶需使用长短径测量工具或箭头工具添加标记!
- this.$confirm(this.$t('trials:lugano:message:validState11'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 新病灶且状态为疑似 不限制(1)
- // if (this.lesionType === 2 && lesionState === 1) {
- // if (lymphNodes === 1) {
- // // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
- // if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'ArrowAnnotate'))) {
- // // 评估状态为疑似的淋巴结新病灶需使用长短径测量工具或箭头工具添加标记!
- // this.$confirm(this.$t('trials:reading:warnning:msg41'), {
- // type: 'warning',
- // showCancelButton: false,
- // callback: action => {}
- // })
- // loading.close()
- // return
- // }
- // } else {
- // // 非淋巴结非靶病灶 直径测量工具、箭头工具
- // if (!(measureData && (measureData.type === 'Length' || measureData.type === 'ArrowAnnotate'))) {
- // // `评估状态为疑似的非淋巴结新病灶需使用直径测量工具或箭头工具添加标记!`
- // this.$confirm(this.$t('trials:reading:warnning:msg42'), {
- // type: 'warning',
- // showCancelButton: false,
- // callback: action => {}
- // })
- // loading.close()
- // return
- // }
- // }
- // }
-
- // 新病灶且状态为无法评估(2)
- if (this.lesionType === 2 && lesionState === 2) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
- if (measureData) {
- // `评估状态为无法评估的淋巴结新病灶不需要添加标记!`
- this.$confirm(this.$t('trials:reading:warnning:msg43'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 非淋巴结非靶病灶 直径测量工具、箭头工具
- if (measureData) {
- // 评估状态为无法评估的非淋巴结新病灶不需要添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg44'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- }
- }
-
- // 新病灶且状态为消失(3)
- if (this.lesionType === 2 && lesionState === 3) {
- if (lymphNodes === 1) {
- // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
- if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为消失的淋巴结新病灶需使用箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg45'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
- } else {
- // 箭头工具
- if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
- // 评估状态为消失的非淋巴结新病灶需使用箭头工具添加标记!
- this.$confirm(this.$t('trials:reading:warnning:msg46'), {
- type: 'warning',
- showCancelButton: false,
- callback: action => {}
- })
- loading.close()
- return
- }
+ this.$confirm(this.$t('trials:lugano:message:validState12'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
}
}
}
- DicomEvent.$emit('getScreenshots', { questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex, visitTaskId: this.visitTaskId, lesionName: this.lesionMark, lesionType: this.lesionType, isMarked: !!measureData }, async val => {
- // 靶病灶状态为0(存在)时,一定存在长径或者长短径(长径、十字线 )
- // 普通靶病灶:长径大于10mm且不小于2倍层厚(基线校验)
- // 淋巴结靶病灶:短径大于15mm且不小于2倍层厚(基线校验)
- var picturePath = ''
- if (val && measureData && this.questionForm.IsDicomReading) {
- var pictureObj = await this.uploadScreenshots(`${new Date().getTime()}`, val)
- picturePath = pictureObj.isSuccess ? this.$getObjectName(pictureObj.result.url) : ''
- }
- var answers = []
- var reg = new RegExp(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)
- for (const k in this.questionForm) {
- if (reg.test(k)) {
- if (answers.findIndex(i => i.tableQuestionId === k) === -1) {
- answers.push({ tableQuestionId: k, answer: this.questionForm[k] })
- }
+ } else {
+ // 非基线
+ // 靶病灶且状态为存在(0)
+ if (this.lesionType === 0 && lesionState === 0) {
+ if (lymphNodes === 1) {
+ if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 15)) {
+ // 状态为“存在”的淋巴结靶病灶,长径应大于15 mm,请使用长短径测量工具添加标记。
+ this.$confirm(this.$t('trials:lugano:message:validState3'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结靶病灶 长短径测量工具
+ if (!(measureData && measureData.type === 'Bidirectional')) {
+ // 状态为“存在”的非淋巴结靶病灶,长径应大于10 mm,请使用长短径测量工具添加标记。
+ this.$confirm(this.$t('trials:lugano:message:validState4'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
}
}
+ }
+ // 靶病灶且状态为太小(1)
+ if (this.lesionType === 0 && lesionState === 1) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 必须使用箭头工具,长径、短径记录为5mm
+ if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为太小的淋巴结靶病灶需使用箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg25'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ } else if (measureData && measureData.type === 'ArrowAnnotate') {
+ const shortId = this.getQuestionId(1)
+ this.$set(this.questionForm, shortId, 5)
+ lesionShort = 5
+ const lengthId = this.getQuestionId(0)
+ this.$set(this.questionForm, lengthId, 5)
+ lesionLength = 5
+ }
+ } else {
+ // 非淋巴结靶病灶 箭头工具,长径记录为5mm
+ if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为太小的非淋巴结靶病灶需使用箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg26'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ } else if (measureData && measureData.type === 'ArrowAnnotate') {
+ const shortId = this.getQuestionId(1)
+ this.$set(this.questionForm, shortId, 5)
+ lesionShort = 5
+ const lengthId = this.getQuestionId(0)
+ this.$set(this.questionForm, lengthId, 5)
+ lesionLength = 5
+ }
+ }
+ }
- var params = {
- computationTrigger: -2,
- questionId: this.parentQsId,
- rowId: this.questionForm.RowId,
- rowIndex: this.answers.RowIndex,
+ // 靶病灶且状态为无法评估(2)
+ if (this.lesionType === 0 && lesionState === 2) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 不需要添加标记
+ if (measureData) {
+ // 评估状态为无法评估的淋巴结靶病灶不需要添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg27'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结靶病灶 不需要添加标记
+ if (measureData) {
+ // 状态为无法评估的非淋巴结靶病灶不需要添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg28'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 靶病灶且状态为消失(3)
+ if (this.lesionType === 0 && lesionState === 3) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 使用箭头工具
+ if (!(measureData && (measureData.type === 'ArrowAnnotate' || measureData.type === 'Bidirectional'))) {
+ // 评估状态为消失的淋巴结靶病灶需使用箭头工具或长短径工具添加标记!
+ this.$confirm(this.$t('trials:lugano:message:validState5'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ } else if (measureData && measureData.type === 'Bidirectional' && lesionLength > 15) {
+ // 评估状态为消失的淋巴结靶病灶,短径应不大于15mm!
+ this.$confirm(this.$t('trials:lugano:message:validState6'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ // if (!(measureData && (measureData.type === 'Bidirectional' && lesionShort < 10))) {
+ // // `评估状态为消失的淋巴结靶病灶需使用长短径工具添加标记,且短径需小于10mm!`
+ // this.$confirm(this.$t('trials:reading:warnning:msg29'), {
+ // type: 'warning',
+ // showCancelButton: false,
+ // callback: action => {}
+ // })
+ // loading.close()
+ // return
+ // }
+ } else {
+ // 非淋巴结靶病灶 箭头工具
+ if (!(measureData && measureData.type === 'ArrowAnnotate')) {
+ // 评估状态为消失的非淋巴结靶病灶只能使用箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg30'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ // else if (measureData && measureData.type === 'ArrowAnnotate') {
+ // const lId = this.getQuestionId(0)
+ // this.$set(this.questionForm, lId, 0)
+ // lesionLength = 0
+ // }
+ }
+ if (measureData && measureData.type === 'ArrowAnnotate') {
+ const shortId = this.getQuestionId(1)
+ this.$set(this.questionForm, shortId, null)
+ lesionShort = null
+ const lengthId = this.getQuestionId(0)
+ this.$set(this.questionForm, lengthId, null)
+ lesionLength = null
+ }
+ }
+
+ // 靶病灶且状态为疾病进展 (4)
+ if (this.lesionType === 0 && lesionState === 4) {
+ if (lymphNodes === 1) {
+ if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 15)) {
+ // 状态为“疾病进展”的淋巴结靶病灶,长径应大于15 mm,请使用长短径测量工具添加标记。
+ this.$confirm(this.$t('trials:lugano:message:validState7'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结靶病灶 直径测量工具
+ if (!(measureData && measureData.type === 'Bidirectional' && lesionLength > 10)) {
+ // 状态为“疾病进展”的非淋巴结靶病灶,长径应大于10 mm,请使用长短径测量工具添加标记。
+ this.$confirm(this.$t('trials:lugano:message:validState8'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 非靶病灶且状态为存在(0)
+ if (this.lesionType === 1 && lesionState === 0) {
+ if (lymphNodes === 1) {
+ // 淋巴结非靶病灶 必须使用长短径测量工具、箭头工具
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
+ // 评估状态为存在的淋巴结非靶病灶需使用长短径测量工具或箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg31'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结非靶病灶 直径测量工具、箭头工具
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
+ // 评估状态为存在的非淋巴结非靶病灶需使用长短径测量工具或箭头工具添加标记!
+ this.$confirm(this.$t('trials:lugano:message:validState9'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 非靶病灶且状态为显著增大(1)
+ if (this.lesionType === 1 && lesionState === 1) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
+ // `评估状态为显著增大的淋巴结非靶病灶需使用长短径测量工具或矩形工具添加标记!`
+ this.$confirm(this.$t('trials:reading:warnning:msg33'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结非靶病灶 矩形工具
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'RectangleRoi'))) {
+ // 评估状态为显著增大的非淋巴结非靶病灶需使用矩形工具添加标记!
+ this.$confirm(this.$t('trials:lugano:message:validState10'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 非靶病灶且状态为无法评估(2)
+ if (this.lesionType === 1 && lesionState === 2) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 无标记
+ if (measureData) {
+ // 评估状态为无法评估的淋巴结非靶病灶不需要添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg35'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结非靶病灶 无标记
+ if (measureData) {
+ // 评估状态为无法评估的非淋巴结非靶病灶不需要添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg36'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 非靶病灶且状态为消失(3)
+ if (this.lesionType === 1 && lesionState === 3) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
+ if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为消失的淋巴结非靶病灶需使用箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg37'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结非靶病灶 箭头工具
+ if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为消失的非淋巴结非靶病灶需使用箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg38'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 新病灶且状态为存在(0)
+ if (this.lesionType === 2 && lesionState === 0) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为存在的淋巴结新病灶需使用长短径测量工具或箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg39'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结非靶病灶 直径测量工具、箭头工具
+ if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为存在的非淋巴结新病灶需使用长短径测量工具或箭头工具添加标记!
+ this.$confirm(this.$t('trials:lugano:message:validState11'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 新病灶且状态为疑似 不限制(1)
+ // if (this.lesionType === 2 && lesionState === 1) {
+ // if (lymphNodes === 1) {
+ // // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
+ // if (!(measureData && (measureData.type === 'Bidirectional' || measureData.type === 'ArrowAnnotate'))) {
+ // // 评估状态为疑似的淋巴结新病灶需使用长短径测量工具或箭头工具添加标记!
+ // this.$confirm(this.$t('trials:reading:warnning:msg41'), {
+ // type: 'warning',
+ // showCancelButton: false,
+ // callback: action => {}
+ // })
+ // loading.close()
+ // return
+ // }
+ // } else {
+ // // 非淋巴结非靶病灶 直径测量工具、箭头工具
+ // if (!(measureData && (measureData.type === 'Length' || measureData.type === 'ArrowAnnotate'))) {
+ // // `评估状态为疑似的非淋巴结新病灶需使用直径测量工具或箭头工具添加标记!`
+ // this.$confirm(this.$t('trials:reading:warnning:msg42'), {
+ // type: 'warning',
+ // showCancelButton: false,
+ // callback: action => {}
+ // })
+ // loading.close()
+ // return
+ // }
+ // }
+ // }
+
+ // 新病灶且状态为无法评估(2)
+ if (this.lesionType === 2 && lesionState === 2) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
+ if (measureData) {
+ // `评估状态为无法评估的淋巴结新病灶不需要添加标记!`
+ this.$confirm(this.$t('trials:reading:warnning:msg43'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 非淋巴结非靶病灶 直径测量工具、箭头工具
+ if (measureData) {
+ // 评估状态为无法评估的非淋巴结新病灶不需要添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg44'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+
+ // 新病灶且状态为消失(3)
+ if (this.lesionType === 2 && lesionState === 3) {
+ if (lymphNodes === 1) {
+ // 淋巴结靶病灶 必须使用长短径测量工具、箭头工具
+ if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为消失的淋巴结新病灶需使用箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg45'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ } else {
+ // 箭头工具
+ if (!(measureData && (measureData.type === 'ArrowAnnotate'))) {
+ // 评估状态为消失的非淋巴结新病灶需使用箭头工具添加标记!
+ this.$confirm(this.$t('trials:reading:warnning:msg46'), {
+ type: 'warning',
+ showCancelButton: false,
+ callback: action => {}
+ })
+ loading.close()
+ return
+ }
+ }
+ }
+ }
+ DicomEvent.$emit('getScreenshots', { questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex, visitTaskId: this.visitTaskId, lesionName: this.lesionMark, lesionType: this.lesionType, isMarked: !!measureData }, async val => {
+ // 靶病灶状态为0(存在)时,一定存在长径或者长短径(长径、十字线 )
+ // 普通靶病灶:长径大于10mm且不小于2倍层厚(基线校验)
+ // 淋巴结靶病灶:短径大于15mm且不小于2倍层厚(基线校验)
+ var picturePath = ''
+ if (val && measureData && this.questionForm.IsDicomReading) {
+ var pictureObj = await this.uploadScreenshots(`${new Date().getTime()}`, val)
+ picturePath = pictureObj.isSuccess ? this.$getObjectName(pictureObj.result.url) : ''
+ }
+ var answers = []
+ var reg = new RegExp(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)
+ for (const k in this.questionForm) {
+ if (reg.test(k)) {
+ if (answers.findIndex(i => i.tableQuestionId === k) === -1) {
+ answers.push({ tableQuestionId: k, answer: this.questionForm[k] })
+ }
+ }
+ }
+
+ var params = {
+ computationTrigger: -2,
+ questionId: this.parentQsId,
+ rowId: this.questionForm.RowId,
+ rowIndex: this.answers.RowIndex,
+ visitTaskId: this.visitTaskId,
+ trialId: this.trialId,
+ measureData: measureData ? JSON.stringify(measureData) : '',
+ answerList: answers,
+ isCanEditPosition: this.questionForm.IsCanEditPosition,
+ studyId: measureData ? this.questionForm.MeasureData.studyId : '',
+ seriesId: measureData ? this.questionForm.MeasureData.seriesId : '',
+ instanceId: measureData ? this.questionForm.MeasureData.instanceId : '',
+ numberOfFrames: measureData && !isNaN(parseInt(this.questionForm.MeasureData.frame)) ? parseInt(this.questionForm.MeasureData.frame) : 0,
+ picturePath: picturePath,
+ organInfoId: this.questionForm.OrganInfoId,
+ markTool: measureData ? measureData.type : ''
+ }
+ if (this.questionForm.IsDicomReading === false) {
+ params.isDicomReading = false
+ }
+ if (this.deleteInfo) {
+ var param = {
visitTaskId: this.visitTaskId,
- trialId: this.trialId,
- measureData: measureData ? JSON.stringify(measureData) : '',
- answerList: answers,
- isCanEditPosition: this.questionForm.IsCanEditPosition,
- studyId: measureData ? this.questionForm.MeasureData.studyId : '',
- seriesId: measureData ? this.questionForm.MeasureData.seriesId : '',
- instanceId: measureData ? this.questionForm.MeasureData.instanceId : '',
- numberOfFrames: measureData && !isNaN(parseInt(this.questionForm.MeasureData.frame)) ? parseInt(this.questionForm.MeasureData.frame) : 0,
- picturePath: picturePath,
- organInfoId: this.questionForm.OrganInfoId,
- markTool: measureData ? measureData.type : ''
+ questionId: this.deleteInfo.questionId,
+ rowId: this.deleteInfo.rowId
}
- if (this.questionForm.IsDicomReading === false) {
- params.isDicomReading = false
- }
- if (this.deleteInfo) {
- await this.deleteOldLesion(this.deleteInfo.questionId, this.deleteInfo.rowId)
- this.deleteInfo = null
- params.rowId = ''
- }
- submitTableQuestion(params).then(async res => {
+ await deleteReadingRowAnswer(param)
+ this.deleteInfo = null
+ params.rowId = ''
+ }
+ try {
+ const res = await submitTableQuestion(params)
+ if (res.IsSuccess) {
// 保存成功!
this.$message.success(this.$t('common:message:savedSuccessfully'))
this.currentMarkTool = measureData ? measureData.type : ''
- // saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断);2:已保存,信息完整
-
this.$set(this.questionForm, 'saveTypeEnum', 2)
this.originalQuestionForm = { ...this.questionForm }
var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = isLymphLesion ? parseInt(isLymphLesion) : null
var lesionOrgan = this.getQuestionVal(6)
this.$set(this.questionForm, 'RowId', res.Result.RowId)
const lesionPart = this.getQuestionVal(8)
- const lesionState = Number(this.getQuestionVal(7))
+ const lesionState = this.getQuestionVal(7)
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, lesionShort, saveTypeEnum: this.questionForm.saveTypeEnum, lesionLength, lesionState, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
-
- // await store.dispatch('reading/refreshMeasuredData', this.visitTaskId)
- // DicomEvent.$emit('getMeasureData')
this.$emit('close')
DicomEvent.$emit('readingPageUpdate', {})
DicomEvent.$emit('getReportInfo', true)
DicomEvent.$emit('setMeasuredToolsPassive')
- loading.close()
if (parseInt(this.answers.SplitOrMergeType) === 0) {
this.$emit('getReadingQuestionAndAnswer')
}
- }).catch(() => { loading.close() })
- })
+ }
+ loading.close()
+ } catch (e) {
+ loading.close()
+ }
})
},
- handleDeleteMeasureData() {
+ async handleDeleteMeasureData() {
// 是否确认清除标记?
- this.$confirm(this.$t('trials:reading:warnning:msg47'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(async() => {
- this.stateDisabled = false
- this.organList = []
- await this.getOrganInfoList()
- // 重置长短径 和 状态
- var lengId = this.getQuestionId(0)
- this.$set(this.questionForm, lengId, '')
- var shortId = this.getQuestionId(1)
- this.$set(this.questionForm, shortId, '')
- var stateId = this.getQuestionId(7)
- this.$set(this.questionForm, stateId, '')
- // saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断)
- if (this.questionForm.RowId) {
- this.$set(this.questionForm, 'saveTypeEnum', 1)
- } else {
- this.$set(this.questionForm, 'saveTypeEnum', 0)
- }
- await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
- DicomEvent.$emit('getMeasureData')
- // Store.$emit('updateImage', this.questionForm.MeasureData.instanceId)
- var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
- const lesionPart = this.getQuestionVal(8)
- const lesionOrgan = this.getQuestionVal(6)
- const lesionLength = ''
- const lesionShort = ''
- const lesionState = !isNaN(parseInt(this.getQuestionVal(7))) ? parseInt(this.getQuestionVal(7)) : ''
+ const confirm = await this.$confirm(
+ this.$t('trials:reading:warnning:msg47'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ this.stateDisabled = false
+ this.organList = []
+ await this.getOrganInfoList()
+ // 重置长短径 和 状态
+ var lengId = this.getQuestionId(0)
+ this.$set(this.questionForm, lengId, '')
+ var shortId = this.getQuestionId(1)
+ this.$set(this.questionForm, shortId, '')
+ var stateId = this.getQuestionId(7)
+ this.$set(this.questionForm, stateId, '')
+ // saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断)
+ if (this.questionForm.RowId) {
+ this.$set(this.questionForm, 'saveTypeEnum', 1)
+ } else {
+ this.$set(this.questionForm, 'saveTypeEnum', 0)
+ }
+ await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
+ DicomEvent.$emit('getMeasureData')
+ // Store.$emit('updateImage', this.questionForm.MeasureData.instanceId)
+ const isLymphLesion = this.getQuestionVal(2)
+ const lesionPart = this.getQuestionVal(8)
+ const lesionOrgan = this.getQuestionVal(6)
+ const lesionLength = ''
+ const lesionShort = ''
+ const lesionState = this.getQuestionVal(7)
- if (!this.questionForm.IsDicomReading) {
- DicomEvent.$emit('removeNoneDicomMeasureData', this.questionForm.MeasureData)
- }
- this.$set(this.questionForm, 'IsDicomReading', true)
+ if (!this.questionForm.IsDicomReading) {
+ DicomEvent.$emit('removeNoneDicomMeasureData', this.questionForm.MeasureData)
+ }
+ this.$set(this.questionForm, 'IsDicomReading', true)
- this.$set(this.questionForm, 'MeasureData', '')
- let anwsers = null
- if (this.answers.measureObj) {
- anwsers = Object.assign({ measureObj: '' }, this.questionForm)
- } else {
- anwsers = Object.assign({}, this.questionForm)
- }
- this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, lesionShort, lesionState, saveTypeEnum: this.questionForm.saveTypeEnum, lesionLength, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
- if (this.lesionType === 0) {
- this.calculatePPD()
- }
- DicomEvent.$emit('refreshStudyListMeasureData')
- })
- .catch(() => {})
+ this.$set(this.questionForm, 'MeasureData', '')
+ let anwsers = null
+ if (this.answers.measureObj) {
+ anwsers = Object.assign({ measureObj: '' }, this.questionForm)
+ } else {
+ anwsers = Object.assign({}, this.questionForm)
+ }
+ this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, lesionShort, lesionState, saveTypeEnum: this.questionForm.saveTypeEnum, lesionLength, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: anwsers })
+ if (this.lesionType === 0) {
+ this.calculatePPD()
+ }
+ DicomEvent.$emit('refreshStudyListMeasureData')
},
async handleDelete() {
let message = this.$t('trials:reading:warnning:msg48')
@@ -1814,90 +1749,71 @@ export default {
message = this.$t('trials:reading:warnning:msg58')
}
}
-
- // 是否确认删除?
- this.$confirm(message, {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(async() => {
- if (this.questionForm.RowId) {
- const loading = this.$loading({ fullscreen: true })
- var param = {
- visitTaskId: this.visitTaskId,
- questionId: this.parentQsId,
- rowId: this.questionForm.RowId
- }
- deleteReadingRowAnswer(param)
- .then(async res => {
- loading.close()
- if (res.IsSuccess) {
- // this.$emit('getReadingQuestionAndAnswer')
- if (this.questionForm.IsDicomReading && this.questionForm.MeasureData) {
- await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
- }
- // await store.dispatch('reading/removeReadingQuestionAndAnswer', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
- // DicomEvent.$emit('getMeasureData')
- if (!this.questionForm.IsDicomReading && this.questionForm.MeasureData) {
- DicomEvent.$emit('removeNoneDicomMeasureData', this.questionForm.MeasureData)
- }
- this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
- DicomEvent.$emit('getReportInfo', true)
- DicomEvent.$emit('readingPageUpdate', {})
- // if (!this.questionForm.IsDicomReading) {
- // DicomEvent.$emit('removeNoneDicomMeasureData', this.questionForm.MeasureData)
- // }
- // '删除成功!'
- this.$message.success(this.$t('common:message:deletedSuccessfully'))
- loading.close()
- }
- }).catch(() => { loading.close() })
- } else {
- // const loading = this.$loading({ fullscreen: true })
- // 移除新建病灶并关闭窗口
- if (this.questionForm.MeasureData && this.questionForm.IsDicomReading) {
+ const confirm = await this.$confirm(
+ message,
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ if (this.questionForm.RowId) {
+ const loading = this.$loading({ fullscreen: true })
+ var param = {
+ visitTaskId: this.visitTaskId,
+ questionId: this.parentQsId,
+ rowId: this.questionForm.RowId
+ }
+ try {
+ const res = await deleteReadingRowAnswer(param)
+ if (res.IsSuccess) {
+ if (this.questionForm.IsDicomReading && this.questionForm.MeasureData) {
await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
}
- // DicomEvent.$emit('getMeasureData')
if (!this.questionForm.IsDicomReading && this.questionForm.MeasureData) {
DicomEvent.$emit('removeNoneDicomMeasureData', this.questionForm.MeasureData)
}
this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
- // loading.close()
+ DicomEvent.$emit('getReportInfo', true)
+ DicomEvent.$emit('readingPageUpdate', {})
+ // '删除成功!'
+ this.$message.success(this.$t('common:message:deletedSuccessfully'))
}
- DicomEvent.$emit('refreshStudyListMeasureData')
- })
+ loading.close()
+ } catch (e) {
+ console.log(e)
+ loading.close()
+ }
+ } else {
+ // 移除新建病灶并关闭窗口
+ if (this.questionForm.MeasureData && this.questionForm.IsDicomReading) {
+ await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
+ }
+ if (!this.questionForm.IsDicomReading && this.questionForm.MeasureData) {
+ DicomEvent.$emit('removeNoneDicomMeasureData', this.questionForm.MeasureData)
+ }
+ this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
+ }
+ DicomEvent.$emit('refreshStudyListMeasureData')
},
- handleClose() {
+ async handleClose() {
if (!this.questionForm.RowId) {
// '当前病灶为新建病灶,未保存。如果关闭窗口,将会删除病灶信息,是否继续?'
- this.$confirm(this.$t('trials:reading:warnning:msg49'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(async() => {
- // 移除新建病灶并关闭窗口
- if (this.questionForm.MeasureData) {
- await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
- }
- // await store.dispatch('reading/removeReadingQuestionAndAnswer', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
- DicomEvent.$emit('getMeasureData')
- this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
- })
- .catch(() => {})
+ const confirm = await this.$confirm(
+ this.$t('trials:reading:warnning:msg49'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ if (this.questionForm.MeasureData) {
+ await store.dispatch('reading/removeMeasuredData', { visitTaskId: this.visitTaskId, measureData: this.questionForm.MeasureData, questionId: this.parentQsId, rowIndex: this.questionForm.RowIndex })
+ }
+ DicomEvent.$emit('getMeasureData')
+ this.$emit('close', { lesionType: this.lesionType, rowIndex: this.rowIndex, visitTaskId: this.visitTaskId })
} else {
- // saveTypeEnum 0:未保存过(新建病灶);1:已保存,信息不完整(随访初始化病灶/分裂病灶,通过状态判断)
-
if (this.questionForm.saveTypeEnum === 1) {
- // // 当前病灶信息有更新,未保存,是否继续?
- // this.$confirm(this.$t('trials:reading:warnning:msg50'), {
- // type: 'warning',
- // distinguishCancelAndClose: true
- // })
- // .then(() => {
- // this.$emit('close')
- // })
- // .catch(() => {})
this.$emit('close')
} else {
this.$emit('close')
@@ -1913,13 +1829,12 @@ export default {
const stateId = this.getQuestionId(7)
this.$set(this.questionForm, stateId, 2)
}
- var isLymphLesion = this.getQuestionVal(2)
- isLymphLesion = !isNaN(parseInt(isLymphLesion)) ? parseInt(isLymphLesion) : null
+ const isLymphLesion = this.getQuestionVal(2)
const lesionPart = this.getQuestionVal(8)
const lesionOrgan = this.getQuestionVal(6)
- const lesionLength = !isNaN(parseFloat(this.getQuestionVal(0))) ? this.getQuestionVal(0) : ''
- const lesionShort = !isNaN(parseFloat(this.getQuestionVal(1))) ? this.getQuestionVal(1) : ''
- const lesionState = !isNaN(parseInt(this.getQuestionVal(7))) ? parseInt(this.getQuestionVal(7)) : ''
+ const lesionLength = this.getQuestionVal(0)
+ const lesionShort = this.getQuestionVal(1)
+ const lesionState = this.getQuestionVal(7)
this.$emit('resetQuestions', { isLymphLesion, lesionPart, lesionOrgan, lesionShort, lesionState, saveTypeEnum: this.questionForm.saveTypeEnum, lesionLength, rowIndex: this.rowIndex, questionId: this.parentQsId, anwsers: this.questionForm })
}
}
diff --git a/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionList.vue b/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionList.vue
index 4e13e38d..f8659653 100644
--- a/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionList.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/components/Lugano/QuestionList.vue
@@ -2,10 +2,20 @@
-
- {{ subjectCode }}
- {{ taskBlindName }}
-
+
+
+ {{ subjectCode }}
+ {{ taskBlindName }}
+
+
+
+
+
+
+
@@ -216,6 +226,7 @@
@@ -368,6 +404,22 @@ export default {
.container{
padding: 10px;
+ .basic-info{
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ h3{
+ color: #ddd;
+ padding: 5px 0px;
+ margin: 0;
+ }
+ i{
+ color: #fff;
+ font-size: 22px;
+ font-weight: bold;
+ cursor: pointer;
+ }
+ }
}
.title{
padding: 5px;
diff --git a/src/views/trials/trials-panel/reading/dicoms/customize/CustomizeStudyList.vue b/src/views/trials/trials-panel/reading/dicoms/customize/CustomizeStudyList.vue
index 6dfe9c03..0184a1f9 100644
--- a/src/views/trials/trials-panel/reading/dicoms/customize/CustomizeStudyList.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/customize/CustomizeStudyList.vue
@@ -257,7 +257,10 @@ export default {
this.subjectCode = localStorage.getItem('subjectCode')
var digitPlaces = Number(localStorage.getItem('digitPlaces'))
this.digitPlaces = digitPlaces === -1 ? this.digitPlaces : digitPlaces
-
+ DicomEvent.$on('refreshStudyListMeasureData', () => {
+ var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === this.visitTaskId)
+ this.measureData = this.visitTaskList[idx].MeasureData
+ })
// DicomEvent.$on('setReadingState', readingTaskState => {
// var idx = this.visitTaskList.findIndex(i => i.VisitTaskId === this.visitTaskId)
// if (idx > -1) {
@@ -271,6 +274,7 @@ export default {
window.addEventListener('beforeunload', e => {
cornerstone.imageCache.purgeCache()
})
+
},
beforeDestroy() {
cornerstone.imageCache.purgeCache()
diff --git a/src/views/trials/trials-panel/reading/dicoms/customize/Hotkeys.vue b/src/views/trials/trials-panel/reading/dicoms/customize/Hotkeys.vue
index d7f6894e..6b98939a 100644
--- a/src/views/trials/trials-panel/reading/dicoms/customize/Hotkeys.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/customize/Hotkeys.vue
@@ -57,10 +57,11 @@ export default {
this.getHotkeys()
},
methods: {
- getHotkeys(isReset = false) {
+ async getHotkeys(isReset = false) {
this.loading = true
this.hotKeyList = []
- getDoctorShortcutKey({ imageToolType: this.readingTool }).then(res => {
+ try{
+ let res = await getDoctorShortcutKey({ imageToolType: this.readingTool })
res.Result.map(item => {
this.hotKeyList.push({ id: item.Id, keys: { controlKey: { altKey: item.AltKey, ctrlKey: item.CtrlKey, shiftKey: item.ShiftKey, metaKey: item.MetaKey, key: item.Keyboardkey, code: item.Code }, text: item.Text }, label: item.ShortcutKeyEnum })
})
@@ -68,11 +69,12 @@ export default {
this.$emit('reset', this.hotKeyList)
}
this.loading = false
- }).catch(() => {
+ }catch(e){
this.loading = false
- })
+ }
+
},
- handleSave() {
+ async handleSave() {
this.loading = true
var params = {
imageToolType: this.readingTool,
@@ -93,28 +95,34 @@ export default {
)
})
params.shortcutKeyList = shortcutKeyList
- setShortcutKey(params).then(res => {
+ try {
+ await setShortcutKey(params)
this.$emit('reset', this.hotKeyList)
this.$emit('close')
this.loading = false
- }).catch(() => {
+ }catch(e){
this.loading = false
- })
+ }
},
- handleReset() {
+ async handleReset() {
// '是否确认重置?'
- this.$confirm(this.$t('trials:hotkeys:message:confirmReset'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(() => {
- this.loading = true
- restoreDefaultShortcutKey({ imageToolType: this.readingTool }).then(res => {
- this.$message.success(this.$t('trials:hotkeys:message:resetSuccessfully')) // '重置成功!'
- this.getHotkeys(true)
- }).catch(() => { this.loading = false })
- })
- .catch(action => {})
+ const confirm = await this.$confirm(
+ this.$t('trials:hotkeys:message:confirmReset'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ this.loading = true
+ try{
+ await restoreDefaultShortcutKey({ imageToolType: this.readingTool })
+ this.$message.success(this.$t('trials:hotkeys:message:resetSuccessfully')) // '重置成功!'
+ this.getHotkeys(true)
+ this.loading = false
+ }catch(e){
+ this.loading = false
+ }
},
handleHotkeyVerify(hotkey) {
for (const item of this.hotKeyList) {
diff --git a/src/views/trials/trials-panel/reading/dicoms/customize/Manuals.vue b/src/views/trials/trials-panel/reading/dicoms/customize/Manuals.vue
index 3cd5b590..bab4f6e9 100644
--- a/src/views/trials/trials-panel/reading/dicoms/customize/Manuals.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/customize/Manuals.vue
@@ -51,19 +51,22 @@ export default {
this.getList()
},
methods: {
- getList() {
+ async getList() {
this.loading = true
var param = {
trialId: this.trialId
}
- getManualList(param).then(res => {
+ try{
+ let res = await getManualList(param)
this.fileList = res.Result
if (this.fileList.length > 0) {
this.preview(this.fileList[0])
}
this.loading = false
- }).catch(() => { this.loading = false })
+ }catch(e){
+ this.loading = false
+ }
},
preview(file) {
this.$set(this.selected, 'filePath', file.Path)
diff --git a/src/views/trials/trials-panel/reading/dicoms/customize/Others.vue b/src/views/trials/trials-panel/reading/dicoms/customize/Others.vue
index f0d62385..36e408e9 100644
--- a/src/views/trials/trials-panel/reading/dicoms/customize/Others.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/customize/Others.vue
@@ -3,7 +3,7 @@
+
+
+
+
Add
+ >{{ $t('common:button:new') }}
+
Edit
+ >{{ $t('common:button:edit') }}
+
Delete
+ >{{ $t('common:button:delete') }}
@@ -77,16 +83,19 @@ export default {
this.getWL()
},
methods: {
- getWL() {
+ async getWL() {
this.loading = true
- getUserWLTemplateList().then(res => {
+ try {
+ const res = await getUserWLTemplateList()
this.tableData = res.Result
this.loading = false
this.$emit('getWwcTpl')
- }).catch(() => { this.loading = false })
+ } catch (e) {
+ this.loading = false
+ }
},
handleAdd() {
- this.customWwc.title = this.$t('common:button:add')
+ this.customWwc.title = this.$t('common:button:new')
this.row = {}
this.customWwc.visible = true
},
@@ -95,20 +104,27 @@ export default {
this.row = Object.assign({}, row)
this.customWwc.visible = true
},
- handleDelete(row) {
- var msg = this.$t('trials:staffResearch:message:confirmDel')
- this.$confirm(msg, {
- type: 'warning',
- distinguishCancelAndClose: true
- }).then(() => {
- this.loading = true
- deleteUserWLTemplate(row.Id).then(res => {
- this.loading = false
- // 删除成功
- this.$message.success(this.$t('common:message:deletedSuccessfully'))
- this.getWL()
- }).catch(() => { this.loading = false })
- })
+ async handleDelete(row) {
+ // '是否确认删除?'
+ var msg = this.$t('trials:reading:wlTemplate:delete')
+ const confirm = await this.$confirm(
+ msg,
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm !== 'confirm') return
+ this.loading = true
+ try {
+ await deleteUserWLTemplate(row.Id)
+ this.loading = false
+ // 删除成功
+ this.$message.success(this.$t('common:message:deletedSuccessfully'))
+ this.getWL()
+ } catch (e) {
+ this.loading = false
+ }
}
}
}
diff --git a/src/views/trials/trials-panel/reading/dicoms/customize/WLForm.vue b/src/views/trials/trials-panel/reading/dicoms/customize/WLForm.vue
index 98aa912b..90344f17 100644
--- a/src/views/trials/trials-panel/reading/dicoms/customize/WLForm.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/customize/WLForm.vue
@@ -8,14 +8,16 @@
size="small"
>
-
+
-
-
+
+
+
-
-
+
+
+
@@ -81,24 +83,23 @@ export default {
}
},
methods: {
- handleSave() {
- this.$refs.wlForm.validate((valid) => {
- if (valid) {
- this.loading = true
- addOrUpdateUserWLTemplate(this.form).then((res) => {
- this.loading = false
- this.$emit('getWL')
- this.$emit('close')
- if (this.form.Id) {
- this.$message.success(this.$t('common:message:savedSuccessfully'))
- } else {
- this.$message.success(this.$t('common:message:addedSuccessfully'))
- }
- }).catch(() => {
- this.loading = false
- })
+ async handleSave() {
+ const valid = await this.$refs.wlForm.validate()
+ if (!valid) return
+ this.loading = true
+ try {
+ await addOrUpdateUserWLTemplate(this.form)
+ this.loading = false
+ this.$emit('getWL')
+ this.$emit('close')
+ if (this.form.Id) {
+ this.$message.success(this.$t('common:message:savedSuccessfully'))
+ } else {
+ this.$message.success(this.$t('common:message:addedSuccessfully'))
}
- })
+ } catch (e) {
+ this.loading = false
+ }
},
handleCancel() {
this.$emit('close')
diff --git a/src/views/trials/trials-panel/reading/dicoms/index.vue b/src/views/trials/trials-panel/reading/dicoms/index.vue
index 1c4cd72c..e353be3f 100644
--- a/src/views/trials/trials-panel/reading/dicoms/index.vue
+++ b/src/views/trials/trials-panel/reading/dicoms/index.vue
@@ -475,14 +475,17 @@ export default {
})
})
},
- handleConfirmCD() {
+ async handleConfirmCD() {
this.loading = true
var visitTaskId = this.visitTaskId
- readClinicalData({ visitTaskId }).then(res => {
+ try {
+ await readClinicalData({ visitTaskId })
this.loading = false
this.dialogVisible = false
this.isReadClinicalData = true
- }).catch(() => { this.loading = false })
+ } catch (e) {
+ this.loading = false
+ }
},
previewCD() {
this.closeCDVisible = true
diff --git a/src/views/trials/trials-panel/reading/global-review/components/IRecistTable.vue b/src/views/trials/trials-panel/reading/global-review/components/IRecistTable.vue
index 93e6589a..8398ff07 100644
--- a/src/views/trials/trials-panel/reading/global-review/components/IRecistTable.vue
+++ b/src/views/trials/trials-panel/reading/global-review/components/IRecistTable.vue
@@ -372,9 +372,10 @@ export default {
return lesion ? lesion.Count : 0
},
handleSave(isPrompt = true) {
- return new Promise((resolve, reject) => {
- this.$refs['globalRuleForm'].validate(valid => {
- if (valid) {
+ return new Promise(async (resolve, reject) => {
+ let valid = await this.$refs['globalRuleForm'].validate()
+
+ if (valid) {
this.loading = true
var visitTaskAnswerList = []
this.globalForm.taskList.forEach((item, index) => {
@@ -403,7 +404,8 @@ export default {
trialId: this.globalInfo.trialId,
visitTaskAnswerList
}
- batchSubmitGlobalReadingInfo(params).then(res => {
+ try {
+ await batchSubmitGlobalReadingInfo(params)
this.loading = false
if (isPrompt) {
console.log(isPrompt)
@@ -411,14 +413,13 @@ export default {
}
this.$emit('getGlInfo')
resolve()
- }).catch(() => {
+ } catch (e) {
this.loading = false
reject()
- })
+ }
} else {
reject()
}
- })
})
},
getBeforeAnswer(qsId, row) {
diff --git a/src/views/trials/trials-panel/reading/global-review/components/LuganoTable.vue b/src/views/trials/trials-panel/reading/global-review/components/LuganoTable.vue
index cc1e6d96..5f6d0e95 100644
--- a/src/views/trials/trials-panel/reading/global-review/components/LuganoTable.vue
+++ b/src/views/trials/trials-panel/reading/global-review/components/LuganoTable.vue
@@ -376,9 +376,9 @@ export default {
return lesion ? lesion.Count : 0
},
handleSave(isPrompt = true) {
- return new Promise((resolve, reject) => {
- this.$refs['globalRuleForm'].validate(valid => {
- if (valid) {
+ return new Promise(async (resolve, reject) => {
+ let valid = await this.$refs['globalRuleForm'].validate()
+ if (valid) {
this.loading = true
var visitTaskAnswerList = []
this.globalForm.taskList.forEach((item, index) => {
@@ -407,7 +407,8 @@ export default {
trialId: this.globalInfo.trialId,
visitTaskAnswerList
}
- batchSubmitGlobalReadingInfo(params).then(res => {
+ try {
+ await batchSubmitGlobalReadingInfo(params)
this.loading = false
if (isPrompt) {
console.log(isPrompt)
@@ -415,14 +416,14 @@ export default {
}
this.$emit('getGlInfo')
resolve()
- }).catch(() => {
+ } catch (e) {
this.loading = false
reject()
- })
+ }
} else {
reject()
}
- })
+
})
},
getBeforeAnswer(qsId, row) {
diff --git a/src/views/trials/trials-panel/reading/global-review/components/PCWG3Table.vue b/src/views/trials/trials-panel/reading/global-review/components/PCWG3Table.vue
index 52392390..fe2ae121 100644
--- a/src/views/trials/trials-panel/reading/global-review/components/PCWG3Table.vue
+++ b/src/views/trials/trials-panel/reading/global-review/components/PCWG3Table.vue
@@ -219,9 +219,9 @@ export default {
this.$emit('handleView', row)
},
handleSave(isPrompt = true) {
- return new Promise((resolve, reject) => {
- this.$refs['globalRuleForm'].validate(valid => {
- if (valid) {
+ return new Promise(async (resolve, reject) => {
+ let valid = await this.$refs['globalRuleForm'].validate()
+ if (valid) {
this.loading = true
var visitTaskAnswerList = []
this.globalForm.taskList.forEach((item, index) => {
@@ -247,21 +247,21 @@ export default {
trialId: this.globalInfo.trialId,
visitTaskAnswerList
}
- batchSubmitGlobalReadingInfo(params).then(res => {
+ try {
+ await batchSubmitGlobalReadingInfo(params)
this.loading = false
if (isPrompt) {
this.$message.success(this.$t('common:message:savedSuccessfully'))
}
this.$emit('getGlInfo')
resolve()
- }).catch(() => {
+ } catch (e) {
this.loading = false
reject()
- })
+ }
} else {
reject()
}
- })
})
}
}
diff --git a/src/views/trials/trials-panel/reading/global-review/components/RecistBMTable.vue b/src/views/trials/trials-panel/reading/global-review/components/RecistBMTable.vue
index ff94183a..ed74baf9 100644
--- a/src/views/trials/trials-panel/reading/global-review/components/RecistBMTable.vue
+++ b/src/views/trials/trials-panel/reading/global-review/components/RecistBMTable.vue
@@ -369,9 +369,9 @@ export default {
return lesion ? lesion.Count : 0
},
handleSave(isPrompt = true) {
- return new Promise((resolve, reject) => {
- this.$refs['globalRuleForm'].validate(valid => {
- if (valid) {
+ return new Promise(async(resolve, reject) => {
+ let valid = await this.$refs['globalRuleForm'].validate()
+ if (valid) {
this.loading = true
var visitTaskAnswerList = []
this.globalForm.taskList.forEach((item, index) => {
@@ -400,7 +400,8 @@ export default {
trialId: this.globalInfo.trialId,
visitTaskAnswerList
}
- batchSubmitGlobalReadingInfo(params).then(res => {
+ try {
+ await batchSubmitGlobalReadingInfo(params)
this.loading = false
if (isPrompt) {
console.log(isPrompt)
@@ -408,14 +409,13 @@ export default {
}
this.$emit('getGlInfo')
resolve()
- }).catch(() => {
+ } catch (e) {
this.loading = false
reject()
- })
+ }
} else {
reject()
}
- })
})
},
getBeforeAnswer(qsId, row) {
diff --git a/src/views/trials/trials-panel/reading/global-review/components/RecistTable.vue b/src/views/trials/trials-panel/reading/global-review/components/RecistTable.vue
index d5bf2b1a..3bf48212 100644
--- a/src/views/trials/trials-panel/reading/global-review/components/RecistTable.vue
+++ b/src/views/trials/trials-panel/reading/global-review/components/RecistTable.vue
@@ -363,9 +363,9 @@ export default {
return lesion ? lesion.Count : 0
},
handleSave(isPrompt = true) {
- return new Promise((resolve, reject) => {
- this.$refs['globalRuleForm'].validate(valid => {
- if (valid) {
+ return new Promise(async (resolve, reject) => {
+ let valid = await this.$refs['globalRuleForm'].validate()
+ if (valid) {
this.loading = true
var visitTaskAnswerList = []
this.globalForm.taskList.forEach((item, index) => {
@@ -394,7 +394,8 @@ export default {
trialId: this.globalInfo.trialId,
visitTaskAnswerList
}
- batchSubmitGlobalReadingInfo(params).then(res => {
+ try {
+ await batchSubmitGlobalReadingInfo(params)
this.loading = false
if (isPrompt) {
console.log(isPrompt)
@@ -402,14 +403,14 @@ export default {
}
this.$emit('getGlInfo')
resolve()
- }).catch(() => {
+ } catch (e) {
this.loading = false
reject()
- })
+ }
} else {
reject()
}
- })
+
})
},
getBeforeAnswer(qsId, row) {
diff --git a/src/views/trials/trials-panel/reading/global-review/index.vue b/src/views/trials/trials-panel/reading/global-review/index.vue
index a6e3b2f1..96f8c387 100644
--- a/src/views/trials/trials-panel/reading/global-review/index.vue
+++ b/src/views/trials/trials-panel/reading/global-review/index.vue
@@ -256,10 +256,10 @@ export default {
}
},
methods: {
- getGlInfo() {
+ async getGlInfo() {
this.loading = true
- getGlobalReadingInfo({ visitTaskId: this.visitTaskId }).then(res => {
- console.log('getGlobalReadingInfo')
+ try {
+ let res = await getGlobalReadingInfo({ visitTaskId: this.visitTaskId })
var evaluationQsList = []
var adjustedQsList = []
var agreeOrNotList = []
@@ -322,66 +322,20 @@ export default {
trialId: this.trialId, subjectId: this.subjectId, subjectCode: this.subjectCode, visitTaskId: res.Result.GlobalTaskId, globalForm, globalUpdateType, evaluationQsList, adjustedQsList, agreeOrNotList, readingTaskState: this.readingTaskState, assessTypeList: res.Result.AssessTypeList
}
this.loading = false
- }).catch(() => { this.loading = false })
+ } catch (e) {
+ this.loading = false
+ }
},
- getHistoryGlobalInfo() {
+ async getHistoryGlobalInfo() {
this.historyLoading = true
- getReadingPastResultList({ visitTaskId: this.visitTaskId }).then(res => {
+ try {
+ let res = await getReadingPastResultList({ visitTaskId: this.visitTaskId })
this.historyTaskList = res.Result
this.historyLoading = false
- }).catch(() => { this.historyLoading = false })
- },
- changeAgreeOrNotList(callback, row, visitTaskId) {
- var message = ''
- if (parseInt(callback) === 1) {
- message = '是否确认更改?'
- row.Answer = '0'
- } else {
- message = '是否确认更改?'
- row.Answer = '1'
+ } catch (e) {
+ this.historyLoading = false
}
- this.$confirm(message, {
- distinguishCancelAndClose: true,
- type: 'warning'
- }).then(() => {
- this.loading = true
- var params = {
- globalTaskId: this.visitTaskId,
- subjectId: this.subjectId,
- trialId: this.trialId,
- questionList: [
- {
- questionId: row.QuestionId ? row.QuestionId : '',
- visitTaskId: visitTaskId,
- globalAnswerType: row.GlobalAnswerType,
- answer: row.Answer === '1' ? '0' : '1'
- }
- ]
- }
- saveGlobalReadingInfo(params).then(res => {
- this.loading = false
- if (res.IsSuccess) {
- this.$message.success(this.$t('common:message:savedSuccessfully'))
- this.getGlInfo()
- }
- }).catch(() => { this.loading = false })
- }).catch(() => {})
},
- // handleEdit(row) {
- // this.rowData = { ...row }
- // if (this.CriterionType === 1) {
- // this.rowData.AfterQuestionList.forEach(item => {
- // if (item.GlobalAnswerType === 1) {
- // // 全局阅片备注
- // item.QuestionName = this.$t('trials:globalReview:table:globalRemark')
- // } else if (item.GlobalAnswerType === 3) {
- // // 评估更新类型
- // item.QuestionName = this.$t('trials:globalReview:table:updateType')
- // }
- // })
- // }
- // // this.editVisible = true
- // },
handleSave() {
this.$refs['globalTbl'].handleSave(true)
},
@@ -435,53 +389,51 @@ export default {
}
},
// 签名并确认
- signConfirm(signInfo) {
+ async signConfirm(signInfo) {
this.loading = true
-
var params = {
data: {
globalTaskId: this.visitTaskId
},
signInfo: signInfo
}
- submitGlobalReadingInfo(params).then(async res => {
+ try{
+ let res = await submitGlobalReadingInfo(params)
if (res.IsSuccess) {
this.$message.success(this.$t('common:message:savedSuccessfully'))
this.$refs['signForm'].btnLoading = false
this.signVisible = false
// 设置当前任务阅片状态为已读
this.readingTaskState = 2
- var isAutoTask = await this.getAutoTaskVal()
+ const res = await getAutoCutNextTask()
+ var isAutoTask = res.Result.AutoCutNextTask
if (isAutoTask) {
- DicomEvent.$emit('getNextTask')
+ // DicomEvent.$emit('getNextTask')
+ window.location.reload()
} else {
- // 当前阅片任务已完成,是否进入下一个阅片任务
- this.$confirm(this.$t('trials:globalReview:message:msg2'), {
- type: 'warning',
- distinguishCancelAndClose: true
- })
- .then(() => {
- store.dispatch('reading/resetVisitTasks')
- DicomEvent.$emit('getNextTask')
- })
- .catch(action => {
- changeURLStatic('visitTaskId', this.visitTaskId)
- })
+ // 当前阅片任务已完成,是否进入下一个阅片任务
+ const confirm = await this.$confirm(
+ this.$t('trials:globalReview:message:msg2'),
+ {
+ type: 'warning',
+ distinguishCancelAndClose: true
+ }
+ )
+ if (confirm === 'confirm') {
+ // store.dispatch('reading/resetVisitTasks')
+ // DicomEvent.$emit('getNextTask')
+ window.location.reload()
+ } else {
+ changeURLStatic('visitTaskId', this.visitTaskId)
+ }
}
window.opener.postMessage('refreshTaskList', window.location)
}
this.loading = false
- }).catch(_ => {
+ } catch (e) {
this.loading = false
this.$refs['signForm'].btnLoading = false
- })
- },
- getAutoTaskVal() {
- return new Promise((resolve, reject) => {
- getAutoCutNextTask().then(res => {
- resolve(res.Result.AutoCutNextTask)
- }).catch(() => { reject() })
- })
+ }
},
handleView(row) {
if (this.openWindow) {
diff --git a/src/views/trials/trials-panel/reading/mim-medical-audit/components/Conclusions.vue b/src/views/trials/trials-panel/reading/mim-medical-audit/components/Conclusions.vue
index c34c8289..2fcdbf54 100644
--- a/src/views/trials/trials-panel/reading/mim-medical-audit/components/Conclusions.vue
+++ b/src/views/trials/trials-panel/reading/mim-medical-audit/components/Conclusions.vue
@@ -92,7 +92,7 @@
>
-
+
-
-
-
- 历史评判结果
-
-
-
-
-
-
-
-
-
-
- 裁判结果
-
-
-
-
- {{ t.armEnum }}
-
-
-
-
-
-
-
- 保存
- 提交
-
-
-
-
-
-
-
-
- {{ $t('common:dialogTitle:sign') }}
- {{ `(${$t('common:label:sign')}${ currentUser })` }}
-
-
-
-
-
-
-
-
-
diff --git a/src/views/trials/trials-panel/reading/none-dicoms/components/AdReview.vue b/src/views/trials/trials-panel/reading/none-dicoms/components/AdReview.vue
deleted file mode 100644
index 72f97ffb..00000000
--- a/src/views/trials/trials-panel/reading/none-dicoms/components/AdReview.vue
+++ /dev/null
@@ -1,543 +0,0 @@
-
-
-
-
- 受试者:
- {{ subjectCode }}
- ({{ taskBlindName }})
-
-
-
-
- 评估结果
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $fd('YesOrNo', scope.row.VisitTaskInfoList[j.index].JudgeQuestionList[i].Answer ) }}
-
- 查看详情
-
-
-
- {{ $fd('YesOrNo', scope.row.VisitTaskInfoList[j.index].JudgeQuestionList[i].Answer ) }}
-
-
- {{ scope.row.VisitTaskInfoList[j.index].JudgeQuestionList[i].Answer }}
-
-
-
-
-
-
-
-
- R1
-
-
- R2
-
-
-
-
-
-
-
- 裁判结果
-
-
-
-
-
- {{ $fd('ArmEnum', t.ArmEnum) }}
-
-
-
-
-
-
-
-
-
-
-
![]()
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 加载中...
-
-
-
-
-
-
- 保存
- 提交
-
-
-
-
-
-
-
-
- 既往裁判评估
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $t('common:dialogTitle:sign') }}
- {{ `(${$t('common:label:sign')}${ currentUser })` }}
-
-
-
-
-
-
-
diff --git a/src/views/trials/trials-panel/reading/none-dicoms/components/ECRF.vue b/src/views/trials/trials-panel/reading/none-dicoms/components/ECRF.vue
index 07e56751..95a11518 100644
--- a/src/views/trials/trials-panel/reading/none-dicoms/components/ECRF.vue
+++ b/src/views/trials/trials-panel/reading/none-dicoms/components/ECRF.vue
@@ -77,8 +77,15 @@
- {{ $t('common:button:save') }}
- {{ $t('common:button:submit') }}
+
+ {{ $t('trials:readingReport:button:skip') }}
+
+
+ {{ $t('common:button:save') }}
+
+
+ {{ $t('common:button:submit') }}
+
@@ -104,11 +111,12 @@
diff --git a/src/views/trials/trials-panel/reading/none-dicoms/components/FormItem.vue b/src/views/trials/trials-panel/reading/none-dicoms/components/FormItem.vue
index 32fbab6f..bc9b032e 100644
--- a/src/views/trials/trials-panel/reading/none-dicoms/components/FormItem.vue
+++ b/src/views/trials/trials-panel/reading/none-dicoms/components/FormItem.vue
@@ -39,27 +39,27 @@
:disabled="readingTaskState >= 2"
/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{formItemChange(val, qs)})"
+ @change="((val)=>{formItemChange(val, question)})"
>
- {{item.label}}
+ {{ item.label }}
@@ -191,7 +191,7 @@
-
diff --git a/src/views/trials/trials-panel/reading/none-dicoms/components/OncologyReview.vue b/src/views/trials/trials-panel/reading/none-dicoms/components/OncologyReview.vue
deleted file mode 100644
index 7e9e5420..00000000
--- a/src/views/trials/trials-panel/reading/none-dicoms/components/OncologyReview.vue
+++ /dev/null
@@ -1,427 +0,0 @@
-
-
-
-
- 受试者:
- {{ subjectCode }}
- ({{ taskBlindName }})
-
-
-
-
- 肿瘤学阅片
-
-
-
- 临床数据
-
-
- 保存
-
-
- 确认
-
-
-
-
-
-
-
-
-
- {{ scope.row.QuestionList.length>index?scope.row.QuestionList[index].Answer:'' }}
-
-
-
-
- {{ $fd('YesOrNo', scope.row.IsHaveChange ) }}
-
- 查看详情
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row.EvaluationResult }}
-
-
-
-
-
-
-
- {{ oncologyInfo.TrialEvaluationReason }}
-
-
- 原因
- *
-
-
-
-
-
-
- {{ scope.row.EvaluationReason }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 既往肿瘤学阅片结果
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $t('common:dialogTitle:sign') }}
- {{ `(${$t('common:label:sign')}${ currentUser })` }}
-
-
-
-
-
-
-
diff --git a/src/views/trials/trials-panel/reading/none-dicoms/components/VisitReview.vue b/src/views/trials/trials-panel/reading/none-dicoms/components/VisitReview.vue
index 21282d84..d6c92fc4 100644
--- a/src/views/trials/trials-panel/reading/none-dicoms/components/VisitReview.vue
+++ b/src/views/trials/trials-panel/reading/none-dicoms/components/VisitReview.vue
@@ -2,7 +2,7 @@
- {{$t('trials:auditRecord:table:subject')}}:{{ otherInfo.SubjectCode }}
+ {{ $t('trials:auditRecord:table:subject') }}:{{ otherInfo.SubjectCode }}
({{ otherInfo.TaskBlindName }})
@@ -41,7 +41,7 @@
- {{$t('trials:audit:message:noData')}}
+ {{ $t('trials:audit:message:noData') }}
-
- {{ $t('trials:crcUpload:label:clinicalData') }}
-
+
+
+ {{ $t('trials:crcUpload:label:clinicalData') }}
+
+
-1) {
@@ -281,7 +282,7 @@ export default {
}
var arr = bodyPart.split(separator)
var newArr = arr.map(i => {
- return this.$fd('Bodypart', i.trim(),'Code',{Bodypart:this.bp},'Name')
+ return this.$fd('Bodypart', i.trim(), 'Code', { Bodypart: this.bp }, 'Name')
})
return newArr.join(' | ')
}
diff --git a/src/views/trials/trials-panel/reading/none-dicoms/index.vue b/src/views/trials/trials-panel/reading/none-dicoms/index.vue
index 442dc086..dfc43b00 100644
--- a/src/views/trials/trials-panel/reading/none-dicoms/index.vue
+++ b/src/views/trials/trials-panel/reading/none-dicoms/index.vue
@@ -70,7 +70,7 @@
@@ -87,7 +87,7 @@ import VisitReview from './components/VisitReview'
import GlobalReview from '@/views/trials/trials-panel/reading/global-review'
import AdReview from '@/views/trials/trials-panel/reading/ad-review'
import ClinicalData from '@/views/trials/trials-panel/reading/clinical-data'
-import { getToken } from '@/utils/auth'
+// import { getToken } from '@/utils/auth'
import OncologyReview from '@/views/trials/trials-panel/reading/oncology-review'
export default {
name: 'NoneDicomReading',
@@ -136,7 +136,7 @@ export default {
this.readingTool = this.$router.currentRoute.query.readingTool
this.isNewSubject = this.$router.currentRoute.query.isNewSubject
if (this.isNewSubject && this.isReadingTaskViewInOrder) {
- let message = this.$t('trials:reading:noneDicom:message:startRead').replace("xxx",this.subjectCode);
+ const message = this.$t('trials:reading:noneDicom:message:startRead').replace('xxx', this.subjectCode)
this.$message.success(message)
changeURLStatic('isNewSubject', '')
}
@@ -164,11 +164,11 @@ export default {
this.isShow = false
getNextTask(param).then(res => {
this.readingCategory = res.Result.ReadingCategory
- if (this.subjectId !== res.Result.SubjectId && this.isReadingTaskViewInOrder) {
- store.dispatch('reading/resetVisitTasks')
- var token = getToken()
- window.location.href = `/noneDicomReading?trialId=${this.trialId}&subjectCode=${res.Result.SubjectCode}&subjectId=${res.Result.SubjectId}&isReadingShowPreviousResults=${this.isReadingShowPreviousResults}&isReadingShowSubjectInfo=${this.isReadingShowSubjectInfo}&criterionType=${this.criterionType}&readingTool=${this.readingTool}&isNewSubject=1&isReadingTaskViewInOrder=${res.Result.IsReadingTaskViewInOrder}&TokenKey=${token}`
- }
+ // if (this.subjectId !== res.Result.SubjectId && this.isReadingTaskViewInOrder) {
+ // store.dispatch('reading/resetVisitTasks')
+ // var token = getToken()
+ // window.location.href = `/noneDicomReading?trialId=${this.trialId}&subjectCode=${res.Result.SubjectCode}&subjectId=${res.Result.SubjectId}&isReadingShowPreviousResults=${this.isReadingShowPreviousResults}&isReadingShowSubjectInfo=${this.isReadingShowSubjectInfo}&criterionType=${this.criterionType}&readingTool=${this.readingTool}&isNewSubject=1&isReadingTaskViewInOrder=${res.Result.IsReadingTaskViewInOrder}&TokenKey=${token}`
+ // }
this.subjectId = res.Result.SubjectId
this.visitTaskId = res.Result.VisitTaskId
this.subjectCode = res.Result.SubjectCode
@@ -190,14 +190,17 @@ export default {
this.loading = false
}).catch(() => { this.loading = false })
},
- handleConfirmCD() {
+ async handleConfirmCD() {
this.loading = true
var visitTaskId = this.visitTaskId
- readClinicalData({ visitTaskId }).then(res => {
+ try {
+ await readClinicalData({ visitTaskId })
this.loading = false
this.dialogVisible = false
this.isReadClinicalData = true
- }).catch(() => { this.loading = false })
+ } catch (e) {
+ this.loading = false
+ }
}
}
}
diff --git a/src/views/trials/trials-panel/reading/oncology-review/index.vue b/src/views/trials/trials-panel/reading/oncology-review/index.vue
index 954e1f12..07cf129b 100644
--- a/src/views/trials/trials-panel/reading/oncology-review/index.vue
+++ b/src/views/trials/trials-panel/reading/oncology-review/index.vue
@@ -262,8 +262,11 @@