columns.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import {
  2. getNameDescriptionTableColumn,
  3. getEnabledTableColumn,
  4. getProjectDomainTableColumn,
  5. getTimeTableColumn,
  6. getTagTableColumn,
  7. } from '@/utils/common/tableColumn'
  8. import i18n from '@/locales'
  9. export default {
  10. created () {
  11. this.columns = [
  12. getNameDescriptionTableColumn({
  13. onManager: this.onManager,
  14. hideField: true,
  15. formRules: [
  16. { required: true, message: i18n.t('system.text_168') },
  17. ],
  18. edit: row => row.idp_driver !== 'ldap',
  19. slotCallback: row => {
  20. return (
  21. <side-page-trigger onTrigger={ () => this.handleOpenSidepage(row) }>{ row.name }</side-page-trigger>
  22. )
  23. },
  24. }),
  25. {
  26. field: 'displayname',
  27. title: i18n.t('scope.text_245'),
  28. slots: {
  29. default: ({ row }) => {
  30. return [<list-body-cell-wrap copy row={ row } field='displayname' title={ row.displayname || '-' } />]
  31. },
  32. },
  33. },
  34. getTagTableColumn({
  35. onManager: this.onManager,
  36. resource: 'users',
  37. needExt: true,
  38. columns: () => this.columns,
  39. }),
  40. getEnabledTableColumn(),
  41. getEnabledTableColumn({
  42. field: 'allow_web_console',
  43. title: i18n.t('system.text_512'),
  44. }),
  45. getEnabledTableColumn({
  46. field: 'enable_mfa',
  47. title: 'MFA',
  48. }),
  49. getProjectDomainTableColumn(),
  50. getTimeTableColumn(),
  51. ]
  52. },
  53. }