singleActions.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import i18n from '@/locales'
  2. export default {
  3. created () {
  4. this.singleActions = [
  5. {
  6. label: i18n.t('k8s.text_201'),
  7. permission: 'k8s_serviceaccounts_delete',
  8. action: (obj) => {
  9. this.createDialog('DeleteResDialog', {
  10. vm: this,
  11. data: [obj],
  12. columns: this.columns,
  13. title: i18n.t('k8s.text_328'),
  14. name: i18n.t('k8s.text_24'),
  15. onManager: this.onManager,
  16. ok: (ids, data) => {
  17. return new this.$Manager('serviceaccounts', 'v1').batchDelete({
  18. ids,
  19. data: {
  20. cluster: data[0].clusterID,
  21. namespace: data[0].namespace,
  22. },
  23. }).then(() => {
  24. this.refresh()
  25. return true
  26. }).catch(error => {
  27. throw error
  28. })
  29. },
  30. })
  31. },
  32. },
  33. {
  34. label: i18n.t('k8s.text_215'),
  35. permission: 'k8s_serviceaccounts_update',
  36. action: async obj => {
  37. const manager = new this.$Manager('serviceaccounts', 'v1')
  38. async function fetchData () {
  39. const { data } = await manager.getSpecific({ id: obj.id, spec: 'rawdata' })
  40. return data
  41. }
  42. const configText = await fetchData()
  43. this.createDialog('K8SEditYamlDialog', {
  44. data: [obj],
  45. manager,
  46. refresh: this.refresh,
  47. configText,
  48. })
  49. },
  50. },
  51. ]
  52. },
  53. }