Compare commits
No commits in common. "623a7b9858f01b882764c9f52047877a4d37c39f" and "18b0ec2042c6960f0904abd6fcee9355d8d62e59" have entirely different histories.
623a7b9858
...
18b0ec2042
|
@ -1357,11 +1357,3 @@ export function deleteAttachment(data) {
|
||||||
data
|
data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// 邮件管理-批量修改邮件
|
|
||||||
export function batchUpdateEmail(data) {
|
|
||||||
return request({
|
|
||||||
url: `/EmailNoticeConfig/batchUpdateEmail`,
|
|
||||||
method: 'post',
|
|
||||||
data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
|
@ -67,18 +67,13 @@
|
||||||
<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" @selection-change="handleSelectionChange">
|
@sort-change="handleSortByColumn">
|
||||||
<!-- <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" />
|
||||||
|
@ -254,76 +249,12 @@
|
||||||
</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'
|
||||||
|
@ -377,9 +308,6 @@ export default {
|
||||||
previewVisible: false,
|
previewVisible: false,
|
||||||
previewHTML: null,
|
previewHTML: null,
|
||||||
previewHTMLEN: null,
|
previewHTMLEN: null,
|
||||||
multipleSelection: [],
|
|
||||||
drawer: false,
|
|
||||||
tableData: []
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -397,50 +325,6 @@ 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
|
||||||
|
|
Loading…
Reference in New Issue