Detail.vue 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <template>
  2. <detail
  3. :on-manager="onManager"
  4. :data="data"
  5. :base-info="baseInfo"
  6. :extra-info="extraInfo"
  7. resource="backupstorages"
  8. status-module="backupStorage"
  9. :hiddenKeys="['tenant']" />
  10. </template>
  11. <script>
  12. import WindowsMixin from '@/mixins/windows'
  13. import {
  14. getTagTableColumn,
  15. getPublicScopeTableColumn,
  16. } from '@/utils/common/tableColumn'
  17. import {
  18. getStorageTypeColumn,
  19. // getCapacityMbColumns,
  20. getNFSHostColumn,
  21. getNFSSharedDirColumn,
  22. getObjectBucketURLColumn,
  23. getObjectBucketURLExtColumn,
  24. getObjectAccessKeyColumn,
  25. getObjectSignVerColumn,
  26. } from '../utils/columns'
  27. export default {
  28. name: 'BackupStorageDetail',
  29. mixins: [WindowsMixin],
  30. props: {
  31. data: {
  32. type: Object,
  33. required: true,
  34. },
  35. onManager: {
  36. type: Function,
  37. required: true,
  38. },
  39. columns: Array,
  40. },
  41. data () {
  42. const baseInfo = [
  43. getTagTableColumn({ onManager: this.onManager, resource: 'backupstorages', columns: () => this.columns }),
  44. getPublicScopeTableColumn({ vm: this, resource: 'backupstorages' }),
  45. getStorageTypeColumn(),
  46. ]
  47. if (this.data.storage_type === 'nfs') {
  48. baseInfo.push(getNFSHostColumn())
  49. baseInfo.push(getNFSSharedDirColumn())
  50. } else if (this.data.storage_type === 'object') {
  51. baseInfo.push(getObjectBucketURLColumn())
  52. baseInfo.push(getObjectAccessKeyColumn())
  53. baseInfo.push(getObjectSignVerColumn())
  54. baseInfo.push(getObjectBucketURLExtColumn())
  55. }
  56. return {
  57. baseInfo: baseInfo,
  58. extraInfo: [],
  59. }
  60. },
  61. }
  62. </script>