小程序券营销活动管理

This commit is contained in:
353259576 2024-05-06 10:34:00 +08:00
parent e55754eb04
commit 1f3c19257b
21 changed files with 1804 additions and 0 deletions

View File

@ -1,5 +1,7 @@
package com.dyj.applet;
import com.dyj.applet.domain.CreatePromotionActivityV2;
import com.dyj.applet.domain.ModifyPromotionActivity;
import com.dyj.applet.domain.TalentCouponLimit;
import com.dyj.applet.domain.query.*;
import com.dyj.applet.domain.vo.*;
@ -877,4 +879,47 @@ public class DyAppletClient extends BaseClient {
public DySimpleResult<?> setTalentCouponApi(SetTalentCouponApiQuery body){
return new PromotionCouponHandler(configuration().getAgentByTenantId(tenantId,clientKey)).setTalentCouponApi(body);
}
/**
* 创建营销活动
* @param body 创建营销活动请求值
* @return
*/
public DySimpleResult<CreatePromotionActivityVo> createPromotionActivityV2(PromotionActivityQuery<CreatePromotionActivityV2> body){
return new PromotionCouponHandler(configuration().getAgentByTenantId(tenantId,clientKey)).createPromotionActivityV2(body);
}
/**
* 修改营销活动
* @param body 修改营销活动请求值
* @return
*/
public DySimpleResult<?> modifyPromotionActivityV2(PromotionActivityQuery<ModifyPromotionActivity> body){
return new PromotionCouponHandler(configuration().getAgentByTenantId(tenantId,clientKey)).modifyPromotionActivityV2(body);
}
/**
* 查询营销活动
* @param body 查询营销活动请求值
* @return
*/
public QueryPromotionActivityV2Vo queryPromotionActivityV2(QueryPromotionActivityV2Query body){
return new PromotionCouponHandler(configuration().getAgentByTenantId(tenantId,clientKey)).queryPromotionActivityV2(body);
}
/**
* 修改营销活动状态
* @param body 修改营销活动状态请求值
* @return
*/
public DySimpleResult<?> updatePromotionActivityStatusV2(UpdatePromotionActivityStatusV2Query body) {
return new PromotionCouponHandler(configuration().getAgentByTenantId(tenantId,clientKey)).updatePromotionActivityStatusV2(body);
}
}

View File

@ -4,10 +4,15 @@ import com.dtflys.forest.annotation.BaseRequest;
import com.dtflys.forest.annotation.JSONBody;
import com.dtflys.forest.annotation.Post;
import com.dtflys.forest.backend.ContentType;
import com.dyj.applet.domain.CreatePromotionActivityV2;
import com.dyj.applet.domain.ModifyPromotionActivity;
import com.dyj.applet.domain.QueryPromotionActivityV2;
import com.dyj.applet.domain.TalentCouponLimit;
import com.dyj.applet.domain.query.*;
import com.dyj.applet.domain.vo.ConsumeCouponIdListVo;
import com.dyj.applet.domain.vo.CreatePromotionActivityVo;
import com.dyj.applet.domain.vo.QueryCouponReceiveInfoVo;
import com.dyj.applet.domain.vo.QueryPromotionActivityV2Vo;
import com.dyj.common.domain.DySimpleResult;
import com.dyj.common.interceptor.ClientTokenInterceptor;
@ -81,4 +86,37 @@ public interface PromotionCouponClient {
*/
@Post(value = "${setTalentCouponApi}", interceptor = ClientTokenInterceptor.class)
DySimpleResult<?> setTalentCouponApi(@JSONBody SetTalentCouponApiQuery body);
/**
* 创建营销活动
* @param body 创建营销活动请求值
* @return
*/
@Post(value = "${createPromotionActivityV2}", interceptor = ClientTokenInterceptor.class)
DySimpleResult<CreatePromotionActivityVo> createPromotionActivityV2(@JSONBody PromotionActivityQuery<CreatePromotionActivityV2> body);
/**
* 修改营销活动
* @param body 修改营销活动请求值
* @return
*/
@Post(value = "${modifyPromotionActivityV2}", interceptor = ClientTokenInterceptor.class)
DySimpleResult<?> modifyPromotionActivityV2(@JSONBody PromotionActivityQuery<ModifyPromotionActivity> body);
/**
* 查询营销活动
* @param body 查询营销活动请求值
* @return
*/
@Post(value = "${queryPromotionActivityV2}", interceptor = ClientTokenInterceptor.class)
QueryPromotionActivityV2Vo queryPromotionActivityV2(@JSONBody QueryPromotionActivityV2Query body);
/**
* 修改营销活动状态
* @param body 修改营销活动状态请求值
* @return
*/
@Post(value = "${updatePromotionActivityStatusV2}", interceptor = ClientTokenInterceptor.class)
DySimpleResult<?> updatePromotionActivityStatusV2(@JSONBody UpdatePromotionActivityStatusV2Query body);
}

View File

@ -0,0 +1,88 @@
package com.dyj.applet.domain;
/**
* 创建营销活动-分享裂变玩法
*/
public class CreatePromotionActivityImActivityShareFissionConfig {
/**
* <p>奖励券的模板ID</p> 选填
*/
private Long award_coupon_id;
/**
* <p>奖励的券数量代表完成分享任务后可以获得X张奖励券当前仅能为1</p> 选填
*/
private Integer award_coupon_num;
/**
* 奖励类型
*/
private Integer award_type;
public Long getAward_coupon_id() {
return award_coupon_id;
}
public CreatePromotionActivityImActivityShareFissionConfig setAward_coupon_id(Long award_coupon_id) {
this.award_coupon_id = award_coupon_id;
return this;
}
public Integer getAward_coupon_num() {
return award_coupon_num;
}
public CreatePromotionActivityImActivityShareFissionConfig setAward_coupon_num(Integer award_coupon_num) {
this.award_coupon_num = award_coupon_num;
return this;
}
public Integer getAward_type() {
return award_type;
}
public CreatePromotionActivityImActivityShareFissionConfig setAward_type(Integer award_type) {
this.award_type = award_type;
return this;
}
public static CreatePromotionActivityImActivityShareFissionConfigBuilder builder(){
return new CreatePromotionActivityImActivityShareFissionConfigBuilder();
}
public static final class CreatePromotionActivityImActivityShareFissionConfigBuilder {
private Long award_coupon_id;
private Integer award_coupon_num;
private Integer award_type;
private CreatePromotionActivityImActivityShareFissionConfigBuilder() {
}
public static CreatePromotionActivityImActivityShareFissionConfigBuilder aCreatePromotionActivityImActivityShareFissionConfig() {
return new CreatePromotionActivityImActivityShareFissionConfigBuilder();
}
public CreatePromotionActivityImActivityShareFissionConfigBuilder awardCouponId(Long awardCouponId) {
this.award_coupon_id = awardCouponId;
return this;
}
public CreatePromotionActivityImActivityShareFissionConfigBuilder awardCouponNum(Integer awardCouponNum) {
this.award_coupon_num = awardCouponNum;
return this;
}
public CreatePromotionActivityImActivityShareFissionConfigBuilder awardType(Integer awardType) {
this.award_type = awardType;
return this;
}
public CreatePromotionActivityImActivityShareFissionConfig build() {
CreatePromotionActivityImActivityShareFissionConfig createPromotionActivityImActivityShareFissionConfig = new CreatePromotionActivityImActivityShareFissionConfig();
createPromotionActivityImActivityShareFissionConfig.setAward_coupon_id(award_coupon_id);
createPromotionActivityImActivityShareFissionConfig.setAward_coupon_num(award_coupon_num);
createPromotionActivityImActivityShareFissionConfig.setAward_type(award_type);
return createPromotionActivityImActivityShareFissionConfig;
}
}
}

