v3.30.0 【增加】字典项增加回显样式;【优化】文件S3协议对最新minio的支持;

This commit is contained in:
zhuoda
2026-03-01 21:34:21 +08:00
parent 36de38fda3
commit 2c661120ca
132 changed files with 975 additions and 540 deletions

View File

@@ -76,18 +76,18 @@
</template>
<script setup>
import { onMounted, reactive, ref } from 'vue';
import { regular } from '/@/constants/regular-const.js';
import { regular } from '/@/constants/regular-const';
import DepartmentTreeSelect from '/@/components/system/department-tree-select/index.vue';
import PositionSelect from '/@/components/system/position-select/index.vue';
import SmartEnumSelect from '/@/components/framework/smart-enum-select/index.vue';
import { loginApi } from '/@/api/system/login-api.js';
import { useUserStore } from '/@/store/modules/system/user.js';
import { loginApi } from '/@/api/system/login-api';
import { useUserStore } from '/@/store/modules/system/user';
import { message } from 'ant-design-vue';
import { smartSentry } from '/@/lib/smart-sentry.js';
import { smartSentry } from '/@/lib/smart-sentry';
import { employeeApi } from '/@/api/system/employee-api';
import { SmartLoading } from '/@/components/framework/smart-loading/index.js';
import { fileApi } from '/@/api/support/file-api.js';
import { FILE_FOLDER_TYPE_ENUM } from '/@/constants/support/file-const.js';
import { SmartLoading } from '/@/components/framework/smart-loading/index';
import { fileApi } from '/@/api/support/file-api';
import { FILE_FOLDER_TYPE_ENUM } from '/@/constants/support/file-const';
// 组件ref
const formRef = ref();

View File

@@ -14,8 +14,8 @@
</template>
<script setup>
import { reactive, ref } from 'vue';
import { messageApi } from '/@/api/support/message-api.js';
import { useUserStore } from '/@/store/modules/system/user.js';
import { messageApi } from '/@/api/support/message-api';
import { useUserStore } from '/@/store/modules/system/user';
const emit = defineEmits(['refresh']);

View File

