修复企业微信群聊变更事件MemChangeList字段命名规范问题 by Copilot · Pull Request #3827 · binarywang/WxJava
问题
4.7.9.B版本中企业微信群聊变更事件的MemChangeList字段解析异常,显示为空字符串。根因是WxCpXmlMessage类中字段名MemChangeList首字母大写,违反Java命名规范。
修改内容
核心修复
- 字段名从
MemChangeList改为memChangeList(保持@XStreamAlias("MemChangeList")不变)
测试覆盖
- 新增
testExternalChatChangeEvent测试方法 - 覆盖成员加入、退出及无成员变更三种场景
示例
// 群成员变更事件XML解析 String xml = "<xml>" + "<Event><![CDATA[change_external_chat]]></Event>" + "<ChangeType><![CDATA[update]]></ChangeType>" + "<MemChangeCnt>2</MemChangeCnt>" + "<MemChangeList><![CDATA[user1,user2]]></MemChangeList>" + "</xml>"; WxCpXmlMessage message = WxCpXmlMessage.fromXml(xml); String members = message.getMemChangeList(); // 现在正确返回 "user1,user2"
相关文档: 企业微信客户群变更回调
Original prompt
This section details on the original issue you should resolve
<issue_title>更新到4.7.9.B版本,在企业微信群聊变更时,MemChangeList字符串是空字符串</issue_title>
<issue_description>简要描述
更新到4.7.9.B版本,在企业微信群聊变更时,MemChangeList字符串是空字符串,如果是4.7.0版本,没有MemChangeList字段
模块版本情况
- WxJava 模块名: weixin-java-cp
- WxJava 版本号:4.7.9.B
详细描述
更新到4.7.9.B版本,在企业微信群聊变更时或者成员加入和退出时,微信回调的MemChangeList字符串是空字符串
</issue_description>
Comments on the Issue (you are @copilot in this section)
Custom agent used: 全部用中文
需要用中文,包括PR标题和分析总结过程
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.