View File

@ -0,0 +1,169 @@
package com.dyj.applet.domain;
/**
* 创建营销活动请求值
*/
public class CreatePromotionActivityV2 {
/**
* <p>描述对应营销活动的名称</p><ul><li>为了提高信息检索效率该名称需要保证唯一在创建过程中平台会校验名称的唯一性</li></ul>
*/
private String activity_name;
/**
* <p>营销活动关联的券模板ID营销活动进入发放周期后用户领券行为会消耗该关联券模板ID的库存</p>
*/
private String coupon_meta_id;
/**
* <p>用户可以参与活动领取小程序券的次数</p><ul><li>当send_scene=1或4时该字段只能为1</li><li>当send_scene=2或5时该字段应大于0小于20</li></ul>
*/
private Long receive_limit;
/**
* <p>营销活动的对应发放场景</p>
*/
private Integer send_scene;
/**
* <p>当send_scene=4时填写结构内的字段</p> 选填
*/
private PromotionActivityImActivity<CreatePromotionActivityImActivityShareFissionConfig> im_activity;
/**
* <p>当send_scene=1时填写结构内的字段</p> 选填
*/
private PromotionActivityLiveActivity live_activity;
/**
* <p>当send_scene=5时填写结构内的字段</p> 选填
*/
private PromotionActivitySidebarActivity sidebar_activity;
public String getActivity_name() {
return activity_name;
}
public CreatePromotionActivityV2 setActivity_name(String activity_name) {
this.activity_name = activity_name;
return this;
}
public String getCoupon_meta_id() {
return coupon_meta_id;
}
public CreatePromotionActivityV2 setCoupon_meta_id(String coupon_meta_id) {
this.coupon_meta_id = coupon_meta_id;
return this;
}
public Long getReceive_limit() {
return receive_limit;
}
public CreatePromotionActivityV2 setReceive_limit(Long receive_limit) {
this.receive_limit = receive_limit;
return this;
}
public Integer getSend_scene() {
return send_scene;
}
public CreatePromotionActivityV2 setSend_scene(Integer send_scene) {
this.send_scene = send_scene;
return this;
}
public PromotionActivityImActivity getIm_activity() {
return im_activity;
}
public CreatePromotionActivityV2 setIm_activity(PromotionActivityImActivity im_activity) {
this.im_activity = im_activity;
return this;
}
public PromotionActivityLiveActivity getLive_activity() {
return live_activity;
}
public CreatePromotionActivityV2 setLive_activity(PromotionActivityLiveActivity live_activity) {
this.live_activity = live_activity;
return this;
}
public PromotionActivitySidebarActivity getSidebar_activity() {
return sidebar_activity;
}
public CreatePromotionActivityV2 setSidebar_activity(PromotionActivitySidebarActivity sidebar_activity) {
this.sidebar_activity = sidebar_activity;
return this;
}
public static CreatePromotionActivityV2QueryBuilder builder(){
return new CreatePromotionActivityV2QueryBuilder();
}
public static final class CreatePromotionActivityV2QueryBuilder {
private String activity_name;
private String coupon_meta_id;
private Long receive_limit;
private Integer send_scene;
private PromotionActivityImActivity im_activity;
private PromotionActivityLiveActivity live_activity;
private PromotionActivitySidebarActivity sidebar_activity;
private Integer tenantId;
private String clientKey;
private CreatePromotionActivityV2QueryBuilder() {
}
public static CreatePromotionActivityV2QueryBuilder aCreatePromotionActivityV2Query() {
return new CreatePromotionActivityV2QueryBuilder();
}
public CreatePromotionActivityV2QueryBuilder activityName(String activityName) {
this.activity_name = activityName;
return this;
}
public CreatePromotionActivityV2QueryBuilder couponMetaId(String couponMetaId) {
this.coupon_meta_id = couponMetaId;
return this;
}
public CreatePromotionActivityV2QueryBuilder receiveLimit(Long receiveLimit) {
this.receive_limit = receiveLimit;
return this;
}
public CreatePromotionActivityV2QueryBuilder sendScene(Integer sendScene) {
this.send_scene = sendScene;
return this;
}
public CreatePromotionActivityV2QueryBuilder imActivity(PromotionActivityImActivity imActivity) {
this.im_activity = imActivity;
return this;
}
public CreatePromotionActivityV2QueryBuilder liveActivity(PromotionActivityLiveActivity liveActivity) {
this.live_activity = liveActivity;
return this;
}
public CreatePromotionActivityV2QueryBuilder sidebarActivity(PromotionActivitySidebarActivity sidebarActivity) {
this.sidebar_activity = sidebarActivity;
return this;
}
public CreatePromotionActivityV2 build() {
CreatePromotionActivityV2 createPromotionActivityV2 = new CreatePromotionActivityV2();
createPromotionActivityV2.setActivity_name(activity_name);
createPromotionActivityV2.setCoupon_meta_id(coupon_meta_id);
createPromotionActivityV2.setReceive_limit(receive_limit);
createPromotionActivityV2.setSend_scene(send_scene);
createPromotionActivityV2.setIm_activity(im_activity);
createPromotionActivityV2.setLive_activity(live_activity);
createPromotionActivityV2.setSidebar_activity(sidebar_activity);
return createPromotionActivityV2;
}
}
}

View File

