|
|
@@ -13,10 +13,10 @@ import com.ydtech.modules.admin.model.SysGeographyPositionRecord;
|
|
|
import com.ydtech.modules.admin.model.SysUser;
|
|
|
import com.ydtech.modules.admin.model.dto.SysGeographyPositionDto;
|
|
|
import com.ydtech.modules.admin.model.dto.SysGeographyPositionPageDto;
|
|
|
-import com.ydtech.modules.admin.model.po.SysPcAddress;
|
|
|
+import com.ydtech.modules.admin.model.dto.SysPcAddressNumVo;
|
|
|
+import com.ydtech.modules.admin.model.vo.RegionInfoVo;
|
|
|
import com.ydtech.modules.admin.model.vo.SysGeographyPositionInfoVo;
|
|
|
import com.ydtech.modules.admin.model.vo.SysGeographyPositionVo;
|
|
|
-import com.ydtech.modules.admin.service.SysDeptService;
|
|
|
import com.ydtech.modules.admin.service.SysGeographyPositionRecordService;
|
|
|
import com.ydtech.modules.admin.service.SysGeographyPositionService;
|
|
|
import com.ydtech.modules.admin.service.SysUserService;
|
|
|
@@ -27,6 +27,8 @@ import org.springframework.stereotype.Service;
|
|
|
import javax.annotation.Resource;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@Service("SysGeographyPositionService")
|
|
|
public class SysGeographyPositionServiceImpl extends ServiceImpl<SysGeographyPositionMapper, SysGeographyPosition> implements SysGeographyPositionService {
|
|
|
@@ -93,4 +95,79 @@ public class SysGeographyPositionServiceImpl extends ServiceImpl<SysGeographyPos
|
|
|
}
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
+ public SysPcAddressNumVo queryPcNum() {
|
|
|
+ SysPcAddressNumVo sysPcAddressNumVo = new SysPcAddressNumVo();
|
|
|
+
|
|
|
+ Long all = sysGeographyPositionMapper.selectCount(new LambdaQueryWrapper<SysGeographyPosition>());
|
|
|
+ Long channelNum = sysGeographyPositionMapper.selectCount(new LambdaQueryWrapper<SysGeographyPosition>().eq(SysGeographyPosition::getSource,1));
|
|
|
+ Long proxyNum = sysGeographyPositionMapper.selectCount(new LambdaQueryWrapper<SysGeographyPosition>().eq(SysGeographyPosition::getSource,2));
|
|
|
+ sysPcAddressNumVo.setAllNum(all);
|
|
|
+ sysPcAddressNumVo.setProxyNum(proxyNum);
|
|
|
+ sysPcAddressNumVo.setChannelNum(channelNum);
|
|
|
+
|
|
|
+
|
|
|
+ return sysPcAddressNumVo;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<RegionInfoVo> queryRegionInfo(Integer type) {
|
|
|
+ List<RegionInfoVo> regionInfoVos = new ArrayList<>();
|
|
|
+ //全部:0 渠道:1 代理:2
|
|
|
+ if (type == 0){
|
|
|
+ List<SysGeographyPosition> list = list();
|
|
|
+ Map<String, List<SysGeographyPosition>> map = list.stream().collect(Collectors.groupingBy(SysGeographyPosition::getDistrict));
|
|
|
+
|
|
|
+ for (Map.Entry<String, List<SysGeographyPosition>> entry : map.entrySet()) {
|
|
|
+ RegionInfoVo regionInfoVo = new RegionInfoVo();
|
|
|
+ String key = entry.getKey();
|
|
|
+ List<SysGeographyPosition> list1 = entry.getValue();
|
|
|
+ int listSize = list1.size();
|
|
|
+ System.out.println("Key: " + key + ", List size: " + listSize);
|
|
|
+ regionInfoVo.setDistrictName(key);
|
|
|
+ regionInfoVo.setNumber(list1.size());
|
|
|
+ regionInfoVos.add(regionInfoVo);
|
|
|
+ }
|
|
|
+
|
|
|
+ }else if (type == 1) {
|
|
|
+ List<SysGeographyPosition> sysPcAddresses = sysGeographyPositionMapper.selectList(new LambdaQueryWrapper<SysGeographyPosition>().eq(SysGeographyPosition::getSource, 1));
|
|
|
+ Map<String, List<SysGeographyPosition>> map = sysPcAddresses.stream().collect(Collectors.groupingBy(SysGeographyPosition::getDistrict));
|
|
|
+
|
|
|
+ for (Map.Entry<String, List<SysGeographyPosition>> entry : map.entrySet()) {
|
|
|
+ RegionInfoVo regionInfoVo = new RegionInfoVo();
|
|
|
+ String key = entry.getKey();
|
|
|
+ List<SysGeographyPosition> list1 = entry.getValue();
|
|
|
+ int listSize = list1.size();
|
|
|
+ System.out.println("Key: " + key + ", List size: " + listSize);
|
|
|
+ regionInfoVo.setDistrictName(key);
|
|
|
+ regionInfoVo.setNumber(list1.size());
|
|
|
+ regionInfoVos.add(regionInfoVo);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }else if (type == 2){
|
|
|
+
|
|
|
+ List<SysGeographyPosition> sysPcAddresses = sysGeographyPositionMapper.selectList(new LambdaQueryWrapper<SysGeographyPosition>().eq(SysGeographyPosition::getSource, 2));
|
|
|
+ Map<String, List<SysGeographyPosition>> map = sysPcAddresses.stream().collect(Collectors.groupingBy(SysGeographyPosition::getDistrict));
|
|
|
+
|
|
|
+ for (Map.Entry<String, List<SysGeographyPosition>> entry : map.entrySet()) {
|
|
|
+ RegionInfoVo regionInfoVo = new RegionInfoVo();
|
|
|
+ String key = entry.getKey();
|
|
|
+ List<SysGeographyPosition> list1 = entry.getValue();
|
|
|
+ int listSize = list1.size();
|
|
|
+ System.out.println("Key: " + key + ", List size: " + listSize);
|
|
|
+ regionInfoVo.setDistrictName(key);
|
|
|
+ regionInfoVo.setNumber(list1.size());
|
|
|
+ regionInfoVos.add(regionInfoVo);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ return regionInfoVos;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|