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

uat
wangxiaoshuang 2025-03-11 11:41:49 +08:00
commit 4164b24bd9
12 changed files with 261 additions and 174 deletions

View File

@ -2,19 +2,21 @@
<box-content> <box-content>
<div class="search"> <div class="search">
<el-form :inline="true" size="small" class="base-search-form"> <el-form :inline="true" size="small" class="base-search-form">
<el-form-item label="CRO Name:"> <!-- CRO Name -->
<el-form-item :label="$t('institutions:cros:label:croName')">
<el-input v-model="searchData.CROName" style="width: 100px" /> <el-input v-model="searchData.CROName" style="width: 100px" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleSearch" <el-button type="primary" icon="el-icon-search" @click="handleSearch">
>Search</el-button {{ $t('common:button:search') }}
> </el-button>
<el-button <el-button
type="primary" type="primary"
icon="el-icon-refresh-left" icon="el-icon-refresh-left"
@click="handleReset" @click="handleReset"
>Reset</el-button
> >
{{ $t('common:button:reset') }}
</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span style="margin-left: auto"> <span style="margin-left: auto">
@ -24,7 +26,7 @@
style="margin-left: auto" style="margin-left: auto"
icon="el-icon-plus" icon="el-icon-plus"
@click="handleAddCro" @click="handleAddCro"
>New</el-button >{{ $t('common:button:new') }}</el-button
> >
</span> </span>
</div> </div>
@ -37,30 +39,34 @@
@sort-change="handleSortByColumn" @sort-change="handleSortByColumn"
> >
<el-table-column type="index" width="40" /> <el-table-column type="index" width="40" />
<!-- CRO Code -->
<el-table-column <el-table-column
prop="CROCode" prop="CROCode"
label="CRO Code" :label="$t('institutions:cros:label:croCode')"
min-width="150" min-width="150"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- CRO Name -->
<el-table-column <el-table-column
prop="CROName" prop="CROName"
label="CRO Name" :label="$t('institutions:cros:label:croName')"
min-width="150" min-width="150"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- CRO NameCN -->
<el-table-column <el-table-column
prop="CRONameCN" prop="CRONameCN"
label="CRO NameCN" :label="$t('institutions:cros:label:croNameCN')"
min-width="150" min-width="150"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Level -->
<el-table-column <el-table-column
prop="IsTrialLevel" prop="IsTrialLevel"
label="Level" :label="$t('institutions:cros:label:level')"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
> >
@ -68,7 +74,7 @@
<span>{{ $fd("IsTrialLevel", String(scope.row.IsTrialLevel)) }}</span> <span>{{ $fd("IsTrialLevel", String(scope.row.IsTrialLevel)) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="Action" min-width="200"> <el-table-column :label="$t('common:action:action')" min-width="200">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
circle circle
@ -160,13 +166,13 @@ export default {
// CRO // CRO
handleAddCro() { handleAddCro() {
this.rowData = {}; this.rowData = {};
this.title = "Add"; this.title =this.$t('common:button:new');
this.editVisible = true; this.editVisible = true;
}, },
// CRO // CRO
handleEdit(row) { handleEdit(row) {
this.rowData = row; this.rowData = row;
this.title = "Edit"; this.title = this.$t('common:action:edit');
this.editVisible = true; this.editVisible = true;
}, },
// CRO // CRO

View File

@ -8,16 +8,20 @@
label-width="120px" label-width="120px"
> >
<div class="base-dialog-body"> <div class="base-dialog-body">
<el-form-item label="CRO Name: " prop="CROName"> <!-- CRO Name -->
<el-form-item :label="$t('institutions:cros:label:croName')" prop="CROName">
<el-input v-model="form.CROName" /> <el-input v-model="form.CROName" />
</el-form-item> </el-form-item>
<el-form-item label="CRO NameCN: " prop="CRONameCN"> <!-- CRO NameCN -->
<el-form-item :label="$t('institutions:cros:label:croNameCN')" prop="CRONameCN">
<el-input v-model="form.CRONameCN" /> <el-input v-model="form.CRONameCN" />
</el-form-item> </el-form-item>
<el-form-item label="CRO Code: " prop="CROCode"> <!-- CRO Code -->
<el-form-item :label="$t('institutions:cros:label:croCode')" prop="CROCode">
<el-input v-model="form.CROCode" /> <el-input v-model="form.CROCode" />
</el-form-item> </el-form-item>
<el-form-item label="Level: "> <!-- Level -->
<el-form-item :label="$t('institutions:cros:label:level')">
<el-switch <el-switch
:disabled="!IsTrialLevel" :disabled="!IsTrialLevel"
v-model="form.IsTrialLevel" v-model="form.IsTrialLevel"
@ -30,10 +34,10 @@
<div class="base-dialog-footer" style="text-align: right; margin-top: 10px"> <div class="base-dialog-footer" style="text-align: right; margin-top: 10px">
<el-form-item> <el-form-item>
<el-button :disabled="btnLoading" type="primary" @click="handleCancel" <el-button :disabled="btnLoading" type="primary" @click="handleCancel"
>Cancel</el-button >{{ $t('common:button:cancel') }}</el-button
> >
<el-button type="primary" :loading="btnLoading" @click="handleSave" <el-button type="primary" :loading="btnLoading" @click="handleSave"
>Save</el-button >{{ $t('common:button:save') }}</el-button
> >
</el-form-item> </el-form-item>
</div> </div>
@ -67,16 +71,16 @@ export default {
}, },
rules: { rules: {
CROName: [ CROName: [
{ required: true, message: "Please specify", trigger: "blur" }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: "blur" },
{ max: 500, message: "The maximum length is 500" }, { max: 500, message: this.$t('common:ruleMessage:maxLength') + ' 500' },
], ],
CRONameCN: [ CRONameCN: [
{ required: true, message: "Please specify", trigger: "blur" }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: "blur" },
{ max: 500, message: "The maximum length is 500" }, { max: 500, message: this.$t('common:ruleMessage:maxLength') + ' 500' },
], ],
CROCode: [ CROCode: [
{ required: true, message: "Please specify", trigger: "blur" }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: "blur" },
{ max: 50, message: "The maximum length is 50" }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
}, },
}; };
@ -95,7 +99,7 @@ export default {
.then((res) => { .then((res) => {
this.btnLoading = false; this.btnLoading = false;
if (res.IsSuccess) { if (res.IsSuccess) {
this.$message.success("Saved successfully"); this.$message.success(this.$t('common:message:savedSuccessfully'));
this.$refs["CROForm"].resetFields(); this.$refs["CROForm"].resetFields();
this.$emit("getList"); this.$emit("getList");
this.$emit("close"); this.$emit("close");

View File

@ -8,7 +8,8 @@
label-width="170px" label-width="170px"
> >
<div class="base-dialog-body"> <div class="base-dialog-body">
<el-form-item label="Site: "> <!-- Site -->
<el-form-item :label="$t('institutions:hospitals:label:site')">
<el-select <el-select
v-model="form.SiteId" v-model="form.SiteId"
style="width: 100%" style="width: 100%"
@ -25,40 +26,50 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="Hospital CN: " prop="HospitalNameCN"> <!-- Hospital CN -->
<el-form-item :label="$t('institutions:hospitals:label:hospitalCN')" prop="HospitalNameCN">
<el-input v-model="form.HospitalNameCN" /> <el-input v-model="form.HospitalNameCN" />
</el-form-item> </el-form-item>
<el-form-item label="Hospital EN: " prop="HospitalName"> <!-- Hospital EN -->
<el-form-item :label="$t('institutions:hospitals:label:hospital')" prop="HospitalName">
<el-input v-model="form.HospitalName" /> <el-input v-model="form.HospitalName" />
</el-form-item> </el-form-item>
<!-- Affiliated University CN -->
<el-form-item <el-form-item
label="Affiliated University CN: " :label="$t('institutions:hospitals:label:universityAffiliatedCN')"
prop="UniversityAffiliatedCN" prop="UniversityAffiliatedCN"
> >
<el-input v-model="form.UniversityAffiliatedCN" /> <el-input v-model="form.UniversityAffiliatedCN" />
</el-form-item> </el-form-item>
<!-- Affiliated University EN -->
<el-form-item <el-form-item
label="Affiliated University EN: " :label="$t('institutions:hospitals:label:universityAffiliated')"
prop="UniversityAffiliated" prop="UniversityAffiliated"
> >
<el-input v-model="form.UniversityAffiliated" /> <el-input v-model="form.UniversityAffiliated" />
</el-form-item> </el-form-item>
<el-form-item label="Country CN: " prop="CountryCN"> <!-- Country CN -->
<el-form-item :label="$t('institutions:hospitals:label:countryCN')" prop="CountryCN">
<el-input v-model="form.CountryCN" /> <el-input v-model="form.CountryCN" />
</el-form-item> </el-form-item>
<el-form-item label="Country EN: " prop="Country"> <!-- Country EN -->
<el-form-item :label="$t('institutions:hospitals:label:country')" prop="Country">
<el-input v-model="form.Country" /> <el-input v-model="form.Country" />
</el-form-item> </el-form-item>
<el-form-item label="Province CN: " prop="ProvinceCN"> <!-- Province CN -->
<el-form-item :label="$t('institutions:hospitals:label:provinceCN')" prop="ProvinceCN">
<el-input v-model="form.ProvinceCN" /> <el-input v-model="form.ProvinceCN" />
</el-form-item> </el-form-item>
<el-form-item label="Province EN: " prop="Province"> <!-- Province EN -->
<el-form-item :label="$t('institutions:hospitals:label:province')" prop="Province">
<el-input v-model="form.Province" /> <el-input v-model="form.Province" />
</el-form-item> </el-form-item>
<el-form-item label="City CN: " prop="CityCN"> <!-- City CN -->
<el-form-item :label="$t('institutions:hospitals:label:cityCN')" prop="CityCN">
<el-input v-model="form.CityCN" /> <el-input v-model="form.CityCN" />
</el-form-item> </el-form-item>
<el-form-item label="City EN: " prop="City"> <!-- City EN -->
<el-form-item :label="$t('institutions:hospitals:label:city')" prop="City">
<el-input v-model="form.City" /> <el-input v-model="form.City" />
</el-form-item> </el-form-item>
</div> </div>
@ -69,14 +80,14 @@
size="small" size="small"
type="primary" type="primary"
@click="handleCancel" @click="handleCancel"
>Cancel</el-button >{{ $t('common:button:cancel') }}</el-button
> >
<el-button <el-button
size="small" size="small"
type="primary" type="primary"
:loading="btnLoading" :loading="btnLoading"
@click="handleSave" @click="handleSave"
>Save</el-button >{{ $t('common:button:save') }}</el-button
> >
</el-form-item> </el-form-item>
</div> </div>
@ -121,29 +132,29 @@ export default {
siteList: [], siteList: [],
rules: { rules: {
HospitalNameCN: [ HospitalNameCN: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
UniversityAffiliated: [ UniversityAffiliated: [
{ max: 100, message: 'The maximum length is 100' }, { max: 100, message: this.$t('common:ruleMessage:maxLength') + ' 100' },
], ],
UniversityAffiliatedCN: [ UniversityAffiliatedCN: [
{ max: 100, message: 'The maximum length is 100' }, { max: 100, message: this.$t('common:ruleMessage:maxLength') + ' 100' },
], ],
Country: [{ max: 50, message: 'The maximum length is 50' }], Country: [{ max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' }],
CountryCN: [ CountryCN: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
Province: [{ max: 50, message: 'The maximum length is 50' }], Province: [{ max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' }],
ProvinceCN: [ ProvinceCN: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
City: [{ max: 50, message: 'The maximum length is 50' }], City: [{ max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' }],
CityCN: [ CityCN: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: 'Please specify', trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
}, },
} }
@ -184,7 +195,7 @@ export default {
.then((res) => { .then((res) => {
this.btnLoading = false this.btnLoading = false
if (res.IsSuccess) { if (res.IsSuccess) {
this.$message.success('Saved successfully') this.$message.success(this.$t('common:message:savedSuccessfully'))
this.$refs['hospitalForm'].resetFields() this.$refs['hospitalForm'].resetFields()
this.$emit('getList') this.$emit('getList')
this.$emit('close') this.$emit('close')

View File

@ -2,18 +2,29 @@
<box-content> <box-content>
<div class="search"> <div class="search">
<el-form :inline="true" size="small" class="base-search-form"> <el-form :inline="true" size="small" class="base-search-form">
<el-form-item label="Hospital:"> <!-- Hospital -->
<el-form-item :label="$t('institutions:hospitals:label:hospital')">
<el-input v-model="searchData.HospitalName" style="width:100px;" /> <el-input v-model="searchData.HospitalName" style="width:100px;" />
</el-form-item> </el-form-item>
<el-form-item label="Province:"> <!-- Province -->
<el-form-item :label="$t('institutions:hospitals:label:province')">
<el-input v-model="searchData.Province" style="width:100px;" /> <el-input v-model="searchData.Province" style="width:100px;" />
</el-form-item> </el-form-item>
<el-form-item label="City:"> <!-- City -->
<el-form-item :label="$t('institutions:hospitals:label:city')">
<el-input v-model="searchData.City" style="width:100px;" /> <el-input v-model="searchData.City" style="width:100px;" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleSearch">Search</el-button> <el-button type="primary" icon="el-icon-search" @click="handleSearch">
<el-button type="primary" icon="el-icon-refresh-left" @click="handleReset">Reset</el-button> {{ $t('common:button:search') }}
</el-button>
<el-button
type="primary"
icon="el-icon-refresh-left"
@click="handleReset"
>
{{ $t('common:button:reset') }}
</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span style="margin-left:auto;"> <span style="margin-left:auto;">
@ -23,7 +34,7 @@
style="margin-left:auto;" style="margin-left:auto;"
icon="el-icon-plus" icon="el-icon-plus"
@click="handleAddHospital" @click="handleAddHospital"
>New</el-button> >{{ $t('common:button:new') }}</el-button>
</span> </span>
</div> </div>
<!-- hospital列表 --> <!-- hospital列表 -->
@ -36,79 +47,89 @@
@sort-change="handleSortByColumn" @sort-change="handleSortByColumn"
> >
<el-table-column type="index" width="40" /> <el-table-column type="index" width="40" />
<!-- Hospital -->
<el-table-column <el-table-column
prop="HospitalName" prop="HospitalName"
label="Hospital" :label="$t('institutions:hospitals:label:hospital')"
min-width="120" min-width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Hospital CN -->
<el-table-column <el-table-column
prop="HospitalNameCN" prop="HospitalNameCN"
label="Hospital CN" label="Hospital CN"
:label="$t('institutions:hospitals:label:hospitalCN')"
min-width="120" min-width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- University Affiliated -->
<el-table-column <el-table-column
prop="UniversityAffiliated" prop="UniversityAffiliated"
label="University Affiliated" :label="$t('institutions:hospitals:label:universityAffiliated')"
min-width="170" min-width="170"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- University Affiliated CN -->
<el-table-column <el-table-column
prop="UniversityAffiliatedCN" prop="UniversityAffiliatedCN"
label="University Affiliated CN" :label="$t('institutions:hospitals:label:universityAffiliatedCN')"
min-width="170" min-width="170"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Country -->
<el-table-column <el-table-column
prop="Country" prop="Country"
label="Country" :label="$t('institutions:hospitals:label:country')"
width="120" width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Country CN -->
<el-table-column <el-table-column
prop="CountryCN" prop="CountryCN"
label="Country CN" :label="$t('institutions:hospitals:label:countryCN')"
width="140" width="140"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Province -->
<el-table-column <el-table-column
prop="Province" prop="Province"
label="Province" :label="$t('institutions:hospitals:label:province')"
width="120" width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Province CN -->
<el-table-column <el-table-column
prop="ProvinceCN" prop="ProvinceCN"
label="Province CN" :label="$t('institutions:hospitals:label:provinceCN')"
width="140" width="140"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- City -->
<el-table-column <el-table-column
prop="City" prop="City"
label="City" :label="$t('institutions:hospitals:label:city')"
width="120" width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- City CN -->
<el-table-column <el-table-column
prop="CityCN" prop="CityCN"
label="City CN" :label="$t('institutions:hospitals:label:cityCN')"
width="120" width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<el-table-column label="Action" width="150"> <el-table-column :label="$t('common:action:action')" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
circle circle
@ -190,13 +211,13 @@ export default {
// //
handleAddHospital() { handleAddHospital() {
this.rowData = {} this.rowData = {}
this.editDialog.title = 'Add' this.editDialog.title = this.$t('common:button:new')
this.editDialog.visible = true this.editDialog.visible = true
}, },
// //
handleEdit(row) { handleEdit(row) {
this.rowData = row this.rowData = row
this.editDialog.title = 'Edit' this.editDialog.title = this.$t('common:action:edit')
this.editDialog.visible = true this.editDialog.visible = true
}, },
// //

View File

@ -9,49 +9,50 @@
label-width="150px" label-width="150px"
> >
<div class="base-dialog-body"> <div class="base-dialog-body">
<el-form-item label="Site Code: " v-if="form.Id" prop="SiteCode"> <!-- Site Code -->
<el-form-item :label="$t('institutions:sites:label:siteCode')" v-if="form.Id" prop="SiteCode">
<el-input v-model="form.SiteCode" disabled /> <el-input v-model="form.SiteCode" disabled />
</el-form-item> </el-form-item>
<!-- 中心名称 --> <!-- 中心名称 -->
<el-form-item <el-form-item
:label="$t('trials:customSite:form:siteName')" :label="$t('institutions:sites:label:siteName')"
prop="SiteName" prop="SiteName"
> >
<el-input v-model="form.SiteName" /> <el-input v-model="form.SiteName" />
</el-form-item> </el-form-item>
<!-- 中心名称CN --> <!-- 中心名称CN -->
<el-form-item <el-form-item
:label="$t('trials:customSite:form:siteName') + 'CN'" :label="$t('institutions:sites:label:siteNameCN')"
prop="SiteNameCN" prop="SiteNameCN"
> >
<el-input v-model="form.SiteNameCN" /> <el-input v-model="form.SiteNameCN" />
</el-form-item> </el-form-item>
<!-- Alias Name -->
<el-form-item label="Alias Name: "> <el-form-item :label="$t('institutions:sites:label:aliasName')">
<el-input v-model="form.AliasName" /> <el-input v-model="form.AliasName" />
</el-form-item> </el-form-item>
<!-- <el-form-item label="组织机构代码: "> <!-- <el-form-item label="组织机构代码: ">
<el-input v-model="form.UniqueCode" /> <el-input v-model="form.UniqueCode" />
</el-form-item> --> </el-form-item> -->
<!-- Country -->
<el-form-item label="Country: " prop="Country"> <el-form-item :label="$t('institutions:sites:label:country')" prop="Country">
<el-input v-model="form.Country" /> <el-input v-model="form.Country" />
</el-form-item> </el-form-item>
<!-- City -->
<el-form-item label="City: " prop="City"> <el-form-item :label="$t('institutions:sites:label:city')" prop="City">
<el-input v-model="form.City" /> <el-input v-model="form.City" />
</el-form-item> </el-form-item>
<el-form-item label="Address: " prop="Address"> <!-- Address -->
<el-form-item :label="$t('institutions:sites:label:address')" prop="Address">
<el-input v-model="form.Address" /> <el-input v-model="form.Address" />
</el-form-item> </el-form-item>
<!-- Affiliated Hospital -->
<el-form-item label="Affiliated Hospital: "> <el-form-item :label="$t('institutions:sites:label:affiliatedHospital')">
<el-select <el-select
v-model="form.HospitalId" v-model="form.HospitalId"
clearable clearable
placeholder="Please select"
style="width: 100%" style="width: 100%"
> >
<el-option <el-option
@ -62,20 +63,20 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- Director Name -->
<el-form-item label="Director Name: " prop="DirectorName"> <el-form-item :label="$t('institutions:sites:label:directorName')" prop="DirectorName">
<el-input v-model="form.DirectorName" /> <el-input v-model="form.DirectorName" />
</el-form-item> </el-form-item>
<!-- Director Phone -->
<el-form-item label="Director Phone: " prop="DirectorPhone"> <el-form-item :label="$t('institutions:sites:label:directorPhone')" prop="DirectorPhone">
<el-input v-model="form.DirectorPhone" /> <el-input v-model="form.DirectorPhone" />
</el-form-item> </el-form-item>
<!-- Contact Name -->
<el-form-item label="Contact Name: " prop="ContactName"> <el-form-item :label="$t('institutions:sites:label:contactName')" prop="ContactName">
<el-input v-model="form.ContactName" /> <el-input v-model="form.ContactName" />
</el-form-item> </el-form-item>
<!-- Contact Phone -->
<el-form-item label="Contact Phone: " prop="ContactPhone"> <el-form-item :label="$t('institutions:sites:label:contactPhone')" prop="ContactPhone">
<el-input v-model="form.ContactPhone" /> <el-input v-model="form.ContactPhone" />
</el-form-item> </el-form-item>
</div> </div>
@ -86,14 +87,14 @@
size="small" size="small"
type="primary" type="primary"
@click="handleCancel" @click="handleCancel"
>Cancel</el-button >{{ $t('common:button:cancel') }}</el-button
> >
<el-button <el-button
size="small" size="small"
type="primary" type="primary"
:loading="btnLoading" :loading="btnLoading"
@click="handleSave" @click="handleSave"
>Save</el-button >{{ $t('common:button:save') }}</el-button
> >
</el-form-item> </el-form-item>
</div> </div>
@ -133,35 +134,35 @@ export default {
}, },
rules: { rules: {
SiteName: [ SiteName: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
// { max: 50, message: 'The maximum length is 50' } // { max: 50, message: 'The maximum length is 50' }
], ],
SiteNameCN: [ SiteNameCN: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
// { max: 50, message: 'The maximum length is 50' } // { max: 50, message: 'The maximum length is 50' }
], ],
SiteCode: [ SiteCode: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
Country: [ Country: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
City: [ City: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
{ max: 50, message: 'The maximum length is 50' }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
// HospitalId: [ // HospitalId: [
// { required: true, message: 'Please specify', trigger: 'blur' } // { required: true, message: 'Please specify', trigger: 'blur' }
// ], // ],
Address: [ Address: [
{ required: true, message: 'Please specify', trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
], ],
DirectorName: [{ max: 50, message: 'The maximum length is 50' }], DirectorName: [{ max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' }],
DirectorPhone: [{ max: 50, message: 'The maximum length is 50' }], DirectorPhone: [{ max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' }],
ContactName: [{ max: 50, message: 'The maximum length is 50' }], ContactName: [{ max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' }],
ContactPhone: [{ max: 50, message: 'The maximum length is 50' }], ContactPhone: [{ max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' }],
}, },
loading: false, loading: false,
show: false, show: false,
@ -180,7 +181,7 @@ export default {
.then((res) => { .then((res) => {
this.btnLoading = false this.btnLoading = false
if (res.IsSuccess) { if (res.IsSuccess) {
this.$message.success('Saved successfully') this.$message.success(this.$t('common:message:savedSuccessfully'))
this.$refs['siteForm'].resetFields() this.$refs['siteForm'].resetFields()
this.$emit('getList') this.$emit('getList')
this.$emit('close') this.$emit('close')

View File

@ -2,28 +2,33 @@
<box-content> <box-content>
<div class="search"> <div class="search">
<el-form :inline="true" size="small" class="base-search-form"> <el-form :inline="true" size="small" class="base-search-form">
<el-form-item label="Site Name:"> <!-- Site Name -->
<el-form-item :label="$t('institutions:sites:label:siteName')">
<el-input v-model="searchData.SiteName" style="width: 120px" /> <el-input v-model="searchData.SiteName" style="width: 120px" />
</el-form-item> </el-form-item>
<el-form-item label="Alias Name:"> <!-- Alias Name -->
<el-form-item :label="$t('institutions:sites:label:aliasName')">
<el-input v-model="searchData.AliasName" style="width: 120px" /> <el-input v-model="searchData.AliasName" style="width: 120px" />
</el-form-item> </el-form-item>
<el-form-item label="Country:"> <!-- Country -->
<el-form-item :label="$t('institutions:sites:label:country')">
<el-input v-model="searchData.Country" style="width: 120px" /> <el-input v-model="searchData.Country" style="width: 120px" />
</el-form-item> </el-form-item>
<el-form-item label="City:"> <!-- City -->
<el-form-item :label="$t('institutions:sites:label:city')">
<el-input v-model="searchData.City" style="width: 120px" /> <el-input v-model="searchData.City" style="width: 120px" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleSearch" <el-button type="primary" icon="el-icon-search" @click="handleSearch">
>Search</el-button {{ $t('common:button:search') }}
> </el-button>
<el-button <el-button
type="primary" type="primary"
icon="el-icon-refresh-left" icon="el-icon-refresh-left"
@click="handleReset" @click="handleReset"
>Reset</el-button
> >
{{ $t('common:button:reset') }}
</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div style="margin-left: auto"> <div style="margin-left: auto">
@ -40,7 +45,8 @@
style="margin-left: 10px" style="margin-left: 10px"
icon="el-icon-plus" icon="el-icon-plus"
@click="handleAddSite" @click="handleAddSite"
>New >
{{ $t('common:button:new') }}
</el-button> </el-button>
</div> </div>
</div> </div>
@ -53,23 +59,34 @@
@sort-change="handleSortByColumn" @sort-change="handleSortByColumn"
> >
<el-table-column type="index" width="40" /> <el-table-column type="index" width="40" />
<!-- Site Code -->
<el-table-column <el-table-column
prop="SiteCode" prop="SiteCode"
label="Site Code" :label="$t('institutions:sites:label:siteCode')"
min-width="120" min-width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Site Name -->
<el-table-column <el-table-column
prop="SiteName" prop="SiteName"
label="Site Name" :label="$t('institutions:sites:label:siteName')"
min-width="150" min-width="150"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<el-table-column
prop="SiteNameCN"
:label="$t('institutions:sites:label:siteNameCN')"
min-width="150"
show-overflow-tooltip
sortable="custom"
/>
<!-- Alias Name -->
<el-table-column <el-table-column
prop="AliasName" prop="AliasName"
label="Alias Name" :label="$t('institutions:sites:label:aliasName')"
min-width="150" min-width="150"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
@ -81,70 +98,79 @@
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> --> /> -->
<!-- Country -->
<el-table-column <el-table-column
prop="Country" prop="Country"
label="Country" :label="$t('institutions:sites:label:country')"
min-width="120" min-width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- City -->
<el-table-column <el-table-column
prop="City" prop="City"
label="City" :label="$t('institutions:sites:label:city')"
min-width="120" min-width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Address -->
<el-table-column <el-table-column
prop="Address" prop="Address"
label="Address" :label="$t('institutions:sites:label:address')"
min-width="120" min-width="120"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Affiliated Hospital -->
<el-table-column <el-table-column
prop="HospitalName" prop="HospitalName"
label="Affiliated Hospital" :label="$t('institutions:sites:label:affiliatedHospital')"
min-width="180" min-width="180"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Director Name -->
<el-table-column <el-table-column
prop="DirectorName" prop="DirectorName"
label="Director Name" :label="$t('institutions:sites:label:directorName')"
min-width="160" min-width="160"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Director Phone -->
<el-table-column <el-table-column
prop="DirectorPhone" prop="DirectorPhone"
label="Director Phone" :label="$t('institutions:sites:label:directorPhone')"
min-width="150" min-width="150"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Contact Name -->
<el-table-column <el-table-column
prop="ContactName" prop="ContactName"
label="Contact Name" :label="$t('institutions:sites:label:contactName')"
min-width="150" min-width="150"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Contact Phone -->
<el-table-column <el-table-column
prop="ContactPhone" prop="ContactPhone"
label="Contact Phone" :label="$t('institutions:sites:label:contactPhone')"
min-width="160" min-width="160"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- CreateTime -->
<el-table-column <el-table-column
prop="CreateTime" prop="CreateTime"
label="CreateTime" :label="$t('institutions:sites:label:createTime')"
min-width="160" min-width="160"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<el-table-column label="Action" fixed="right" width="150"> <el-table-column :label="$t('common:action:action')" fixed="right" width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
circle circle
@ -357,7 +383,7 @@ export default {
data() { data() {
return { return {
editVisible: false, editVisible: false,
title: "Add", title: this.$t('common:button:new'),
searchData: searchDataDefault(), searchData: searchDataDefault(),
list: [], list: [],
total: 0, total: 0,
@ -439,13 +465,13 @@ export default {
// Site // Site
handleAddSite() { handleAddSite() {
this.rowData = {}; this.rowData = {};
this.title = "Add"; this.title = this.$t('common:button:new');
this.editVisible = true; this.editVisible = true;
}, },
// Site // Site
handleEdit(row) { handleEdit(row) {
this.rowData = row; this.rowData = row;
this.title = "Edit"; this.title = this.$t('common:action:edit');
this.editVisible = true; this.editVisible = true;
}, },
// Site // Site

View File

@ -8,16 +8,20 @@
label-width="150px" label-width="150px"
> >
<div class="base-dialog-body"> <div class="base-dialog-body">
<el-form-item label="Sponsor Name: " prop="SponsorName"> <!-- Sponsor Name -->
<el-form-item :label="$t('institutions:sponsors:label:sponsorName')" prop="SponsorName">
<el-input v-model="form.SponsorName" /> <el-input v-model="form.SponsorName" />
</el-form-item> </el-form-item>
<el-form-item label="Sponsor NameCN: " prop="SponsorName"> <!-- Sponsor NameCN -->
<el-form-item :label="$t('institutions:sponsors:label:sponsorNameCN')" prop="SponsorName">
<el-input v-model="form.SponsorNameCN" /> <el-input v-model="form.SponsorNameCN" />
</el-form-item> </el-form-item>
<el-form-item label="Sponsor Code: " prop="SponsorCode"> <!-- Sponsor Code -->
<el-form-item :label="$t('institutions:sponsors:label:sponsorCode')" prop="SponsorCode">
<el-input v-model="form.SponsorCode" /> <el-input v-model="form.SponsorCode" />
</el-form-item> </el-form-item>
<el-form-item label="Level: "> <!-- Level -->
<el-form-item :label="$t('institutions:sponsors:label:level')">
<el-switch <el-switch
:disabled="!IsTrialLevel" :disabled="!IsTrialLevel"
v-model="form.IsTrialLevel" v-model="form.IsTrialLevel"
@ -34,15 +38,17 @@
size="small" size="small"
type="primary" type="primary"
@click="handleCancel" @click="handleCancel"
>Cancel</el-button
> >
{{ $t('common:button:cancel') }}
</el-button>
<el-button <el-button
size="small" size="small"
type="primary" type="primary"
:loading="btnLoading" :loading="btnLoading"
@click="handleSave" @click="handleSave"
>Save</el-button
> >
{{ $t('common:button:save') }}
</el-button>
</el-form-item> </el-form-item>
</div> </div>
</el-form> </el-form>
@ -75,16 +81,16 @@ export default {
}, },
rules: { rules: {
SponsorName: [ SponsorName: [
{ required: true, message: "Please specify", trigger: "blur" }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: "blur" },
{ max: 500, message: "The maximum length is 500" }, { max: 500, message: this.$t('common:ruleMessage:maxLength') + ' 500' },
], ],
SponsorNameCN: [ SponsorNameCN: [
{ required: true, message: "Please specify", trigger: "blur" }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: "blur" },
{ max: 500, message: "The maximum length is 500" }, { max: 500, message: this.$t('common:ruleMessage:maxLength') + ' 500' },
], ],
SponsorCode: [ SponsorCode: [
{ required: true, message: "Please specify", trigger: "blur" }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: "blur" },
{ max: 50, message: "The maximum length is 50" }, { max: 50, message: this.$t('common:ruleMessage:maxLength') + ' 50' },
], ],
}, },
}; };
@ -103,7 +109,7 @@ export default {
.then((res) => { .then((res) => {
this.btnLoading = false; this.btnLoading = false;
if (res.IsSuccess) { if (res.IsSuccess) {
this.$message.success("Saved successfully"); this.$message.success(this.$t('common:message:savedSuccessfully'));
this.$refs["sponsorForm"].resetFields(); this.$refs["sponsorForm"].resetFields();
this.$emit("getList"); this.$emit("getList");
this.$emit("close"); this.$emit("close");

View File

@ -2,19 +2,21 @@
<box-content> <box-content>
<div class="search"> <div class="search">
<el-form :inline="true" size="small" class="base-search-form"> <el-form :inline="true" size="small" class="base-search-form">
<el-form-item label="Sponsor Name:"> <!-- Sponsor Name -->
<el-form-item :label="$t('institutions:sponsors:label:sponsorName')">
<el-input v-model="searchData.SponsorName" style="width: 100px" /> <el-input v-model="searchData.SponsorName" style="width: 100px" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleSearch" <el-button type="primary" icon="el-icon-search" @click="handleSearch">
>Search</el-button {{ $t('common:button:search') }}
> </el-button>
<el-button <el-button
type="primary" type="primary"
icon="el-icon-refresh-left" icon="el-icon-refresh-left"
@click="handleReset" @click="handleReset"
>Reset</el-button
> >
{{ $t('common:button:reset') }}
</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span style="margin-left: auto"> <span style="margin-left: auto">
@ -24,7 +26,7 @@
style="margin-left: auto" style="margin-left: auto"
icon="el-icon-plus" icon="el-icon-plus"
@click="handleAddSponsor" @click="handleAddSponsor"
>New</el-button >{{ $t('common:button:new') }}</el-button
> >
</span> </span>
</div> </div>
@ -37,30 +39,34 @@
@sort-change="handleSortByColumn" @sort-change="handleSortByColumn"
> >
<el-table-column type="index" width="40" /> <el-table-column type="index" width="40" />
<!-- Sponsor Code -->
<el-table-column <el-table-column
prop="SponsorCode" prop="SponsorCode"
label="Sponsor Code" :label="$t('institutions:sponsors:label:sponsorCode')"
min-width="100" min-width="100"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Sponsor Name -->
<el-table-column <el-table-column
prop="SponsorName" prop="SponsorName"
label="Sponsor Name" :label="$t('institutions:sponsors:label:sponsorName')"
min-width="100" min-width="100"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Sponsor NameCN -->
<el-table-column <el-table-column
prop="SponsorNameCN" prop="SponsorNameCN"
label="Sponsor NameCN" :label="$t('institutions:sponsors:label:sponsorNameCN')"
min-width="100" min-width="100"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />
<!-- Level -->
<el-table-column <el-table-column
prop="IsTrialLevel" prop="IsTrialLevel"
label="Level" :label="$t('institutions:sponsors:label:level')"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
> >
@ -68,7 +74,7 @@
<span>{{ $fd("IsTrialLevel", String(scope.row.IsTrialLevel)) }}</span> <span>{{ $fd("IsTrialLevel", String(scope.row.IsTrialLevel)) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="Action" min-width="150"> <el-table-column :label="$t('common:action:action')" min-width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
circle circle
@ -160,13 +166,13 @@ export default {
// Sponsor // Sponsor
handleAddSponsor() { handleAddSponsor() {
this.rowData = {}; this.rowData = {};
this.title = "Add"; this.title = this.$t('common:button:new');
this.editVisible = true; this.editVisible = true;
}, },
// Sponsor // Sponsor
handleEdit(row) { handleEdit(row) {
this.rowData = row; this.rowData = row;
this.title = "Edit"; this.title = this.$t('common:action:edit');
this.editVisible = true; this.editVisible = true;
}, },
// Sponsor // Sponsor

View File

@ -1,16 +1,20 @@
<template> <template>
<div class="institution-wrapper"> <div class="institution-wrapper">
<el-tabs v-model="activeTab" @tab-click="clickTab"> <el-tabs v-model="activeTab" @tab-click="clickTab">
<el-tab-pane label="Hospitals" name="Hospitals"> <!-- Hospitals -->
<el-tab-pane :label="$t('institutions:tab:hospitals')" name="Hospitals">
<Hospitals v-if="activeTab === 'Hospitals'" /> <Hospitals v-if="activeTab === 'Hospitals'" />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="Sites" name="Sites"> <!-- Sites -->
<el-tab-pane :label="$t('institutions:tab:sites')" name="Sites">
<Sites v-if="activeTab === 'Sites'" /> <Sites v-if="activeTab === 'Sites'" />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="CROs" name="CROs"> <!-- CROs -->
<el-tab-pane :label="$t('institutions:tab:CROs')" name="CROs">
<CROs v-if="activeTab === 'CROs'" /> <CROs v-if="activeTab === 'CROs'" />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="Sponsors" name="Sponsors"> <!-- Sponsors -->
<el-tab-pane :label="$t('institutions:tab:sponsors')" name="Sponsors">
<Sponsors v-if="activeTab === 'Sponsors'" /> <Sponsors v-if="activeTab === 'Sponsors'" />
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>

View File

@ -29,7 +29,7 @@
</el-form-item> </el-form-item>
<!-- 问题名称EN --> <!-- 问题名称EN -->
<el-form-item <el-form-item
:label="$t('trials:readingUnit:qsList:title:qNameEn')" :label="$t('dictionary:template:criterionConfig:title:qsNameEn')"
prop="QuestionEnName" prop="QuestionEnName"
> >
<el-input v-model="form.QuestionEnName" /> <el-input v-model="form.QuestionEnName" />
@ -133,7 +133,7 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<!-- 问题分组 --> <!-- 问题分组 -->
<el-form-item v-if="form.ClinicalQuestionType !== 'group'" :label="$t('trials:readingUnit:qsList:title:groupNameEn')"> <el-form-item v-if="form.ClinicalQuestionType !== 'group'" :label="$t('dictionary:template:criterionConfig:title:groupNameEn')">
<el-select v-model="form.GroupId" clearable :disabled="isParentExistGroup"> <el-select v-model="form.GroupId" clearable :disabled="isParentExistGroup">
<el-option <el-option
v-for="group of groupOptions" v-for="group of groupOptions"

View File

@ -33,7 +33,7 @@
<!-- 分组名称 --> <!-- 分组名称 -->
<el-form-item <el-form-item
v-if="form.Type === 'group'" v-if="form.Type === 'group'"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')" :label="$t('trials:readingUnit:qsList:title:groupName')"
prop="GroupName" prop="GroupName"
> >
<el-input v-model="form.GroupName" /> <el-input v-model="form.GroupName" />
@ -41,7 +41,7 @@
<!-- 分组名称EN --> <!-- 分组名称EN -->
<el-form-item <el-form-item
v-if="form.Type === 'group'" v-if="form.Type === 'group'"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')" :label="$t('dictionary:template:criterionConfig:title:groupNameEn')"
prop="GroupEnName" prop="GroupEnName"
> >
<el-input v-model="form.GroupEnName" /> <el-input v-model="form.GroupEnName" />
@ -49,7 +49,7 @@
<!-- 问题名称 --> <!-- 问题名称 -->
<el-form-item <el-form-item
v-if="form.Type !== 'group'" v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')" :label="$t('trials:readingUnit:qsList:title:qsName')"
prop="QuestionName" prop="QuestionName"
:rules="[ :rules="[
{ required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' }, { required: true, message: this.$t('common:ruleMessage:specify'), trigger: 'blur' },
@ -61,7 +61,7 @@
<!-- 问题名称EN --> <!-- 问题名称EN -->
<el-form-item <el-form-item
v-if="form.Type !== 'group'" v-if="form.Type !== 'group'"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')" :label="$t('dictionary:template:criterionConfig:title:qsNameEn')"
prop="QuestionEnName" prop="QuestionEnName"
:rules="[ :rules="[
{ max: form.Type === 'summary' ? 300 : 100, message: `${this.$t('common:ruleMessage:maxLength')} ${form.Type === 'summary' ? 300 : 100}` } { max: form.Type === 'summary' ? 300 : 100, message: `${this.$t('common:ruleMessage:maxLength')} ${form.Type === 'summary' ? 300 : 100}` }

View File

@ -6,7 +6,7 @@
<div class="search-form" style="display:flex;justify-content: space-between;"> <div class="search-form" style="display:flex;justify-content: space-between;">
<el-form :inline="true" size="mini" class="base-search-form"> <el-form :inline="true" size="mini" class="base-search-form">
<!-- 问题名称 --> <!-- 问题名称 -->
<el-form-item :label="$t('trials:readingUnit:qsList:title:qsNameEn')"> <el-form-item :label="$t('trials:readingUnit:qsList:title:qsName')">
<el-input v-model="searchData.QuestionName" clearable style="width:120px;" /> <el-input v-model="searchData.QuestionName" clearable style="width:120px;" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -60,26 +60,28 @@
<!-- 分组 --> <!-- 分组 -->
<el-table-column <el-table-column
prop="GroupName" prop="GroupName"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')" :label="$t('trials:readingUnit:qsList:title:groupName')"
show-overflow-tooltip show-overflow-tooltip
/> />
<!-- 分组(EN) --> <!-- 分组(EN) -->
<el-table-column <el-table-column
prop="GroupEnName" prop="GroupEnName"
:label="$t('trials:readingUnit:qsList:title:groupNameEn')" :label="$t('dictionary:template:criterionConfig:title:groupNameEn')"
show-overflow-tooltip show-overflow-tooltip
width="140"
/> />
<!-- 名称 --> <!-- 名称 -->
<el-table-column <el-table-column
prop="QuestionName" prop="QuestionName"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')" :label="$t('trials:readingUnit:qsList:title:qsName')"
show-overflow-tooltip show-overflow-tooltip
/> />
<!-- 名称(EN) --> <!-- 名称(EN) -->
<el-table-column <el-table-column
prop="QuestionEnName" prop="QuestionEnName"
:label="$t('trials:readingUnit:qsList:title:qsNameEn')" :label="$t('dictionary:template:criterionConfig:title:qsNameEn')"
show-overflow-tooltip show-overflow-tooltip
width="140"
/> />
<!-- 题型 --> <!-- 题型 -->
<el-table-column <el-table-column