fix(login): 隐藏登录页租户栏并同步调整校验规则
- 删除登录页 userlogin 组件中租户输入框的 el-form-item 及相关 DOM - 移除登录表单 loginRules 中 tenantId 的校验规则 - 保留 loginForm.tenantId 默认值和 getTenant 方法,保证后端兼容 - 说明接口正常时仍会覆盖默认 tenantId,方便后续启用租户栏另外开启配置
This commit is contained in:
@@ -50,3 +50,12 @@
|
||||
- 问题:项目新增/编辑表单(含独立表单页 `/business/project-apply/form`)中,业务部门、承办部门两个 `el-cascader` 的按钮宽度与同行的 select/input 不一致。
|
||||
- 根因:scoped 样式里强制 100% 宽度的控件列表(`el-input` / `el-select` / `el-tree-select` / `el-date-editor`)漏了 `el-cascader`,导致级联选择器按内容宽度收缩,未填满栅格列。
|
||||
- 修复:`src/views/business/project-apply.vue` 末尾 scoped 样式 `.project-apply-form` 的 100% 宽度规则补上 `:deep(.el-cascader)`。Vite HMR 已自动生效,无需重启 dev。
|
||||
|
||||
## 登录页隐藏租户栏
|
||||
- 需求:登录页 `000000` 租户输入框隐藏。
|
||||
- 根因:`src/page/login/userlogin.vue` 第 10 行 `el-form-item` 由 `tenantMode` 控制显示,初始值 `this.website.tenantMode`,`getTenant()` 请求 `/api/system/tenant/info` 成功时会把 `tenantMode=false` 自动隐藏并回填 `loginForm.tenantId`。截图里仍显示租户栏,说明该接口未正常返回(域名解析/后端/跨域),沿用了初始 `tenantMode`。
|
||||
- 修复:
|
||||
1. 删除 `userlogin.vue` 模板第 10-21 行整段租户 `el-form-item`(`v-if="tenantMode" prop="tenantId"`),不留 `v-if` 兜底,直接移除 DOM。
|
||||
2. 同步删除 `loginRules.tenantId` 校验规则。
|
||||
- 保留:`loginForm.tenantId: '000000'` 默认值、`getTenant()` 方法。提交登录时仍带 `tenantId` 字段,后端行为不变;接口正常时仍会用返回的 tenantId 覆盖默认值。
|
||||
- 后续若要重新启用:恢复 `el-form-item` 即可(或改 `data()` 中 `tenantMode: this.website.tenantMode` 走配置开关)。
|
||||
|
||||
+1
-1
@@ -81,7 +81,7 @@ app.use(ElementPlus, {
|
||||
});
|
||||
app.use(Avue, {
|
||||
axios,
|
||||
calcHeight: 10,
|
||||
calcHeight: -26,
|
||||
crudOption: {
|
||||
searchIcon: true,
|
||||
searchIndex: 4,
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<div class="login-main">
|
||||
<p class="login-title">
|
||||
{{ $t('login.title') }}{{ website.title }}
|
||||
<top-lang></top-lang>
|
||||
<!-- <top-lang></top-lang>-->
|
||||
</p>
|
||||
<!-- 原登录方式先注释保留备用
|
||||
<userLogin v-if="activeName === 'user'"></userLogin>
|
||||
|
||||
@@ -7,18 +7,6 @@
|
||||
:model="loginForm"
|
||||
label-width="0"
|
||||
>
|
||||
<el-form-item v-if="tenantMode" prop="tenantId">
|
||||
<el-input
|
||||
@keyup.enter="handleLogin"
|
||||
v-model="loginForm.tenantId"
|
||||
auto-complete="off"
|
||||
:placeholder="$t('login.tenantId')"
|
||||
>
|
||||
<template #prefix>
|
||||
<i class="icon-quanxian" />
|
||||
</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="username">
|
||||
<el-input
|
||||
@keyup.enter="handleLogin"
|
||||
@@ -118,7 +106,6 @@ export default {
|
||||
image: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7',
|
||||
},
|
||||
loginRules: {
|
||||
tenantId: [{ required: false, message: '请输入租户ID', trigger: 'blur' }],
|
||||
username: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
|
||||
password: [
|
||||
{ required: true, message: '请输入密码', trigger: 'blur' },
|
||||
|
||||
@@ -160,7 +160,7 @@
|
||||
<el-input v-model="shipForm.shipName" maxlength="20" show-word-limit />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="安放龙骨日期/建造完工日期" prop="keelLayingDate">
|
||||
<div class="date-range-inline">
|
||||
<el-date-picker
|
||||
@@ -169,13 +169,13 @@
|
||||
value-format="YYYY-MM-DD"
|
||||
@change="validateField('keelLayingDate')"
|
||||
/>
|
||||
<span>至</span>
|
||||
<el-date-picker
|
||||
v-model="shipForm.buildCompletionDate"
|
||||
type="date"
|
||||
value-format="YYYY-MM-DD"
|
||||
@change="validateField('keelLayingDate')"
|
||||
/>
|
||||
<!-- <span>至</span>-->
|
||||
<!-- <el-date-picker-->
|
||||
<!-- v-model="shipForm.buildCompletionDate"-->
|
||||
<!-- type="date"-->
|
||||
<!-- value-format="YYYY-MM-DD"-->
|
||||
<!-- @change="validateField('keelLayingDate')"-->
|
||||
<!-- />-->
|
||||
</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
Reference in New Issue
Block a user