微信登入无权限修复
This commit is contained in:
parent
c3f3ec1bcc
commit
e3249abf41
@ -53,7 +53,7 @@ server:
|
||||
spring:
|
||||
# 环境配置,dev=开发环境,prod=生产环境
|
||||
profiles:
|
||||
active: dev # 环境配置,dev=开发环境,prod=生产环境
|
||||
active: prod # 环境配置,dev=开发环境,prod=生产环境
|
||||
# 资源信息
|
||||
messages:
|
||||
# 国际化资源文件路径
|
||||
|
@ -4,7 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.fastbee.common.annotation.DataScope;
|
||||
import com.fastbee.common.core.domain.AjaxResult;
|
||||
import com.fastbee.common.extend.core.domin.entity.SysDept;
|
||||
import com.fastbee.common.extend.core.domin.model.LoginUser;
|
||||
import com.fastbee.common.extend.utils.SecurityUtils;
|
||||
import com.fastbee.common.utils.DateUtils;
|
||||
@ -17,12 +19,17 @@ import com.fastbee.iot.model.vo.OrderControlVO;
|
||||
import com.fastbee.iot.model.vo.ThingsModelVO;
|
||||
import com.fastbee.iot.service.IOrderControlService;
|
||||
import com.fastbee.iot.service.IThingsModelService;
|
||||
import com.fastbee.system.mapper.SysDeptMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.fastbee.common.extend.utils.SecurityUtils.getLoginUser;
|
||||
import static com.fastbee.common.extend.utils.SecurityUtils.getUsername;
|
||||
|
||||
/**
|
||||
* 指令权限控制Service业务层处理
|
||||
*
|
||||
@ -36,6 +43,8 @@ public class OrderControlServiceImpl extends ServiceImpl<OrderControlMapper,Orde
|
||||
private OrderControlMapper orderControlMapper;
|
||||
@Resource
|
||||
private IThingsModelService thingsModelService;
|
||||
@Resource
|
||||
private SysDeptMapper sysDeptMapper;
|
||||
|
||||
/**
|
||||
* 查询指令权限控制
|
||||
@ -101,13 +110,18 @@ public class OrderControlServiceImpl extends ServiceImpl<OrderControlMapper,Orde
|
||||
* @return 指令权限控制
|
||||
*/
|
||||
@Override
|
||||
@DataScope(deptAlias = "c", userAlias = "c")
|
||||
public Page<OrderControlVO> pageOrderControlVO(OrderControlVO orderControlVO) {
|
||||
orderControlVO.setTenantId(SecurityUtils.getDeptId());
|
||||
Page<OrderControlVO> orderControlVOPage = orderControlMapper.selectOrderControlVoPage(new Page<>(orderControlVO.getPageNum(), orderControlVO.getPageSize()), orderControlVO);
|
||||
if (0 == orderControlVOPage.getTotal()) {
|
||||
return new Page<>();
|
||||
}
|
||||
List<OrderControlVO> voList = orderControlVOPage.getRecords();
|
||||
List<Long> tenantIdList = voList.stream().map(OrderControlVO::getTenantId).distinct().collect(Collectors.toList());
|
||||
LambdaQueryWrapper<SysDept> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.in(SysDept::getDeptUserId, tenantIdList);
|
||||
List<SysDept> sysDeptList = sysDeptMapper.selectList(queryWrapper);
|
||||
Map<Long, SysDept> deptMap = sysDeptList.stream().collect(Collectors.toMap(SysDept::getDeptUserId, Function.identity()));
|
||||
for (OrderControlVO control : voList) {
|
||||
String[] split = control.getSelectOrder().split(",");
|
||||
List<Long> ids = Arrays.stream(split)
|
||||
@ -136,6 +150,10 @@ public class OrderControlServiceImpl extends ServiceImpl<OrderControlMapper,Orde
|
||||
control.setStatus(0);
|
||||
}
|
||||
}
|
||||
// SysDept sysDept = deptMap.get(control.getTenantId());
|
||||
// if (Objects.nonNull(sysDept)) {
|
||||
// control.setTenantName(sysDept.getDeptName());
|
||||
// }
|
||||
}
|
||||
return orderControlVOPage;
|
||||
}
|
||||
@ -170,7 +188,9 @@ public class OrderControlServiceImpl extends ServiceImpl<OrderControlMapper,Orde
|
||||
@Override
|
||||
public int insertOrderControl(OrderControl orderControl)
|
||||
{
|
||||
orderControl.setTenantId(SecurityUtils.getDeptId());
|
||||
LoginUser user = getLoginUser();
|
||||
orderControl.setTenantId(user.getUser().getDept().getDeptUserId());
|
||||
orderControl.setCreateBy(user.getUsername());
|
||||
orderControl.setCreateTime(DateUtils.getNowDate());
|
||||
orderControl.setStatus(1);
|
||||
return orderControlMapper.insert(orderControl);
|
||||
@ -186,6 +206,7 @@ public class OrderControlServiceImpl extends ServiceImpl<OrderControlMapper,Orde
|
||||
public int updateOrderControl(OrderControl orderControl)
|
||||
{
|
||||
orderControl.setUpdateTime(DateUtils.getNowDate());
|
||||
orderControl.setUpdateBy(getUsername());
|
||||
return orderControlMapper.updateById(orderControl);
|
||||
}
|
||||
|
||||
@ -246,10 +267,9 @@ public class OrderControlServiceImpl extends ServiceImpl<OrderControlMapper,Orde
|
||||
@Override
|
||||
public AjaxResult judgeThingsModel(Long deviceId, Long modelId) {
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
Long deptUserId = loginUser.getDeptUserId();
|
||||
LoginUser loginUser = getLoginUser();
|
||||
//这里排除管理员和终端用户和演示账号
|
||||
if (!userId.equals(deptUserId) && !Objects.isNull(loginUser.getDeptId()) && !"fastbee".equals(loginUser.getUsername())) {
|
||||
if (!Objects.isNull(loginUser.getDeptId()) && !userId.equals(loginUser.getUser().getDept().getDeptUserId()) && !"fastbee".equals(loginUser.getUsername())) {
|
||||
LambdaQueryWrapper<OrderControl> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(OrderControl::getUserId, userId);
|
||||
queryWrapper.eq(OrderControl::getDeviceId, deviceId);
|
||||
|
@ -176,6 +176,10 @@ public class SysLoginService {
|
||||
LoginUser loginUser = (LoginUser) userDetails;
|
||||
recordLoginInfo(loginUser.getUserId());
|
||||
loginUser.setLanguage(language);
|
||||
if (null != user.getDept()) {
|
||||
loginUser.setDeptUserId(user.getDept().getDeptUserId());
|
||||
}
|
||||
|
||||
// 生成token
|
||||
return tokenService.createToken(loginUser);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user