mirror of
https://gitee.com/lab1024/smart-admin.git
synced 2025-09-18 03:16:40 +08:00
v3.16.0 【新增】优化代码生成 字典和文件预览;【新增】代码生成 菜单SQL;【新增】登录页面GIF炫酷图片;
This commit is contained in:
parent
1abe2ee05e
commit
ce0551696a
@ -33,6 +33,7 @@ import org.springframework.stereotype.Service;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
import java.io.StringWriter;
|
import java.io.StringWriter;
|
||||||
|
import java.nio.charset.Charset;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
@ -13,7 +13,6 @@ import net.lab1024.sa.base.module.support.codegenerator.domain.model.CodeTableFi
|
|||||||
import net.lab1024.sa.base.module.support.codegenerator.service.variable.CodeGenerateBaseVariableService;
|
import net.lab1024.sa.base.module.support.codegenerator.service.variable.CodeGenerateBaseVariableService;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author 1024创新实验室-主任:卓大
|
* @Author 1024创新实验室-主任:卓大
|
||||||
@ -66,7 +65,7 @@ public class ListVariableService extends CodeGenerateBaseVariableService {
|
|||||||
// 表格列表
|
// 表格列表
|
||||||
List<Map<String, Object>> listVariable = new ArrayList<>();
|
List<Map<String, Object>> listVariable = new ArrayList<>();
|
||||||
// 过滤掉不显示的字段
|
// 过滤掉不显示的字段
|
||||||
List<CodeTableField> tableFields = form.getTableFields().stream().filter(CodeTableField::getShowFlag).collect(Collectors.toList());
|
List<CodeTableField> tableFields = form.getTableFields().stream().filter(CodeTableField::getShowFlag).toList();
|
||||||
|
|
||||||
for (CodeTableField tableField : tableFields) {
|
for (CodeTableField tableField : tableFields) {
|
||||||
Map<String, Object> objectMap = BeanUtil.beanToMap(tableField);
|
Map<String, Object> objectMap = BeanUtil.beanToMap(tableField);
|
||||||
|
@ -39,7 +39,7 @@ spring:
|
|||||||
host: smtp.163.com
|
host: smtp.163.com
|
||||||
port: 465
|
port: 465
|
||||||
username: lab1024@163.com
|
username: lab1024@163.com
|
||||||
password: LAB1024LAB
|
password: 1024lab
|
||||||
properties:
|
properties:
|
||||||
mail:
|
mail:
|
||||||
smtp:
|
smtp:
|
||||||
|
@ -79,7 +79,7 @@ server:
|
|||||||
# 文件上传 配置
|
# 文件上传 配置
|
||||||
file:
|
file:
|
||||||
storage:
|
storage:
|
||||||
mode: local
|
mode: cloud
|
||||||
local:
|
local:
|
||||||
upload-path: /home/smart_admin_v3/upload/ #文件上传目录
|
upload-path: /home/smart_admin_v3/upload/ #文件上传目录
|
||||||
url-prefix:
|
url-prefix:
|
||||||
@ -87,8 +87,8 @@ file:
|
|||||||
region: oss-cn-hangzhou
|
region: oss-cn-hangzhou
|
||||||
endpoint: oss-cn-hangzhou.aliyuncs.com
|
endpoint: oss-cn-hangzhou.aliyuncs.com
|
||||||
bucket-name: 1024lab-smart-admin
|
bucket-name: 1024lab-smart-admin
|
||||||
access-key:
|
access-key: LTAI5tDnZ1wHwFHWMUNWznK2
|
||||||
secret-key:
|
secret-key: 6tVJ9K2mbrDrcbBLIBRBzho13FZ52t
|
||||||
url-prefix: https://${file.storage.cloud.bucket-name}.${file.storage.cloud.endpoint}/
|
url-prefix: https://${file.storage.cloud.bucket-name}.${file.storage.cloud.endpoint}/
|
||||||
private-url-expire-seconds: 3600
|
private-url-expire-seconds: 3600
|
||||||
|
|
||||||
|
BIN
smart-admin-web-javascript/src/assets/images/login/login.gif
Normal file
BIN
smart-admin-web-javascript/src/assets/images/login/login.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 MiB |
@ -7,7 +7,7 @@
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
.box-item {
|
.box-item {
|
||||||
width: 444px;
|
width: 460px;
|
||||||
height: 600px;
|
height: 600px;
|
||||||
&.desc {
|
&.desc {
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
|
@ -13,9 +13,9 @@
|
|||||||
<div class="box-item desc">
|
<div class="box-item desc">
|
||||||
<div class="welcome">
|
<div class="welcome">
|
||||||
<p>欢迎登录 SmartAdmin V3</p>
|
<p>欢迎登录 SmartAdmin V3</p>
|
||||||
<p class="sub-welcome">「高质量代码、简洁、安全」的开发平台</p>
|
<p class="sub-welcome">「高质量代码、简洁、高效、安全」的开发平台</p>
|
||||||
</div>
|
</div>
|
||||||
<img class="welcome-img" :src="leftBg2" />
|
<img class="welcome-img" :src="loginGif" />
|
||||||
</div>
|
</div>
|
||||||
<div class="box-item login">
|
<div class="box-item login">
|
||||||
<img class="login-qr" :src="loginQR" />
|
<img class="login-qr" :src="loginQR" />
|
||||||
@ -81,6 +81,7 @@
|
|||||||
import { useUserStore } from '/@/store/modules/system/user';
|
import { useUserStore } from '/@/store/modules/system/user';
|
||||||
import loginQR from '/@/assets/images/login/login-qr.png';
|
import loginQR from '/@/assets/images/login/login-qr.png';
|
||||||
import leftBg2 from '/@/assets/images/login/left-bg2.png';
|
import leftBg2 from '/@/assets/images/login/left-bg2.png';
|
||||||
|
import loginGif from '/@/assets/images/login/login.gif';
|
||||||
import wechatIcon from '/@/assets/images/login/wechat-icon.png';
|
import wechatIcon from '/@/assets/images/login/wechat-icon.png';
|
||||||
import aliIcon from '/@/assets/images/login/ali-icon.png';
|
import aliIcon from '/@/assets/images/login/ali-icon.png';
|
||||||
import douyinIcon from '/@/assets/images/login/douyin-icon.png';
|
import douyinIcon from '/@/assets/images/login/douyin-icon.png';
|
||||||
|
@ -18,8 +18,8 @@
|
|||||||
"type": "module",
|
"type": "module",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@ant-design/icons-vue": "^7.0.1",
|
"@ant-design/icons-vue": "^7.0.1",
|
||||||
"@wangeditor/editor": "5.1.14",
|
"@wangeditor-next/editor": "5.6.34",
|
||||||
"@wangeditor/editor-for-vue": "5.1.12",
|
"@wangeditor-next/editor-for-vue": "5.1.14",
|
||||||
"ant-design-vue": "4.2.5",
|
"ant-design-vue": "4.2.5",
|
||||||
"axios": "1.6.8",
|
"axios": "1.6.8",
|
||||||
"clipboard": "2.0.11",
|
"clipboard": "2.0.11",
|
||||||
|
BIN
smart-admin-web-typescript/src/assets/images/login/login.gif
Normal file
BIN
smart-admin-web-typescript/src/assets/images/login/login.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 MiB |
@ -25,7 +25,7 @@
|
|||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
<a-form-item label="产地" name="place" class="smart-query-form-item">
|
<a-form-item label="产地" name="place" class="smart-query-form-item">
|
||||||
<DictSelect :dictCode="DICT_CODE_ENUM.GOODS_PLACE" v-model:value="queryForm.place" width="120px" />
|
<DictSelect :dict-code="DICT_CODE_ENUM.GOODS_PLACE" v-model:value="queryForm.place" width="120px" />
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
<a-form-item label="商品状态" name="goodsStatus" class="smart-query-form-item">
|
<a-form-item label="商品状态" name="goodsStatus" class="smart-query-form-item">
|
||||||
@ -246,7 +246,7 @@
|
|||||||
resizable: true,
|
resizable: true,
|
||||||
filterOptions: {
|
filterOptions: {
|
||||||
type: 'dict-select',
|
type: 'dict-select',
|
||||||
dictCode: DICT_CODE_ENUM.GOODS_PLACE,
|
dictCode: DICT_CODE_ENUM.GOODS_PLACE || 'GOODS_PLACE',
|
||||||
},
|
},
|
||||||
width: 150,
|
width: 150,
|
||||||
},
|
},
|
||||||
|
@ -39,7 +39,16 @@
|
|||||||
<TableOperator class="smart-margin-bottom5" v-model="columns" :tableId="TABLE_ID_CONST.SUPPORT.CONFIG" :refresh="ajaxQuery" />
|
<TableOperator class="smart-margin-bottom5" v-model="columns" :tableId="TABLE_ID_CONST.SUPPORT.CONFIG" :refresh="ajaxQuery" />
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|
||||||
<a-table size="small" :scroll="{ x: 1000 }" :loading="tableLoading" bordered :dataSource="tableData" :columns="columns" rowKey="configId" :pagination="false">
|
<a-table
|
||||||
|
size="small"
|
||||||
|
:scroll="{ x: 1000 }"
|
||||||
|
:loading="tableLoading"
|
||||||
|
bordered
|
||||||
|
:dataSource="tableData"
|
||||||
|
:columns="columns"
|
||||||
|
rowKey="configId"
|
||||||
|
:pagination="false"
|
||||||
|
>
|
||||||
<template #bodyCell="{ record, index, column }">
|
<template #bodyCell="{ record, index, column }">
|
||||||
<template v-if="column.dataIndex === 'seq'">
|
<template v-if="column.dataIndex === 'seq'">
|
||||||
{{ index + 1 }}
|
{{ index + 1 }}
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
.box-item {
|
.box-item {
|
||||||
width: 444px;
|
width: 460px;
|
||||||
height: 600px;
|
height: 600px;
|
||||||
&.desc {
|
&.desc {
|
||||||
background: #ffffff;
|
background: #ffffff;
|
||||||
|
@ -13,9 +13,9 @@
|
|||||||
<div class="box-item desc">
|
<div class="box-item desc">
|
||||||
<div class="welcome">
|
<div class="welcome">
|
||||||
<p>欢迎登录 SmartAdmin V3</p>
|
<p>欢迎登录 SmartAdmin V3</p>
|
||||||
<p class="sub-welcome">「高质量代码、简洁、安全」的开发平台</p>
|
<p class="sub-welcome">「高质量代码、简洁、高效、安全」的开发平台</p>
|
||||||
</div>
|
</div>
|
||||||
<img class="welcome-img" :src="leftBg2" />
|
<img class="welcome-img" :src="loginGif" />
|
||||||
</div>
|
</div>
|
||||||
<div class="box-item login">
|
<div class="box-item login">
|
||||||
<img class="login-qr" :src="loginQR" />
|
<img class="login-qr" :src="loginQR" />
|
||||||
@ -81,6 +81,7 @@
|
|||||||
import { useUserStore } from '/@/store/modules/system/user';
|
import { useUserStore } from '/@/store/modules/system/user';
|
||||||
import loginQR from '/@/assets/images/login/login-qr.png';
|
import loginQR from '/@/assets/images/login/login-qr.png';
|
||||||
import leftBg2 from '/@/assets/images/login/left-bg2.png';
|
import leftBg2 from '/@/assets/images/login/left-bg2.png';
|
||||||
|
import loginGif from '/@/assets/images/login/login.gif';
|
||||||
import wechatIcon from '/@/assets/images/login/wechat-icon.png';
|
import wechatIcon from '/@/assets/images/login/wechat-icon.png';
|
||||||
import aliIcon from '/@/assets/images/login/ali-icon.png';
|
import aliIcon from '/@/assets/images/login/ali-icon.png';
|
||||||
import douyinIcon from '/@/assets/images/login/douyin-icon.png';
|
import douyinIcon from '/@/assets/images/login/douyin-icon.png';
|
||||||
|
Loading…
Reference in New Issue
Block a user