TNM分期
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
05b7e2e8e2
commit
7854159587
|
@ -248,3 +248,19 @@ export function clearSkipReadingCache(param) {
|
|||
data: param
|
||||
})
|
||||
}
|
||||
// 获取tnm
|
||||
export function getTNMValue(param) {
|
||||
return request({
|
||||
url: `/ReadingImageTask/getTNMValue`,
|
||||
method: 'post',
|
||||
data: param
|
||||
})
|
||||
}
|
||||
// 设置tnm
|
||||
export function setTNMValue(param) {
|
||||
return request({
|
||||
url: `/ReadingImageTask/setTNMValue`,
|
||||
method: 'post',
|
||||
data: param
|
||||
})
|
||||
}
|
|
@ -3,7 +3,13 @@
|
|||
<el-card v-loading="loading" shadow="never">
|
||||
<div slot="header" class="clearfix report-header">
|
||||
<!-- 电子影像病例报告表(eICRF) -->
|
||||
<h3 style="margin:0;padding:0;">{{ $t('trials:readingReport:title:eicrf') }}</h3>
|
||||
<div style="display: flex;align-items: center;">
|
||||
<h3 style="margin:0;padding:0;margin-right: 10px;">{{ $t('trials:readingReport:title:eicrf') }}</h3>
|
||||
<el-button v-if="readingTaskState < 2" type="primary" size="small" @click="openTNM">
|
||||
<!-- TNM分期 -->
|
||||
{{ $t('trials:readingReport:button:tnm') }}
|
||||
</el-button>
|
||||
</div>
|
||||
<div style="margin-left:auto">
|
||||
<el-switch v-model="isShowDetail" :active-text="$t('trials:readingReport:title:expandDetails')"
|
||||
:inactive-text="$t('trials:readingReport:title:collapseDetails')" style="margin-right:5px;"
|
||||
|
@ -204,11 +210,38 @@
|
|||
</el-dialog>
|
||||
<!--评估报告-->
|
||||
<PreviewFileDialog :visible.sync="previewFileVisible" :fileData="fileData" />
|
||||
<!-- tnm分期 -->
|
||||
<el-dialog v-if="TnmVisible" :visible.sync="TnmVisible" :close-on-click-modal="false" width="600px"
|
||||
custom-class="base-dialog-wrapper">
|
||||
<div slot="title">
|
||||
<span style="font-size:18px;">{{ $t('common:dialogTitle:TNM') }}</span>
|
||||
</div>
|
||||
<el-form ref="wlForm" v-loading="loading" :model="TnmForm" label-width="80px" size="small">
|
||||
<!-- 名称 -->
|
||||
<el-form-item :label="$t('trials:reading:label:wlTplName')" v-show="false">
|
||||
<el-input v-model="TnmForm.TNMValue" />
|
||||
</el-form-item>
|
||||
<!-- 名称 -->
|
||||
<el-form-item :label="$t('trials:reading:label:TNMValue')" prop="TemplateName">
|
||||
<el-input v-model="TnmForm.TNMValue" />
|
||||
</el-form-item>
|
||||
<el-form-item style="text-align:right;">
|
||||
<!-- Cancel -->
|
||||
<el-button type="primary" @click="handleTnmCancel">
|
||||
{{ $t('common:button:cancel') }}
|
||||
</el-button>
|
||||
<!-- Save -->
|
||||
<el-button type="primary" @click="setTNMValue">
|
||||
{{ $t('common:button:save') }}
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { getReadingReportEvaluation, changeDicomReadingQuestionAnswer, submitDicomVisitTask, verifyVisitTaskQuestions, getTaskAdditionalQuestion } from '@/api/trials'
|
||||
import { setSkipReadingCache } from '@/api/reading'
|
||||
import { setSkipReadingCache, setTNMValue, getTNMValue } from '@/api/reading'
|
||||
import { getAutoCutNextTask } from '@/api/user'
|
||||
import DicomEvent from './DicomEvent'
|
||||
import const_ from '@/const/sign-code'
|
||||
|
@ -263,7 +296,13 @@ export default {
|
|||
openWindow: null,
|
||||
reportBtnLoading: false,
|
||||
previewFileVisible: false,
|
||||
fileData: {}
|
||||
fileData: {},
|
||||
|
||||
TnmForm: {
|
||||
TNMValue: null,
|
||||
VisitTaskId: null
|
||||
},
|
||||
TnmVisible: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
@ -304,6 +343,44 @@ export default {
|
|||
}
|
||||
},
|
||||
methods: {
|
||||
async getTNMValue() {
|
||||
try {
|
||||
let data = {
|
||||
VisitTaskId: this.visitTaskId
|
||||
}
|
||||
let res = await getTNMValue(data)
|
||||
if (res.IsSuccess) {
|
||||
this.TnmForm = res.Result
|
||||
return res.Result.TnmValue
|
||||
}
|
||||
return false
|
||||
} catch (err) {
|
||||
console.log(err)
|
||||
return false
|
||||
}
|
||||
},
|
||||
async setTNMValue() {
|
||||
try {
|
||||
this.TnmForm.VisitTaskId = this.visitTaskId
|
||||
this.loading = true
|
||||
let res = await setTNMValue(this.TnmForm)
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
||||
this.handleTnmCancel()
|
||||
}
|
||||
} catch (err) {
|
||||
this.loading = false
|
||||
console.log(err)
|
||||
}
|
||||
},
|
||||
handleTnmCancel() {
|
||||
this.TnmVisible = false
|
||||
},
|
||||
async openTNM() {
|
||||
await this.getTNMValue()
|
||||
this.TnmVisible = true
|
||||
},
|
||||
// 评估报告
|
||||
async showReport(key) {
|
||||
if (this.reportBtnLoading) return;
|
||||
|
@ -600,6 +677,11 @@ export default {
|
|||
try {
|
||||
await this.handleSave(false)
|
||||
await verifyVisitTaskQuestions({ visitTaskId: this.visitTaskId })
|
||||
let tnm = await this.getTNMValue()
|
||||
if (!tnm) {
|
||||
let confirm = await this.$confirm(this.$t('trials:readingReport:message:noTnm'))
|
||||
if (!confirm) return false
|
||||
}
|
||||
var i = this.visitTaskList.findIndex(i => i.VisitTaskId === this.visitTaskId)
|
||||
var isBaseline = this.visitTaskList[i].IsBaseLine
|
||||
if (isBaseline) {
|
||||
|
|
Loading…
Reference in New Issue