Files
baseapi/platformapi/mtwmapi/act_copy_model.go
邹宗楠 ad5f763b56 1
2024-05-24 09:49:14 +08:00

483 lines
35 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package mtwmapi
//#region 买赠活动
// BatchCreateBuyGiftsParam 活动创建参数
type BatchCreateBuyGiftsParam struct {
AppSpuCode string `json:"app_spu_code"` // APP方商品id
StartTime int64 `json:"start_time"` // 活动开始时间传10位秒级的时间戳
EndTime int64 `json:"end_time"` // 活动结束时间传10位秒级的时间戳
GiftsType int `json:"gifts_type"` // 赠品类型。取值范围0-非本商品非在售商品1-本商品2-非本商品在售商品
GiftsName string `json:"gifts_name,omitempty"` // 为赠品名称
GiftsAppSpuCode string `json:"gifts_app_spu_code,omitempty"` // 非本商品在售商品id当gifts_type=2时上传。
BuyNum int `json:"buy_num"` // 达到送赠品条件的商品购买数量须上传大于0的正整数
GiftsNum int `json:"gifts_num"` // 达到购买数量时赠送的赠品数量。须上传大于0的为正整数。例如buy_num=2gifts_num=3则代表买2件商品赠送3件赠品。
GiftsCharge float64 `json:"gifts_charge"` // 单个赠品的成本单位是元。此字段信息须大于0最多支持两位小数。注意赠品成本为商家成本不涉及美团成本。
GiftsDayLimit int `json:"gifts_day_limit"` // 当日活动赠品库存字段类型int。须上传大于0的正整数或-1如传-1则表示不限制活动赠品库存。
}
// BatchQueryBuyGiftsAll 活动创建参数
type BatchQueryBuyGiftsAll struct {
ItemId int `json:"item_id"` // 活动id
AppSpuCode string `json:"app_spu_code"` // 活动商品为APP方商品id即商家中台系统里商品的编码spu_code值
AppPoiCode string `json:"app_poi_code"` //
GiftsType int `json:"gifts_type"` // 赠品类型参考值0-非本商品非在售商品1-本商品2-非本商品在售商品。
GiftsName string `json:"gifts_name"` // 赠品名称
GiftsAppSpuCode string `json:"gifts_app_spu_code"` // 赠品的app_spu_code信息非活动本商品的店内在售商品。
StartTime int64 `json:"start_time"` // 开始时间
EndTime int64 `json:"end_time"` // 结束时间
BuyNum int `json:"buy_num"` // 达到送赠品条件的商品购买数量
GiftsNum int `json:"gifts_num"` //
BuyGiftsNum int `json:"buy_gifts_num"` //
GiftsCharge float64 `json:"gifts_charge"` //
GiftsDayLimit int `json:"gifts_day_limit"` // 当日活动赠品库存为大于0的正整数或-1如为-1则表示不限制活动赠品库存。
Status int `json:"status"` // 活动当前的状态参考值2-待生效1-生效0-过期
ItemName string `json:"item_name"` // 活动名称
BuyGiftsModel string `json:"buy_gifts_model"` // 补贴模式,目前仅有“商家进货补贴模式(走结算流程)”模式。
Charge string `json:"charge"` // 成本相关,单位是元。参数包括: giftsCharge赠品成本 giftsPoiCharge商家承担成本 giftsMtCharge美团承担成本。
}
type GiftsChargeObj struct {
GiftsPoiCharge string `json:"giftsPoiCharge"` // 商家成本
GiftsMtCharge int `json:"giftsMtCharge"` // 美团成本
GiftsCharge string `json:"giftsCharge"` // 赠品成本
}
//#endregion
//#region 满减活动
// GetDiscountList 获取满减活动列表
type GetDiscountList struct {
ActDetails []struct {
ActId interface{} `json:"act_id"`
ActPrice float64 `json:"act_price"`
AppFoodCode interface{} `json:"app_food_code"`
AppPoiCode interface{} `json:"app_poi_code"`
AppSpuCode interface{} `json:"app_spu_code"`
DayLimit interface{} `json:"day_limit"`
EndTime interface{} `json:"end_time"`
Name interface{} `json:"name"`
OrderLimit interface{} `json:"order_limit"`
OriginPrice float64 `json:"origin_price"`
Period interface{} `json:"period"`
StartTime interface{} `json:"start_time"`
Status interface{} `json:"status"`
Stock interface{} `json:"stock"`
UserType interface{} `json:"user_type"`
WeeksTime interface{} `json:"weeks_time"`
} `json:"act_details"` // 满减活动详情
ActInfo struct { // 活动信息json格式字符串。
ActIds string `json:"act_ids"`
ActName string `json:"act_name"`
ActType interface{} `json:"act_type"`
AutoDelay interface{} `json:"auto_delay"`
EndTime int64 `json:"end_time"`
StartTime int64 `json:"start_time"`
ExtraInfo struct {
Offset interface{} `json:"offset"`
TotalCount interface{} `json:"total_count"`
Limit interface{} `json:"limit"`
PageNum interface{} `json:"page_num"`
TaskId interface{} `json:"task_id"`
BatchActId int64 `json:"batch_act_id"` // 批次维度活动ID
SkuExtraInfo []struct {
AppSpuCode interface{} `json:"app_spu_code"` // 同入参app_spu_code或app_food_code仅在指定商品满减时返回
SkuId interface{} `json:"sku_id"` // 同入参sku_id
SkuActId interface{} `json:"sku_act_id"` // 商品维度的活动ID
} `json:"sku_extra_info"` // sku维度活动额外信息仅在指定商品满减时返回
PageSize interface{} `json:"page_size"`
} `json:"extraInfo"`
Period interface{} `json:"period"`
Quantity int `json:"quantity"` // 参加指定商品满减活动的商品数,仅适用于指定商品满减活动类型。
Status int `json:"status"` // 活动状态。(1)指定商品满减活动状态2-待生效1-生效0-过期。(2)全店满减活动状态0-待生效1-生效2-过期。
WeeksTime interface{} `json:"weeks_time"`
} `json:"act_info"`
ActRemark string `json:"act_remark"`
AppPoiCode string `json:"app_poi_code"`
}
// CreateDiscountList 创建满减活动(门店/商品)
type CreateDiscountList struct {
AppPoiCode string `json:"app_poi_code"` // APP方门店id
ActInfo string `json:"act_info"` // 活动信息 CreateDisCountActInfo
ActDetails string `json:"act_details"` // 活动详情信息json格式数组。活动满减不能超过5层阶梯。[CreateDiscountActDetails]
AppFoods string `json:"app_foods"` // 活动商品信息为json格式数组此字段仅用于创建指定商品满减活动时上传 [CreateDiscountAppFoods]
}
type CreateDisCountActInfo struct {
ActName string `json:"act_name"` // 活动名字
StartTime int64 `json:"start_time"` // 开始时间
EndTime int64 `json:"end_time"` // 结束时间
ActType int `json:"act_type"` // 活动类型取值范围0-全店满减1-指定商品满减。如此字段不传则默认act_type=1表示指定商品满减类型act_type=0时不可以传app_foods字段。
WeeksTime string `json:"weeks_time"` // 生效活动周期, 1、仅当act_type传0全店满减支持传本参数 2、取值范围及意义1,2,3,4,5,6,7分别表示周一至周日多个星期之间用英文逗号分隔 3、非必传创建时如不传则默认周期为"1,2,3,4,5,6,7"。 4、上传的周期相互不能重复
Period string `json:"period"` // 生效时间段, 1、仅当act_type传0全店满减支持传本参数 2、精确到分钟24小时制格式为HH:MM-HH:MM最多支持上传3个时段多个时段之间用英文逗号分隔 3、每个时段的开始时间必须小于结束时间。传的多个时段不允许有重叠。 4、上传多个时段时必须按时间先后顺序进行上传。每个时段最短为30分钟。 5、非必传创建时如不传则默认时段为"00:00:-23:59"。
AutoDelay int `json:"auto_delay"` // 每次活动到期后自动延期30天传1表示开启。 1、仅当act_type传0全店满减支持传本参数。 2、仅支持传1表示开启每当活动到期时自动延期30天。 3、非必传创建活动时如不传则为关闭状态不自动延期。
}
type CreateDiscountActDetails struct {
OriginPrice int `json:"origin_price"` // 表示满的金额
ActPrice int `json:"act_price"` // 表示减的金额
}
type CreateDiscountAppFoods struct {
AppSpuCode string `json:"app_spu_code"` // PP方商品id即商家中台系统里商品的编码
DayLimit int `json:"day_limit"` // 当日活动商品库存仅支持上传大于0的整数或-1如传-1时则表示不限制商品活动库存。
}
// CreateDiscountResult 创建满减活动返回值结构
type CreateDiscountResult struct {
Data string `json:"data"` // ok
SuccessMsg string `json:"success_msg"` // 活动ID
ExtraInfo []DiscountData `json:"extra_info"` //
ResultCode int `json:"result_code"` // 1-全部操作成功查询到的数据在data字段中2-部分成功成功的数据存储在data字段中失败的数据存在error_list字段中3-全部操作失败失败的数据存在error_list字段中4-请求失败一般为签名或限流问题关注error字段中的具体描述即可
SuccessMap []DiscountData `json:"success_map"` // 成功的集合信息
}
type DiscountData struct {
TaskId string `json:"task_id"` // 当商家使用异步排队方式请求接口时返回商家可使用任务id查询任务进度
TaskDetailLink string `json:"task_detail_link"` // 创建异步排队任务成功,返回任务详情链接,通过浏览器打开链接查看任务处理结果
BatchActId string `json:"batch_act_id"` // 批次维度活动ID
SkuExtraInfo []struct {
SkuActId int64 // 商品维度的活动ID
AppSpuCode string // 同入参app_spu_code
SkuId string // 同入参sku_id
} `json:"sku_extra_info"` // sku维度活动额外信息仅在创建成功时返回仅在指定商品满减时返回
}
//#endregion
//#region 运费满减活动
// ShippingFeeResult 满减运费活动配置
type ShippingFeeResult struct {
ResultCode int `json:"result_code"` // 返回状态码
SuccessList []ShippingFeeDetail `json:"success_list"` // 成功上数据列表
Data []ShippingFeeDetail `json:"data"` // 好像是所有的数据列表
}
// ShippingFeeDetail 运费活动返回详情值
type ShippingFeeDetail struct {
AppPoiCode string `json:"app_poi_code"` // 门店code
ActId int `json:"act_id"` // 活动ID
StartTime int `json:"start_time"` // 开始时间
EndTime int `json:"end_time"` // 结束时间
WeeksTime string `json:"weeks_time"` // 活动周期(周一-周末)
Period string `json:"period"` // 生效时间段,多个时段以英文逗号分隔;如创建活动时此字段未填写,则默认时段为"00:00:-23:59"。
ActDetail []struct {
LimitPrice float64 `json:"limit_price"` // 满减门槛
DiscountPrice float64 `json:"discount_price"` // 减配送费
PoiCharge float64 `json:"poi_charge"` // 门店承担费用
MtCharge float64 `json:"mt_charge"` // 美团承担费用
} `json:"act_detail"` // 活动详情
MaxPrice float64 `json:"max_price"` // 免配送费门槛
ActStatus string `json:"actStatus"` // 活动状态NOT_START=待生效IN_PROGRESS=已生效EXPIRED=已过期APPROVE=待审批FREEZE=冻结中。
}
// ShippingFeeBatchCreate 批量创建阶梯满减活动
type ShippingFeeBatchCreate struct {
AppPoiCode string `json:"app_poi_code"` // 门店code
ActData string `json:"act_data"` // 门店满减运费活动信息json格式数组。(1)同一门店同一时间仅允许参加一个活动。(2)同一门店的生效中+待生效活动最多支持20组。
}
// ShippingFeeBatchCreateActData 活动详情
type ShippingFeeBatchCreateActData struct {
StartTime int `json:"start_time"` // 开始时间
EndTime int `json:"end_time"` // 结束时间
WeeksTime string `json:"weeks_time"` // 活动周期(周一-周末)
Period string `json:"period"` // 生效时间段,多个时段以英文逗号分隔;如创建活动时此字段未填写,则默认时段为"00:00:-23:59"。
MaxPrice float64 `json:"max_price"` // 免配送费门槛
ActDetail []ShippingFeeBatchCreateActDataActDetail `json:"act_detail"` // 活动详情
}
type ShippingFeeBatchCreateActDataActDetail struct {
LimitPrice float64 `json:"limit_price"` // 满减门槛
DiscountPrice float64 `json:"discount_price"` // 减配送费
}
// ShippingResultData 运费满减活动创建返回值
type ShippingResultData struct {
ResultCode int `json:"result_code"` // 返回状态码
SuccessList []ShippingFeeDetail `json:"success_list"` // 成功上数据列表
SuccessMsg []ShippingFeeDetail `json:"success_msg"` // 好像是所有的数据列表
Data string `json:"data"`
Msg string `json:"msg"`
}
//#endregion
//#region 创建X元M件活动
// CreateBundlesActParam 创建X件优惠活动
type CreateBundlesActParam struct {
ActId int64 `json:"act_id"` // 更新时填写,活动ID
// 创建时填写
ActName string `json:"act_name"` // 活动名称
StartTime int `json:"start_time"` // 开始时间
EndTime int `json:"end_time"` // 结束时间
ActPrice float64 `json:"act_price"` // 活动价格
ActNum int `json:"act_num"` // 活动数量(表示“X元M件”中的M)
AppFoods []struct {
AppSpuCode string `json:"app_spu_code"` // 传APP方商品id
DayLimit int `json:"day_limit"` // 商品当日活动库存须传大于0的整数或-1如传-1则表示不限制商品活动库存。
} `json:"app_foods"` // 参加活动的商品信息
}
// BundlesSuccessListDetail 创建X件优惠活动返回值
type BundlesSuccessListDetail struct {
ActId int64 `json:"act_id"` // 活动id
BatchActId int64 `json:"batch_act_id"` // 批次维度活动ID
ActDetails []struct {
Discount float64 `json:"discount"` // 活动折扣表示“X件Y折”中的Y折
ActNum int `json:"act_num"` // 活动数量表示“X件Y折”中的X件
} `json:"act_details"` // 活动优惠信息最多返回3个阶梯只有X件Y折返回该信息
ExtraInfo struct {
BatchActId int64 `json:"batch_act_id"` // 批次维度活动ID
SkuExtraInfo []struct {
SkuActId int64 `json:"sku_act_id"` // 商品维度的活动ID该ID是对act_id的补全
AppSpuCode string `json:"app_spu_code"` // 活动商品传APP方商品id即商家中台系统里商品的编码spu_code值
SkuId string `json:"sku_id"` // 商品规格id本接口暂未支持多规格商品创建活动均返回null
}
} `json:"extraInfo"` // 活动额外信息包括批次和商品维度活动idX件Y折不返回该信息
ActName string `json:"act_name"` // 活动名称
StartTime int `json:"start_time"` // 开始时间
EndTime int `json:"end_time"` // 结束时间
ActRemark string `json:"act_remark"` //活动文案
}
// BundlesSkuSuccessListDetail 查询X件商品优惠活动商品信息返回值
type BundlesSkuSuccessListDetail struct {
AppSpuCode string `json:"app_spu_code"` // 活动商品传APP方商品id即商家中台系统里商品的编码spu_code值
SkuId string `json:"sku_id"` // 商品规格id本接口暂未支持多规格商品创建活动均返回null
DayLimit int `json:"day_limit"` // 商品当日活动库存须为大于0的整数或-1如传-1则表示不限制。
}
//#endregion
//#region 加价购活动
// RepurchaseCreate 创建门店加价购活动
type RepurchaseCreate struct {
// 修改时填写
ActId int64 `json:"act_id"` // 活动ID
// 创建时填写
ActName string `json:"act_name"` // 活动名称
StartTime int `json:"start_time"` // 开始时间
EndTime int `json:"end_time"` // 结束时间
ActPrice float64 `json:"act_price"` // 换购门槛,表示可参加本次换购活动的订单金额门店(不包含运费)
ActRemark string `json:"actRemark"` // 加价换购活动描述
AppFoods []RepurchaseCreateAppFoods `json:"app_foods"` // 参加换购的活动商品数据
}
type RepurchaseCreateAppFoods struct {
AppSpuCode string `json:"app_spu_code"` // 活动商品传APP方商品id
ActPrice float64 `json:"act_price"` // 活动价(单价),表示换购一件此商品需额外支付的价格,单位元;活动价不能大于商品原价
DayLimit int `json:"day_limit"` // 商品当日活动库存须为大于0的整数或-1如传-1则表示不限制。
}
type RepurchaseCreateResult struct {
SkuActId string `json:"sku_act_id"` // 商品维度的活动ID该ID是对act_id的补全
AppSpuCode string `json:"app_spu_code"` // 同入参app_spu_code
SkuId string `json:"sku_id"` // 商品规格id本接口暂未支持多规格商品创建活动均返回null
}
// RepurchaseResult 获取门店加价购活动返回值
type RepurchaseResult struct {
ActId int64 `json:"act_id"` // 活动ID
ActName string `json:"act_name"` // 活动名称
StartTime int `json:"start_time"` // 开始时间
EndTime int `json:"end_time"` // 结束时间
ActPrice float64 `json:"act_price"` // 换购门槛,表示可参加本次换购活动的订单金额门店(不包含运费)
ActRemark string `json:"actRemark"` // 加价换购活动描述
OrderLimitTotal int `json:"order_limit_total"` // 每单可换购的商品总数为大于0的整数或-1如为-1则表示不限制。
ExtraInfo struct {
BatchActId int64 `json:"batch_act_id"` // 批次维度活动ID
SkuExtraInfo []struct {
SkuActId int64 `json:"sku_act_id"` // 商品维度的活动ID
AppSpuCode string `json:"app_spu_code"` // 活动商品传APP方商品id
SkuId interface{} `json:"sku_id"` // 商品规格id本接口暂未支持多规格商品创建活动均返回nu
} `json:"sku_extra_info"` // sku维度活动额外信息
} `json:"extraInfo"` // 活动额外信息包括批次和商品维度活动id
}
//#endregion
//#region 商品券活动
// CreateCouponAct 创建门店优惠券活动
type CreateCouponAct struct {
AppPoiCodes string `json:"app_poi_codes"` // 可使用券的门店id列表多个用英文逗号分隔
CouponName string `json:"coupon_name"` // 券名称不能超过12个字符仅支持汉字、数字和字母。
IsSinglePoi int `json:"is_single_poi"` // 券使用范围是否限制单门店取值范围0-门店通用券1-单门店券。(1)门店通用券如app_poi_codes字段传的门店ABC则A门店领ABC门店通用。(2)单门店券A门店领仅A门店用。
AppSpuCodes string `json:"app_spu_codes"` // 参加活动的商品传APP方商品id即商家中台系统里商品的编码spu_code值。(1)如不同门店内同一商品的app_spu_code不同则视为不同商品多个商品id用英文逗号分隔。(2)当创建按折扣的商品券活动且discount=0时本参数仅支持传一个参加活动的商品
SpuData []CreateCouponActSpuData `json:"spu_data"` // 创建商品券活动支持按照sku维度创建传入spu_data字段。若同时传入spu_data和app_spu_code字段默认以spu_data数据为准进行创建商品券
TakeCouponStartTime int64 `json:"take_coupon_start_time"` // 领券开始时间传10位秒级的时间戳。
TakeCouponEndTime int64 `json:"take_coupon_end_time"` // 领券结束时间传10位秒级的时间戳。
UseCouponStartTime int64 `json:"use_coupon_start_time"` // 用券开始时间传10位秒级的时间戳。
CouponLimitCount int64 `json:"coupon_limit_count"` // 活动期间每个用户领券的最大数量限制范围1~99999999的整数。
Type int `json:"type"` // 商品券类型取值范围1-按活动价格2-按折扣。
ActPriceCouponInfo []GetStoreCouponActSuccessListActPriceCouponInfo `json:"act_price_coupon_info"` // 按活动价格的商品券信息json格式数组。按活动价格的商品券活动最多支持设置三层优惠。
DiscountCouponInfo []GetStoreCouponActSuccessListDiscountCouponInfo `json:"discount_coupon_info"` // 按折扣的商品券信息json格式数组。(1)当discount大于0时折扣商品券活动的优惠信息不能超过三层。(2)当discount等于0时为商品兑换券活动仅支持设置一层。
}
// CreateCouponActSpuData SpuData参数
type CreateCouponActSpuData struct {
AppSpuCode string `json:"app_spu_code"` // APP方商品id
SkuId string `json:"sku_id"` // 是sku唯一标识码字段信息限定长度不能超过40个字符。不允许上传emoji等表情符。
Upc string `json:"upc"` // upc
}
//// CreateActPriceCouponInfo ActPriceCouponInfo 参数
//type CreateActPriceCouponInfo struct {
// FullPrice int `json:"full_price"` // 券使用门槛金额范围是1~999的正整数单位元。
// ReducePrice int `json:"reduce_price"` // 券金额范围是1~999的正整数单位元表示达到使用门槛后可以减的金额
// Stock int `json:"stock"` // 券库存范围1-99999的正整数。(1)当选择单门店券时(is_single_poi=1),该库存指的是每门店的券库存。(2) 当选择门店通用券时(is_single_poi=0),该库存指的是所有门店共享的券库存
// UseType int `json:"user_type"` // 可领券的用户取值范围0-新客&老客1-门店联合新客(原新客,全部可用门店为新客)2-老客; 7-门店新客(当前门店为新客)。如不传此字段则默认为0。
//}
//
//// CreateDiscountCouponInfo DiscountCouponInfo 参数
//type CreateDiscountCouponInfo struct {
// FullPrice int `json:"full_price"` // 券使用门槛金额范围是1~999的正整数单位元。
// Discount float64 `json:"discount"` // 折扣系数需大于0且小于10最多一位小数或传0表示兑换券。当discount=0时则此活动为无门槛商品兑换券活动此时app_spu_codes字段上传的商品数不能大于1个且该商品不可再参加其他优惠活动。
// MaxReducePrice int64 `json:"max_reduce_price"`
// Stock int `json:"stock"` // 券库存范围1-99999的正整数。(1)当选择单门店券时(is_single_poi=1),该库存指的是每门店的券库存。(2) 当选择门店通用券时(is_single_poi=0),该库存指的是所有门店共享的券库存
// UseType int `json:"user_type"` // 可领券的用户取值范围0-新客&老客1-门店联合新客(原新客,全部可用门店为新客)2-老客; 7-门店新客(当前门店为新客)。如不传此字段则默认为0。
//}
// CreateStoreCouponActResult 获取门店优惠券活动
type CreateStoreCouponActResult struct {
AppPoiCodes []string `json:"app_poi_codes"` // 门店ID列表
AppSpuCodes []string `json:"app_spu_codes"` // 成功商品列表
UpcList []string `json:"upc_list"` // 成功商品upc列表
ActId int64 `json:"act_id"` // 活动ID
}
// GetStoreCouponActParam 获取门店商品券活动
type GetStoreCouponActParam struct {
AppPoiCode string `json:"app_poi_code"` // 门店ID
ActStatus int `json:"act_status"` // 活动当前状态,取值范围:-1-全部0-未生效1-已生效2-已结束。
StartTime int64 `json:"start_time"` // 开始时间
EndTime int64 `json:"end_time"` // 结束时间
PageNum int `json:"page_num"` // 页码
PageSize int `json:"page_size"` // 页数
}
// GetStoreCouponActSuccessList 获取门店优惠券返回列表
type GetStoreCouponActSuccessList struct {
ActId int64 `json:"actId"` // 活动id
AppPoiCodes string `json:"app_poi_codes"` // 可使用券的门店列表
CouponName string `json:"coupon_name"` // 券名称
IsSinglePoi int `json:"is_single_poi"` // 券使用范围是否限制单门店参考值0-门店通用券1-单门店券。(1)门店通用券如app_poi_codes字段传的门店ABC则A门店领ABC门店通用。(2)单门店券A门店领仅A门店用。
TakeCouponStartTime int64 `json:"take_coupon_start_time"` // 领券开始时间
TakeCouponEndTime int64 `json:"take_coupon_end_time"` // 领券结束时间
UseCouponStartTime int64 `json:"use_coupon_start_time"` // 用券开始时间
CouponLimitCount int64 `json:"coupon_limit_count"` // 活动期间每个用户领券的最大数量限制范围1~99999999的整数
Type int64 `json:"type"` // 商品券类型参考值1-按活动价格2-按折扣。
//ActPriceCouponInfo []interface{} `json:"act_price_coupon_info"` // 按活动价格的商品券信息json格式数组。按活动价格的商品券活动最多支持设置三层优惠
ActPriceCouponInfo []GetStoreCouponActSuccessListActPriceCouponInfo `json:"-"`
//DiscountCouponInfo []interface{} `json:"discount_coupon_info"` // 按折扣的商品券信息json格式数组。(1)当discount大于0时为折扣商品券活动优惠信息最多三层。(2)当discount等于0时为商品兑换券活动优惠信息仅一层
DiscountCouponInfo []GetStoreCouponActSuccessListDiscountCouponInfo `json:"-"`
}
// GetStoreCouponActSuccessListActPriceCouponInfo ActPriceCouponInfo数据
type GetStoreCouponActSuccessListActPriceCouponInfo struct {
FullPrice int `json:"full_price"` // 券使用门槛金额范围是1~999的正整数单位元。
ReducePrice int `json:"reduce_price"` // 券金额范围是1~999的正整数单位元表示达到使用门槛后可以减的金额。
Stock int `json:"stock"` // 券库存范围1-99999的正整数。(1)当选择单门店券时(is_single_poi=1),该库存指的是每门店的券库存。(2) 当选择门店通用券时(is_single_poi=0),该库存指的是所有门店共享的券库存。
UserType int `json:"user_type"` // 可领券的用户取值范围null或0-新客&老客1-门店联合新客(原新客,全部可用门店为新客)2-老客; 7-门店新客(当前门店为新客)。
}
// GetStoreCouponActSuccessListDiscountCouponInfo DiscountCouponInfo
type GetStoreCouponActSuccessListDiscountCouponInfo struct {
FullPrice int `json:"full_price"` // 券使用门槛金额范围是1~999的正整数单位元。
Discount float64 `json:"discount"` // 折扣系数范围0-10之间最多一位小数或为0表示无门槛商品兑换券活
MaxReducePrice int `json:"max_reduce_price"` // 券最高可减金额,单位元。(1)当discount大于0时为折扣商品券活动优惠信息最多三层。(2)当discount等于0时为商品兑换券活动不支持设置最高可减金额max_reduce_price默认为0。
Stock int `json:"stock"` // 券库存范围1-99999的正整数。(1)当选择单门店券时(is_single_poi=1),该库存指的是每门店的券库存。(2) 当选择门店通用券时(is_single_poi=0),该库存指的是所有门店共享的券库存。
UserType int `json:"user_type"` // 可领券的用户取值范围null或0-新客&老客1-门店联合新客(原新客,全部可用门店为新客)2-老客; 7-门店新客(当前门店为新客)。
}
// CouponActSkuListSuccessList 获取商品券活动商品列表
type CouponActSkuListSuccessList struct {
ActId int `json:"actId"` // 活动ID
AppPoiCodes string `json:"app_poi_codes"` // 门店ID
CouponName string `json:"coupon_name"` // 活动名称
IsSinglePoi int `json:"is_single_poi"` // 券使用范围是否限制单门店参考值0-门店通用券1-单门店券。(1)门店通用券如app_poi_codes字段传的门店ABC则A门店领ABC门店通用。(2)单门店券A门店领仅A门店用。
AppSpuCodes string `json:"app_spu_codes"` // 商品ID
TakeCouponStartTime int64 `json:"take_coupon_start_time"` // 领券开始时间
TakeCouponEndTime int64 `json:"take_coupon_end_time"` // 领券结束时间
UseCouponStartTime int64 `json:"use_coupon_start_time"` // 使用开始时间
CouponLimitCount int64 `json:"coupon_limit_count"` // 用户领券最大数
Type int `json:"type"` // 商品券类型参考值1-按活动价格2-按折扣。
ActPriceCouponInfo []GetStoreCouponActSuccessListActPriceCouponInfo `json:"act_price_coupon_info"` // 按活动价格的商品券信息json格式数组。按活动价格的商品券活动最多支持设置三层优惠。
DiscountCouponInfo []GetStoreCouponActSuccessListDiscountCouponInfo `json:"discount_coupon_info"` // 按折扣的商品券信息json格式数组。(1)当discount大于0时为折扣商品券活动优惠信息最多三层。(2)当discount等于0时为商品兑换券活动优惠信息仅一层。
ActStatus int `json:"act_status"`
AppFoodCodes string `json:"app_food_codes"`
CouponRetailType int `json:"coupon_retail_type"`
IsShare int `json:"is_share"`
SpuData []struct {
AppSpuCode string `json:"app_spu_code"`
SkuId string `json:"sku_id"`
Upc string `json:"upc"`
} `json:"spu_data"`
UseCouponEndTime int `json:"use_coupon_end_time"`
ValidityDays int `json:"validity_days"`
}
//#endregion
//#region 第X件优惠活动
// GetStoreXDiscountSuccessList 第X件优惠返回值
type GetStoreXDiscountSuccessList struct {
ActId int64 `json:"act_id"`
BatchActId string `json:"batch_act_id"` // 批次维度活动ID
StartTime int64 `json:"start_time"` // 开始时间
EndTime int64 `json:"end_time"` // 结束时间
ActName string `json:"act_name"` // 活动名字
ActSettingType int `json:"act_setting_type"` // 1字段描述活动子类型选择。 2取值范围0-第N件X折1-第N件X元。 3活动信息的字段规则根据此字段而变化
ActDetails []GetStoreXDiscountSuccessListActDetails `json:"act_details"` // 1字段描述活动具体信息。 2至少有一阶最多三阶。
ExtraInfo GetStoreXDiscountSuccessListExtraInfo `json:"extra_info"`
}
// GetStoreXDiscountSuccessListActDetails ActDetails
type GetStoreXDiscountSuccessListActDetails struct {
Price string `json:"price"` // 1字段描述活动商品售价 2取值范围0≤X最多支持两位小数。 3此范围当“活动子类型”为1时有效
Discount string `json:"discount"` // 1字段描述活动商品折扣系数。 2取值范围0≤X≤9.99,最多支持两位小数。 3此范围当“活动子类型”为0时有效
Index int `json:"index"` // 1字段描述活动商品件数。 2取值范围N1≤N≤5
}
// GetStoreXDiscountSuccessListExtraInfo ExtraInfo
type GetStoreXDiscountSuccessListExtraInfo struct {
BatchActId int64 `json:"batch_act_id"` // 批次维度活动ID
SkuExtraInfo []struct {
SkuActId int64 `json:"sku_act_id"` // 商品维度的活动ID该ID是对act_id的补全
AppSpuCode string `json:"app_spu_code"` // 同入参app_spu_code
SkuId string `json:"sku_id"` // 商品规格id本接口暂未支持多规格商品创建活动均返回null
} `json:"sku_extra_info"` // sku维度活动额外信息
}
// CreateStoreXDiscountParam 创建地X件优惠活动
type CreateStoreXDiscountParam struct {
ActId int64 `json:"act_id"`
ActName string `json:"act_name"` // 活动名字
StartTime int64 `json:"start_time"` // 开始时间
EndTime int64 `json:"end_time"` // 结束时间
ActSettingType int `json:"act_setting_type"` // 1字段描述活动子类型选择。 2取值范围0-第N件X折1-第N件X元。 3活动信息的字段规则根据此字段而变化
ActDetails []GetStoreXDiscountSuccessListActDetails `json:"act_details"` // 1字段描述活动具体信息。 2至少有一阶最多三阶。
ActProducts []struct {
AppSpuCode string `json:"app_spu_code"` // 原app_food_code字段 1字段描述活动商品编码。 2选择第N件X元时所选商品原价必须大于活动价X。 3仅支持单规格商品参加活动 4商品原价乘活动件数必须大于活动价。 5如填写了活动id输入未在活动中存在的app_spu_code默认为在该活动中新增参加活动的商品。 6如填写了活动id输入已在活动中存在的app_spu_code则认为更新此活动中该商品库存信息。
DayLimit int `json:"day_limit"` // 1字段描述活动商品当日库存。 2格式正整数不大于999999999。 3如当日库存为无限则传-1。
} `json:"act_products"`
}
// CreateStoreXDiscountResult 创建X件优惠返回值
type CreateStoreXDiscountResult struct {
SkuActId int64 `json:"sku_act_id"` // 商品维度的活动ID该ID是对act_id的补全
AppSpuCode string `json:"app_spu_code"` // 同入参app_spu_code
SkuId string `json:"sku_id"` // 商品规格id本接口暂未支持多规格商品创建活动均返回null
}
//#endregion