|
@@ -3,13 +3,18 @@ package com.ozs.service.service.impl;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.ozs.common.core.domain.AjaxResult;
|
|
|
import com.ozs.common.exception.ServiceException;
|
|
|
+import com.ozs.common.utils.StringUtils;
|
|
|
import com.ozs.common.utils.bean.BeanValidators;
|
|
|
import com.ozs.service.entity.BaseCameraManagement;
|
|
|
import com.ozs.service.entity.BaseDeviceDynamicManagement;
|
|
|
+import com.ozs.service.entity.BaseUser;
|
|
|
import com.ozs.service.mapper.BaseCameraManagementMapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.ozs.service.mapper.BaseDeviceDynamicManagementMapper;
|
|
|
+import com.ozs.service.mapper.BaseUserMapper;
|
|
|
import com.ozs.service.service.BaseCameraManagementService;
|
|
|
+import com.ozs.service.service.BaseUserService;
|
|
|
+import com.ozs.service.utils.DataPermissionUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.ObjectUtils;
|
|
@@ -17,7 +22,9 @@ import org.springframework.util.ObjectUtils;
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.validation.Validator;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.HashSet;
|
|
|
import java.util.List;
|
|
|
+import java.util.Set;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
@@ -32,9 +39,13 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
|
|
|
@Autowired
|
|
|
protected Validator validator;
|
|
|
@Resource
|
|
|
- BaseCameraManagementMapper baseCameraManagementMapper;
|
|
|
+ private BaseCameraManagementMapper baseCameraManagementMapper;
|
|
|
@Autowired
|
|
|
BaseDeviceDynamicManagementMapper baseDeviceDynamicManagementMapper;
|
|
|
+ @Resource
|
|
|
+ private BaseUserService baseUserService;
|
|
|
+ @Resource
|
|
|
+ private BaseUserMapper baseUserMapper;
|
|
|
|
|
|
/**
|
|
|
* 相机台账管理表导入
|
|
@@ -99,4 +110,62 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
|
|
|
}
|
|
|
return successMsg.toString();
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取相机列表+数据权限
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public List<BaseCameraManagement> selectCameraAll(String userId) {
|
|
|
+ List<String> userIdList = getUserIds(userId);
|
|
|
+ LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<BaseCameraManagement>();
|
|
|
+ if (!ObjectUtils.isEmpty(userIdList)) {
|
|
|
+ lw.in(BaseCameraManagement::getCreateBy, userIdList);
|
|
|
+ }
|
|
|
+ List<BaseCameraManagement> baseCameraManagementList = baseCameraManagementMapper.selectList(lw);
|
|
|
+ return baseCameraManagementList;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 根据当前登陆用户ID 查询当前用户数据权限
|
|
|
+ *
|
|
|
+ * @param userId
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public List<String> getUserIds(String userId) {
|
|
|
+ BaseUser baseUser = baseUserService.getUser(userId);
|
|
|
+ if (StringUtils.isNull(baseUser) || StringUtils.isNull(baseUser.getDataPermission())
|
|
|
+ || StringUtils.isNull(baseUser.getDeptId())) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ // 数据权限 1:本人;2:本部门;3:本部门及下级部门;4:本人及本级部门;5:本人及本部门及下级部门;6:全部
|
|
|
+ Integer dataPermission = baseUser.getDataPermission();
|
|
|
+ Long deptId = baseUser.getDeptId();
|
|
|
+ Set<String> set = new HashSet<>();
|
|
|
+ if (1 == dataPermission) {
|
|
|
+ set = baseUserMapper.getUserIdList(userId);
|
|
|
+ } else if (2 == dataPermission) {
|
|
|
+ set = baseUserMapper.getUserIdByDeptId(deptId);
|
|
|
+ } else if (3 == dataPermission) {
|
|
|
+ // 获取部门数据
|
|
|
+ List<Long> deptList = baseUserMapper.getDeptId(deptId);
|
|
|
+ // 获取用户列表
|
|
|
+ set = baseUserMapper.getUserIdByDeptIds(deptList);
|
|
|
+ } else if (4 == dataPermission) {
|
|
|
+ set = baseUserMapper.getUserIdByDeptIdAndUserId(userId, deptId);
|
|
|
+ } else if (5 == dataPermission) {
|
|
|
+ // 获取本人
|
|
|
+ Set<String> setUser = baseUserMapper.getUserIdListBy5(userId);
|
|
|
+ // 获取部门数据
|
|
|
+ List<Long> deptList5 = baseUserMapper.getDeptId(deptId);
|
|
|
+ // 获取用户列表
|
|
|
+ Set<String> setUsers = baseUserMapper.getUserIdByDeptIdsBy5(deptList5);
|
|
|
+ set.addAll(setUser);
|
|
|
+ set.addAll(setUsers);
|
|
|
+ } else if (6 == dataPermission) {
|
|
|
+ set = baseUserMapper.getUserIdList6();
|
|
|
+ }
|
|
|
+ List<String> list = new ArrayList<>(set);
|
|
|
+ return list;
|
|
|
+ }
|
|
|
}
|