From e297bbd155e6ee172e55c24950681bc7251fa09e Mon Sep 17 00:00:00 2001 From: faymanwang <1057438332@qq.com> Date: Fri, 15 May 2020 15:16:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E6=94=AF=E4=BB=98-=E5=8F=91?= =?UTF-8?q?=E7=BA=A2=E5=8C=85=E6=A8=A1=E5=9D=97-=E5=B7=B2=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=8E=B0=E9=87=91=E5=8F=91=E7=BA=A2=E5=8C=85=EF=BC=8C?= =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E5=8F=91=E7=BA=A2=E5=8C=85=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E8=BF=94=E5=9B=9E=E5=95=86=E6=88=B7=E7=BC=BA=E5=A4=B1?= =?UTF-8?q?=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/egzosn/pay/wx/api/WxPayService.java | 33 +++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java index 845f1b9..a69bff2 100644 --- a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java +++ b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java @@ -756,7 +756,20 @@ public class WxPayService extends BasePayService { return WxPayMessage.create(message); } - /** + /** + * 微信发红包 + * @author: faymanwang 1057438332@qq.com + * @param redpackOrder 红包实体 + * @return 返回发红包实体后的结果 + */ + public Map sendredpack(RedpackOrder redpackOrder) { + Map parameters = new TreeMap(); + redpackParam(redpackOrder, parameters); + parameters.put(SIGN, createSign(SignUtils.parameterText(parameters, "&", SIGN), payConfigStorage.getInputCharset())); + return requestTemplate.postForObject(getReqUrl( WxSendredpackType.SENDREDPACK), XML.getMap2Xml(parameters) , JSONObject.class); + } + + /** * 发放裂变红包 * 裂变红包:一次可以发放一组红包。首先领取的用户为种子用户,种子用户领取一组红包当中的一个,并可以通过社交分享将剩下的红包给其他用户。裂变红包充分利用了人际传播的优势。 * @@ -772,6 +785,20 @@ public class WxPayService extends BasePayService { return requestTemplate.postForObject(getReqUrl( WxSendredpackType.SENDGROUPREDPACK), XML.getMap2Xml(parameters) , JSONObject.class); } + /** + * 小程序发红包 + * @author: faymanwang 1057438332@qq.com + * @param redpackOrder 红包实体 + * @return 返回发红包实体后的结果 + */ + public Map sendminiprogramhb(RedpackOrder redpackOrder) { + Map parameters = new TreeMap(); + redpackParam(redpackOrder, parameters); + parameters.put("notify_way", "MINI_PROGRAM_JSAPI"); + parameters.put(SIGN, createSign(SignUtils.parameterText(parameters, "&", SIGN), payConfigStorage.getInputCharset())); + return requestTemplate.postForObject(getReqUrl( WxSendredpackType.SENDMINIPROGRAMHB), XML.getMap2Xml(parameters) , JSONObject.class); + } + /** * 查询红包记录 * 用于商户对已发放的红包进行查询红包的具体信息,可支持普通红包和裂变包 @@ -807,6 +834,8 @@ public class WxPayService extends BasePayService { parameters.put("client_ip", StringUtils.isNotEmpty(redpackOrder.getIp()) ? redpackOrder.getIp() : "192.168.0.1"); parameters.put("act_name", redpackOrder.getActName()); parameters.put("remark", redpackOrder.getRemark()); - parameters.put("scene_id", redpackOrder.getSceneId()); + if(StringUtils.isNotEmpty(redpackOrder.getSceneId())){ + parameters.put("scene_id", redpackOrder.getSceneId()); + } } }