@ -0,0 +1,124 @@
package com.dyj.applet.domain;
/**
* 修改营销活动请求值
*/
public class ModifyPromotionActivity {
/**
* <p>需要修改的生效中的营销活动ID</p>
*/
private String activity_id;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">描述对应营销活动的名称</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">为了提高信息检索效率该名称需要保证唯一在修改过程中平台会校验名称的唯一性</span></span></li></ul> 选填
*/
private String activity_name;
/**
* <p>需要修改send_scene=4的营销活动内容时填写结构内的字段</p> 选填
*/
private ModifyPromotionActivityImActivity im_activity;
/**
* <p>需要修改send_scene=1的营销活动内容时填写结构内的字段</p> 选填
*/
private ModifyPromotionActivityLiveActivity live_activity;
/**
* <p>需要修改send_scene=5的营销活动内容时填写结构内的字段</p> 选填
*/
private ModifyPromotionActivitySidebarActivity sidebar_activity;
public String getActivity_id() {
return activity_id;
}
public ModifyPromotionActivity setActivity_id(String activity_id) {
this.activity_id = activity_id;
return this;
}
public String getActivity_name() {
return activity_name;
}
public ModifyPromotionActivity setActivity_name(String activity_name) {
this.activity_name = activity_name;
return this;
}
public ModifyPromotionActivityImActivity getIm_activity() {
return im_activity;
}
public ModifyPromotionActivity setIm_activity(ModifyPromotionActivityImActivity im_activity) {
this.im_activity = im_activity;
return this;
}
public ModifyPromotionActivityLiveActivity getLive_activity() {
return live_activity;
}
public ModifyPromotionActivity setLive_activity(ModifyPromotionActivityLiveActivity live_activity) {
this.live_activity = live_activity;
return this;
}
public ModifyPromotionActivitySidebarActivity getSidebar_activity() {
return sidebar_activity;
}
public ModifyPromotionActivity setSidebar_activity(ModifyPromotionActivitySidebarActivity sidebar_activity) {
this.sidebar_activity = sidebar_activity;
return this;
}
public static ModifyPromotionActivityBuilder builder(){
return new ModifyPromotionActivityBuilder();
}
public static final class ModifyPromotionActivityBuilder {
private String activity_id;
private String activity_name;
private ModifyPromotionActivityImActivity im_activity;
private ModifyPromotionActivityLiveActivity live_activity;
private ModifyPromotionActivitySidebarActivity sidebar_activity;
private ModifyPromotionActivityBuilder() {
}
public ModifyPromotionActivityBuilder activityId(String activityId) {
this.activity_id = activityId;
return this;
}
public ModifyPromotionActivityBuilder activityName(String activityName) {
this.activity_name = activityName;
return this;
}
public ModifyPromotionActivityBuilder imActivity(ModifyPromotionActivityImActivity imActivity) {
this.im_activity = imActivity;
return this;
}
public ModifyPromotionActivityBuilder liveActivity(ModifyPromotionActivityLiveActivity liveActivity) {
this.live_activity = liveActivity;
return this;
}
public ModifyPromotionActivityBuilder sidebarActivity(ModifyPromotionActivitySidebarActivity sidebarActivity) {
this.sidebar_activity = sidebarActivity;
return this;
}
public ModifyPromotionActivity build() {
ModifyPromotionActivity modifyPromotionActivity = new ModifyPromotionActivity();
modifyPromotionActivity.setActivity_id(activity_id);
modifyPromotionActivity.setActivity_name(activity_name);
modifyPromotionActivity.setIm_activity(im_activity);
modifyPromotionActivity.setLive_activity(live_activity);
modifyPromotionActivity.setSidebar_activity(sidebar_activity);
return modifyPromotionActivity;
}
}
}

View File

@ -0,0 +1,81 @@
package com.dyj.applet.domain;
/**
* 修改营销活动-IM私域消息发放
*/
public class ModifyPromotionActivityImActivity {
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">发放须知长度20以内</span></span></p><ul><li style="line-height: 1.6;margin-top: 0px;margin-bottom: 0px;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">优惠券发放时候的描述文案仅对主播/员工展示用户不可见比如可向主播传递当前优惠券的稀有程度或口播建议</span></span></li></ul> 选填
*/
private String notice_text;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动生效时间即可领取开始时间单位秒</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动的声明周期必须为关联券模板生命周期的子集</span></span></li></ul> 选填
*/
private Long valid_begin_time;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动过期时间即可领取结束时间单位秒</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动的声明周期必须为关联券模板生命周期的子集</span></span></li></ul> 选填
*/
private Long valid_end_time;
public String getNotice_text() {
return notice_text;
}
public ModifyPromotionActivityImActivity setNotice_text(String notice_text) {
this.notice_text = notice_text;
return this;
}
public Long getValid_begin_time() {
return valid_begin_time;
}
public ModifyPromotionActivityImActivity setValid_begin_time(Long valid_begin_time) {
this.valid_begin_time = valid_begin_time;
return this;
}
public Long getValid_end_time() {
return valid_end_time;
}
public ModifyPromotionActivityImActivity setValid_end_time(Long valid_end_time) {
this.valid_end_time = valid_end_time;
return this;
}
public static final class ModifyPromotionActivityImActivityBuilder {
private String notice_text;
private Long valid_begin_time;
private Long valid_end_time;
private ModifyPromotionActivityImActivityBuilder() {
}
public ModifyPromotionActivityImActivityBuilder noticeText(String noticeText) {
this.notice_text = noticeText;
return this;
}
public ModifyPromotionActivityImActivityBuilder validBeginTime(Long validBeginTime) {
this.valid_begin_time = validBeginTime;
return this;
}
public ModifyPromotionActivityImActivityBuilder validEndTime(Long validEndTime) {
this.valid_end_time = validEndTime;
return this;
}
public ModifyPromotionActivityImActivity build() {
ModifyPromotionActivityImActivity modifyPromotionActivityImActivity = new ModifyPromotionActivityImActivity();
modifyPromotionActivityImActivity.setNotice_text(notice_text);
modifyPromotionActivityImActivity.setValid_begin_time(valid_begin_time);
modifyPromotionActivityImActivity.setValid_end_time(valid_end_time);
return modifyPromotionActivityImActivity;
}
}
}

View File

@ -0,0 +1,65 @@
package com.dyj.applet.domain;
/**
* 修改营销活动-直播间发放
*/
public class ModifyPromotionActivityLiveActivity {
/**
* <p><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">创建授权手机号玩法时</span></span><span style="color: #3C89FF;"><span style="font-size: 14px;" elementtiming="element-timing"><a href="https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/open-capacity/operation/Clue#6da4d7a0" target="_blank" rel="nofollow" class="syl-link" elementtiming="element-timing">线索类小程序</a></span></span><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">需要关联合法的</span></span><span style="color: #3C89FF;"><span style="font-size: 14px;" elementtiming="element-timing"><a href="https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/open-capacity/operation/Clue" target="_blank" rel="nofollow" class="syl-link" elementtiming="element-timing">线索组件</a></span></span><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">。有利于直播间场景下获得流量精准分发,并支持获取完整的线索数据统计。</span></span></p> 选填
*/
private String clue_component_id;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">发放须知长度20以内</span></span></p><ul><li style="line-height: 1.6;margin-top: 0px;margin-bottom: 0px;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">优惠券发放时候的描述文案仅对主播展示用户不可见比如可向主播传递当前优惠券的稀有程度或口播建议</span></span></li></ul> 选填
*/
private String notice_text;
public String getClue_component_id() {
return clue_component_id;
}
public ModifyPromotionActivityLiveActivity setClue_component_id(String clue_component_id) {
this.clue_component_id = clue_component_id;
return this;
}
public String getNotice_text() {
return notice_text;
}
public ModifyPromotionActivityLiveActivity setNotice_text(String notice_text) {
this.notice_text = notice_text;
return this;
}
public static ModifyPromotionActivityLiveActivityBuilder builder(){
return new ModifyPromotionActivityLiveActivityBuilder();
}
public static final class ModifyPromotionActivityLiveActivityBuilder {
private String clue_component_id;
private String notice_text;
private ModifyPromotionActivityLiveActivityBuilder() {
}
public ModifyPromotionActivityLiveActivityBuilder clueComponentId(String clueComponentId) {
this.clue_component_id = clueComponentId;
return this;
}
public ModifyPromotionActivityLiveActivityBuilder noticeText(String noticeText) {
this.notice_text = noticeText;
return this;
}
public ModifyPromotionActivityLiveActivity build() {
ModifyPromotionActivityLiveActivity modifyPromotionActivityLiveActivity = new ModifyPromotionActivityLiveActivity();
modifyPromotionActivityLiveActivity.setClue_component_id(clue_component_id);
modifyPromotionActivityLiveActivity.setNotice_text(notice_text);
return modifyPromotionActivityLiveActivity;
}
}
}

View File

