提交 865ace6d 编写于 作者: JEECG低代码平台's avatar JEECG低代码平台

Jeecg-Boot 2.1.4 版本发布 (新版问题修复)

上级 7bc3931e
...@@ -9,16 +9,16 @@ ...@@ -9,16 +9,16 @@
<a-form-item> <a-form-item>
<a-input <a-input
size="large" size="large"
v-decorator="['username',{initialValue:'admin', rules: validatorRules.username.rules}]" v-decorator="['username',validatorRules.username,{ validator: this.handleUsernameOrEmail }]"
type="text" type="text"
placeholder="请输入帐户名 / jeecg"> placeholder="请输入帐户名 / admin">
<a-icon slot="prefix" type="user" :style="{ color: 'rgba(0,0,0,.25)' }"/> <a-icon slot="prefix" type="user" :style="{ color: 'rgba(0,0,0,.25)' }"/>
</a-input> </a-input>
</a-form-item> </a-form-item>
<a-form-item> <a-form-item>
<a-input <a-input
v-decorator="['password',{initialValue:'123456', rules: validatorRules.password.rules}]" v-decorator="['password',validatorRules.password]"
size="large" size="large"
type="password" type="password"
autocomplete="false" autocomplete="false"
...@@ -41,7 +41,8 @@ ...@@ -41,7 +41,8 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :span="8" style="text-align: right"> <a-col :span="8" style="text-align: right">
<img style="margin-top: 2px;" :src="randCodeImage" @click="handleChangeCheckCode"/> <img v-if="requestCodeSuccess" style="margin-top: 2px;" :src="randCodeImage" @click="handleChangeCheckCode"/>
<img v-else style="margin-top: 2px;" src="../../assets/checkcode.png" @click="handleChangeCheckCode"/>
<!--<j-graphic-code @success="generateCode" ref="jgraphicCodeRef" style="float: right" remote></j-graphic-code>--> <!--<j-graphic-code @success="generateCode" ref="jgraphicCodeRef" style="float: right" remote></j-graphic-code>-->
</a-col> </a-col>
</a-row> </a-row>
...@@ -217,7 +218,8 @@ ...@@ -217,7 +218,8 @@
currentUsername:"", currentUsername:"",
validate_status:"", validate_status:"",
currdatetime:'', currdatetime:'',
randCodeImage:'' randCodeImage:'',
requestCodeSuccess:false
} }
}, },
created () { created () {
...@@ -346,9 +348,13 @@ ...@@ -346,9 +348,13 @@
getAction(`/sys/randomImage/${this.currdatetime}`).then(res=>{ getAction(`/sys/randomImage/${this.currdatetime}`).then(res=>{
if(res.success){ if(res.success){
this.randCodeImage = res.result this.randCodeImage = res.result
this.requestCodeSuccess=true
}else{ }else{
this.$message.error(res.message) this.$message.error(res.message)
this.requestCodeSuccess=false
} }
}).catch(()=>{
this.requestCodeSuccess=false
}) })
}, },
loginSuccess () { loginSuccess () {
......
...@@ -30,6 +30,14 @@ module.exports = { ...@@ -30,6 +30,14 @@ module.exports = {
.set('@comp', resolve('src/components')) .set('@comp', resolve('src/components'))
.set('@views', resolve('src/views')) .set('@views', resolve('src/views'))
.set('@layout', resolve('src/layout')) .set('@layout', resolve('src/layout'))
// 配置 webpack 识别 markdown 为普通的文件
config.module
.rule('markdown')
.test(/\.md$/)
.use()
.loader('file-loader')
.end()
}, },
css: { css: {
......
USE jeecg-boot;
/* /*
Navicat Premium Data Transfer Navicat Premium Data Transfer
......
...@@ -44,15 +44,18 @@ ...@@ -44,15 +44,18 @@
SELECT * FROM ( SELECT * FROM (
SELECT p.* SELECT p.*
FROM sys_permission p FROM sys_permission p
WHERE exists( WHERE (exists(
select a.id from sys_role_permission a select a.id from sys_role_permission a
join sys_role b on a.role_id = b.id join sys_role b on a.role_id = b.id
join sys_user_role c on c.role_id = b.id join sys_user_role c on c.role_id = b.id
join sys_user d on d.id = c.user_id join sys_user d on d.id = c.user_id
where p.id = a.permission_id AND d.username = #{username,jdbcType=VARCHAR} where p.id = a.permission_id AND d.username = #{username,jdbcType=VARCHAR}
) )
<!--update begin Author:taoyan Date:20200225 for:默认授权online的auto动态隐藏路由 -->
or (p.url like '%:code' and p.url like '/online%' and p.hidden = 1) )
<!--update end Author:taoyan Date:20200213 for:默认授权online的auto动态隐藏路由 -->
and p.del_flag = 0 and p.del_flag = 0
<!--update begin Author:lvdandan Date:20200213 for:加入部门权限 --> <!--update begin Author:lvdandan Date:20200225 for:加入部门权限 -->
UNION UNION
SELECT p.* SELECT p.*
FROM sys_permission p FROM sys_permission p
......
package org.jeecg.modules.system.util; package org.jeecg.modules.system.util;
import sun.misc.BASE64Encoder;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.awt.*; import java.awt.*;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.IOException; import java.io.IOException;
import java.util.Base64;
import java.util.Random; import java.util.Random;
/**
* 登录验证码工具类
*/
public class RandImageUtil { public class RandImageUtil {
public static final String key = "JEECG_LOGIN_KEY"; public static final String key = "JEECG_LOGIN_KEY";
...@@ -69,9 +71,8 @@ public class RandImageUtil { ...@@ -69,9 +71,8 @@ public class RandImageUtil {
ImageIO.write(image, IMG_FORMAT, byteStream); ImageIO.write(image, IMG_FORMAT, byteStream);
//转换成字节 //转换成字节
byte[] bytes = byteStream.toByteArray(); byte[] bytes = byteStream.toByteArray();
BASE64Encoder encoder = new BASE64Encoder();
//转换成base64串 //转换成base64串
String base64 = encoder.encodeBuffer(bytes).trim(); String base64 = Base64.getEncoder().encodeToString(bytes).trim();
base64 = base64.replaceAll("\n", "").replaceAll("\r", "");//删除 \r\n base64 = base64.replaceAll("\n", "").replaceAll("\r", "");//删除 \r\n
//写到指定位置 //写到指定位置
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册