1212/**
1313 * 审批信息
1414 *
15+ * 审批申请状态变化回调通知
16+ * https://developer.work.weixin.qq.com/document/path/91815
17+ *
18+ * 自建应用审批状态变化通知回调
19+ * https://developer.work.weixin.qq.com/document/path/90269
20+ *
1521 * @author Gyv12345
1622 */
1723@ XStreamAlias ("ApprovalInfo" )
1824@ Data
1925public class WxCpXmlApprovalInfo implements Serializable {
2026 private static final long serialVersionUID = 8136329462880646091L ;
2127
28+
29+ // 自建应用审批状态变化通知回调
30+ /**
31+ * 审批单编号,由开发者在发起申请时自定义
32+ */
33+ @ XStreamAlias ("ThirdNo" )
34+ @ XStreamConverter (value = XStreamCDataConverter .class )
35+ private String thirdNo ;
36+
37+ /**
38+ * 审批模板名称
39+ */
40+ @ XStreamAlias ("OpenSpName" )
41+ @ XStreamConverter (value = XStreamCDataConverter .class )
42+ private String openSpName ;
43+
44+ /**
45+ * 审批模板id
46+ */
47+ @ XStreamAlias ("OpenTemplateId" )
48+ @ XStreamConverter (value = XStreamCDataConverter .class )
49+ private String openTemplateId ;
50+
51+ /**
52+ * 申请单当前审批状态:1-审批中;2-已通过;3-已驳回;4-已撤销
53+ */
54+ @ XStreamAlias ("OpenSpStatus" )
55+ private Integer openSpStatus ;
56+
57+ /**
58+ * 提交者姓名
59+ */
60+ @ XStreamAlias ("ApplyUserName" )
61+ @ XStreamConverter (value = XStreamCDataConverter .class )
62+ private String applyUserName ;
63+
64+ /**
65+ * 提交者userid
66+ */
67+ @ XStreamAlias ("ApplyUserId" )
68+ @ XStreamConverter (value = XStreamCDataConverter .class )
69+ private String applyUserId ;
70+
71+ /**
72+ * 提交者所在部门
73+ */
74+ @ XStreamAlias ("ApplyUserParty" )
75+ @ XStreamConverter (value = XStreamCDataConverter .class )
76+ private String applyUserParty ;
77+
78+ /**
79+ * 提交者头像
80+ */
81+ @ XStreamAlias ("ApplyUserImage" )
82+ @ XStreamConverter (value = XStreamCDataConverter .class )
83+ private String applyUserImage ;
84+
85+ /**
86+ * 当前审批节点:0-第一个审批节点;1-第二个审批节点…以此类推
87+ */
88+ @ XStreamAlias ("ApproverStep" )
89+ private Integer approverStep ;
90+
91+ /**
92+ * 审批流程信息
93+ */
94+ @ XStreamImplicit (itemFieldName = "ApprovalNodes" )
95+ private List <ApprovalNode > approvalNodes ;
96+
97+ /**
98+ * 抄送信息,可能有多个抄送人
99+ */
100+ @ XStreamImplicit (itemFieldName = "NotifyNodes" )
101+ private List <NotifyNode > notifyNodes ;
102+
103+ /**
104+ * 抄送人信息
105+ */
106+ @ XStreamAlias ("NotifyNodes" )
107+ @ Data
108+ public static class NotifyNode implements Serializable {
109+ private static final long serialVersionUID = -979255011922209018L ;
110+
111+ /**
112+ * 抄送人姓名
113+ */
114+ @ XStreamAlias ("ItemName" )
115+ @ XStreamConverter (value = XStreamCDataConverter .class )
116+ private String itemName ;
117+
118+ /**
119+ * 抄送人userid
120+ */
121+ @ XStreamAlias ("ItemUserid" )
122+ @ XStreamConverter (value = XStreamCDataConverter .class )
123+ private String itemUserId ;
124+
125+ /**
126+ * 抄送人所在部门
127+ */
128+ @ XStreamAlias ("ItemParty" )
129+ @ XStreamConverter (value = XStreamCDataConverter .class )
130+ private String itemParty ;
131+
132+ /**
133+ * 抄送人头像
134+ */
135+ @ XStreamAlias ("ItemImage" )
136+ @ XStreamConverter (value = XStreamCDataConverter .class )
137+ private String itemImage ;
138+
139+ }
140+
141+ /**
142+ * 审批流程信息,可以有多个审批节点
143+ */
144+ @ XStreamAlias ("ApprovalNodes" )
145+ @ Data
146+ public static class ApprovalNode implements Serializable {
147+ private static final long serialVersionUID = -979255011922209018L ;
148+
149+ /**
150+ * 节点审批操作状态:1-审批中;2-已同意;3-已驳回;4-已转审
151+ */
152+ @ XStreamAlias ("NodeStatus" )
153+ private Integer nodeStatus ;
154+
155+ /**
156+ * 审批节点属性:1-或签;2-会签
157+ */
158+ @ XStreamAlias ("NodeAttr" )
159+ private Integer nodeAttr ;
160+
161+ /**
162+ * 审批节点类型:1-固定成员;2-标签;3-上级
163+ */
164+ @ XStreamAlias ("NodeType" )
165+ private Integer nodeType ;
166+
167+ /**
168+ * 审批节点信息,当节点为标签或上级时,一个节点可能有多个分支
169+ */
170+ @ XStreamImplicit (itemFieldName = "Items" )
171+ private List <Item > items ;
172+
173+ }
174+
175+ /**
176+ * 审批节点分支,当节点为标签或上级时,一个节点可能有多个分支
177+ */
178+ @ XStreamAlias ("Items" )
179+ @ Data
180+ public static class Item implements Serializable {
181+ private static final long serialVersionUID = -979255011922209018L ;
182+
183+ /**
184+ * 分支审批人姓名
185+ */
186+ @ XStreamAlias ("ItemName" )
187+ @ XStreamConverter (value = XStreamCDataConverter .class )
188+ private String itemName ;
189+
190+ /**
191+ * 分支审批人userid
192+ */
193+ @ XStreamAlias ("ItemUserid" )
194+ @ XStreamConverter (value = XStreamCDataConverter .class )
195+ private String itemUserId ;
196+
197+ /**
198+ * 分支审批人所在部门
199+ */
200+ @ XStreamAlias ("ItemParty" )
201+ @ XStreamConverter (value = XStreamCDataConverter .class )
202+ private String itemParty ;
203+
204+ /**
205+ * 分支审批人头像
206+ */
207+ @ XStreamAlias ("ItemImage" )
208+ @ XStreamConverter (value = XStreamCDataConverter .class )
209+ private String itemImage ;
210+
211+ /**
212+ * 分支审批人审批意见
213+ */
214+ @ XStreamAlias ("ItemSpeech" )
215+ @ XStreamConverter (value = XStreamCDataConverter .class )
216+ private String itemSpeech ;
217+
218+ /**
219+ * 分支审批审批操作状态:1-审批中;2-已同意;3-已驳回;4-已转审
220+ */
221+ @ XStreamAlias ("ItemStatus" )
222+ private Integer itemStatus ;
223+
224+ /**
225+ * 分支审批人操作时间
226+ */
227+ @ XStreamAlias ("ItemOpTime" )
228+ private Long itemOpTime ;
229+
230+ }
231+
232+
233+ // 审批申请状态变化回调通知
22234 /**
23235 * 审批编号
24236 */
@@ -44,6 +256,7 @@ public class WxCpXmlApprovalInfo implements Serializable {
44256 @ XStreamAlias ("TemplateId" )
45257 @ XStreamConverter (value = XStreamCDataConverter .class )
46258 private String templateId ;
259+
47260 /**
48261 * 审批申请提交时间,Unix时间戳
49262 */
@@ -249,4 +462,5 @@ private static class CommentUserInfo implements Serializable {
249462 @ XStreamAlias ("UserId" )
250463 private String userId ;
251464 }
465+
252466}
0 commit comments