PM在阅片期上传临床数据页面调整
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
a602be255b
commit
0b688bc33f
|
@ -9,14 +9,14 @@
|
|||
<!--style="margin:0"-->
|
||||
<h4>
|
||||
<!-- 提示: -->
|
||||
{{ $t("trials:readingPeriod:cd:title:tips") }}
|
||||
{{ $t('trials:readingPeriod:cd:title:tips') }}
|
||||
</h4>
|
||||
<h5>
|
||||
<!-- 当前访视/阅片期需要采集“临床数据名称”。请采集临床数据后,按照模板上传,并签名确认。 -->
|
||||
{{ tips1 }}
|
||||
</h5>
|
||||
<h5>
|
||||
{{ $t("trials:readingPeriod:cd:title:tips2") }}
|
||||
{{ $t('trials:readingPeriod:cd:title:tips2') }}
|
||||
</h5>
|
||||
</div>
|
||||
<div class="top">
|
||||
|
@ -28,7 +28,7 @@
|
|||
:disabled="list.length === 0"
|
||||
@click="handlePreview()"
|
||||
>
|
||||
{{ $t("trials:readingPeriod:cd:title:preview") }}
|
||||
{{ $t('trials:readingPeriod:cd:title:preview') }}
|
||||
</el-button>
|
||||
<!-- 添加 -->
|
||||
<el-button
|
||||
|
@ -43,24 +43,22 @@
|
|||
size="small"
|
||||
@click="handleAdd"
|
||||
>
|
||||
{{ $t("common:button:add") }}
|
||||
{{ $t('common:button:add') }}
|
||||
</el-button>
|
||||
<!--下载模板-->
|
||||
<el-button
|
||||
v-if="
|
||||
otherInfo.IsCanAddClinicalData &&
|
||||
hasPermi(['trials:trials-panel:subject:readingPeriod:edit']) &&
|
||||
clinicalType === '2' &&
|
||||
list.length > 0 &&
|
||||
list[0].ReadingClinicalDataState !== 3 &&
|
||||
!list[0].IsCRCApplicationRevoke &&
|
||||
clinicalType === '1' &&
|
||||
type !== 'consistencyAnalysis'
|
||||
"
|
||||
type="primary"
|
||||
icon="el-icon-plus"
|
||||
icon="el-icon-download"
|
||||
size="small"
|
||||
:disabled="list.length === 0"
|
||||
@click="handleVerification(list[0], 'confirm')"
|
||||
@click="downLoadTemplate"
|
||||
>
|
||||
{{ $t("trials:readingPeriod:cd:title:cdCheck") }}
|
||||
{{ $t('trials:readingPeriod:cd:title:downLoadTemplate') }}
|
||||
</el-button>
|
||||
<el-button
|
||||
v-if="
|
||||
|
@ -102,7 +100,7 @@
|
|||
min-width="100"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ $fd("ClinicalDataUploadRole", scope.row.UploadRole) }}
|
||||
{{ $fd('ClinicalDataUploadRole', scope.row.UploadRole) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- 数据级别 -->
|
||||
|
@ -112,7 +110,7 @@
|
|||
min-width="100"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ $fd("ClinicalLevel", scope.row.ClinicalDataLevel) }}
|
||||
{{ $fd('ClinicalLevel', scope.row.ClinicalDataLevel) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- 传输方式 -->
|
||||
|
@ -122,7 +120,7 @@
|
|||
min-width="120"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ $fd("ClinicalUploadType", scope.row.ClinicalUploadType) }}
|
||||
{{ $fd('ClinicalUploadType', scope.row.ClinicalUploadType) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- 文件数量 -->
|
||||
|
@ -133,7 +131,7 @@
|
|||
>
|
||||
<template slot-scope="scope">
|
||||
{{
|
||||
scope.row.ClinicalUploadType === 0 ? "NA" : scope.row.FileCount
|
||||
scope.row.ClinicalUploadType === 0 ? 'NA' : scope.row.FileCount
|
||||
}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
@ -149,7 +147,7 @@
|
|||
type="info"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -159,7 +157,7 @@
|
|||
type="danger"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -169,7 +167,7 @@
|
|||
type="primary"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -179,7 +177,7 @@
|
|||
type="warning"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -296,10 +294,10 @@
|
|||
>
|
||||
<div slot="title">
|
||||
<span style="font-size: 18px">{{
|
||||
$t("common:dialogTitle:sign")
|
||||
$t('common:dialogTitle:sign')
|
||||
}}</span>
|
||||
<span style="font-size: 12px; margin-left: 5px">{{
|
||||
`(${$t("common:label:sign")}${currentUser})`
|
||||
`(${$t('common:label:sign')}${currentUser})`
|
||||
}}</span>
|
||||
</div>
|
||||
<SignForm
|
||||
|
@ -325,7 +323,7 @@
|
|||
:disabled="list.length === 0"
|
||||
@click="handlePreview()"
|
||||
>
|
||||
{{ $t("trials:readingPeriod:cd:title:preview") }}
|
||||
{{ $t('trials:readingPeriod:cd:title:preview') }}
|
||||
</el-button>
|
||||
<!-- 添加 -->
|
||||
<el-button
|
||||
|
@ -338,7 +336,7 @@
|
|||
size="small"
|
||||
@click="handleAdd"
|
||||
>
|
||||
{{ $t("common:button:add") }}
|
||||
{{ $t('common:button:add') }}
|
||||
</el-button>
|
||||
</div>
|
||||
<div class="main">
|
||||
|
@ -361,7 +359,7 @@
|
|||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ $fd("ClinicalDataUploadRole", scope.row.UploadRole) }}
|
||||
{{ $fd('ClinicalDataUploadRole', scope.row.UploadRole) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- 数据级别 -->
|
||||
|
@ -370,7 +368,7 @@
|
|||
:label="$t('trials:readingPeriod:cd:table:dataLevel')"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ $fd("ClinicalLevel", scope.row.ClinicalDataLevel) }}
|
||||
{{ $fd('ClinicalLevel', scope.row.ClinicalDataLevel) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- 传输方式 -->
|
||||
|
@ -379,7 +377,7 @@
|
|||
:label="$t('trials:readingPeriod:cd:table:transferType')"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
{{ $fd("ClinicalUploadType", scope.row.ClinicalUploadType) }}
|
||||
{{ $fd('ClinicalUploadType', scope.row.ClinicalUploadType) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- 文件数量 -->
|
||||
|
@ -389,7 +387,7 @@
|
|||
>
|
||||
<template slot-scope="scope">
|
||||
{{
|
||||
scope.row.ClinicalUploadType === 0 ? "NA" : scope.row.FileCount
|
||||
scope.row.ClinicalUploadType === 0 ? 'NA' : scope.row.FileCount
|
||||
}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
@ -405,7 +403,7 @@
|
|||
type="info"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -415,7 +413,7 @@
|
|||
type="danger"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -425,7 +423,7 @@
|
|||
type="primary"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -435,7 +433,7 @@
|
|||
type="warning"
|
||||
>{{
|
||||
$fd(
|
||||
"ReadingClinicalDataState",
|
||||
'ReadingClinicalDataState',
|
||||
scope.row.ReadingClinicalDataState
|
||||
)
|
||||
}}</el-tag
|
||||
|
@ -550,10 +548,10 @@
|
|||
>
|
||||
<div slot="title">
|
||||
<span style="font-size: 18px">{{
|
||||
$t("common:dialogTitle:sign")
|
||||
$t('common:dialogTitle:sign')
|
||||
}}</span>
|
||||
<span style="font-size: 12px; margin-left: 5px">{{
|
||||
`(${$t("common:label:sign")}${currentUser})`
|
||||
`(${$t('common:label:sign')}${currentUser})`
|
||||
}}</span>
|
||||
</div>
|
||||
<SignForm
|
||||
|
@ -574,35 +572,36 @@ import {
|
|||
getTrialClinicalDataSelect,
|
||||
getConsistencyAnalysisReadingClinicalDataList,
|
||||
signConsistencyAnalysisReadingClinicalData,
|
||||
} from "@/api/trials";
|
||||
import AddOrEditCD from "./AddOrEditCD";
|
||||
import Verification from "./Verification";
|
||||
import SignForm from "@/views/trials/components/newSignForm";
|
||||
import const_ from "@/const/sign-code";
|
||||
import { getToken } from "@/utils/auth";
|
||||
} from '@/api/trials'
|
||||
import AddOrEditCD from './AddOrEditCD'
|
||||
import Verification from './Verification'
|
||||
import SignForm from '@/views/trials/components/newSignForm'
|
||||
import const_ from '@/const/sign-code'
|
||||
import { getToken } from '@/utils/auth'
|
||||
import { downLoadFile } from '@/utils/stream.js'
|
||||
export default {
|
||||
name: "ClinicalData",
|
||||
name: 'ClinicalData',
|
||||
components: { AddOrEditCD, SignForm, Verification },
|
||||
props: {
|
||||
trialReadingCriterionId: {
|
||||
type: String,
|
||||
default() {
|
||||
return "";
|
||||
return ''
|
||||
},
|
||||
},
|
||||
data: {
|
||||
type: Object,
|
||||
default() {
|
||||
return {};
|
||||
return {}
|
||||
},
|
||||
},
|
||||
type: {
|
||||
default: "readingPeriod",
|
||||
default: 'readingPeriod',
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
clinicalType() {
|
||||
this.getList();
|
||||
this.getList()
|
||||
},
|
||||
},
|
||||
data() {
|
||||
|
@ -613,36 +612,63 @@ export default {
|
|||
list: [],
|
||||
total: 0,
|
||||
dialogVisible: false,
|
||||
addOrUpdateCD: { title: "", visible: false },
|
||||
verification: { title: "", visible: false },
|
||||
addOrUpdateCD: { title: '', visible: false },
|
||||
verification: { title: '', visible: false },
|
||||
currentData: {},
|
||||
currentOption: [],
|
||||
signCode: "",
|
||||
currentUser: zzSessionStorage.getItem("userName"),
|
||||
signCode: '',
|
||||
currentUser: zzSessionStorage.getItem('userName'),
|
||||
signVisible: false,
|
||||
otherInfo: {},
|
||||
spanArr: [],
|
||||
pos: 0,
|
||||
tips1: null,
|
||||
};
|
||||
clinicalDatas: [],
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
if (!(this.data.IsVisit || this.data.IsBaseLine)) {
|
||||
// this.clinicalType = this.$d.GetClinicalType[0].value.toString();
|
||||
this.clinicalType = '1';
|
||||
this.clinicalType = '1'
|
||||
} else {
|
||||
this.getList(true);
|
||||
this.getList(true)
|
||||
}
|
||||
window.addEventListener("message", (res) => {
|
||||
if (res.data.type === "pmConfirmClinical") {
|
||||
this.getList();
|
||||
window.addEventListener('message', (res) => {
|
||||
if (res.data.type === 'pmConfirmClinical') {
|
||||
this.getList()
|
||||
}
|
||||
});
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
// 下载模板
|
||||
async downLoadTemplate() {
|
||||
try {
|
||||
let { files, name } = this.formatDownloadFile()
|
||||
let res = await downLoadFile(files, name, 'zip')
|
||||
} catch (err) {
|
||||
console.log(err)
|
||||
}
|
||||
},
|
||||
// 格式化下载文件路径
|
||||
formatDownloadFile() {
|
||||
let files = [],
|
||||
name = `${this.$route.query.trialId}_${
|
||||
this.data.CriterionName
|
||||
}_template_${new Date().getTime()}.zip`
|
||||
this.clinicalDatas.forEach((item) => {
|
||||
if (item.Path) {
|
||||
let obj = {
|
||||
name: item.FileName,
|
||||
url: this.OSSclientConfig.basePath + item.Path,
|
||||
}
|
||||
files.push(obj)
|
||||
}
|
||||
})
|
||||
return { files, name }
|
||||
},
|
||||
getClinicalDatas() {
|
||||
return new Promise((resolve, reject) => {
|
||||
let message = "";
|
||||
let message = ''
|
||||
let currentData = Object.assign(
|
||||
{},
|
||||
{
|
||||
|
@ -652,113 +678,114 @@ export default {
|
|||
SubjectId: this.data.SubjectId,
|
||||
IsBaseLine: this.data.IsBaseLine,
|
||||
}
|
||||
);
|
||||
)
|
||||
var param = {
|
||||
trialId: currentData.TrialId,
|
||||
IsVisit: currentData.IsVisit,
|
||||
ReadingId: currentData.ReadingId,
|
||||
SubjectId: currentData.SubjectId,
|
||||
ReadingClinicalDataId: currentData.Id ? currentData.Id : "",
|
||||
ReadingClinicalDataId: currentData.Id ? currentData.Id : '',
|
||||
IsBaseLine: currentData.IsBaseLine,
|
||||
TrialReadingCriterionId: this.trialReadingCriterionId,
|
||||
};
|
||||
}
|
||||
getTrialClinicalDataSelect(param)
|
||||
.then((res) => {
|
||||
this.clinicalDatas = res.Result
|
||||
res.Result.forEach((item, index) => {
|
||||
if (index < 1) {
|
||||
message += item.ClinicalDataSetName;
|
||||
message += item.ClinicalDataSetName
|
||||
} else {
|
||||
message = message + "、" + item.ClinicalDataSetName;
|
||||
message = message + '、' + item.ClinicalDataSetName
|
||||
}
|
||||
});
|
||||
resolve(message);
|
||||
})
|
||||
resolve(message)
|
||||
})
|
||||
.catch(() => {
|
||||
reject();
|
||||
});
|
||||
});
|
||||
reject()
|
||||
})
|
||||
})
|
||||
},
|
||||
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
|
||||
if (columnIndex === 6 && row.IsNeedMerge) {
|
||||
const _row = this.spanArr[rowIndex];
|
||||
const _col = _row > 0 ? 1 : 0;
|
||||
const _row = this.spanArr[rowIndex]
|
||||
const _col = _row > 0 ? 1 : 0
|
||||
return {
|
||||
rowspan: _row,
|
||||
colspan: _col,
|
||||
};
|
||||
}
|
||||
}
|
||||
},
|
||||
getSpanArr(data) {
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
if (i === 0) {
|
||||
this.spanArr.push(1);
|
||||
this.pos = 0;
|
||||
this.spanArr.push(1)
|
||||
this.pos = 0
|
||||
} else {
|
||||
// 判断当前元素与上一个元素是否相同
|
||||
if (data[i].IsNeedMerge === data[i - 1].IsNeedMerge) {
|
||||
this.spanArr[this.pos] += 1;
|
||||
this.spanArr.push(0);
|
||||
this.spanArr[this.pos] += 1
|
||||
this.spanArr.push(0)
|
||||
} else {
|
||||
this.spanArr.push(1);
|
||||
this.pos = i;
|
||||
this.spanArr.push(1)
|
||||
this.pos = i
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
getList(is) {
|
||||
this.loading = true;
|
||||
if (this.type === "consistencyAnalysis") {
|
||||
this.loading = true
|
||||
if (this.type === 'consistencyAnalysis') {
|
||||
let data = {
|
||||
SubjectId: this.data.SubjectId,
|
||||
VisitTaskId: this.data.Id,
|
||||
TrialId: this.$route.query.trialId,
|
||||
};
|
||||
}
|
||||
return getConsistencyAnalysisReadingClinicalDataList(data)
|
||||
.then((res) => {
|
||||
this.list = res.Result;
|
||||
this.otherInfo = res.OtherInfo;
|
||||
this.loading = false;
|
||||
this.list = res.Result
|
||||
this.otherInfo = res.OtherInfo
|
||||
this.loading = false
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
this.loading = false
|
||||
})
|
||||
}
|
||||
this.searchData.ReadingId = this.data.Id;
|
||||
this.searchData.SubjectId = this.data.SubjectId;
|
||||
this.searchData.IsVisit = this.data.IsVisit;
|
||||
this.searchData.TrialId = this.data.TrialId;
|
||||
this.searchData.IsBaseLine = this.data.IsBaseLine;
|
||||
this.searchData.TrialReadingCriterionId = this.trialReadingCriterionId;
|
||||
this.searchData.ReadingId = this.data.Id
|
||||
this.searchData.SubjectId = this.data.SubjectId
|
||||
this.searchData.IsVisit = this.data.IsVisit
|
||||
this.searchData.TrialId = this.data.TrialId
|
||||
this.searchData.IsBaseLine = this.data.IsBaseLine
|
||||
this.searchData.TrialReadingCriterionId = this.trialReadingCriterionId
|
||||
if (!is) {
|
||||
this.searchData.GetClinicalType = this.clinicalType;
|
||||
this.searchData.GetClinicalType = this.clinicalType
|
||||
}
|
||||
getReadingClinicalDataList(this.searchData)
|
||||
.then(async (res) => {
|
||||
this.list = res.Result;
|
||||
let message = "";
|
||||
this.list = res.Result
|
||||
let message = ''
|
||||
this.list.forEach((item, index) => {
|
||||
if (index < 1) {
|
||||
message += item.ClinicalDataSetName;
|
||||
message += item.ClinicalDataSetName
|
||||
} else {
|
||||
message = message + "、" + item.ClinicalDataSetName;
|
||||
message = message + '、' + item.ClinicalDataSetName
|
||||
}
|
||||
});
|
||||
if (message === "" || !message) {
|
||||
message = await this.getClinicalDatas();
|
||||
})
|
||||
if (message === '' || !message) {
|
||||
message = await this.getClinicalDatas()
|
||||
}
|
||||
this.tips1 = this.$t("trials:readingPeriod:cd:title:tips1").replace(
|
||||
"临床数据名称",
|
||||
this.tips1 = this.$t('trials:readingPeriod:cd:title:tips1').replace(
|
||||
'临床数据名称',
|
||||
message
|
||||
);
|
||||
this.tips1 = this.tips1.replace("xxx", message);
|
||||
this.pos = 0;
|
||||
this.getSpanArr(this.list);
|
||||
this.otherInfo = res.OtherInfo;
|
||||
this.loading = false;
|
||||
)
|
||||
this.tips1 = this.tips1.replace('xxx', message)
|
||||
this.pos = 0
|
||||
this.getSpanArr(this.list)
|
||||
this.otherInfo = res.OtherInfo
|
||||
this.loading = false
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
handleAdd() {
|
||||
this.currentData = Object.assign(
|
||||
|
@ -770,136 +797,136 @@ export default {
|
|||
SubjectId: this.data.SubjectId,
|
||||
IsBaseLine: this.data.IsBaseLine,
|
||||
}
|
||||
);
|
||||
this.addOrUpdateCD.title = this.$t("common:button:new");
|
||||
this.addOrUpdateCD.visible = true;
|
||||
)
|
||||
this.addOrUpdateCD.title = this.$t('common:button:new')
|
||||
this.addOrUpdateCD.visible = true
|
||||
},
|
||||
handleEdit(row) {
|
||||
this.currentData = { ...row };
|
||||
this.currentData.TrialId = this.data.TrialId;
|
||||
this.currentData.SubjectId = this.data.SubjectId;
|
||||
if (this.type === "readingPeriod") {
|
||||
this.currentData.ReadingId = this.data.Id;
|
||||
this.currentData = { ...row }
|
||||
this.currentData.TrialId = this.data.TrialId
|
||||
this.currentData.SubjectId = this.data.SubjectId
|
||||
if (this.type === 'readingPeriod') {
|
||||
this.currentData.ReadingId = this.data.Id
|
||||
}
|
||||
this.currentData.IsVisit = this.data.IsVisit;
|
||||
this.currentData.IsBaseLine = this.data.IsBaseLine;
|
||||
this.addOrUpdateCD.title = this.$t("common:button:edit");
|
||||
this.currentData.IsVisit = this.data.IsVisit
|
||||
this.currentData.IsBaseLine = this.data.IsBaseLine
|
||||
this.addOrUpdateCD.title = this.$t('common:button:edit')
|
||||
this.currentOption = [
|
||||
{
|
||||
ClinicalDataSetName:
|
||||
this.$i18n.locale === "zh"
|
||||
this.$i18n.locale === 'zh'
|
||||
? row.ClinicalDataSetName
|
||||
: row.ClinicalDataSetEnName,
|
||||
Id: row.ClinicalDataTrialSetId,
|
||||
},
|
||||
];
|
||||
this.addOrUpdateCD.visible = true;
|
||||
]
|
||||
this.addOrUpdateCD.visible = true
|
||||
},
|
||||
handleVerification(row, type) {
|
||||
if (type === "unconfirm") {
|
||||
var token = getToken();
|
||||
if (type === 'unconfirm') {
|
||||
var token = getToken()
|
||||
let routeData = this.$router.resolve({
|
||||
path: `/clinicalData?type=unconfirm&ClinicalDataTrialSetId=${
|
||||
row.ClinicalDataTrialSetId
|
||||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&readingId=${this.data.Id}&readingClinicalDataId=${
|
||||
row.readingClinicalDataId || ""
|
||||
row.readingClinicalDataId || ''
|
||||
}&readModuleId=${row.ReadModuleId}&getClinicalType=${
|
||||
this.clinicalType
|
||||
}&isConfirm=1&IsOnlyGetCRCReadModule=1&TokenKey=${token}`,
|
||||
});
|
||||
if (this.type === "consistencyAnalysis") {
|
||||
})
|
||||
if (this.type === 'consistencyAnalysis') {
|
||||
routeData = this.$router.resolve({
|
||||
path: `/clinicalData?type=unconfirm&ClinicalDataTrialSetId=${
|
||||
row.ClinicalDataTrialSetId
|
||||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&visitTaskId=${this.data.Id}&readingClinicalDataId=${
|
||||
row.readingClinicalDataId || ""
|
||||
row.readingClinicalDataId || ''
|
||||
}&readModuleId=${row.ReadModuleId}&getClinicalType=${
|
||||
this.clinicalType
|
||||
}&isConfirm=1&IsOnlyGetCRCReadModule=1&TokenKey=${token}&&isGetAllConsistencyAnalysis=${0}`,
|
||||
});
|
||||
})
|
||||
}
|
||||
window.open(routeData.href, "_blank");
|
||||
return;
|
||||
window.open(routeData.href, '_blank')
|
||||
return
|
||||
}
|
||||
if (row.IsNeedMerge) {
|
||||
var token = getToken();
|
||||
var token = getToken()
|
||||
let routeData = this.$router.resolve({
|
||||
path: `/clinicalData?ClinicalDataTrialSetId=${
|
||||
row.ClinicalDataTrialSetId
|
||||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&readingId=${this.data.Id}&readingClinicalDataId=${
|
||||
row.readingClinicalDataId || ""
|
||||
row.readingClinicalDataId || ''
|
||||
}&readModuleId=${row.ReadModuleId}&getClinicalType=${
|
||||
this.clinicalType
|
||||
}&isConfirm=1&IsOnlyGetCRCReadModule=1&TokenKey=${token}`,
|
||||
});
|
||||
if (this.type === "consistencyAnalysis") {
|
||||
})
|
||||
if (this.type === 'consistencyAnalysis') {
|
||||
routeData = this.$router.resolve({
|
||||
path: `/clinicalData?ClinicalDataTrialSetId=${
|
||||
row.ClinicalDataTrialSetId
|
||||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&visitTaskId=${this.data.Id}&readingClinicalDataId=${
|
||||
row.readingClinicalDataId || ""
|
||||
row.readingClinicalDataId || ''
|
||||
}&readModuleId=${row.ReadModuleId}&getClinicalType=${
|
||||
this.clinicalType
|
||||
}&isConfirm=1&IsOnlyGetCRCReadModule=1&TokenKey=${token}&&isGetAllConsistencyAnalysis=${0}`,
|
||||
});
|
||||
})
|
||||
}
|
||||
window.open(routeData.href, "_blank");
|
||||
window.open(routeData.href, '_blank')
|
||||
} else {
|
||||
this.currentData = { ...row };
|
||||
this.currentData.TrialId = this.data.TrialId;
|
||||
this.currentData.SubjectId = this.data.SubjectId;
|
||||
if (this.type === "readingPeriod") {
|
||||
this.currentData.ReadingId = this.data.Id;
|
||||
this.currentData = { ...row }
|
||||
this.currentData.TrialId = this.data.TrialId
|
||||
this.currentData.SubjectId = this.data.SubjectId
|
||||
if (this.type === 'readingPeriod') {
|
||||
this.currentData.ReadingId = this.data.Id
|
||||
}
|
||||
this.currentData.IsVisit = this.data.IsVisit;
|
||||
this.currentData.IsBaseLine = this.data.IsBaseLine;
|
||||
this.currentData.IsVisit = this.data.IsVisit
|
||||
this.currentData.IsBaseLine = this.data.IsBaseLine
|
||||
this.verification.title = this.$t(
|
||||
"trials:readingPeriod:cd:title:cdCheck"
|
||||
); // '核查'
|
||||
this.verification.visible = true;
|
||||
'trials:readingPeriod:cd:title:cdCheck'
|
||||
) // '核查'
|
||||
this.verification.visible = true
|
||||
}
|
||||
},
|
||||
handleDelete(row) {
|
||||
this.$confirm(this.$t("trials:readingPeriod:cd:message:delete"), {
|
||||
type: "warning",
|
||||
this.$confirm(this.$t('trials:readingPeriod:cd:message:delete'), {
|
||||
type: 'warning',
|
||||
distinguishCancelAndClose: true,
|
||||
})
|
||||
.then(() => {
|
||||
this.loading = true;
|
||||
this.loading = true
|
||||
deleteReadingClinicalData(row.Id)
|
||||
.then((res) => {
|
||||
this.loading = false;
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
this.getList();
|
||||
this.getList()
|
||||
this.$message.success(
|
||||
this.$t("common:message:deletedSuccessfully")
|
||||
);
|
||||
this.$t('common:message:deletedSuccessfully')
|
||||
)
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false;
|
||||
});
|
||||
this.loading = false
|
||||
})
|
||||
})
|
||||
.catch(() => {});
|
||||
.catch(() => {})
|
||||
},
|
||||
handleSign(from) {
|
||||
// this.currentData = { ...row }
|
||||
this.currentData.IsBlind = from.IsBlind;
|
||||
this.currentData.IsComplete = from.IsComplete;
|
||||
const { CDQualityConfirmation } = const_.processSignature;
|
||||
this.signCode = CDQualityConfirmation;
|
||||
this.signVisible = true;
|
||||
this.currentData.IsBlind = from.IsBlind
|
||||
this.currentData.IsComplete = from.IsComplete
|
||||
const { CDQualityConfirmation } = const_.processSignature
|
||||
this.signCode = CDQualityConfirmation
|
||||
this.signVisible = true
|
||||
},
|
||||
signConfirm(signInfo) {
|
||||
this.loading = true;
|
||||
this.loading = true
|
||||
let params = {
|
||||
data: {
|
||||
readingClinicalDataId: this.currentData.Id,
|
||||
|
@ -908,8 +935,8 @@ export default {
|
|||
TrialReadingCriterionId: this.trialReadingCriterionId,
|
||||
},
|
||||
signInfo: signInfo,
|
||||
};
|
||||
if (this.type === "consistencyAnalysis") {
|
||||
}
|
||||
if (this.type === 'consistencyAnalysis') {
|
||||
params = {
|
||||
data: {
|
||||
consistentClinicalDataId: this.currentData.Id,
|
||||
|
@ -917,94 +944,90 @@ export default {
|
|||
IsComplete: this.currentData.IsComplete,
|
||||
},
|
||||
signInfo: signInfo,
|
||||
};
|
||||
}
|
||||
signConsistencyAnalysisReadingClinicalData(params)
|
||||
.then((res) => {
|
||||
this.loading = false;
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
this.$message.success(
|
||||
this.$t("common:message:savedSuccessfully")
|
||||
);
|
||||
this.$refs["signForm"].btnLoading = false;
|
||||
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
||||
this.$refs['signForm'].btnLoading = false
|
||||
|
||||
this.signVisible = false;
|
||||
this.signVisible = false
|
||||
|
||||
this.getList();
|
||||
this.$emit("getList");
|
||||
this.getList()
|
||||
this.$emit('getList')
|
||||
this.$nextTick(() => {
|
||||
this.verification.visible = false;
|
||||
});
|
||||
this.verification.visible = false
|
||||
})
|
||||
}
|
||||
})
|
||||
.catch((_) => {
|
||||
this.loading = false;
|
||||
this.$refs["signForm"].btnLoading = false;
|
||||
});
|
||||
this.loading = false
|
||||
this.$refs['signForm'].btnLoading = false
|
||||
})
|
||||
} else {
|
||||
ReadClinicalDataSign(params)
|
||||
.then((res) => {
|
||||
this.loading = false;
|
||||
this.loading = false
|
||||
if (res.IsSuccess) {
|
||||
this.$message.success(
|
||||
this.$t("common:message:savedSuccessfully")
|
||||
);
|
||||
this.$refs["signForm"].btnLoading = false;
|
||||
this.$message.success(this.$t('common:message:savedSuccessfully'))
|
||||
this.$refs['signForm'].btnLoading = false
|
||||
|
||||
this.signVisible = false;
|
||||
this.signVisible = false
|
||||
|
||||
this.getList();
|
||||
this.$emit("getList");
|
||||
this.getList()
|
||||
this.$emit('getList')
|
||||
this.$nextTick(() => {
|
||||
this.verification.visible = false;
|
||||
});
|
||||
this.verification.visible = false
|
||||
})
|
||||
}
|
||||
})
|
||||
.catch((_) => {
|
||||
this.loading = false;
|
||||
this.$refs["signForm"].btnLoading = false;
|
||||
});
|
||||
this.loading = false
|
||||
this.$refs['signForm'].btnLoading = false
|
||||
})
|
||||
}
|
||||
},
|
||||
// 关闭签名框并设置确认状态
|
||||
closeSignDialog(isSign, signInfo) {
|
||||
if (isSign) {
|
||||
this.signConfirm(signInfo);
|
||||
this.signConfirm(signInfo)
|
||||
} else {
|
||||
this.signVisible = false;
|
||||
this.loading = false;
|
||||
this.signVisible = false
|
||||
this.loading = false
|
||||
}
|
||||
},
|
||||
handlePreview(readingClinicalDataId, row) {
|
||||
if (row && row.IsNeedMerge) {
|
||||
var token = getToken();
|
||||
var token = getToken()
|
||||
let routeData = this.$router.resolve({
|
||||
path: `/clinicalData?ClinicalDataTrialSetId=${
|
||||
row.ClinicalDataTrialSetId
|
||||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&readingId=${this.data.Id}&readingClinicalDataId=${
|
||||
row.readingClinicalDataId || ""
|
||||
row.readingClinicalDataId || ''
|
||||
}&getClinicalType=${this.clinicalType}&readModuleId=${
|
||||
row.ReadModuleId
|
||||
}&IsOnlyGetCRCReadModule=1&TokenKey=${token}`,
|
||||
});
|
||||
if (this.type === "consistencyAnalysis") {
|
||||
})
|
||||
if (this.type === 'consistencyAnalysis') {
|
||||
routeData = this.$router.resolve({
|
||||
path: `/clinicalData?ClinicalDataTrialSetId=${
|
||||
row.ClinicalDataTrialSetId
|
||||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&visitTaskId=${this.data.Id}&readingClinicalDataId=${
|
||||
row.readingClinicalDataId || ""
|
||||
row.readingClinicalDataId || ''
|
||||
}&getClinicalType=${this.clinicalType}&readModuleId=${
|
||||
row.ReadModuleId
|
||||
}&IsOnlyGetCRCReadModule=1&TokenKey=${token}&&isGetAllConsistencyAnalysis=${0}`,
|
||||
});
|
||||
})
|
||||
}
|
||||
window.open(routeData.href, "_blank");
|
||||
window.open(routeData.href, '_blank')
|
||||
} else {
|
||||
var token = getToken();
|
||||
var routeData;
|
||||
var token = getToken()
|
||||
var routeData
|
||||
if (row) {
|
||||
routeData = this.$router.resolve({
|
||||
path: `/clinicalData?ClinicalDataTrialSetId=${
|
||||
|
@ -1012,47 +1035,47 @@ export default {
|
|||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&readingId=${this.data.Id}&readingClinicalDataId=${
|
||||
readingClinicalDataId || ""
|
||||
readingClinicalDataId || ''
|
||||
}&getClinicalType=${this.clinicalType}&TokenKey=${token}`,
|
||||
});
|
||||
if (this.type === "consistencyAnalysis") {
|
||||
})
|
||||
if (this.type === 'consistencyAnalysis') {
|
||||
routeData = this.$router.resolve({
|
||||
path: `/clinicalData?ClinicalDataTrialSetId=${
|
||||
row.ClinicalDataTrialSetId
|
||||
}&subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&visitTaskId=${this.data.Id}&readingClinicalDataId=${
|
||||
readingClinicalDataId || ""
|
||||
readingClinicalDataId || ''
|
||||
}&getClinicalType=${
|
||||
this.clinicalType
|
||||
}&TokenKey=${token}&&isGetAllConsistencyAnalysis=${0}`,
|
||||
});
|
||||
})
|
||||
}
|
||||
} else {
|
||||
routeData = this.$router.resolve({
|
||||
path: `/clinicalData?subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&readingId=${this.data.Id}&readingClinicalDataId=${
|
||||
readingClinicalDataId || ""
|
||||
readingClinicalDataId || ''
|
||||
}&getClinicalType=${this.clinicalType}&TokenKey=${token}`,
|
||||
});
|
||||
if (this.type === "consistencyAnalysis") {
|
||||
})
|
||||
if (this.type === 'consistencyAnalysis') {
|
||||
routeData = this.$router.resolve({
|
||||
path: `/clinicalData?subjectId=${this.data.SubjectId}&trialId=${
|
||||
this.data.TrialId
|
||||
}&visitTaskId=${this.data.Id}&readingClinicalDataId=${
|
||||
readingClinicalDataId || ""
|
||||
readingClinicalDataId || ''
|
||||
}&getClinicalType=${
|
||||
this.clinicalType
|
||||
}&TokenKey=${token}&&isGetAllConsistencyAnalysis=${0}`,
|
||||
});
|
||||
})
|
||||
}
|
||||
}
|
||||
window.open(routeData.href, "_blank");
|
||||
window.open(routeData.href, '_blank')
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.clinical-data_content {
|
||||
|
|
Loading…
Reference in New Issue