潘志宝
2024-12-25 291bf570b2106cb99b0e689af7d6ccaacc9e5c1c
src/views/system/tenant/TenantForm.vue
@@ -57,6 +57,16 @@
      <el-form-item label="绑定域名" prop="website">
        <el-input v-model="formData.website" placeholder="请输入绑定域名" />
      </el-form-item>
      <el-form-item label="数据源" prop="dataSourceConfigId">
        <el-select v-model="formData.dataSourceConfigId" clearable placeholder="请选择数据源">
          <el-option
            v-for="item in dataSourceList"
            :key="item.id"
            :label="item.name"
            :value="item.id"
          />
        </el-select>
      </el-form-item>
      <el-form-item label="租户状态" prop="status">
        <el-radio-group v-model="formData.status">
          <el-radio
@@ -80,6 +90,7 @@
import * as TenantApi from '@/api/system/tenant'
import { CommonStatusEnum } from '@/utils/constants'
import * as TenantPackageApi from '@/api/system/tenantPackage'
import * as DataSourceConfigApi from "@/api/infra/dataSourceConfig";
defineOptions({ name: 'SystemTenantForm' })
@@ -99,6 +110,7 @@
  expireTime: undefined,
  website: undefined,
  status: CommonStatusEnum.ENABLE,
  dataSourceConfigId: undefined,
  // 新增专属
  username: undefined,
  password: undefined
@@ -116,6 +128,7 @@
})
const formRef = ref() // 表单 Ref
const packageList = ref([] as TenantPackageApi.TenantPackageVO[]) // 租户套餐
const dataSourceList = ref([] as DataSourceConfigApi.DataSourceConfigVO[])
/** 打开弹窗 */
const open = async (type: string, id?: number) => {
@@ -134,6 +147,9 @@
  }
  // 加载套餐列表
  packageList.value = await TenantPackageApi.getTenantPackageList()
  // 加载数据源列表
  dataSourceList.value = await DataSourceConfigApi.getDataSourceConfigList()
}
defineExpose({ open }) // 提供 open 方法,用于打开弹窗