Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing Details

main
caiyiling 2026-01-07 13:31:42 +08:00
commit bf35797282
4 changed files with 49 additions and 31 deletions

View File

@ -2,19 +2,21 @@
<template> <template>
<div class="trialsTab"> <div class="trialsTab">
<el-tabs v-model="trialsTab" @tab-click="clickTab"> <el-tabs v-model="trialsTab" @tab-click="clickTab">
<el-tab-pane v-for="item of trialsRouter.children.find(v => { return v.name == 'TrialsPanel' }).children" <template v-for="item of trialsRouter.children.find(v => { return v.name == 'TrialsPanel' }).children">
:key="`tab${item.path}`" <el-tab-pane :key="`tab${item.path}`"
:disabled="TotalNeedSignTrialDocCount !== 0 && item.path !== '/trials/trials-panel/attachments'" :disabled="TotalNeedSignTrialDocCount !== 0 && item.path !== '/trials/trials-panel/attachments'"
:label="$t(item.LanguageMark)" :name="item.path"> :label="$t(item.LanguageMark)" :name="item.path" v-if="isShowNode(item)">
<el-tabs v-if="!item.tabHiddn" v-model="trialsTabChild" @tab-click="clickTab" <el-tabs v-if="!item.tabHiddn" v-model="trialsTabChild" @tab-click="clickTab"
style="background-color: #f5f7fa;"> style="background-color: #f5f7fa;">
<template v-for="item1 of item.children"> <template v-for="item1 of item.children">
<el-tab-pane v-if="TrialConfig && isShow(item1.path)" :key="`tab1${item1.path}`" <el-tab-pane v-if="TrialConfig && isShow(item1.path)" :key="`tab1${item1.path}`"
:disabled="TotalNeedSignTrialDocCount !== 0 && item1.path !== '/trials/trials-panel/attachments/self-attachment' || (TrialStatusStr === 'Initializing' && (item1.path === '/trials/trials-panel/setting/personnel-manage' || item1.path === '/trials/trials-panel/setting/qc-question' || item1.path === '/trials/trials-panel/setting/reading-unit' || item1.path === '/trials/trials-panel/setting/medical-audit' || item1.path === '/trials/trials-panel/setting/email-manage'))" :disabled="TotalNeedSignTrialDocCount !== 0 && item1.path !== '/trials/trials-panel/attachments/self-attachment' || (TrialStatusStr === 'Initializing' && (item1.path === '/trials/trials-panel/setting/personnel-manage' || item1.path === '/trials/trials-panel/setting/qc-question' || item1.path === '/trials/trials-panel/setting/reading-unit' || item1.path === '/trials/trials-panel/setting/medical-audit' || item1.path === '/trials/trials-panel/setting/email-manage'))"
:label="$t(item1.LanguageMark)" :name="item1.path" /> :label="$t(item1.LanguageMark)" :name="item1.path" />
</template> </template>
</el-tabs> </el-tabs>
</el-tab-pane> </el-tab-pane>
</template>
</el-tabs> </el-tabs>
<div style="position: absolute;top: 0;right: 0;display: flex;justify-content: space-between;align-items: center"> <div style="position: absolute;top: 0;right: 0;display: flex;justify-content: space-between;align-items: center">
<trials-select /> <trials-select />
@ -117,6 +119,12 @@ export default {
} }
}, },
methods: { methods: {
isShowNode(item) {
if (item.path === '/trials/trials-panel/trial-summary' && item.children.length === 1 && item.children[0].path === '/trials/trials-panel/trial-summary/report-forms' && !this.$store.state.trials.config.IsExternalViewTrialChart && this.hasPermi(['role:cmm', 'role:cpm', 'role:ea', 'role:mc', 'role:smm', 'role:spm'])) {
return false
}
return true
},
isShow: function (path) { isShow: function (path) {
var isShow = true var isShow = true
let chartList = [ let chartList = [

View File

@ -36,8 +36,8 @@
hasPermi(['trials:trials-panel:subject:readingPeriod:edit']) && hasPermi(['trials:trials-panel:subject:readingPeriod:edit']) &&
clinicalType === '1' && clinicalType === '1' &&
type !== 'consistencyAnalysis' type !== 'consistencyAnalysis'
" type="primary" icon="el-icon-download" size="small" :disabled="clinicalDatas.length <= 0" " type="primary" icon="el-icon-download" size="small"
@click="downLoadTemplate"> :disabled="clinicalDatas.filter(item => item.Path).length <= 0" @click="downLoadTemplate">
{{ $t('trials:readingPeriod:cd:title:downLoadTemplate') }} {{ $t('trials:readingPeriod:cd:title:downLoadTemplate') }}
</el-button> </el-button>
<el-button v-if=" <el-button v-if="
@ -132,8 +132,8 @@
<!-- 编辑 --> <!-- 编辑 -->
<el-button v-hasPermi="['trials:trials-panel:subject:readingPeriod:edit']" v-if="clinicalType === '1'" <el-button v-hasPermi="['trials:trials-panel:subject:readingPeriod:edit']" v-if="clinicalType === '1'"
circle :title="$t('trials:readingPeriod:cd:title:cdCheck')" icon="el-icon-s-claim" :disabled="(scope.row.IsCRCUpload || circle :title="$t('trials:readingPeriod:cd:title:cdCheck')" icon="el-icon-s-claim" :disabled="(scope.row.IsCRCUpload ||
scope.row.IsSign || scope.row.IsSign ||
scope.row.UploadRole === 0) && scope.row.UploadRole === 0) &&
scope.row.ReadingClinicalDataState !== 2 scope.row.ReadingClinicalDataState !== 2
" @click="handleVerification(scope.row, 'confirm')" /> " @click="handleVerification(scope.row, 'confirm')" />
<!-- 删除 --> <!-- 删除 -->
@ -274,9 +274,9 @@
<!-- 编辑 --> <!-- 编辑 -->
<el-button v-hasPermi="['trials:trials-panel:subject:readingPeriod:edit']" circle <el-button v-hasPermi="['trials:trials-panel:subject:readingPeriod:edit']" circle
:title="$t('trials:readingPeriod:cd:title:cdCheck')" icon="el-icon-s-claim" :disabled="(scope.row.IsCRCUpload || :title="$t('trials:readingPeriod:cd:title:cdCheck')" icon="el-icon-s-claim" :disabled="(scope.row.IsCRCUpload ||
scope.row.IsSign || scope.row.IsSign ||
scope.row.UploadRole === 0 || scope.row.UploadRole === 0 ||
type === 'consistencyAnalysis') && type === 'consistencyAnalysis') &&
scope.row.ReadingClinicalDataState !== 2 scope.row.ReadingClinicalDataState !== 2
" @click="handleVerification(scope.row, 'confirm')" /> " @click="handleVerification(scope.row, 'confirm')" />
<!-- 删除 --> <!-- 删除 -->

View File

@ -91,7 +91,7 @@ export default {
getTrialCriterionList() { getTrialCriterionList() {
this.loading = true this.loading = true
getTrialCriterionList(this.$route.query.trialId, false).then(res => { getTrialCriterionList(this.$route.query.trialId, false).then(res => {
this.trialCriterionList = res.Result this.trialCriterionList = res.Result.filter(item => [1, 18, 2, 3, 7, 10, 17].includes(Number(item.CriterionType)))
if (this.trialCriterionList.length > 0) { if (this.trialCriterionList.length > 0) {
this.TrialReadingCriterionId = this.trialCriterionList[0].TrialReadingCriterionId this.TrialReadingCriterionId = this.trialCriterionList[0].TrialReadingCriterionId
this.getList() this.getList()

View File

@ -179,14 +179,10 @@ export default {
color: this.color, color: this.color,
tooltip: { tooltip: {
trigger: 'item', trigger: 'item',
formatter: `${obj.titleText} <br/>{b} : {c}` formatter: `{b} : {c}`
}, },
toolbox: { toolbox: {
feature: { show: false
dataView: { readOnly: false },
restore: {},
saveAsImage: {}
}
}, },
legend: { legend: {
data: obj.legendData, data: obj.legendData,
@ -317,6 +313,9 @@ export default {
title: { title: {
text: obj.titleText text: obj.titleText
}, },
toolbox: {
show: false
},
color: this.color, color: this.color,
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
@ -356,6 +355,7 @@ export default {
} }
this.loading_bottom = true this.loading_bottom = true
let res = await getTrialEfficacyEvaluationStatList(data) let res = await getTrialEfficacyEvaluationStatList(data)
if (data.TrialReadingCriterionId !== this.searchData.TrialReadingCriterionId) return false
this.loading_bottom = false this.loading_bottom = false
if (res.IsSuccess) { if (res.IsSuccess) {
let OtherInfo = res.OtherInfo || {} let OtherInfo = res.OtherInfo || {}
@ -421,6 +421,9 @@ export default {
title: { title: {
text: obj.titleText text: obj.titleText
}, },
toolbox: {
show: false
},
color: this.color, color: this.color,
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
@ -434,7 +437,8 @@ export default {
}, },
yAxis: { yAxis: {
name: obj.unit, name: obj.unit,
type: 'value' type: 'value',
minInterval: 1
}, },
series: [ series: [
{ {
@ -444,7 +448,7 @@ export default {
label: { label: {
show: true, show: true,
formatter: `{c}`, formatter: `{c}`,
position: 'inside', position: 'top',
textStyle: { textStyle: {
fontSize: 14, // 14px fontSize: 14, // 14px
color: '#000', // color: '#000', //
@ -467,6 +471,9 @@ export default {
title: { title: {
text: obj.titleText text: obj.titleText
}, },
toolbox: {
show: false
},
color: this.color, color: this.color,
tooltip: { tooltip: {
trigger: 'item', trigger: 'item',
@ -494,7 +501,7 @@ export default {
label: { label: {
show: true, show: true,
formatter: `{c}%`, formatter: `{c}%`,
position: 'inside', position: 'top',
textStyle: { textStyle: {
fontSize: 14, // 14px fontSize: 14, // 14px
color: '#000', // color: '#000', //
@ -521,6 +528,9 @@ export default {
title: { title: {
text: obj.titleText text: obj.titleText
}, },
toolbox: {
show: false
},
color: this.color, color: this.color,
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
@ -560,7 +570,7 @@ export default {
label: { label: {
show: true, show: true,
formatter: `{c}`, formatter: `{c}`,
position: 'inside', position: 'top',
textStyle: { textStyle: {
fontSize: 14, // 14px fontSize: 14, // 14px
color: '#000', // color: '#000', //