@ -0,0 +1,142 @@
package com.dyj.applet.domain;
/**
* 修改营销活动-复访营销活动
*/
public class ModifyPromotionActivitySidebarActivity {
/**
* <p><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">用户通过复访链路访问侧边栏时高价值区展示的内容少于11个字</span></span></p> 选填
*/
private String high_value_content;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">用户通过复访链路访问侧边栏时高价值区跳转按钮展示的内容只允许选择以下内容并传入</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">去使用</span></span></li><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">去领取</span></span></li><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">免费看</span></span></li><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">领优惠</span></span></li></ul> 选填
*/
private String jump_text;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">用户通过复访链路访问侧边栏时最近使用区小程序右上角气泡展示的内容只允许选择以下内容并传入</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">有福利</span></span></li><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">领福利</span></span></li><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">免费看</span></span></li><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">有优惠</span></span></li></ul> 选填
*/
private String recent_bubble_text;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动短标题少于5个字</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">用于用户端弹窗和复访时展示可以简单强调营销内容</span></span></li><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">需审核</span></span></li></ul> 选填
*/
private String short_title;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动生效时间即可领取开始时间单位秒</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动的声明周期必须为关联券模板生命周期的子集</span></span></li></ul> 选填
*/
private Long valid_begin_time;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动过期时间即可领取结束时间单位秒</span></span></p><ul><li style="line-height: 1.38;"><span style="color: #1C1F23;"><span style="font-size: 14px;" elementtiming="element-timing">营销活动的声明周期必须为关联券模板生命周期的子集</span></span></li></ul> 选填
*/
private Long valid_end_time;
public String getHigh_value_content() {
return high_value_content;
}
public ModifyPromotionActivitySidebarActivity setHigh_value_content(String high_value_content) {
this.high_value_content = high_value_content;
return this;
}
public String getJump_text() {
return jump_text;
}
public ModifyPromotionActivitySidebarActivity setJump_text(String jump_text) {
this.jump_text = jump_text;
return this;
}
public String getRecent_bubble_text() {
return recent_bubble_text;
}
public ModifyPromotionActivitySidebarActivity setRecent_bubble_text(String recent_bubble_text) {
this.recent_bubble_text = recent_bubble_text;
return this;
}
public String getShort_title() {
return short_title;
}
public ModifyPromotionActivitySidebarActivity setShort_title(String short_title) {
this.short_title = short_title;
return this;
}
public Long getValid_begin_time() {
return valid_begin_time;
}
public ModifyPromotionActivitySidebarActivity setValid_begin_time(Long valid_begin_time) {
this.valid_begin_time = valid_begin_time;
return this;
}
public Long getValid_end_time() {
return valid_end_time;
}
public ModifyPromotionActivitySidebarActivity setValid_end_time(Long valid_end_time) {
this.valid_end_time = valid_end_time;
return this;
}
public static ModifyPromotionActivitySidebarActivityBuilder builder(){
return new ModifyPromotionActivitySidebarActivityBuilder();
}
public static final class ModifyPromotionActivitySidebarActivityBuilder {
private String high_value_content;
private String jump_text;
private String recent_bubble_text;
private String short_title;
private Long valid_begin_time;
private Long valid_end_time;
private ModifyPromotionActivitySidebarActivityBuilder() {
}
public ModifyPromotionActivitySidebarActivityBuilder highValueContent(String highValueContent) {
this.high_value_content = highValueContent;
return this;
}
public ModifyPromotionActivitySidebarActivityBuilder jumpText(String jumpText) {
this.jump_text = jumpText;
return this;
}
public ModifyPromotionActivitySidebarActivityBuilder recentBubbleText(String recentBubbleText) {
this.recent_bubble_text = recentBubbleText;
return this;
}
public ModifyPromotionActivitySidebarActivityBuilder shortTitle(String shortTitle) {
this.short_title = shortTitle;
return this;
}
public ModifyPromotionActivitySidebarActivityBuilder validBeginTime(Long validBeginTime) {
this.valid_begin_time = validBeginTime;
return this;
}
public ModifyPromotionActivitySidebarActivityBuilder validEndTime(Long validEndTime) {
this.valid_end_time = validEndTime;
return this;
}
public ModifyPromotionActivitySidebarActivity build() {
ModifyPromotionActivitySidebarActivity modifyPromotionActivitySidebarActivity = new ModifyPromotionActivitySidebarActivity();
modifyPromotionActivitySidebarActivity.setHigh_value_content(high_value_content);
modifyPromotionActivitySidebarActivity.setJump_text(jump_text);
modifyPromotionActivitySidebarActivity.setRecent_bubble_text(recent_bubble_text);
modifyPromotionActivitySidebarActivity.setShort_title(short_title);
modifyPromotionActivitySidebarActivity.setValid_begin_time(valid_begin_time);
modifyPromotionActivitySidebarActivity.setValid_end_time(valid_end_time);
return modifyPromotionActivitySidebarActivity;
}
}
}

View File

@ -0,0 +1,123 @@
package com.dyj.applet.domain;
/**
* 创建营销活动-IM私域消息发放
*/
public class PromotionActivityImActivity<T> {
/**
* <p>指定用户领券玩法不传表示不指定玩法</p><ul><li style="line-height: 1.6;margin-top: 0px;margin-bottom: 0px;">枚举值及含义</li><ul><li style="line-height: 1.6;margin-top: 0px;margin-bottom: 0px;">0不指定玩法</li><li style="line-height: 1.6;margin-top: 0px;margin-bottom: 0px;">6: 分享裂变玩法当前仅支持IM发放场景</li></ul></ul> 选填
*/
private Integer coupon_task_type;
/**
* <p>发放须知长度20以内</p><ul><li style="line-height: 1.6;margin-top: 0px;margin-bottom: 0px;">优惠券发放时候的描述文案仅对主播展示用户不可见比如可向主播传递当前优惠券的稀有程度或口播建议</li></ul> 选填
*/
private String notice_text;
/**
* <p>营销活动生效时间即可领取开始时间单位秒</p><ul><li>营销活动的声明周期必须为关联券模板生命周期的子集</li></ul>
*/
private Long valid_begin_time;
/**
* <p>营销活动过期时间即可领取结束时间单位秒</p><ul><li>营销活动的声明周期必须为关联券模板生命周期的子集</li></ul>
*/
private Long valid_end_time;
/**
* <p>当coupon_task_type=6时填写结构内的字段</p> 选填
*/
private T share_fission_config;
public Integer getCoupon_task_type() {
return coupon_task_type;
}
public PromotionActivityImActivity<T> setCoupon_task_type(Integer coupon_task_type) {
this.coupon_task_type = coupon_task_type;
return this;
}
public String getNotice_text() {
return notice_text;
}
public PromotionActivityImActivity<T> setNotice_text(String notice_text) {
this.notice_text = notice_text;
return this;
}
public Long getValid_begin_time() {
return valid_begin_time;
}
public PromotionActivityImActivity<T> setValid_begin_time(Long valid_begin_time) {
this.valid_begin_time = valid_begin_time;
return this;
}
public Long getValid_end_time() {
return valid_end_time;
}
public PromotionActivityImActivity<T> setValid_end_time(Long valid_end_time) {
this.valid_end_time = valid_end_time;
return this;
}
public T getShare_fission_config() {
return share_fission_config;
}
public PromotionActivityImActivity<T> setShare_fission_config(T share_fission_config) {
this.share_fission_config = share_fission_config;
return this;
}
public static <T> CreatePromotionActivityImActivityBuilder builder(){
return new CreatePromotionActivityImActivityBuilder();
}
public static final class CreatePromotionActivityImActivityBuilder<T> {
private Integer coupon_task_type;
private String notice_text;
private Long valid_begin_time;
private Long valid_end_time;
private T share_fission_config;
private CreatePromotionActivityImActivityBuilder() {
}
public CreatePromotionActivityImActivityBuilder<T> couponTaskType(Integer couponTaskType) {
this.coupon_task_type = couponTaskType;
return this;
}
public CreatePromotionActivityImActivityBuilder<T> noticeText(String noticeText) {
this.notice_text = noticeText;
return this;
}
public CreatePromotionActivityImActivityBuilder<T> validBeginTime(Long validBeginTime) {
this.valid_begin_time = validBeginTime;
return this;
}
public CreatePromotionActivityImActivityBuilder<T> validEndTime(Long validEndTime) {
this.valid_end_time = validEndTime;
return this;
}
public CreatePromotionActivityImActivityBuilder<T> shareFissionConfig(T shareFissionConfig) {
this.share_fission_config = shareFissionConfig;
return this;
}
public PromotionActivityImActivity<T> build() {
PromotionActivityImActivity<T> promotionActivityImActivity = new PromotionActivityImActivity<>();
promotionActivityImActivity.setCoupon_task_type(coupon_task_type);
promotionActivityImActivity.setNotice_text(notice_text);
promotionActivityImActivity.setValid_begin_time(valid_begin_time);
promotionActivityImActivity.setValid_end_time(valid_end_time);
promotionActivityImActivity.setShare_fission_config(share_fission_config);
return promotionActivityImActivity;
}
}
}

