Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,61 @@ public class PayrollTransferBatchesRequest implements Serializable {
@SerializedName(value = "total_num")
private Integer totalNum;

/**
* <pre>
* 字段名:用工类型
* 变量名:employment_type
* 是否必填:是
* 类型:string[1,32]
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

类型描述格式不一致。现有字段使用 string[1, 32](逗号后有空格),而新增的字段使用 string[1,32](逗号后无空格)。建议修改为 string[1, 32] 以保持代码库的一致性。

Copilot uses AI. Check for mistakes.
* 描述:
* 微工卡服务仅支持用于与商户有用工关系的用户,需明确用工类型;参考值:
* LONG_TERM_EMPLOYMENT:长期用工,
* SHORT_TERM_EMPLOYMENT:短期用工,
* COOPERATION_EMPLOYMENT:合作关系
* 示例值:LONG_TERM_EMPLOYMENT
* </pre>
*/
@SerializedName(value = "employment_type")
private String employmentType;

/**
* <pre>
* 字段名:用工场景
* 变量名:employment_scene
* 是否必填:否
* 类型:string[1,32]
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

类型描述格式不一致。现有字段使用 string[1, 32](逗号后有空格),而新增的字段使用 string[1,32](逗号后无空格)。建议修改为 string[1, 32] 以保持代码库的一致性。

Copilot uses AI. Check for mistakes.
* 描述:
* 用工场景,参考值:
* LOGISTICS:物流;
* MANUFACTURING:制造业;
* HOTEL:酒店;
* CATERING:餐饮业;
* EVENT:活动促销;
* RETAIL:零售;
* OTHERS:其他
* 示例值:LOGISTICS
* </pre>
*/
@SerializedName(value = "employment_scene")
private String employmentScene;

/**
* <pre>
* 字段名:特约商户授权类型
* 变量名:authorization_type
* 是否必填:是
* 类型:string[1,32]
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

类型描述格式不一致。现有字段使用 string[1, 32](逗号后有空格),而新增的字段使用 string[1,32](逗号后无空格)。建议修改为 string[1, 32] 以保持代码库的一致性。

Copilot uses AI. Check for mistakes.
* 描述:
* 特约商户授权类型:
* INFORMATION_AUTHORIZATION_TYPE:特约商户信息授权类型,
* FUND_AUTHORIZATION_TYPE:特约商户资金授权类型,
* INFORMATION_AND_FUND_AUTHORIZATION_TYPE:特约商户信息和资金授权类型
* 示例值:INFORMATION_AUTHORIZATION_TYPE
* </pre>
*/
@SerializedName(value = "authorization_type")
private String authorizationType;

/**
* <pre>
* 字段名:转账明细列表
Expand Down Expand Up @@ -235,5 +290,20 @@ public static class TransferDetail implements Serializable {
@SpecEncrypt
@SerializedName(value = "user_name")
private String userName;

/**
* <pre>
* 字段名:收款用户身份证
* 变量名:user_id_card
* 是否必填:否
* 类型:string[1, 1024]
* 描述:
* 收款用户身份证号。该字段需进行加密处理,加密方法详见敏感信息加密说明
* 示例值:8609cb22e1774a50a930e414cc71eca06121bcd266335cda230d24a7886a8d9f
* </pre>
*/
@SpecEncrypt
@SerializedName(value = "user_id_card")
private String userIdCard;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -139,13 +139,17 @@ public void payrollCardTransferBatches() throws WxPayException {
.batchRemark("2019年1月深圳分部报销单")
.totalAmount(200000L)
.totalNum(1)
.employmentType("LONG_TERM_EMPLOYMENT")
.employmentScene("LOGISTICS")
.authorizationType("INFORMATION_AUTHORIZATION_TYPE")
.transferDetailList(Collections.singletonList(
PayrollTransferBatchesRequest.TransferDetail.builder()
.outDetailNo("x23zy545Bd5436" + System.currentTimeMillis())
.transferAmount(200000L)
.transferRemark("2020年4月报销")
.openid("o-MYE42l80oelYMDE34nYD456Xoy")
.userName("张三")
.userIdCard("8609cb22e1774a50a930e414cc71eca06121bcd266335cda230d24a7886a8d9f")
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这里的 userIdCard 看起来更像是示例密文/摘要值;但 payrollCardTransferBatches 会对 @SpecEncrypt 字段再做一次 RSA 加密,最终微信侧解密后会得到一个格式不合法的“身份证号”,容易导致联调/测试失败。另外 PR 描述中的示例也有同样的误导风险。

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎

.build()
))
.build();
Expand Down
Loading