Просмотр исходного кода

fix:用户分组分页查询数据返回

fantingwei 1 год назад
Родитель
Сommit
38b0fdb208

+ 23 - 5
smsb-customer-manager-app/src/main/java/com/inspur/customer/service/org/SmsbMessageGroupServiceImpl.java

@@ -22,10 +22,7 @@ import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.util.CollectionUtils;
 
 import java.time.LocalDateTime;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -90,7 +87,28 @@ public class SmsbMessageGroupServiceImpl extends ServiceImpl<SmsbMessageGroupMap
 
         page = this.page(page, queryWrapper);
 
-        return PageResponse.of(page.getRecords(), (int) page.getTotal(), (int) page.getSize(), (int) page.getCurrent());
+        List<SmsbMessageGroupDO> records = page.getRecords();
+        List<SmsbMessageGroupDto> result = new ArrayList<>(records.size());
+        records.forEach(record -> {
+            SmsbMessageGroupDto dto = BeanCopyUtils.copy(record, SmsbMessageGroupDto.class);
+            result.add(dto);
+            if (Objects.equals(record.getInformLevel(), 9999)) {
+                // 转化成集合
+                String informType = record.getInformType();
+                dto.setInformType(Arrays.stream(informType.replaceAll("\\[|\\]|\\s", "").split(","))
+                    .map(s -> {
+                        try {
+                            return Integer.parseInt(s);
+                        }catch (NumberFormatException e){
+                            return null;
+                        }
+                    })
+                    .filter(Objects::nonNull)
+                    .collect(Collectors.toList()));
+            }
+        });
+
+        return PageResponse.of(result, (int) page.getTotal(), (int) page.getSize(), (int) page.getCurrent());
     }
 
     @Override