Merge branch 'main' of https://gitea.frp.extimaging.com/XCKJ/irc_web into main
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
dbffc2787d
|
@ -1357,3 +1357,11 @@ export function deleteAttachment(data) {
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 邮件管理-批量修改邮件
|
||||||
|
export function batchUpdateEmail(data) {
|
||||||
|
return request({
|
||||||
|
url: `/EmailNoticeConfig/batchUpdateEmail`,
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
@ -67,13 +67,18 @@
|
||||||
<el-button type="primary" @click="handleAdd">
|
<el-button type="primary" @click="handleAdd">
|
||||||
{{ $t('common:button:new') }}
|
{{ $t('common:button:new') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button type="primary" @click="openDrawer" :disabled="multipleSelection.length <= 0">
|
||||||
|
{{ $t('trials:emailManageCfg:button:batchAudit') }}
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<!-- 受试者列表 -->
|
<!-- 受试者列表 -->
|
||||||
<el-table v-loading="loading" v-adaptive="{ bottomOffset: 45 }" :data="list" stripe height="100" style="width: 100%"
|
<el-table v-loading="loading" v-adaptive="{ bottomOffset: 45 }" :data="list" stripe height="100" style="width: 100%"
|
||||||
@sort-change="handleSortByColumn">
|
@sort-change="handleSortByColumn" @selection-change="handleSelectionChange">
|
||||||
<el-table-column type="index" width="40" />
|
<!-- <el-table-column type="index" width="40" /> -->
|
||||||
|
<el-table-column type="selection" width="55">
|
||||||
|
</el-table-column>
|
||||||
<!-- Code -->
|
<!-- Code -->
|
||||||
<el-table-column prop="Code" :label="$t('trials:emailManageCfg:title:code')" sortable="custom"
|
<el-table-column prop="Code" :label="$t('trials:emailManageCfg:title:code')" sortable="custom"
|
||||||
show-overflow-tooltip min-width="100" />
|
show-overflow-tooltip min-width="100" />
|
||||||
|
@ -249,12 +254,76 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
<el-drawer :title="$t('trials:emailManageCfg:title:audit')" :visible.sync="drawer" direction="rtl" size="80%">
|
||||||
|
<!-- <div style="width: 800px">
|
||||||
|
<el-form label-width="100px" @submit.native.prevent size="small" :inline="true" class="demo-form-inline">
|
||||||
|
<el-form-item :label="$t('il8n:search:keyword')">
|
||||||
|
<el-input v-model="key" @input="keyChange" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item :label="$t('il8n:search:state')">
|
||||||
|
<el-select v-model="State" clearable filterable @change="handleStateChange">
|
||||||
|
<el-option v-for="item of $d.InternationalizationKeyState"
|
||||||
|
:key="'InternationalizationKeyState' + item.value" :label="item.label" :value="item.value" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div> -->
|
||||||
|
<el-table :data="tableData" v-adaptive="{ bottomOffset: 50 }" height="100" style="width: 100%"
|
||||||
|
@sort-change="handleSortByColumnDrawer">
|
||||||
|
<!-- Code -->
|
||||||
|
<el-table-column prop="Code" :label="$t('trials:emailManageCfg:title:code')" sortable="custom"
|
||||||
|
show-overflow-tooltip min-width="100" />
|
||||||
|
<el-table-column v-if="isDistinguishCriteria" prop="TrialReadingCriterionId"
|
||||||
|
:label="$t('trials:reviewTrack:table:criterionName')" show-overflow-tooltip sortable="custom" min-width="120">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ $fd('CriterionType', scope.row.CriterionTypeEnum) }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<!-- 邮件主题(中文) -->
|
||||||
|
<el-table-column prop="EmailTopicCN" :label="$t('trials:emailManageCfg:table:EmailTopicCN')" sortable="custom"
|
||||||
|
show-overflow-tooltip min-width="160">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-input v-model="scope.row.EmailTopicCN" @input="
|
||||||
|
(e) => {
|
||||||
|
$set(scope.row, 'EmailTopicCN', e)
|
||||||
|
}
|
||||||
|
" size="mini"></el-input>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<!-- 邮件主题(英文) -->
|
||||||
|
<el-table-column prop="EmailTopic" :label="$t('trials:emailManageCfg:table:EmailTopic')" sortable="custom"
|
||||||
|
show-overflow-tooltip min-width="160">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-input v-model="scope.row.EmailTopic" @input="
|
||||||
|
(e) => {
|
||||||
|
$set(scope.row, 'EmailTopic', e)
|
||||||
|
}
|
||||||
|
" size="mini"></el-input>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<!-- 业务层级 -->
|
||||||
|
<el-table-column prop="BusinessLevelEnum" :label="$t('dictionary:email:label:businessLevel')" sortable="custom"
|
||||||
|
show-overflow-tooltip min-width="150">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ $fd('BusinessLevel', scope.row.BusinessLevelEnum) }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div style="text-align: right; padding-top: 10px; padding-right: 10px">
|
||||||
|
<el-button size="mini" @click="drawer = false">{{ $t('common:button:cancel') }}
|
||||||
|
</el-button>
|
||||||
|
<el-button size="mini" type="primary" @click="handleSave">{{
|
||||||
|
$t('common:button:save')
|
||||||
|
}}</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
</box-content>
|
</box-content>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import {
|
import {
|
||||||
getEmailNoticeConfigList,
|
getEmailNoticeConfigList,
|
||||||
deleteEmailNoticeConfig,
|
deleteEmailNoticeConfig,
|
||||||
|
batchUpdateEmail
|
||||||
} from '@/api/dictionary'
|
} from '@/api/dictionary'
|
||||||
import { GetEmailNoticeConfigList_Export } from '@/api/export'
|
import { GetEmailNoticeConfigList_Export } from '@/api/export'
|
||||||
import BoxContent from '@/components/BoxContent'
|
import BoxContent from '@/components/BoxContent'
|
||||||
|
@ -308,6 +377,9 @@ export default {
|
||||||
previewVisible: false,
|
previewVisible: false,
|
||||||
previewHTML: null,
|
previewHTML: null,
|
||||||
previewHTMLEN: null,
|
previewHTMLEN: null,
|
||||||
|
multipleSelection: [],
|
||||||
|
drawer: false,
|
||||||
|
tableData: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -325,6 +397,50 @@ export default {
|
||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async handleSave() {
|
||||||
|
try {
|
||||||
|
let arr = []
|
||||||
|
this.tableData.forEach(item => {
|
||||||
|
let obj = {
|
||||||
|
EmailTopic: item.EmailTopic,
|
||||||
|
EmailTopicCN: item.EmailTopicCN,
|
||||||
|
Id: item.Id
|
||||||
|
}
|
||||||
|
arr.push(obj)
|
||||||
|
})
|
||||||
|
this.drawer = false
|
||||||
|
let res = await batchUpdateEmail(arr)
|
||||||
|
if (res.IsSuccess) {
|
||||||
|
this.$message.success(this.$t('trials:emailManageCfg:message:auditSuccess'))
|
||||||
|
this.getList()
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
console.log(err)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 排序
|
||||||
|
handleSortByColumnDrawer(column) {
|
||||||
|
if (column.order === 'ascending') {
|
||||||
|
this.tableData.sort((a, b) =>
|
||||||
|
a[column.prop].localeCompare(b[column.prop])
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
this.tableData.sort((a, b) =>
|
||||||
|
b[column.prop].localeCompare(a[column.prop])
|
||||||
|
)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
openDrawer() {
|
||||||
|
this.tableData = []
|
||||||
|
this.multipleSelection.forEach(item => {
|
||||||
|
let obj = Object.assign({}, item)
|
||||||
|
this.tableData.push(obj)
|
||||||
|
})
|
||||||
|
this.drawer = true
|
||||||
|
},
|
||||||
|
handleSelectionChange(val) {
|
||||||
|
this.multipleSelection = val;
|
||||||
|
},
|
||||||
// 获取受试者列表
|
// 获取受试者列表
|
||||||
getList() {
|
getList() {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|
|
@ -250,7 +250,7 @@
|
||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('trials:reviewTrack:dialog:backImpactList')" />
|
<el-form-item :label="$t('trials:reviewTrack:dialog:backImpactList')" />
|
||||||
<el-table v-loading="loading" :data="InfluenceTaskList" stripe height="100" style="min-height: 400px">
|
<el-table v-loading="loading" :data="InfluenceTaskList" stripe height="100" style="min-height:200px;max-height: 300px">
|
||||||
<!-- 任务编号 -->
|
<!-- 任务编号 -->
|
||||||
<el-table-column prop="TaskCode" :label="$t('trials:reviewTrack:table:taskCode')" min-width="100"
|
<el-table-column prop="TaskCode" :label="$t('trials:reviewTrack:table:taskCode')" min-width="100"
|
||||||
show-overflow-tooltip />
|
show-overflow-tooltip />
|
||||||
|
|
|
@ -385,7 +385,7 @@
|
||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('trials:reviewTrack:dialog:backImpactList')" />
|
<el-form-item :label="$t('trials:reviewTrack:dialog:backImpactList')" />
|
||||||
<el-table v-loading="loading" :data="InfluenceTaskList" stripe height="100" style="min-height: 400px">
|
<el-table v-loading="loading" :data="InfluenceTaskList" stripe height="100" style="min-height:200px;max-height: 300px">
|
||||||
<!-- 任务编号 -->
|
<!-- 任务编号 -->
|
||||||
<el-table-column prop="TaskCode" :label="$t('trials:reviewTrack:table:taskCode')" min-width="100"
|
<el-table-column prop="TaskCode" :label="$t('trials:reviewTrack:table:taskCode')" min-width="100"
|
||||||
show-overflow-tooltip />
|
show-overflow-tooltip />
|
||||||
|
|
|
@ -51,8 +51,8 @@
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
</base-model>
|
</base-model>
|
||||||
<viewer ref="picture_perview2" style="margin: 0 10px"
|
<viewer ref="picture_perview3" style="margin: 0 10px"
|
||||||
v-if="rowData.FileFormat && ['png', 'jpg', 'jpeg'].includes(rowDATA.FileFormat.toLowerCase())"
|
v-if="rowDATA.FileFormat && ['png', 'jpg', 'jpeg'].includes(rowDATA.FileFormat.toLowerCase())"
|
||||||
:images="[`${OSSclientConfig.basePath}${rowDATA.FilePath}`]" :options="viewerOptions">
|
:images="[`${OSSclientConfig.basePath}${rowDATA.FilePath}`]" :options="viewerOptions">
|
||||||
|
|
||||||
<img v-show="false" :src="`${OSSclientConfig.basePath}${rowDATA.FilePath}`" alt="Image" />
|
<img v-show="false" :src="`${OSSclientConfig.basePath}${rowDATA.FilePath}`" alt="Image" />
|
||||||
|
@ -224,7 +224,7 @@ export default {
|
||||||
'.jpeg',
|
'.jpeg',
|
||||||
'.png'].includes(`.${data.FileFormat.toLowerCase()}`)) {
|
'.png'].includes(`.${data.FileFormat.toLowerCase()}`)) {
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs['picture_perview2'].$viewer.show()
|
this.$refs['picture_perview3'].$viewer.show()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
if (['.pdf'].includes(`.${data.FileFormat.toLowerCase()}`)) {
|
if (['.pdf'].includes(`.${data.FileFormat.toLowerCase()}`)) {
|
||||||
|
|
|
@ -82,6 +82,7 @@ export default {
|
||||||
FileTypeId: '',
|
FileTypeId: '',
|
||||||
Name: '',
|
Name: '',
|
||||||
Path: '',
|
Path: '',
|
||||||
|
IsPublish: false,
|
||||||
IsDeleted: false,
|
IsDeleted: false,
|
||||||
SignViewMinimumMinutes: null,
|
SignViewMinimumMinutes: null,
|
||||||
Description: '',
|
Description: '',
|
||||||
|
@ -153,6 +154,7 @@ export default {
|
||||||
this.form.Name = this.data.Name
|
this.form.Name = this.data.Name
|
||||||
this.form.Path = this.data.Path
|
this.form.Path = this.data.Path
|
||||||
this.form.IsDeleted = this.data.IsDeleted
|
this.form.IsDeleted = this.data.IsDeleted
|
||||||
|
this.form.IsPublish = this.data.IsPublish
|
||||||
this.form.Description = this.data.Description
|
this.form.Description = this.data.Description
|
||||||
this.form.SignViewMinimumMinutes = this.data.SignViewMinimumMinutes
|
this.form.SignViewMinimumMinutes = this.data.SignViewMinimumMinutes
|
||||||
this.form.CurrentStaffTrainDays = this.data.CurrentStaffTrainDays
|
this.form.CurrentStaffTrainDays = this.data.CurrentStaffTrainDays
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue