兑换系统开放接口


券码解密示例

<p><strong>券码解密示例</strong></p> <pre><code class="language-java">String data = openApiResponse.getString(&amp;quot;data&amp;quot;); //解密数据 CouponOrderResult couponOrderResult = JSONObject.parseObject(data, CouponOrderResult.class); List&amp;lt;CouponInfoVo&amp;gt; couponInfo = new ArrayList&amp;lt;&amp;gt;(); log.info(&amp;quot;{}&amp;quot;, couponOrderResult); couponOrderResult.getCouponInfo().forEach( item -&amp;gt; { CouponInfoVo couponInfoVo = new CouponInfoVo(); try { if (StringUtil.isNotBlank(item.getCardNo())) { byte[] decrypt = RSAUtils.decrypt(Base64.getDecoder().decode(item.getCardNo().getBytes(StandardCharsets.UTF_8)), RSAUtils.getPrivateKey(privateKeyStr)); couponInfoVo.setCardNo(new String(decrypt)); } couponInfoVo.setCdkey(new String(RSAUtils.decrypt(Base64.getDecoder().decode(item.getCdkey().getBytes(StandardCharsets.UTF_8)), RSAUtils.getPrivateKey(privateKeyStr)))); } catch (Exception e) { e.printStackTrace(); } couponInfo.add(couponInfoVo); }); log.info(&amp;quot;解密数据:{}&amp;quot;, JSONObject.toJSONString(couponInfo)); public class CouponOrderResult { /** * 平台订单号 */ private String orderCode; /** * 商家订单号 */ private String bizCode; /** * 产品名称 */ private String productName; /** * 结算金额 */ private BigDecimal settlementPrice; /** * 兑换URL、卡号卡密 */ private Integer type; /** * 券码集合 */ private List&amp;lt;CouponInfoVo&amp;gt; couponInfo; } public class CouponInfoVo { /** * 卡号 */ private String cardNo; /** * 卡密|短链 */ private String cdkey; /** * 有效截止日期 */ private Date validityDate; }</code></pre>

页面列表

ITEM_HTML