8000 合并develop分支,发布最新正式版 by binarywang · Pull Request #1730 · binarywang/WxJava · GitHub
[go: up one dir, main page]

Skip to content

合并develop分支,发布最新正式版 #1730

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 92 commits into from
Aug 23, 2020
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
d650bb6
:art: 抽取公共代码
binarywang May 25, 2020
8bb6b02
:art: #1580 企业微信成员信息里性别字段枚举类增加0值
binarywang May 25, 2020
7b641e7
:art: 小程序 Spring Boot Starter 模块优化重构
binarywang May 25, 2020
edf1401
:art: #1583 企业微信读取成员接口增加返回字段:main_department
Ricky-dgs May 26, 2020
da0ce15
:art: #1585 微信支付结果异步通知的解析方法增加可以自行指定signType的重载方法
binarywang May 26, 2020
b95045b
:bug: 修复错误代码
binarywang May 28, 2020
eb6a578
:art: 规范优化部分代码
binarywang May 28, 2020
1720e51
:art: 微信现金红包发送接口信息处理优化,针对处理中的变态错误信息不抛出异常
binarywang May 30, 2020
6e2babd
:art: 规范优化部分代码
binarywang May 30, 2020
17aaba2
:art: 微信模版消息行业获取的代码优化
binarywang May 30, 2020
0a2e4d8
:bookmark: 发布 3.8.1.1.B 测试版本
binarywang May 30, 2020
2446fa6
:art: #1592 实现简单的redis分布式锁 RedisTemplateSimpleDistributedLock
lkqm May 31, 2020
6c3d090
:bug: #1582 use lock.tryLock() to avoid waiting for locks for a long …
lkqm May 31, 2020
1c60839
:art: #571 微信小程序接口请求增加多种http客户端
lkqm Jun 1, 2020
b52e676
:bug: #1600 修复无法切换到初始公众号配置的问题并完善了removeConfigStorage方法
rain7fine11 Jun 3, 2020
f14b33a
:art: #1599 企业微信获取打卡数据接口返回类增加打卡设备id字段
binarywang Jun 4, 2020
9341419
:art: 规范部分代码
binarywang Jun 6, 2020
ddbeda4
:art: 重构补充部分单元测试代码
binarywang Jun 6, 2020
a2f5452
:art: 规范部分代码,增加javadoc
binarywang Jun 7, 2020
58b2617
Merge branch 'master' into develop
binarywang Jun 7, 2020
92c0fd6
:new: #1529 微信支付退款增加支持单品退款和对应查询的接口
binarywang Jun 7, 2020
8467852
:bug: #1608 修复企业微信外部联系人群列表错误参数
sunhao91 Jun 7, 2020
0f8361e
:art: 优化部分代码
binarywang Jun 7, 2020
03d9f2d
:bookmark: 发布 3.8.2.B 测试版本
binarywang Jun 7, 2020
a81550f
:art: 优化部分代码
binarywang Jun 11, 2020
29b4dbd
:art: #1610 换用guava的相应方法实现base64解码,避免因commons-codec版本问题导致解码异常
binarywang Jun 11, 2020
3b37f52
#1620 :art: 公众号模块配置类增加Redisson的实现
wuxingye Jun 15, 2020
8256c46
:art: #1619 企业微信获取用户信息接口优化,处理type为null情况下可能会导致的空指针问题
binarywang Jun 15, 2020
2769f50
Merge branch 'master' into develop
binarywang Jun 16, 2020
1ae00b6
:art: 优化单元测试
binarywang Jun 16, 2020
320f367
:art: #1619 企业微信获取用户信息接口优化,处理type为null情况下可能会导致的空指针问题
binarywang Jun 16, 2020
c2034cb
:art: #1624 企业微信模块更新用户信息相关接口类以适应企业微信私有化版本
sdlszjb Jun 17, 2020
a0c370b
:art: #1627 优化小程序starter,避免依赖jedis
miemieYaho Jun 18, 2020
ba33c9a
:bookmark: 发布 3.8.3.B 测试版本
binarywang Jun 18, 2020
4d44398
:bug: #1649 修复小程序直播间列表接口出现 require https hints 的问题
taneg Jun 30, 2020
eec3f78
:bug: #1653 修复SDK扫码登录签名算法获取 Ticket时的type参数值
CharismaYU Jun 30, 2020
c60fda4
:new: #1651 添加小程序直播间商品相关操作接口
lipengjun92 Jun 30, 2020
a00d67a
:art: 优化规范部分代码
binarywang Jun 30, 2020
7d20aa1
:art: 清理部分冗余代码
binarywang Jun 30, 2020
b755694
:art: #1647 优化公众号redis配置支持,去掉容易导致问题的构造方法
binarywang Jul 2, 2020
978ada7
:new: #1527 微信小程序增加OCR身份证识别和银行卡识别等接口
binarywang Jul 5, 2020
8121a52
:bookmark: 发布 3.8.4.B 测试版本
binarywang Jul 5, 2020
0adca96
:art: #1659 Json解析统一优化
niefy Jul 6, 2020
10c4d45
:art: #1647 优化小程序redis配置支持,去掉容易导致问题的构造方法
binarywang Jul 7, 2020
1650ee2
:art: 修复小程序直播接口获取不到部分字段值的问题
binarywang Jul 7, 2020
b93169e
:bug: #1664 企业微信修复获取联系客户统计数据接口的错误字段:negative_fee_back_cnt
binarywang Jul 10, 2020
4ab5080
:art: 优化代码
binarywang Jul 11, 2020
03c143b
:bookmark: 发布 3.8.5.B 测试版本
binarywang Jul 11, 2020
7c0a38e
:new: #1668 企业微信增加外部联系人发送消息的接口
deanwong Jul 15, 2020
56a271c
:art: #1671 优化微信支付回调通知验证签名的代码
binarywang Jul 16, 2020
3b8c66a
:art: 规范lock.lock()代码,统一放在try代码块之外
arbing Jul 17, 2020
f6f4b89
:new: #1641 企业微信增加OA提交审批申请的接口
binarywang Jul 18, 2020
11974f0
:art: 会员卡相关bean类重构,集中到同一包中
binarywang Jul 18, 2020
4d14409
:bookmark: 发布 3.8.6.B 测试版本
binarywang Jul 19, 2020
04fb35d
:bug: #1604 修复微信开放平台帐号管理相关接口,使用指定appId的access_token
whhya Jul 21, 2020
0758049
:new: #1474 企业微信新增客户联系「联系我」管理接口 修正 / #1590 开放平台刷新AccessToken同步更新Refr…
forfuns Jul 21, 2020
694f2c2
:new: #1493 企业微信增加管理企业客户标签的相关接口
huangxm129 Jul 26, 2020
fbe2dd9
:art: 优化企业微信部分代码
binarywang Jul 26, 2020
6a27b83
:bug: 修复公众号和小程序的OCR相关接口请求方式为post
binarywang Jul 26, 2020
fa24f78
:art: 优化企业微信部分代码
binarywang Jul 26, 2020
7ef9e91
:bug: 修复一个字段值表达转换问题
binarywang Jul 26, 2020
2755bc9
:bookmark: 发布 3.8.7.B 测试版本
binarywang Jul 26, 2020
a776e9c
:art: #1690 企业微信外部联系人客户详情接口增加几个字段
huangxm129 Jul 31, 2020
a9f9e30
:bug: #1699 企业微信模块修复添加企业客户标签接口
huangxm129 Aug 6, 2020
e7f2378
:new: #1639 微信支付增加v3图片上传接口
zhouyongshen Aug 7, 2020
edf8e18
:new: #1706 微信支付增加特约商户进件相关接口
zhouyongshen Aug 7, 2020
c588303
:art: #1700 公众号WxMpConfigStorage接口提供setHostConfig()方法,方便设置相关信息
binarywang Aug 8, 2020
542b633
:art: 重构优化部分包结构
binarywang Aug 8, 2020
14dfe30
:new: #1685 小程序增加图像处理相关接口
binarywang Aug 8, 2020
4bd5b3c
:art: 修复代码
binarywang Aug 8, 2020
9346c17
:art: 抽取oauth2相关接口方法到独立类WxOAuth2Service中
binarywang Aug 9, 2020
4d3346d
:art: #1688 升级jedis依赖版本为3.3.0,已解决部分问题
binarywang Aug 9, 2020
ce8f4f8
:bookmark: 发布 3.8.8.B 测试版本
binarywang Aug 9, 2020
a7ea5f5
:bug: #1713 企业微信修复获取企业已配置的「联系我」方式详情接口
huangxm129 Aug 16, 2020
928ba17
:art: 修复部分拼写错误的变量命名
binarywang Aug 16, 2020
8b7ca9b
:new: #1710 企业微信增加发送新客户欢迎语接口
binarywang Aug 16, 2020
9145628
:art: #1631 SDK最低支持版本设置为JDK8,放弃对JDK7及更旧版本的支持
binarywang Aug 16, 2020
79f0092
:new: #1267 小程序模块增加多账号切换功能支持
binarywang Aug 16, 2020
43633aa
:bookmark: 发布 3.8.9.B 测试版本
binarywang Aug 16, 2020
a278383
:art: #1716 微信支付证书配置读取代码优化,支持本地路径和网络路径
cloudX2019 Aug 17, 2020
17c2042
:new: #1667 微信支付增加电商收付通-二级商户进件相关接口
cloudX2019 Aug 18, 2020
6f95386
:new: #1720 增加企业微信群机器人消息发送接口
xyz9025 Aug 21, 2020
c1c66e9
:bug: #1724 微信支付证书初始化代码去掉不推荐的TLSv1协议,解决退款接口报No appropriate protocol的问题
missionOdd Aug 22, 2020
bd100bf
:bug: #1714 修复小程序初始化时报错的问题
binarywang Aug 22, 2020
aca8dba
:art: 优化规范部分代码
binarywang Aug 22, 2020
817b474
:art: 优化规范统一部分代码格式
binarywang Aug 22, 2020
6d996f2
:art: 优化重构部分代码,抽取公共常量
binarywang Aug 23, 2020
b5956fb
:art: 精简代码,移除无用过期接口代码
binarywang Aug 23, 2020
2797bd6
:art: 重构部分单元测试代码
binarywang Aug 23, 2020
33b13b1
:art: #1591 给部分请求方法导致无限递归调用的代码增加日志,方便排查问题
binarywang Aug 23, 2020
daf0b23
:art: 修复部分单元测试
binarywang Aug 23, 2020
ec7ab21
:bookmark: 发布 3.9.0 正式版本
binarywang Aug 23, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
🆕 #1667 微信支付增加电商收付通-二级商户进件相关接口
电商收付通二级商户进件

