mirror of
https://github.com/dataease/dataease.git
synced 2025-02-25 03:52:59 +08:00
Merge pull request #3230 from dataease/pr@dev_dataset_source
Pr@dev dataset source
This commit is contained in:
commit
75f0617402
@ -1526,3 +1526,49 @@ div:focus {
|
||||
background: rgba(51, 112, 255, 0.1) !important;
|
||||
}
|
||||
}
|
||||
|
||||
.de-status {
|
||||
position: relative;
|
||||
margin-left: 15px;
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -13px;
|
||||
transform: translateY(-50%);
|
||||
width: 5px;
|
||||
height: 5px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Pending-result,
|
||||
.de-Underway-result {
|
||||
&::before {
|
||||
background: var(--deTextPlaceholder, #8f959e);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Exec-result,
|
||||
.de-Underway-pre {
|
||||
&::before {
|
||||
background: var(--primary, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Stopped-result,
|
||||
.de-Completed-pre {
|
||||
&::before {
|
||||
background: var(--deSuccess, #34C724);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Error-pre {
|
||||
&::before {
|
||||
background: var(--deDanger, #F54A45);
|
||||
}
|
||||
.el-icon-s-order {
|
||||
color: var(--primary, #3370ff);
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
@ -31,7 +31,12 @@
|
||||
prefix-icon="el-icon-search"
|
||||
clearable
|
||||
/>
|
||||
<div class="table-checkbox-list">
|
||||
<div v-if="!tableData.length && searchTable !== ''" class="el-empty">
|
||||
<div class="el-empty__description" style="margin-top: 80px;color: #5e6d82;">
|
||||
没有找到相关内容
|
||||
</div>
|
||||
</div>
|
||||
<div class="table-checkbox-list" v-else>
|
||||
<el-checkbox-group v-model="checkTableList" size="small">
|
||||
<el-tooltip
|
||||
v-for="t in tableData"
|
||||
@ -278,13 +283,13 @@ export default {
|
||||
if (this.checkDatasetName.includes(ele.datasetName)) {
|
||||
this.nameExsitValidator(index)
|
||||
} else {
|
||||
ele.nameExsit = false;
|
||||
ele.nameExsit = false
|
||||
}
|
||||
})
|
||||
},
|
||||
calHeight() {
|
||||
const that = this
|
||||
setTimeout(function() {
|
||||
setTimeout(function () {
|
||||
const currentHeight = document.documentElement.clientHeight
|
||||
that.height = currentHeight - 56 - 64 - 75 - 32 - 24 - 16 - 10
|
||||
}, 10)
|
||||
@ -381,6 +386,7 @@ export default {
|
||||
|
||||
.arrow-right {
|
||||
position: absolute;
|
||||
z-index: 2;
|
||||
top: 15px;
|
||||
cursor: pointer;
|
||||
margin: 0;
|
||||
|
@ -32,7 +32,12 @@
|
||||
prefix-icon="el-icon-search"
|
||||
clearable
|
||||
/>
|
||||
<div class="table-checkbox-list">
|
||||
<div v-if="!tableData.length && searchTable !== ''" class="el-empty">
|
||||
<div class="el-empty__description" style="margin-top: 80px;color: #5e6d82;">
|
||||
没有找到相关内容
|
||||
</div>
|
||||
</div>
|
||||
<div v-else class="table-checkbox-list">
|
||||
<el-checkbox-group v-model="checkTableList" size="small">
|
||||
<el-tooltip
|
||||
:disabled="t.enableCheck"
|
||||
@ -396,6 +401,7 @@ export default {
|
||||
.arrow-right {
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
z-index: 2;
|
||||
cursor: pointer;
|
||||
margin: 0;
|
||||
display: flex;
|
||||
|
@ -575,6 +575,7 @@ export default {
|
||||
|
||||
.arrow-right {
|
||||
position: absolute;
|
||||
z-index: 2;
|
||||
top: 15px;
|
||||
cursor: pointer;
|
||||
margin: 0;
|
||||
|
@ -622,7 +622,9 @@ export default {
|
||||
this.fields = response.data.fields
|
||||
this.data = response.data.data
|
||||
const datas = this.data
|
||||
this.$refs.plxTable.reloadData(datas)
|
||||
this.$nextTick(() => {
|
||||
this.$refs.plxTable?.reloadData(datas)
|
||||
})
|
||||
})
|
||||
.catch((err) => {
|
||||
this.errMsg = true
|
||||
@ -747,7 +749,9 @@ export default {
|
||||
.sql-dataset-drawer {
|
||||
.el-drawer__body {
|
||||
padding: 16px 24px;
|
||||
position: relative;
|
||||
position: unset;
|
||||
overflow-y: auto;
|
||||
padding-bottom: 80px;
|
||||
}
|
||||
|
||||
.el-date-editor {
|
||||
|
@ -71,7 +71,7 @@
|
||||
<template slot-scope="scope">
|
||||
<span
|
||||
v-if="scope.row.lastExecStatus"
|
||||
:class="[`de-${scope.row.lastExecStatus}`, 'de-status']"
|
||||
:class="[`de-${scope.row.lastExecStatus}-pre`, 'de-status']"
|
||||
>{{
|
||||
$t(`dataset.${scope.row.lastExecStatus.toLocaleLowerCase()}`)
|
||||
}}
|
||||
@ -110,7 +110,7 @@
|
||||
:label="$t('dataset.task.task_status')"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span :class="[`de-${scope.row.status}`, 'de-status']"
|
||||
<span :class="[`de-${scope.row.status}-result`, 'de-status']"
|
||||
>{{ $t(`dataset.task.${scope.row.status.toLocaleLowerCase()}`) }}
|
||||
</span>
|
||||
</template>
|
||||
@ -223,23 +223,16 @@
|
||||
|
||||
<el-table-column prop="status" :label="$t('dataset.status')">
|
||||
<template slot-scope="scope">
|
||||
<span
|
||||
v-if="scope.row.status === 'Completed'"
|
||||
style="color: green"
|
||||
>{{ $t('dataset.completed') }}</span
|
||||
>
|
||||
<span v-if="scope.row.status === 'Underway'" class="blue-color">
|
||||
<i class="el-icon-loading" />
|
||||
{{ $t('dataset.underway') }}
|
||||
</span>
|
||||
<span v-if="scope.row.status === 'Error'" style="color: red">
|
||||
<el-link
|
||||
type="danger"
|
||||
@click="showErrorMassage(scope.row.info)"
|
||||
>{{ $t('dataset.error') }}</el-link
|
||||
>
|
||||
</span>
|
||||
</template>
|
||||
<span
|
||||
v-if="scope.row.status"
|
||||
:class="[`de-${scope.row.status}-pre`, 'de-status']"
|
||||
>{{
|
||||
$t(`dataset.${scope.row.status.toLocaleLowerCase()}`)
|
||||
}}
|
||||
<svg-icon style="cursor: pointer;" v-if="scope.row.status === 'Error'" @click="showErrorMassage(scope.row.info)" icon-class="icon-maybe" class="field-icon-location" />
|
||||
</span>
|
||||
<span v-else>-</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-row style="margin-top: 10px; text-align: right">
|
||||
@ -1165,61 +1158,4 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<style lang="scss">
|
||||
.de-status {
|
||||
position: relative;
|
||||
margin-left: 15px;
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -13px;
|
||||
transform: translateY(-50%);
|
||||
width: 5px;
|
||||
height: 5px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Completed {
|
||||
&::before {
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Underway {
|
||||
&::before {
|
||||
background: #8f959e;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Pending {
|
||||
&::before {
|
||||
background: #8f959e;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Exec {
|
||||
&::before {
|
||||
background: var(--primary, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Stopped {
|
||||
&::before {
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Error {
|
||||
&::before {
|
||||
background: var(--deDanger, #3370ff);
|
||||
}
|
||||
|
||||
.el-icon-s-order {
|
||||
color: var(--primary, #3370ff);
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
</style>
|
@ -25,7 +25,7 @@
|
||||
class="table-num"
|
||||
v-if="['db', 'excel', 'api'].includes(datasetType)"
|
||||
>{{ $t('deDataset.selected') }} {{ tableNum }}
|
||||
{{ $t('deDataset.table') }}</span
|
||||
{{ ['excel'].includes(datasetType) ? $t('deDataset.table') : '项' }}</span
|
||||
>
|
||||
<deBtn @click="datasetSave" type="primary">{{
|
||||
$t('commons.save')
|
||||
|
@ -305,7 +305,7 @@
|
||||
@keypress.enter.native="saveGroup(groupForm)"
|
||||
>
|
||||
<el-form-item :label="$t('deDataset.folder_name')" prop="name">
|
||||
<el-input v-model="groupForm.name" />
|
||||
<el-input placeholder="请输入文件夹名称" v-model="groupForm.name" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
|
@ -1,90 +1,111 @@
|
||||
<template xmlns:v-slot="http://www.w3.org/1999/XSL/Transform">
|
||||
<el-tabs v-model="activeName">
|
||||
<!-- 认证-->
|
||||
<el-tab-pane :label="$t('datasource.verified')" name="verified">
|
||||
|
||||
<el-form :model="authConfig" :rules="rule" ref="authConfig" label-position="right">
|
||||
<el-form-item :label="$t('datasource.verification_method')" prop="verification">
|
||||
<el-select v-model="authConfig.verification" @change="change"
|
||||
:placeholder="$t('datasource.verification_method')" filterable size="small">
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item.name">
|
||||
</el-option>
|
||||
</el-select>
|
||||
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('datasource.username')" prop="username"
|
||||
v-if="authConfig.verification!=undefined && authConfig.verification !='No Auth'">
|
||||
<el-input :placeholder="$t('datasource.username')" v-model="authConfig.username"
|
||||
class="ms-http-input" size="small">
|
||||
<el-form
|
||||
:model="authConfig"
|
||||
:rules="rule"
|
||||
ref="authConfig"
|
||||
label-position="right"
|
||||
>
|
||||
<el-form-item
|
||||
:label="$t('datasource.verification_method')"
|
||||
prop="verification"
|
||||
>
|
||||
<el-select
|
||||
v-model="authConfig.verification"
|
||||
@change="change"
|
||||
:placeholder="$t('datasource.verification_method')"
|
||||
filterable
|
||||
size="small"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in options"
|
||||
:key="item.name"
|
||||
:label="item.name"
|
||||
:value="item.name"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="$t('datasource.username')"
|
||||
prop="username"
|
||||
v-if="
|
||||
authConfig.verification != undefined &&
|
||||
authConfig.verification != 'No Auth'
|
||||
"
|
||||
>
|
||||
<el-input
|
||||
:placeholder="$t('datasource.username')"
|
||||
v-model="authConfig.username"
|
||||
class="ms-http-input"
|
||||
size="small"
|
||||
>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('datasource.password')" prop="password"
|
||||
v-if=" authConfig.verification!=undefined && authConfig.verification !='No Auth'">
|
||||
<el-input v-model="authConfig.password" :placeholder="$t('datasource.password')" show-password autocomplete="off"
|
||||
maxlength="50" show-word-limit/>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item
|
||||
:label="$t('datasource.password')"
|
||||
prop="password"
|
||||
v-if="
|
||||
authConfig.verification != undefined &&
|
||||
authConfig.verification != 'No Auth'
|
||||
"
|
||||
>
|
||||
<dePwd
|
||||
v-model="authConfig.password"
|
||||
:placeholder="$t('datasource.password')"
|
||||
/>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import dePwd from '@/components/deCustomCm/dePwd.vue'
|
||||
export default {
|
||||
name: "ApiAuthConfig",
|
||||
components: {},
|
||||
name: 'ApiAuthConfig',
|
||||
components: { dePwd },
|
||||
props: {
|
||||
request: {},
|
||||
encryptShow: {
|
||||
type: Boolean,
|
||||
default: true,
|
||||
default: true
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
request() {
|
||||
this.initData();
|
||||
this.initData()
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initData();
|
||||
this.initData()
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
options: [{name: "No Auth"}, {name: "Basic Auth"}],
|
||||
activeName: "verified",
|
||||
options: [{ name: 'No Auth' }, { name: 'Basic Auth' }],
|
||||
activeName: 'verified',
|
||||
rule: {},
|
||||
authConfig: {}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
change() {
|
||||
if (this.authConfig.verification === "Basic Auth") {
|
||||
this.authConfig.verification = "Basic Auth";
|
||||
this.request.authManager = this.authConfig;
|
||||
if (this.authConfig.verification === 'Basic Auth') {
|
||||
this.authConfig.verification = 'Basic Auth'
|
||||
this.request.authManager = this.authConfig
|
||||
} else {
|
||||
this.authConfig.verification = "No Auth";
|
||||
this.request.authManager = this.authConfig;
|
||||
this.authConfig.verification = 'No Auth'
|
||||
this.request.authManager = this.authConfig
|
||||
}
|
||||
},
|
||||
initData() {
|
||||
if (this.request.authManager) {
|
||||
this.authConfig = this.request.authManager;
|
||||
this.authConfig = this.request.authManager
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/deep/ .el-tabs__nav-wrap::after {
|
||||
height: 0px;
|
||||
}
|
||||
</style>
|
||||
|
@ -32,7 +32,7 @@
|
||||
@click="addApiItem(api)"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-col style="display: flex" :span="19">
|
||||
<span class="name">{{ api.name }}</span>
|
||||
<span
|
||||
v-if="api.status === 'Error'"
|
||||
@ -45,7 +45,7 @@
|
||||
style="color: green; background: rgba(52, 199, 36, 0.2)"
|
||||
>{{ $t('datasource.valid') }}</span>
|
||||
</el-col>
|
||||
<el-col style="text-align: right" :span="12">
|
||||
<el-col style="text-align: right" :span="5">
|
||||
<svg-icon
|
||||
icon-class="de-copy"
|
||||
class="de-copy-icon"
|
||||
@ -441,7 +441,7 @@
|
||||
<span>{{ $t('datasource.base_info') }}</span>
|
||||
</div>
|
||||
<el-form-item :label="$t('commons.name')" prop="name">
|
||||
<el-input v-model="apiItem.name" autocomplete="off" />
|
||||
<el-input :placeholder="$t('commons.input_name')" v-model="apiItem.name" autocomplete="off" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :label="$t('datasource.request')" prop="url">
|
||||
@ -575,8 +575,15 @@
|
||||
<div class="row-rules">
|
||||
<span>{{ $t('dataset.data_preview') }}</span>
|
||||
</div>
|
||||
|
||||
<el-empty
|
||||
size="125"
|
||||
v-if="showEmpty"
|
||||
:image="noneImg"
|
||||
style="margin-top: 24px"
|
||||
:description="$t('暂无数据,请在数据结构勾选字段')"
|
||||
/>
|
||||
<ux-grid
|
||||
v-else
|
||||
ref="plxTable"
|
||||
size="mini"
|
||||
style="width: 100%"
|
||||
@ -839,6 +846,7 @@ export default {
|
||||
},
|
||||
api_table_title: '',
|
||||
schemas: [],
|
||||
showEmpty: false,
|
||||
canEdit: false,
|
||||
edit_api_item: false,
|
||||
add_api_item: true,
|
||||
@ -1132,6 +1140,7 @@ export default {
|
||||
}
|
||||
},
|
||||
previewData() {
|
||||
this.showEmpty = false
|
||||
const datas = []
|
||||
let maxPreviewNum = 0
|
||||
for (let j = 0; j < this.apiItem.fields.length; j++) {
|
||||
@ -1154,6 +1163,7 @@ export default {
|
||||
)
|
||||
}
|
||||
this.$refs.plxTable.reloadData(datas)
|
||||
this.showEmpty = !!datas.length
|
||||
}
|
||||
},
|
||||
handleCheckChange(node) {
|
||||
@ -1427,6 +1437,10 @@ export default {
|
||||
font-size: 16px;
|
||||
font-weight: 500;
|
||||
margin-right: 8px;
|
||||
max-width: 80%;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.req-title,
|
||||
.req-value {
|
||||
|
@ -11,7 +11,7 @@
|
||||
!canEdit
|
||||
? $t('datasource.show_info')
|
||||
: formType == 'add'
|
||||
? $t('datasource.create')
|
||||
? `${$t('commons.create') + typeMap }${ $t('commons.datasource')}`
|
||||
: $t('datasource.modify')
|
||||
}}
|
||||
</span>
|
||||
@ -71,6 +71,9 @@
|
||||
label-width="180px"
|
||||
label-position="right"
|
||||
>
|
||||
<div class="de-row-rules">
|
||||
<span>基本信息</span>
|
||||
</div>
|
||||
<el-form-item :label="$t('datasource.display_name')" prop="name">
|
||||
<el-input
|
||||
v-model="form.name"
|
||||
@ -318,6 +321,7 @@ export default {
|
||||
]
|
||||
},
|
||||
schemas: [],
|
||||
typeMap: '',
|
||||
canEdit: false,
|
||||
originConfiguration: {},
|
||||
edit_api_item: false,
|
||||
@ -387,7 +391,7 @@ export default {
|
||||
async created() {
|
||||
await this.datasourceTypes()
|
||||
this.queryTreeDatas()
|
||||
const { id, showModel, msgNodeId, type } = this.$route.query
|
||||
const { id, showModel, msgNodeId, type, name } = this.$route.query
|
||||
this.params = this.$route.query
|
||||
if (id) {
|
||||
await this.getDatasourceDetail(id, showModel)
|
||||
@ -397,6 +401,7 @@ export default {
|
||||
this.canEdit = true
|
||||
this.disabled = false
|
||||
if (type) {
|
||||
this.typeMap = name
|
||||
this.setType()
|
||||
this.changeType()
|
||||
}
|
||||
@ -458,6 +463,10 @@ export default {
|
||||
customDriver: 'default',
|
||||
queryTimeout: 30
|
||||
}
|
||||
if (this.form.type == 'oracle') {
|
||||
this.$set(this.form.configuration, 'charset', 'Default')
|
||||
this.$set(this.form.configuration, 'targetCharset', 'Default')
|
||||
}
|
||||
},
|
||||
changeEdit() {
|
||||
this.canEdit = true
|
||||
|
@ -483,9 +483,10 @@ export default {
|
||||
this.queryTreeDatas()
|
||||
},
|
||||
addDb({ type }) {
|
||||
const name = (this.dsTypes.find(ele => type === ele.type ) || {}).name
|
||||
this.$router.push({
|
||||
path: '/ds-form',
|
||||
query: { type }
|
||||
query: { type, name }
|
||||
})
|
||||
},
|
||||
addFolderWithType(data) {
|
||||
@ -494,9 +495,10 @@ export default {
|
||||
this.dialogTitle = this.$t('datasource.add_driver')
|
||||
this.editDriver = true
|
||||
} else {
|
||||
const name = (this.dsTypes.find(ele => data.id === ele.type ) || {}).name
|
||||
this.$router.push({
|
||||
path: '/ds-form',
|
||||
query: { type: data.id }
|
||||
query: { type: data.id, name }
|
||||
})
|
||||
}
|
||||
},
|
||||
|
@ -169,7 +169,7 @@
|
||||
<template slot-scope="scope">
|
||||
<span
|
||||
v-if="scope.row.lastExecStatus"
|
||||
:class="[`de-${scope.row.lastExecStatus}`, 'de-status']"
|
||||
:class="[`de-${scope.row.lastExecStatus}-pre`, 'de-status']"
|
||||
>{{
|
||||
$t(`dataset.${scope.row.lastExecStatus.toLocaleLowerCase()}`)
|
||||
}}
|
||||
@ -209,7 +209,7 @@
|
||||
:label="$t('dataset.task.task_status')"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span :class="[`de-${scope.row.status}`, 'de-status']"
|
||||
<span :class="[`de-${scope.row.status}-result`, 'de-status']"
|
||||
>{{ $t(`dataset.task.${scope.row.status.toLocaleLowerCase()}`) }}
|
||||
</span>
|
||||
</template>
|
||||
@ -865,59 +865,4 @@ export default {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
.de-status {
|
||||
position: relative;
|
||||
margin-left: 15px;
|
||||
&::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -13px;
|
||||
transform: translateY(-50%);
|
||||
width: 5px;
|
||||
height: 5px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Completed {
|
||||
&::before {
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Underway {
|
||||
&::before {
|
||||
background: #8f959e;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Pending {
|
||||
&::before {
|
||||
background: #8f959e;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Exec {
|
||||
&::before {
|
||||
background: var(--primary, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Stopped {
|
||||
&::before {
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Error {
|
||||
&::before {
|
||||
background: var(--deDanger, #3370ff);
|
||||
}
|
||||
|
||||
.el-icon-s-order {
|
||||
color: var(--primary, #3370ff);
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
</style>
|
@ -98,7 +98,7 @@
|
||||
<template slot-scope="scope">
|
||||
<span
|
||||
v-if="scope.row.status"
|
||||
:class="[`de-${scope.row.status}`, 'de-status']"
|
||||
:class="[`de-${scope.row.status}-pre`, 'de-status']"
|
||||
>{{ $t(`dataset.${scope.row.status.toLocaleLowerCase()}`) }}
|
||||
<svg-icon style="cursor: pointer;" v-if="scope.row.status === 'Error'" @click="showErrorMassage(scope.row.info)" icon-class="icon-maybe" class="field-icon-location" />
|
||||
</span>
|
||||
@ -593,60 +593,3 @@ span {
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<style lang="scss">
|
||||
.de-status {
|
||||
position: relative;
|
||||
margin-left: 15px;
|
||||
&::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: -13px;
|
||||
transform: translateY(-50%);
|
||||
width: 5px;
|
||||
height: 5px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Completed {
|
||||
&::before {
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Underway {
|
||||
&::before {
|
||||
background: #8f959e;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Pending {
|
||||
&::before {
|
||||
background: #8f959e;
|
||||
}
|
||||
}
|
||||
|
||||
.de-Exec {
|
||||
&::before {
|
||||
background: var(--primary, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Stopped {
|
||||
&::before {
|
||||
background: var(--deSuccess, #3370ff);
|
||||
}
|
||||
}
|
||||
|
||||
.de-Error {
|
||||
&::before {
|
||||
background: var(--deDanger, #3370ff);
|
||||
}
|
||||
|
||||
.el-icon-question {
|
||||
color: #646a73;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
Loading…
Reference in New Issue
Block a user