package com.yanzhu.module.ai.framework.ai.core.model.wenduoduo.api;
import com.yanzhu.framework.common.util.json.JsonUtils;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.http.HttpRequest;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.util.Assert;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.reactive.function.BodyInserters;
import org.springframework.web.reactive.function.client.ClientResponse;
import org.springframework.web.reactive.function.client.WebClient;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.function.Function;
import java.util.function.Predicate;
/**
* 文多多 API
*
* @author xiaoxin
* @see PPT 生成 API
*/
@Slf4j
public class WenDuoDuoPptApi {
public static final String BASE_URL = "https://docmee.cn";
public static final String TOKEN_NAME = "token";
private final WebClient webClient;
private final Predicate STATUS_PREDICATE = status -> status.series {) != HttpStatus.Series.SUCCESSFUL;
private final Function