|
|
|
@ -1,5 +1,6 @@ |
|
|
|
package com.zdxt.code.service.impl; |
|
|
|
|
|
|
|
import com.zdxt.auth.project.system.dept.mapper.DeptMapper; |
|
|
|
import com.zdxt.code.domain.Zfryjdm2405301; |
|
|
|
import com.zdxt.code.domain.Zfztjdm111915; |
|
|
|
import com.zdxt.code.mapper.Zfztjdm111915Mapper; |
|
|
|
@ -7,11 +8,14 @@ import com.zdxt.code.service.IZfryjdm2405301Service; |
|
|
|
import com.zdxt.code.service.IZfztjdm111915Service; |
|
|
|
import com.zdxt.common.annotation.DataScope; |
|
|
|
import com.zdxt.common.util.IdCardCryptoUtil; |
|
|
|
import com.zdxt.domain.auth.Dept; |
|
|
|
import org.apache.commons.collections.CollectionUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.HashSet; |
|
|
|
import java.util.List; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
@ -19,6 +23,9 @@ import java.util.stream.Collectors; |
|
|
|
public class Zfztjdm111915ServiceImpl implements IZfztjdm111915Service { |
|
|
|
@Autowired |
|
|
|
private Zfztjdm111915Mapper zfztjdm111915Mapper; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private DeptMapper deptMapper; |
|
|
|
@Autowired |
|
|
|
private IZfryjdm2405301Service iZfryjdm2405301Service; |
|
|
|
@Override |
|
|
|
@ -37,18 +44,24 @@ public class Zfztjdm111915ServiceImpl implements IZfztjdm111915Service { |
|
|
|
public List<Zfztjdm111915> getDeptStaticList(Zfryjdm2405301 zfryjdm2405301) { |
|
|
|
// int totalNumber=0;
|
|
|
|
List<Zfztjdm111915> zfztjdm111915List = zfztjdm111915Mapper.selectZfztjdmListAndDeptScope(zfryjdm2405301); |
|
|
|
List<Dept> depts = deptMapper.selectDeptByZone(); |
|
|
|
if (CollectionUtils.isEmpty(depts)) return new ArrayList<>(); |
|
|
|
HashSet<String> collect = depts.stream().map(Dept::getDeptId).collect(Collectors.toCollection(HashSet::new)); |
|
|
|
zfztjdm111915List = zfztjdm111915List.stream().filter(i -> collect.contains(i.getDeptId())).collect(Collectors.toList()); |
|
|
|
// Map<String,Zfztjdm111915> zfztjdm111915Map=zfztjdm111915List.stream().collect(Collectors.toMap(Zfztjdm111915::getCode, Function.identity()));
|
|
|
|
List<Zfztjdm111915> hasList=new ArrayList<>(); |
|
|
|
List<Zfryjdm2405301> zfryjdm2405301List = iZfryjdm2405301Service.selectZfryjdmAndUserListGroupBy(zfryjdm2405301); |
|
|
|
for (int i = 0; i < zfztjdm111915List.size(); i++) { |
|
|
|
int j=i; |
|
|
|
List<Zfryjdm2405301> ancestorList=zfryjdm2405301List.stream().filter(item->ancestorHasIt(item.getAncestors(),zfztjdm111915List.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
List<Zfztjdm111915> finalZfztjdm111915List = zfztjdm111915List; |
|
|
|
List<Zfryjdm2405301> ancestorList=zfryjdm2405301List.stream().filter(item->ancestorHasIt(item.getAncestors(), finalZfztjdm111915List.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
// totalNumber=totalNumber+ancestorList.size();
|
|
|
|
zfztjdm111915List.get(i).setNumber(ancestorList.size()); |
|
|
|
if(ancestorList.size()>0){ |
|
|
|
hasList.add(zfztjdm111915List.get(i)); |
|
|
|
} |
|
|
|
zfryjdm2405301List=zfryjdm2405301List.stream().filter(item->!ancestorHasIt(item.getAncestors(),zfztjdm111915List.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
List<Zfztjdm111915> finalZfztjdm111915List1 = zfztjdm111915List; |
|
|
|
zfryjdm2405301List=zfryjdm2405301List.stream().filter(item->!ancestorHasIt(item.getAncestors(), finalZfztjdm111915List1.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
} |
|
|
|
if((zfryjdm2405301.getName()!=null&&!zfryjdm2405301.getName().equals(""))||(zfryjdm2405301.getZfcode()!=null&&!zfryjdm2405301.getZfcode().equals(""))){ |
|
|
|
return hasList; |
|
|
|
@ -61,14 +74,20 @@ public class Zfztjdm111915ServiceImpl implements IZfztjdm111915Service { |
|
|
|
public int getZFRYNumber(Zfryjdm2405301 zfryjdm2405301) { |
|
|
|
int totalNumber=0; |
|
|
|
List<Zfztjdm111915> zfztjdm111915List = zfztjdm111915Mapper.selectZfztjdmListAndDeptScope(zfryjdm2405301); |
|
|
|
List<Dept> depts = deptMapper.selectDeptByZone(); |
|
|
|
if (CollectionUtils.isEmpty(depts)) return 0; |
|
|
|
HashSet<String> collect = depts.stream().map(Dept::getDeptId).collect(Collectors.toCollection(HashSet::new)); |
|
|
|
zfztjdm111915List = zfztjdm111915List.stream().filter(i -> collect.contains(i.getDeptId())).collect(Collectors.toList()); |
|
|
|
// Map<String,Zfztjdm111915> zfztjdm111915Map=zfztjdm111915List.stream().collect(Collectors.toMap(Zfztjdm111915::getCode, Function.identity()));
|
|
|
|
List<Zfryjdm2405301> zfryjdm2405301List = iZfryjdm2405301Service.selectZfryjdmAndUserListGroupBy(zfryjdm2405301); |
|
|
|
for (int i = 0; i < zfztjdm111915List.size(); i++) { |
|
|
|
int j=i; |
|
|
|
List<Zfryjdm2405301> ancestorList=zfryjdm2405301List.stream().filter(item->ancestorHasIt(item.getAncestors(),zfztjdm111915List.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
List<Zfztjdm111915> finalZfztjdm111915List = zfztjdm111915List; |
|
|
|
List<Zfryjdm2405301> ancestorList=zfryjdm2405301List.stream().filter(item->ancestorHasIt(item.getAncestors(), finalZfztjdm111915List.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
totalNumber=totalNumber+ancestorList.size(); |
|
|
|
zfztjdm111915List.get(i).setNumber(ancestorList.size()); |
|
|
|
zfryjdm2405301List=zfryjdm2405301List.stream().filter(item->!ancestorHasIt(item.getAncestors(),zfztjdm111915List.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
List<Zfztjdm111915> finalZfztjdm111915List1 = zfztjdm111915List; |
|
|
|
zfryjdm2405301List=zfryjdm2405301List.stream().filter(item->!ancestorHasIt(item.getAncestors(), finalZfztjdm111915List1.get(j).getDeptId(),item.getDeptId())).collect(Collectors.toList()); |
|
|
|
} |
|
|
|
return totalNumber; |
|
|
|
} |
|
|
|
|