【新增】 word出题页面,半完善

This commit is contained in:
DESKTOP-932OMT8\REN
2025-05-27 13:39:59 +08:00
parent 27950d8af2
commit ff8d0fcfbe
14 changed files with 764 additions and 44 deletions

View File

@@ -127,7 +127,7 @@
>
菜单权限
</el-button>
<el-button
<!-- <el-button
v-hasPermi="['system:permission:assign-role-data-scope']"
link
preIcon="ep:coin"
@@ -136,7 +136,7 @@
@click="openDataPermissionForm(scope.row)"
>
数据权限
</el-button>
</el-button> -->
<el-button
v-hasPermi="['system:role:delete']"
link

View File

@@ -5,13 +5,13 @@
v-loading="formLoading"
:model="formData"
:rules="formRules"
label-width="80px"
label-width="120px"
>
<el-form-item label="户名" prop="name">
<el-input v-model="formData.name" placeholder="请输入户名" />
<el-form-item label="学校用户名" prop="name">
<el-input v-model="formData.name" placeholder="请输入学校用户名" />
</el-form-item>
<el-form-item label="租户套餐" prop="packageId">
<el-select v-model="formData.packageId" clearable placeholder="请选择租户套餐">
<el-form-item label="学校用户权限" prop="packageId">
<el-select v-model="formData.packageId" clearable placeholder="请选择学校用户权限">
<el-option
v-for="item in packageList"
:key="item.id"
@@ -37,14 +37,14 @@
type="password"
/>
</el-form-item>
<el-form-item label="账号额度" prop="accountCount">
<!-- <el-form-item label="账号额度" prop="accountCount">
<el-input-number
v-model="formData.accountCount"
:min="0"
controls-position="right"
placeholder="请输入账号额度"
/>
</el-form-item>
</el-form-item> -->
<el-form-item label="过期时间" prop="expireTime">
<el-date-picker
v-model="formData.expireTime"
@@ -57,7 +57,7 @@
<el-form-item label="绑定域名" prop="website">
<el-input v-model="formData.website" placeholder="请输入绑定域名" />
</el-form-item>
<el-form-item label="租户状态" prop="status">
<el-form-item label="状态" prop="status">
<el-radio-group v-model="formData.status">
<el-radio
v-for="dict in getIntDictOptions(DICT_TYPE.COMMON_STATUS)"
@@ -111,11 +111,10 @@ const formData = ref({
password: undefined
})
const formRules = reactive({
name: [{ required: true, message: '户名不能为空', trigger: 'blur' }],
packageId: [{ required: true, message: '租户套餐不能为空', trigger: 'blur' }],
name: [{ required: true, message: '学校用户名不能为空', trigger: 'blur' }],
packageId: [{ required: true, message: '学校用户权限不能为空', trigger: 'blur' }],
contactName: [{ required: true, message: '联系人不能为空', trigger: 'blur' }],
status: [{ required: true, message: '租户状态不能为空', trigger: 'blur' }],
accountCount: [{ required: true, message: '账号额度不能为空', trigger: 'blur' }],
status: [{ required: true, message: '状态不能为空', trigger: 'blur' }],
expireTime: [{ required: true, message: '过期时间不能为空', trigger: 'blur' }],
website: [{ required: true, message: '绑定域名不能为空', trigger: 'blur' }],
username: [{ required: true, message: '用户名称不能为空', trigger: 'blur' }],
@@ -171,6 +170,7 @@ const submitForm = async () => {
// 拼接子表的数据
data.tenantSpecialtyPointsVOList = demo03CourseFormRef.value.getData()
if (formType.value === 'create') {
data.accountCount = 99999;
await TenantApi.createTenant(data)
message.success(t('common.createSuccess'))
} else {

View File

@@ -10,10 +10,10 @@
:inline="true"
label-width="68px"
>
<el-form-item label="户名" prop="name">
<el-form-item label="学校用户名" prop="name">
<el-input
v-model="queryParams.name"
placeholder="请输入户名"
placeholder="请输入学校用户名"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
@@ -99,11 +99,11 @@
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list">
<el-table-column label="户编号" align="center" prop="id" />
<el-table-column label="户名" align="center" prop="name" />
<el-table-column label="租户套餐" align="center" prop="packageId">
<el-table-column label="学校用户编号" align="center" prop="id" />
<el-table-column label="学校用户名" align="center" prop="name" />
<el-table-column label="学校用户权限" align="center" prop="packageId">
<template #default="scope">
<el-tag v-if="scope.row.packageId === 0" type="danger">系统租户</el-tag>
<el-tag v-if="scope.row.packageId === 0" type="danger">中心服务器</el-tag>
<template v-else v-for="item in packageList">
<el-tag type="success" :key="item.id" v-if="item.id === scope.row.packageId">
{{ item.name }}
@@ -113,11 +113,11 @@
</el-table-column>
<el-table-column label="联系人" align="center" prop="contactName" />
<el-table-column label="联系手机" align="center" prop="contactMobile" />
<el-table-column label="账号额度" align="center" prop="accountCount">
<!-- <el-table-column label="账号额度" align="center" prop="accountCount">
<template #default="scope">
<el-tag>{{ scope.row.accountCount }}</el-tag>
</template>
</el-table-column>
</el-table-column> -->
<el-table-column
label="过期时间"
align="center"
@@ -126,7 +126,7 @@
:formatter="dateFormatter"
/>
<el-table-column label="绑定域名" align="center" prop="website" width="180" />
<el-table-column label="租户状态" align="center" prop="status">
<el-table-column label="状态" align="center" prop="status">
<template #default="scope">
<dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" />
</template>
@@ -292,7 +292,7 @@ const handleExport = async () => {
// 发起导出
exportLoading.value = true
const data = await TenantApi.exportTenant(queryParams)
download.excel(data, '户列表.xls')
download.excel(data, '学校用户列表.xls')
} catch {
} finally {
exportLoading.value = false

View File

@@ -7,10 +7,10 @@
:rules="formRules"
label-width="80px"
>
<el-form-item label="套餐名" prop="name">
<el-input v-model="formData.name" placeholder="请输入套餐名" />
<el-form-item label="权限名称" prop="name">
<el-input v-model="formData.name" placeholder="请输入学校用户权限名称" />
</el-form-item>
<el-form-item label="菜单权限">
<el-form-item label="权限">
<el-card class="w-full h-400px !overflow-y-scroll" shadow="never">
<template #header>
全选/全不选:
@@ -86,7 +86,7 @@ const formData = ref({
status: CommonStatusEnum.ENABLE
})
const formRules = reactive({
name: [{ required: true, message: '套餐名不能为空', trigger: 'blur' }],
name: [{ required: true, message: '学校用户权限名称不能为空', trigger: 'blur' }],
status: [{ required: true, message: '状态不能为空', trigger: 'blur' }],
menuIds: [{ required: true, message: '关联的菜单编号不能为空', trigger: 'blur' }]
})

View File

@@ -10,10 +10,10 @@
:inline="true"
label-width="68px"
>
<el-form-item label="套餐名" prop="name">
<el-form-item label="用户编号" prop="name">
<el-input
v-model="queryParams.name"
placeholder="请输入套餐名"
placeholder="请输入用户编号"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
@@ -58,8 +58,8 @@
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list">
<el-table-column label="套餐编号" align="center" prop="id" width="120" />
<el-table-column label="套餐名" align="center" prop="name" />
<el-table-column label="用户编号" align="center" prop="id" width="120" />
<el-table-column label="学校用户权限名称" align="center" prop="name" />
<el-table-column label="状态" align="center" prop="status" width="100">
<template #default="scope">
<dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" />