View File

@ -0,0 +1,90 @@
package com.dyj.applet.domain;
/**
* 创建营销活动-直播间发放
*/
public class PromotionActivityLiveActivity {
/**
* <p>创建授权手机号玩法时线索类小程序 需要关联合法的线索组件有利于直播间场景下获得流量精准分发并支持获取完整的线索数据统计 选填
*/
private String clue_component_id;
/**
* <p>指定用户领券玩法不传表示不指定玩法 枚举值及含义0不指定玩法2授权手机号玩法用户领券前需要授权手机号开放平台会通过callback_url字段将密文手机号回传给开发者开发者进行解密得到用户手机号3关注主播玩法用户领券前需要关注主播后才能领券授权手机号玩法使用限制小程序需要具备获取手机号的能力申请路径抖音开放平台- 小程序 - 能力 - 页面及信息 - 用户能力 - 获取手机号 选填
*/
private Integer coupon_task_type;
/**
* <p>发放须知长度20以内优惠券发放时候的描述文案仅对主播展示用户不可见比如可向主播传递当前优惠券的稀有程度或口播建议 选填
*/
private String notice_text;
public String getClue_component_id() {
return clue_component_id;
}
public PromotionActivityLiveActivity setClue_component_id(String clue_component_id) {
this.clue_component_id = clue_component_id;
return this;
}
public Integer getCoupon_task_type() {
return coupon_task_type;
}
public PromotionActivityLiveActivity setCoupon_task_type(Integer coupon_task_type) {
this.coupon_task_type = coupon_task_type;
return this;
}
public String getNotice_text() {
return notice_text;
}
public PromotionActivityLiveActivity setNotice_text(String notice_text) {
this.notice_text = notice_text;
return this;
}
public static CreatePromotionActivityLiveActivityBuilder builder(){
return new CreatePromotionActivityLiveActivityBuilder();
}
public static final class CreatePromotionActivityLiveActivityBuilder {
private String clue_component_id;
private Integer coupon_task_type;
private String notice_text;
private CreatePromotionActivityLiveActivityBuilder() {
}
public static CreatePromotionActivityLiveActivityBuilder aCreatePromotionActivityLiveActivity() {
return new CreatePromotionActivityLiveActivityBuilder();
}
public CreatePromotionActivityLiveActivityBuilder clueComponentId(String clueComponentId) {
this.clue_component_id = clueComponentId;
return this;
}
public CreatePromotionActivityLiveActivityBuilder couponTaskType(Integer couponTaskType) {
this.coupon_task_type = couponTaskType;
return this;
}
public CreatePromotionActivityLiveActivityBuilder noticeText(String noticeText) {
this.notice_text = noticeText;
return this;
}
public PromotionActivityLiveActivity build() {
PromotionActivityLiveActivity promotionActivityLiveActivity = new PromotionActivityLiveActivity();
promotionActivityLiveActivity.setClue_component_id(clue_component_id);
promotionActivityLiveActivity.setCoupon_task_type(coupon_task_type);
promotionActivityLiveActivity.setNotice_text(notice_text);
return promotionActivityLiveActivity;
}
}
}

View File