@@ -86,7 +86,7 @@
import { messageApi } from '/@/api/support/message-api';
import { PAGE_SIZE, PAGE_SIZE_OPTIONS } from '/@/constants/common-const';
import SmartEnumSelect from '/@/components/framework/smart-enum-select//index.vue';
import { smartSentry } from '/@/lib/smart-sentry.js';
import { smartSentry } from '/@/lib/smart-sentry';
import MessageDetail from './components/message-detail.vue';
const columns = reactive([

View File

@@ -20,9 +20,9 @@
<script setup>
import { computed, onMounted, reactive, ref } from 'vue';
import { message } from 'ant-design-vue';
import { SmartLoading } from '/@/components/framework/smart-loading/index.js';
import { employeeApi } from '/@/api/system/employee-api.js';
import { smartSentry } from '/@/lib/smart-sentry.js';
import { SmartLoading } from '/@/components/framework/smart-loading/index';
import { employeeApi } from '/@/api/system/employee-api';
import { smartSentry } from '/@/lib/smart-sentry';
const emits = defineEmits(['onSuccess']);

View File

@@ -21,9 +21,9 @@
<script setup>
import { computed, onMounted, ref, watch } from 'vue';
import _ from 'lodash';
import { ACCOUNT_MENU } from '/@/views/system/account/account-menu.js';
import { ACCOUNT_MENU } from '/@/views/system/account/account-menu';
import { useRoute } from 'vue-router';
import { useUserStore } from '/@/store/modules/system/user.js';
import { useUserStore } from '/@/store/modules/system/user';
import { theme as antDesignTheme } from 'ant-design-vue';
// 菜单展示

View File

@@ -43,7 +43,7 @@
import ToBeDoneModal from './to-be-done-modal.vue';
import localKey from '/@/constants/local-storage-key-const';
import { localRead, localSave } from '/@/utils/local-util';
import { useUserStore } from '/@/store/modules/system/user.js';
import { useUserStore } from '/@/store/modules/system/user';
import { computed, ref, onMounted } from 'vue';
import { Modal } from 'ant-design-vue';

View File

@@ -7,7 +7,7 @@
align-items: center;
justify-content: center;
.box-item {
width: 444px;
width: 464px;
height: 600px;
&.desc {
background: #003b94;
@@ -108,7 +108,7 @@
transform: translateX(0);
}
100% {
transform: translateX(-30%);
transform: translateX(-5%);
}
}
@@ -119,7 +119,7 @@
display: inline-block;
width: 100%;
white-space: nowrap;
animation: marquee 5s linear infinite;
animation: marquee 3s linear infinite;
}
}
}
@@ -151,7 +151,7 @@
.code-btn{
height: 44px;
padding: 4px 5px;
width: 108px;
width: 100%;
}
.eye-box {
@@ -165,7 +165,7 @@
}
}
.btn {
width: 350px;
width: 100%;
height: 50px;
background: #1748FD;
border-radius: 4px;

View File

@@ -46,7 +46,8 @@
<img :src="gzh" />
<div class="qr-desc-marquee">
<div class="marquee">
<span>关注六边形工程师分享赚钱代码生活</span>
<span>关注六边形工程师</span>
<span>分享AI赚钱代码健康</span>
</div>
</div>
</div>
@@ -68,24 +69,33 @@
</a-input-group>
</a-form-item>
<a-form-item name="password">
<a-input-password
v-model:value="loginForm.password"
autocomplete="on"
:type="showPassword ? 'text' : 'password'"
placeholder="请输入密码"
/>
<a-popover placement="top">
<template #content>
<a-flex :vertical="true" justify="center" align="center">
<img :src="gzh" />
<a-typography-text type="danger">扫码关注六边形工程师</a-typography-text>
<a-typography-text type="danger">完成问卷调查获取登录密码</a-typography-text>
</a-flex>
</template>
<a-input-password
v-model:value="loginForm.password"
autocomplete="on"
:type="showPassword ? 'text' : 'password'"
placeholder="请输入密码"
/>
</a-popover>
</a-form-item>
<a-form-item name="captchaCode">
<a-input class="captcha-input" v-model:value.trim="loginForm.captchaCode" placeholder="请输入验证码" />
<img class="captcha-img" :src="captchaBase64Image" @click="getCaptcha" />
</a-form-item>
<a-form-item>
<a-checkbox v-model:checked="rememberPwd">记住密码</a-checkbox>
<span> ( 账号admin, 密码123456)</span>
</a-form-item>
<a-form-item>
<div class="btn" @click="onLogin">登录</div>
</a-form-item>
<a-form-item>
<span> 账号admin, 关注六边形工程师参与问卷获取密码</span>
</a-form-item>
</a-form>
<div class="more">
<div class="title-box">
@@ -129,10 +139,10 @@
import { smartSentry } from '/@/lib/smart-sentry';
import { encryptData } from '/@/lib/encrypt';
import { h } from 'vue';
import { localSave } from '/@/utils/local-util.js';
import LocalStorageKeyConst from '/@/constants/local-storage-key-const.js';
import { useDictStore } from '/@/store/modules/system/dict.js';
import {dictApi} from "/@/api/support/dict-api.js";
import { localSave } from '/@/utils/local-util';
import LocalStorageKeyConst from '/@/constants/local-storage-key-const';
import { useDictStore } from '/@/store/modules/system/dict';
import { dictApi } from '/@/api/support/dict-api';
//--------------------- 登录表单 ---------------------------------
@@ -221,6 +231,7 @@
//--------------------- 验证码 ---------------------------------
const captchaBase64Image = ref('');
async function getCaptcha() {
try {
let captchaResult = await loginApi.getCaptcha();
@@ -233,6 +244,7 @@
}
let refreshCaptchaInterval = null;
function beginRefreshCaptchaInterval(expireSeconds) {
if (refreshCaptchaInterval === null) {
refreshCaptchaInterval = setInterval(getCaptcha, (expireSeconds - 5) * 1000);
@@ -258,6 +270,7 @@
let emailCodeButtonDisabled = ref(false);
// 定时器
let countDownTimer = null;
// 开始倒计时
function runCountDown() {
emailCodeButtonDisabled.value = true;

View File

@@ -90,10 +90,10 @@
import { buildRoutes } from '/@/router/index';
import { smartSentry } from '/@/lib/smart-sentry';
import { encryptData } from '/@/lib/encrypt';
import { localSave } from '/@/utils/local-util.js';
import LocalStorageKeyConst from '/@/constants/local-storage-key-const.js';
import { useDictStore } from '/@/store/modules/system/dict.js';
import { dictApi } from '/@/api/support/dict-api.js';
import { localSave } from '/@/utils/local-util';
import LocalStorageKeyConst from '/@/constants/local-storage-key-const';
import { useDictStore } from '/@/store/modules/system/dict';
import { dictApi } from '/@/api/support/dict-api';
//--------------------- 登录表单 ---------------------------------

View File

@@ -92,10 +92,10 @@
import { buildRoutes } from '/@/router/index';
import { smartSentry } from '/@/lib/smart-sentry';
import { encryptData } from '/@/lib/encrypt';
import { localSave } from '/@/utils/local-util.js';
import LocalStorageKeyConst from '/@/constants/local-storage-key-const.js';
import { useDictStore } from '/@/store/modules/system/dict.js';
import { dictApi } from '/@/api/support/dict-api.js';
import { localSave } from '/@/utils/local-util';
import LocalStorageKeyConst from '/@/constants/local-storage-key-const';
import { useDictStore } from '/@/store/modules/system/dict';
import { dictApi } from '/@/api/support/dict-api';
//--------------------- 登录表单 ---------------------------------