Commit 5c25f563 by chenmingyang

modify ad group api name and dto info

parent 31ebf22f
package io.better.toutiao.api.delivery;
import io.better.toutiao.dto.TouTiaoRespDTO;
import io.better.toutiao.dto.delivery.group.AdvertisingGroupReqDTO;
import io.better.toutiao.dto.delivery.group.AdvertisingGroupRespDTO;
import io.better.toutiao.dto.delivery.group.AdGroupInfoDTO;
import io.better.toutiao.dto.delivery.group.AdGroupRespDTO;
import io.better.toutiao.dto.status.UpdateStatusDTO;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.*;
......@@ -14,21 +14,11 @@ import java.util.Map;
*
* @author better create in 2019-04-28 16:27
*/
@FeignClient(value = "https://ad.toutiao.com/open_api/2", url = "/campaign")
public interface AdvertisingGroupApi {
@FeignClient(value = "${toutiao.api.advertiser-url}", url = "/campaign")
public interface AdGroupApi {
/**
* The constant BUDGET_MODE_INFINITE.
*/
String BUDGET_MODE_INFINITE = "BUDGET_MODE_INFINITE";
/**
* The constant BUDGET_MODE_DAY.
*/
String BUDGET_MODE_DAY = "BUDGET_MODE_DAY";
/**
* 广告投放-获取某广告主的广告组信息
* 广告投放-获取广告组信息
*
* @param accessToken 访问凭证
* @param advertiserId 广告主ID
......@@ -39,34 +29,37 @@ public interface AdvertisingGroupApi {
* @return advertising group
*/
@GetMapping(value = "/get")
TouTiaoRespDTO<AdvertisingGroupRespDTO> getAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
TouTiaoRespDTO<AdGroupRespDTO> getAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
@RequestParam("advertiser_id") Long advertiserId,
@RequestParam(value = "page", defaultValue = "1", required = false) Integer page,
@RequestParam(value = "page_size", defaultValue = "20", required = false) Integer pageSize,
@RequestParam(value = "filtering", required = false) Map<String, Object> filtering,
@RequestParam(value = "fields", required = false) String[] fields);
@RequestParam(value = "fields", required = false) String[] fields
);
/**
* 广告投放-为某广告主创建广告组信息
* 广告投放-创建广告组信息
*
* @param accessToken 访问凭证
* @param advertisingGroupReqDTO 创建信息
* @param adGroupInfo 创建信息
* @return the list
*/
@PostMapping(value = "/create")
TouTiaoRespDTO<Long> createAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
@RequestBody AdvertisingGroupReqDTO advertisingGroupReqDTO);
TouTiaoRespDTO<AdGroupRespDTO> createAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
@RequestBody AdGroupInfoDTO adGroupInfo
);
/**
* 广告投放-修改某广告主的广告组信息
* 广告投放-修改广告组信息
*
* @param accessToken 访问凭证
* @param advertisingGroupReqDTO 更新信息
* @param adGroupInfo 更新信息
* @return the list
*/
@PostMapping(value = "/update")
TouTiaoRespDTO<Long> updateAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
@RequestBody AdvertisingGroupReqDTO advertisingGroupReqDTO);
TouTiaoRespDTO<AdGroupRespDTO> updateAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
@RequestBody AdGroupInfoDTO adGroupInfo
);
/**
* 广告投放-修改某广告主的广告组状态信息
......@@ -76,7 +69,8 @@ public interface AdvertisingGroupApi {
* @return list list
*/
@PostMapping(value = "/update/status")
TouTiaoRespDTO<Long> updateAdvertisingGroupStatus(@RequestHeader("Access-Token") String accessToken,
@RequestBody UpdateStatusDTO updateStatusDTO);
TouTiaoRespDTO<AdGroupRespDTO> updateAdvertisingGroupStatus(@RequestHeader("Access-Token") String accessToken,
@RequestBody UpdateStatusDTO updateStatusDTO
);
}
package io.better.toutiao.dto.delivery.group;
import io.better.toutiao.dto.PageDTO;
import io.better.toutiao.dto.BaseDTO;
import lombok.Data;
/**
* 广告组信息,包含更新、创建、查询字段
*
* @author better create in 2019-04-29 14:21
*/
@Data
public class AdvertisingGroupRespDTO {
public class AdGroupInfoDTO extends BaseDTO {
// 查询、新增、更新部分共有字段
/**
* 广告组ID
......@@ -20,51 +24,61 @@ public class AdvertisingGroupRespDTO {
private String name;
/**
* 广告组预算
* 广告组状态
*
* @see io.better.toutiao.enums.delivery.AdGroupStatus
*/
private Integer budget;
private String status;
/**
* 广告组预算类型
* 广告组创建时间
*/
private String budgetMode;
private String campaignCreateTime;
/**
* 广告组推广目的
*
* @see io.better.toutiao.enums.LandingType
* 广告组修改时间
*/
private String landingType;
private String campaignModifyTime;
/**
* 广告组时间戳,用于更新时提交,服务端判断是否基于最新信息修改
*/
private String modifyTime;
// 创建传递
/**
* 广告组状态
*
* @see io.better.toutiao.enums.AdvertisingGroupStatus
* 广告组名称
*/
private String status;
private String campaignName;
/**
* 广告组创建时间
* 广告组预算
*/
private String campaignCreateTime;
private Integer budget;
/**
* 广告组修改时间
* 广告组预算类型
*/
private String campaignModifyTime;
private String budgetMode;
/**
* 分页信息
* 广告组推广目的
*
* @see io.better.toutiao.enums.LandingType
*/
private PageDTO pageInfo;
private String landingType;
/**
* 第三方唯一键
*/
private String uniqueFk;
// 更新传递
/**
* 广告组时间戳,用于更新时提交,服务端判断是否基于最新信息修改
*/
private String modifyTime;
/**
* 广告组ID
*/
private Long campaignId;
}
package io.better.toutiao.dto.delivery.group;
import io.better.toutiao.dto.PageDTO;
import lombok.Data;
import java.util.List;
/**
* @author better create in 2019-05-07 17:59
*/
@Data
public class AdGroupRespDTO {
/**
* 广告组ID, 接收创建、更新返回参数
*/
private Long campaignId;
/**
* 广告组ID数组, 接收批量更新状态返回参数
*/
private List<Long> campaignIds;
/**
* 广告组集合, 接收查询返回参数
*/
private List<AdGroupInfoDTO> list;
/**
* 分页信息, 接收查询返回参数
*/
private PageDTO pageInfo;
}
package io.better.toutiao.dto.delivery.group;
import io.better.toutiao.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @author better create in 2019-04-29 14:38
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class AdvertisingGroupReqDTO extends BaseDTO {
/**
* 广告组名称
*/
private String campaignName;
/**
* 广告组预算
*/
private Integer budget;
/**
* 广告组预算类型
*/
private String budgetMode;
/**
* 广告组推广目的
*/
private String landingType;
/**
* 第三方唯一键
*/
private String uniqueFk;
/**
* 时间戳-更新时使用
*/
private String modifyTime;
}
package io.better.toutiao.dto.status;
import io.better.toutiao.dto.BaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* @author better create in 2019-04-29 14:48
*/
@Data
public class UpdateStatusDTO {
/**
* 广告主ID
*/
private Long advertiserId;
@EqualsAndHashCode(callSuper = true)
public class UpdateStatusDTO extends BaseDTO {
/**
* 计划ID集合
......@@ -21,7 +21,7 @@ public class UpdateStatusDTO {
/**
* 广告组ID集合
*/
private Integer[] campaignIds;
private List<Long> campaignIds;
/**
* 创意ID集合
......@@ -30,6 +30,7 @@ public class UpdateStatusDTO {
/**
* 状态
* @see io.better.toutiao.enums.status.OptStatus
*/
private String optStatus;
}
package io.better.toutiao.enums;
package io.better.toutiao.enums.delivery;
import lombok.Getter;
......@@ -8,7 +8,7 @@ import lombok.Getter;
* @author better create in 2019-04-29 14:30
*/
@Getter
public enum AdvertisingGroupStatus {
public enum AdGroupStatus {
/**
* 启用
......
package io.better.toutiao.enums.status;
import lombok.Getter;
/**
* 操作状态枚举
*
* @author better create in 2019-05-07 18:26
*/
@Getter
public enum OptStatus {
/**
* 启用
*/
enable,
/**
* 删除
*/
delete,
/**
* 暂停
*/
disable
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment