diff --git a/clients/java/wechat-ferry-mvn/CHANGELOG.md b/clients/java/wechat-ferry-mvn/CHANGELOG.md index 7df6334..e9d1e7e 100644 --- a/clients/java/wechat-ferry-mvn/CHANGELOG.md +++ b/clients/java/wechat-ferry-mvn/CHANGELOG.md @@ -27,6 +27,7 @@ | 邀请群成员 | /groupMember/invite | ? | 待测试 | | 删除群成员 | /groupMember/delete | ? | 待测试 | | 查询朋友圈 | /friendCircle | ? | 待测试 | +| 接收转账 | /receiveTransfer | ? | 待测试 | ### 已知BUG @@ -42,8 +43,11 @@ - 新增添加群成员为微信好友接口 - 新增邀请群成员接口 - 新增删除群成员接口 +- 新增刷新朋友圈接口 +- 新增撤回消息接口 +- 接收转账 +- 查询群成员请求地址变更 - 消息回调配置文件参数名称修改 -- ### 2024-12-24 diff --git a/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/controller/WeChatDllController.java b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/controller/WeChatDllController.java index f98d86b..48b780c 100644 --- a/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/controller/WeChatDllController.java +++ b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/controller/WeChatDllController.java @@ -18,6 +18,7 @@ import com.wechat.ferry.entity.vo.request.WxPpWcfGroupMemberReq; import com.wechat.ferry.entity.vo.request.WxPpWcfInviteGroupMemberReq; import com.wechat.ferry.entity.vo.request.WxPpWcfPassFriendApplyReq; import com.wechat.ferry.entity.vo.request.WxPpWcfPatOnePatMsgReq; +import com.wechat.ferry.entity.vo.request.WxPpWcfReceiveTransferReq; import com.wechat.ferry.entity.vo.request.WxPpWcfRevokeMsgReq; import com.wechat.ferry.entity.vo.request.WxPpWcfSendEmojiMsgReq; import com.wechat.ferry.entity.vo.request.WxPpWcfSendFileMsgReq; @@ -249,6 +250,13 @@ public class WeChatDllController { return TResponse.ok(ResponseCodeEnum.SUCCESS); } + @ApiOperation(value = "接收转账", notes = "receiveTransfer") + @PostMapping(value = "/receiveTransfer") + public TResponse receiveTransfer(@Validated @RequestBody WxPpWcfReceiveTransferReq request) { + weChatDllService.receiveTransfer(request); + return TResponse.ok(ResponseCodeEnum.SUCCESS); + } + // @ApiOperation(value = "下载图片、视频、文件", notes = "queryMsgTypeList") // @PostMapping(value = "/list/msgType") // public TResponse queryMsgTypeList() { diff --git a/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/entity/vo/request/WxPpWcfReceiveTransferReq.java b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/entity/vo/request/WxPpWcfReceiveTransferReq.java new file mode 100644 index 0000000..b7e3bea --- /dev/null +++ b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/entity/vo/request/WxPpWcfReceiveTransferReq.java @@ -0,0 +1,35 @@ +package com.wechat.ferry.entity.vo.request; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 请求入参-个微WCF接收转账 + * + * @author chandler + * @date 2024-12-25 13:46 + */ +@Data +@ApiModel(value = "wxPpWcfReceiveTransferReq", description = "个微WCF接收转账请求入参") +public class WxPpWcfReceiveTransferReq { + + /** + * 转账人 + */ + @ApiModelProperty(value = "转账人") + private String weChatUid; + + /** + * 转账编号 transferId + */ + @ApiModelProperty(value = "转账编号") + private String transferId; + + /** + * 交易编号 Transaction id + */ + @ApiModelProperty(value = "交易编号") + private String transactionId; + +} diff --git a/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/WeChatDllService.java b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/WeChatDllService.java index 94df650..3290b42 100644 --- a/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/WeChatDllService.java +++ b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/WeChatDllService.java @@ -10,6 +10,7 @@ import com.wechat.ferry.entity.vo.request.WxPpWcfGroupMemberReq; import com.wechat.ferry.entity.vo.request.WxPpWcfInviteGroupMemberReq; import com.wechat.ferry.entity.vo.request.WxPpWcfPassFriendApplyReq; import com.wechat.ferry.entity.vo.request.WxPpWcfPatOnePatMsgReq; +import com.wechat.ferry.entity.vo.request.WxPpWcfReceiveTransferReq; import com.wechat.ferry.entity.vo.request.WxPpWcfRevokeMsgReq; import com.wechat.ferry.entity.vo.request.WxPpWcfSendEmojiMsgReq; import com.wechat.ferry.entity.vo.request.WxPpWcfSendFileMsgReq; @@ -276,4 +277,15 @@ public interface WeChatDllService { */ String queryFriendCircle(); + /** + * 接收转账 + * + * @param request 请求入参 + * @return 结果状态 + * + * @author chandler + * @date 2024-12-25 13:48 + */ + String receiveTransfer(WxPpWcfReceiveTransferReq request); + } diff --git a/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/impl/WeChatDllServiceImpl.java b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/impl/WeChatDllServiceImpl.java index 1fd9237..f5f5600 100644 --- a/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/impl/WeChatDllServiceImpl.java +++ b/clients/java/wechat-ferry-mvn/src/main/java/com/wechat/ferry/service/impl/WeChatDllServiceImpl.java @@ -29,6 +29,7 @@ import com.wechat.ferry.entity.vo.request.WxPpWcfGroupMemberReq; import com.wechat.ferry.entity.vo.request.WxPpWcfInviteGroupMemberReq; import com.wechat.ferry.entity.vo.request.WxPpWcfPassFriendApplyReq; import com.wechat.ferry.entity.vo.request.WxPpWcfPatOnePatMsgReq; +import com.wechat.ferry.entity.vo.request.WxPpWcfReceiveTransferReq; import com.wechat.ferry.entity.vo.request.WxPpWcfRevokeMsgReq; import com.wechat.ferry.entity.vo.request.WxPpWcfSendEmojiMsgReq; import com.wechat.ferry.entity.vo.request.WxPpWcfSendFileMsgReq; @@ -591,6 +592,20 @@ public class WeChatDllServiceImpl implements WeChatDllService { return ""; } + @Override + public String receiveTransfer(WxPpWcfReceiveTransferReq request) { + long startTime = System.currentTimeMillis(); + log.info("[转账]-[接收转账]-开始"); + Wcf.Transfer transfer = + Wcf.Transfer.newBuilder().setWxid(request.getWeChatUid()).setTfid(request.getTransferId()).setTaid(request.getTransferId()).build(); + Wcf.Request req = Wcf.Request.newBuilder().setFuncValue(Wcf.Functions.FUNC_RECV_TRANSFER_VALUE).setTf(transfer).build(); + Wcf.Response rsp = wechatSocketClient.sendCmd(req); + int state = judgeWcfCmdState(rsp); + long endTime = System.currentTimeMillis(); + log.info("[转账]-[接收转账]-处理结束,耗时:{}ms", (endTime - startTime)); + return ""; + } + /** * 获取SQL类型 *