|
|
@@ -4,7 +4,6 @@ package com.toolpage.toolpageservice.ToolPageController;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.json.JSONArray;
|
|
|
-import cn.hutool.json.JSONObject;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.toolpage.toolpageservice.ToolPageController.request.OrderAndToolPageId;
|
|
|
import com.toolpage.toolpageservice.ToolPageController.request.ToolPageOrder;
|
|
|
@@ -14,19 +13,17 @@ import com.toolpage.toolpageservice.entity.ToolPage;
|
|
|
import com.toolpage.toolpageservice.entity.ToolPageRollBack;
|
|
|
import com.toolpage.toolpageservice.repository.ToolPageRepository;
|
|
|
import com.toolpage.toolpageservice.repository.ToolPageRollbackRepository;
|
|
|
-import com.toolpage.toolpageservice.service.ToolPageService;
|
|
|
|
|
|
import com.toolpage.toolpageservice.tool.RW;
|
|
|
import jakarta.annotation.Resource;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
-import reactor.core.Disposable;
|
|
|
import reactor.core.publisher.Flux;
|
|
|
import reactor.core.publisher.Mono;
|
|
|
|
|
|
import java.time.ZonedDateTime;
|
|
|
import java.util.*;
|
|
|
+import java.util.concurrent.atomic.AtomicReference;
|
|
|
import java.util.stream.Collectors;
|
|
|
-import java.util.stream.Stream;
|
|
|
|
|
|
|
|
|
@RestController
|
|
|
@@ -57,39 +54,44 @@ public class ToolPageController {
|
|
|
return RW.success(save);
|
|
|
}
|
|
|
|
|
|
+ @GetMapping("getChildrens/{toolPageIds}")
|
|
|
+ public Mono<RW<List<ToolPage>>> getChildrens(@PathVariable("toolPageIds") Long[] toolPageIds){
|
|
|
+ Mono<List<ToolPage>> rt = repository.findAllById(List.of(toolPageIds))
|
|
|
+ .switchIfEmpty(Mono.error(new IllegalStateException("查询为空")))
|
|
|
+ .onErrorResume(throwable -> Mono.error(new Exception(throwable.getMessage()))).collectList();
|
|
|
+ return RW.success(rt);
|
|
|
+ }
|
|
|
|
|
|
@GetMapping("getOneById/{toolPageId}")
|
|
|
public Mono<RW<ToolPageRes>> getOneById(@PathVariable("toolPageId") Long toolPageId){
|
|
|
- Mono<ToolPageRes> map = repository.findById(toolPageId)
|
|
|
+
|
|
|
+ Mono<ToolPageRes> rt = repository.findById(toolPageId)
|
|
|
.switchIfEmpty(Mono.error(new IllegalStateException("查询为空")))
|
|
|
- .onErrorResume(throwable -> Mono.error(new Exception(throwable.getMessage()))).map(m -> {
|
|
|
+ .onErrorResume(throwable -> Mono.error(new Exception(throwable.getMessage())))
|
|
|
+ .map(m -> {
|
|
|
ToolPageRes res = new ToolPageRes();
|
|
|
res.setToolPage(m);
|
|
|
String s = m.relatedPageContent();
|
|
|
+ ArrayList<OrderAndToolPageId> orderAndToolPageIds = new ArrayList<>();
|
|
|
+ System.out.println("1");
|
|
|
if (Objects.nonNull(s) && !"".equals(s)) {
|
|
|
+ System.out.println("12");
|
|
|
JSONArray jsonArray = JSONUtil.parseArray(s);
|
|
|
- List<Long> toolPageId1 = jsonArray.stream().map(m1 -> JSONUtil.parseObj(m1).get("toolPageId", Long.class)).collect(Collectors.toList());
|
|
|
- ArrayList<ToolPageOrder> toolPageOrders = new ArrayList<>();
|
|
|
- repository.findAllById(toolPageId1).subscribe(m2 -> {
|
|
|
- ToolPageOrder toolPageOrder = new ToolPageOrder();
|
|
|
- Optional<Integer> first = jsonArray.stream().map(JSONUtil::parseObj)
|
|
|
- .filter(f -> f.containsKey("toolPageId") && f.containsKey("order"))
|
|
|
- .filter(f12->{
|
|
|
- long toolPageId2 = f12.get("toolPageId",Long.class);
|
|
|
- long aLong = m2.toolPageId();
|
|
|
- return toolPageId2==aLong;
|
|
|
- }).map(f -> f.get("order", Integer.class)).findFirst();
|
|
|
- toolPageOrder.setToolPage(m2);
|
|
|
- first.ifPresent(toolPageOrder::setOrder);
|
|
|
- toolPageOrders.add(toolPageOrder);
|
|
|
+ jsonArray.stream().map(JSONUtil::parseObj).forEach(fe -> {
|
|
|
+ OrderAndToolPageId orderAndToolPageId = new OrderAndToolPageId();
|
|
|
+ BeanUtil.copyProperties(fe, orderAndToolPageId);
|
|
|
+ orderAndToolPageIds.add(orderAndToolPageId);
|
|
|
});
|
|
|
- res.setChildrens(toolPageOrders);
|
|
|
- }else {
|
|
|
- res.setChildrens(new ArrayList<>());
|
|
|
}
|
|
|
+ res.setChildrens(orderAndToolPageIds);
|
|
|
+
|
|
|
+ res.setToolPageIds(orderAndToolPageIds.stream().map(OrderAndToolPageId::getToolPageId).collect(Collectors.toList()));
|
|
|
+ System.out.println(res);
|
|
|
return res;
|
|
|
});
|
|
|
- return RW.success(map);
|
|
|
+
|
|
|
+
|
|
|
+ return RW.success(rt);
|
|
|
}
|
|
|
|
|
|
}
|