|
|
@@ -94,6 +94,19 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
@Override
|
|
|
public List<SysPcAddress> getEveryone(SysPcAddressDto sysPcAddressDto) {
|
|
|
List<SysPcAddress> sysPcAddresses = null;
|
|
|
+ List<String> arrayList = new ArrayList<>();
|
|
|
+ List<String> collectIds = new ArrayList<>();
|
|
|
+ //admin看所有
|
|
|
+ if (!"admin".equals(BaseController.getUserId())) {
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
+ .eq(SysUser::getLeaderId, BaseController.getUserId()).ne(SysUser::getStatus, 0));
|
|
|
+ collectIds = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
+ if (collectIds.size() > 0) {
|
|
|
+ List<String> idList = queryList(collectIds, arrayList);
|
|
|
+ collectIds.addAll(idList);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
// 类型:1。机构 2.用户
|
|
|
if (sysPcAddressDto.getType() == 1) {
|
|
|
|
|
|
@@ -102,37 +115,41 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.in(SysPcAddress::getSource, Arrays.asList("1", "2"))
|
|
|
+ .in(CollectionUtil.isNotEmpty(collectIds), SysPcAddress::getUserId, collectIds)
|
|
|
.likeRight(StringUtils.isNotEmpty(sysPcAddressDto.getQueryId()), SysPcAddress::getUserId, sysPcAddressDto.getQueryId())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getSource()), SysPcAddress::getSource, sysPcAddressDto.getSource())
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus())
|
|
|
.orderByDesc(SysPcAddress::getOperationTime));
|
|
|
|
|
|
} else if (sysPcAddressDto.getType() == 2) {
|
|
|
+ List<String> ids = new ArrayList<>();
|
|
|
List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
.eq(SysUser::getLeaderId, sysPcAddressDto.getQueryId()).ne(SysUser::getStatus, 0));
|
|
|
List<String> collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
- List<String> ids = new ArrayList<>();
|
|
|
- List<String> idList = queryList(collect, ids);
|
|
|
- collect.addAll(idList);
|
|
|
if (collect.size() == 0) {
|
|
|
return sysPcAddresses;
|
|
|
}
|
|
|
+ List<String> idList = queryList(collect, ids);
|
|
|
+ collect.addAll(idList);
|
|
|
sysPcAddresses = sysPcAddressMapper.selectList(new LambdaQueryWrapper<SysPcAddress>()
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getProvince()), SysPcAddress::getProvince, sysPcAddressDto.getProvince())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.in(SysPcAddress::getSource, Arrays.asList("1", "2"))
|
|
|
+ .in(CollectionUtil.isNotEmpty(collectIds), SysPcAddress::getUserId, collectIds)
|
|
|
.in(CollectionUtil.isNotEmpty(collect), SysPcAddress::getUserId, collect)
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getSource()), SysPcAddress::getSource, sysPcAddressDto.getSource())
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus())
|
|
|
.orderByDesc(SysPcAddress::getOperationTime));
|
|
|
|
|
|
} else {
|
|
|
+
|
|
|
sysPcAddresses = sysPcAddressMapper.selectList(new LambdaQueryWrapper<SysPcAddress>()
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getProvince()), SysPcAddress::getProvince, sysPcAddressDto.getProvince())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.in(SysPcAddress::getSource, Arrays.asList("1", "2"))
|
|
|
+ .in(CollectionUtil.isNotEmpty(collectIds), SysPcAddress::getUserId, collectIds)
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getSource()), SysPcAddress::getSource, sysPcAddressDto.getSource())
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus())
|
|
|
.orderByDesc(SysPcAddress::getOperationTime));
|
|
|
@@ -148,19 +165,6 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
}
|
|
|
|
|
|
private List<String> queryList(List<String> collect, List<String> ids) {
|
|
|
-// if (collect.size() > 0) {
|
|
|
-// for (String id : collect) {
|
|
|
-// List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
-// .eq(SysUser::getLeaderId, id).ne(SysUser::getStatus, 0));
|
|
|
-// if (sysUsers.size() > 0) {
|
|
|
-// List<String> list = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
-// ids.addAll(list);
|
|
|
-// queryList(list, ids);
|
|
|
-//
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
-// }
|
|
|
int size = collect.size();
|
|
|
if (size > 0) {
|
|
|
List<String> strings = new ArrayList<>();
|
|
|
@@ -197,23 +201,37 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
@Override
|
|
|
public SysPcAddressNumVo queryPcNum(SysPcAddressDto sysPcAddressDto) {
|
|
|
SysPcAddressNumVo sysPcAddressNumVo = new SysPcAddressNumVo();
|
|
|
-
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
+ List<String> collect = new ArrayList<>();
|
|
|
+ //admin看所有人
|
|
|
+ if (!"admin".equals(userId)) {
|
|
|
+ List<String> ids = new ArrayList<>();
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
+ .eq(SysUser::getLeaderId, BaseController.getUserId()).ne(SysUser::getStatus, 0));
|
|
|
+ collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
+ if (collect.size() == 0) return sysPcAddressNumVo;
|
|
|
+ List<String> idList = queryList(collect, ids);
|
|
|
+ collect.addAll(idList);
|
|
|
+ }
|
|
|
//区域数量统计
|
|
|
Long all = sysPcAddressMapper.selectCount(new LambdaQueryWrapper<SysPcAddress>()
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getProvince()), SysPcAddress::getProvince, sysPcAddressDto.getProvince())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.in(SysPcAddress::getSource, Arrays.asList("1", "2"))
|
|
|
+ .in(CollectionUtil.isNotEmpty(collect), SysPcAddress::getUserId, collect)
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus()));
|
|
|
Long channelNum = sysPcAddressMapper.selectCount(new LambdaQueryWrapper<SysPcAddress>()
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getProvince()), SysPcAddress::getProvince, sysPcAddressDto.getProvince())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.eq(SysPcAddress::getSource, 1)
|
|
|
+ .in(CollectionUtil.isNotEmpty(collect), SysPcAddress::getUserId, collect)
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus()));
|
|
|
Long proxyNum = sysPcAddressMapper.selectCount(new LambdaQueryWrapper<SysPcAddress>()
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getProvince()), SysPcAddress::getProvince, sysPcAddressDto.getProvince())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
+ .in(CollectionUtil.isNotEmpty(collect), SysPcAddress::getUserId, collect)
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.eq(SysPcAddress::getSource, 2)
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus()));
|
|
|
@@ -223,6 +241,7 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.in(SysPcAddress::getSource, Arrays.asList("1", "2"))
|
|
|
+ .in(CollectionUtil.isNotEmpty(collect), SysPcAddress::getUserId, collect)
|
|
|
.eq(sysPcAddressDto.getStatus() == null, SysPcAddress::getStatus, 1)
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus()));
|
|
|
|
|
|
@@ -238,12 +257,28 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
@Override
|
|
|
public List<RegionInfoVo> queryRegionInfo(SysPcAddressDto sysPcAddressDto) {
|
|
|
List<RegionInfoVo> regionInfoVos = new ArrayList<>();
|
|
|
+ //admin 看所有,其他人看自己下属的人员信息
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
+ List<String> collect = new ArrayList<>();
|
|
|
+ if (!"admin".equals(userId)) {
|
|
|
+
|
|
|
+ //admin看所有人
|
|
|
+ List<String> ids = new ArrayList<>();
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
+ .eq(SysUser::getLeaderId, BaseController.getUserId()).ne(SysUser::getStatus, 0));
|
|
|
+ collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
+ if (collect.size() == 0) return regionInfoVos;
|
|
|
+ List<String> idList = queryList(collect, ids);
|
|
|
+ collect.addAll(idList);
|
|
|
+ }
|
|
|
+
|
|
|
//全部:null 渠道:1 代理:2
|
|
|
List<SysPcAddress> sysPcAddresses = sysPcAddressMapper.selectList(new LambdaQueryWrapper<SysPcAddress>()
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getProvince()), SysPcAddress::getProvince, sysPcAddressDto.getProvince())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getCity()), SysPcAddress::getCity, sysPcAddressDto.getCity())
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getDistrict()), SysPcAddress::getDistrict, sysPcAddressDto.getDistrict())
|
|
|
.in(SysPcAddress::getSource, Arrays.asList("1", "2"))
|
|
|
+ .in(CollectionUtil.isNotEmpty(collect), SysPcAddress::getUserId, collect)
|
|
|
.eq(StringUtils.isNotEmpty(sysPcAddressDto.getSource()), SysPcAddress::getSource, sysPcAddressDto.getSource())
|
|
|
.eq(sysPcAddressDto.getStatus() != null, SysPcAddress::getStatus, sysPcAddressDto.getStatus()));
|
|
|
|
|
|
@@ -276,6 +311,19 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
@Override
|
|
|
public BasePageResult<SysPcAddress> queryPcAddressInfo(PcAddressInfoDto addressInfoDto) {
|
|
|
Page<SysPcAddress> page = new Page<>(addressInfoDto.getPageNum(), addressInfoDto.getPageSize());
|
|
|
+ List<String> arrayList = new ArrayList<>();
|
|
|
+ List<String> collectIds = new ArrayList<>();
|
|
|
+ //admin看所有
|
|
|
+ if (!"admin".equals(BaseController.getUserId())) {
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
+ .eq(SysUser::getLeaderId, BaseController.getUserId()).ne(SysUser::getStatus, 0));
|
|
|
+ collectIds = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
+ if (collectIds.size() > 0) {
|
|
|
+ List<String> idList = queryList(collectIds, arrayList);
|
|
|
+ collectIds.addAll(idList);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
Page<SysPcAddress> insOrdersPage = null;
|
|
|
// 类型:1。机构 2.用户
|
|
|
if (addressInfoDto.getType() == 1) {
|
|
|
@@ -284,6 +332,7 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLat()), SysPcAddress::getLatitude, addressInfoDto.getLat());
|
|
|
wrapper.in(SysPcAddress::getSource, Arrays.asList("1", "2"));
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getSource()), SysPcAddress::getSource, addressInfoDto.getSource());
|
|
|
+ wrapper.in(CollectionUtil.isNotEmpty(collectIds), SysPcAddress::getUserId, collectIds);
|
|
|
wrapper.likeRight(StringUtils.isNotEmpty(addressInfoDto.getQueryId()), SysPcAddress::getUserId, addressInfoDto.getQueryId());
|
|
|
wrapper.eq(addressInfoDto.getStatus() != null, SysPcAddress::getStatus, addressInfoDto.getStatus());
|
|
|
wrapper.orderByDesc(SysPcAddress::getOperationTime);
|
|
|
@@ -295,7 +344,8 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
.eq(SysUser::getLeaderId, addressInfoDto.getQueryId()).ne(SysUser::getStatus, 0));
|
|
|
List<String> collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
- if (collect.size() == 0) return new BasePageResult<>(addressInfoDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
|
+ if (collect.size() == 0)
|
|
|
+ return new BasePageResult<>(addressInfoDto.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(),
|
|
|
insOrdersPage.getRecords());
|
|
|
|
|
|
List<String> idList = queryList(collect, ids);
|
|
|
@@ -305,6 +355,8 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLng()), SysPcAddress::getLongitude, addressInfoDto.getLng());
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLat()), SysPcAddress::getLatitude, addressInfoDto.getLat());
|
|
|
wrapper.in(SysPcAddress::getSource, Arrays.asList("1", "2"));
|
|
|
+ wrapper.in(CollectionUtil.isNotEmpty(collectIds), SysPcAddress::getUserId, collectIds);
|
|
|
+ wrapper.in(CollectionUtil.isNotEmpty(collect), SysPcAddress::getUserId, collect);
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getSource()), SysPcAddress::getSource, addressInfoDto.getSource());
|
|
|
wrapper.eq(addressInfoDto.getStatus() != null, SysPcAddress::getStatus, addressInfoDto.getStatus());
|
|
|
wrapper.orderByDesc(SysPcAddress::getOperationTime);
|
|
|
@@ -316,6 +368,7 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLng()), SysPcAddress::getLongitude, addressInfoDto.getLng());
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getLat()), SysPcAddress::getLatitude, addressInfoDto.getLat());
|
|
|
wrapper.in(SysPcAddress::getSource, Arrays.asList("1", "2"));
|
|
|
+ wrapper.in(CollectionUtil.isNotEmpty(collectIds), SysPcAddress::getUserId, collectIds);
|
|
|
wrapper.eq(StringUtils.isNotEmpty(addressInfoDto.getSource()), SysPcAddress::getSource, addressInfoDto.getSource());
|
|
|
wrapper.eq(addressInfoDto.getStatus() != null, SysPcAddress::getStatus, addressInfoDto.getStatus());
|
|
|
wrapper.orderByDesc(SysPcAddress::getOperationTime);
|
|
|
@@ -330,6 +383,20 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
@Override
|
|
|
public PcAddressHistoryInfoVo getPcAddress(String startTime, String endTime, String source) {
|
|
|
PcAddressHistoryInfoVo pcAddressHistoryInfoVo = new PcAddressHistoryInfoVo();
|
|
|
+ //admin 看所有,其他人看自己下属的人员信息
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
+ List<String> collect = new ArrayList<>();
|
|
|
+ if (!"admin".equals(userId)) {
|
|
|
+ //admin看所有人
|
|
|
+ List<String> ids = new ArrayList<>();
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
+ .eq(SysUser::getLeaderId, BaseController.getUserId()).ne(SysUser::getStatus, 0));
|
|
|
+ collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
+ List<String> idList = queryList(collect, ids);
|
|
|
+ collect.addAll(idList);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
if (StringUtils.isEmpty(startTime) || startTime.equals(endTime)) {
|
|
|
if (StringUtils.isNullOrEmpty(startTime)) {
|
|
|
Date date = new Date();
|
|
|
@@ -341,15 +408,16 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
queryWrapper.select("COUNT(DISTINCT user_id) AS total")
|
|
|
.likeRight(StringUtils.isNotEmpty(startTime), "operation_time", startTime)
|
|
|
.in("source", Arrays.asList(1, 2))
|
|
|
+ .in(CollectionUtil.isNotEmpty(collect), "user_id", collect)
|
|
|
.eq(StringUtils.isNotEmpty(source), "source", source);
|
|
|
Map<String, Object> result = sysPcAddressHistoryService.getMap(queryWrapper);
|
|
|
Long total = (Long) result.get("total");
|
|
|
pcAddressHistoryInfoVo.setOnlineNum(total);
|
|
|
|
|
|
- List<PcAddressHistoryTimeVo> pcAddress = sysPcAddressHistoryMapper.getPcAddress(startTime, source);
|
|
|
+ List<PcAddressHistoryTimeVo> pcAddress = sysPcAddressHistoryMapper.getPcAddress(startTime, source, collect);
|
|
|
pcAddressHistoryInfoVo.setList(pcAddress);
|
|
|
|
|
|
- List<SysPcAddressHistory> sysPcAddressHistories = sysPcAddressHistoryMapper.getPcAddressInfo(startTime, source);
|
|
|
+ List<SysPcAddressHistory> sysPcAddressHistories = sysPcAddressHistoryMapper.getPcAddressInfo(startTime, source, collect);
|
|
|
extracted(sysPcAddressHistories);
|
|
|
System.out.println("********************" + sysPcAddressHistories.size());
|
|
|
pcAddressHistoryInfoVo.setPcAddressList(sysPcAddressHistories);
|
|
|
@@ -371,16 +439,18 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
QueryWrapper<SysPcAddressHistory> queryWrapper = new QueryWrapper<>();
|
|
|
// 指定 COUNT(DISTINCT user_id) 查询
|
|
|
queryWrapper.select("COUNT(DISTINCT user_id) AS total").between("operation_time", startTime, endTime)
|
|
|
- .in("source", Arrays.asList(1, 2)).eq(StringUtils.isNotEmpty(source), "source", source);
|
|
|
+ .in("source", Arrays.asList(1, 2))
|
|
|
+ .eq(StringUtils.isNotEmpty(source), "source", source)
|
|
|
+ .in(CollectionUtil.isNotEmpty(collect), "user_id", collect);
|
|
|
Map<String, Object> result = sysPcAddressHistoryService.getMap(queryWrapper);
|
|
|
Long total = (Long) result.get("total");
|
|
|
pcAddressHistoryInfoVo.setOnlineNum(total);
|
|
|
|
|
|
- List<PcAddressHistoryTimeVo> pcAddress = sysPcAddressHistoryMapper.getPcAddressSection(startTime, endTime, source);
|
|
|
+ List<PcAddressHistoryTimeVo> pcAddress = sysPcAddressHistoryMapper.getPcAddressSection(startTime, endTime, source, collect);
|
|
|
|
|
|
pcAddressHistoryInfoVo.setList(pcAddress);
|
|
|
|
|
|
- List<SysPcAddressHistory> sysPcAddressHistories = sysPcAddressHistoryMapper.getPcAddressHistory(startTime, endTime, source);
|
|
|
+ List<SysPcAddressHistory> sysPcAddressHistories = sysPcAddressHistoryMapper.getPcAddressHistory(startTime, endTime, source, collect);
|
|
|
extracted(sysPcAddressHistories);
|
|
|
System.out.println("********************" + sysPcAddressHistories.size());
|
|
|
pcAddressHistoryInfoVo.setPcAddressList(sysPcAddressHistories);
|
|
|
@@ -411,8 +481,46 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
@Override
|
|
|
public BasePageResult<SysPcAddressHistory> queryPcAddressHistoryInfo(PcAddressInfoDto addressInfoDto) {
|
|
|
Page page = new Page(addressInfoDto.getPageNum(), addressInfoDto.getPageSize());
|
|
|
+ IPage<SysPcAddressHistory> sysPcAddressHistoryIPage = null;
|
|
|
+ //登陆人的下属id
|
|
|
+ String userId = BaseController.getUserId();
|
|
|
+ List<String> collectIds = new ArrayList<>();
|
|
|
+ if (!"admin".equals(userId)) {
|
|
|
+ //admin看所有人
|
|
|
+ List<String> ids = new ArrayList<>();
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
+ .eq(SysUser::getLeaderId, BaseController.getUserId()).ne(SysUser::getStatus, 0));
|
|
|
+ collectIds = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
+ if (collectIds.size() == 0)
|
|
|
+ return new BasePageResult<>(addressInfoDto.getPageNum(), addressInfoDto.getPageSize(), 0l, 0l, null);
|
|
|
+ List<String> idList = queryList(collectIds, ids);
|
|
|
+ collectIds.addAll(idList);
|
|
|
+ }
|
|
|
+ addressInfoDto.setCollectIds(collectIds);
|
|
|
+ // 类型:1。机构树 2.用户树 0:默认查询
|
|
|
+ Integer type = addressInfoDto.getType();
|
|
|
+ if (type == 1) {
|
|
|
+
|
|
|
+ sysPcAddressHistoryIPage = sysPcAddressHistoryMapper.queryAddressHistory(page, addressInfoDto);
|
|
|
+ } else if (type == 2) {
|
|
|
+
|
|
|
+ List<String> ids = new ArrayList<>();
|
|
|
+ List<SysUser> sysUsers = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
|
|
|
+ .eq(SysUser::getLeaderId, addressInfoDto.getQueryId()).ne(SysUser::getStatus, 0));
|
|
|
+ List<String> collect = sysUsers.stream().map(SysUser::getId).collect(Collectors.toList());
|
|
|
+ if (collect.size() > 0) {
|
|
|
+ List<String> idList = queryList(collect, ids);
|
|
|
+ collect.addAll(idList);
|
|
|
+ }
|
|
|
+ addressInfoDto.setQueryId("");
|
|
|
+ addressInfoDto.setCollect(collect);
|
|
|
+ sysPcAddressHistoryIPage = sysPcAddressHistoryMapper.queryAddressHistory(page, addressInfoDto);
|
|
|
+
|
|
|
+ } else {
|
|
|
+
|
|
|
+ sysPcAddressHistoryIPage = sysPcAddressHistoryMapper.queryAddressHistory(page, addressInfoDto);
|
|
|
+ }
|
|
|
|
|
|
- IPage<SysPcAddressHistory> sysPcAddressHistoryIPage = sysPcAddressHistoryMapper.queryAddressHistory(page, addressInfoDto);
|
|
|
|
|
|
return new BasePageResult<>(addressInfoDto.getPageNum(), addressInfoDto.getPageSize(), sysPcAddressHistoryIPage.getTotal(), sysPcAddressHistoryIPage.getPages(),
|
|
|
sysPcAddressHistoryIPage.getRecords());
|
|
|
@@ -439,7 +547,7 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
List<SysDeptTreeVo> resultDeptList = this.getFiveLevelDeptKzt(byUserId);
|
|
|
kztUserDeptTreeDto.setDeptList(resultDeptList);
|
|
|
if (!userId.contains("M")) {
|
|
|
- if (sysDeptList1.size()==0) {
|
|
|
+ if (sysDeptList1.size() == 0) {
|
|
|
List<SysUser> resultList = this.getUserTreeHx(byUserId);
|
|
|
kztUserDeptTreeDto.setUserList(resultList);
|
|
|
}
|
|
|
@@ -547,7 +655,7 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
queryWrapper.isNotNull("leader_id");
|
|
|
List<SysUser> userList = null;
|
|
|
List<SysUser> users = sysUserMapper.selectList(queryWrapper);
|
|
|
- if (users.size()>0) {
|
|
|
+ if (users.size() > 0) {
|
|
|
//排除前线员工
|
|
|
userList = users.stream().filter(SysUser -> !SysUser.getId().contains("M")).collect(Collectors.toList());
|
|
|
//填充所属机构名称
|
|
|
@@ -569,11 +677,15 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
}
|
|
|
// 递归构建用户树结构
|
|
|
buildUserTree(topUsers, userList);
|
|
|
+ //登陆人员无下属不展示
|
|
|
+// SysUser sysUser1 = topUsers.get(0);
|
|
|
+// if (sysUser1.getChildren().size() == 0) {
|
|
|
+// return new ArrayList<>();
|
|
|
+// }
|
|
|
return topUsers;
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
private void buildUserTree(List<SysUser> topUsers, List<SysUser> users) {
|
|
|
for (SysUser user : topUsers) {
|
|
|
List<SysUser> children = new ArrayList<>();
|
|
|
@@ -596,70 +708,70 @@ public class SysPcAddressServiceImpl extends ServiceImpl<SysPcAddressMapper, Sys
|
|
|
SysDept sysDept5 = sysDeptMapper.selectById(sysDept.getParentId());
|
|
|
if (sysDept5 == null) {
|
|
|
stringBuilder.append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
SysDept sysDept4 = sysDeptMapper.selectById(sysDept5.getParentId());
|
|
|
if (sysDept4 == null) {
|
|
|
stringBuilder.append(sysDept5.getName()).append("-").append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
SysDept sysDept3 = sysDeptMapper.selectById(sysDept4.getParentId());
|
|
|
if (sysDept3 == null) {
|
|
|
stringBuilder.append(sysDept4.getName())
|
|
|
.append("-").append(sysDept5.getName()).append("-").append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
SysDept sysDept2 = sysDeptMapper.selectById(sysDept3.getParentId());
|
|
|
if (sysDept2 == null) {
|
|
|
stringBuilder.append(sysDept3.getName()).append("-").append(sysDept4.getName())
|
|
|
.append("-").append(sysDept5.getName()).append("-").append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
stringBuilder.append(sysDept2.getName()).append("-").append(sysDept3.getName())
|
|
|
.append("-").append(sysDept4.getName()).append("-").append(sysDept5.getName()).append("-").append(sysDept.getName());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }else if (sysDept.getComlevel().equals("5")) {
|
|
|
+ } else if (sysDept.getComlevel().equals("5")) {
|
|
|
SysDept sysDept4 = sysDeptMapper.selectById(sysDept.getParentId());
|
|
|
if (sysDept4 == null) {
|
|
|
stringBuilder.append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
SysDept sysDept3 = sysDeptMapper.selectById(sysDept4.getParentId());
|
|
|
if (sysDept3 == null) {
|
|
|
stringBuilder.append(sysDept4.getName()).append("-").append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
SysDept sysDept2 = sysDeptMapper.selectById(sysDept3.getParentId());
|
|
|
if (sysDept2 == null) {
|
|
|
stringBuilder.append(sysDept3.getName()).append("-").append(sysDept4.getName()).append("-").append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
stringBuilder.append(sysDept2.getName()).append("-").append(sysDept3.getName()).append("-").append(sysDept4.getName()).append("-").append(sysDept.getName());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }else if (sysDept.getComlevel().equals("4")) {
|
|
|
+ } else if (sysDept.getComlevel().equals("4")) {
|
|
|
SysDept sysDept3 = sysDeptMapper.selectById(sysDept.getParentId());
|
|
|
if (sysDept3 == null) {
|
|
|
stringBuilder.append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
SysDept sysDept2 = sysDeptMapper.selectById(sysDept3.getParentId());
|
|
|
if (sysDept2 == null) {
|
|
|
stringBuilder.append(sysDept3.getName()).append("-").append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
stringBuilder.append(sysDept2.getName()).append("-").append(sysDept3.getName()).append("-").append(sysDept.getName());
|
|
|
}
|
|
|
}
|
|
|
- }else if (sysDept.getComlevel().equals("3")) {
|
|
|
+ } else if (sysDept.getComlevel().equals("3")) {
|
|
|
SysDept sysDept2 = sysDeptMapper.selectById(sysDept.getParentId());
|
|
|
if (sysDept2 == null) {
|
|
|
stringBuilder.append(sysDept.getName());
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
stringBuilder.append(sysDept2.getName()).append("-").append(sysDept.getName());
|
|
|
}
|
|
|
|
|
|
- }else if (sysDept.getComlevel().equals("2")) {
|
|
|
+ } else if (sysDept.getComlevel().equals("2")) {
|
|
|
stringBuilder.append(sysDept.getName());
|
|
|
}
|
|
|
String s = stringBuilder.toString();
|
|
|
if (s.contains("总部-")) {
|
|
|
- stringBuilder.replace(0,3,"");
|
|
|
+ stringBuilder.replace(0, 3, "");
|
|
|
}
|
|
|
|
|
|
|