columns.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import { STRATEGY_CN } from '@Cloudenv/constants/sched'
  2. import { getNameDescriptionTableColumn, getEnabledTableColumn, getCopyWithContentTableColumn, getTimeTableColumn } from '@/utils/common/tableColumn'
  3. import i18n from '@/locales'
  4. export default {
  5. created () {
  6. this.columns = [
  7. getNameDescriptionTableColumn({
  8. onManager: this.onManager,
  9. hideField: true,
  10. slotCallback: row => {
  11. return (
  12. <side-page-trigger onTrigger={() => this.handleOpenSidepage(row)}>{ row.name }</side-page-trigger>
  13. )
  14. },
  15. }),
  16. getEnabledTableColumn(),
  17. {
  18. field: 'strategy',
  19. title: i18n.t('cloudenv.text_413'),
  20. width: 80,
  21. formatter: ({ row }) => {
  22. return STRATEGY_CN[row.strategy] || i18n.t('cloudenv.text_4')
  23. },
  24. },
  25. getCopyWithContentTableColumn({
  26. field: 'schedtag',
  27. title: i18n.t('cloudenv.text_18'),
  28. hideField: true,
  29. slotCallback: (row) => {
  30. if (this.isPreLoad && !row.schedtag) return [<data-loading />]
  31. return row.schedtag
  32. },
  33. }),
  34. getCopyWithContentTableColumn({
  35. field: 'condition',
  36. title: i18n.t('cloudenv.text_22'),
  37. }),
  38. getTimeTableColumn(),
  39. ]
  40. },
  41. }