蜻蜓设备+支付宝会员的开发笔记

开发前准备

  1. 商户拥有蜻蜓设备;
  2. 商户需要开通支付宝商户会员卡功能;
  3. 商户准备好应用的AppId
  4. 商户配置好授权回调地址;
  5. 商户下载支付宝签名工具配置应用的私钥、公钥

准备好要用的参数


    private static final String SERVER_URL="https://openapi.alipay.com/gateway.do";//支付宝网关地址

    private static final String APPID="你的应用ID";

    private static final String PRIVATE_KEY="你的私钥";

    private static final String PUBLIC_KEY="你的支付宝公钥";

    

所有方法开头第一句都用到了里面的参数(多个商户改造成从数据库提取这些保存的参数)


一、上传会员卡模板需要的图片
//上传照片和视频
    public static String getImageUploadId(){
   
        AlipayClient alipayClient=new DefaultAlipayClient(SERVER_URL,APPID,PRIVATE_KEY,"JSON","utf-8",PUBLIC_KEY,"RSA2");
        AlipayOfflineMaterialImageUploadRequest request=new AlipayOfflineMaterialImageUploadRequest();
        request.setImageType("jpg");
        request.setImageName("logo");
        FileItem imageContent=new FileItem("C:\\Users\\Administrator\\Downloads\\67662e05fb1285966ecb999ca9239def.jpg");
        request.setImageContent(imageContent);
        try{
   
            AlipayOfflineMaterialImageUploadResponse response = alipayClient.execute(request);
            if (response.isSuccess()){
   
                System.out.println("调用成功"+response.getImageId());
                return response.getImageId();
            }else {
   
                System.out.println("调用失败");
            }
        }catch (Exception e){
   
            e.printStackTrace();
        }
        return null;
    }

保存好返回的图片ID后面会用到。


二、创建会员卡模板
public static String getTemplateCreateId(){
   

        AlipayClient alipayClient=new DefaultAlipayClient(SERVER_URL,APPID,PRIVATE_KEY,"JSON","utf-8",PUBLIC_KEY,"RSA2");
        AlipayMarketingCardTemplateCreateRequest request=new AlipayMarketingCardTemplateCreateRequest();
        //公共请求参数
        Map<String,Object> biz_content=new HashMap<>();
        String requestId=System.currentTimeMillis()+ RandomUtil.randomNumbers(10);
        String logo_id="zaEyRrsXTdasc9vZBwfcYgAAACMAAQED";//由第一步返回的图片Id设置
        String background_id="zaEyRrsXTdasc9vZBwfcYgAAACMAAQED";//图片Id
        System.out.println(requestId);
        biz_content.put("request_id",requestId);//请求ID,由开发者生成并保证唯一性
        biz_content.put("card_type","OUT_MEMBER_CARD");//卡类型为外部权益卡
        biz_content.put("biz_no_suffix_len","14");//业务卡号尾缀
        biz_content.put("write_off_type","qrcode");//扫用户卡中二维码显示额外传入的卡号
        //规则是数组形式
        List<Map<String,String>> field_rule_list=new ArrayList<>();
        Map<String,String> field_rule_list_map=new HashMap<>();//规则列表
        field_rule_list_map.put("field_name","OpenDate");
        field_rule_list_map.put("rule_name","ASSIGN_FROM_REQUEST");//规则
        field_rule_list_map.put("rule_value","OpenDate");
        field_rule_list.add(field_rule_list_map);
        biz_content.put("field_rule_list",field_rule_list);
        //栏位信息是数组格式
        List<Map<String,String>> column_info_list=new ArrayList<>();
        Map<String,String> column_info_list_map=new HashMap<>();
        column_info_list_map.put("code","BENEFIT_INFO");//支付宝分配各栏信息
        column_info_list_map.put(
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值