Merge remote-tracking branch 'upstream/test' into test

yun-zuoyi
castle.zang 3 years ago
commit 2624ca1974

@ -5,7 +5,7 @@
<parent>
<artifactId>i3plus-core</artifactId>
<groupId>i3plus.core</groupId>
<version>1.0-TEST-SNAPSHOT</version>
<version>1.0.0.2</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

@ -19,6 +19,7 @@ public interface IPersonnelService {
/**
*
*
* @param user
* @return
*/
@ -27,6 +28,7 @@ public interface IPersonnelService {
/**
*
*
* @param info
* @return
*/
@ -117,6 +119,12 @@ public interface IPersonnelService {
@ApiOperation(value = "角色权限关系", notes = "根据角色ID 查询权限")
List<SysRefRoleMenu> findSysRefRoleMenuByUserId(Long userId);
@ApiOperation(value = "查询角色账号关系", notes = "查询角色账号关系")
ListPager<SysRefUserRole> findSysRefUserRoleByRoleIds(List<Long> roleIdList, Pager pager);
@ApiOperation(value = "查询人员拥有的角色信息", notes = "查询人员是否拥有对应角色")
List<SysRefUserRole> findSysRefUserRoleByRoleNameAndUserID(String roleName, Long userId);
@ApiOperation(value = "角色权限关系", notes = "根据角色ID 查询权限")
List<SysRefRoleMenu> findSysRefRoleMenuByRoleIds(List<Long> roleIdList);

@ -64,4 +64,13 @@ public interface ISysRoleService extends ICrudService<SysRole> {
*/
@ApiOperation(value = "查询符合条件的角色")
List<SysRole> findAllByBaseBean(SysRole sysRole);
/**
* sysRole
*
* @param sysRole
* @return
*/
@ApiOperation(value = "查询符合条件的角色")
List<SysRole> findAllByRoleProperty(SysRole sysRole);
}

@ -57,6 +57,15 @@ public interface ISysUserService {
void updateBatchSysUserStatus(Long[] ids, int status, SessionUser user);
/**
*
*
* @param userLoginNameList
* @param status
*/
@ApiOperation(value = "根据用户名批量修改账号状态", notes = "根据用户名批量修改账号状态")
void updateBatchSysUserStatusByUserLoginNames(List<String> userLoginNameList, int status);
/**
*
*
* @param sysUser

@ -5,7 +5,7 @@
<parent>
<artifactId>i3plus-core</artifactId>
<groupId>i3plus.core</groupId>
<version>1.0-TEST-SNAPSHOT</version>
<version>1.0.0.2</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>

@ -155,15 +155,18 @@ public class AuthController extends CoreBaseController {
*/
@GetMapping(value = "/menu/find-module-list/{parentId}")
@ApiOperation(value = "获取登录用户功能权限信息", notes = "获取首页权限信息")
public ResultBean findMenuModuleList(@PathVariable("parentId") String parentId) {
public ResultBean findMenuModuleList(@PathVariable("parentId") String parentId, Integer menuSort) {
try {
ValidatorBean.checkIsNumber(parentId, "父节点不能为空");
List<SysMenu> result = memTreeService.packTreeSysMenuByUserIdAndParentId(getSessionUser().getUser().getId(), Long.parseLong(parentId));
//如果menuSort为0,则不用通过menuSort字段进行排序
if (menuSort == null || menuSort != 0) {
for (SysMenu sysMenu : result) {
sysMenu.setChildList(sysMenu.getChildList().stream().sorted(Comparator.comparing(SysMenu::getMenuSort)).collect(Collectors.toList()));
}
result = result.stream().sorted(Comparator.comparing(SysMenu::getMenuSort)).collect(Collectors.toList());
}
result = sysMenuService.setLanguageSysMenuName(AuthUtil.getSessionUser().getLanguageCode(), result);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(result);
} catch (ImppBusiException busExcep) {

@ -158,6 +158,24 @@ public class BackstageController extends CoreBaseController {
}
}
@GetMapping(value = "/license")
@ApiOperation(value = "获取授权信息", notes = "获取授权信息")
public ResultBean getLicense(){
try {
ImppLicense license = ImppLicenseTool.getLicense();
//icense.getMaturityDateTime() 可能从lockEndTime和licenseEndDateTime字段获取值
license.setMaturityDateTime(license.getMaturityDateTime());
ResultBean result = ResultBean.success("查询成功").setResultObject(license);
return result;
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ResultBean.fail(e).setCode(ImppExceptionEnum.SYSTEM_EXCEPTION.getCode());
}
}
@GetMapping(value = "/update-clean-menu-soft-type")
@ApiOperation(value = "更新并清理功能软件模块数据", notes = "更新并清理功能软件模块数据")
public ResultBean updateCleanMenuSoftType(){

@ -4,8 +4,7 @@ import cn.estsh.i3plus.core.api.iservice.base.ISynchronizedService;
import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService;
import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginStrategyService;
import cn.estsh.i3plus.core.api.iservice.busi.*;
import cn.estsh.i3plus.core.apiservice.controller.busi.PersonnelController;
import cn.estsh.i3plus.core.apiservice.controller.busi.SysUserInfoController;
import cn.estsh.i3plus.core.apiservice.controller.busi.*;
import cn.estsh.i3plus.core.apiservice.util.SysUserPasswordUtil;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
@ -16,15 +15,16 @@ import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.annotation.AnnoIgnoreLog;
import cn.estsh.i3plus.pojo.base.bean.BaseConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseThreadLocal;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.bean.*;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.model.common.CloudPagerModel;
import cn.estsh.i3plus.pojo.model.common.ImppSmsContent;
import cn.estsh.i3plus.pojo.model.license.ImppLicense;
import cn.estsh.i3plus.pojo.model.platform.SysLoginModel;
import cn.estsh.i3plus.pojo.model.platform.SysRoleModel;
import cn.estsh.i3plus.pojo.model.platform.UserDetailModel;
import cn.estsh.i3plus.pojo.model.platform.UserDetailPagerModel;
import cn.estsh.i3plus.pojo.platform.bean.*;
@ -33,6 +33,7 @@ import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.fileservice.ImppFileService;
import cn.estsh.impp.framework.boot.license.ImppLicenseTool;
import cn.estsh.impp.framework.boot.license.serviceimpl.ImppLicenseDecoder;
import cn.estsh.impp.framework.boot.util.ImppRedis;
@ -58,6 +59,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@ -82,6 +84,7 @@ import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.function.BiFunction;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* @Description :
@ -157,6 +160,18 @@ public class WhiteController extends CoreBaseController {
@Autowired
private IDingTalkService dingTalkService;
@Autowired
private SysSmsSendRecordController smsSendRecordController;
@Autowired
private ISysRoleService sysRoleService;
@Autowired
private SysUserController sysUserController;
@Autowired
private SysFileController sysFileController;
private Cache<String, Integer> unsavedLocaleResSwitch = CacheBuilder.newBuilder()
.maximumSize(1)
.expireAfterWrite(1, TimeUnit.MINUTES)
@ -396,7 +411,16 @@ public class WhiteController extends CoreBaseController {
} catch (AuthenticationException e) {
// 系统异常
result = ResultBean.fail(ImppExceptionEnum.LOGIN_EXCEPTION_USER_PASSWORD.getDescription()).setCode(ImppExceptionEnum.LOGIN_EXCEPTION_USER_PASSWORD.getCode());
if (e.getCause() != null) {
if (e.getCause() instanceof ImppBusiException) {
ImppBusiException imppBusiException = (ImppBusiException) e.getCause();
result.setErrorMsg(LocaleUtils.getLocaleRes(imppBusiException.getErrorDetail()));
}else {
result.setErrorMsg(e.getCause().getMessage());
}
} else {
result.setErrorMsg(e.getMessage());
}
userLoginStatus = CommonEnumUtil.USER_LOGIN_STATUS.SYSTEM_ERROR;
LOGGER.warn("Impp业务异常AuthenticationException 登录失败 ", e);
} catch (ImppBusiException e) {
@ -578,6 +602,18 @@ public class WhiteController extends CoreBaseController {
}
/**
* id
*
* @param idStr
* @return
*/
@DeleteMapping(value = "/sys-file/delete/{id}")
@ApiOperation(value = "根据id删除文件资源", notes = "根据id删除文件资源")
public ResultBean deleteSysFileById(@PathVariable("id") String idStr) {
return sysFileController.deleteSysFileById(idStr);
}
/**
*
*
* @param fileCode
@ -899,4 +935,55 @@ public class WhiteController extends CoreBaseController {
public ResultBean querySysUserInfo(@RequestBody CloudPagerModel<SysUserInfo> cloudPagerModel) {
return sysUserInfoController.querySysUserInfo(cloudPagerModel.getObj(), cloudPagerModel.getPager());
}
@PostMapping("/sendSms")
@ApiOperation("无需登录 发送短信")
public ResultBean sendSms(@RequestBody ImppSmsContent imppSmsContent){
return smsSendRecordController.send(imppSmsContent);
}
@PostMapping(value = "/queryAllRoleRefUser")
@ApiOperation(value = "在所有角色中查询角色及关联的人员信息", notes = "查询角色及关联的人员信息")
public BaseResultBean queryAllRoleRefUser(@RequestBody SysRoleModel sysRoleModel) {
try {
ListPager result = null;
List<SysRole> roleList = null;
SysRole sysRole = sysRoleModel.getSysRole();
Pager pager = sysRoleModel.getPager();
if (ObjectUtils.isEmpty(sysRole)) {
sysRole = new SysRole();
}
if (ObjectUtils.isEmpty(pager)) {
pager = new Pager();
}
//过滤SysRefUserRole
roleList = sysRoleService.findAllByRoleProperty(sysRole);
if (ObjectUtils.isEmpty(roleList)){
return ResultBean.success("操作成功");
}
List<Long> roleIdList = roleList.stream().map(el -> el.getId()).collect(Collectors.toList());
result = personnelService.findSysRefUserRoleByRoleIds(roleIdList, pager);
return ResultBean.success("操作成功").setListPager(result).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
/**
*
*
* @param userLoginNames
* @param status
* @return
*/
@PutMapping(value = "/batch-status/userLoginNames")
@ApiOperation(value = "根据用户名批量修改账号状态", notes = "根据用户名批量修改账号状态")
public ResultBean updateBatchStatusByUserLoginNames(String[] userLoginNames, Integer status) {
return sysUserController.updateBatchStatusByUserLoginNames(userLoginNames,status);
}
}

@ -10,13 +10,13 @@ import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.platform.common.util.FileContentTypeTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.bean.BaseResultBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysRefRoleMenu;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserRole;
import cn.estsh.i3plus.pojo.platform.bean.SysRole;
import cn.estsh.i3plus.pojo.model.platform.SysRoleModel;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.impp.framework.base.controller.CrudBaseController;
import cn.estsh.impp.framework.base.service.ICrudService;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
@ -30,14 +30,12 @@ import io.swagger.annotations.ApiOperation;
import org.apache.commons.collections.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.http.MediaType;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.persistence.EntityManager;
@ -47,9 +45,7 @@ import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -246,6 +242,74 @@ public class SysRoleController extends CrudBaseController<SysRole> {
}
}
@PostMapping(value = "/queryAllRoleRefUser")
@ApiOperation(value = "在所有角色中查询角色及关联的人员信息", notes = "查询角色及关联的人员信息")
public BaseResultBean queryAllRoleRefUser(@RequestBody SysRoleModel sysRoleModel) {
try {
ListPager result = null;
List<SysRole> roleList = null;
SysRole sysRole = sysRoleModel.getSysRole();
Pager pager = sysRoleModel.getPager();
if (ObjectUtils.isEmpty(sysRole)) {
sysRole = new SysRole();
}
if (ObjectUtils.isEmpty(pager)) {
pager = new Pager();
}
roleList = sysRoleService.findAllByRoleProperty(sysRole);
//过滤SysRefUserRole
if (ObjectUtils.isEmpty(roleList)){
return ResultBean.success("操作成功");
}
List<Long> roleIdList = roleList.stream().map(el -> el.getId()).collect(Collectors.toList());
result = personnelService.findSysRefUserRoleByRoleIds(roleIdList, pager);
return ResultBean.success("操作成功").setListPager(result).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PostMapping(value = "/queryRoleRefUser")
@ApiOperation(value = "查询当前请求人员的角色及关联的人员信息", notes = "查询角色及关联的人员信息")
public BaseResultBean queryRoleRefUser(@RequestBody SysRoleModel sysRoleModel) {
try {
ListPager result = null;
SysRole sysRole = sysRoleModel.getSysRole();
Pager pager = sysRoleModel.getPager();
if (ObjectUtils.isEmpty(sysRole)){
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}
if (ObjectUtils.isEmpty(pager)){
pager = new Pager();
}
if (StringUtils.isEmpty(sysRole.getName())){
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}
List<SysRefUserRole> refList = personnelService.findSysRefUserRoleByRoleNameAndUserID(sysRole.getName(), getSessionUser().getUser().getId());
if (refList != null && refList.size() > 0) {
List<Long> idList = new ArrayList<>(refList.size());
refList.forEach(ref -> {
idList.add(ref.getRoleId());
});
// result = sysRoleService.querySysRole(sysRole, idList, pager);
// List<SysRole> roleList = result.getObjectList();
// //过滤SysRefUserRole
//
// List<Long> roleIdList = roleList.stream().map(el -> el.getId()).collect(Collectors.toList());
result = personnelService.findSysRefUserRoleByRoleIds(idList,pager);
}
return ResultBean.success("操作成功").setListPager(result).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
/**
*
*

@ -39,6 +39,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@ -59,6 +60,7 @@ import java.sql.ResultSet;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import static java.util.stream.Collectors.toCollection;
@ -290,6 +292,31 @@ public class SysUserController extends CoreBaseController {
}
/**
*
*
* @param userLoginNames
* @param status
* @return
*/
@PutMapping(value = "/batch-status/userLoginNames")
@ApiOperation(value = "根据用户名批量修改账号状态", notes = "根据用户名批量修改账号状态")
public ResultBean updateBatchStatusByUserLoginNames(String[] userLoginNames, Integer status) {
try {
if(ObjectUtils.isEmpty(userLoginNames)){
return ResultBean.success("操作失败").setCode(ResourceEnumUtil.MESSAGE.FAIL.getCode()).setErrorMsg("用户名不能为空");
}
ValidatorBean.checkNotZero(status, "账号状态不能为空");
List<String> userLoginNameList = Stream.of(userLoginNames).collect(Collectors.toList());
sysUserService.updateBatchSysUserStatusByUserLoginNames(userLoginNameList,status);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
/**
*
*
* @param password

@ -426,8 +426,15 @@ public class SysUserInfoController extends CoreBaseController {
userInfo = new SysUserInfo();
}
try {
ListPager<SysUserInfo> result = sysUserInfoService.querySysUserInfo(userInfo, packUserInfo(userInfo), pager);
List<SysUserInfo> list = result.getObjectList();
ListPager<SysUserInfo> result = null;
List<SysUserInfo> list = null;
if (ObjectUtils.isEmpty(pager)|| pager.getPageSize() == 0) {
list = sysUserInfoService.querySysUserInfoList(userInfo, packUserInfo(userInfo));
} else {
result = sysUserInfoService.querySysUserInfo(userInfo, packUserInfo(userInfo), pager);
list = result.getObjectList();
}
Map<Long, SysUser> sysUserMap = sysUserService.list().stream()
.collect(Collectors.toMap(SysUser::getId, Function.identity()));
List<UserExportModel> exportModelList = new ArrayList<>();

@ -33,6 +33,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.util.*;
@ -295,7 +296,6 @@ public class PersonnelServiceService implements IPersonnelService {
public ListPager<SysUserInfo> querySysUserInfo(UserDetailModel model, Pager pager) {
DdlPackBean packBean = CoreHqlPack.packDdlBeanSysUserInfo(model.getSysUserInfo(), StringTool.getListLong(model.getUserInfoIdList()));
pager = PagerHelper.getPager(pager, userInfoRDao.findByHqlWhereCount(packBean));
@ -408,6 +408,26 @@ public class PersonnelServiceService implements IPersonnelService {
}
@Override
public ListPager<SysRefUserRole> findSysRefUserRoleByRoleIds(List<Long> roleIdList, Pager pager) {
if (ObjectUtils.isEmpty(roleIdList)) {
return new ListPager();
}
DdlPackBean packBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getInPackList(roleIdList, "roleId", packBean);
pager = PagerHelper.getPager(pager, refUserRoleRDao.findByHqlWhereCount(packBean));
return new ListPager<>(refUserRoleRDao.findByHqlWherePage(packBean, pager), pager);
}
@Override
public List<SysRefUserRole> findSysRefUserRoleByRoleNameAndUserID(String roleName, Long userId) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getStringLikerPack(roleName, "roleNameRdd", packBean);
DdlPreparedPack.getNumEqualPack(userId, "userId", packBean);
return refUserRoleRDao.findByHqlWhere(packBean);
}
@Override
public List<SysRefRoleMenu> findSysRefRoleMenuByRoleIds(List<Long> roleIdList) {
LOGGER.info("平台账号角色 SysRefRoleMenu roleIdList:{}", roleIdList);
if (roleIdList != null) {
@ -1171,6 +1191,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @return
*/
private boolean checkPasswordLength(SysConfig config, String password) {
@ -1192,6 +1213,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @param password
* @return
*/
@ -1215,6 +1237,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @param password
* @return
*/
@ -1238,6 +1261,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @param password
* @return
*/
@ -1261,6 +1285,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @param password
* @return
*/
@ -1308,6 +1333,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @param email
* @param infoId
* @return
@ -1331,6 +1357,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @param phone
* @param infoId
* @return
@ -1354,6 +1381,7 @@ public class PersonnelServiceService implements IPersonnelService {
/**
*
*
* @param empNo
* @param infoId
* @return

@ -6,6 +6,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService;
import cn.estsh.i3plus.core.apiservice.dao.IUserPermissionDao;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
@ -36,6 +37,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Example;
import org.springframework.data.domain.Page;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
@ -299,6 +301,14 @@ public class SysRoleService extends CrudService<SysRole> implements ISysRoleServ
return this.roleRDao.findAll(example);
}
@Override
public List<SysRole> findAllByRoleProperty(SysRole sysRole) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(sysRole);
DdlPreparedPack.getNumEqualPack(sysRole.getRoleStatus(), "roleStatus", packBean);
DdlPreparedPack.getStringLikerPack(sysRole.getName(), "name", packBean);
return roleRDao.findByHqlWhere(packBean);
}
// @Override
// public void packAfterRefreshCache() {

@ -223,6 +223,29 @@ public class SysUserService implements ISysUserService {
}
@Override
public void updateBatchSysUserStatusByUserLoginNames(List<String> userLoginNameList, int status) {
DdlPackBean ddlPackBean = new DdlPackBean();
DdlPreparedPack.getNumEqualPack(CommonEnumUtil.IS_VAILD.VAILD.getValue(), "isValid", ddlPackBean);
DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", ddlPackBean);
DdlPreparedPack.getInPackList(userLoginNameList, "userLoginName", ddlPackBean);
String modifiedUser = "系统";
try {
modifiedUser = AuthUtil.getSessionUser().getUserName();
} catch (Exception e) {
}
userRDao.updateByProperties(
new String[]{"userStatus", "modifyDatetime", "modifyUser"},
new Object[]{status, TimeTool.getNowTime(true), modifiedUser},
ddlPackBean);
// userRDao.updateByProperties(
// new String[]{"userStatus", "modifyUser"},
// new Object[]{status, modifiedUser},
// ddlPackBean);
}
@Override
@ApiOperation(value = "修改账号", notes = "修改账号信息")
public void updateSysUser(SysUser sysUser) {
LOGGER.debug("平台用户 SYS_USER SysUser :{}", sysUser);

@ -19,6 +19,8 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.naming.NamingException;
@ -493,6 +495,7 @@ public class SysUserPasswordUtil {
int day = TimeTool.getSecoundsBetweenTime(4, user.getUserLoginLastDateTime(), TimeTool.getNowTime(true));
if(day > loginDayMax){
// 锁定账号信息
//todo: 账户没有被锁定,由于异常事务回滚,导致账户没有被锁定,这个更新操作就是多余的
userService.doLockSysUserById(user.getId());
throw ImppExceptionBuilder.newInstance()

@ -1,5 +1,5 @@
#\u4F7F\u7528\u914D\u7F6E
spring.profiles.active=test
spring.profiles.active=docker
#\u9879\u76EE\u63CF\u8FF0\u4FE1\u606F\uFF08swagger\u4E2D\u663E\u5F0F\uFF09\uFF0C\u4E2D\u6587\u4F7F\u7528uncode\u8F6C\u7801
desc.application.name=\u6838\u5FC3\u7BA1\u7406\u540E\u53F0

@ -7,7 +7,7 @@
<groupId>i3plus.core</groupId>
<artifactId>i3plus-core</artifactId>
<packaging>pom</packaging>
<version>1.0-TEST-SNAPSHOT</version>
<version>1.0.0.2</version>
<modules>
<module>modules/i3plus-core-api</module>
<module>modules/i3plus-core-apiservice</module>
@ -37,6 +37,7 @@
<skipTests>true</skipTests>
<app.charset>UTF-8</app.charset>
<app.jdk.version>1.8</app.jdk.version>
<project.dependency.version>1.0-TEST-SNAPSHOT</project.dependency.version>
</properties>
<dependencies>
@ -48,82 +49,82 @@
<dependency>
<groupId>impp.framework</groupId>
<artifactId>impp-framework-boot</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<!-- 微朝调用 -->
<dependency>
<groupId>i3plus.core</groupId>
<artifactId>i3plus-core-icloud</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-wms</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-mes</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-mes-pcn</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-ptl</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-andon</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-form</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-softswitch</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-mdm</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-screen</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<!-- 基础对象调用 -->
<dependency>
<groupId>i3plus.pojo</groupId>
<artifactId>i3plus-pojo-model</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.pojo</groupId>
<artifactId>i3plus-pojo-mdm</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<!-- 内部依赖声明 -->
@ -136,65 +137,65 @@
<dependency>
<groupId>i3plus.sdk</groupId>
<artifactId>i3plus-sdk-dingtalk</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.sdk</groupId>
<artifactId>i3plus-sdk-wechat</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.sdk</groupId>
<artifactId>i3plus-sdk-sms</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.platform</groupId>
<artifactId>i3plus-platform-common</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.platform</groupId>
<artifactId>i3plus-platform-plugin</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.platform</groupId>
<artifactId>i3plus-platform-plugin</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.pojo</groupId>
<artifactId>i3plus-pojo-platform</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.pojo</groupId>
<artifactId>i3plus-pojo-mes</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.pojo</groupId>
<artifactId>i3plus-pojo-base</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<dependency>
<groupId>i3plus.pojo</groupId>
<artifactId>i3plus-pojo-mes</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<!-- 微朝调用 -->
<dependency>
<groupId>i3plus.icloud</groupId>
<artifactId>i3plus-icloud-core</artifactId>
<version>${project.version}</version>
<version>${project.dependency.version}</version>
</dependency>
<!-- mysql -->

Loading…
Cancel
Save