From 28b17c83a6004893d960ff3c78306fc655a1ce5a Mon Sep 17 00:00:00 2001 From: "wei.peng" Date: Fri, 30 Nov 2018 00:01:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BB=A3=E7=A0=81=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/iservice/base/ISystemLoginService.java | 3 + .../apiservice/controller/DemoCloudController.java | 254 ++++++++++----------- .../apiservice/controller/base/AuthController.java | 11 +- .../controller/busi/SysUserController.java | 5 +- .../controller/busi/SysUserInfoController.java | 2 +- .../serviceimpl/base/SystemLoginService.java | 50 +++- .../serviceimpl/busi/SysDepartmentService.java | 5 +- .../serviceimpl/busi/SysRoleService.java | 2 +- .../serviceimpl/busi/SysUserService.java | 7 +- 9 files changed, 198 insertions(+), 141 deletions(-) diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISystemLoginService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISystemLoginService.java index f79a54c..68bc0ca 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISystemLoginService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/base/ISystemLoginService.java @@ -4,6 +4,7 @@ import cn.estsh.i3plus.pojo.base.shirotoken.AdminToken; import cn.estsh.i3plus.pojo.base.shirotoken.SaAdminToken; import cn.estsh.i3plus.pojo.base.shirotoken.UserToken; import cn.estsh.i3plus.pojo.platform.bean.SessionUser; +import cn.estsh.i3plus.pojo.platform.bean.SysUser; import java.util.List; @@ -25,4 +26,6 @@ public interface ISystemLoginService { SessionUser queryCheckAdminLogin(AdminToken authenticationToken); SessionUser queryCheckSaAdminLogin(SaAdminToken authenticationToken); + + Integer doLoginPasswordError(SysUser user); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java index fee0cc9..f1909a8 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoCloudController.java @@ -1,127 +1,127 @@ -package cn.estsh.i3plus.core.apiservice.controller; - -import cn.estsh.i3plus.icloud.core.sdk.ICoreDemoCloud; -import cn.estsh.i3plus.icloud.wms.sdk.IWmsDemoCloud; -import cn.estsh.i3plus.pojo.base.bean.BaseBean; -import cn.estsh.i3plus.pojo.base.bean.BaseModelBean; -import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; -import cn.estsh.i3plus.pojo.base.common.Pager; -import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; -import cn.estsh.i3plus.pojo.platform.bean.SysRole; -import cn.estsh.i3plus.pojo.platform.bean.SysUser; -import cn.estsh.impp.framework.boot.util.ResultBean; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.web.bind.annotation.*; - -import java.util.Map; - -@RestController -@RequestMapping("/impp/cloud") -@Api(description="分布式服务测试") -public class DemoCloudController { - - private static final Logger LOGGER = LoggerFactory.getLogger(DemoCloudController.class); - - @Value("${server.port}") - private String serverPort; - - @Value("${eureka.instance.ip-address}") - private String ipAddress; - - @Autowired - ICoreDemoCloud iCoreDemoCloud; - - @Autowired - IWmsDemoCloud iWmsDemoCloud; - - @GetMapping(value="/test") - @ApiOperation(value="core测试",notes = "core测试") - public ResultBean testCore(String test) { - LOGGER.info("{}:{},【impp-core接受数据】{}",ipAddress,serverPort,test); - return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @GetMapping(value="/test-wms") - @ApiOperation(value="wms测试",notes = "wms测试") - public ResultBean testWms(String test) { - LOGGER.info("【{}:{},impp-core接受数据 -> wms】{}",ipAddress,serverPort,test); - - BaseResultBean result = iWmsDemoCloud.testWms(test); - if(result.isSuccess()){ - return ResultBean.success("wms返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - }else{ - LOGGER.error("无法调用wms服务:{}",result.getErrorMsg()); - return ResultBean.fail("调用wms服务出错:" + result.getErrorMsg()); - } - } - - @GetMapping(value="/test-get") - @ApiOperation(value="测试get",notes = "测试get") - public ResultBean testFeignGet(String test) { - LOGGER.info("【impp-core-get接受数据】{}" ,test); - return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @PostMapping(value="/test-post") - @ApiOperation(value="测试post",notes = "测试post") - public ResultBean testFeignPost(String test) { - LOGGER.info("【impp-core-post接受数据】{}" ,test); - return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @PutMapping(value="/test-put") - @ApiOperation(value="put接受数据",notes = "put接受数据") - public ResultBean testPut(String test,String name) { - LOGGER.info("【impp-core-put接受数据】param1:{},param2:{}", test,name); - return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @DeleteMapping(value="/test-delete") - @ApiOperation(value="delete接受数据",notes = "delete接受数据") - public ResultBean testDelete( - @RequestBody Pager pager, - @RequestParam("test") String test) { - LOGGER.info("【impp-core-delete接受数据】pager:{},test:{}",pager,test); - return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @PutMapping(value="/test-cloud-put") - @ApiOperation(value="测试cloudput",notes = "测试cloudput") - public ResultBean putTestCloud(String test,String name) { - LOGGER.info("【impp-core-put接受数据】test:{},name:{}",test,name); - return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @PostMapping(value="/test-object") - @ApiOperation(value="测试单对象") - public ResultBean testObject(@RequestBody Pager pager) { - LOGGER.info("【impp-core-object接受数据】{}" ,pager); - return ResultBean.success("返回:" + pager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @PostMapping(value="/test-map") - @ApiOperation(value="测试get",notes = "测试get") - public ResultBean testFeignMap(@RequestBody Map map) { - LOGGER.info("【impp-core-map接受数据】{}" ,map); - return ResultBean.success("返回:" + map).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @PostMapping(value="/test-arr") - @ApiOperation(value="测试arr",notes = "测试arr") - public ResultBean testFeignArr(@RequestBody String[] arr) { - LOGGER.info("【impp-core-arr接受数据】{}" ,arr); - return ResultBean.success("返回:" + arr).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } - - @PostMapping(value="/test-more-object") - @ApiOperation(value="测试多对象模型",notes = "测试多对象模型") - public ResultBean testFeignMoreObj(@RequestBody BaseModelBean roleBean) { - LOGGER.info("【impp-core-more-obj接受多对象模型】objBean:{},pager:{}" ,roleBean.getObj(),roleBean.getPager()); - return ResultBean.success("返回:" + roleBean).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); - } -} +//package cn.estsh.i3plus.core.apiservice.controller; +// +//import cn.estsh.i3plus.icloud.core.sdk.ICoreDemoCloud; +//import cn.estsh.i3plus.icloud.wms.sdk.IWmsDemoCloud; +//import cn.estsh.i3plus.pojo.base.bean.BaseBean; +//import cn.estsh.i3plus.pojo.base.bean.BaseModelBean; +//import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; +//import cn.estsh.i3plus.pojo.base.common.Pager; +//import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; +//import cn.estsh.i3plus.pojo.platform.bean.SysRole; +//import cn.estsh.i3plus.pojo.platform.bean.SysUser; +//import cn.estsh.impp.framework.boot.util.ResultBean; +//import io.swagger.annotations.Api; +//import io.swagger.annotations.ApiOperation; +//import org.slf4j.Logger; +//import org.slf4j.LoggerFactory; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.beans.factory.annotation.Value; +//import org.springframework.web.bind.annotation.*; +// +//import java.util.Map; +// +//@RestController +//@RequestMapping("/impp/cloud") +//@Api(description="分布式服务测试") +//public class DemoCloudController { +// +// private static final Logger LOGGER = LoggerFactory.getLogger(DemoCloudController.class); +// +// @Value("${server.port}") +// private String serverPort; +// +// @Value("${eureka.instance.ip-address}") +// private String ipAddress; +// +// @Autowired +// ICoreDemoCloud iCoreDemoCloud; +// +// @Autowired +// IWmsDemoCloud iWmsDemoCloud; +// +// @GetMapping(value="/test") +// @ApiOperation(value="core测试",notes = "core测试") +// public ResultBean testCore(String test) { +// LOGGER.info("{}:{},【impp-core接受数据】{}",ipAddress,serverPort,test); +// return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @GetMapping(value="/test-wms") +// @ApiOperation(value="wms测试",notes = "wms测试") +// public ResultBean testWms(String test) { +// LOGGER.info("【{}:{},impp-core接受数据 -> wms】{}",ipAddress,serverPort,test); +// +// BaseResultBean result = iWmsDemoCloud.testWms(test); +// if(result.isSuccess()){ +// return ResultBean.success("wms返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// }else{ +// LOGGER.error("无法调用wms服务:{}",result.getErrorMsg()); +// return ResultBean.fail("调用wms服务出错:" + result.getErrorMsg()); +// } +// } +// +// @GetMapping(value="/test-get") +// @ApiOperation(value="测试get",notes = "测试get") +// public ResultBean testFeignGet(String test) { +// LOGGER.info("【impp-core-get接受数据】{}" ,test); +// return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @PostMapping(value="/test-post") +// @ApiOperation(value="测试post",notes = "测试post") +// public ResultBean testFeignPost(String test) { +// LOGGER.info("【impp-core-post接受数据】{}" ,test); +// return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @PutMapping(value="/test-put") +// @ApiOperation(value="put接受数据",notes = "put接受数据") +// public ResultBean testPut(String test,String name) { +// LOGGER.info("【impp-core-put接受数据】param1:{},param2:{}", test,name); +// return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @DeleteMapping(value="/test-delete") +// @ApiOperation(value="delete接受数据",notes = "delete接受数据") +// public ResultBean testDelete( +// @RequestBody Pager pager, +// @RequestParam("test") String test) { +// LOGGER.info("【impp-core-delete接受数据】pager:{},test:{}",pager,test); +// return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @PutMapping(value="/test-cloud-put") +// @ApiOperation(value="测试cloudput",notes = "测试cloudput") +// public ResultBean putTestCloud(String test,String name) { +// LOGGER.info("【impp-core-put接受数据】test:{},name:{}",test,name); +// return ResultBean.success("返回:" + test).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @PostMapping(value="/test-object") +// @ApiOperation(value="测试单对象") +// public ResultBean testObject(@RequestBody Pager pager) { +// LOGGER.info("【impp-core-object接受数据】{}" ,pager); +// return ResultBean.success("返回:" + pager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @PostMapping(value="/test-map") +// @ApiOperation(value="测试get",notes = "测试get") +// public ResultBean testFeignMap(@RequestBody Map map) { +// LOGGER.info("【impp-core-map接受数据】{}" ,map); +// return ResultBean.success("返回:" + map).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @PostMapping(value="/test-arr") +// @ApiOperation(value="测试arr",notes = "测试arr") +// public ResultBean testFeignArr(@RequestBody String[] arr) { +// LOGGER.info("【impp-core-arr接受数据】{}" ,arr); +// return ResultBean.success("返回:" + arr).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +// +// @PostMapping(value="/test-more-object") +// @ApiOperation(value="测试多对象模型",notes = "测试多对象模型") +// public ResultBean testFeignMoreObj(@RequestBody BaseModelBean roleBean) { +// LOGGER.info("【impp-core-more-obj接受多对象模型】objBean:{},pager:{}" ,roleBean.getObj(),roleBean.getPager()); +// return ResultBean.success("返回:" + roleBean).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); +// } +//} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/AuthController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/AuthController.java index 311f2c4..6e37732 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/AuthController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/base/AuthController.java @@ -71,8 +71,15 @@ public class AuthController extends CoreBaseController { result.setUrl("/"); return result; }catch (AuthenticationException e) { - ResultBean result = ResultBean.fail(e.getMessage()).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode()); - result.setErrorMsg(e.getMessage()); + ResultBean result = ResultBean.fail(); + Throwable cause = e.getCause(); + if(cause instanceof ImppBusiException ){ + ImppBusiException exception = (ImppBusiException) cause; + result.setErrorMsg(exception.getMessage() + exception.getErrorSolution()); + }else { + result = ResultBean.fail(e.getMessage()).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode()); + result.setErrorMsg(e.getMessage()); + } return result; }catch (ImppBusiException e) { return ResultBean.fail(e); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java index d5f2815..90e6358 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserController.java @@ -47,9 +47,6 @@ public class SysUserController extends CoreBaseController{ public static final Logger LOGGER = LoggerFactory.getLogger(SysUserController.class); - @Resource(name="redisCore") - private ImppRedis redisCore; - @Autowired private ISysUserService sysUserService; @@ -93,7 +90,7 @@ public class SysUserController extends CoreBaseController{ //新增初始化 sysUser.setUserName(userInfo.getName()); - sysUser.setUserStatus(CommonEnumUtil.USER_STATUS.NORMAL.getValue()); + sysUser.setUserStatus(CommonEnumUtil.USER_STATUS.ENABLE.getValue()); sysUser.setDepartmentId(userInfo.getDepartmentId()); sysUser.setDepartmentNameRdd(userInfo.getDepartmentNameRdd()); sysUser.setIsValid(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java index c886886..23895c4 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysUserInfoController.java @@ -72,7 +72,7 @@ public class SysUserInfoController extends CoreBaseController{ .checkNotZero("positionId",userInfo.getPositionId()); ConvertBean.modelInitialize(userInfo,user); - userInfo.setUserInfoStatus(CommonEnumUtil.USER_STATUS.NORMAL.getValue()); + userInfo.setUserInfoStatus(CommonEnumUtil.USER_STATUS.ENABLE.getValue()); SysUserInfo pos = sysUserInfoService.insertSysUserInfo(userInfo); sysUserInfoService.refreshRefUserDepartment(pos.getId(), diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemLoginService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemLoginService.java index bd6f2d0..c7d3736 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemLoginService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/base/SystemLoginService.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.base; import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginService; import cn.estsh.i3plus.platform.common.tool.EncryptTool; +import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.shirotoken.AdminToken; import cn.estsh.i3plus.pojo.base.shirotoken.SaAdminToken; @@ -12,12 +13,17 @@ import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; +import cn.estsh.impp.framework.boot.util.ImppRedis; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.authc.AuthenticationException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; /** * @Description : 用户登陆方法 @@ -33,6 +39,12 @@ public class SystemLoginService implements ISystemLoginService { @Autowired private SysUserRepository sysUserRDao; + /** + * 核心的缓存 + */ + @Resource(name="redisCore") + protected ImppRedis redisCore; + @Override public SessionUser queryUserLogin(String loginName, String loginPwd, String languageCode) { //生成令牌 @@ -79,6 +91,26 @@ public class SystemLoginService implements ISystemLoginService { return packSessionUser(user,CommonEnumUtil.USER_TYPE.SA.getCode(),saAdminToken.getLanguageCode()); } + @Override +// @Transactional(propagation = Propagation.NOT_SUPPORTED) + public Integer doLoginPasswordError(SysUser user) { + String redisKey = CommonConstWords.USER_LOGIN_ERROR + "_" + user.getId(); +// Object redisValue = redisCore.getObject(redisKey); + Object redisValue = AuthUtil.getSessionAttribute(redisKey); + Integer num = redisValue == null ? 1 : Integer.parseInt(redisValue.toString()) + 1; + + + if(num >= CommonConstWords.USER_LOGIN_ERROR_MAX_NUM){ + user.setUserStatus(CommonEnumUtil.USER_STATUS.LOCKING.getValue()); + redisCore.putObject(redisKey,num,0); // 账号锁定后移除锁 + sysUserRDao.update(user); + } + + redisCore.putObject(redisKey,num,24 * 60 * 60); + AuthUtil.setSessionObject(redisKey,num); + return num; + } + /** * 根据用户名密码查询用户 * @param loginName @@ -90,15 +122,29 @@ public class SystemLoginService implements ISystemLoginService { if(user == null){ //用户不存在 throw new AuthenticationException("用户不存在"); }else { - try { // 密码加密 + if(user.getUserStatus() != CommonEnumUtil.USER_STATUS.ENABLE.getValue()){ + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.LOGIN_USER_NAME_EXCEPTION.getCode()) + .setErrorDetail("账号状态:"+CommonEnumUtil.USER_STATUS.valueOf(user.getUserStatus())) + .setErrorSolution("请联系管理员") + .build(); + } + try { + // 密码加密 pwd = EncryptTool.hexMD5(pwd); } catch (Exception e) { LOGGER.error("登录密码加密出错。"); throw new AuthenticationException("登陆密码错误"); +// doLoginPasswordError( user); +// throw new AuthenticationException("密码输入错误。如果输错次数超过"+CommonConstWords.USER_LOGIN_ERROR_MAX_NUM+"次,用户将被锁定。"); } if (!StringUtils.equals(user.getUserLoginPassword(), pwd)) { //密码不符 throw new AuthenticationException("登陆密码错误"); +// doLoginPasswordError( user); +// throw new AuthenticationException("密码输入错误。如果输错次数超过"+CommonConstWords.USER_LOGIN_ERROR_MAX_NUM+"次,用户将被锁定。"); } + return user; } } @@ -120,4 +166,6 @@ public class SystemLoginService implements ISystemLoginService { return sessionUser; } + + } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java index d9757fe..c925343 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java @@ -151,9 +151,10 @@ public class SysDepartmentService implements ISysDepartmentService { LOGGER.info("部门信息 DEPARTMENT department:{}",department); departmentRDao.update(department); // 修改冗余信息 - // 修改冗余信息 departmentRDao.updateByProperties("parentId",department.getId(), - "parentNameRdd",department.getName()); + new String[]{"parentNameRdd", "organizeId", "organizeNameRdd"}, + new Object[]{department.getName(), department.getOrganizeId(), department.getOrganizeNameRdd()}); + } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java index 1db47e2..be17ad7 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java @@ -68,7 +68,7 @@ public class SysRoleService implements ISysRoleService { StringBuffer where = new StringBuffer(); HqlPack.getInPack(StringUtils.join( ids,","), "id", where); - sysRoleRDao.updateByHqlWhere(where.toString(), "roleStatusId", status); + sysRoleRDao.updateByHqlWhere(where.toString(), "roleStatus", status); } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java index 7fb2785..aa58aed 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserService.java @@ -90,6 +90,7 @@ public class SysUserService implements ISysUserService { .build(); } + packSessionUser(sessionUser, user, user.getUserType(), languageCode); AuthUtil.setSessionUser(sessionUser); refreshUserLoginInformation(user.getId()); @@ -379,7 +380,7 @@ public class SysUserService implements ISysUserService { public void checkSysUserOnly(SysUser user) { if(user != null){ // 登录名唯一教研 - if(checkSysUserLoginName(user.getUserLoginName(),user.getId())){ + if(!checkSysUserLoginName(user.getUserLoginName(), user.getId() == null ? 0 : user.getId())){ throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode()) @@ -389,7 +390,7 @@ public class SysUserService implements ISysUserService { } // 登录名唯一教研 - if(checkSysUserEmail(user.getUserEmail(),user.getId())){ + if(!checkSysUserEmail(user.getUserEmail(),user.getId() == null ? 0 : user.getId())){ throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode()) @@ -399,7 +400,7 @@ public class SysUserService implements ISysUserService { } // 登录名唯一教研 - if(checkSysUserPhone(user.getUserPhone(),user.getId())){ + if(!checkSysUserPhone(user.getUserPhone(),user.getId() == null ? 0 : user.getId())){ throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())