Commit 5c25f563 by chenmingyang

modify ad group api name and dto info

parent 31ebf22f
package io.better.toutiao.api.delivery; package io.better.toutiao.api.delivery;
import io.better.toutiao.dto.TouTiaoRespDTO; import io.better.toutiao.dto.TouTiaoRespDTO;
import io.better.toutiao.dto.delivery.group.AdvertisingGroupReqDTO; import io.better.toutiao.dto.delivery.group.AdGroupInfoDTO;
import io.better.toutiao.dto.delivery.group.AdvertisingGroupRespDTO; import io.better.toutiao.dto.delivery.group.AdGroupRespDTO;
import io.better.toutiao.dto.status.UpdateStatusDTO; import io.better.toutiao.dto.status.UpdateStatusDTO;
import org.springframework.cloud.netflix.feign.FeignClient; import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -14,21 +14,11 @@ import java.util.Map; ...@@ -14,21 +14,11 @@ import java.util.Map;
* *
* @author better create in 2019-04-28 16:27 * @author better create in 2019-04-28 16:27
*/ */
@FeignClient(value = "https://ad.toutiao.com/open_api/2", url = "/campaign") @FeignClient(value = "${toutiao.api.advertiser-url}", url = "/campaign")
public interface AdvertisingGroupApi { 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 accessToken 访问凭证
* @param advertiserId 广告主ID * @param advertiserId 广告主ID
...@@ -39,34 +29,37 @@ public interface AdvertisingGroupApi { ...@@ -39,34 +29,37 @@ public interface AdvertisingGroupApi {
* @return advertising group * @return advertising group
*/ */
@GetMapping(value = "/get") @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("advertiser_id") Long advertiserId,
@RequestParam(value = "page", defaultValue = "1", required = false) Integer page, @RequestParam(value = "page", defaultValue = "1", required = false) Integer page,
@RequestParam(value = "page_size", defaultValue = "20", required = false) Integer pageSize, @RequestParam(value = "page_size", defaultValue = "20", required = false) Integer pageSize,
@RequestParam(value = "filtering", required = false) Map<String, Object> filtering, @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 accessToken 访问凭证
* @param advertisingGroupReqDTO 创建信息 * @param adGroupInfo 创建信息
* @return the list * @return the list
*/ */
@PostMapping(value = "/create") @PostMapping(value = "/create")
TouTiaoRespDTO<Long> createAdvertisingGroup(@RequestHeader("Access-Token") String accessToken, TouTiaoRespDTO<AdGroupRespDTO> createAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
@RequestBody AdvertisingGroupReqDTO advertisingGroupReqDTO); @RequestBody AdGroupInfoDTO adGroupInfo
);
/** /**
* 广告投放-修改某广告主的广告组信息 * 广告投放-修改广告组信息
* *
* @param accessToken 访问凭证 * @param accessToken 访问凭证
* @param advertisingGroupReqDTO 更新信息 * @param adGroupInfo 更新信息
* @return the list * @return the list
*/ */
@PostMapping(value = "/update") @PostMapping(value = "/update")
TouTiaoRespDTO<Long> updateAdvertisingGroup(@RequestHeader("Access-Token") String accessToken, TouTiaoRespDTO<AdGroupRespDTO> updateAdvertisingGroup(@RequestHeader("Access-Token") String accessToken,
@RequestBody AdvertisingGroupReqDTO advertisingGroupReqDTO); @RequestBody AdGroupInfoDTO adGroupInfo
);
/** /**
* 广告投放-修改某广告主的广告组状态信息 * 广告投放-修改某广告主的广告组状态信息
...@@ -76,7 +69,8 @@ public interface AdvertisingGroupApi { ...@@ -76,7 +69,8 @@ public interface AdvertisingGroupApi {
* @return list list * @return list list
*/ */
@PostMapping(value = "/update/status") @PostMapping(value = "/update/status")
TouTiaoRespDTO<Long> updateAdvertisingGroupStatus(@RequestHeader("Access-Token") String accessToken, TouTiaoRespDTO<AdGroupRespDTO> updateAdvertisingGroupStatus(@RequestHeader("Access-Token") String accessToken,
@RequestBody UpdateStatusDTO updateStatusDTO); @RequestBody UpdateStatusDTO updateStatusDTO
);
} }
package io.better.toutiao.dto.delivery.group; package io.better.toutiao.dto.delivery.group;
import io.better.toutiao.dto.PageDTO; import io.better.toutiao.dto.BaseDTO;
import lombok.Data; import lombok.Data;
/** /**
* 广告组信息,包含更新、创建、查询字段
*
* @author better create in 2019-04-29 14:21 * @author better create in 2019-04-29 14:21
*/ */
@Data @Data
public class AdvertisingGroupRespDTO { public class AdGroupInfoDTO extends BaseDTO {
// 查询、新增、更新部分共有字段
/** /**
* 广告组ID * 广告组ID
...@@ -20,51 +24,61 @@ public class AdvertisingGroupRespDTO { ...@@ -20,51 +24,61 @@ public class AdvertisingGroupRespDTO {
private String name; 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 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; package io.better.toutiao.dto.status;
import io.better.toutiao.dto.BaseDTO;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/** /**
* @author better create in 2019-04-29 14:48 * @author better create in 2019-04-29 14:48
*/ */
@Data @Data
public class UpdateStatusDTO { @EqualsAndHashCode(callSuper = true)
public class UpdateStatusDTO extends BaseDTO {
/**
* 广告主ID
*/
private Long advertiserId;
/** /**
* 计划ID集合 * 计划ID集合
...@@ -21,7 +21,7 @@ public class UpdateStatusDTO { ...@@ -21,7 +21,7 @@ public class UpdateStatusDTO {
/** /**
* 广告组ID集合 * 广告组ID集合
*/ */
private Integer[] campaignIds; private List<Long> campaignIds;
/** /**
* 创意ID集合 * 创意ID集合
...@@ -30,6 +30,7 @@ public class UpdateStatusDTO { ...@@ -30,6 +30,7 @@ public class UpdateStatusDTO {
/** /**
* 状态 * 状态
* @see io.better.toutiao.enums.status.OptStatus
*/ */
private String optStatus; private String optStatus;
} }
package io.better.toutiao.enums; package io.better.toutiao.enums.delivery;
import lombok.Getter; import lombok.Getter;
...@@ -8,7 +8,7 @@ import lombok.Getter; ...@@ -8,7 +8,7 @@ import lombok.Getter;
* @author better create in 2019-04-29 14:30 * @author better create in 2019-04-29 14:30
*/ */
@Getter @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