瀏覽代碼

查询不到公司处理

ct 1 月之前
父節點
當前提交
6af34ee823

+ 21 - 4
fs-service-system/src/main/java/com/fs/course/service/impl/FsUserWatchStatisticsServiceImpl.java

@@ -130,9 +130,19 @@ public class FsUserWatchStatisticsServiceImpl extends ServiceImpl<FsUserWatchSta
                 .map(Long::valueOf)
                 .collect(Collectors.toSet());
 
-        // 获取公司信息
-        List<Company> companies = companyMapper.selectCompanyByIds(companyIds);
-        Map<Long, Company> companyMap = companies.stream().collect(Collectors.toMap(Company::getCompanyId, Function.identity()));
+
+        boolean companyFlag = true;
+        Map<Long, Company> companyMap;
+        if (companyIds.isEmpty()) {
+            companyMap = new HashMap<>();
+            companyFlag = false;
+        } else {
+            companyFlag = true;
+            // 获取公司信息
+            List<Company> companies = companyMapper.selectCompanyByIds(companyIds);
+            companyMap = companies.stream().collect(Collectors.toMap(Company::getCompanyId, Function.identity()));
+        }
+
 
         // 获取看课统计(按营期按公司)
         List<FsUserWatchStatistics> courseWatchStatistics = baseMapper.getCourseWatchStatistics();
@@ -142,11 +152,18 @@ public class FsUserWatchStatisticsServiceImpl extends ServiceImpl<FsUserWatchSta
         List<FsUserWatchStatistics> userTotal = fsUserMapper.selectFsUserTotal();
         Map<String, FsUserWatchStatistics> userTotalMap = userTotal.stream().collect(Collectors.toMap(FsUserWatchStatistics::getCompanyId, Function.identity()));
 
+        boolean finalCompanyFlag = companyFlag;
         List<FsUserWatchStatistics> list = fsUserCoursePeriods.stream()
                 .flatMap(item -> Arrays.stream(item.getCompanyId().split(","))
                         .map(companyIdStr -> {
                             Long companyId = Long.valueOf(companyIdStr.trim());
-                            Company company = companyMap.get(companyId);
+                            Company company;
+                            if (finalCompanyFlag){
+                                company = companyMap.get(companyId);
+                            } else {
+                                company = null;
+                            }
+
 
                             // 赋值
                             FsUserWatchStatistics fsUserWatchStatistics = new FsUserWatchStatistics();