1
continuous-integration/drone/push Build is passing Details

main
wangxiaoshuang 2025-07-10 14:35:28 +08:00
parent b3dfffe182
commit a42beeb47e
1 changed files with 60 additions and 161 deletions

View File

@ -1,39 +1,19 @@
<template> <template>
<div> <div>
<el-form <el-form ref="dicomConfigForm" v-loading="loading" :model="form" label-width="300px" style="width: 800px"
ref="dicomConfigForm" :rules="rules" size="small">
v-loading="loading"
:model="form"
label-width="300px"
style="width: 800px"
:rules="rules"
size="small"
>
<!-- pacs直连 --> <!-- pacs直连 -->
<el-form-item <el-form-item :label="$t('trials:dicomCfg:form:pacsLine')" prop="IsPACSConnect">
:label="$t('trials:dicomCfg:form:pacsLine')" <el-radio-group v-model="form.IsPACSConnect" :disabled="form.IsTrialPACSConfirmed && !isEdit"
prop="IsPACSConnect" @change="changeConnect">
> <el-radio v-for="item of $d.PACSConnectMode" :key="item.id" :label="item.value">
<el-radio-group
v-model="form.IsPACSConnect"
:disabled="form.IsTrialPACSConfirmed && !isEdit"
@change="changeConnect"
>
<el-radio
v-for="item of $d.PACSConnectMode"
:key="item.id"
:label="item.value"
>
{{ item.label }} {{ item.label }}
</el-radio> </el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<template v-if="form.IsPACSConnect"> <template v-if="form.IsPACSConnect">
<!--AE名称--> <!--AE名称-->
<el-form-item <el-form-item :label="$t('trials:dicomCfg:form:CalledAE')" prop="CalledAE">
:label="$t('trials:dicomCfg:form:CalledAE')"
prop="CalledAE"
>
<p class="form_p copyBox"> <p class="form_p copyBox">
{{ form.CalledAE }} {{ form.CalledAE }}
<el-tooltip placement="right" effect="light" v-if="form.CalledAE"> <el-tooltip placement="right" effect="light" v-if="form.CalledAE">
@ -51,143 +31,83 @@
<p class="form_p">{{ form.Port }}</p> <p class="form_p">{{ form.Port }}</p>
</el-form-item> </el-form-item>
<!--状态--> <!--状态-->
<el-form-item <el-form-item :label="$t('trials:dicomCfg:form:IsTestOK')" prop="IsTestOK" style="position: relative">
:label="$t('trials:dicomCfg:form:IsTestOK')" <el-tag :type="form.IsTestOK ? 'success' : 'danger'" effect="plain" v-if="form.IsTestOK !== null">
prop="IsTestOK"
style="position: relative"
>
<el-tag
:type="form.IsTestOK ? 'success' : 'danger'"
effect="plain"
v-if="form.IsTestOK !== null"
>
{{ $fd('DicomTest', form.IsTestOK) }} {{ $fd('DicomTest', form.IsTestOK) }}
</el-tag> </el-tag>
<!-- 测试DICOM AE style="position: absolute; right: 100px; top: 0"--> <!-- 测试DICOM AE style="position: absolute; right: 100px; top: 0"-->
<el-button <el-button v-if="
v-if=" hasPermi(['trials:trials-panel:setting:trial-config:save']) &&
hasPermi(['trials:trials-panel:setting:trial-config:save']) && form.IsPACSConnect
form.IsPACSConnect " style="margin-left: 10px" type="primary" size="mini" @click.stop="testSCPServerConnect">
"
style="margin-left: 10px"
type="primary"
size="mini"
@click.stop="testSCPServerConnect"
>
{{ $t('common:button:DicomTest') }} {{ $t('common:button:DicomTest') }}
</el-button> </el-button>
</el-form-item> </el-form-item>
</template> </template>
<el-form-item> <el-form-item>
<!-- 保存 --> <!-- 保存 -->
<el-button <el-button v-if="
v-if=" form.IsTrialPACSConfirmed === false &&
form.IsTrialPACSConfirmed === false && hasPermi(['trials:trials-panel:setting:trial-config:save'])
hasPermi(['trials:trials-panel:setting:trial-config:save']) " type="primary" @click="addOrUpdateDicomAE">
"
type="primary"
@click="addOrUpdateDicomAE"
>
{{ $t('common:button:save') }} {{ $t('common:button:save') }}
</el-button> </el-button>
<!-- 配置确认:disabled="!form.IsTestOK" --> <!-- 配置确认:disabled="!form.IsTestOK" -->
<el-button <el-button v-if="
v-if=" form.IsTrialPACSConfirmed === false &&
form.IsTrialPACSConfirmed === false && hasPermi(['trials:trials-panel:setting:trial-config:save'])
hasPermi(['trials:trials-panel:setting:trial-config:save']) " type="primary" @click="handleConfirm">
"
type="primary"
@click="handleConfirm"
>
{{ $t('trials:trialCfg:button:confirm') }} {{ $t('trials:trialCfg:button:confirm') }}
</el-button> </el-button>
<!-- 配置更新 --> <!-- 配置更新 -->
<el-button <el-button v-if="
v-if=" form.IsTrialPACSConfirmed === true &&
form.IsTrialPACSConfirmed === true && !isEdit &&
!isEdit && hasPermi(['trials:trials-panel:setting:trial-config:save'])
hasPermi(['trials:trials-panel:setting:trial-config:save']) " type="primary" @click="isEdit = true">
"
type="primary"
@click="isEdit = true"
>
{{ $t('trials:trialCfg:button:update') }} {{ $t('trials:trialCfg:button:update') }}
</el-button> </el-button>
<!-- 配置更新确认:disabled="!form.IsTestOK" --> <!-- 配置更新确认:disabled="!form.IsTestOK" -->
<el-button <el-button v-if="
v-if=" form.IsTrialPACSConfirmed === true &&
form.IsTrialPACSConfirmed === true && isEdit &&
isEdit && hasPermi(['trials:trials-panel:setting:trial-config:save'])
hasPermi(['trials:trials-panel:setting:trial-config:save']) " type="primary" @click="handleUpdate">
"
type="primary"
@click="handleUpdate"
>
{{ $t('trials:trialCfg:button:updateAndConfirm') }} {{ $t('trials:trialCfg:button:updateAndConfirm') }}
</el-button> </el-button>
<!-- 取消 --> <!-- 取消 -->
<el-button <el-button v-if="
v-if=" form.IsTrialPACSConfirmed === true &&
form.IsTrialPACSConfirmed === true && isEdit &&
isEdit && hasPermi(['trials:trials-panel:setting:trial-config:save'])
hasPermi(['trials:trials-panel:setting:trial-config:save']) " type="primary" @click.stop="confirmCancel">
"
type="primary"
@click.stop="confirmCancel"
>
{{ $t('common:button:cancel') }} {{ $t('common:button:cancel') }}
</el-button> </el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<!-- 配置信息签名框 --> <!-- 配置信息签名框 -->
<el-dialog <el-dialog v-if="signVisible" :visible.sync="signVisible" :close-on-click-modal="false" width="600px"
v-if="signVisible" custom-class="base-dialog-wrapper">
:visible.sync="signVisible"
:close-on-click-modal="false"
width="600px"
custom-class="base-dialog-wrapper"
>
<div slot="title"> <div slot="title">
<span style="font-size: 18px">{{ $t('common:dialogTitle:sign') }}</span> <span style="font-size: 18px">{{ $t('common:dialogTitle:sign') }}</span>
<span style="font-size: 12px; margin-left: 5px">{{ <span style="font-size: 12px; margin-left: 5px">{{
`(${$t('common:label:sign')}${currentUser})` `(${$t('common:label:sign')}${currentUser})`
}}</span> }}</span>
</div> </div>
<SignForm <SignForm ref="signForm" :sign-code-enum="signCode" @closeDialog="closeSignDialog" />
ref="signForm"
:sign-code-enum="signCode"
@closeDialog="closeSignDialog"
/>
</el-dialog> </el-dialog>
<!-- 配置信息确认框 --> <!-- 配置信息确认框 -->
<el-dialog <el-dialog v-if="confirmVisible" :visible.sync="confirmVisible" :close-on-click-modal="false" width="600px"
v-if="confirmVisible" :title="$t('trials:trialCfg:dialogTitle:cfgConfirm')" custom-class="base-dialog-wrapper">
:visible.sync="confirmVisible"
:close-on-click-modal="false"
width="600px"
:title="$t('trials:trialCfg:dialogTitle:cfgConfirm')"
custom-class="base-dialog-wrapper"
>
<div class="base-dialog-body"> <div class="base-dialog-body">
<el-table :data="confirmData" border style="width: 100%" size="small"> <el-table :data="confirmData" border style="width: 100%" size="small">
<!-- 配置项 --> <!-- 配置项 -->
<el-table-column <el-table-column prop="Name" :label="$t('trials:trialCfg:table:cfgItem')" show-overflow-tooltip />
prop="Name"
:label="$t('trials:trialCfg:table:cfgItem')"
show-overflow-tooltip
/>
<!-- 配置值 --> <!-- 配置值 -->
<el-table-column <el-table-column prop="NewVal" :label="$t('trials:trialCfg:table:cfgVal')" show-overflow-tooltip />
prop="NewVal"
:label="$t('trials:trialCfg:table:cfgVal')"
show-overflow-tooltip
/>
</el-table> </el-table>
</div> </div>
<div <div class="base-dialog-footer" style="text-align: right; margin-top: 10px">
class="base-dialog-footer"
style="text-align: right; margin-top: 10px"
>
<!-- 确认 --> <!-- 确认 -->
<el-button size="small" type="primary" @click="handleConfirmConfigData"> <el-button size="small" type="primary" @click="handleConfirmConfigData">
{{ $t('trials:trialCfg:button:confirmCfg') }} {{ $t('trials:trialCfg:button:confirmCfg') }}
@ -196,51 +116,27 @@
</el-dialog> </el-dialog>
<!-- 配置信息更新框 --> <!-- 配置信息更新框 -->
<el-dialog <el-dialog v-if="updateVisible" :visible.sync="updateVisible" :close-on-click-modal="false" width="600px"
v-if="updateVisible" :title="$t('trials:trialCfg:dialogTitle:cfgConfirm')" custom-class="base-dialog-wrapper">
:visible.sync="updateVisible"
:close-on-click-modal="false"
width="600px"
:title="$t('trials:trialCfg:dialogTitle:cfgConfirm')"
custom-class="base-dialog-wrapper"
>
<div class="base-dialog-body"> <div class="base-dialog-body">
<el-table :data="confirmData" border style="width: 100%" size="small"> <el-table :data="confirmData" border style="width: 100%" size="small">
<!-- 配置项 --> <!-- 配置项 -->
<el-table-column <el-table-column prop="Name" :label="$t('trials:trialCfg:table:cfgItem')" show-overflow-tooltip />
prop="Name"
:label="$t('trials:trialCfg:table:cfgItem')"
show-overflow-tooltip
/>
<!-- 配置值更改前 --> <!-- 配置值更改前 -->
<el-table-column <el-table-column prop="OldVal" :label="`${$t('trials:trialCfg:table:cfgVal')} ${$t(
prop="OldVal" 'trials:trialCfg:table:beforeChange'
:label="`${$t('trials:trialCfg:table:cfgVal')} ${$t( )}`" show-overflow-tooltip />
'trials:trialCfg:table:beforeChange'
)}`"
show-overflow-tooltip
/>
<!-- 配置值更改后 --> <!-- 配置值更改后 -->
<el-table-column <el-table-column prop="NewVal" :label="`${$t('trials:trialCfg:table:cfgVal')} ${$t(
prop="NewVal" 'trials:trialCfg:table:updated'
:label="`${$t('trials:trialCfg:table:cfgVal')} ${$t( )}`" show-overflow-tooltip>
'trials:trialCfg:table:updated'
)}`"
show-overflow-tooltip
>
<template slot-scope="scope"> <template slot-scope="scope">
<span <span :class="{ fontColor: scope.row.NewVal !== scope.row.OldVal }">{{ scope.row.NewVal }}</span>
:class="{ fontColor: scope.row.NewVal !== scope.row.OldVal }"
>{{ scope.row.NewVal }}</span
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<div <div class="base-dialog-footer" style="text-align: right; margin-top: 10px">
class="base-dialog-footer"
style="text-align: right; margin-top: 10px"
>
<!-- 确认 --> <!-- 确认 -->
<el-button size="small" type="primary" @click="handleUpdateConfigData"> <el-button size="small" type="primary" @click="handleUpdateConfigData">
{{ $t('trials:trialCfg:button:confirmCfg') }} {{ $t('trials:trialCfg:button:confirmCfg') }}
@ -381,8 +277,7 @@ export default {
methods: { methods: {
copyLink() { copyLink() {
this.$copyText( this.$copyText(
`${this.$t('trials:dicomCfg:form:CalledAE')}: ${ `${this.$t('trials:dicomCfg:form:CalledAE')}: ${this.form.CalledAE
this.form.CalledAE
}\n${this.$t('trials:dicomCfg:form:Ip')}: ${this.form.Ip}\n${this.$t( }\n${this.$t('trials:dicomCfg:form:Ip')}: ${this.form.Ip}\n${this.$t(
'trials:dicomCfg:form:Port' 'trials:dicomCfg:form:Port'
)}: ${this.form.Port}\n${this.$t( )}: ${this.form.Port}\n${this.$t(
@ -503,6 +398,8 @@ export default {
if (!validate) return if (!validate) return
if (this.Id && !this.form.IsPACSConnect) { if (this.Id && !this.form.IsPACSConnect) {
this.form.Id = this.Id this.form.Id = this.Id
} else {
this.form.Id = null
} }
this.form.TrialId = this.$route.query.trialId this.form.TrialId = this.$route.query.trialId
this.loading = true this.loading = true
@ -625,9 +522,11 @@ export default {
.fontColor { .fontColor {
color: red; color: red;
} }
.form_p { .form_p {
margin: 0; margin: 0;
} }
.copyBox { .copyBox {
cursor: pointer; cursor: pointer;
} }