package cn.com.ctop.toutiao.service;

import cn.com.ctop.common.module.entity.CtopOauthToken;
import cn.com.ctop.toutiao.entity.ByteDanceUserOrientationTemplate;
import com.alibaba.fastjson.JSONObject;

import java.util.Map;

/**
 * @author jeecg-boot
 */
public interface IByteDanceAdvertiserDataService {
    Map<String, Object> getAdvertiserInfo(String accountId);

    Map<String, Object> getAdvertiserPlan(String accountId, String ids, String date);

    Map<String, Object> getAdvertiserCampaign(String accountId, String ids, String date);

    Map<String, Object> getAdvertiserBudget(String accountId);

    Map<String, Object> getAdvertiserCreativeMaterial(String accountId, String creativeIds);

    Map<String, Object> advertiserCampaignUpdateStatus(String accountId, String campaignIds, String optStatus);

    Map<String, Object> advertiserCampaignUpdate(String accountId, Long campaignId, String budgetMode, Integer budget, String campaignName);

    Map<String, Object> advertiserPlanUpdateStatus(String accountId, String adIds, String optStatus);

    Map<String, Object> advertiserPlanUpdateBid(String accountId, String adIds, String bids);

    Map<String, Object> advertiserPlanUpdateBudget(String accountId, String adIds, String budgets);

    Map<String, Object> advertiserCustomAudienceSelect(String accountId);

    Map<String, Object> advertiserAdUpdate(String accountId, Long adId, ByteDanceUserOrientationTemplate template);

    JSONObject updateAd(CtopOauthToken token, Long adId, ByteDanceUserOrientationTemplate template, JSONObject requestJson);

    JSONObject setUserOrentationData(JSONObject data, ByteDanceUserOrientationTemplate template, Long adId, JSONObject requestJson);

    JSONObject setUserOrentationData(JSONObject data, ByteDanceUserOrientationTemplate template);

    Map<String, Object> getAdvertiserCampaignList(String accountId);

    Map<String, Object> flowPackageGet(String accountId);

    void getMaterialList(CtopOauthToken token);
}
