银行卡积分消耗
大约 3 分钟
积分服务
银行卡积分消耗
服务ID | zjrcuoip.cpm.card.point.consume |
---|---|
VERSION | 1.0.0 |
服务详细描述
由开放平台接入的商户系统发起,使用银行卡消耗客户通用积分。
注:参数中的必填要求:M为必填项,O为非必填项,C为条件选填项。
示例代码
CpmCradPointConsumeDemoOp.java
/**
* 银行卡积分消耗
*
* @author
*/
@Service
public class CpmCradPointConsumeDemoOp {
@SuppressWarnings({ "rawtypes", "unchecked" })
public static void execute() {
// 1.获取通讯连接对象
INetTools netTools = NetToolsHttpFactory.getHttpInstance();
// 2.生成公共请求报文对象
OipReqBean oipReqBean = new OipReqBean();
// 设置应用id
oipReqBean.setAppId("应用id");
// 设置开发者id
oipReqBean.setDlpId("开发者id");
// 设置产品id
oipReqBean.setProdId("产品id");
// 设置api方法名
oipReqBean.setMethod("zjrcuoip.cpm.card.point.consume");
// 设置api版本
oipReqBean.setVersion("1.0.0");
// 设置时间戳
SimpleDateFormat sfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
oipReqBean.setTimestamp(sfs.format(new Date()));
// 3.生成请求配置对象,配置请求地址/url等信息
NetReqConfBean netReqConfBean = new NetReqConfBean();
// 应用私钥
netReqConfBean.setAppPrivateKey("应用私钥");
// 请求地址
netReqConfBean.setNetUrl("请求地址");
// 开发者公钥
netReqConfBean.setPublicKey("开发者公钥");
// 设置业务报文
Date d=new Date();
SimpleDateFormat sf=new SimpleDateFormat("yyyyMMddHHmmss");
//以map接收所有参数生成业务报文,主要是必输项,具体参考接口文档
Map map =new HashMap();
map.put("输入项必输字段", "字段值");
String bizContent = JSON.toJSONString(map);
// 生成业务报文json对象
oipReqBean.setBizContent(bizContent);
// 通讯获取报文对象
OipRspBean oipRspBean = netTools.execute(oipReqBean, netReqConfBean);
// 响应成功
if (oipRspBean.isSuccess()) {
String bizJson = oipRspBean.getBizContent();
if (StringUtils.isNotBlank(bizJson)) {
Map bizData = JSON.parseObject(bizJson, Map.class);
System.out.println(bizData);
}
}
}
}
公共报文
业务输入项
序号 | key | 中文名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|---|
1 | userInfo | 用户信息 | M | String | 4096 | 包含用户四要素'银行卡号,身份证号,用户名,用户密码’的RSA加密串(开放平台公钥),加密前内容格式示例如下 |
2 | purseId | 积分科目 | M | String | 20 | 积分类目,通用类:common_point、场景类:special_point(暂不支持) |
3 | camSecondId | 场景积分二级类目 | C | String | 20 | 场景类积分消耗预留字段 |
4 | consumePoint | 扣减积分值 | M | String | 20 | 扣减积分值 |
5 | serialNo | 交易流水号 | M | String | 32 | 交易流水号,要求唯一,可包含数字、大小写字母。编号规则为:9J(2位系统编号)+年月日(8位数字)+序号(最长22位) |
6 | transTime | 交易时间 | M | String | 10 | 交易时间,格式:yyyy-MM-dd |
7 | settDate | 清算日期 | O | String | 20 | 清算日期 格式:yyyy-MM-dd HH:mm:ss |
8 | remark | 备注 | O | String | 50 | 备注 |
userInfo说明(加密前是个map):
序号 | key | 中文名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|---|
1 | userName | 用户名 | O | String | 32 | |
2 | password | 用户密码 | O | String | 20 | |
3 | cardNo | 银行卡号 | M | String | 20 | |
4 | certNo | 身份证号 | O | String | 20 |
业务输出项
序号 | key | 中文名称 | 是否必输 | 类型 | 长度 | 说明 |
---|---|---|---|---|---|---|
1 | bizSts | 交易状态 | M | String | 4 | 01-成功 02-失败 |
2 | bizStsDesp | 交易状态描述 | M | String | 255 | |
3 | rjctRsnCd | 错误码 | O | String | 32 | |
4 | rjctRsn | 错误描述 | O | String | 255 |