Commit 403c54bd by wang_jiaxing

调节背景核查的全国接口返回,电子笔录增加侦查员的查询,修改登陆校验的表为sys_user

parent 259afecd
......@@ -26,6 +26,7 @@
<foreach collection="asjbhList" item="item" open="(" separator=", " close=")">
#{item}
</foreach>
order by asj.djsj desc
) t where rownum <![CDATA[ <= ]]> #{end} ) where r <![CDATA[ > ]]> #{begin}
</select>
<select id="getRyxbByZjhm" resultType="org.springblade.founder.asj.entity.JbAsjXs">
......
......@@ -28,6 +28,7 @@
<foreach collection="asjbhList" item="item" open="(" separator=", " close=")">
#{item}
</foreach>
order by asj.djsj desc
) t where rownum <![CDATA[ <= ]]> #{end} ) where r <![CDATA[ > ]]> #{begin}
</select>
<select id="getAsjbhListBsh" resultType="java.lang.String">
......
......@@ -30,8 +30,8 @@ public class QgAsjQueryService {
public List<TbXszCbypQgaj> getQgAsjByBsh(String bsh) {
List tbStAsjQGList = null;
try {
List<TbXszCbypQgaj> tbStAsjQGList = null;
String os = "['{\"JYAQ\":\"%" + bsh + "%\",\"XXSC_PDBZ\":\"0\"}']";
Map<Object, Object> param = new HashMap<>();
param.put("zylx", "asj");
......@@ -52,7 +52,7 @@ public class QgAsjQueryService {
if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
String jsonResult = EntityUtils.toString(response.getEntity(), "utf-8");
System.out.println("请求部级接口返回数据======" + jsonResult);
if (null != jsonResult && !"".equals(jsonResult)) {
if (null != jsonResult) {
JSONObject jsonObject = JSONObject.parseObject(jsonResult);
if (jsonObject.containsKey("dataResult")) {
tbStAsjQGList = (List) jsonObject.get("dataResult");
......@@ -60,16 +60,14 @@ public class QgAsjQueryService {
}
}
List<TbXszCbypQgaj> tbXszCbypQgajList = new ArrayList<>();
if (tbStAsjQGList != null && tbStAsjQGList.size() > 0) {
for (TbXszCbypQgaj xszCbypQgaj : tbStAsjQGList) {
for (Object date : tbStAsjQGList) {
TbXszCbypQgaj tbXszCbypQgaj = new TbXszCbypQgaj();
Map<String, String> map = (Map) xszCbypQgaj;
Map<String, String> map = (Map) date;
for (String key : map.keySet()) {
if ("ASJBH".equals(key)) {
tbXszCbypQgaj.setAsjbh(map.get("ASJBH"));
// 截取案件编号前两位省级
tbXszCbypQgaj.setXzqhdmSj(map.get("ASJBH").substring(1, 3) + "0000");
} else if ("AJMC".equals(key)) {
......@@ -125,9 +123,9 @@ public class QgAsjQueryService {
}
}
return tbXszCbypQgajList;
} catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
return null;
}
return null;
}
}
package org.springblade.founder.dzbl.controller;
import org.springblade.founder.dzbl.entity.TbStAppDzbl;
import org.springblade.founder.dzbl.entity.ZcyEntity;
import org.springblade.founder.dzbl.service.TbStAppDzblService;
import org.springblade.founder.utils.R;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;
......@@ -82,4 +84,15 @@ public class TbStAppDzblController {
return R.error(e.getMessage());
}
}
@PostMapping("/queryAllZcy")
public R queryAllZcy(ZcyEntity zcy) {
try {
Map<String, Object> resultMap = tbStAppDzblService.queryAllZcy(zcy);
return R.ok().data(resultMap);
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
}
package org.springblade.founder.dzbl.entity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.founder.entity.PageModel;
@Data
@EqualsAndHashCode(callSuper = true)
public class ZcyEntity extends PageModel {
private String xm;
private String sfzh;
private String jh;
private String dwdm;
private String dwmc;
}
......@@ -3,6 +3,7 @@ package org.springblade.founder.dzbl.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.springblade.founder.dzbl.entity.TbStAppDzbl;
import org.springblade.founder.dzbl.entity.ZcyEntity;
import org.springframework.stereotype.Repository;
import java.util.List;
......@@ -34,4 +35,20 @@ public interface TbStAppDzblMapper extends BaseMapper<TbStAppDzbl> {
* 2021/11/27 10:23
*/
TbStAppDzbl selectByxxzjbh(String xxzjbh);
/**
* selectZcyListByDwlike 查询侦查员列表
* @return java.util.List<org.springblade.founder.dzbl.entity.ZcyEntity>
* @author lystar
* 2021/11/30 17:35
*/
List<ZcyEntity> selectZcyListByParam(ZcyEntity zcy);
/**
* selectZcyCountByDwlike 查询侦查员数量
* @return java.lang.Integer
* @author lystar
* 2021/11/30 17:36
*/
Integer selectZcyCountByParam(ZcyEntity zcy);
}
......@@ -39,6 +39,7 @@
column="GLXX_RYBH" fetchType="lazy"/>
</resultMap>
<select id="selectListByParam" resultMap="baseResultMap">
select * from (select rownum r, t.* from (
SELECT
<include refid="dzblField"/>
FROM TB_ST_APP_DZBL dzbl,
......@@ -47,6 +48,9 @@
and ryxx.XXSC_PDBZ = '0'
and dzbl.GLXX_RYBH = ryxx.XXZJBH
<include refid="dzblParam"/>
) t
where rownum <![CDATA[ <= ]]> #{end})
where r <![CDATA[ > ]]> #{begin}
</select>
<select id="selectCountByParam" resultType="java.lang.Integer">
select count(1)
......@@ -64,6 +68,44 @@
where dzbl.XXSC_PDBZ = '0'
and XXZJBH = #{xxzjbh,jdbcType=VARCHAR}
</select>
<select id="selectZcyListByParam" resultType="org.springblade.founder.dzbl.entity.ZcyEntity">
select *
from (select rownum r, t.*
from (
select TRUE_NAME as xm,
IDENTITYCARD as sfzh,
UNITCODE as dwdm,
UNITNAME as dwmc
from SYS_USER
where UNITCODE like #{dwdm,jdbcType=VARCHAR} || '%'
<if test="xm != null and xm != ''">
and TRUE_NAME like '%' || #{xm,jdbcType=VARCHAR} || '%'
</if>
<if test="sfzh != null and sfzh != ''">
and IDENTITYCARD = #{sfzh,jdbcType=VARCHAR}
</if>
<if test="jh != null and jh != ''">
and username = #{jh,jdbcType=VARCHAR}
</if>
order by LRSJ desc
) t
where rownum <![CDATA[ <= ]]> #{end})
where r <![CDATA[ > ]]> #{begin}
</select>
<select id="selectZcyCountByParam" resultType="java.lang.Integer">
select count(1)
from SYS_USER
where UNITCODE like #{dwdm,jdbcType=VARCHAR} || '%'
<if test="xm != null and xm != ''">
and TRUE_NAME like '%' || #{xm,jdbcType=VARCHAR} || '%'
</if>
<if test="sfzh != null and sfzh != ''">
and IDENTITYCARD = #{sfzh,jdbcType=VARCHAR}
</if>
<if test="jh != null and jh != ''">
and username = #{jh,jdbcType=VARCHAR}
</if>
</select>
<sql id="dzblField">
dzbl.XXZJBH,
......
package org.springblade.founder.dzbl.service;
import org.springblade.founder.dzbl.entity.TbStAppDzbl;
import org.springblade.founder.dzbl.entity.ZcyEntity;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map;
......@@ -53,4 +55,13 @@ public interface TbStAppDzblService {
* 2021/11/27 10:45
*/
void deleteDzblBsh(String xxzjbh);
/**
* queryAllZcy 查询本单位及以下所有的人员
* @return java.util.Map<java.lang.String,java.lang.Object>
* @author lystar
* 2021/11/30 16:24
*/
Map<String, Object> queryAllZcy(ZcyEntity zcy);
}
......@@ -7,6 +7,7 @@ import org.springblade.founder.asj.dao.HnJbAsjXsMapper;
import org.springblade.founder.asj.dao.QgJbAsjXsMapper;
import org.springblade.founder.dzbl.entity.TbStAppDzbl;
import org.springblade.founder.dzbl.entity.TbStAppDzblBsh;
import org.springblade.founder.dzbl.entity.ZcyEntity;
import org.springblade.founder.dzbl.mapper.TbStAppDzblBshMapper;
import org.springblade.founder.dzbl.mapper.TbStAppDzblMapper;
import org.springblade.founder.dzbl.service.TbStAppDzblService;
......@@ -155,6 +156,21 @@ public class TbStAppDzblServiceImpl implements TbStAppDzblService {
tbStAppDzblBshMapper.updateById(bsh);
}
@Override
public Map<String, Object> queryAllZcy(ZcyEntity zcy) {
HashMap<String, Object> resultMap = new HashMap<>();
Utils.setPageParams(zcy);
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
String unitcode = xzxtUser.getUnitcode();
String dwlike = Utils.getDwlikeByUnitCode(unitcode);
zcy.setDwdm(dwlike);
List<ZcyEntity> dateList = tbStAppDzblMapper.selectZcyListByParam(zcy);
Integer total = tbStAppDzblMapper.selectZcyCountByParam(zcy);
resultMap.put("rows", dateList);
resultMap.put("total", total);
return resultMap;
}
/**
* saveBsh 新增或修改标示号
*
......
......@@ -21,6 +21,7 @@
and xyr.asjbh = asj.asjbh
and xyr.xxsc_pdbz = '0'
and asj.xxsc_pdbz = '0'
order by asj.djsj desc
</select>
<select id="selectAjByCphm" resultType="org.springblade.founder.ydjwhc.entity.HcAjJg">
select asj.ASJBH as ASJBH,
......@@ -30,5 +31,6 @@
from TB_ST_ASJ asj
where asj.xxsc_pdbz = '0'
and JYAQ like '%' || #{cphm,jdbcType=VARCHAR} || '%'
order by asj.djsj desc
</select>
</mapper>
......@@ -81,7 +81,6 @@ public class BjHcServiceImpl implements BjHcService {
resultMap.put("qgAjList", qgAjList);
resultMap.put("qgAjCount", qgAjList.size());
return resultMap;
}
......@@ -108,9 +107,12 @@ public class BjHcServiceImpl implements BjHcService {
}
resultMap.put("qgAjList", qgAjList);
resultMap.put("qgAjCount", qgAjList.size());
} else {
} else if (asjListByBsh != null){
resultMap.put("qgAjList", null);
resultMap.put("qgAjCount", 0);
} else {
resultMap.put("qgAjList", null);
resultMap.put("qgAjCount", -1); //全国接口访问不通
}
return resultMap;
......
......@@ -15,11 +15,12 @@
*/
package org.springblade.modules.auth.controller;
import com.alibaba.fastjson.JSONObject;
import com.wf.captcha.SpecCaptcha;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springblade.common.cache.CacheNames;
import org.springblade.core.secure.AuthInfo;
import org.springblade.core.tool.api.R;
......@@ -30,11 +31,14 @@ import org.springblade.core.tool.utils.WebUtil;
import org.springblade.modules.auth.granter.ITokenGranter;
import org.springblade.modules.auth.granter.TokenGranterBuilder;
import org.springblade.modules.auth.granter.TokenParameter;
import org.springblade.modules.auth.utils.SecurityUtil;
import org.springblade.modules.auth.utils.TokenUtil;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.SysNewUser;
import org.springblade.modules.system.entity.UserInfoResult;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import java.net.URLDecoder;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
......@@ -44,13 +48,15 @@ import java.util.concurrent.TimeUnit;
* @author Chill
*/
@RestController
@AllArgsConstructor
@RequestMapping("blade-auth")
@Api(value = "用户授权认证", tags = "授权接口")
public class AuthController {
private RedisUtil redisUtil;
@Value("${secretKey}")
private String secretKey;
@PostMapping("token")
@ApiOperation(value = "获取认证token", notes = "传入租户ID:tenantId,账号:account,密码:password")
public R<AuthInfo> token(@ApiParam(value = "授权类型", required = true) @RequestParam(defaultValue = "password", required = false) String grantType,
......@@ -70,31 +76,8 @@ public class AuthController {
.set("userType", userType);
ITokenGranter granter = TokenGranterBuilder.getGranter("password");
UserInfo userInfo = granter.grant(tokenParameter);
if (userInfo == null || userInfo.getUser() == null) {
return R.fail(TokenUtil.USER_NOT_FOUND);
}
return R.data(TokenUtil.createAuthInfo(userInfo));
}
@PostMapping("dddlToken")
public R<AuthInfo> dddlToken(User user) {
String userType = Func.toStr(WebUtil.getRequest().getHeader(TokenUtil.USER_TYPE_HEADER_KEY), TokenUtil.DEFAULT_USER_TYPE);
TokenParameter tokenParameter = new TokenParameter();
tokenParameter.getArgs().set("tenantId", "000000")
.set("account", user.getAccount())
.set("password", user.getPassword())
.set("grantType", "password")
.set("refreshToken", "")
.set("userType", userType);
UserInfo userInfo = new UserInfo();
userInfo.setUser(user);
// UserInfo userInfo = granter.grant(tokenParameter);
UserInfoResult userInfo = granter.grant(tokenParameter);
if (userInfo == null || userInfo.getUser() == null) {
return R.fail(TokenUtil.USER_NOT_FOUND);
}
......@@ -113,19 +96,44 @@ public class AuthController {
// 将key和base64返回给前端
return R.data(Kv.init().set("key", key).set("image", specCaptcha.toBase64()));
}
//单点登录预留接口
//工作桌面单点登录
@PostMapping("sign")
@ApiOperation(value = "单点登录", notes = "传入令牌:token")
public R<AuthInfo> token(
@ApiParam(value = "令牌") @RequestParam(required = false) String token) {
UserInfo userInfo = new UserInfo();
User user =new User();
user.setPassword("1");
user.setRoleId(token);
@ApiParam(value = "令牌") @RequestParam()String token) {
UserInfoResult userInfo = new UserInfoResult();
try {
//token解密
token= URLDecoder.decode(token,"UTF-8");//特殊字符转义处理
String userStr = SecurityUtil.decrypt(token, secretKey);
System.out.println("userStr========" + userStr);
if (StringUtils.isNotEmpty(userStr)) {
JSONObject jsonObj = JSONObject.parseObject(userStr);
String username=jsonObj.getString("username");
if(StringUtils.isNotEmpty(username)){//用户名不为空时继续验证
SysNewUser user = new SysNewUser();
user.setUsername(username);
user.setTrueName(jsonObj.getString("trueName"));
user.setIdentitycard(jsonObj.getString("identitycard"));
user.setUnitcode(jsonObj.getString("unitcode"));
user.setUnitname(jsonObj.getString("unitname"));
user.setGrade(jsonObj.getString("grade"));
String id = jsonObj.getString("id");
if (StringUtils.isNotEmpty(id) && id.matches("[0-9]+")) {
// user.setId(Long.parseLong(id));
user.setId(id);
}
userInfo.setUser(user);
}
}
} catch (Exception e) {
e.printStackTrace();
return R.fail(e.getMessage());
}
if (userInfo == null || userInfo.getUser() == null) {
return R.fail(TokenUtil.USER_NOT_FOUND);
}
......
......@@ -16,12 +16,11 @@
package org.springblade.modules.auth.granter;
import lombok.AllArgsConstructor;
import org.springblade.common.cache.CacheNames;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.tool.utils.*;
import org.springblade.modules.auth.enums.BladeUserEnum;
import org.springblade.modules.auth.utils.TokenUtil;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.core.tool.utils.DigestUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.RedisUtil;
import org.springblade.core.tool.utils.WebUtil;
import org.springblade.modules.system.entity.UserInfoResult;
import org.springblade.modules.system.service.IUserService;
import org.springframework.stereotype.Component;
......@@ -42,7 +41,7 @@ public class CaptchaTokenGranter implements ITokenGranter {
private RedisUtil redisUtil;
@Override
public UserInfo grant(TokenParameter tokenParameter) {
public UserInfoResult grant(TokenParameter tokenParameter) {
HttpServletRequest request = WebUtil.getRequest();
/*String key = request.getHeader(TokenUtil.CAPTCHA_HEADER_KEY);
......@@ -57,18 +56,20 @@ public class CaptchaTokenGranter implements ITokenGranter {
String tenantId = tokenParameter.getArgs().getStr("tenantId");
String account = tokenParameter.getArgs().getStr("account");
String password = tokenParameter.getArgs().getStr("password");
UserInfo userInfo = null;
UserInfoResult userInfo = null;
if (Func.isNoneBlank(account, password)) {
// 获取用户类型
String userType = tokenParameter.getArgs().getStr("userType");
// 根据不同用户类型调用对应的接口返回数据,用户可自行拓展
if (userType.equals(BladeUserEnum.WEB.getName())) {
userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
} else if (userType.equals(BladeUserEnum.APP.getName())) {
userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
} else {
userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
}
userInfo = userService.userInfoR(tenantId, account, DigestUtil.encrypt(password));
// if (userType.equals(BladeUserEnum.WEB.getName())) {
// userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
// } else if (userType.equals(BladeUserEnum.APP.getName())) {
// userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
// } else {
// userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
// }
}
return userInfo;
}
......
/**
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com).
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springblade.modules.auth.granter;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.UserInfoResult;
/**
* 授权认证统一接口.
......@@ -31,6 +16,6 @@ public interface ITokenGranter {
* @param tokenParameter 授权参数
* @return UserInfo
*/
UserInfo grant(TokenParameter tokenParameter);
UserInfoResult grant(TokenParameter tokenParameter);
}
......@@ -18,8 +18,7 @@ package org.springblade.modules.auth.granter;
import lombok.AllArgsConstructor;
import org.springblade.core.tool.utils.DigestUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.auth.enums.BladeUserEnum;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.UserInfoResult;
import org.springblade.modules.system.service.IUserService;
import org.springframework.stereotype.Component;
......@@ -37,22 +36,23 @@ public class PasswordTokenGranter implements ITokenGranter {
private IUserService userService;
@Override
public UserInfo grant(TokenParameter tokenParameter) {
public UserInfoResult grant(TokenParameter tokenParameter) {
String tenantId = tokenParameter.getArgs().getStr("tenantId");
String account = tokenParameter.getArgs().getStr("account");
String password = tokenParameter.getArgs().getStr("password");
UserInfo userInfo = null;
UserInfoResult userInfo = null;
if (Func.isNoneBlank(account, password)) {
// 获取用户类型
String userType = tokenParameter.getArgs().getStr("userType");
// 根据不同用户类型调用对应的接口返回数据,用户可自行拓展
if (userType.equals(BladeUserEnum.WEB.getName())) {
userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
} else if (userType.equals(BladeUserEnum.APP.getName())) {
userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
} else {
userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
}
userInfo = userService.userInfoR(tenantId, account, DigestUtil.encrypt(password));
// if (userType.equals(BladeUserEnum.WEB.getName())) {
// userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
// } else if (userType.equals(BladeUserEnum.APP.getName())) {
// userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
// } else {
// userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
// }
}
return userInfo;
}
......
......@@ -20,7 +20,7 @@ import lombok.AllArgsConstructor;
import org.springblade.core.launch.constant.TokenConstant;
import org.springblade.core.secure.utils.SecureUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.UserInfoResult;
import org.springblade.modules.system.service.IUserService;
import org.springframework.stereotype.Component;
......@@ -40,15 +40,15 @@ public class RefreshTokenGranter implements ITokenGranter {
private IUserService userService;
@Override
public UserInfo grant(TokenParameter tokenParameter) {
public UserInfoResult grant(TokenParameter tokenParameter) {
String grantType = tokenParameter.getArgs().getStr("grantType");
String refreshToken = tokenParameter.getArgs().getStr("refreshToken");
UserInfo userInfo = null;
UserInfoResult userInfo = null;
if (Func.isNoneBlank(grantType, refreshToken) && grantType.equals(TokenConstant.REFRESH_TOKEN)) {
Claims claims = SecureUtil.parseJWT(refreshToken);
String tokenType = Func.toStr(Objects.requireNonNull(claims).get(TokenConstant.TOKEN_TYPE));
if (tokenType.equals(TokenConstant.REFRESH_TOKEN)) {
userInfo= userService.userInfo(Func.toLong(claims.get(TokenConstant.USER_ID)));
userInfo= userService.userInfoR(Func.toLong(claims.get(TokenConstant.USER_ID)));
}
}
return userInfo;
......
package org.springblade.modules.auth.utils;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.codec.binary.Base64;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
/**
* @author szLi
* @date 2021/9/7 17:13
*/
public class SecurityUtil {
public static String encrypt(String input, String key){
byte[] crypted = null;
try{
SecretKeySpec skey = new SecretKeySpec(key.getBytes(), "AES");
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, skey);
crypted = cipher.doFinal(input.getBytes());
}catch(Exception e){
System.out.println(e.toString());
}
return new String(Base64.encodeBase64(crypted));
}
public static String decrypt(String input, String key){
byte[] output = null;
try{
SecretKeySpec skey = new SecretKeySpec(key.getBytes(), "AES");
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.DECRYPT_MODE, skey);
output = cipher.doFinal(Base64.decodeBase64(input));
}catch(Exception e){
System.out.println(e.toString());
}
return new String(output);
}
public static void main(String[] args) {
JSONObject jsonObj=new JSONObject();
jsonObj.put("username","xzxt");
jsonObj.put("identitycard","xzxt");
jsonObj.put("unitcode","150000000000");
jsonObj.put("unitname","内蒙古自治区公安厅");
jsonObj.put("id","000001");
jsonObj.put("policemanid","100001");
String userToken = SecurityUtil.encrypt(JSONObject.toJSONString(jsonObj),"xzeq2021@zhyy#54");
System.out.println(userToken);
}
}
......@@ -20,8 +20,8 @@ import org.springblade.core.secure.AuthInfo;
import org.springblade.core.secure.TokenInfo;
import org.springblade.core.secure.utils.SecureUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.SysNewUser;
import org.springblade.modules.system.entity.UserInfoResult;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
......@@ -55,28 +55,28 @@ public class TokenUtil {
* @param userInfo 用户信息
* @return token
*/
public static AuthInfo createAuthInfo(UserInfo userInfo) {
User user = userInfo.getUser();
public static AuthInfo createAuthInfo(UserInfoResult userInfo) {
SysNewUser user = userInfo.getUser();
//设置jwt参数
Map<String, String> param = new HashMap<>(16);
param.put(TokenConstant.TOKEN_TYPE, TokenConstant.ACCESS_TOKEN);
param.put(TokenConstant.TENANT_ID, user.getTenantId());
param.put(TokenConstant.TENANT_ID, user.getId());
param.put(TokenConstant.USER_ID, Func.toStr(user.getId()));
param.put(TokenConstant.ROLE_ID, user.getRoleId());
param.put(TokenConstant.ACCOUNT, user.getAccount());
param.put(TokenConstant.USER_NAME, user.getAccount());
// param.put(TokenConstant.ROLE_ID, user.getRoleId());
param.put(TokenConstant.ACCOUNT, user.getUsername());
param.put(TokenConstant.USER_NAME, user.getUsername());
param.put(TokenConstant.ROLE_NAME, Func.join(userInfo.getRoles()));
param.put("unitcode",user.getUnitcode());
param.put("grade",user.getGrade());
param.put("unitname",user.getUnitname());
param.put("identitycard",user.getIdentitycard());
param.put("realName",user.getRealName());
param.put("phone",user.getPhone());
param.put("realName",user.getTrueName());
param.put("phone",user.getTelephone());
TokenInfo accessToken = SecureUtil.createJWT(param, "audience", "issuser", TokenConstant.ACCESS_TOKEN);
AuthInfo authInfo = new AuthInfo();
authInfo.setAccount(user.getAccount());
authInfo.setUserName(user.getRealName());
authInfo.setAccount(user.getUsername());
authInfo.setUserName(user.getTrueName());
authInfo.setAuthority(Func.join(userInfo.getRoles()));
authInfo.setAccessToken(accessToken.getToken());
authInfo.setExpiresIn(accessToken.getExpire());
......@@ -87,8 +87,8 @@ public class TokenUtil {
authInfo.setIdentitycard(user.getIdentitycard());
authInfo.setUnitcode(user.getUnitcode());
authInfo.setUnitname(user.getUnitname());
authInfo.setRealname(user.getRealName());
authInfo.setPhone(user.getPhone());
authInfo.setRealname(user.getTrueName());
authInfo.setPhone(user.getTelephone());
try {
authInfo.setIp(getIp());
} catch (Exception e) {
......@@ -134,8 +134,8 @@ public class TokenUtil {
* @param userInfo 用户信息
* @return refreshToken
*/
private static TokenInfo createRefreshToken(UserInfo userInfo) {
User user = userInfo.getUser();
private static TokenInfo createRefreshToken(UserInfoResult userInfo) {
SysNewUser user = userInfo.getUser();
Map<String, String> param = new HashMap<>(16);
param.put(TokenConstant.TOKEN_TYPE, TokenConstant.REFRESH_TOKEN);
param.put(TokenConstant.USER_ID, Func.toStr(user.getId()));
......
/**
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com).
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springblade.modules.auth.utils;
import org.springblade.core.launch.constant.TokenConstant;
import org.springblade.core.secure.AuthInfo;
import org.springblade.core.secure.TokenInfo;
import org.springblade.core.secure.utils.SecureUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.XzxtUser;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.net.InetAddress;
import java.util.HashMap;
import java.util.Map;
/**
* 认证工具类
*
* @author Chill
*/
public class TokenUtilBzpt {
public final static String CAPTCHA_HEADER_KEY = "Captcha-Key";
public final static String CAPTCHA_HEADER_CODE = "Captcha-Code";
public final static String CAPTCHA_NOT_CORRECT = "验证码不正确";
public final static String TENANT_HEADER_KEY = "Tenant-Id";
public final static String DEFAULT_TENANT_ID = "000000";
public final static String USER_TYPE_HEADER_KEY = "User-Type";
public final static String DEFAULT_USER_TYPE = "web";
public final static String USER_NOT_FOUND = "用户名或密码错误";
public final static String HEADER_KEY = "Authorization";
public final static String HEADER_PREFIX = "Basic ";
public final static String DEFAULT_AVATAR = "https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png";
/**
* 创建认证token
*
* @param
* @return token
*/
public static AuthInfo createAuthInfo(XzxtUser user) {
//设置jwt参数
Map<String, String> param = new HashMap<>(16);
param.put(TokenConstant.TOKEN_TYPE, TokenConstant.ACCESS_TOKEN);
param.put(TokenConstant.TENANT_ID, "000000");
param.put("unitcode",user.getUnitcode());
param.put("grade",user.getGrade());
param.put("unitname",user.getUnitname());
param.put("identitycard",user.getIdentitycard());
param.put("realName",user.getRealname());
param.put("phone",user.getPhone());
TokenInfo accessToken = SecureUtil.createJWT(param, "audience", "issuser", TokenConstant.ACCESS_TOKEN);
AuthInfo authInfo = new AuthInfo();
authInfo.setAccessToken(accessToken.getToken());
authInfo.setExpiresIn(accessToken.getExpire());
authInfo.setRefreshToken("");
authInfo.setTokenType(TokenConstant.BEARER);
authInfo.setLicense(TokenConstant.LICENSE_NAME);
authInfo.setGrade(user.getGrade());
authInfo.setIdentitycard(user.getIdentitycard());
authInfo.setUnitcode(user.getUnitcode());
authInfo.setUnitname(user.getUnitname());
authInfo.setRealname(user.getRealname());
authInfo.setPhone(user.getPhone());
try {
authInfo.setIp(getIp());
} catch (Exception e) {
e.printStackTrace();
}
return authInfo;
}
public static String getIp() throws Exception {
HttpServletRequest request = ((ServletRequestAttributes)
RequestContextHolder.getRequestAttributes()).getRequest();
String ip = request.getHeader("X-Forwarded-For");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_CLIENT_IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_X_FORWARDED_FOR");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("X-Real-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
//有些网络通过多层代理,那么获取到的ip就会有多个,一般都是通过逗号(,)分割开来,并且第一个ip为客户端的真实IP
if (ip != null && ip.length() != 0) {
ip = ip.split(",")[0];
}
if ("127.0.0.1".equals(ip) || ip == "127.0.0.1" || "0:0:0:0:0:0:0:1".equals(ip)
|| ip == "0:0:0:0:0:0:0:1") {
ip = InetAddress.getLocalHost().getHostAddress();
}
return ip;
}
/**
* 创建refreshToken
*
* @param userInfo 用户信息
* @return refreshToken
*/
private static TokenInfo createRefreshToken(UserInfo userInfo) {
User user = userInfo.getUser();
Map<String, String> param = new HashMap<>(16);
param.put(TokenConstant.TOKEN_TYPE, TokenConstant.REFRESH_TOKEN);
param.put(TokenConstant.USER_ID, Func.toStr(user.getId()));
return SecureUtil.createJWT(param, "audience", "issuser", TokenConstant.REFRESH_TOKEN);
}
}
......@@ -16,10 +16,9 @@
package org.springblade.modules.system.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController;
......
......@@ -21,19 +21,19 @@ import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.annotation.PreAuth;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.RoleConstant;
import org.springblade.core.tool.support.Kv;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.system.entity.Menu;
import org.springblade.modules.system.service.IMenuService;
import org.springblade.modules.system.vo.MenuVO;
import org.springblade.modules.system.wrapper.MenuWrapper;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
......@@ -45,7 +45,7 @@ import java.util.Map;
@ApiIgnore
@RestController
@AllArgsConstructor
@RequestMapping("/blade-system/menu")
@RequestMapping("/system/menu")
@Api(value = "菜单", tags = "菜单")
public class MenuController extends BladeController {
......@@ -54,8 +54,8 @@ public class MenuController extends BladeController {
/**
* 详情
*/
@GetMapping("/detail")
@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
@PostMapping("/detail")
// @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
@ApiOperationSupport(order = 1)
@ApiOperation(value = "详情", notes = "传入menu")
public R<MenuVO> detail(Menu menu) {
......@@ -66,12 +66,12 @@ public class MenuController extends BladeController {
/**
* 列表
*/
@GetMapping("/list")
@PostMapping("/list")
@ApiImplicitParams({
@ApiImplicitParam(name = "code", value = "菜单编号", paramType = "query", dataType = "string"),
@ApiImplicitParam(name = "name", value = "菜单名称", paramType = "query", dataType = "string")
})
@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
// @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
@ApiOperationSupport(order = 2)
@ApiOperation(value = "列表", notes = "传入menu")
public R<List<MenuVO>> list(@ApiIgnore @RequestParam Map<String, Object> menu) {
......@@ -83,10 +83,10 @@ public class MenuController extends BladeController {
* 新增或修改
*/
@PostMapping("/submit")
@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
// @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
@ApiOperationSupport(order = 3)
@ApiOperation(value = "新增或修改", notes = "传入menu")
public R submit(@Valid @RequestBody Menu menu) {
public R submit(Menu menu) {
return R.status(menuService.saveOrUpdate(menu));
}
......@@ -95,7 +95,7 @@ public class MenuController extends BladeController {
* 删除
*/
@PostMapping("/remove")
@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
// @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
@ApiOperationSupport(order = 4)
@ApiOperation(value = "删除", notes = "传入ids")
public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
......@@ -105,7 +105,7 @@ public class MenuController extends BladeController {
/**
* 前端菜单数据
*/
@GetMapping("/routes")
@PostMapping("/routes")
@ApiOperationSupport(order = 5)
@ApiOperation(value = "前端菜单数据", notes = "前端菜单数据")
public R<List<MenuVO>> routes(BladeUser user) {
......@@ -116,7 +116,7 @@ public class MenuController extends BladeController {
/**
* 前端按钮数据
*/
@GetMapping("/buttons")
@PostMapping("/buttons")
@ApiOperationSupport(order = 6)
@ApiOperation(value = "前端按钮数据", notes = "前端按钮数据")
public R<List<MenuVO>> buttons(BladeUser user) {
......@@ -127,7 +127,7 @@ public class MenuController extends BladeController {
/**
* 获取菜单树形结构
*/
@GetMapping("/tree")
@PostMapping("/tree")
@ApiOperationSupport(order = 7)
@ApiOperation(value = "树形结构", notes = "树形结构")
public R<List<MenuVO>> tree() {
......@@ -138,7 +138,7 @@ public class MenuController extends BladeController {
/**
* 获取权限分配树形结构
*/
@GetMapping("/grant-tree")
@PostMapping("/grant-tree")
@ApiOperationSupport(order = 8)
@ApiOperation(value = "权限分配树形结构", notes = "权限分配树形结构")
public R<List<MenuVO>> grantTree(BladeUser user) {
......@@ -148,7 +148,7 @@ public class MenuController extends BladeController {
/**
* 获取权限分配树形结构
*/
@GetMapping("/role-tree-keys")
@PostMapping("/role-tree-keys")
@ApiOperationSupport(order = 9)
@ApiOperation(value = "角色所分配的树", notes = "角色所分配的树")
public R<List<String>> roleTreeKeys(String roleIds) {
......@@ -158,7 +158,7 @@ public class MenuController extends BladeController {
/**
* 获取配置的角色权限
*/
@GetMapping("auth-routes")
@PostMapping("auth-routes")
@ApiOperationSupport(order = 10)
@ApiOperation(value = "菜单的角色权限")
public R<List<Kv>> authRoutes(BladeUser user) {
......
......@@ -30,10 +30,12 @@ import org.springblade.modules.system.entity.Role;
import org.springblade.modules.system.service.IRoleService;
import org.springblade.modules.system.vo.RoleVO;
import org.springblade.modules.system.wrapper.RoleWrapper;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
......@@ -45,7 +47,7 @@ import java.util.Map;
@ApiIgnore
@RestController
@AllArgsConstructor
@RequestMapping("/blade-system/role")
@RequestMapping("/system/role")
@Api(value = "角色", tags = "角色")
public class RoleController extends BladeController {
......@@ -54,7 +56,7 @@ public class RoleController extends BladeController {
/**
* 详情
*/
@GetMapping("/detail")
@PostMapping("/detail")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "详情", notes = "传入role")
public R<RoleVO> detail(Role role) {
......@@ -65,7 +67,7 @@ public class RoleController extends BladeController {
/**
* 列表
*/
@GetMapping("/list")
@PostMapping("/list")
@ApiImplicitParams({
@ApiImplicitParam(name = "roleName", value = "参数名称", paramType = "query", dataType = "string"),
@ApiImplicitParam(name = "roleAlias", value = "角色别名", paramType = "query", dataType = "string")
......@@ -81,10 +83,10 @@ public class RoleController extends BladeController {
/**
* 获取角色树形结构
*/
@GetMapping("/tree")
@PostMapping("/tree")
@ApiOperationSupport(order = 3)
@ApiOperation(value = "树形结构", notes = "树形结构")
public R<List<RoleVO>> tree(String tenantId, BladeUser bladeUser) {
public R tree(String tenantId, BladeUser bladeUser) {
List<RoleVO> tree = roleService.tree(Func.toStr(tenantId, bladeUser.getTenantId()));
return R.data(tree);
}
......@@ -95,7 +97,7 @@ public class RoleController extends BladeController {
@PostMapping("/submit")
@ApiOperationSupport(order = 4)
@ApiOperation(value = "新增或修改", notes = "传入role")
public R submit(@Valid @RequestBody Role role, BladeUser user) {
public R submit(Role role, BladeUser user) {
if (Func.isEmpty(role.getId())) {
role.setTenantId(user.getTenantId());
}
......
package org.springblade.modules.system.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.tool.utils.Func;
import org.springblade.founder.entity.EasyUIPage;
import org.springblade.founder.utils.R;
import org.springblade.modules.system.entity.SysMenuNew;
import org.springblade.modules.system.entity.SysRoleNew;
import org.springblade.modules.system.service.IRoleService;
import org.springblade.modules.system.service.ISysRoleNewService;
import org.springblade.modules.system.vo.RoleVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author jing
* @date 2021/9/16 -- 15:06
*/
@RestController
@RequestMapping("sysrole")
@Api(value = "角色基本信息", tags = "角色基本信息")
public class SysRoleNewController {
@Autowired
private ISysRoleNewService sysRoleNewService;
@Autowired
private IRoleService roleService;
@PostMapping("/insertRoleNew")
@ResponseBody
@ApiOperation(value = "录入角色信息", notes = "录入角色信息")
public R insertRoleNew(SysRoleNew sysRoleNew){
try {
String submit = sysRoleNewService.submit(sysRoleNew);
return R.ok();
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
// /**
// * 列表
// */
// @PostMapping("/list")
// @ApiImplicitParams({
// @ApiImplicitParam(name = "roleName", value = "参数名称", paramType = "query", dataType = "string"),
// @ApiImplicitParam(name = "roleAlias", value = "角色别名", paramType = "query", dataType = "string")
// })
// @ApiOperationSupport(order = 2)
// @ApiOperation(value = "列表", notes = "传入role")
// public R list(@ApiIgnore @RequestParam Map<String, Object> role, BladeUser bladeUser) {
// QueryWrapper<Role> queryWrapper = Condition.getQueryWrapper(role, Role.class);
// List<Role> list = roleService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Role::getTenantId, bladeUser.getTenantId()) : queryWrapper);
// return R.ok().data("rows",RoleWrapper.build().listNodeVO(list));
// }
@PostMapping("/selectRoleList")
@ResponseBody
@ApiOperation(value = "查询角色的list集合", notes = "查询角色的list集合")
public R selectRoleList(SysRoleNew sysRoleNew){
try {
EasyUIPage easyUIPage = new EasyUIPage();
easyUIPage.setPage(sysRoleNew.getPage());
easyUIPage.setPagePara(sysRoleNew.getLimit());
int begin = easyUIPage.getBegin();
int end = easyUIPage.getEnd();
sysRoleNew.setBegin(begin);
sysRoleNew.setEnd(end);
Map<String,Object> map = new HashMap<>();
List<SysRoleNew> list = sysRoleNewService.getRoleNewList(sysRoleNew);
int count = sysRoleNewService.getRoleNewCount(sysRoleNew);
map.put("rows",list);
map.put("total",count);
return R.ok().data(map);
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
@PostMapping("/upRoleXx")
@ResponseBody
@ApiOperation(value = "更新角色信息", notes = "更新角色信息")
public R upRoleXx(SysRoleNew sysRoleNew){
try {
sysRoleNewService.updateRoleNew(sysRoleNew);
return R.ok();
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
@PostMapping("/deleteRoleNew")
@ResponseBody
@ApiOperation(value = "删除角色信息", notes = "删除角色信息")
public R deleteRoleNew(String id){
try {
sysRoleNewService.deleteRoleNew(id);
return R.ok();
}catch (Exception e){
e.printStackTrace();
return R.error(e.getMessage());
}
}
// 回显、详情
@PostMapping("/getRoleXxById")
@ResponseBody
@ApiOperation(value = "回显/详情菜单信息", notes = "回显/详情菜单信息")
public R getRoleXxById(String id){
try {
SysRoleNew menuById = sysRoleNewService.getRoleById(id);
return R.ok().data("rows",menuById);
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
/**
* 获取角色树形结构
*/
@PostMapping("/tree")
@ApiOperationSupport(order = 3)
@ApiOperation(value = "树形结构", notes = "树形结构")
public R tree(String tenantId, BladeUser bladeUser) {
List<RoleVO> tree = roleService.tree(Func.toStr(tenantId, bladeUser.getTenantId()));
return R.ok().data("rows",tree);
}
@PostMapping("/selectMenuList")
@ResponseBody
@ApiOperation(value = "查询菜单的list集合", notes = "查询菜单的list集合")
public R selectMenuList(SysMenuNew sysMenuNew){
try {
EasyUIPage easyUIPage = new EasyUIPage();
easyUIPage.setPage(sysMenuNew.getPage());
easyUIPage.setPagePara(sysMenuNew.getLimit());
int begin = easyUIPage.getBegin();
int end = easyUIPage.getEnd();
sysMenuNew.setBegin(begin);
sysMenuNew.setEnd(end);
Map<String,Object> map = new HashMap<>();
List<SysMenuNew> list = sysRoleNewService.getMeanNewList(sysMenuNew);
int count = sysRoleNewService.getMneuNewCount(sysMenuNew);
map.put("rows",list);
map.put("total",count);
return R.ok().data(map);
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
}
......@@ -39,12 +39,14 @@ import org.springblade.modules.system.service.IUserService;
import org.springblade.modules.system.vo.UserVO;
import org.springblade.modules.system.wrapper.UserWrapper;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
......@@ -60,7 +62,7 @@ import java.util.Map;
*/
@RestController
@RequestMapping("blade-user")
@RequestMapping("bladeuser")
@AllArgsConstructor
@Api(value = "用户基本信息", tags = "用户信息基本接口")
public class UserController {
......@@ -72,7 +74,7 @@ public class UserController {
*/
@ApiOperationSupport(order = 1)
@ApiOperation(value = "查看详情", notes = "传入id")
@GetMapping("/detail")
@PostMapping("/detail")
public R<UserVO> detail(User user) {
User detail = userService.getOne(Condition.getQueryWrapper(user));
return R.data(UserWrapper.build().entityVO(detail));
......@@ -83,7 +85,7 @@ public class UserController {
*/
@ApiOperationSupport(order = 2)
@ApiOperation(value = "查看详情", notes = "传入id")
@GetMapping("/info")
@PostMapping("/info")
public R<UserVO> info(BladeUser user) {
User detail = userService.getById(user.getUserId());
return R.data(UserWrapper.build().entityVO(detail));
......@@ -92,7 +94,7 @@ public class UserController {
/**
* 用户列表
*/
@GetMapping("/list")
@PostMapping("/list")
@ApiImplicitParams({
@ApiImplicitParam(name = "account", value = "账号名", paramType = "query", dataType = "string"),
@ApiImplicitParam(name = "realName", value = "姓名", paramType = "query", dataType = "string")
......@@ -111,7 +113,7 @@ public class UserController {
@PostMapping("/submit")
@ApiOperationSupport(order = 4)
@ApiOperation(value = "新增或修改", notes = "传入User")
public R submit(@Valid @RequestBody User user) {
public R submit(User user) {
return R.status(userService.submit(user));
}
......@@ -121,7 +123,7 @@ public class UserController {
@PostMapping("/update")
@ApiOperationSupport(order = 5)
@ApiOperation(value = "修改", notes = "传入User")
public R update(@Valid @RequestBody User user) {
public R update( User user) {
return R.status(userService.updateById(user));
}
......@@ -152,6 +154,9 @@ public class UserController {
return R.status(temp);
}
@PostMapping("/reset-password")
@ApiOperationSupport(order = 8)
@ApiOperation(value = "初始化密码", notes = "传入userId集合")
......@@ -184,7 +189,7 @@ public class UserController {
* @param user
* @return
*/
@GetMapping("/user-list")
@PostMapping("/user-list")
@ApiOperationSupport(order = 10)
@ApiOperation(value = "用户列表", notes = "传入user")
public R<List<User>> userList(User user) {
......@@ -223,7 +228,7 @@ public class UserController {
* 导出用户
*/
@SneakyThrows
@GetMapping("export-user")
@PostMapping("export-user")
@ApiOperationSupport(order = 13)
@ApiOperation(value = "导出用户", notes = "传入user")
public void exportUser(@ApiIgnore @RequestParam Map<String, Object> user, BladeUser bladeUser, HttpServletResponse response) {
......@@ -244,7 +249,7 @@ public class UserController {
* 导出模板
*/
@SneakyThrows
@GetMapping("export-template")
@PostMapping("export-template")
@ApiOperationSupport(order = 14)
@ApiOperation(value = "导出模板")
public void exportUser(HttpServletResponse response) {
......
package org.springblade.modules.system.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springblade.founder.entity.EasyUIPage;
import org.springblade.founder.utils.R;
import org.springblade.modules.system.entity.SysNewUser;
import org.springblade.modules.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author jing
* @date 2021/9/15 -- 16:37
*/
@RestController
@RequestMapping("sysuser")
@Api(value = "用户基本信息", tags = "用户信息基本接口")
public class UserNewController {
@Autowired
private ISysUserService sysUserService;
@PostMapping("/insertUserNew")
@ResponseBody
@ApiOperation(value = "录入用户信息", notes = "录入用户信息")
public R insertUserNew(SysNewUser sysNewUser){
try {
String submit = sysUserService.submit(sysNewUser);
return R.ok().data("xxzjbh",submit);
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
@PostMapping("/selectUserNewList")
@ResponseBody
@ApiOperation(value = "查询用户的list集合", notes = "查询用户的list集合")
public R selectUserNewList(SysNewUser sysNewUser){
try {
EasyUIPage easyUIPage = new EasyUIPage();
easyUIPage.setPage(sysNewUser.getPage());
easyUIPage.setPagePara(sysNewUser.getRows());
int begin = easyUIPage.getBegin();
int end = easyUIPage.getEnd();
sysNewUser.setBegin(begin);
sysNewUser.setEnd(end);
Map<String,Object> map = new HashMap<>();
List<SysNewUser> list = sysUserService.getUserNewList(sysNewUser);
int count = sysUserService.getUserNewCount(sysNewUser);
map.put("rows",list);
map.put("total",count);
return R.ok().data(map);
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
@PostMapping("/updateUserXx")
@ResponseBody
@ApiOperation(value = "更新用户信息", notes = "更新用户信息")
public R updateUserXx(SysNewUser sysNewUser){
try {
// zdjyxxccService.updateZdjyhd(zdjyhdzsxx);
sysUserService.updateUserNew(sysNewUser);
return R.ok();
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
// 删除用户信息
@PostMapping("/deleteUserNew")
@ResponseBody
@ApiOperation(value = "删除用户信息", notes = "删除用户信息")
public R deleteUserNew(String id){
try {
sysUserService.deleteUserNew(id);
return R.ok();
}catch (Exception e){
e.printStackTrace();
return R.error(e.getMessage());
}
}
// 回显数据/详情数据
@PostMapping("/getUserXxByxxzjbh")
@ResponseBody
@ApiOperation(value = "回显/详情用户信息", notes = "回显/详情用户信息")
public R getUserXxByxxzjbh(String id){
try {
SysNewUser userxxByxxzjbh = sysUserService.getUserxxByxxzjbh(id);
return R.ok().data("rows",userxxByxxzjbh);
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
// 给用户分配角色(多选)
@PostMapping("/insertUserRoles")
@ResponseBody
@ApiOperation(value = "给用户分配角色", notes = "给用户分配角色")
public R insertUserRoles(String userIds,String roleIds){
try {
sysUserService.insertUserRoles(userIds,roleIds);
return R.ok();
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
// 开启用户
@PostMapping("/openUserXx")
@ResponseBody
@ApiOperation(value = "开启用户信息", notes = "开启用户信息")
public R openUserXx(SysNewUser sysNewUser){
try {
// zdjyxxccService.updateZdjyhd(zdjyhdzsxx);
sysUserService.updateUserNew(sysNewUser);
return R.ok();
} catch (Exception e) {
e.printStackTrace();
return R.error(e.getMessage());
}
}
}
......@@ -34,7 +34,7 @@ import java.io.Serializable;
* @author Chill
*/
@Data
@TableName("blade_menu")
@TableName("sys_menu")
@ApiModel(value = "Menu对象", description = "Menu对象")
public class Menu implements Serializable {
......
......@@ -18,10 +18,10 @@ package org.springblade.modules.system.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.TenantEntity;
......
......@@ -29,11 +29,12 @@ import java.io.Serializable;
/**
* 实体类
*
* blade_role
*sys_role
* @author Chill
*/
@Data
@TableName("blade_role")
@TableName("sys_role")
@ApiModel(value = "Role对象", description = "Role对象")
public class Role implements Serializable {
......
......@@ -32,7 +32,7 @@ import java.io.Serializable;
* @author Chill
*/
@Data
@TableName("blade_role_menu")
@TableName("sys_role_menu")
@ApiModel(value = "RoleMenu对象", description = "RoleMenu对象")
public class RoleMenu implements Serializable {
......
package org.springblade.modules.system.entity;
import lombok.Data;
import java.io.Serializable;
@Data
public class SysDictitem implements Serializable {
private static final long serialVersionUID = 1L;
//主键ID
......@@ -61,272 +64,10 @@ public class SysDictitem implements Serializable {
protected long scbz;
protected String lrr;
protected String gxr;
protected String lrdwdm;
protected String lrdwmc;
protected String yycj9;
protected String lrsj;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getCodeStr() {
return codeStr;
}
public void setCodeStr(String codeStr) {
this.codeStr = codeStr;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGroupid() {
return groupid;
}
public void setGroupid(String groupid) {
this.groupid = groupid;
}
public String getLevelid() {
return levelid;
}
public void setLevelid(String levelid) {
this.levelid = levelid;
}
public String getSpell() {
return spell;
}
public void setSpell(String spell) {
this.spell = spell;
}
public String getWbzx() {
return wbzx;
}
public void setWbzx(String wbzx) {
this.wbzx = wbzx;
}
public String getSimple() {
return simple;
}
public void setSimple(String simple) {
this.simple = simple;
}
public String getGroupname() {
return groupname;
}
public void setGroupname(String groupname) {
this.groupname = groupname;
}
public String getYycj1() {
return yycj1;
}
public void setYycj1(String yycj1) {
this.yycj1 = yycj1;
}
public String getYycj2() {
return yycj2;
}
public void setYycj2(String yycj2) {
this.yycj2 = yycj2;
}
public String getYycj3() {
return yycj3;
}
public void setYycj3(String yycj3) {
this.yycj3 = yycj3;
}
public String getYycj4() {
return yycj4;
}
public void setYycj4(String yycj4) {
this.yycj4 = yycj4;
}
public String getPid() {
return pid;
}
public void setPid(String pid) {
this.pid = pid;
}
public String getIsparent() {
return isparent;
}
public void setIsparent(String isparent) {
this.isparent = isparent;
}
public String getYycj7() {
return yycj7;
}
public void setYycj7(String yycj7) {
this.yycj7 = yycj7;
}
public String getYycj5() {
return yycj5;
}
public void setYycj5(String yycj5) {
this.yycj5 = yycj5;
}
public String getYycj6() {
return yycj6;
}
public void setYycj6(String yycj6) {
this.yycj6 = yycj6;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getEndcode() {
return endcode;
}
public void setEndcode(String endcode) {
this.endcode = endcode;
}
public String getStartcode() {
return startcode;
}
public void setStartcode(String startcode) {
this.startcode = startcode;
}
public String getYycj8() {
return yycj8;
}
public void setYycj8(String yycj8) {
this.yycj8 = yycj8;
}
public String getSfqybmpdbz() {
return sfqybmpdbz;
}
public void setSfqybmpdbz(String sfqybmpdbz) {
this.sfqybmpdbz = sfqybmpdbz;
}
public String getDmmcbm() {
return dmmcbm;
}
public void setDmmcbm(String dmmcbm) {
this.dmmcbm = dmmcbm;
}
public String getGabxf() {
return gabxf;
}
public void setGabxf(String gabxf) {
this.gabxf = gabxf;
}
public long getScbz() {
return scbz;
}
public void setScbz(long scbz) {
this.scbz = scbz;
}
public String getLrr() {
return lrr;
}
public void setLrr(String lrr) {
this.lrr = lrr;
}
public String getYycj9() {
return yycj9;
}
public void setYycj9(String yycj9) {
this.yycj9 = yycj9;
}
@Override
public String toString() {
return "SysDictitem{" +
"id='" + id + '\'' +
", code='" + code + '\'' +
", codeStr='" + codeStr + '\'' +
", name='" + name + '\'' +
", groupid='" + groupid + '\'' +
", levelid='" + levelid + '\'' +
", spell='" + spell + '\'' +
", wbzx='" + wbzx + '\'' +
", simple='" + simple + '\'' +
", groupname='" + groupname + '\'' +
", yycj1='" + yycj1 + '\'' +
", yycj2='" + yycj2 + '\'' +
", yycj3='" + yycj3 + '\'' +
", yycj4='" + yycj4 + '\'' +
", pid='" + pid + '\'' +
", isparent='" + isparent + '\'' +
", yycj7='" + yycj7 + '\'' +
", yycj5='" + yycj5 + '\'' +
", yycj6='" + yycj6 + '\'' +
", description='" + description + '\'' +
", endcode='" + endcode + '\'' +
", startcode='" + startcode + '\'' +
", yycj8='" + yycj8 + '\'' +
", sfqybmpdbz='" + sfqybmpdbz + '\'' +
", dmmcbm='" + dmmcbm + '\'' +
", gabxf='" + gabxf + '\'' +
", scbz=" + scbz +
", lrr='" + lrr + '\'' +
", yycj9='" + yycj9 + '\'' +
'}';
}
}
package org.springblade.modules.system.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author jing
* @date 2021/9/16 -- 11:39
*/
@Data
@ApiModel(value = "SysMenuNew", description = "菜单信息")
public class SysMenuNew {
//主键
@ApiModelProperty(value = "主键")
private String id;
//父级菜单
@ApiModelProperty(value = "父级菜单")
private String parentId;
//菜单编号
@ApiModelProperty(value = "菜单编号")
private String code;
//菜单名称
@ApiModelProperty(value = "菜单名称")
private String name;
//菜单别名
@ApiModelProperty(value = "菜单别名")
private String alias;
//请求地址
@ApiModelProperty(value = "请求地址")
private String path;
//菜单资源
@ApiModelProperty(value = "菜单资源")
private String source;
//排序
@ApiModelProperty(value = "排序")
private Double sort;
//菜单类型
@ApiModelProperty(value = "菜单类型")
private Double category;
//操作按钮类型
@ApiModelProperty(value = "操作按钮类型")
private Double action;
//是否打开新页面
@ApiModelProperty(value = "是否打开新页面")
private Double isOpen;
//备注
@ApiModelProperty(value = "备注")
private String remark;
//是否已删除
@ApiModelProperty(value = "是否已删除")
private Double isDeleted;
private int page;
private int limit;
private int begin;
private int end;
}
package org.springblade.modules.system.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.founder.entity.BaseModel;
import java.util.List;
/**
* @author jing
* @date 2021/9/15 -- 16:08
*/
@Data
@ApiModel(value = "SysNewUser", description = "用户信息")
public class SysNewUser extends BaseModel {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键")
private String id;
@ApiModelProperty(value = "单位代码")
private String unitcode;
@ApiModelProperty(value = "用户姓名")
private String username;
@ApiModelProperty(value = "密码")
private String password;
@ApiModelProperty(value = "真实姓名")
private String trueName;
@ApiModelProperty(value = "是否开启")
private String openFlag;
private String defaultModel;
private String remark;
@ApiModelProperty(value = "录入人")
private String lrr;
@ApiModelProperty(value = "录入时间")
private String lrsj;
@ApiModelProperty(value = "更新人")
private String gxr;
@ApiModelProperty(value = "录入单位代码")
private String lrdwdm;
@ApiModelProperty(value = "录入单位名称")
private String lrdwmc;
@ApiModelProperty(value = "身份证")
private String identitycard;
@ApiModelProperty(value = "性别")
private String sex;
@ApiModelProperty(value = "生日")
private String birthday;
@ApiModelProperty(value = "电话")
private String telephone;
@ApiModelProperty(value = "单位名称")
private String unitname;
@ApiModelProperty(value = "删除标志")
private String scbz;
@ApiModelProperty(value = "用户IP")
private String ip;
@ApiModelProperty(value = "级别")
private String grade;
@ApiModelProperty(value = "警号")
private String policemanid;
private String defaultDesktop;
private String theme;
private String lastlogintime;
private String lastchecktime;
private String xxzyurl;
private String gzzmZhy;
private String gzzmYpy;
private String gzzmZcy;
private String gzzmPlay;
private String glybz;
private String tqyhbz;
private String jgzPhotoZm;
private String jgzPhotoFm;
private String zbzxDwdm;
private String grdf;
private List<String> userRoles;
private String userRolesStr;
//登录人员
public void setDjUser(XzxtUser user){
this.lrr=user.getRealname();
this.lrdwdm=user.getUnitcode();
this.lrdwmc=user.getUnitname();
}
// 更新人员
public void setUpUser(XzxtUser user){
this.gxr=user.getRealname();
}
}
package org.springblade.modules.system.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author jing
* @date 2021/9/15 -- 16:35
*/
@Data
@ApiModel(description = "用户信息")
public class SysNewUserInfo {
private static final long serialVersionUID = 1L;
/**
* 用户基础信息
*/
@ApiModelProperty(value = "用户")
private SysNewUser user;
/**
* 权限标识集合
*/
@ApiModelProperty(value = "权限集合")
private List<String> permissions;
/**
* 角色集合
*/
@ApiModelProperty(value = "角色集合")
private List<String> roles;
}
package org.springblade.modules.system.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author jing
* @date 2021/9/16 -- 15:12
*/
@Data
@ApiModel(value = "SysRoleMenuNew", description = "角色菜单信息")
public class SysRoleMenuNew {
//主键
@ApiModelProperty(value = "主键")
private String id;
//菜单id
@ApiModelProperty(value = "菜单id")
private String menuId;
//角色id
@ApiModelProperty(value = "角色id")
private String roleId;
}
package org.springblade.modules.system.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author jing
* @date 2021/9/16 -- 15:05
*/
@Data
@ApiModel(value = "SysRoleNew", description = "角色信息")
public class SysRoleNew {
//主键
@ApiModelProperty(value = "主键")
private String id;
//租户ID
@ApiModelProperty(value = "租户ID")
private String tenantId;
//父主键
@ApiModelProperty(value = "父主键")
private String parentId;
//角色名
@ApiModelProperty(value = "角色名")
private String roleName;
//排序
@ApiModelProperty(value = "排序")
private Double sort;
//角色别名
@ApiModelProperty(value = "角色别名")
private String roleAlias;
//是否已删除
@ApiModelProperty(value = "是否已删除")
private Double isDeleted;
@ApiModelProperty(value = "菜单权限")
private List<String> menuList;
private String menuString;
private int page;
private int limit;
private int begin;
private int end;
}
package org.springblade.modules.system.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author jing
* @date 2021/9/16 -- 10:13
*/
@Data
@ApiModel(value = "SysUserRolesNew", description = "用户角色")
public class SysUserRolesNew {
@ApiModelProperty(value = "id")
private String id;
@ApiModelProperty(value = "用户id")
private String userId;
@ApiModelProperty(value = "角色id")
private String roleId;
@ApiModelProperty(value = "录入人")
private String lrr;
@ApiModelProperty(value = "录入时间")
private String lrsj;
@ApiModelProperty(value = "更新人")
private String gxr;
@ApiModelProperty(value = "录入单位代码")
private String lrdwdm;
@ApiModelProperty(value = "录入单位名称")
private String lrdwmc;
@ApiModelProperty(value = "删除标志")
private String scbz;
@ApiModelProperty(value = "ip")
private String ip;
//登录人员
public void setDjUser(XzxtUser user){
this.lrr=user.getRealname();
this.lrdwdm=user.getUnitcode();
this.lrdwmc=user.getUnitname();
}
// 更新人员
public void setUpUser(XzxtUser user){
this.gxr=user.getRealname();
}
}
......@@ -18,10 +18,10 @@ package org.springblade.modules.system.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
......
......@@ -18,15 +18,14 @@ package org.springblade.modules.system.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.TenantEntity;
import java.util.Date;
import java.util.List;
/**
* 实体类
......
package org.springblade.modules.system.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @author jing
* @date 2021/9/27 -- 11:15
*/
@Data
@ApiModel(description = "最新用户信息")
public class UserInfoResult implements Serializable{
private static final long serialVersionUID = 1L;
/**
* 用户基础信息
*/
@ApiModelProperty(value = "用户")
private SysNewUser user;
/**
* 权限标识集合
*/
@ApiModelProperty(value = "权限集合")
private List<String> permissions;
/**
* 角色集合
*/
@ApiModelProperty(value = "角色集合")
private List<String> roles;
}
......@@ -49,4 +49,15 @@ public class XzxtUser extends BladeUser {
* 角色
*/
private List<String> roles;
public XzxtUser(){}
public XzxtUser(String unitname,String unitcode
,String identitycard,String phone,String realname){
this.unitname=unitname;
this.unitcode=unitcode;
this.identitycard=identitycard;
this.phone=phone;
this.realname=realname;
}
}
......@@ -34,19 +34,19 @@
</sql>
<select id="selectMenuPage" resultMap="menuResultMap">
select * from blade_menu where is_deleted = 0
select * from sys_menu where is_deleted = 0
</select>
<select id="tree" resultMap="treeNodeResultMap">
select id, parent_id, name as title, id as 'value', id as 'key' from blade_menu where is_deleted = 0 and category = 1
select id, parent_id, name as title, id as 'value', id as 'key' from sys_menu where is_deleted = 0 and category = 1
</select>
<select id="allMenu" resultMap="menuResultMap">
select * from blade_menu where is_deleted = 0 and category = 1
select * from sys_menu where is_deleted = 0 and category = 1
</select>
<select id="roleMenu" resultMap="menuResultMap">
select * from blade_menu where is_deleted = 0 and id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
select * from sys_menu where is_deleted = 0 and id IN ( SELECT menu_id FROM sys_role_menu WHERE role_id IN
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach> )
......@@ -56,10 +56,10 @@
SELECT
*
FROM
blade_menu
sys_menu
WHERE
is_deleted = 0 and category = 1
and id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
and id IN ( SELECT menu_id FROM sys_role_menu WHERE role_id IN
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach> )
......@@ -77,11 +77,11 @@
action,
sort
FROM
blade_menu
sys_menu
WHERE
is_deleted = 0 and id IN (
SELECT parent_id FROM blade_menu
WHERE ( category = 2 AND id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
SELECT parent_id FROM sys_menu
WHERE ( category = 2 AND id IN ( SELECT menu_id FROM sys_role_menu WHERE role_id IN
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
......@@ -100,27 +100,27 @@
action,
sort
FROM
blade_menu
sys_menu
WHERE
is_deleted = 0 and category = 2 AND id IN ( SELECT menu_id FROM blade_role_menu WHERE role_id IN
is_deleted = 0 and category = 2 AND id IN ( SELECT menu_id FROM sys_role_menu WHERE role_id IN
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>)
</select>
<select id="grantTree" resultMap="treeNodeResultMap">
select id, parent_id, name as title, id as 'value', id as 'key' from blade_menu where is_deleted = 0
select id, parent_id, name as title, id as 'value', id as 'key' from sys_menu where is_deleted = 0
</select>
<select id="grantTreeByRole" resultMap="treeNodeResultMap">
select id, parent_id, name as title, id as 'value', id as 'key' from blade_menu where is_deleted = 0
and id in ( select menu_id from blade_role_menu where role_id in
select id, parent_id, name as title, id as 'value', id as 'key' from sys_menu where is_deleted = 0
and id in ( select menu_id from sys_role_menu where role_id in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach> )
or id in (
select parent_id from blade_menu where is_deleted = 0
and id in ( select menu_id from blade_role_menu where role_id in
select parent_id from sys_menu where is_deleted = 0
and id in ( select menu_id from sys_role_menu where role_id in
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach> )
......@@ -132,9 +132,9 @@
GROUP_CONCAT(r.role_alias) as alias,
m.path
FROM
blade_role_menu rm
LEFT JOIN blade_menu m ON rm.menu_id = m.id
LEFT JOIN blade_role r ON rm.role_id = r.id
sys_role_menu rm
LEFT JOIN sys_menu m ON rm.menu_id = m.id
LEFT JOIN sys_role r ON rm.role_id = r.id
WHERE
rm.role_id IN
<foreach collection="list" index="index" item="item" open="(" separator="," close=")">
......
......@@ -42,11 +42,11 @@ public interface RoleMapper extends BaseMapper<Role> {
* 获取树形节点
*
* @param tenantId
* @param excludeRole
* @param
* @return
*/
List<RoleVO> tree(String tenantId, String excludeRole);
// List<RoleVO> tree(String tenantId, String excludeRole);
List<RoleVO> tree();
/**
* 获取角色名
*
......
......@@ -27,24 +27,24 @@
</sql>
<select id="selectRolePage" resultMap="roleResultMap">
select * from blade_role where is_deleted = 0
select * from sys_role where is_deleted = 0
</select>
<select id="tree" resultMap="treeNodeResultMap">
select id, parent_id, role_name as title, id as 'value', id as 'key' from blade_role where is_deleted = 0
<if test="param1!=null">
and tenant_id = #{param1}
</if>
<if test="param2!=null">
and role_alias &lt;&gt; #{param2}
</if>
select id, parent_id, role_name as title, id as 'value', id as 'key' from sys_role where is_deleted = 0
<!-- <if test="param1!=null">-->
<!-- and tenant_id = #{param1}-->
<!-- </if>-->
<!-- <if test="param2!=null">-->
<!-- and role_alias &lt;&gt; #{param2}-->
<!-- </if>-->
</select>
<select id="getRoleNames" resultType="java.lang.String">
SELECT
role_name
FROM
blade_role
sys_role
WHERE
id IN
<foreach collection="array" item="ids" index="index" open="(" close=")" separator=",">
......
package org.springblade.modules.system.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.springblade.modules.system.entity.SysMenuNew;
import org.springblade.modules.system.entity.SysRoleNew;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @author jing
* @date 2021/9/16 -- 15:15
*/
@Component
@Mapper
public interface SysRoleNewMapper {
String submit(SysRoleNew sysRoleNew);
// 获取角色 列表
List<SysRoleNew> getRoleNewList(SysRoleNew sysRoleNew)throws Exception;
// 获取角色 个数
int getRoleNewCount(SysRoleNew sysRoleNew)throws Exception;
// 更新角色信息
int updateRoleNew(SysRoleNew sysRoleNew)throws Exception;
//删除角色信息
void deleteRoleNew(String id)throws Exception;
// 获取角色 详情
SysRoleNew getRoleNewXq(String id)throws Exception;
// 获取角色的菜单信息
List<String> getCdByJs(String roleid) throws Exception;
// 获取菜单 列表
List<SysMenuNew> getMeanNewList(SysMenuNew sysMenuNew)throws Exception;
// 获取菜单 个数
int getMneuNewCount(SysMenuNew sysMenuNew)throws Exception;
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.modules.system.mapper.SysRoleNewMapper">
<!-- 录入角色 的数据-->
<insert id="submit" parameterType="org.springblade.modules.system.entity.SysRoleNew">
INSERT INTO sys_role (
id
,tenant_id
,parent_id
,role_name
,sort
,role_alias
,is_deleted
)
VALUES(
#{ id , jdbcType=VARCHAR }
,#{ tenantId , jdbcType=VARCHAR }
,#{ parentId , jdbcType=VARCHAR }
,#{ roleName , jdbcType=VARCHAR }
,#{ sort , jdbcType=INTEGER }
,#{ roleAlias , jdbcType=VARCHAR }
,'0'
)
</insert>
<!--角色信息-->
<select id="getRoleNewList" parameterType="org.springblade.modules.system.entity.SysRoleNew" resultType="org.springblade.modules.system.entity.SysRoleNew">
SELECT
id as id,
tenant_id as tenantId,
parent_id as parentId,
role_name as roleName,
sort as sort,
role_alias as roleAlias,
is_deleted as isDeleted
FROM sys_role
<include refid="role-where"/>
limit #{begin}, #{end}
</select>
<select id="getRoleNewCount" resultType="java.lang.Integer" parameterType="org.springblade.modules.system.entity.SysRoleNew">
SELECT count(*)
FROM sys_role
<include refid="role-where"/>
</select>
<sql id="role-where">
WHERE is_deleted = '0'
<if test="roleName != null and roleName != ''">
and role_name = #{ roleName , jdbcType=VARCHAR }
</if>
<if test="roleAlias != null and roleAlias != ''">
and role_alias = #{ roleAlias , jdbcType=VARCHAR }
</if>
</sql>
<!-- 更新角色信息 更新-->
<update id="updateRoleNew" parameterType="org.springblade.modules.system.entity.SysRoleNew">
UPDATE sys_role SET
<if test="tenantId != null and tenantId != ''"> tenant_id = #{ tenantId , jdbcType=VARCHAR }, </if>
<if test="parentId != null and parentId != ''"> parent_id = #{ parentId , jdbcType=VARCHAR }, </if>
<if test="roleName != null and roleName != ''"> role_name = #{ roleName , jdbcType=VARCHAR }, </if>
<if test="sort != null and sort != ''"> sort = #{ sort , jdbcType=INTEGER }, </if>
<if test="roleAlias != null and roleAlias != ''"> role_alias = #{ roleAlias , jdbcType=VARCHAR }, </if>
'1'='1'
where id=#{id ,jdbcType=VARCHAR }
</update>
<!-- 删除角色信息 更新-->
<update id="deleteRoleNew" parameterType="java.lang.String">
UPDATE sys_role SET
is_deleted='1'
where id=#{id ,jdbcType=VARCHAR }
</update>
<!--回显角色信息-->
<select id="getRoleNewXq" parameterType="java.lang.String" resultType="org.springblade.modules.system.entity.SysRoleNew">
SELECT
id as id,
tenant_id as tenantId,
parent_id as parentId,
role_name as roleName,
sort as sort,
role_alias as roleAlias,
is_deleted as isDeleted
FROM sys_role
where id=#{id ,jdbcType=VARCHAR }
</select>
<!--获取角色的菜单信息-->
<select id="getCdByJs" parameterType="java.lang.String" resultType="java.lang.String">
SELECT
menu.name
FROM sys_role_menu rmenu left join sys_menu menu on rmenu.menu_id=menu.id
where rmenu.role_id=#{roleid ,jdbcType=VARCHAR } and menu.is_deleted='0'
</select>
<!--菜单信息-->
<select id="getMeanNewList" parameterType="org.springblade.modules.system.entity.SysMenuNew" resultType="org.springblade.modules.system.entity.SysMenuNew">
SELECT
id as id,
parent_id as parentId,
code as code,
name as name,
alias as alias,
path as path,
source as source,
sort as sort,
category as category,
action as action,
is_open as isOpen,
remark as remark,
is_deleted as isDeleted
FROM sys_menu
<include refid="menu-where"/>
limit #{begin}, #{end}
</select>
<select id="getMneuNewCount" resultType="java.lang.Integer" parameterType="org.springblade.modules.system.entity.SysMenuNew">
SELECT count(*)
FROM sys_menu
<include refid="menu-where"/>
</select>
<sql id="menu-where">
WHERE is_deleted = '0'
<if test="code != null and code != ''">
and code = #{ code , jdbcType=VARCHAR }
</if>
<if test="name != null and name != ''">
and name = #{ name , jdbcType=VARCHAR }
</if>
<if test="alias != null and alias != ''">
and alias = #{ alias , jdbcType=VARCHAR }
</if>
</sql>
</mapper>
package org.springblade.modules.system.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.springblade.modules.system.entity.SysNewUser;
import org.springblade.modules.system.entity.SysUserRolesNew;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @author jing
* @date 2021/9/15 -- 16:42
*/
@Component
@Mapper
public interface SysUserMapper {
int submit(SysNewUser user);
// 获取用户 列表
List<SysNewUser> getUserNewList(SysNewUser sysNewUser)throws Exception;
// 获取用户 个数
int getUserNewCount(SysNewUser sysNewUser)throws Exception;
// 更新用户 信息
int updateUserNew(SysNewUser sysNewUser)throws Exception;
// 根据id查询用户 信息
SysNewUser getUserByBh(String id) throws Exception ;
//删除用户信息
void deleteUserNew(SysNewUser sysNewUser)throws Exception;
//回显/详情用户信息
SysNewUser getUserxxByxxzjbh(String id)throws Exception;
//给用户分配角色
int insertUserRoles(SysUserRolesNew sysUserRolesNew )throws Exception;
// 根据用户id查询角色名称
List<String> getUserRolesName(String id);
}
......@@ -19,6 +19,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.modules.system.entity.SysNewUser;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.excel.UserExcel;
......@@ -49,7 +50,8 @@ public interface UserMapper extends BaseMapper<User> {
* @return
*/
User getUser(String tenantId, String account, String password);
SysNewUser getUserNew(@Param("account")String account, @Param("password")String password);
SysNewUser getUserNewByID(String id);
/**
* 获取角色名
*
......
......@@ -54,6 +54,104 @@
tenant_id = #{param1} and account = #{param2} and password = #{param3} and is_deleted = 0
</select>
<select id="getUserNew" resultType="org.springblade.modules.system.entity.SysNewUser" parameterType="java.lang.String">
SELECT
id as id,
unitcode as unitcode,
username as username,
password as password,
true_name as trueName,
open_flag as openFlag,
default_model as defaultModel,
remark as remark,
lrr as lrr,
lrsj as lrsj,
gxr as gxr,
gxsj as gxsj,
lrdwdm as lrdwdm,
lrdwmc as lrdwmc,
identitycard as identitycard,
sex as sex,
birthday as birthday,
telephone as telephone,
unitname as unitname,
scbz as scbz,
ip as ip,
grade as grade,
policemanid as policemanid,
default_desktop as defaultDesktop,
theme as theme,
lastlogintime as lastlogintime,
lastchecktime as lastchecktime,
xxzyurl as xxzyurl,
gzzm_zhy as gzzmZhy,
gzzm_ypy as gzzmYpy,
gzzm_zcy as gzzmZcy,
gzzm_play as gzzmPlay,
glybz as glybz,
tqyhbz as tqyhbz,
jgz_photo_zm as jgzPhotoZm,
jgz_photo_fm as jgzPhotoFm,
zbzx_dwdm as zbzxDwdm,
grdf as grdf
FROM sys_user
where open_flag='1' and scbz='0'
and username = #{account} and password = #{password}
</select>
<select id="getUserNewByID" resultType="org.springblade.modules.system.entity.SysNewUser" parameterType="java.lang.String">
SELECT
id as id,
unitcode as unitcode,
username as username,
password as password,
true_name as trueName,
open_flag as openFlag,
default_model as defaultModel,
remark as remark,
lrr as lrr,
lrsj as lrsj,
gxr as gxr,
gxsj as gxsj,
lrdwdm as lrdwdm,
lrdwmc as lrdwmc,
identitycard as identitycard,
sex as sex,
birthday as birthday,
telephone as telephone,
unitname as unitname,
scbz as scbz,
ip as ip,
grade as grade,
policemanid as policemanid,
default_desktop as defaultDesktop,
theme as theme,
lastlogintime as lastlogintime,
lastchecktime as lastchecktime,
xxzyurl as xxzyurl,
gzzm_zhy as gzzmZhy,
gzzm_ypy as gzzmYpy,
gzzm_zcy as gzzmZcy,
gzzm_play as gzzmPlay,
glybz as glybz,
tqyhbz as tqyhbz,
jgz_photo_zm as jgzPhotoZm,
jgz_photo_fm as jgzPhotoFm,
zbzx_dwdm as zbzxDwdm,
grdf as grdf
FROM sys_user
where open_flag='1' and scbz='0'
and id = #{id}
</select>
<select id="getRoleName" resultType="java.lang.String">
SELECT
role_name
......
package org.springblade.modules.system.service;
import org.springblade.modules.system.entity.SysMenuNew;
import org.springblade.modules.system.entity.SysRoleNew;
import java.util.List;
/**
* @author jing
* @date 2021/9/16 -- 15:14
*/
public interface ISysRoleNewService {
/**
* 新增角色
* @param sysRoleNew
* @return
*/
String submit(SysRoleNew sysRoleNew);
// 获取角色 列表
List<SysRoleNew> getRoleNewList(SysRoleNew sysRoleNew)throws Exception;
// 获取角色 个数
int getRoleNewCount(SysRoleNew sysRoleNew)throws Exception;
// 更新角色 信息
void updateRoleNew(SysRoleNew sysRoleNew)throws Exception;
//删除角色 信息
void deleteRoleNew(String id)throws Exception;
//回显/详情角色信息
SysRoleNew getRoleById(String id)throws Exception;
// 获取菜单 列表
List<SysMenuNew> getMeanNewList(SysMenuNew sysMenuNew)throws Exception;
// 获取菜单 个数
int getMneuNewCount(SysMenuNew sysMenuNew)throws Exception;
}
package org.springblade.modules.system.service;
import org.springblade.modules.system.entity.SysNewUser;
import java.util.List;
/**
* @author jing
* @date 2021/9/15 -- 16:39
*/
public interface ISysUserService {
/**
* 新增或修改用户
* @param user
* @return
*/
String submit(SysNewUser user);
// 获取用户 列表
List<SysNewUser> getUserNewList(SysNewUser sysNewUser)throws Exception;
// 获取用户 个数
int getUserNewCount(SysNewUser sysNewUser)throws Exception;
// 更新用户 信息
void updateUserNew(SysNewUser sysNewUser)throws Exception;
//删除用户 信息
void deleteUserNew(String id)throws Exception;
//回显/详情用户信息
SysNewUser getUserxxByxxzjbh(String id)throws Exception;
//给用户分配角色
void insertUserRoles(String userIds,String roleIds)throws Exception;
}
......@@ -21,6 +21,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.UserInfoResult;
import org.springblade.modules.system.excel.UserExcel;
import java.util.List;
......@@ -39,6 +40,8 @@ public interface IUserService extends BaseService<User> {
*/
boolean submit(User user);
/**
* 自定义分页
*
......@@ -55,7 +58,7 @@ public interface IUserService extends BaseService<User> {
* @return
*/
UserInfo userInfo(Long userId);
UserInfoResult userInfoR(Long userId);
/**
* 用户信息
*
......@@ -65,7 +68,7 @@ public interface IUserService extends BaseService<User> {
* @return
*/
UserInfo userInfo(String tenantId, String account, String password);
UserInfoResult userInfoR(String tenantId, String account, String password);
/**
* 给用户设置角色
*
......
package org.springblade.modules.system.service.impl;
import org.apache.commons.lang.StringUtils;
import org.springblade.core.secure.utils.SecureUtil;
import org.springblade.core.tool.utils.DigestUtil;
import org.springblade.founder.utils.SysXxzjbhService;
import org.springblade.modules.system.entity.SysNewUser;
import org.springblade.modules.system.entity.SysUserRolesNew;
import org.springblade.modules.system.entity.XzxtUser;
import org.springblade.modules.system.mapper.SysUserMapper;
import org.springblade.modules.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
/**
* @author jing
* @date 2021/9/15 -- 16:41
*/
@Service
public class ISysUserServiceImpl implements ISysUserService {
@Autowired
private SysUserMapper sysUserMapper;
@Autowired
private SysXxzjbhService xxzjbhService;
@Override
public String submit(SysNewUser user) {
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
String jyxxzjbh = xxzjbhService.getXxzjbh(xzxtUser.getUnitcode(),null);//xxzjbh
user.setId(jyxxzjbh);
user.setPassword(DigestUtil.encrypt(user.getPassword()));
// String xxzjbh = xxzjbhService.getXxzjbh(xzxtUser.getUnitcode(),null);//xxzjbh
// user.setId(xxzjbh);
user.setDjUser(xzxtUser);
sysUserMapper.submit(user);
return jyxxzjbh;
}
// 用户的列表展示
@Override
public List<SysNewUser> getUserNewList(SysNewUser sysNewUser) throws Exception {
List<SysNewUser> userNewList = sysUserMapper.getUserNewList(sysNewUser);
if(userNewList!=null && userNewList.size()>0){
for(SysNewUser userxx: userNewList){
String id = userxx.getId();
// 根据用户查询角色名称
List<String> userRolesName = sysUserMapper.getUserRolesName(id);
if(userRolesName!=null && userRolesName.size()>0){
String str = StringUtils.join(userRolesName.toArray(), ",");
userxx.setUserRoles(userRolesName);
userxx.setUserRolesStr(str);
}
}
}
return userNewList;
}
// 用户的个数
@Override
public int getUserNewCount(SysNewUser sysNewUser) throws Exception {
return sysUserMapper.getUserNewCount(sysNewUser);
}
// 更新用户信息
@Override
public void updateUserNew(SysNewUser sysNewUser) throws Exception {
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
sysNewUser.setUpUser(xzxtUser);
sysUserMapper.updateUserNew(sysNewUser);
}
// 删除用户信息
@Override
public void deleteUserNew(String id) throws Exception {
SysNewUser userByBh = sysUserMapper.getUserByBh(id);
if(userByBh != null){
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
userByBh.setUpUser(xzxtUser);
sysUserMapper.deleteUserNew(userByBh);
}
}
// 回显用户信息
@Override
public SysNewUser getUserxxByxxzjbh(String id) throws Exception {
SysNewUser userxxByxxzjbh = sysUserMapper.getUserxxByxxzjbh(id);
// userxxByxxzjbh.setPassword(userxxByxxzjbh.getPassword());
return sysUserMapper.getUserxxByxxzjbh(id);
}
//逗号分隔的字符串转list
public static List<String> getListStr(String str) {
String[] strs = str.split(",");
return Arrays.asList(strs);
}
//给用户分配角色
@Override
public void insertUserRoles(String userIds, String roleIds) throws Exception {
List<String> listStr = getListStr(userIds);
List<String> listStr1 = getListStr(roleIds);
SysUserRolesNew sysUserRolesNew = new SysUserRolesNew();
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
sysUserRolesNew.setDjUser(xzxtUser);
if(listStr!=null && listStr.size()>0){
if(listStr1!=null && listStr1.size()>0){
for(String userlist:listStr){
for(String rolelist: listStr1){
String jyxxzjbh = xxzjbhService.getXxzjbh(xzxtUser.getUnitcode(),null);//xxzjbh
sysUserRolesNew.setId(jyxxzjbh);
sysUserRolesNew.setUserId(userlist);
sysUserRolesNew.setRoleId(rolelist);
sysUserMapper.insertUserRoles(sysUserRolesNew);
}
}
}
}
}
}
......@@ -19,10 +19,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor;
import org.springblade.core.secure.utils.SecureUtil;
import org.springblade.core.tool.constant.RoleConstant;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.utils.CollectionUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.system.entity.Role;
import org.springblade.modules.system.entity.RoleMenu;
......@@ -57,12 +54,13 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements IR
@Override
public List<RoleVO> tree(String tenantId) {
String userRole = SecureUtil.getUserRole();
String excludeRole = null;
if (!CollectionUtil.contains(Func.toStrArray(userRole), RoleConstant.ADMIN)) {
excludeRole = RoleConstant.ADMIN;
}
return ForestNodeMerger.merge(baseMapper.tree(tenantId, excludeRole));
// String userRole = SecureUtil.getUserRole();
// String excludeRole = null;
// if (!CollectionUtil.contains(Func.toStrArray(userRole), RoleConstant.ADMIN)) {
// excludeRole = RoleConstant.ADMIN;
// }
// return ForestNodeMerger.merge(baseMapper.tree(tenantId, excludeRole));
return ForestNodeMerger.merge(baseMapper.tree());
}
@Override
......
package org.springblade.modules.system.service.impl;
import org.apache.commons.lang.StringUtils;
import org.springblade.modules.system.entity.SysMenuNew;
import org.springblade.modules.system.entity.SysRoleNew;
import org.springblade.modules.system.mapper.SysRoleNewMapper;
import org.springblade.modules.system.service.ISysRoleNewService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author jing
* @date 2021/9/16 -- 15:14
*/
@Service
public class SysRoleNewServiceImpl implements ISysRoleNewService {
@Autowired
private SysRoleNewMapper sysRoleNewMapper;
@Override
public String submit(SysRoleNew sysRoleNew) {
sysRoleNew.setTenantId("000000");
return sysRoleNewMapper.submit(sysRoleNew);
}
@Override
public List<SysRoleNew> getRoleNewList(SysRoleNew sysRoleNew) throws Exception {
List<SysRoleNew> roleNewList = sysRoleNewMapper.getRoleNewList(sysRoleNew);
if(roleNewList!=null && roleNewList.size()>0){
for(SysRoleNew rolenew: roleNewList){
// 根据角色id查询 菜单名称
List<String> cdByJs = sysRoleNewMapper.getCdByJs(rolenew.getId());
if(cdByJs!=null && cdByJs.size()>0){
rolenew.setMenuList(cdByJs);
String str = StringUtils.join(cdByJs.toArray(), ",");
rolenew.setMenuString(str);
}
}
}
return roleNewList;
}
@Override
public int getRoleNewCount(SysRoleNew sysRoleNew) throws Exception {
return sysRoleNewMapper.getRoleNewCount(sysRoleNew);
}
@Override
public void updateRoleNew(SysRoleNew sysRoleNew) throws Exception {
sysRoleNewMapper.updateRoleNew(sysRoleNew);
}
@Override
public void deleteRoleNew(String id) throws Exception {
sysRoleNewMapper.deleteRoleNew(id);
}
@Override
public SysRoleNew getRoleById(String id) throws Exception {
return sysRoleNewMapper.getRoleNewXq(id);
}
// 获取菜单 列表
@Override
public List<SysMenuNew> getMeanNewList(SysMenuNew sysMenuNew) throws Exception {
return sysRoleNewMapper.getMeanNewList(sysMenuNew);
}
// 获取菜单 个数
@Override
public int getMneuNewCount(SysMenuNew sysMenuNew) throws Exception {
return sysRoleNewMapper.getMneuNewCount(sysMenuNew);
}
}
......@@ -21,18 +21,23 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.exceptions.ApiException;
import lombok.AllArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springblade.common.constant.CommonConstant;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.tool.utils.*;
import org.springblade.modules.system.entity.SysNewUser;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.entity.UserInfo;
import org.springblade.modules.system.entity.UserInfoResult;
import org.springblade.modules.system.excel.UserExcel;
import org.springblade.modules.system.mapper.SysUserMapper;
import org.springblade.modules.system.mapper.UserMapper;
import org.springblade.modules.system.service.IDeptService;
import org.springblade.modules.system.service.IPostService;
import org.springblade.modules.system.service.IRoleService;
import org.springblade.modules.system.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
......@@ -50,7 +55,8 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
private IDeptService deptService;
private IPostService postService;
private IRoleService roleService;
@Autowired
private SysUserMapper sysUserMapper;
@Override
public boolean submit(User user) {
if (Func.isNotEmpty(user.getPassword())) {
......@@ -81,6 +87,30 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
}
@Override
public UserInfoResult userInfoR(Long userId) {
UserInfoResult userInfo = new UserInfoResult();
// 根据id 查询用户信息
SysNewUser user = baseMapper.getUserNewByID(String.valueOf(userId));
// SysNewUser user = baseMapper.selectById(userId);
if (Func.isNotEmpty(user)) {
// 根据用户查询角色名称
List<String> userRolesName = sysUserMapper.getUserRolesName(user.getId());
if(userRolesName!=null && userRolesName.size()>0){
String str = StringUtils.join(userRolesName.toArray(), ",");
user.setUserRoles(userRolesName);
user.setUserRolesStr(str);
}
// List<String> roleAlias = baseMapper.getRoleAlias(Func.toStrArray(user.getRoleId()));
// userInfo.setRoles(roleAlias);
}
userInfo.setUser(user);
return userInfo;
}
@Override
public UserInfo userInfo(String tenantId, String account, String password) {
UserInfo userInfo = new UserInfo();
User user = baseMapper.getUser(tenantId, account, password);
......@@ -93,6 +123,32 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
}
@Override
public UserInfoResult userInfoR(String tenantId, String account, String password) {
UserInfoResult userInfo = new UserInfoResult();
SysNewUser userNew = baseMapper.getUserNew(account, password);
// 查询对应的角色
if (Func.isNotEmpty(userNew)) {
// 根据用户查询角色名称
List<String> userRolesName = sysUserMapper.getUserRolesName(userNew.getId());
if(userRolesName!=null && userRolesName.size()>0){
String str = StringUtils.join(userRolesName.toArray(), ",");
userNew.setUserRoles(userRolesName);
userNew.setUserRolesStr(str);
}
}
userInfo.setUser(userNew);
// if (Func.isNotEmpty(userNew)) {
// List<String> roleAlias = baseMapper.getRoleAlias(Func.toStrArray(user.getRoleId()));
// userInfo.setRoles(roleAlias);
// }
return userInfo;
}
@Override
public boolean grant(String userIds, String roleIds) {
User user = new User();
user.setRoleId(roleIds);
......
......@@ -37,12 +37,17 @@ import java.util.List;
@ApiModel(value = "RoleVO对象", description = "RoleVO对象")
public class RoleVO extends Role implements INode {
private static final long serialVersionUID = 1L;
// private Boolean sfhasChildren ;
/**
* 主键ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* 是否有子孙节点
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private Boolean hasChildren;
/**
* 父节点ID
......
......@@ -51,16 +51,20 @@ public class RoleWrapper extends BaseEntityWrapper<Role, RoleVO> {
RoleVO roleVO = BeanUtil.copy(role, RoleVO.class);
if (Func.equals(role.getParentId(), CommonConstant.TOP_PARENT_ID)) {
roleVO.setParentName(CommonConstant.TOP_PARENT_NAME);
// roleVO.setSfhasChildren(false);
} else {
Role parent = roleService.getById(role.getParentId());
roleVO.setParentName(parent.getRoleName());
// roleVO.setSfhasChildren(true);
}
return roleVO;
}
public List<INode> listNodeVO(List<Role> list) {
List<INode> collect = list.stream().map(this::entityVO).collect(Collectors.toList());
return ForestNodeMerger.merge(collect);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment