singleActions.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. import { mapGetters } from 'vuex'
  2. // import { getEnabledSwitchActions } from '@/utils/common/tableActions'
  3. import i18n from '@/locales'
  4. export default {
  5. computed: {
  6. ...mapGetters(['isAdminMode', 'scope', 'isDomainMode', 'userInfo', 'l3PermissionEnable']),
  7. },
  8. created () {
  9. this.singleActions = [
  10. {
  11. label: i18n.t('network.text_201'),
  12. permission: 'waf_instances_syncstatus',
  13. action: (row) => {
  14. this.onManager('performAction', {
  15. steadyStatus: ['available', 'unavailable'],
  16. id: row.id,
  17. managerArgs: {
  18. action: 'syncstatus',
  19. },
  20. }).then(res => {
  21. this.$message.success(this.$t('cloudenv.text_381'))
  22. })
  23. },
  24. },
  25. {
  26. label: i18n.t('network.text_129'),
  27. actions: row => {
  28. return [
  29. {
  30. label: i18n.t('network.text_757'),
  31. action: () => {
  32. this.handleOpenSidepage(row, 'rule-manage')
  33. },
  34. },
  35. {
  36. label: i18n.t('network.text_758'),
  37. action: () => {
  38. this.handleOpenSidepage(row, 'resource-manage')
  39. },
  40. },
  41. {
  42. label: i18n.t('cloudenv.text_108'),
  43. permission: 'waf_instances_delete',
  44. action: () => {
  45. this.createDialog('DeleteWafInstancesDialog', {
  46. data: [row],
  47. columns: this.columns,
  48. title: this.$t('network.waf.delete'),
  49. name: this.$t('network.waf'),
  50. onManager: this.onManager,
  51. })
  52. },
  53. meta: (row) => {
  54. const ret = {
  55. validate: true,
  56. }
  57. return ret
  58. },
  59. },
  60. ]
  61. },
  62. }]
  63. },
  64. }