Merge branch 'dev' of https://gitee.com/asgc/neutrino-proxy into dev
This commit is contained in:
+1
@@ -42,6 +42,7 @@ public class ServiceException extends RuntimeException {
|
|||||||
private String msg;
|
private String msg;
|
||||||
|
|
||||||
public ServiceException(int code, String msg) {
|
public ServiceException(int code, String msg) {
|
||||||
|
super(msg);
|
||||||
this.code = code;
|
this.code = code;
|
||||||
this.msg = msg;
|
this.msg = msg;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
@@ -50,6 +50,7 @@ public enum ExceptionConstant {
|
|||||||
ORIGIN_PASSWORD_CHECK_FAIL(12002, "原密码验证失败"),
|
ORIGIN_PASSWORD_CHECK_FAIL(12002, "原密码验证失败"),
|
||||||
LOGIN_PASSWORD_LENGTH_CHECK_FAIL(12003, "登录密码不能小于6位数"),
|
LOGIN_PASSWORD_LENGTH_CHECK_FAIL(12003, "登录密码不能小于6位数"),
|
||||||
LOGIN_PASSWORD_NO_CHANGE_MODIFY_FAIL(12004, "密码没有变化,修改失败"),
|
LOGIN_PASSWORD_NO_CHANGE_MODIFY_FAIL(12004, "密码没有变化,修改失败"),
|
||||||
|
LICENSE_CANNOT_BE_DELETED(12005, "license下存在[{}]个端口映射!"),
|
||||||
// 端口池管理(13000)
|
// 端口池管理(13000)
|
||||||
PORT_CANNOT_REPEAT(13000,"端口不能重复"),
|
PORT_CANNOT_REPEAT(13000,"端口不能重复"),
|
||||||
PORT_NOT_EXIST(13001, "该端口在端口池中不存在"),
|
PORT_NOT_EXIST(13001, "该端口在端口池中不存在"),
|
||||||
|
|||||||
+204
-191
@@ -6,9 +6,12 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|||||||
import com.github.pagehelper.Page;
|
import com.github.pagehelper.Page;
|
||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import com.google.common.collect.Sets;
|
import com.google.common.collect.Sets;
|
||||||
|
import ma.glasnost.orika.MapperFacade;
|
||||||
|
import org.apache.ibatis.solon.annotation.Db;
|
||||||
import org.dromara.neutrinoproxy.server.base.db.DBInitialize;
|
import org.dromara.neutrinoproxy.server.base.db.DBInitialize;
|
||||||
import org.dromara.neutrinoproxy.server.base.page.PageInfo;
|
import org.dromara.neutrinoproxy.server.base.page.PageInfo;
|
||||||
import org.dromara.neutrinoproxy.server.base.page.PageQuery;
|
import org.dromara.neutrinoproxy.server.base.page.PageQuery;
|
||||||
|
import org.dromara.neutrinoproxy.server.base.rest.ServiceException;
|
||||||
import org.dromara.neutrinoproxy.server.base.rest.SystemContextHolder;
|
import org.dromara.neutrinoproxy.server.base.rest.SystemContextHolder;
|
||||||
import org.dromara.neutrinoproxy.server.constant.EnableStatusEnum;
|
import org.dromara.neutrinoproxy.server.constant.EnableStatusEnum;
|
||||||
import org.dromara.neutrinoproxy.server.constant.ExceptionConstant;
|
import org.dromara.neutrinoproxy.server.constant.ExceptionConstant;
|
||||||
@@ -19,17 +22,15 @@ import org.dromara.neutrinoproxy.server.controller.req.proxy.LicenseUpdateEnable
|
|||||||
import org.dromara.neutrinoproxy.server.controller.req.proxy.LicenseUpdateReq;
|
import org.dromara.neutrinoproxy.server.controller.req.proxy.LicenseUpdateReq;
|
||||||
import org.dromara.neutrinoproxy.server.controller.res.proxy.*;
|
import org.dromara.neutrinoproxy.server.controller.res.proxy.*;
|
||||||
import org.dromara.neutrinoproxy.server.dal.LicenseMapper;
|
import org.dromara.neutrinoproxy.server.dal.LicenseMapper;
|
||||||
|
import org.dromara.neutrinoproxy.server.dal.PortMappingMapper;
|
||||||
import org.dromara.neutrinoproxy.server.dal.UserMapper;
|
import org.dromara.neutrinoproxy.server.dal.UserMapper;
|
||||||
import org.dromara.neutrinoproxy.server.dal.entity.LicenseDO;
|
import org.dromara.neutrinoproxy.server.dal.entity.LicenseDO;
|
||||||
|
import org.dromara.neutrinoproxy.server.dal.entity.PortMappingDO;
|
||||||
import org.dromara.neutrinoproxy.server.dal.entity.UserDO;
|
import org.dromara.neutrinoproxy.server.dal.entity.UserDO;
|
||||||
import org.dromara.neutrinoproxy.server.util.ParamCheckUtil;
|
import org.dromara.neutrinoproxy.server.util.ParamCheckUtil;
|
||||||
import ma.glasnost.orika.MapperFacade;
|
|
||||||
import org.apache.ibatis.solon.annotation.Db;
|
|
||||||
import org.dromara.neutrinoproxy.server.controller.res.proxy.*;
|
|
||||||
import org.noear.solon.annotation.Component;
|
import org.noear.solon.annotation.Component;
|
||||||
import org.noear.solon.annotation.Init;
|
import org.noear.solon.annotation.Init;
|
||||||
import org.noear.solon.annotation.Inject;
|
import org.noear.solon.annotation.Inject;
|
||||||
import org.noear.solon.core.Lifecycle;
|
|
||||||
import org.noear.solon.core.bean.LifecycleBean;
|
import org.noear.solon.core.bean.LifecycleBean;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@@ -38,219 +39,231 @@ import java.util.stream.Collectors;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* license服务
|
* license服务
|
||||||
|
*
|
||||||
* @author: aoshiguchen
|
* @author: aoshiguchen
|
||||||
* @date: 2022/8/6
|
* @date: 2022/8/6
|
||||||
*/
|
*/
|
||||||
@Component
|
@Component
|
||||||
public class LicenseService implements LifecycleBean {
|
public class LicenseService implements LifecycleBean {
|
||||||
@Inject
|
@Inject
|
||||||
private MapperFacade mapperFacade;
|
private MapperFacade mapperFacade;
|
||||||
@Db
|
@Db
|
||||||
private LicenseMapper licenseMapper;
|
private LicenseMapper licenseMapper;
|
||||||
@Db
|
@Db
|
||||||
private UserMapper userMapper;
|
private PortMappingMapper portMappingMapper;
|
||||||
@Inject
|
@Db
|
||||||
private VisitorChannelService visitorChannelService;
|
private UserMapper userMapper;
|
||||||
@Inject
|
@Inject
|
||||||
private DBInitialize dbInitialize;
|
private VisitorChannelService visitorChannelService;
|
||||||
|
@Inject
|
||||||
|
private DBInitialize dbInitialize;
|
||||||
|
|
||||||
public PageInfo<LicenseListRes> page(PageQuery pageQuery, LicenseListReq req) {
|
public PageInfo<LicenseListRes> page(PageQuery pageQuery, LicenseListReq req) {
|
||||||
Page<LicenseListRes> result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize());
|
Page<LicenseListRes> result = PageHelper.startPage(pageQuery.getCurrent(), pageQuery.getSize());
|
||||||
List<LicenseDO> list = licenseMapper.selectList(new LambdaQueryWrapper<LicenseDO>()
|
List<LicenseDO> list = licenseMapper.selectList(new LambdaQueryWrapper<LicenseDO>()
|
||||||
.eq(req.getUserId() != null, LicenseDO::getUserId, req.getUserId())
|
.eq(req.getUserId() != null, LicenseDO::getUserId, req.getUserId())
|
||||||
.eq(req.getIsOnline() != null, LicenseDO::getIsOnline, req.getIsOnline())
|
.eq(req.getIsOnline() != null, LicenseDO::getIsOnline, req.getIsOnline())
|
||||||
.eq(req.getEnable() != null, LicenseDO::getEnable, req.getEnable())
|
.eq(req.getEnable() != null, LicenseDO::getEnable, req.getEnable())
|
||||||
.orderByAsc(Arrays.asList(LicenseDO::getUserId, LicenseDO::getId))
|
.orderByAsc(Arrays.asList(LicenseDO::getUserId, LicenseDO::getId))
|
||||||
);
|
);
|
||||||
List<LicenseListRes> respList = mapperFacade.mapAsList(list, LicenseListRes.class);
|
List<LicenseListRes> respList = mapperFacade.mapAsList(list, LicenseListRes.class);
|
||||||
if (CollectionUtils.isEmpty(list)) {
|
if (CollectionUtils.isEmpty(list)) {
|
||||||
return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize());
|
return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize());
|
||||||
}
|
}
|
||||||
if (!CollectionUtil.isEmpty(respList)) {
|
if (!CollectionUtil.isEmpty(respList)) {
|
||||||
Set<Integer> userIds = respList.stream().map(LicenseListRes::getUserId).collect(Collectors.toSet());
|
Set<Integer> userIds = respList.stream().map(LicenseListRes::getUserId).collect(Collectors.toSet());
|
||||||
List<UserDO> userList = userMapper.findByIds(userIds);
|
List<UserDO> userList = userMapper.findByIds(userIds);
|
||||||
Map<Integer, UserDO> userMap = userList.stream().collect(Collectors.toMap(UserDO::getId, Function.identity()));
|
Map<Integer, UserDO> userMap = userList.stream().collect(Collectors.toMap(UserDO::getId, Function.identity()));
|
||||||
for (LicenseListRes item : respList) {
|
for (LicenseListRes item : respList) {
|
||||||
UserDO userDO = userMap.get(item.getUserId());
|
UserDO userDO = userMap.get(item.getUserId());
|
||||||
if (null != userDO) {
|
if (null != userDO) {
|
||||||
item.setUserName(userDO.getName());
|
item.setUserName(userDO.getName());
|
||||||
}
|
}
|
||||||
item.setKey(desensitization(item.getUserId(), item.getKey()));
|
item.setKey(desensitization(item.getUserId(), item.getKey()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize());
|
return PageInfo.of(respList, result.getTotal(), pageQuery.getCurrent(), pageQuery.getSize());
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<LicenseListRes> list(LicenseListReq req) {
|
public List<LicenseListRes> list(LicenseListReq req) {
|
||||||
List<LicenseDO> list = licenseMapper.selectList(new LambdaQueryWrapper<LicenseDO>()
|
List<LicenseDO> list = licenseMapper.selectList(new LambdaQueryWrapper<LicenseDO>()
|
||||||
.eq(null != req.getEnable(), LicenseDO::getEnable, req.getEnable())
|
.eq(null != req.getEnable(), LicenseDO::getEnable, req.getEnable())
|
||||||
);
|
);
|
||||||
List<LicenseListRes> licenseList = assembleConvertLicenses(list);
|
List<LicenseListRes> licenseList = assembleConvertLicenses(list);
|
||||||
return licenseList;
|
return licenseList;
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<LicenseListRes> assembleConvertLicenses(List<LicenseDO> list) {
|
private List<LicenseListRes> assembleConvertLicenses(List<LicenseDO> list) {
|
||||||
List<LicenseListRes> licenseList = mapperFacade.mapAsList(list, LicenseListRes.class);
|
List<LicenseListRes> licenseList = mapperFacade.mapAsList(list, LicenseListRes.class);
|
||||||
if (!CollectionUtil.isEmpty(licenseList)) {
|
if (!CollectionUtil.isEmpty(licenseList)) {
|
||||||
Set<Integer> userIds = licenseList.stream().map(LicenseListRes::getUserId).collect(Collectors.toSet());
|
Set<Integer> userIds = licenseList.stream().map(LicenseListRes::getUserId).collect(Collectors.toSet());
|
||||||
List<UserDO> userList = userMapper.findByIds(userIds);
|
List<UserDO> userList = userMapper.findByIds(userIds);
|
||||||
Map<Integer, UserDO> userMap = userList.stream().collect(Collectors.toMap(UserDO::getId, Function.identity()));
|
Map<Integer, UserDO> userMap = userList.stream().collect(Collectors.toMap(UserDO::getId, Function.identity()));
|
||||||
for (LicenseListRes item : licenseList) {
|
for (LicenseListRes item : licenseList) {
|
||||||
UserDO userDO = userMap.get(item.getUserId());
|
UserDO userDO = userMap.get(item.getUserId());
|
||||||
if (null != userDO) {
|
if (null != userDO) {
|
||||||
item.setUserName(userDO.getName());
|
item.setUserName(userDO.getName());
|
||||||
}
|
}
|
||||||
item.setKey(desensitization(item.getUserId(), item.getKey()));
|
item.setKey(desensitization(item.getUserId(), item.getKey()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return licenseList;
|
return licenseList;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建license
|
* 创建license
|
||||||
* @param req
|
*
|
||||||
* @return
|
* @param req
|
||||||
*/
|
* @return
|
||||||
public LicenseCreateRes create(LicenseCreateReq req) {
|
*/
|
||||||
LicenseDO licenseDO = licenseMapper.checkRepeat(req.getUserId(), req.getName());
|
public LicenseCreateRes create(LicenseCreateReq req) {
|
||||||
ParamCheckUtil.checkExpression(null == licenseDO, ExceptionConstant.LICENSE_NAME_CANNOT_REPEAT);
|
LicenseDO licenseDO = licenseMapper.checkRepeat(req.getUserId(), req.getName());
|
||||||
|
ParamCheckUtil.checkExpression(null == licenseDO, ExceptionConstant.LICENSE_NAME_CANNOT_REPEAT);
|
||||||
|
|
||||||
String key = UUID.randomUUID().toString().replaceAll("-", "");
|
String key = UUID.randomUUID().toString().replaceAll("-", "");
|
||||||
Date now = new Date();
|
Date now = new Date();
|
||||||
|
|
||||||
licenseMapper.insert(new LicenseDO()
|
licenseMapper.insert(new LicenseDO()
|
||||||
.setName(req.getName())
|
.setName(req.getName())
|
||||||
.setKey(key)
|
.setKey(key)
|
||||||
.setUserId(req.getUserId())
|
.setUserId(req.getUserId())
|
||||||
.setIsOnline(OnlineStatusEnum.OFFLINE.getStatus())
|
.setIsOnline(OnlineStatusEnum.OFFLINE.getStatus())
|
||||||
.setEnable(EnableStatusEnum.ENABLE.getStatus())
|
.setEnable(EnableStatusEnum.ENABLE.getStatus())
|
||||||
.setCreateTime(now)
|
.setCreateTime(now)
|
||||||
.setUpdateTime(now)
|
.setUpdateTime(now)
|
||||||
);
|
);
|
||||||
return new LicenseCreateRes();
|
return new LicenseCreateRes();
|
||||||
}
|
}
|
||||||
|
|
||||||
public LicenseUpdateRes update(LicenseUpdateReq req) {
|
public LicenseUpdateRes update(LicenseUpdateReq req) {
|
||||||
LicenseDO oldLicenseDO = licenseMapper.findById(req.getId());
|
LicenseDO oldLicenseDO = licenseMapper.findById(req.getId());
|
||||||
ParamCheckUtil.checkNotNull(oldLicenseDO, ExceptionConstant.LICENSE_NOT_EXIST);
|
ParamCheckUtil.checkNotNull(oldLicenseDO, ExceptionConstant.LICENSE_NOT_EXIST);
|
||||||
|
|
||||||
LicenseDO licenseCheck = licenseMapper.checkRepeat(oldLicenseDO.getUserId(), req.getName(), Sets.newHashSet(oldLicenseDO.getId()));
|
LicenseDO licenseCheck = licenseMapper.checkRepeat(oldLicenseDO.getUserId(), req.getName(), Sets.newHashSet(oldLicenseDO.getId()));
|
||||||
ParamCheckUtil.checkMustNull(licenseCheck, ExceptionConstant.LICENSE_NAME_CANNOT_REPEAT);
|
ParamCheckUtil.checkMustNull(licenseCheck, ExceptionConstant.LICENSE_NAME_CANNOT_REPEAT);
|
||||||
|
|
||||||
licenseMapper.update(req.getId(), req.getName(), new Date());
|
licenseMapper.update(req.getId(), req.getName(), new Date());
|
||||||
return new LicenseUpdateRes();
|
return new LicenseUpdateRes();
|
||||||
}
|
}
|
||||||
|
|
||||||
public LicenseDetailRes detail(Integer id) {
|
public LicenseDetailRes detail(Integer id) {
|
||||||
LicenseDO licenseDO = licenseMapper.findById(id);
|
LicenseDO licenseDO = licenseMapper.findById(id);
|
||||||
if (null == licenseDO) {
|
if (null == licenseDO) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
UserDO userDO = userMapper.findById(licenseDO.getUserId());
|
UserDO userDO = userMapper.findById(licenseDO.getUserId());
|
||||||
String userName = "";
|
String userName = "";
|
||||||
if (null != userDO) {
|
if (null != userDO) {
|
||||||
userName = userDO.getName();
|
userName = userDO.getName();
|
||||||
}
|
}
|
||||||
return new LicenseDetailRes()
|
return new LicenseDetailRes()
|
||||||
.setId(licenseDO.getId())
|
.setId(licenseDO.getId())
|
||||||
.setName(licenseDO.getName())
|
.setName(licenseDO.getName())
|
||||||
.setKey(desensitization(licenseDO.getUserId(), licenseDO.getKey()))
|
.setKey(desensitization(licenseDO.getUserId(), licenseDO.getKey()))
|
||||||
.setUserId(licenseDO.getUserId())
|
.setUserId(licenseDO.getUserId())
|
||||||
.setUserName(userName)
|
.setUserName(userName)
|
||||||
.setIsOnline(licenseDO.getIsOnline())
|
.setIsOnline(licenseDO.getIsOnline())
|
||||||
.setEnable(licenseDO.getEnable())
|
.setEnable(licenseDO.getEnable())
|
||||||
.setCreateTime(licenseDO.getCreateTime())
|
.setCreateTime(licenseDO.getCreateTime())
|
||||||
.setUpdateTime(licenseDO.getUpdateTime())
|
.setUpdateTime(licenseDO.getUpdateTime())
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新license启用状态
|
* 更新license启用状态
|
||||||
* @param req
|
*
|
||||||
* @return
|
* @param req
|
||||||
*/
|
* @return
|
||||||
public LicenseUpdateEnableStatusRes updateEnableStatus(LicenseUpdateEnableStatusReq req) {
|
*/
|
||||||
licenseMapper.updateEnableStatus(req.getId(), req.getEnable(), new Date());
|
public LicenseUpdateEnableStatusRes updateEnableStatus(LicenseUpdateEnableStatusReq req) {
|
||||||
// 更新VisitorChannel
|
licenseMapper.updateEnableStatus(req.getId(), req.getEnable(), new Date());
|
||||||
visitorChannelService.updateVisitorChannelByLicenseId(req.getId(), req.getEnable());
|
// 更新VisitorChannel
|
||||||
return new LicenseUpdateEnableStatusRes();
|
visitorChannelService.updateVisitorChannelByLicenseId(req.getId(), req.getEnable());
|
||||||
}
|
return new LicenseUpdateEnableStatusRes();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除license
|
* 删除license
|
||||||
* @param id
|
*
|
||||||
*/
|
* @param id
|
||||||
public void delete(Integer id) {
|
*/
|
||||||
licenseMapper.deleteById(id);
|
public void delete(Integer id) {
|
||||||
// 更新VisitorChannel
|
List<PortMappingDO> portMappingDOList = portMappingMapper.findListByLicenseId(id);
|
||||||
visitorChannelService.updateVisitorChannelByLicenseId(id, EnableStatusEnum.DISABLE.getStatus());
|
if (CollectionUtil.isNotEmpty(portMappingDOList)) {
|
||||||
}
|
throw ServiceException.create(ExceptionConstant.LICENSE_CANNOT_BE_DELETED, portMappingDOList.size());
|
||||||
|
}
|
||||||
|
licenseMapper.deleteById(id);
|
||||||
|
// 更新VisitorChannel
|
||||||
|
visitorChannelService.updateVisitorChannelByLicenseId(id, EnableStatusEnum.DISABLE.getStatus());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 重置license
|
* 重置license
|
||||||
* @param id
|
*
|
||||||
*/
|
* @param id
|
||||||
public void reset(Integer id) {
|
*/
|
||||||
String key = UUID.randomUUID().toString().replaceAll("-", "");
|
public void reset(Integer id) {
|
||||||
Date now = new Date();
|
String key = UUID.randomUUID().toString().replaceAll("-", "");
|
||||||
|
Date now = new Date();
|
||||||
|
|
||||||
licenseMapper.reset(id, key, now);
|
licenseMapper.reset(id, key, now);
|
||||||
}
|
}
|
||||||
|
|
||||||
public LicenseDO findByKey(String license) {
|
public LicenseDO findByKey(String license) {
|
||||||
return licenseMapper.findByKey(license);
|
return licenseMapper.findByKey(license);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 脱敏处理
|
* 脱敏处理
|
||||||
* 非当前登录人的license,一律脱敏
|
* 非当前登录人的license,一律脱敏
|
||||||
* @param userId
|
*
|
||||||
* @param licenseKey
|
* @param userId
|
||||||
* @return
|
* @param licenseKey
|
||||||
*/
|
* @return
|
||||||
private String desensitization(Integer userId, String licenseKey) {
|
*/
|
||||||
Integer currentUserId = SystemContextHolder.getUser().getId();
|
private String desensitization(Integer userId, String licenseKey) {
|
||||||
if (currentUserId.equals(userId)) {
|
Integer currentUserId = SystemContextHolder.getUser().getId();
|
||||||
return licenseKey;
|
if (currentUserId.equals(userId)) {
|
||||||
}
|
return licenseKey;
|
||||||
return licenseKey.substring(0, 10) + "****" + licenseKey.substring(licenseKey.length() - 10);
|
}
|
||||||
}
|
return licenseKey.substring(0, 10) + "****" + licenseKey.substring(licenseKey.length() - 10);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 服务端项目停止、启动时,更新在线状态为离线
|
* 服务端项目停止、启动时,更新在线状态为离线
|
||||||
*/
|
*/
|
||||||
@Init
|
@Init
|
||||||
public void init() {
|
public void init() {
|
||||||
licenseMapper.updateOnlineStatus(OnlineStatusEnum.OFFLINE.getStatus(), new Date());
|
licenseMapper.updateOnlineStatus(OnlineStatusEnum.OFFLINE.getStatus(), new Date());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void start() throws Throwable {
|
public void start() throws Throwable {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 服务端项目停止、启动时,更新在线状态为离线
|
* 服务端项目停止、启动时,更新在线状态为离线
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void stop() throws Throwable {
|
public void stop() throws Throwable {
|
||||||
licenseMapper.updateOnlineStatus(OnlineStatusEnum.OFFLINE.getStatus(), new Date());
|
licenseMapper.updateOnlineStatus(OnlineStatusEnum.OFFLINE.getStatus(), new Date());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询当前角色下的license,若为管理员 则返回全部license
|
* 查询当前角色下的license,若为管理员 则返回全部license
|
||||||
*/
|
*/
|
||||||
public List<LicenseListRes> queryCurUserLicense(LicenseListReq req) {
|
public List<LicenseListRes> queryCurUserLicense(LicenseListReq req) {
|
||||||
if(SystemContextHolder.isAdmin()){
|
if (SystemContextHolder.isAdmin()) {
|
||||||
return this.list(req);
|
return this.list(req);
|
||||||
}
|
}
|
||||||
|
|
||||||
List<LicenseDO> list = licenseMapper.selectList(new LambdaQueryWrapper<LicenseDO>()
|
List<LicenseDO> list = licenseMapper.selectList(new LambdaQueryWrapper<LicenseDO>()
|
||||||
.eq(LicenseDO::getEnable, EnableStatusEnum.ENABLE.getStatus())
|
.eq(LicenseDO::getEnable, EnableStatusEnum.ENABLE.getStatus())
|
||||||
.eq(LicenseDO::getUserId,SystemContextHolder.getUserId())
|
.eq(LicenseDO::getUserId, SystemContextHolder.getUserId())
|
||||||
);
|
);
|
||||||
List<LicenseListRes> licenseList = assembleConvertLicenses(list);
|
List<LicenseListRes> licenseList = assembleConvertLicenses(list);
|
||||||
return licenseList;
|
return licenseList;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user