待阅列表添加双屏
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
038f477d9e
commit
6d0b3928ee
|
@ -1,15 +1,8 @@
|
||||||
<template>
|
<template>
|
||||||
<BaseContainer
|
<BaseContainer v-loading="loading" style="height: 100%; background-color: #fff">
|
||||||
v-loading="loading"
|
|
||||||
style="height: 100%; background-color: #fff"
|
|
||||||
>
|
|
||||||
<el-tabs v-model="TrialReadingCriterionId" type="border-card">
|
<el-tabs v-model="TrialReadingCriterionId" type="border-card">
|
||||||
<el-tab-pane
|
<el-tab-pane v-for="i in trialCriterionList" :key="i.TrialReadingCriterionId" :label="i.TrialReadingCriterionName"
|
||||||
v-for="i in trialCriterionList"
|
:name="i.TrialReadingCriterionId">
|
||||||
:key="i.TrialReadingCriterionId"
|
|
||||||
:label="i.TrialReadingCriterionName"
|
|
||||||
:name="i.TrialReadingCriterionId"
|
|
||||||
>
|
|
||||||
<div v-if="TrialReadingCriterionId === i.TrialReadingCriterionId">
|
<div v-if="TrialReadingCriterionId === i.TrialReadingCriterionId">
|
||||||
<div slot="search-container" style="position: relative">
|
<div slot="search-container" style="position: relative">
|
||||||
<el-form :inline="true">
|
<el-form :inline="true">
|
||||||
|
@ -31,57 +24,24 @@
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<!-- 受试者编号 -->
|
<!-- 受试者编号 -->
|
||||||
<el-form-item :label="$t('trials:reviewTrack:table:subjectCode')">
|
<el-form-item :label="$t('trials:reviewTrack:table:subjectCode')">
|
||||||
<el-input
|
<el-input v-model="searchData.SubjectCode" style="width: 100px" clearable />
|
||||||
v-model="searchData.SubjectCode"
|
|
||||||
style="width: 100px"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 患者编号 -->
|
<!-- 患者编号 -->
|
||||||
<el-form-item :label="$t('trials:uploadDicomList:table:pId')">
|
<el-form-item :label="$t('trials:uploadDicomList:table:pId')">
|
||||||
<el-input
|
<el-input v-model="searchData.PatientIdStr" style="width: 140px" clearable />
|
||||||
v-model="searchData.PatientIdStr"
|
|
||||||
style="width: 140px"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 患者姓名 -->
|
<!-- 患者姓名 -->
|
||||||
<el-form-item
|
<el-form-item :label="$t('trials:uploadDicomList:table:patientName')">
|
||||||
:label="$t('trials:uploadDicomList:table:patientName')"
|
<el-input v-model="searchData.SubjectName" style="width: 140px" clearable />
|
||||||
>
|
|
||||||
<el-input
|
|
||||||
v-model="searchData.SubjectName"
|
|
||||||
style="width: 140px"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 访视名称 -->
|
<!-- 访视名称 -->
|
||||||
<el-form-item
|
<el-form-item style="margin-bottom: 10px" :label="$t('trials:adReview:table:visitName')">
|
||||||
style="margin-bottom: 10px"
|
<el-input v-model="searchData.TaskName" style="width: 140px" clearable />
|
||||||
:label="$t('trials:adReview:table:visitName')"
|
|
||||||
>
|
|
||||||
<el-input
|
|
||||||
v-model="searchData.TaskName"
|
|
||||||
style="width: 140px"
|
|
||||||
clearable
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 任务状态 -->
|
<!-- 任务状态 -->
|
||||||
<el-form-item
|
<el-form-item style="margin-bottom: 10px" :label="$t('trials:readTask:table:taskState')">
|
||||||
style="margin-bottom: 10px"
|
<el-select v-model="searchData.TaskState" clearable style="width: 120px">
|
||||||
:label="$t('trials:readTask:table:taskState')"
|
<el-option v-for="i of $d.TaskState" :key="'TaskState' + i.label" :value="i.value" :label="i.label" />
|
||||||
>
|
|
||||||
<el-select
|
|
||||||
v-model="searchData.TaskState"
|
|
||||||
clearable
|
|
||||||
style="width: 120px"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="i of $d.TaskState"
|
|
||||||
:key="'TaskState' + i.label"
|
|
||||||
:value="i.value"
|
|
||||||
:label="i.label"
|
|
||||||
/>
|
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 任务类型 -->
|
<!-- 任务类型 -->
|
||||||
|
@ -104,65 +64,35 @@
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<!-- 签名时间 -->
|
<!-- 签名时间 -->
|
||||||
<el-form-item :label="$t('trials:readTask:table:signTime')">
|
<el-form-item :label="$t('trials:readTask:table:signTime')">
|
||||||
<el-date-picker
|
<el-date-picker v-model="dateValue" type="datetimerange" range-separator="-"
|
||||||
v-model="dateValue"
|
|
||||||
type="datetimerange"
|
|
||||||
range-separator="-"
|
|
||||||
:start-placeholder="$t('trials:uploadClinicalData:table:beginDate')"
|
:start-placeholder="$t('trials:uploadClinicalData:table:beginDate')"
|
||||||
:end-placeholder="$t('trials:uploadClinicalData:table:endDate')"
|
:end-placeholder="$t('trials:uploadClinicalData:table:endDate')" clearable
|
||||||
clearable
|
:default-time="['00:00:00', '23:59:59']">
|
||||||
:default-time="['00:00:00', '23:59:59']"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<!-- 查询 -->
|
<!-- 查询 -->
|
||||||
<el-button
|
<el-button type="primary" icon="el-icon-search" @click="handleSearch">
|
||||||
type="primary"
|
|
||||||
icon="el-icon-search"
|
|
||||||
@click="handleSearch"
|
|
||||||
>
|
|
||||||
{{ $t('common:button:search') }}
|
{{ $t('common:button:search') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<!-- 重置 -->
|
<!-- 重置 -->
|
||||||
<el-button
|
<el-button type="primary" icon="el-icon-refresh-left" @click="handleReset">
|
||||||
type="primary"
|
|
||||||
icon="el-icon-refresh-left"
|
|
||||||
@click="handleReset"
|
|
||||||
>
|
|
||||||
{{ $t('common:button:reset') }}
|
{{ $t('common:button:reset') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<div slot="main-container">
|
<div slot="main-container">
|
||||||
<el-table
|
<el-table v-adaptive="{ bottomOffset: 75 }" :data="list" stripe height="100"
|
||||||
v-adaptive="{ bottomOffset: 75 }"
|
@sort-change="handleSortChange">
|
||||||
:data="list"
|
|
||||||
stripe
|
|
||||||
height="100"
|
|
||||||
@sort-change="handleSortChange"
|
|
||||||
>
|
|
||||||
<!-- 受试者编号 -->
|
<!-- 受试者编号 -->
|
||||||
<el-table-column
|
<el-table-column prop="SubjectCode" min-width="100" :label="$t('trials:reviewTrack:table:subjectCode')"
|
||||||
prop="SubjectCode"
|
show-overflow-tooltip sortable="custom" />
|
||||||
min-width="100"
|
|
||||||
:label="$t('trials:reviewTrack:table:subjectCode')"
|
|
||||||
show-overflow-tooltip
|
|
||||||
sortable="custom"
|
|
||||||
/>
|
|
||||||
<!-- 患者编号 -->
|
<!-- 患者编号 -->
|
||||||
<el-table-column
|
<el-table-column prop="PatientIdStr" min-width="100" :label="$t('trials:uploadDicomList:table:pId')"
|
||||||
prop="PatientIdStr"
|
show-overflow-tooltip>
|
||||||
min-width="100"
|
|
||||||
:label="$t('trials:uploadDicomList:table:pId')"
|
|
||||||
show-overflow-tooltip
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span
|
<span v-for="(item, index) in scope.row.PatientList" :key="`${index}${item.PatientId}`">
|
||||||
v-for="(item, index) in scope.row.PatientList"
|
|
||||||
:key="`${index}${item.PatientId}`"
|
|
||||||
>
|
|
||||||
{{
|
{{
|
||||||
index === scope.row.PatientList.length - 1
|
index === scope.row.PatientList.length - 1
|
||||||
? item.PatientIdStr
|
? item.PatientIdStr
|
||||||
|
@ -172,37 +102,18 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<!-- 患者姓名 -->
|
<!-- 患者姓名 -->
|
||||||
<el-table-column
|
<el-table-column prop="SubjectShortName" min-width="100"
|
||||||
prop="SubjectShortName"
|
:label="$t('trials:uploadDicomList:table:patientName')" show-overflow-tooltip sortable="custom" />
|
||||||
min-width="100"
|
|
||||||
:label="$t('trials:uploadDicomList:table:patientName')"
|
|
||||||
show-overflow-tooltip
|
|
||||||
sortable="custom"
|
|
||||||
/>
|
|
||||||
<!-- 访视名称 -->
|
<!-- 访视名称 -->
|
||||||
<el-table-column
|
<el-table-column prop="TaskName" :label="$t('trials:adReview:table:visitName')" min-width="100"
|
||||||
prop="TaskName"
|
sortable="custom" show-overflow-tooltip />
|
||||||
:label="$t('trials:adReview:table:visitName')"
|
|
||||||
min-width="100"
|
|
||||||
sortable="custom"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- 阅片标准 -->
|
<!-- 阅片标准 -->
|
||||||
<el-table-column
|
<el-table-column prop="TrialReadingCriterionName"
|
||||||
prop="TrialReadingCriterionName"
|
:label="$t('trials:adReview:table:TrialReadingCriterionName')" min-width="100" sortable="custom"
|
||||||
:label="$t('trials:adReview:table:TrialReadingCriterionName')"
|
show-overflow-tooltip />
|
||||||
min-width="100"
|
|
||||||
sortable="custom"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- 任务状态 -->
|
<!-- 任务状态 -->
|
||||||
<el-table-column
|
<el-table-column prop="TaskState" :label="$t('trials:readTask:table:taskState')" min-width="100"
|
||||||
prop="TaskState"
|
sortable="custom" show-overflow-tooltip>
|
||||||
:label="$t('trials:readTask:table:taskState')"
|
|
||||||
min-width="100"
|
|
||||||
sortable="custom"
|
|
||||||
show-overflow-tooltip
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tag v-if="scope.row.TaskState === 0" type="primary">{{
|
<el-tag v-if="scope.row.TaskState === 0" type="primary">{{
|
||||||
$fd('TaskState', scope.row.TaskState)
|
$fd('TaskState', scope.row.TaskState)
|
||||||
|
@ -245,13 +156,8 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
<!-- 签名时间 -->
|
<!-- 签名时间 -->
|
||||||
<el-table-column
|
<el-table-column prop="SignTime" min-width="120" :label="$t('trials:readTask:table:signTime')"
|
||||||
prop="SignTime"
|
sortable="custom" show-overflow-tooltip />
|
||||||
min-width="120"
|
|
||||||
:label="$t('trials:readTask:table:signTime')"
|
|
||||||
sortable="custom"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- 打包状态 -->
|
<!-- 打包状态 -->
|
||||||
<!-- <el-table-column
|
<!-- <el-table-column
|
||||||
prop="PackState"
|
prop="PackState"
|
||||||
|
@ -303,113 +209,63 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
<!--操作-->
|
<!--操作-->
|
||||||
<el-table-column
|
<el-table-column :label="$t('common:action:action')" min-width="140" fixed="right" v-if="
|
||||||
:label="$t('common:action:action')"
|
hasPermi([
|
||||||
min-width="140"
|
'trials:readTask:view',
|
||||||
fixed="right"
|
'trials:readTask:reread',
|
||||||
v-if="
|
'trials:readTask:report',
|
||||||
hasPermi([
|
'trials:readTask:auditRecord',
|
||||||
'trials:readTask:view',
|
])
|
||||||
'trials:readTask:reread',
|
">
|
||||||
'trials:readTask:report',
|
|
||||||
'trials:readTask:auditRecord',
|
|
||||||
])
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<!-- 查看 -->
|
<!-- 查看 -->
|
||||||
<el-button
|
<el-button v-hasPermi="['trials:readTask:view']" circle :title="$t('trials:readTask:button:view')"
|
||||||
v-hasPermi="['trials:readTask:view']"
|
icon="el-icon-view" @click="handleReadImage(scope.row)" />
|
||||||
circle
|
|
||||||
:title="$t('trials:readTask:button:view')"
|
|
||||||
icon="el-icon-view"
|
|
||||||
@click="handleReadImage(scope.row)"
|
|
||||||
/>
|
|
||||||
<!-- 重阅 -->
|
<!-- 重阅 -->
|
||||||
<el-button
|
<el-button v-hasPermi="['trials:readTask:reread']" circle :disabled="scope.row.TaskState > 0"
|
||||||
v-hasPermi="['trials:readTask:reread']"
|
:title="$t('trials:readTask:button:reread')" icon="el-icon-collection"
|
||||||
circle
|
@click="openApplyReReading(scope.row)" />
|
||||||
:disabled="scope.row.TaskState > 0"
|
|
||||||
:title="$t('trials:readTask:button:reread')"
|
|
||||||
icon="el-icon-collection"
|
|
||||||
@click="openApplyReReading(scope.row)"
|
|
||||||
/>
|
|
||||||
<!--肿瘤负荷报告-->
|
<!--肿瘤负荷报告-->
|
||||||
<el-button
|
<el-button circle v-hasPermi="['trials:readTask:report']" icon="el-icon-document"
|
||||||
circle
|
|
||||||
v-hasPermi="['trials:readTask:report']"
|
|
||||||
icon="el-icon-document"
|
|
||||||
:title="$t('trials:trials-panel:hirVisit:EvaluationReport')"
|
:title="$t('trials:trials-panel:hirVisit:EvaluationReport')"
|
||||||
@click="handleCommand('showReport', scope.row, 'evaluate')"
|
@click="handleCommand('showReport', scope.row, 'evaluate')"
|
||||||
:disabled="scope.row.ReadingTaskState !== 2"
|
:disabled="scope.row.ReadingTaskState !== 2" />
|
||||||
/>
|
|
||||||
<!--疗效评估报告-->
|
<!--疗效评估报告-->
|
||||||
<el-button
|
<el-button circle v-hasPermi="['trials:readTask:report']" icon="el-icon-document"
|
||||||
circle
|
|
||||||
v-hasPermi="['trials:readTask:report']"
|
|
||||||
icon="el-icon-document"
|
|
||||||
:title="$t('trials:trials-panel:hirVisit:TumorReport')"
|
:title="$t('trials:trials-panel:hirVisit:TumorReport')"
|
||||||
@click="handleCommand('showReport', scope.row, 'tumor')"
|
@click="handleCommand('showReport', scope.row, 'tumor')"
|
||||||
:disabled="scope.row.ReadingTaskState !== 2"
|
:disabled="scope.row.ReadingTaskState !== 2" />
|
||||||
/>
|
|
||||||
<!--下载影像-->
|
<!--下载影像-->
|
||||||
<el-button
|
<el-button circle v-hasPermi="['trials:readTask:report']" icon="el-icon-download"
|
||||||
circle
|
:loading="downloading" :title="$t('trials:reading:button:uploadImages')" @click="
|
||||||
v-hasPermi="['trials:readTask:report']"
|
|
||||||
icon="el-icon-download"
|
|
||||||
:loading="downloading"
|
|
||||||
:title="$t('trials:reading:button:uploadImages')"
|
|
||||||
@click="
|
|
||||||
handleCommand(
|
handleCommand(
|
||||||
'getDownloadSubjectVisitStudyInfo',
|
'getDownloadSubjectVisitStudyInfo',
|
||||||
scope.row
|
scope.row
|
||||||
)
|
)
|
||||||
"
|
" />
|
||||||
/>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<!-- 分页组件 -->
|
<!-- 分页组件 -->
|
||||||
<pagination
|
<pagination class="page" :total="total" :page.sync="searchData.PageIndex" :limit.sync="searchData.PageSize"
|
||||||
class="page"
|
@pagination="getList" />
|
||||||
:total="total"
|
|
||||||
:page.sync="searchData.PageIndex"
|
|
||||||
:limit.sync="searchData.PageSize"
|
|
||||||
@pagination="getList"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
<el-dialog
|
<el-dialog v-if="ApplyforReasonVisible" :title="$t('trials:readTask:dagTitle:apply')"
|
||||||
v-if="ApplyforReasonVisible"
|
:visible.sync="ApplyforReasonVisible" width="1460px" append-to-body :close-on-click-modal="false"
|
||||||
:title="$t('trials:readTask:dagTitle:apply')"
|
custom-class="base-dialog-wrapper">
|
||||||
:visible.sync="ApplyforReasonVisible"
|
<el-form ref="reasonForm" :rules="rules" :model="ApplyforReasonForm" class="demo-ruleForm" size="small"
|
||||||
width="1460px"
|
label-width="380px">
|
||||||
append-to-body
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
custom-class="base-dialog-wrapper"
|
|
||||||
>
|
|
||||||
<el-form
|
|
||||||
ref="reasonForm"
|
|
||||||
:rules="rules"
|
|
||||||
:model="ApplyforReasonForm"
|
|
||||||
class="demo-ruleForm"
|
|
||||||
size="small"
|
|
||||||
label-width="380px"
|
|
||||||
>
|
|
||||||
<!-- 申请原因 -->
|
<!-- 申请原因 -->
|
||||||
<el-divider content-position="left">{{
|
<el-divider content-position="left">{{
|
||||||
$t('trials:readTask:title:applyReason')
|
$t('trials:readTask:title:applyReason')
|
||||||
}}</el-divider>
|
}}</el-divider>
|
||||||
<!-- 申请原因 -->
|
<!-- 申请原因 -->
|
||||||
<el-form-item
|
<el-form-item :label="$t('trials:readTask:title:applyReason')" prop="Type" :rules="[
|
||||||
:label="$t('trials:readTask:title:applyReason')"
|
{ required: true, message: $t('common:ruleMessage:select') },
|
||||||
prop="Type"
|
]">
|
||||||
:rules="[
|
|
||||||
{ required: true, message: $t('common:ruleMessage:select') },
|
|
||||||
]"
|
|
||||||
>
|
|
||||||
<el-radio-group v-model="ApplyforReasonForm.Type">
|
<el-radio-group v-model="ApplyforReasonForm.Type">
|
||||||
<!-- 阅片记录错误 -->
|
<!-- 阅片记录错误 -->
|
||||||
<el-radio :label="1">{{
|
<el-radio :label="1">{{
|
||||||
|
@ -422,36 +278,19 @@
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 备注 -->
|
<!-- 备注 -->
|
||||||
<el-form-item
|
<el-form-item v-if="ApplyforReasonForm.Type === 2" :label="$t('trials:readTask:title:remark')"
|
||||||
v-if="ApplyforReasonForm.Type === 2"
|
prop="RequestReReadingReason">
|
||||||
:label="$t('trials:readTask:title:remark')"
|
<el-input v-model="ApplyforReasonForm.RequestReReadingReason" type="textarea" style="width: 400px"
|
||||||
prop="RequestReReadingReason"
|
:autosize="{ minRows: 2, maxRows: 4 }" :placeholder="$t('common:ruleMessage:specify')" maxlength="500"
|
||||||
>
|
show-word-limit />
|
||||||
<el-input
|
|
||||||
v-model="ApplyforReasonForm.RequestReReadingReason"
|
|
||||||
type="textarea"
|
|
||||||
style="width: 400px"
|
|
||||||
:autosize="{ minRows: 2, maxRows: 4 }"
|
|
||||||
:placeholder="$t('common:ruleMessage:specify')"
|
|
||||||
maxlength="500"
|
|
||||||
show-word-limit
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 是否复制阅片表单 -->
|
<!-- 是否复制阅片表单 -->
|
||||||
<el-form-item
|
<el-form-item :label="$t('trials:readTask:title:copyForm')" prop="IsCopyOrigenalForms" :rules="[
|
||||||
:label="$t('trials:readTask:title:copyForm')"
|
{ required: true, message: $t('common:ruleMessage:select') },
|
||||||
prop="IsCopyOrigenalForms"
|
]">
|
||||||
:rules="[
|
|
||||||
{ required: true, message: $t('common:ruleMessage:select') },
|
|
||||||
]"
|
|
||||||
>
|
|
||||||
<el-radio-group v-model="ApplyforReasonForm.IsCopyOrigenalForms">
|
<el-radio-group v-model="ApplyforReasonForm.IsCopyOrigenalForms">
|
||||||
<el-radio
|
<el-radio v-for="item of $d.YesOrNo" :key="`IsCopyOrigenalForms${item.raw.Id}`" :label="item.value">{{
|
||||||
v-for="item of $d.YesOrNo"
|
item.label }}</el-radio>
|
||||||
:key="`IsCopyOrigenalForms${item.raw.Id}`"
|
|
||||||
:label="item.value"
|
|
||||||
>{{ item.label }}</el-radio
|
|
||||||
>
|
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
@ -459,42 +298,22 @@
|
||||||
<el-divider content-position="left">{{
|
<el-divider content-position="left">{{
|
||||||
$t('trials:readTask:title:influenceList')
|
$t('trials:readTask:title:influenceList')
|
||||||
}}</el-divider>
|
}}</el-divider>
|
||||||
<div
|
<div style="
|
||||||
style="
|
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
border: 1px solid #e0e0e0;
|
border: 1px solid #e0e0e0;
|
||||||
max-height: 650px;
|
max-height: 650px;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
"
|
">
|
||||||
>
|
<el-table v-loading="loading" :data="InfluenceTaskList" stripe height="100" style="min-height: 400px">
|
||||||
<el-table
|
|
||||||
v-loading="loading"
|
|
||||||
:data="InfluenceTaskList"
|
|
||||||
stripe
|
|
||||||
height="100"
|
|
||||||
style="min-height: 400px"
|
|
||||||
>
|
|
||||||
<!-- 任务编号 -->
|
<!-- 任务编号 -->
|
||||||
<el-table-column
|
<el-table-column prop="TaskCode" :label="$t('trials:readTask:table:taskCode')" min-width="100"
|
||||||
prop="TaskCode"
|
show-overflow-tooltip />
|
||||||
:label="$t('trials:readTask:table:taskCode')"
|
|
||||||
min-width="100"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- 中心编号 -->
|
<!-- 中心编号 -->
|
||||||
<el-table-column
|
<el-table-column prop="TrialSiteCode" :label="$t('trials:readTask:table:siteCode')" min-width="100"
|
||||||
prop="TrialSiteCode"
|
show-overflow-tooltip />
|
||||||
:label="$t('trials:readTask:table:siteCode')"
|
|
||||||
min-width="100"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- 受试者编号 -->
|
<!-- 受试者编号 -->
|
||||||
<el-table-column
|
<el-table-column prop="SubjectCode" :label="$t('trials:readTask:table:subjectCode')" min-width="120"
|
||||||
prop="SubjectCode"
|
show-overflow-tooltip />
|
||||||
:label="$t('trials:readTask:table:subjectCode')"
|
|
||||||
min-width="120"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- <el-table-column
|
<!-- <el-table-column
|
||||||
prop="VisitTaskNum"
|
prop="VisitTaskNum"
|
||||||
label="访视/阅片期名称"
|
label="访视/阅片期名称"
|
||||||
|
@ -506,26 +325,14 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
<!-- 盲态任务标识 -->
|
<!-- 盲态任务标识 -->
|
||||||
<el-table-column
|
<el-table-column prop="TaskName" :label="$t('trials:readTask:table:TaskName')" min-width="120"
|
||||||
prop="TaskName"
|
show-overflow-tooltip />
|
||||||
:label="$t('trials:readTask:table:TaskName')"
|
|
||||||
min-width="120"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- 阅片标准 -->
|
<!-- 阅片标准 -->
|
||||||
<el-table-column
|
<el-table-column prop="TrialReadingCriterionName" :label="$t('trials:readTask:table:criterionName')"
|
||||||
prop="TrialReadingCriterionName"
|
min-width="100" show-overflow-tooltip />
|
||||||
:label="$t('trials:readTask:table:criterionName')"
|
|
||||||
min-width="100"
|
|
||||||
show-overflow-tooltip
|
|
||||||
/>
|
|
||||||
<!-- 任务状态 -->
|
<!-- 任务状态 -->
|
||||||
<el-table-column
|
<el-table-column prop="TaskState" :label="$t('trials:readTask:table:taskState')" min-width="100"
|
||||||
prop="TaskState"
|
show-overflow-tooltip>
|
||||||
:label="$t('trials:readTask:table:taskState')"
|
|
||||||
min-width="100"
|
|
||||||
show-overflow-tooltip
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tag v-if="scope.row.TaskState === 0" type="primary">{{
|
<el-tag v-if="scope.row.TaskState === 0" type="primary">{{
|
||||||
$fd('TaskState', scope.row.TaskState)
|
$fd('TaskState', scope.row.TaskState)
|
||||||
|
@ -567,12 +374,8 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
<!-- 阅片状态 -->
|
<!-- 阅片状态 -->
|
||||||
<el-table-column
|
<el-table-column prop="ReadingTaskState" :label="$t('trials:readTask:table:readingTaskState')" min-width="100"
|
||||||
prop="ReadingTaskState"
|
show-overflow-tooltip>
|
||||||
:label="$t('trials:readTask:table:readingTaskState')"
|
|
||||||
min-width="100"
|
|
||||||
show-overflow-tooltip
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tag v-if="scope.row.ReadingTaskState === 2" type="primary">{{
|
<el-tag v-if="scope.row.ReadingTaskState === 2" type="primary">{{
|
||||||
$fd('ReadingTaskState', scope.row.ReadingTaskState)
|
$fd('ReadingTaskState', scope.row.ReadingTaskState)
|
||||||
|
@ -583,12 +386,8 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<!-- 生效后影响 -->
|
<!-- 生效后影响 -->
|
||||||
<el-table-column
|
<el-table-column prop="OptType" :label="$t('trials:readTask:table:optType')" min-width="100"
|
||||||
prop="OptType"
|
show-overflow-tooltip>
|
||||||
:label="$t('trials:readTask:table:optType')"
|
|
||||||
min-width="100"
|
|
||||||
show-overflow-tooltip
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tag v-if="scope.row.OptType === 0" type="primary">{{
|
<el-tag v-if="scope.row.OptType === 0" type="primary">{{
|
||||||
$fd('ReReadingOrBackOptType', scope.row.OptType)
|
$fd('ReReadingOrBackOptType', scope.row.OptType)
|
||||||
|
@ -602,12 +401,8 @@
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<!-- 阅片人 -->
|
<!-- 阅片人 -->
|
||||||
<el-table-column
|
<el-table-column prop="UserName" :label="$t('trials:readTask:table:reader')" min-width="160"
|
||||||
prop="UserName"
|
show-overflow-tooltip>
|
||||||
:label="$t('trials:readTask:table:reader')"
|
|
||||||
min-width="160"
|
|
||||||
show-overflow-tooltip
|
|
||||||
>
|
|
||||||
<template v-if="scope.row.DoctorUser" slot-scope="scope">
|
<template v-if="scope.row.DoctorUser" slot-scope="scope">
|
||||||
{{ scope.row.DoctorUser.UserName }}({{
|
{{ scope.row.DoctorUser.UserName }}({{
|
||||||
scope.row.DoctorUser.FullName
|
scope.row.DoctorUser.FullName
|
||||||
|
@ -618,42 +413,23 @@
|
||||||
</div>
|
</div>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
<!-- 取消 -->
|
<!-- 取消 -->
|
||||||
<el-button
|
<el-button :disabled="btnLoading" size="small" type="primary" @click="
|
||||||
:disabled="btnLoading"
|
ApplyforReasonVisible = false
|
||||||
size="small"
|
ApplyforReasonForm = { Type: null, RequestReReadingReason: null }
|
||||||
type="primary"
|
">
|
||||||
@click="
|
|
||||||
ApplyforReasonVisible = false
|
|
||||||
ApplyforReasonForm = { Type: null, RequestReReadingReason: null }
|
|
||||||
"
|
|
||||||
>
|
|
||||||
{{ $t('common:button:cancel') }}
|
{{ $t('common:button:cancel') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
<!-- 保存 -->
|
<!-- 保存 -->
|
||||||
<el-button
|
<el-button :loading="btnLoading" size="small" type="primary" @click="applyReReading">
|
||||||
:loading="btnLoading"
|
|
||||||
size="small"
|
|
||||||
type="primary"
|
|
||||||
@click="applyReReading"
|
|
||||||
>
|
|
||||||
{{ $t('common:button:save') }}
|
{{ $t('common:button:save') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 审核记录 -->
|
<!-- 审核记录 -->
|
||||||
<el-dialog
|
<el-dialog v-if="auditRecordVisible" :visible.sync="auditRecordVisible" :close-on-click-modal="false"
|
||||||
v-if="auditRecordVisible"
|
custom-class="base-dialog-wrapper" :title="`审核记录(${currentRow.SubjectCode} | ${currentRow.TaskName})`"
|
||||||
:visible.sync="auditRecordVisible"
|
width="600px">
|
||||||
:close-on-click-modal="false"
|
<ChatForm :row-data="currentRow" @getList="getList" @close="auditRecordVisible = false" />
|
||||||
custom-class="base-dialog-wrapper"
|
|
||||||
:title="`审核记录(${currentRow.SubjectCode} | ${currentRow.TaskName})`"
|
|
||||||
width="600px"
|
|
||||||
>
|
|
||||||
<ChatForm
|
|
||||||
:row-data="currentRow"
|
|
||||||
@getList="getList"
|
|
||||||
@close="auditRecordVisible = false"
|
|
||||||
/>
|
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</BaseContainer>
|
</BaseContainer>
|
||||||
</template>
|
</template>
|
||||||
|
@ -671,10 +447,12 @@ import ChatForm from './components/ChatForm'
|
||||||
import { getToken } from '@/utils/auth'
|
import { getToken } from '@/utils/auth'
|
||||||
import { showReadReport, showTumorReport } from '@/api/export'
|
import { showReadReport, showTumorReport } from '@/api/export'
|
||||||
import { downLoadFile } from '@/utils/stream.js'
|
import { downLoadFile } from '@/utils/stream.js'
|
||||||
|
import { getAutoCutNextTask } from '@/api/user'
|
||||||
import {
|
import {
|
||||||
getDownloadSubjectVisitStudyInfo,
|
getDownloadSubjectVisitStudyInfo,
|
||||||
downloadImageSuccess,
|
downloadImageSuccess,
|
||||||
} from '@/api/trials.js'
|
} from '@/api/trials.js'
|
||||||
|
import { openWindow } from "@/utils/splitScreen";
|
||||||
const searchDataDefault = () => {
|
const searchDataDefault = () => {
|
||||||
return {
|
return {
|
||||||
SubjectCode: '',
|
SubjectCode: '',
|
||||||
|
@ -780,9 +558,9 @@ export default {
|
||||||
this.reportFlag[item.Id] = true
|
this.reportFlag[item.Id] = true
|
||||||
}
|
}
|
||||||
let res = null;
|
let res = null;
|
||||||
if(key === 'evaluate'){
|
if (key === 'evaluate') {
|
||||||
res = await showReadReport(data);
|
res = await showReadReport(data);
|
||||||
}else{
|
} else {
|
||||||
res = await showTumorReport(data);
|
res = await showTumorReport(data);
|
||||||
}
|
}
|
||||||
if (res.IsSuccess) {
|
if (res.IsSuccess) {
|
||||||
|
@ -852,11 +630,9 @@ export default {
|
||||||
series.InstanceList.forEach((instance) => {
|
series.InstanceList.forEach((instance) => {
|
||||||
let fileName = instance.Path.split('/').pop()
|
let fileName = instance.Path.split('/').pop()
|
||||||
let obj = {
|
let obj = {
|
||||||
name: `${data.SubjectCode}_${data.VisitName}/${
|
name: `${data.SubjectCode}_${data.VisitName}/${study.StudyCode
|
||||||
study.StudyCode
|
}_${study.StudyTime.split(' ')[0]}_${series.Modality
|
||||||
}_${study.StudyTime.split(' ')[0]}_${
|
}/${fileName}`,
|
||||||
series.Modality
|
|
||||||
}/${fileName}`,
|
|
||||||
url: this.OSSclientConfig.basePath + instance.Path,
|
url: this.OSSclientConfig.basePath + instance.Path,
|
||||||
}
|
}
|
||||||
files.push(obj)
|
files.push(obj)
|
||||||
|
@ -887,7 +663,7 @@ export default {
|
||||||
this.TrialReadingCriterionId =
|
this.TrialReadingCriterionId =
|
||||||
this.trialCriterionList[0].TrialReadingCriterionId
|
this.trialCriterionList[0].TrialReadingCriterionId
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => { })
|
||||||
},
|
},
|
||||||
// 重阅历史
|
// 重阅历史
|
||||||
reReadingHistory(row) {
|
reReadingHistory(row) {
|
||||||
|
@ -929,7 +705,7 @@ export default {
|
||||||
this.dateValue = []
|
this.dateValue = []
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
handleReadImage(row) {
|
async handleReadImage(row) {
|
||||||
if (this.openWindow) {
|
if (this.openWindow) {
|
||||||
this.openWindow.close()
|
this.openWindow.close()
|
||||||
}
|
}
|
||||||
|
@ -950,7 +726,24 @@ export default {
|
||||||
path = `/noneDicomReading?TrialReadingCriterionId=${row.TrialReadingCriterionId}&trialId=${this.trialId}&subjectCode=${row.SubjectCode}&subjectId=${row.SubjectId}&visitTaskId=${row.Id}&isReadingTaskViewInOrder=${row.IsReadingTaskViewInOrder}&criterionType=${row.CriterionType}&readingTool=${row.ReadingTool}&TokenKey=${token}`
|
path = `/noneDicomReading?TrialReadingCriterionId=${row.TrialReadingCriterionId}&trialId=${this.trialId}&subjectCode=${row.SubjectCode}&subjectId=${row.SubjectId}&visitTaskId=${row.Id}&isReadingTaskViewInOrder=${row.IsReadingTaskViewInOrder}&criterionType=${row.CriterionType}&readingTool=${row.ReadingTool}&TokenKey=${token}`
|
||||||
}
|
}
|
||||||
var routeData = this.$router.resolve({ path })
|
var routeData = this.$router.resolve({ path })
|
||||||
this.openWindow = window.open(routeData.href, '_blank')
|
const res = await getAutoCutNextTask()
|
||||||
|
let IsDoubleScreen = false
|
||||||
|
if (res.IsSuccess) {
|
||||||
|
IsDoubleScreen = res.Result.IsDoubleScreen
|
||||||
|
}
|
||||||
|
if (IsDoubleScreen) {
|
||||||
|
this.openWindow = await openWindow(routeData.href)
|
||||||
|
if (!this.openWindow) {
|
||||||
|
let html = `<div><span>${this.$t("trials:reading:tip:MultiScreen2")}</span><a style="color:#409EFF"
|
||||||
|
href="/screen.pdf"
|
||||||
|
target="blank">${this.$t("trials:reading:tip:openFile")}</a></div>`
|
||||||
|
let confirm = await this.$confirm(html, '', { dangerouslyUseHTMLString: true })
|
||||||
|
if (!confirm) return false
|
||||||
|
this.openWindow = await openWindow(routeData.href, '', true)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.openWindow = window.open(routeData.href, "_blank");
|
||||||
|
}
|
||||||
},
|
},
|
||||||
async openApplyReReading(row) {
|
async openApplyReReading(row) {
|
||||||
try {
|
try {
|
||||||
|
|
Loading…
Reference in New Issue