schoolInfo.vue 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <template>
  2. <div>
  3. <CtForm ref="CtFormRef" :items="formItems" style="width: 900px;margin: 0 auto"></CtForm>
  4. </div>
  5. </template>
  6. <script setup>
  7. defineOptions({ name: 'schoolInfo' })
  8. import { ref } from 'vue'
  9. const CtFormRef = ref()
  10. const formItems = ref({
  11. options: [
  12. {
  13. type: 'text',
  14. key: 'name',
  15. value: '',
  16. col: 6,
  17. label: '昵称 *',
  18. flexStyle: 'mr-3',
  19. slotName: 'name',
  20. rules: [v => !!v || '请输入您的昵称']
  21. },
  22. {
  23. type: 'text',
  24. key: 'anotherName',
  25. value: '',
  26. col: 6,
  27. label: '企业展示名称 *',
  28. rules: [v => !!v || '请输入企业展示名称']
  29. },
  30. {
  31. type: 'text',
  32. key: 'website',
  33. value: '',
  34. col: 6,
  35. flexStyle: 'mr-3',
  36. label: '企业官网'
  37. },
  38. {
  39. type: 'text',
  40. key: 'contact',
  41. value: '',
  42. col: 6,
  43. label: '联系人'
  44. },
  45. {
  46. type: 'phoneNumber',
  47. key: 'phone',
  48. value: '',
  49. col: 6,
  50. flexStyle: 'mr-3',
  51. label: '联系电话'
  52. },
  53. {
  54. slotName: 'industryId',
  55. key: 'industryId',
  56. value: null,
  57. label: '所在行业 *',
  58. outlined: true,
  59. clearable: false,
  60. itemText: 'label',
  61. itemValue: 'value',
  62. col: 6,
  63. noParam: true,
  64. rules: [v => !!v || '请选择所在行业']
  65. },
  66. {
  67. type: 'autocomplete',
  68. key: 'scale',
  69. value: null,
  70. label: '企业规模 *',
  71. outlined: true,
  72. clearable: false,
  73. itemText: 'label',
  74. itemValue: 'value',
  75. dictTypeName: 'menduner_scale',
  76. rules: [v => !!v || '请选择企业规模'],
  77. items: []
  78. },
  79. {
  80. type: 'datePicker',
  81. mode: 'month',
  82. key: 'openTime',
  83. value: null,
  84. format: 'YYYY-MM',
  85. disabledDate: true,
  86. label: '开业时间',
  87. labelWidth: 120,
  88. col: 6,
  89. flexStyle: 'mr-3',
  90. },
  91. {
  92. slotName: 'prepare',
  93. key: 'prepare',
  94. value: true,
  95. col: 6
  96. },
  97. {
  98. type: 'textarea',
  99. key: 'introduce',
  100. value: null,
  101. counter: 2000,
  102. rows: 6,
  103. label: '企业介绍 *',
  104. outlined: true,
  105. rules: [v => !!v || '请输入企业介绍']
  106. },
  107. ]
  108. })
  109. </script>
  110. <style scoped lang="scss">
  111. </style>