Co-authored-by: 曾浩 <epdcgsi@dingtalk.com>
  • Loading branch information
cloudX2019 and 曾浩 authored Aug 18, 2020
commit 17c20422e22bddc140baf45904f85427f6965166

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
package com.github.binarywang.wxpay.bean.ecommerce;

import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
* 二级商户进件 提交申请结果响应
*/
@Data
@NoArgsConstructor
public class ApplymentsResult implements Serializable {

/**
* <pre>
* 字段名:微信支付申请单号
* 变量名:applyment_id
* 是否必填:是
* 类型:uint64
* 描述:
* 微信支付分配的申请单号 。
* 示例值:2000002124775691
* </pre>
*/
@SerializedName(value = "applyment_id")
private String applymentId;

/**
* <pre>
* 字段名:业务申请编号
* 变量名:out_request_no
* 是否必填:是
* 类型:string(124)
* 描述:
* 服务商自定义的商户唯一编号。每个编号对应一个申请单,每个申请单审核通过后会生成一个微信支付商户号。
* 示例值:APPLYMENT_00000000001
* </pre>
*/
@SerializedName(value = "out_request_no")
private String outRequestNo;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,308 @@
package com.github.binarywang.wxpay.bean.ecommerce;

import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

@Data
@NoArgsConstructor
public class ApplymentsStatusResult implements Serializable {
/**
* <pre>
* 字段名:申请状态
* 变量名:applyment_state
* 是否必填:否
* 类型:string(32)
* 描述:
* 枚举值:
* CHECKING:资料校验中
* ACCOUNT_NEED_VERIFY:待账户验证
* AUDITING:审核中
* REJECTED:已驳回
* NEED_SIGN:待签约
* FINISH:完成
* FROZEN:已冻结
* 示例值:FINISH
* </pre>
*/
@SerializedName(value = "applyment_state")
private String applymentState;

/**
* <pre>
* 字段名:申请状态描述
* 变量名:applyment_state_desc
* 是否必填:否
* 类型:string(32)
* 描述:
* 申请状态描述
* 示例值:“审核中”
* </pre>
*/
@SerializedName(value = "applyment_state_desc")
private String applymentStateDesc;

/**
* <pre>
* 字段名:签约链接
* 变量名:sign_url
* 是否必填:否
* 类型:string(256)
* 描述:
* 1、当申请状态为NEED_SIGN时才返回。
* 2、建议将链接转为二维码展示,需让申请单-管理者用微信扫码打开,完成签约。
* 示例值:https://pay.weixin.qq.com/public/apply4ec_sign/s?applymentId=2000002126198476&sign=b207b673049a32c858f3aabd7d27c7ec
* </pre>
*/
@SerializedName(value = "sign_url")
private String signUrl;

/**
* <pre>
* 字段名:电商平台二级商户号
* 变量名:sub_mchid
* 是否必填:否
* 类型:string(32)
* 描述:
* 当申请状态为NEED_SIGN或FINISH时才返回。
* 示例值:1542488631
* </pre>
*/
@SerializedName(value = "sub_mchid")
private String subMchid;

/**
* <pre>
* 字段名:+汇款账户验证信息
* 变量名:account_validation
* 是否必填:否
* 类型:object
* 描述:当申请状态为ACCOUNT_NEED_VERIFY 时有返回,可根据指引汇款,完成账户验证。
* </pre>
*/
@SerializedName(value = "account_validation")
private AccountValidation accountValidation;

/**
* <pre>
* 字段名:+驳回原因详情
* 变量名:audit_detail
* 是否必填:否
* 类型:array
* 描述:各项资料的审核情况。当申请状态为REJECTED或 FROZEN时才返回。
* </pre>
*/
@SerializedName(value = "audit_detail")
private List<AuditDetail> auditDetail;

/**
* <pre>
* 字段名:法人验证链接
* 变量名:legal_validation_url
* 是否必填:否
* 类型:string(256)
* 描述:
* 1、当申请状态为
* ACCOUNT_NEED_VERIFY,且通过系统校验的申请单,将返回链接。
* 2、建议将链接转为二维码展示,让商户法人用微信扫码打开,完成账户验证。
* 示例值: https://pay.weixin.qq.com/public/apply4ec_sign/s?applymentId=2000002126198476&sign=b207b673049a32c858f3aabd7d27c7ec
* </pre>
*/
@SerializedName(value = "legal_validation_url")
private String legalValidationUrl;

/**
* <pre>
* 字段名:业务申请编号
* 变量名:out_request_no
* 是否必填:是
* 类型:string(124)
* 描述:
* 提交接口填写的业务申请编号。
* 示例值:APPLYMENT_00000000001
* </pre>
*/
@SerializedName(value = "out_request_no")
private String outRequestNo;

/**
* <pre>
* 字段名:微信支付申请单号
* 变量名:applyment_id
* 是否必填:否
* 类型:uint64
* 描述:
* 微信支付分配的申请单号。
* 示例值:2000002124775691
* </pre>
*/
@SerializedName(value = "applyment_id")
private String applymentId;

@Data
@NoArgsConstructor
public static class AccountValidation implements Serializable{
/**
* <pre>
* 字段名:付款户名
* 变量名:account_name
* 是否必填:否
* 类型:uint64
* 描述:
* 需商户使用该户名的账户进行汇款。
* 示例值: rDdICA3ZYXshYqeOSslSjSMf+MhhC4oaujiISFzq3AE+as7mAEDJly+DgRuVs74msmKUH8pl+3oA==
* </pre>
*/
@SerializedName(value = "account_name")
private String accountName;

/**
* <pre>
* 字段名:付款卡号
* 变量名:account_no
* 是否必填:否
* 类型:string(128)
* 描述:
* 结算账户为对私时会返回,商户需使用该付款卡号进行汇款。
* 示例值:9nZYDEvBT4rDdICA3ZYXshYqeOSslSjSauAE+as7mAEDJly+DgRuVs74msmKUH8pl+3oA==
* </pre>
*/
@SerializedName(value = "account_no")
private String accountNo;

/**
* <pre>
* 字段名:汇款金额
* 变量名:pay_amount
* 是否必填:否
* 类型:string(32)
* 描述:
* 需要汇款的金额(单位:分)。
* 示例值:124
* </pre>
*/
@SerializedName(value = "pay_amount")
private String payAmount;

/**
* <pre>
* 字段名:收款卡号
* 变量名:destination_account_number
* 是否必填:否
* 类型:string(128)
* 描述:
* 收款账户的卡号
* 示例值:7222223333322332
* </pre>
*/
@SerializedName(value = "destination_account_number")
private String destinationAccountNumber;

/**
* <pre>
* 字段名:收款户名
* 变量名:destination_account_name
* 是否必填:否
* 类型:string(128)
* 描述:
* 收款账户名
* 示例值:财付通支付科技有限公司
* </pre>
*/
@SerializedName(value = "destination_account_name")
private String destinationAccountName;

/**
* <pre>
* 字段名:开户银行
* 变量名:destination_account_bank
* 是否必填:否
* 类型:string(128)
* 描述:
* 收款账户的开户银行名称。
* 示例值:招商银行威盛大厦支行
* </pre>
*/
@SerializedName(value = "destination_account_bank")
private String destinationAccountBank;

/**
* <pre>
* 字段名:省市信息
* 变量名:city
* 是否必填:否
* 类型:string(128)
* 描述:
* 收款账户的省市。
* 示例值:深圳
* </pre>
*/
@SerializedName(value = "city")
private String city;

/**
* <pre>
* 字段名:备注信息
* 变量名:remark
* 是否必填:否
* 类型:string(128)
* 描述:
* 商户汇款时,需要填写的备注信息。
* 示例值:入驻账户验证
* </pre>
*/
@SerializedName(value = "remark")
private String remark;

/**
* <pre>
* 字段名:汇款截止时间
* 变量名:deadline
* 是否必填:否
* 类型:string(20)
* 描述:
* 请在此时间前完成汇款。
* 示例值:2018-12-1017:09:01
* </pre>
*/
@SerializedName(value = "deadline")
private String deadline;

}

@Data
@NoArgsConstructor
public static class AuditDetail implements Serializable{
/**
* <pre>
* 字段名:参数名称
* 变量名:param_name
* 是否必填:否
* 类型:string(32)
* 描述:
* 提交申请单的资料项名称。
* 示例值:id_card_copy
* </pre>
*/
@SerializedName(value = "param_name")
private String paramName;

/**
* <pre>
* 字段名:驳回原因
* 变量名:reject_reason
* 是否必填:否
* 类型:string(32)
* 描述:
* 提交资料项被驳回原因。
* 示例值:身份证背面识别失败,请上传更清晰的身份证图片
* </pre>
*/
@SerializedName(value = "reject_reason")
private String rejectReason;

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,12 @@ public class WxPayConfig {
* 私钥信息
*/
private PrivateKey privateKey;

/**
* 证书自动更新时间差(分钟),默认一分钟
*/
private int certAutoUpdateTime = 60;

/**
* p12证书文件内容的字节数组.
*/
Expand Down Expand Up @@ -245,8 +251,7 @@ public CloseableHttpClient initApiV3HttpClient() throws WxPayException {

AutoUpdateCertificatesVerifier verifier = new AutoUpdateCertificatesVerifier(
new WxPayCredentials(mchId, new PrivateKeySigner(certSerialNo, merchantPrivateKey)),
apiV3Key.getBytes(StandardCharsets.UTF_8));

apiV3Key.getBytes(StandardCharsets.UTF_8), this.getCertAutoUpdateTime());

CloseableHttpClient httpClient = WxPayV3HttpClientBuilder.create()
.withMerchant(mchId, certSerialNo, merchantPrivateKey)
Expand Down
Loading
0