@ -0,0 +1,209 @@
package com.dyj.applet.domain;
/**
* 创建营销活动-复访营销活动
*/
public class PromotionActivitySidebarActivity {
/**
* <p>复访营销活动的引流方式</p>
*/
private Integer action_trigger;
/**
* <p>当action_trigger=1或2时可以通过该字段声明用户需要完成几次该动作以看到复访营销弹窗 如action_trigger=1complete_times=2时代表用户需要看2次激励广告才能看到复访营销弹窗 选填
*/
private Integer complete_times;
/**
* <p>用户通过复访链路访问侧边栏时高价值区展示的内容少于11个字</p>
*/
private String high_value_content;
/**
* <p>用户通过复访链路访问侧边栏时高价值区跳转按钮展示的内容只允许选择以下内容并传入 去使用 去领取 免费看 领优惠
*/
private String jump_text;
/**
* <p>通过圈选人群 OpenAPI将用户绑定到特定福利上实现定向展示福利内容 选填
*/
private Boolean need_bind;
/**
* <p>用户通过复访链路访问侧边栏时最近使用区小程序右上角气泡展示的内容只允许选择以下内容并传入 有福利 领福利 免费看 有优惠
*/
private String recent_bubble_text;
/**
* <p>营销活动短标题少于5个字</p><ul><li>用于用户端弹窗和复访时展示可以简单强调营销内容</li><li>需审核</li></ul>
*/
private String short_title;
/**
* <p>营销活动生效时间即可领取开始时间单位秒</p><ul><li>营销活动的声明周期必须为关联券模板生命周期的子集</li></ul>
*/
private Long valid_begin_time;
/**
* <p>营销活动过期时间即可领取结束时间单位秒</p><ul><li>营销活动的声明周期必须为关联券模板生命周期的子集</li></ul>
*/
private Long valid_end_time;
public Integer getAction_trigger() {
return action_trigger;
}
public PromotionActivitySidebarActivity setAction_trigger(Integer action_trigger) {
this.action_trigger = action_trigger;
return this;
}
public Integer getComplete_times() {
return complete_times;
}
public PromotionActivitySidebarActivity setComplete_times(Integer complete_times) {
this.complete_times = complete_times;
return this;
}
public String getHigh_value_content() {
return high_value_content;
}
public PromotionActivitySidebarActivity setHigh_value_content(String high_value_content) {
this.high_value_content = high_value_content;
return this;
}
public String getJump_text() {
return jump_text;
}
public PromotionActivitySidebarActivity setJump_text(String jump_text) {
this.jump_text = jump_text;
return this;
}
public Boolean getNeed_bind() {
return need_bind;
}
public PromotionActivitySidebarActivity setNeed_bind(Boolean need_bind) {
this.need_bind = need_bind;
return this;
}
public String getRecent_bubble_text() {
return recent_bubble_text;
}
public PromotionActivitySidebarActivity setRecent_bubble_text(String recent_bubble_text) {
this.recent_bubble_text = recent_bubble_text;
return this;
}
public String getShort_title() {
return short_title;
}
public PromotionActivitySidebarActivity setShort_title(String short_title) {
this.short_title = short_title;
return this;
}
public Long getValid_begin_time() {
return valid_begin_time;
}
public PromotionActivitySidebarActivity setValid_begin_time(Long valid_begin_time) {
this.valid_begin_time = valid_begin_time;
return this;
}
public Long getValid_end_time() {
return valid_end_time;
}
public PromotionActivitySidebarActivity setValid_end_time(Long valid_end_time) {
this.valid_end_time = valid_end_time;
return this;
}
public static CreatePromotionActivitySidebarActivityBuilder builder(){
return new CreatePromotionActivitySidebarActivityBuilder();
}
public static final class CreatePromotionActivitySidebarActivityBuilder {
private Integer action_trigger;
private Integer complete_times;
private String high_value_content;
private String jump_text;
private Boolean need_bind;
private String recent_bubble_text;
private String short_title;
private Long valid_begin_time;
private Long valid_end_time;
private CreatePromotionActivitySidebarActivityBuilder() {
}
public static CreatePromotionActivitySidebarActivityBuilder aCreatePromotionActivitySidebarActivity() {
return new CreatePromotionActivitySidebarActivityBuilder();
}
public CreatePromotionActivitySidebarActivityBuilder actionTrigger(Integer actionTrigger) {
this.action_trigger = actionTrigger;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder completeTimes(Integer completeTimes) {
this.complete_times = completeTimes;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder highValueContent(String highValueContent) {
this.high_value_content = highValueContent;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder jumpText(String jumpText) {
this.jump_text = jumpText;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder needBind(Boolean needBind) {
this.need_bind = needBind;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder recentBubbleText(String recentBubbleText) {
this.recent_bubble_text = recentBubbleText;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder shortTitle(String shortTitle) {
this.short_title = shortTitle;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder validBeginTime(Long validBeginTime) {
this.valid_begin_time = validBeginTime;
return this;
}
public CreatePromotionActivitySidebarActivityBuilder validEndTime(Long validEndTime) {
this.valid_end_time = validEndTime;
return this;
}
public PromotionActivitySidebarActivity build() {
PromotionActivitySidebarActivity promotionActivitySidebarActivity = new PromotionActivitySidebarActivity();
promotionActivitySidebarActivity.setAction_trigger(action_trigger);
promotionActivitySidebarActivity.setComplete_times(complete_times);
promotionActivitySidebarActivity.setHigh_value_content(high_value_content);
promotionActivitySidebarActivity.setJump_text(jump_text);
promotionActivitySidebarActivity.setNeed_bind(need_bind);
promotionActivitySidebarActivity.setRecent_bubble_text(recent_bubble_text);
promotionActivitySidebarActivity.setShort_title(short_title);
promotionActivitySidebarActivity.setValid_begin_time(valid_begin_time);
promotionActivitySidebarActivity.setValid_end_time(valid_end_time);
return promotionActivitySidebarActivity;
}
}
}

View File

@ -0,0 +1,105 @@
package com.dyj.applet.domain;
/**
* 分享裂变配置
*/
public class QueryPromotionActivityImActivityShareFissionConfig {
/**
* <p>奖励券的模板ID</p> 选填
*/
private Long award_coupon_id;
/**
* 奖励券的名称 选填
*/
private String award_coupon_name;
/**
* <p>奖励的券数量</p> 选填
*/
private Integer award_coupon_num;
/**
* 奖励类型
*/
private Integer award_type;
public Long getAward_coupon_id() {
return award_coupon_id;
}
public QueryPromotionActivityImActivityShareFissionConfig setAward_coupon_id(Long award_coupon_id) {
this.award_coupon_id = award_coupon_id;
return this;
}
public String getAward_coupon_name() {
return award_coupon_name;
}
public QueryPromotionActivityImActivityShareFissionConfig setAward_coupon_name(String award_coupon_name) {
this.award_coupon_name = award_coupon_name;
return this;
}
public Integer getAward_coupon_num() {
return award_coupon_num;
}
public QueryPromotionActivityImActivityShareFissionConfig setAward_coupon_num(Integer award_coupon_num) {
this.award_coupon_num = award_coupon_num;
return this;
}
public Integer getAward_type() {
return award_type;
}
public QueryPromotionActivityImActivityShareFissionConfig setAward_type(Integer award_type) {
this.award_type = award_type;
return this;
}
public static QueryPromotionActivityImActivityShareFissionConfigBuilder builder(){
return new QueryPromotionActivityImActivityShareFissionConfigBuilder();
}
public static final class QueryPromotionActivityImActivityShareFissionConfigBuilder {
private Long award_coupon_id;
private String award_coupon_name;
private Integer award_coupon_num;
private Integer award_type;
private QueryPromotionActivityImActivityShareFissionConfigBuilder() {
}
public QueryPromotionActivityImActivityShareFissionConfigBuilder awardCouponId(Long awardCouponId) {
this.award_coupon_id = awardCouponId;
return this;
}
public QueryPromotionActivityImActivityShareFissionConfigBuilder awardCouponName(String awardCouponName) {
this.award_coupon_name = awardCouponName;
return this;
}
public QueryPromotionActivityImActivityShareFissionConfigBuilder awardCouponNum(Integer awardCouponNum) {
this.award_coupon_num = awardCouponNum;
return this;
}
public QueryPromotionActivityImActivityShareFissionConfigBuilder awardType(Integer awardType) {
this.award_type = awardType;
return this;
}
public QueryPromotionActivityImActivityShareFissionConfig build() {
QueryPromotionActivityImActivityShareFissionConfig queryPromotionActivityImActivityShareFissionConfig = new QueryPromotionActivityImActivityShareFissionConfig();
queryPromotionActivityImActivityShareFissionConfig.setAward_coupon_id(award_coupon_id);
queryPromotionActivityImActivityShareFissionConfig.setAward_coupon_name(award_coupon_name);
queryPromotionActivityImActivityShareFissionConfig.setAward_coupon_num(award_coupon_num);
queryPromotionActivityImActivityShareFissionConfig.setAward_type(award_type);
return queryPromotionActivityImActivityShareFissionConfig;
}
}
}

View File

@ -0,0 +1,128 @@
package com.dyj.applet.domain;
/**
* 查询营销活动返回值
*/
public class QueryPromotionActivityV2 {
/**
* <p>营销活动ID</p> 选填
*/
private String activity_id;
/**
* <p style="text-align: left;line-height: 1.38;margin: 0px 0px 0px;"><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">描述对应营销活动的名称</span></span></p> 选填
*/
private String activity_name;
/**
* <p>营销活动关联的券模板ID营销活动进入发放周期后用户领券行为会消耗该关联券模板ID的库存</p> 选填
*/
private String coupon_meta_id;
/**
* <p><span style="color: #171A1C;"><span style="font-size: 14px;" elementtiming="element-timing">用户可以参与活动领取小程序券的次数</span></span></p> 选填
*/
private Long receive_limit;
/**
* <p>营销活动的对应发放场景</p> 选填
*/
private Integer send_scene;
/**
* <p>营销活动状态</p> 选填
*/
private Integer status;
/**
* <p>IM营销活动</p> 选填
*/
private PromotionActivityImActivity<QueryPromotionActivityImActivityShareFissionConfig> im_activity;
/**
* <p>直播间营销活动</p> 选填
*/
private PromotionActivityLiveActivity live_activity;
/**
* <p>侧边栏营销活动</p> 选填
*/
private PromotionActivitySidebarActivity sidebar_activity;
public String getActivity_id() {
return activity_id;
}
public QueryPromotionActivityV2 setActivity_id(String activity_id) {
this.activity_id = activity_id;
return this;
}
public String getActivity_name() {
return activity_name;
}
public QueryPromotionActivityV2 setActivity_name(String activity_name) {
this.activity_name = activity_name;
return this;
}
public String getCoupon_meta_id() {
return coupon_meta_id;
}
public QueryPromotionActivityV2 setCoupon_meta_id(String coupon_meta_id) {
this.coupon_meta_id = coupon_meta_id;
return this;
}
public Long getReceive_limit() {
return receive_limit;
}
public QueryPromotionActivityV2 setReceive_limit(Long receive_limit) {
this.receive_limit = receive_limit;
return this;
}
public Integer getSend_scene() {
return send_scene;
}
public QueryPromotionActivityV2 setSend_scene(Integer send_scene) {
this.send_scene = send_scene;
return this;
}
public Integer getStatus() {
return status;
}
public QueryPromotionActivityV2 setStatus(Integer status) {
this.status = status;
return this;
}
public PromotionActivityImActivity<QueryPromotionActivityImActivityShareFissionConfig> getIm_activity() {
return im_activity;
}
public QueryPromotionActivityV2 setIm_activity(PromotionActivityImActivity<QueryPromotionActivityImActivityShareFissionConfig> im_activity) {
this.im_activity = im_activity;
return this;
}
public PromotionActivityLiveActivity getLive_activity() {
return live_activity;
}
public QueryPromotionActivityV2 setLive_activity(PromotionActivityLiveActivity live_activity) {
this.live_activity = live_activity;
return this;
}
public PromotionActivitySidebarActivity getSidebar_activity() {
return sidebar_activity;
}
public QueryPromotionActivityV2 setSidebar_activity(PromotionActivitySidebarActivity sidebar_activity) {
this.sidebar_activity = sidebar_activity;
return this;
}
}

View File

@ -0,0 +1,54 @@
package com.dyj.applet.domain.query;
import com.dyj.common.domain.query.BaseQuery;
public class PromotionActivityQuery<T> extends BaseQuery {
private T promotion_activity;
public T getPromotion_activity() {
return promotion_activity;
}
public PromotionActivityQuery<T> setPromotion_activity(T promotion_activity) {
this.promotion_activity = promotion_activity;
return this;
}
public static <T> promotionActivityQueryBuilder<T> builder(){
return new promotionActivityQueryBuilder<T>();
}
public static final class promotionActivityQueryBuilder <T> {
private T promotion_activity;
private Integer tenantId;
private String clientKey;
private promotionActivityQueryBuilder() {
}
public promotionActivityQueryBuilder<T> promotionActivity(T promotion_activity) {
this.promotion_activity = promotion_activity;
return this;
}
public promotionActivityQueryBuilder<T> tenantId(Integer tenantId) {
this.tenantId = tenantId;
return this;
}
public promotionActivityQueryBuilder<T> clientKey(String clientKey) {
this.clientKey = clientKey;
return this;
}
public PromotionActivityQuery<T> build() {
PromotionActivityQuery<T> promotionActivityQuery = new PromotionActivityQuery<T>();
promotionActivityQuery.setPromotion_activity(promotion_activity);
promotionActivityQuery.setTenantId(tenantId);
promotionActivityQuery.setClientKey(clientKey);
return promotionActivityQuery;
}
}
}

View File

@ -0,0 +1,59 @@
package com.dyj.applet.domain.query;
import com.dyj.common.domain.query.BaseQuery;
/**
* 查询营销活动请求值
*/
public class QueryPromotionActivityV2Query extends BaseQuery {
/**
* 需要查询的营销活动ID
*/
private String activity_id;
public String getActivity_id() {
return activity_id;
}
public QueryPromotionActivityV2Query setActivity_id(String activity_id) {
this.activity_id = activity_id;
return this;
}
public static QueryPromotionActivityV2QueryBuilder builder(){
return new QueryPromotionActivityV2QueryBuilder();
}
public static final class QueryPromotionActivityV2QueryBuilder {
private String activity_id;
private Integer tenantId;
private String clientKey;
private QueryPromotionActivityV2QueryBuilder() {
}
public QueryPromotionActivityV2QueryBuilder activityId(String activityId) {
this.activity_id = activityId;
return this;
}
public QueryPromotionActivityV2QueryBuilder tenantId(Integer tenantId) {
this.tenantId = tenantId;
return this;
}
public QueryPromotionActivityV2QueryBuilder clientKey(String clientKey) {
this.clientKey = clientKey;
return this;
}
public QueryPromotionActivityV2Query build() {
QueryPromotionActivityV2Query queryPromotionActivityV2Query = new QueryPromotionActivityV2Query();
queryPromotionActivityV2Query.setActivity_id(activity_id);
queryPromotionActivityV2Query.setTenantId(tenantId);
queryPromotionActivityV2Query.setClientKey(clientKey);
return queryPromotionActivityV2Query;
}
}
}

View File

@ -0,0 +1,79 @@
package com.dyj.applet.domain.query;
import com.dyj.common.domain.query.BaseQuery;
/**
* 修改营销活动状态请求值
*/
public class UpdatePromotionActivityStatusV2Query extends BaseQuery {
/**
* <p>营销活动ID</p>
*/
private String activity_id;
/**
* <p>营销活动状态</p><ul><li>将营销活动置为在线要求前置状态为下线</li><li>将营销活动置为下线要求前置状态为在线</li><li>删除没有前置状态要求</li><li>完成自测状态为复访营销活动可设置的状态需前置完成自测动作</li></ul>
*/
private Integer status;
public String getActivity_id() {
return activity_id;
}
public UpdatePromotionActivityStatusV2Query setActivity_id(String activity_id) {
this.activity_id = activity_id;
return this;
}
public Integer getStatus() {
return status;
}
public UpdatePromotionActivityStatusV2Query setStatus(Integer status) {
this.status = status;
return this;
}
public static UpdatePromotionActivityStatusV2QueryBuilder builder() {
return new UpdatePromotionActivityStatusV2QueryBuilder();
}
public static final class UpdatePromotionActivityStatusV2QueryBuilder {
private String activity_id;
private Integer status;
private Integer tenantId;
private String clientKey;
private UpdatePromotionActivityStatusV2QueryBuilder() {}
public UpdatePromotionActivityStatusV2QueryBuilder activityId(String activityId) {
this.activity_id = activityId;
return this;
}
public UpdatePromotionActivityStatusV2QueryBuilder status(Integer status) {
this.status = status;
return this;
}
public UpdatePromotionActivityStatusV2QueryBuilder tenantId(Integer tenantId) {
this.tenantId = tenantId;
return this;
}
public UpdatePromotionActivityStatusV2QueryBuilder clientKey(String clientKey) {
this.clientKey = clientKey;
return this;
}
public UpdatePromotionActivityStatusV2Query build() {
UpdatePromotionActivityStatusV2Query updatePromotionActivityStatusV2Query = new UpdatePromotionActivityStatusV2Query();
updatePromotionActivityStatusV2Query.setActivity_id(activity_id);
updatePromotionActivityStatusV2Query.setStatus(status);
updatePromotionActivityStatusV2Query.setTenantId(tenantId);
updatePromotionActivityStatusV2Query.setClientKey(clientKey);
return updatePromotionActivityStatusV2Query;
}
}
}

View File

@ -0,0 +1,21 @@
package com.dyj.applet.domain.vo;
/**
* 创建营销活动返回值
*/
public class CreatePromotionActivityVo {
/**
* <p>抖音开放平台小程序营销活动ID</p>
*/
private String activity_id;
public String getActivity_id() {
return activity_id;
}
public CreatePromotionActivityVo setActivity_id(String activity_id) {
this.activity_id = activity_id;
return this;
}
}

View File

@ -0,0 +1,63 @@
package com.dyj.applet.domain.vo;
import com.dyj.applet.domain.QueryPromotionActivityV2;
/**
* 查询营销活动返回值
*/
public class QueryPromotionActivityV2Vo {
/**
* <p>err_no非0时对应的错误信息文案提示成功时为空字符串</p>
*/
private String err_msg;
/**
* <p>0表示成功</p>
*/
private Integer err_no;
/**
* <p>标识请求的唯一id</p>
*/
private String log_id;
/**
*
*/
private QueryPromotionActivityV2 promotion_activity;
public String getErr_msg() {
return err_msg;
}
public QueryPromotionActivityV2Vo setErr_msg(String err_msg) {
this.err_msg = err_msg;
return this;
}
public Integer getErr_no() {
return err_no;
}
public QueryPromotionActivityV2Vo setErr_no(Integer err_no) {
this.err_no = err_no;
return this;
}
public String getLog_id() {
return log_id;
}
public QueryPromotionActivityV2Vo setLog_id(String log_id) {
this.log_id = log_id;
return this;
}
public QueryPromotionActivityV2 getPromotion_activity() {
return promotion_activity;
}
public QueryPromotionActivityV2Vo setPromotion_activity(QueryPromotionActivityV2 promotion_activity) {
this.promotion_activity = promotion_activity;
return this;
}
}

View File

@ -1,9 +1,14 @@
package com.dyj.applet.handler;
import com.dtflys.forest.annotation.JSONBody;
import com.dyj.applet.domain.CreatePromotionActivityV2;
import com.dyj.applet.domain.ModifyPromotionActivity;
import com.dyj.applet.domain.TalentCouponLimit;
import com.dyj.applet.domain.query.*;
import com.dyj.applet.domain.vo.ConsumeCouponIdListVo;
import com.dyj.applet.domain.vo.CreatePromotionActivityVo;
import com.dyj.applet.domain.vo.QueryCouponReceiveInfoVo;
import com.dyj.applet.domain.vo.QueryPromotionActivityV2Vo;
import com.dyj.common.config.AgentConfiguration;
import com.dyj.common.domain.DySimpleResult;
@ -96,4 +101,46 @@ public class PromotionCouponHandler extends AbstractAppletHandler {
userInfoQuery(body);
return getPromotionCouponClient().setTalentCouponApi(body);
}
/**
* 创建营销活动
* @param body 创建营销活动请求值
* @return
*/
public DySimpleResult<CreatePromotionActivityVo> createPromotionActivityV2(PromotionActivityQuery<CreatePromotionActivityV2> body){
baseQuery(body);
return getPromotionCouponClient().createPromotionActivityV2(body);
}
/**
* 修改营销活动
* @param body 修改营销活动请求值
* @return
*/
public DySimpleResult<?> modifyPromotionActivityV2(PromotionActivityQuery<ModifyPromotionActivity> body){
baseQuery(body);
return getPromotionCouponClient().modifyPromotionActivityV2(body);
}
/**
* 查询营销活动
* @param body 查询营销活动请求值
* @return
*/
public QueryPromotionActivityV2Vo queryPromotionActivityV2(QueryPromotionActivityV2Query body){
baseQuery(body);
return getPromotionCouponClient().queryPromotionActivityV2(body);
}
/**
* 修改营销活动状态
* @param body 修改营销活动状态请求值
* @return
*/
public DySimpleResult<?> updatePromotionActivityStatusV2(UpdatePromotionActivityStatusV2Query body) {
baseQuery(body);
return getPromotionCouponClient().updatePromotionActivityStatusV2(body);
}
}

View File

@ -189,6 +189,26 @@ public enum DyAppletUrlPathEnum {
* 主播发券权限配置
*/
SET_TALENT_COUPON_API("setTalentCouponApi", "/api/promotion/v1/coupon/set_talent_coupon/"),
/**
* 创建营销活动
*/
CREATE_PROMOTION_ACTIVITY_V2("createPromotionActivityV2", "/api/promotion/v2/activity/create_promotion_activity/"),
/**
* 修改营销活动
*/
MODIFY_PROMOTION_ACTIVITY_V2("modifyPromotionActivityV2", "/api/promotion/v2/activity/modify_promotion_activity/"),
/**
* 查询营销活动
*/
QUERY_PROMOTION_ACTIVITY_V2("queryPromotionActivityV2", "/api/promotion/v2/activity/query_promotion_activity/"),
/**
* 修改营销活动状态
*/
UPDATE_PROMOTION_ACTIVITY_STATUS_V2("updatePromotionActivityStatusV2", "/api/promotion/v2/activity/update_promotion_activity_status/"),
;

View File

@ -2,6 +2,8 @@ package com.dyj.examples.applet;
import com.alibaba.fastjson.JSON;
import com.dyj.applet.DyAppletClient;
import com.dyj.applet.domain.CreatePromotionActivityV2;
import com.dyj.applet.domain.ModifyPromotionActivity;
import com.dyj.applet.domain.query.*;
import com.dyj.examples.DyJavaExamplesApplication;
import org.junit.Test;
@ -122,4 +124,56 @@ public class PromotionCouponTest {
);
}
/**
* 创建营销活动
*/
@Test
public void createPromotionActivityV2(){
DyAppletClient dyAppletClient = new DyAppletClient();
System.out.println(
JSON.toJSONString(
dyAppletClient.createPromotionActivityV2(PromotionActivityQuery.<CreatePromotionActivityV2>builder().build())
)
);
}
/**
* 修改营销活动
*/
@Test
public void modifyPromotionActivityV2(){
DyAppletClient dyAppletClient = new DyAppletClient();
System.out.println(
JSON.toJSONString(
dyAppletClient.modifyPromotionActivityV2(PromotionActivityQuery.<ModifyPromotionActivity>builder().build())
)
);
}
/**
* 查询营销活动
*/
@Test
public void queryPromotionActivityV2(){
DyAppletClient dyAppletClient = new DyAppletClient();
System.out.println(
JSON.toJSONString(
dyAppletClient.queryPromotionActivityV2(QueryPromotionActivityV2Query.builder().build())
)
);
}
/**
* 修改营销活动状态
*/
@Test
public void updatePromotionActivityStatusV2(){
DyAppletClient dyAppletClient = new DyAppletClient();
System.out.println(
JSON.toJSONString(
dyAppletClient.updatePromotionActivityStatusV2(UpdatePromotionActivityStatusV2Query.builder().build())
)
);
}
}