perf : deleteButton 删除功能代码优化

This commit is contained in:
likexuan
2023-01-04 11:10:03 +08:00
parent 4bf20f45a5
commit 31d76d0e4d
26 changed files with 40 additions and 410 deletions

View File

@@ -87,7 +87,6 @@
</template> </template>
<script> <script>
import bus from '@/libs/bus'
export default { export default {
name: 'deleteButton', name: 'deleteButton',
data () { data () {

View File

@@ -52,11 +52,6 @@ export default {
break break
} }
case 'delete-rel': { case 'delete-rel': {
// this.$emit('deleteRel', {
// row: row,
// url: this.api,
// ...param
// })
this.$store.dispatch('deleteTableRel', { this.$store.dispatch('deleteTableRel', {
row: row, row: row,
url: this.api, url: this.api,

View File

@@ -113,22 +113,6 @@
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<!-- <el-dropdown-item :command="['showText', scope.row]"><i class="nz-icon nz-icon-guzhangshuju"></i><span class="operation-dropdown-text">{{$t('alert.config.trbShot')}}</span></el-dropdown-item>--> <!-- <el-dropdown-item :command="['showText', scope.row]"><i class="nz-icon nz-icon-guzhangshuju"></i><span class="operation-dropdown-text">{{$t('alert.config.trbShot')}}</span></el-dropdown-item>-->
<el-dropdown-item v-has="'alertMessage_delete'" :command="['delete', scope.row, 'singleDel']"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> <el-dropdown-item v-has="'alertMessage_delete'" :command="['delete', scope.row, 'singleDel']"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'alertMessage_view'" :command="['delete', scope.row]">
<delete-button
ref="deleteButton"
:from="'alertMessage'"
:forceDeleteShow="false"
:deleteTitle="'alert.alertMessage'"
:type="'link'"
:title="$t('overall.delete')"
id="alert-msg-delete"
v-has="'alertMessage_expired'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item> -->
<el-dropdown-item v-has="'alertSilence_add'" :command="['fastSilence', scope.row, 'alertMessage']"><i class="nz-icon nz-icon-fast-silence"></i><span class="operation-dropdown-text">{{$t('overall.silenceAlert')}}</span></el-dropdown-item> <el-dropdown-item v-has="'alertSilence_add'" :command="['fastSilence', scope.row, 'alertMessage']"><i class="nz-icon nz-icon-fast-silence"></i><span class="operation-dropdown-text">{{$t('overall.silenceAlert')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'alertMessage_expired'" :disabled="scope.row.ack === 1" :command="['ack', scope.row]"><i class="nz-icon nz-icon-queren"></i><span class="operation-dropdown-text">{{$t('overall.acknowledge')}}</span></el-dropdown-item> <el-dropdown-item v-has="'alertMessage_expired'" :disabled="scope.row.ack === 1" :command="['ack', scope.row]"><i class="nz-icon nz-icon-queren"></i><span class="operation-dropdown-text">{{$t('overall.acknowledge')}}</span></el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
@@ -167,11 +151,10 @@ import { calcDurationByStringTimeB } from '../../js/tools'
import { alertMessage as alertMessageConstant } from '@/components/common/js/constants' import { alertMessage as alertMessageConstant } from '@/components/common/js/constants'
import alertLabelMixin from '@/components/common/mixin/alertLabelMixin' import alertLabelMixin from '@/components/common/mixin/alertLabelMixin'
import alertMessageLabelMixin from '@/components/common/alert/alertMessageLabelMixin' import alertMessageLabelMixin from '@/components/common/alert/alertMessageLabelMixin'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'alertMessageTable', name: 'alertMessageTable',
components: { components: {
alertRuleInfo: alertRuleInfo, deleteButton alertRuleInfo: alertRuleInfo
}, },
props: { props: {
nowTime: { nowTime: {

View File

@@ -152,23 +152,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true, deleteTitle:'alert.alertRule'}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'alertRule'"
:forceDeleteShow="false"
:deleteTitle="'alert.alertRule'"
:type="'link'"
:title="$t('overall.delete')"
id="alert-rule-delete"
v-has="'alertRule_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'alertRule_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'alertSilence_add'" :command="['fastSilence', scope.row, 'alertRule']"><i class="nz-icon nz-icon-fast-silence"></i><span class="operation-dropdown-text">{{$t('overall.silenceAlert')}}</span></el-dropdown-item> <el-dropdown-item v-has="'alertSilence_add'" :command="['fastSilence', scope.row, 'alertRule']"><i class="nz-icon nz-icon-fast-silence"></i><span class="operation-dropdown-text">{{$t('overall.silenceAlert')}}</span></el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
@@ -189,12 +173,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
import chartDataFormat from '@/components/chart/chartDataFormat' import chartDataFormat from '@/components/chart/chartDataFormat'
export default { export default {
name: 'alertRuleTable', name: 'alertRuleTable',
components: { deleteButton, copy }, components: { copy },
mixins: [table], mixins: [table],
props: { props: {
loading: Boolean loading: Boolean

View File

@@ -156,30 +156,7 @@
$t("overall.duplicate") $t("overall.duplicate")
}}</span></el-dropdown-item }}</span></el-dropdown-item
> >
<!-- <el-dropdown-item <el-dropdown-item v-has="'alertSilence_expire'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true, deleteTitle:'overall.silence'}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
v-has="'alertSilence_expire'"
:command="['delete', scope.row]"
><i class="nz-icon nz-icon-delete"></i
><span class="operation-dropdown-text">{{
$t("overall.delete")
}}</span></el-dropdown-item
> -->
<el-dropdown-item v-has="'alertSilence_expire'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'alertSilence'"
:forceDeleteShow="false"
:type="'link'"
:deleteTitle="'overall.silence'"
:title="$t('overall.delete')"
id="role-list-delete"
v-has="'alertSilence_expire'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -201,13 +178,11 @@ import table from '@/components/common/mixin/table'
import { calcDurationByStringTimeB } from '@/components/common/js/tools' import { calcDurationByStringTimeB } from '@/components/common/js/tools'
import nzAlertTag from '../../../page/alert/nzAlertTag' import nzAlertTag from '../../../page/alert/nzAlertTag'
import { sameLabels } from '@/components/common/js/constants' import { sameLabels } from '@/components/common/js/constants'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'alertSilenceTable', name: 'alertSilenceTable',
components: { components: {
nzAlertTag, nzAlertTag,
deleteButton,
copy copy
}, },
mixins: [table], mixins: [table],

View File

@@ -196,7 +196,6 @@
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import { showTableTooltip, hideTableTooltip } from '@/components/common/js/tools' import { showTableTooltip, hideTableTooltip } from '@/components/common/js/tools'
// import bus from '@/libs/bus' // import bus from '@/libs/bus'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
import alertLabel from '@/components/common/alert/alertLabel' import alertLabel from '@/components/common/alert/alertLabel'
import alertDaysInfo from '@/components/common/alert/alertDaysInfo' import alertDaysInfo from '@/components/common/alert/alertDaysInfo'
@@ -207,8 +206,7 @@ export default {
components: { components: {
alertLabel: alertLabel, alertLabel: alertLabel,
alertDaysInfo, alertDaysInfo,
copy, copy
deleteButton
}, },
props: { props: {
showOption: { showOption: {

View File

@@ -104,8 +104,8 @@
ref="deleteButton" ref="deleteButton"
:from="'endpoint'" :from="'endpoint'"
:forceDeleteShow="forceDeleteShow" :forceDeleteShow="forceDeleteShow"
:deleteTitle="'project.endpoint.endpoint'" :deleteTitle="deleteTitle"
:type="'hide'" :type="'link'"
:title="$t('overall.delete')" :title="$t('overall.delete')"
:api="api" :api="api"
:single="single" :single="single"
@@ -122,7 +122,6 @@ import { bottomBoxWindow } from '@/components/common/js/tools'
import panelChart from '@/components/chart/panelChart' import panelChart from '@/components/chart/panelChart'
import bus from '@/libs/bus' import bus from '@/libs/bus'
import routerPathParams from '@/components/common/mixin/routerPathParams' import routerPathParams from '@/components/common/mixin/routerPathParams'
import lodash from 'lodash'
import SearchBox from '@/components/common/searchBox/searchBox' import SearchBox from '@/components/common/searchBox/searchBox'
import deleteButton from '@/components/common/deleteButton' import deleteButton from '@/components/common/deleteButton'
export default { export default {
@@ -188,6 +187,7 @@ export default {
singleDelete: [], singleDelete: [],
api: '', api: '',
single: true, single: true,
deleteTitle: '',
forceDeleteShow: false, forceDeleteShow: false,
delFlag: false, delFlag: false,
fromRoute: fromRoute, fromRoute: fromRoute,
@@ -214,11 +214,12 @@ export default {
bus.$on('delTableRow', this.delTableRow) bus.$on('delTableRow', this.delTableRow)
}, },
methods: { methods: {
delTableRelRow (url, row, forceDeleteShow = false, single = false) { delTableRelRow (url, row, forceDeleteShow = false, single = false, deleteTitle = '') {
this.api = url this.api = url
this.singleDelete = [row] this.singleDelete = [row]
this.forceDeleteShow = forceDeleteShow this.forceDeleteShow = forceDeleteShow
this.single = single this.single = single
this.deleteTitle = deleteTitle
this.$refs.deleteButton.batchDelete() this.$refs.deleteButton.batchDelete()
}, },
delTableRow (ids) { // 接收一个 删除的id数组 判断当前底部弹窗id 是否包含 包含则关闭当前弹窗 delTableRow (ids) { // 接收一个 删除的id数组 判断当前底部弹窗id 是否包含 包含则关闭当前弹窗
@@ -291,7 +292,7 @@ export default {
}, },
showDeleteTableRel (n) { showDeleteTableRel (n) {
if (n) { if (n) {
this.delTableRelRow(this.deleteTableRel.url, this.deleteTableRel.row, this.deleteTableRel.forceDeleteShow, this.deleteTableRel.single) this.delTableRelRow(this.deleteTableRel.url, this.deleteTableRel.row, this.deleteTableRel.forceDeleteShow, this.deleteTableRel.single, this.deleteTableRel.deleteTitle)
} }
} }
}, },

View File

@@ -85,22 +85,7 @@
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'agent_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-has="'agent_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'agent_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'agent_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'agent_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'agent_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:true, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'agent_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'agent'"
:forceDeleteShow="true"
:type="'link'"
:title="$t('overall.delete')"
id="promserver-list-delete"
v-has="'agent_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -129,7 +114,6 @@ import bus from '@/libs/bus'
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import { agent } from '@/components/common/js/constants' import { agent } from '@/components/common/js/constants'
import alertStateInfo from '@/components/common/alert/alertStateInfo' import alertStateInfo from '@/components/common/alert/alertStateInfo'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'agentTable', name: 'agentTable',
@@ -138,7 +122,7 @@ export default {
}, },
mixins: [table], mixins: [table],
components: { components: {
alertStateInfo, deleteButton, copy alertStateInfo, copy
}, },
data () { data () {
return { return {

View File

@@ -78,20 +78,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'assetType_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-has="'assetType_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'assetType_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'assetType_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'assetType_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'assetType'"
:forceDeleteShow="false"
id="account-list-delete"
v-has="'user_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -110,13 +97,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'asstTypeTable', name: 'asstTypeTable',
props: { props: {
loading: Boolean loading: Boolean
}, },
components: { deleteButton },
mixins: [table], mixins: [table],
data () { data () {
return { return {

View File

@@ -57,20 +57,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'backup_restore'" :command="['restore', scope.row]" disabled><i class="nz-icon-shujubeifenhuifu nz-icon"></i><span>{{$t('backup.RestoreNow')}}</span></el-dropdown-item> <el-dropdown-item v-has="'backup_restore'" :command="['restore', scope.row]" disabled><i class="nz-icon-shujubeifenhuifu nz-icon"></i><span>{{$t('backup.RestoreNow')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'backup_del'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'"> <el-dropdown-item v-has="'backup_del'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<delete-button
ref="deleteButton"
:forceDeleteShow="false"
id="backup-delete"
:from="'backup'"
:type="'link'"
:title="$t('overall.delete')"
:api="'/sys/backup'"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -92,12 +79,10 @@
import { post, put } from '@/http' import { post, put } from '@/http'
import axios from 'axios' import axios from 'axios'
import bus from '@/libs/bus' import bus from '@/libs/bus'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'backupsTable', name: 'backupsTable',
mixins: [], mixins: [],
components: { deleteButton },
props: { props: {
loading: Boolean, loading: Boolean,
customTableTitle: Array, customTableTitle: Array,

View File

@@ -39,21 +39,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'dc_add'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'dc_add'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item :command="['delete', scope.row]" v-has="'dc_delete'"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'dc_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:true, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item :command="['delete', scope.row]" v-has="'dc_delete'" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'cabinet'"
:forceDeleteShow="true"
id="cabinet-delete"
:type="'link'"
:title="$t('overall.delete')"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -72,12 +58,8 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import Template from '../../../page/config/template'
import alertDaysInfo from '@/components/common/alert/alertDaysInfo'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'cabinetTable', name: 'cabinetTable',
components: { Template, alertDaysInfo, deleteButton },
mixins: [table], mixins: [table],
props: { props: {
loading: Boolean loading: Boolean

View File

@@ -65,22 +65,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'chartTemplate_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-has="'chartTemplate_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'chartTemplate_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'chartTemplate_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'chartTemplate_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'chartTemp'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="alert-msg-delete"
v-has="'expressionTemplate_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
<el-dropdown-item v-has="'chartTemplate_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'chartTemplate_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'chartTemplate_edit'" :command="['sync', scope.row]"><i class="nz-icon nz-icon-sync"></i><span class="operation-dropdown-text">{{$t('overall.syncChart')}}</span></el-dropdown-item> <el-dropdown-item v-has="'chartTemplate_edit'" :command="['sync', scope.row]"><i class="nz-icon nz-icon-sync"></i><span class="operation-dropdown-text">{{$t('overall.syncChart')}}</span></el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
@@ -102,12 +87,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import { chart as chartConstant } from '@/components/common/js/constants' import { chart as chartConstant } from '@/components/common/js/constants'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'chartTmplTable', name: 'chartTmplTable',
mixins: [table], mixins: [table],
components: { deleteButton, copy }, components: { copy },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -80,22 +80,7 @@
<i class="nz-icon nz-icon-more3"></i> <i class="nz-icon nz-icon-more3"></i>
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<!-- <el-dropdown-item v-has="'credential_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'credential_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'credential_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'credentials'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="mib-list-delete"
v-has="'credential_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -114,14 +99,13 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'credentialsTable', name: 'credentialsTable',
props: { props: {
loading: Boolean loading: Boolean
}, },
components: { deleteButton, copy }, components: { copy },
mixins: [table], mixins: [table],
data () { data () {
return { return {

View File

@@ -65,22 +65,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'dashboard_temp_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-has="'dashboard_temp_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'dashboard_temp_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'"> <el-dropdown-item v-has="'dashboard_temp_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<delete-button
ref="deleteButton"
:from="'dashboardTemp'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="alert-msg-delete"
v-has="'dashboard_temp_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
>
</delete-button>
</el-dropdown-item>
<el-dropdown-item v-has="'dashboard_temp_add'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'dashboard_temp_add'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'dashboard_temp_edit'" :command="['sync', scope.row]"><i class="nz-icon nz-icon-sync"></i><span class="operation-dropdown-text">{{$t('overall.syncChart')}}</span></el-dropdown-item> <el-dropdown-item v-has="'dashboard_temp_edit'" :command="['sync', scope.row]"><i class="nz-icon nz-icon-sync"></i><span class="operation-dropdown-text">{{$t('overall.syncChart')}}</span></el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
@@ -101,12 +86,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'dashboardTmplTable', name: 'dashboardTmplTable',
mixins: [table], mixins: [table],
components: { deleteButton, copy }, components: { copy },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -66,22 +66,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'expressionTemplate_add'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'expressionTemplate_add'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'expressionTemplate_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'expressionTemplate_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'expressionTemplate_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'exprTemp'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="alert-msg-delete"
v-has="'expressionTemplate_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -100,12 +85,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'exprTmplTable', name: 'exprTmplTable',
mixins: [table], mixins: [table],
components: { deleteButton, copy }, components: { copy },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -55,22 +55,8 @@
<i class="nz-icon nz-icon-more3"></i> <i class="nz-icon nz-icon-more3"></i>
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<!-- <el-dropdown-item v-has="'i18n_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> -->
<el-dropdown-item :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'i18n_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'"> <el-dropdown-item v-has="'i18n_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<delete-button
ref="deleteButton"
:from="'globalization'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="globalization-delete"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -89,11 +75,9 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'globalizationTable', name: 'globalizationTable',
mixins: [table], mixins: [table],
components: { deleteButton },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -65,22 +65,7 @@
<i class="nz-icon nz-icon-more3"></i> <i class="nz-icon nz-icon-more3"></i>
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<!-- <el-dropdown-item v-has="'ipam_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'ipam_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'ipam_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'ipDetails'"
:forceDeleteShow="false"
:title="$t('overall.delete')"
v-has="'ipam_delete'"
:type="'link'"
id="account-list-delete"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -99,13 +84,9 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'ipDetailsTable', name: 'ipDetailsTable',
mixins: [table], mixins: [table],
components: {
deleteButton
},
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -71,22 +71,7 @@
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'ipam_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-has="'ipam_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'ipam_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'ipam_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'ipam_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'ipam_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:true, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'ipam_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'ipam'"
:forceDeleteShow="true"
:type="'link'"
:title="$t('overall.delete')"
id="account-list-delete"
v-has="'ipam_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
<!-- <el-dropdown-item v-has="'ipam_edit'" :command="['sync', scope.row]"><i class="nz-icon nz-icon-sync"></i><span class="operation-dropdown-text">{{$t('overall.syncChart')}}</span></el-dropdown-item> --> <!-- <el-dropdown-item v-has="'ipam_edit'" :command="['sync', scope.row]"><i class="nz-icon nz-icon-sync"></i><span class="operation-dropdown-text">{{$t('overall.syncChart')}}</span></el-dropdown-item> -->
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>

View File

@@ -103,19 +103,7 @@
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'issue'"
:forceDeleteShow="false"
id="issue-delete"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -135,13 +123,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'issueTable', name: 'issueTable',
mixins: [table], mixins: [table],
components: { components: {
copy, copy
deleteButton
}, },
props: { props: {

View File

@@ -67,19 +67,7 @@
<i class="nz-icon nz-icon-more3"></i> <i class="nz-icon nz-icon-more3"></i>
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<!-- <el-dropdown-item v-has="'monitor_module_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'monitor_module_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'monitor_module_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'menus'"
:forceDeleteShow="false"
id="menus-list-delete"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -98,11 +86,9 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'menuTable', name: 'menuTable',
mixins: [table], mixins: [table],
components: { deleteButton },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -95,22 +95,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'snmp_mibFile_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-has="'snmp_mibFile_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'snmp_mibFile_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'snmp_mibFile_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'snmp_mibFile_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'mib'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="mib-list-delete"
v-has="'snmp_mibFile_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -129,13 +114,12 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
import axios from 'axios' import axios from 'axios'
export default { export default {
name: 'mibTable', name: 'mibTable',
mixins: [table], mixins: [table],
components: { deleteButton, copy }, components: { copy },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -116,21 +116,7 @@
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['copy', scope.row, {copyName: '_copy'}]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_edit'" :command="['copy', scope.row, {copyName: '_copy'}]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-if="!scope.row.buildIn" v-has="'record_rule_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'recordRule'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="record-rule-delete"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -152,13 +138,11 @@ import lodash from 'lodash'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import nzAlertTag from '../../../page/alert/nzAlertTag' import nzAlertTag from '../../../page/alert/nzAlertTag'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'recordRuleTable', name: 'recordRuleTable',
components: { components: {
nzAlertTag, nzAlertTag,
copy, copy
deleteButton
}, },
mixins: [table], mixins: [table],
props: { props: {

View File

@@ -68,23 +68,7 @@
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'role_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'role_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'role_delete'" :command="['delete', scope.row]" :disabled="isBuiltIn(scope.row)"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'role_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:true, single:true, deleteTitle:'config.roles.roles'}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'role_delete'" :command="['delete', scope.row]" :disabled="isBuiltIn(scope.row)" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'roles'"
:forceDeleteShow="true"
:deleteTitle="'config.roles.roles'"
:type="'link'"
:title="$t('overall.delete')"
id="role-list-batch-delete"
v-has="'role_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
@@ -103,12 +87,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'roleTable', name: 'roleTable',
mixins: [table], mixins: [table],
components: { deleteButton, copy }, components: { copy },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -103,23 +103,7 @@
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<el-dropdown-item v-has="'user_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item> <el-dropdown-item v-has="'user_edit'" :command="['edit', scope.row]"><i class="nz-icon nz-icon-edit"></i><span class="operation-dropdown-text">{{$t('overall.edit')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'user_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item> <el-dropdown-item v-has="'user_edit'" :command="['copy', scope.row]"><i class="nz-icon nz-icon-override"></i><span class="operation-dropdown-text">{{$t('overall.duplicate')}}</span></el-dropdown-item>
<!-- <el-dropdown-item v-has="'user_delete'" :command="['delete', scope.row]" :disabled="scope.row.id === 1"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'user_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true, deleteTitle:'config.user.user'}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'user_delete'" :command="['delete', scope.row]" :disabled="scope.row.id === 1" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'user'"
:forceDeleteShow="false"
:type="'link'"
:deleteTitle="'config.user.user'"
:title="$t('overall.delete')"
id="account-list-batch-delete"
v-has="'user_delete'"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
<el-dropdown-item v-has="'user_edit'" :command="['reset_mfa', scope.row]"><i class="nz-icon nz-icon-zhongzhi2FA"></i><span class="operation-dropdown-text">{{$t('config.user.resetMfa')}}</span></el-dropdown-item> <el-dropdown-item v-has="'user_edit'" :command="['reset_mfa', scope.row]"><i class="nz-icon nz-icon-zhongzhi2FA"></i><span class="operation-dropdown-text">{{$t('config.user.resetMfa')}}</span></el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
@@ -140,12 +124,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
import copy from '@/components/common/copy' import copy from '@/components/common/copy'
export default { export default {
name: 'userTable', name: 'userTable',
mixins: [table], mixins: [table],
components: { deleteButton, copy }, components: { copy },
props: { props: {
loading: Boolean loading: Boolean
}, },

View File

@@ -71,21 +71,7 @@
<i class="nz-icon nz-icon-more3"></i> <i class="nz-icon nz-icon-more3"></i>
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<!-- <el-dropdown-item v-has="'system_link_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'system_link_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'system_link_delete'" :command="['delete', scope.row]">
<delete-button
ref="deleteButton"
:from="'link'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="link-delete"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</template> </template>
@@ -107,13 +93,11 @@
import { tableCommon } from './systemCommon' import { tableCommon } from './systemCommon'
import bus from '../../../../libs/bus' import bus from '../../../../libs/bus'
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'linkTable', name: 'linkTable',
props: { props: {
loading: Boolean loading: Boolean
}, },
components: { deleteButton },
mixins: [table, tableCommon], mixins: [table, tableCommon],
data () { data () {
return { return {

View File

@@ -81,21 +81,7 @@
<i class="nz-icon nz-icon-more3"></i> <i class="nz-icon nz-icon-more3"></i>
</div> </div>
<el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top"> <el-dropdown-menu slot="dropdown" class="right-box-select-top right-public-box-dropdown-top">
<!-- <el-dropdown-item v-has="'system_notification_delete'" :command="['delete', scope.row]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item> --> <el-dropdown-item v-has="'system_notification_delete'" :command="['delete-rel', scope.row, {forceDeleteShow:false, single:true}]"><i class="nz-icon nz-icon-delete"></i><span class="operation-dropdown-text">{{$t('overall.delete')}}</span></el-dropdown-item>
<el-dropdown-item v-has="'system_notification_delete'" :command="['delete', scope.row]" :class="'nz-el-dropdown-menu-item'">
<delete-button
ref="deleteButton"
:from="'notifyMethod'"
:forceDeleteShow="false"
:type="'link'"
:title="$t('overall.delete')"
id="notify-method-delete"
:api="api"
:single="true"
:delete-objs="singleDelete"
@before="delFlag=true"
></delete-button>
</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</template> </template>
@@ -116,13 +102,11 @@
<script> <script>
import table from '@/components/common/mixin/table' import table from '@/components/common/mixin/table'
import { tableCommon } from './systemCommon' import { tableCommon } from './systemCommon'
import deleteButton from '@/components/common/deleteButton'
export default { export default {
name: 'notifyMethodTable', name: 'notifyMethodTable',
props: { props: {
loading: Boolean loading: Boolean
}, },
components: { deleteButton },
mixins: [table, tableCommon], mixins: [table, tableCommon],
data () { data () {
return { return {