POST
/cardResourceRule/addCardResourceRule管理后台旅游卡资源-新增
旅游卡 / 资源规则
基本信息
- 接口状态前端在用
- 接口URLPOST
https://dscp-dev.hn12301.net/manage-api/cardResourceRule/addCardResourceRule - 请求方式
POST - Content-Type
application/json - 暴露渠道管理后台 前缀
/manage-api - 名称来源源码注释
- 调用方已确认在用 · 管理后台(1 个前端)
- 需求上下文
- 维护人 / 最后改动AsiQue 2023-12-05
- 读写数据表
card_resource_rule反查该表全部接口 → - 控制器
com.jxxx.dscp.api.controller.card.CardResourceRuleController#addCardResourceRule - 源码位置
jxxx-dscp/dscp-service-business/src/main/java/com/jxxx/dscp/api/controller/card/CardResourceRuleController.java:243 - 判定依据
请求参数
Header 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无(渠道统一鉴权头见《认证方式》) | ||||
Query 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
路径参数及说明
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
Body 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| cardModelId | … | 是 | Long | 旅游卡ID,关联旅游卡表id → card_resource_rule.card_model_id |
| resourceName | … | 否 | String | 资源名称 → card_resource_rule.resource_name |
| shopId | … | 否 | Long | 商铺id → card_resource_rule.shop_id |
| goodsId | … | 否 | Long | 资源ID,关联商品表id → card_resource_rule.goods_id |
| skuId | … | 否 | Long | skuid,关联sku表id → card_resource_rule.sku_id |
| status | … | 否 | Boolean | 资源状态 → card_resource_rule.status |
| signEndTime | … | 是 | Date | 签约到期日期 → card_resource_rule.sign_end_time |
| preferential | … | 否 | Preferential | 优惠方式,1免费,2折扣,3优惠 → card_resource_rule.preferential 1=免费 2=折扣 3=优惠 |
| discountPercentage | … | 否 | Integer | 折扣百分比(%) → card_resource_rule.discount_percentage |
| discountAmount | … | 否 | Integer | 优惠后金额 → card_resource_rule.discount_amount |
| totalTimes | … | 否 | Integer | 总共可使用次数 → card_resource_rule.total_times |
| monthTimes | … | 否 | Integer | 每月可使用次数 → card_resource_rule.month_times |
| dayTimes | … | 否 | Integer | 每天可使用次数 → card_resource_rule.day_times |
| isSecond | … | 否 | Boolean | 是否二次购买 → card_resource_rule.is_second |
| secondDiscount | … | 否 | Integer | 二次购买折扣 → card_resource_rule.second_discount |
| buyTimes | … | 否 | Integer | 最多购买次数 → card_resource_rule.buy_times |
| cardInstruction | … | 否 | String | 持卡使用说明 → card_resource_rule.card_instruction |
| isAppointment | … | 否 | Boolean | 是否需要预约 → card_resource_rule.is_appointment |
| canAppointment | … | 否 | Boolean | → card_resource_rule.can_appointment |
| advanceDays | … | 否 | Integer | 提前预约天数 → card_resource_rule.advance_days |
| advanceHour | … | 否 | Integer | 提前预约小时 → card_resource_rule.advance_hour |
| cancelHour | … | 否 | Integer | → card_resource_rule.cancel_hour |
| appointmentDays | … | 否 | Integer | 可预约几天之内 → card_resource_rule.appointment_days |
| isAppointmentCount | … | 否 | Boolean | 预约是否算使用次数 → card_resource_rule.is_appointment_count |
| unavailableSegments | … | 否 | String[] | 不可用号段 |
| introduce | … | 否 | String | 资源简介 → card_resource_rule.introduce |
| notice | … | 否 | String | 预约须知 → card_resource_rule.notice |
| prompt | … | 否 | String | 温馨提示 → card_resource_rule.prompt |
| ticketPriceModel | … | 否 | TicketPriceModel | 签约门票定价方式 → card_resource_rule.ticket_price_model 1=统一定价 2=周期定价 |
| ticketUniformPrice | … | 否 | Long | 签约门票价 → card_resource_rule.ticket_uniform_price |
| ticketPeriodPrice | … | 否 | List<TicketPeriodPrice> | 签约门票周期价 → card_resource_rule.ticket_period_price |
| price | … | 否 | Long | 门票价 |
| startDate | … | 否 | Date | 开始时间 |
| endDate | … | 否 | Date | 结束时间 |
| ticketPeriodBasePrice | … | 否 | Long | 签约门票周期基础定价 → card_resource_rule.ticket_period_base_price |
| settlementWay | … | 否 | SettlementWay | 结算方式 → card_resource_rule.settlement_way 1=按刷卡次数 2=买断 3=分成 4=按分配金额统一计算 5=月度均衡分配计算 |
| ladderFlag | … | 否 | Boolean | 是否阶梯计算 |
| checkSettlementType | … | 否 | CheckSettlementType | 刷卡次数结算方式 → card_resource_rule.check_settlement_type 1=签约计价 2=阶梯计价 3=阈值计价 |
| settlementPriceOnce | … | 否 | Long | 单次入园结算金额 → card_resource_rule.settlement_price_once |
| settlementPriceLadder | … | 否 | List<SettlementLadderPrice> | 阶梯入园结算金额 → card_resource_rule.settlement_price_ladder |
| minCheckNum | … | 否 | Integer | 最小入园次数 |
| maxCheckNum | … | 否 | Integer | 最大入园次数 |
| settlementPriceOnce | … | 否 | Long | 单次入园结算金额 → card_resource_rule.settlement_price_once |
| calcCheckNum | … | 否 | Integer | 计算核销次数 -- 临时字段 |
| settlementPriceBuyout | … | 否 | Long | 结算周期买断金额 → card_resource_rule.settlement_price_buyout |
| cardSaleShare | … | 否 | Long | 销售卡分成,元每张 → card_resource_rule.card_sale_share |
| minSaleFlag | … | 否 | Boolean | 是否设置保底分成售卡张数 → card_resource_rule.min_sale_flag |
| maxSaleFlag | … | 否 | Boolean | 是否设置上限分成售卡张数 → card_resource_rule.max_sale_flag |
| minSaleNum | … | 否 | Integer | 保底分成售卡张数 → card_resource_rule.min_sale_num |
| maxSaleNum | … | 否 | Integer | 上限分成售卡张数 → card_resource_rule.max_sale_num |
| minCostFlag | … | 否 | Boolean | 是否有最低保本单价 → card_resource_rule.min_cost_flag |
| minCostPrice | … | 否 | Integer | 最低保本单价 → card_resource_rule.min_cost_price |
| belowMinCostWay | … | 否 | BelowCostSettlementWay | 平均单价未达保本单价时结算方式 → card_resource_rule.below_min_cost_way 1=按保本单价补充金额 2=按实际金额计算 |
| aboveMinCostWay | … | 否 | AboveCostSettlementWay | 平均单价高于保本单价时结算方式 → card_resource_rule.above_min_cost_way 1=按保本单价计算金额 2=按实际金额计算 |
| monthShareTicketPrice | … | 否 | Long | 月度均衡分配结算签约门票价 <em>结算方式为月度均衡分配计算时,签约门票价取该值</em> → card_resource_rule.month_share_ticket_price |
| isAppointmentPay | … | 否 | Integer | 预约是否需要付费 1是 → card_resource_rule.is_appointment_pay |
| appointmentPayAmount | … | 否 | Integer | 付费金额(元) → card_resource_rule.appointment_pay_amount |
| isCheckRefund | … | 否 | Integer | 入园后是否退款 1是 → card_resource_rule.is_check_refund |
认证方式
响应参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| id | … | 否 | Long | ID,主键 → card_resource_rule.id |
| cardModelId | … | 否 | Long | 旅游卡ID,关联旅游卡表id → card_resource_rule.card_model_id |
| cardModelName | … | 否 | String | 所属卡种 |
| shopId | … | 否 | Long | 商铺id → card_resource_rule.shop_id |
| shopName | … | 否 | String | 所属商铺 |
| goodsId | … | 否 | Long | 资源ID,关联商品表id → card_resource_rule.goods_id |
| resourceName | … | 否 | String | 资源名称 → card_resource_rule.resource_name |
| skuId | … | 否 | Long | skuid,关联sku表id → card_resource_rule.sku_id |
| type | … | 否 | String | 资源类型 → card_resource_rule.type |
| status | … | 否 | Boolean | 资源状态 → card_resource_rule.status |
| resourceStatus | … | 否 | ResourceStatus | → card_resource_rule.resource_status 1=已上架 2=编辑中 3=已下架 |
| signEndTime | … | 否 | Date | 签约到期日期 → card_resource_rule.sign_end_time |
| preferential | … | 否 | Preferential | 优惠方式,1免费,2折扣,3优惠 → card_resource_rule.preferential 1=免费 2=折扣 3=优惠 |
| isAppointment | … | 否 | Boolean | 是否需要预约 → card_resource_rule.is_appointment |
| createdTime | … | 否 | Date | 创建时间 → card_resource_rule.created_time |
| discountPercentage | … | 否 | Integer | 折扣百分比(%) → card_resource_rule.discount_percentage |
| discountAmount | … | 否 | Integer | 优惠后金额 → card_resource_rule.discount_amount |
| totalTimes | … | 否 | Integer | 总共可使用次数 → card_resource_rule.total_times |
| monthTimes | … | 否 | Integer | 每月可使用次数 → card_resource_rule.month_times |
| dayTimes | … | 否 | Integer | 每天可使用次数 → card_resource_rule.day_times |
| isSecond | … | 否 | Boolean | 是否二次购买 → card_resource_rule.is_second |
| secondDiscount | … | 否 | Integer | 二次购买折扣 → card_resource_rule.second_discount |
| buyTimes | … | 否 | Integer | 最多购买次数 → card_resource_rule.buy_times |
| cardInstruction | … | 否 | String | 持卡使用说明 → card_resource_rule.card_instruction |
| advanceDays | … | 否 | Integer | 提前预约天数 → card_resource_rule.advance_days |
| advanceHour | … | 否 | Integer | 提前预约小时 → card_resource_rule.advance_hour |
| cancelHour | … | 否 | Integer | → card_resource_rule.cancel_hour |
| appointmentDays | … | 否 | Integer | 可预约几天之内 → card_resource_rule.appointment_days |
| isAppointmentCount | … | 否 | Boolean | 预约是否算使用次数 → card_resource_rule.is_appointment_count |
| canAppointment | … | 否 | Boolean | → card_resource_rule.can_appointment |
| unavailableSegments | … | 否 | String[] | 不可用号段 |
| unavailableDates | … | 否 | String[] | 不可用日期区间 |
| introduce | … | 否 | String | 资源简介 → card_resource_rule.introduce |
| notice | … | 否 | String | 预约须知 → card_resource_rule.notice |
| prompt | … | 否 | String | 温馨提示 → card_resource_rule.prompt |
| ticketPriceModel | … | 否 | TicketPriceModel | 签约门票定价方式 → card_resource_rule.ticket_price_model 1=统一定价 2=周期定价 |
| ticketUniformPrice | … | 否 | Long | 签约门票价 → card_resource_rule.ticket_uniform_price |
| ticketPeriodPrice | … | 否 | List<TicketPeriodPrice> | 签约门票周期价 → card_resource_rule.ticket_period_price |
| price | … | 否 | Long | 门票价 |
| startDate | … | 否 | Date | 开始时间 |
| endDate | … | 否 | Date | 结束时间 |
| ticketPeriodBasePrice | … | 否 | Long | 签约门票周期基础定价 → card_resource_rule.ticket_period_base_price |
| settlementWay | … | 否 | SettlementWay | 结算方式 → card_resource_rule.settlement_way 1=按刷卡次数 2=买断 3=分成 4=按分配金额统一计算 5=月度均衡分配计算 |
| checkSettlementType | … | 否 | CheckSettlementType | 刷卡次数结算方式 → card_resource_rule.check_settlement_type 1=签约计价 2=阶梯计价 3=阈值计价 |
| ladderFlag | … | 否 | Boolean | 是否阶梯计算 |
| settlementPriceOnce | … | 否 | Long | 单次入园结算金额 → card_resource_rule.settlement_price_once |
| settlementPriceLadder | … | 否 | List<SettlementLadderPrice> | 阶梯入园结算金额 → card_resource_rule.settlement_price_ladder |
| minCheckNum | … | 否 | Integer | 最小入园次数 |
| maxCheckNum | … | 否 | Integer | 最大入园次数 |
| settlementPriceOnce | … | 否 | Long | 单次入园结算金额 → card_resource_rule.settlement_price_once |
| calcCheckNum | … | 否 | Integer | 计算核销次数 -- 临时字段 |
| settlementPriceBuyout | … | 否 | Long | 结算周期买断金额 → card_resource_rule.settlement_price_buyout |
| cardSaleShare | … | 否 | Long | 销售卡分成,元每张 → card_resource_rule.card_sale_share |
| minSaleFlag | … | 否 | Boolean | 是否设置保底分成售卡张数 → card_resource_rule.min_sale_flag |
| maxSaleFlag | … | 否 | Boolean | 是否设置上限分成售卡张数 → card_resource_rule.max_sale_flag |
| minSaleNum | … | 否 | Integer | 保底分成售卡张数 → card_resource_rule.min_sale_num |
| maxSaleNum | … | 否 | Integer | 上限分成售卡张数 → card_resource_rule.max_sale_num |
| minCostFlag | … | 否 | Boolean | 是否有最低保本单价 → card_resource_rule.min_cost_flag |
| minCostPrice | … | 否 | Integer | 最低保本单价 → card_resource_rule.min_cost_price |
| belowMinCostWay | … | 否 | BelowCostSettlementWay | 平均单价未达保本单价时结算方式 → card_resource_rule.below_min_cost_way 1=按保本单价补充金额 2=按实际金额计算 |
| aboveMinCostWay | … | 否 | AboveCostSettlementWay | 平均单价高于保本单价时结算方式 → card_resource_rule.above_min_cost_way 1=按保本单价计算金额 2=按实际金额计算 |
| isSettlementPlayNum | … | 否 | Boolean | 是否设置单张卡结算入园次数上限 → card_resource_rule.is_settlement_play_num |
| settlementPlayNum | … | 否 | Integer | 单张卡结算时入园次数上限 → card_resource_rule.settlement_play_num |
| settlementMerchantId | … | 否 | Long | 结算商户id(即开票方) → card_resource_rule.settlement_merchant_id |
| isAppointmentPay | … | 否 | Integer | 预约是否需要付费 1是 → card_resource_rule.is_appointment_pay |
| appointmentPayAmount | … | 否 | Integer | 付费金额(元) → card_resource_rule.appointment_pay_amount |
| isCheckRefund | … | 否 | Integer | 入园后是否退款 1是 → card_resource_rule.is_check_refund |
响应示例
成功响应示例
{
"errcode": 0,
"errmsg": "",
"data": {
"id": "1",
"cardModelId": "1",
"cardModelName": "\"string\"",
"shopId": "1",
"shopName": "\"string\"",
"goodsId": "1",
"resourceName": "\"string\"",
"skuId": "1",
"type": "\"string\"",
"status": "false",
"resourceStatus": "1",
"signEndTime": "\"2026-01-01 00:00:00\""
}
}失败响应示例
{
"data": null,
"可能返回": [
{
"errcode": "99999",
"errmsg": "服务内部错误"
}
]
}附录 · 实现细节
调用链 / 数据表 / 调用点证据 / 源码注释 / 逻辑摘要
涉及数据表:card_resource_rule 反查全部引用接口 →
- CardResourceRuleController#addCardResourceRule
- BeanUtils.map → CardResourceRule ⇒ 表 card_resource_rule
- BeanUtils.map → CardResourceRuleResponse
其它依赖:GoodsCache.get、DictDataCache.get
逻辑摘要:查询详情(cardResourceRuleService.get);调用 isNotEmpty(StrUtil.isNotEmpty);新增(cardResourceRuleService.add);入参与返回值经 BeanUtils 做对象/分页映射
操作日志:card / 新增资源规则
源码内联注释(旧站解析结果)
- 资源名称不能重复
- 根据卡种 skuId查询
旧站环境备注:pro:(仓库 .env.pro 指向 uat;生产域名未确认,此处沿用 uat 主机示意)
调用点证据
dscp-html-manage/src/api/card/index.ts:209管理后台 · request
可能抛出的业务码:99999 服务内部错误 错误码字典 →