All Downloads are FREE. Search and download functionalities are using the official Maven repository.

me.chanjar.weixin.cp.bean.message.WxCpXmlApprovalInfo Maven / Gradle / Ivy

There is a newer version: 4.6.7.B
Show newest version
package me.chanjar.weixin.cp.bean.message;

import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamConverter;
import com.thoughtworks.xstream.annotations.XStreamImplicit;
import lombok.Data;
import me.chanjar.weixin.common.util.xml.XStreamCDataConverter;

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

/**
 * 审批信息
 * 

* 审批申请状态变化回调通知 * https://developer.work.weixin.qq.com/document/path/91815 *

* 自建应用审批状态变化通知回调 * https://developer.work.weixin.qq.com/document/path/90269 * * @author Gyv12345 */ @XStreamAlias("ApprovalInfo") @Data public class WxCpXmlApprovalInfo implements Serializable { private static final long serialVersionUID = 8136329462880646091L; // 自建应用审批状态变化通知回调 /** * 审批单编号,由开发者在发起申请时自定义 */ @XStreamAlias("ThirdNo") @XStreamConverter(value = XStreamCDataConverter.class) private String thirdNo; /** * 审批模板名称 */ @XStreamAlias("OpenSpName") @XStreamConverter(value = XStreamCDataConverter.class) private String openSpName; /** * 审批模板id */ @XStreamAlias("OpenTemplateId") @XStreamConverter(value = XStreamCDataConverter.class) private String openTemplateId; /** * 申请单当前审批状态:1-审批中;2-已通过;3-已驳回;4-已撤销 */ @XStreamAlias("OpenSpStatus") private Integer openSpStatus; /** * 提交者姓名 */ @XStreamAlias("ApplyUserName") @XStreamConverter(value = XStreamCDataConverter.class) private String applyUserName; /** * 提交者userid */ @XStreamAlias("ApplyUserId") @XStreamConverter(value = XStreamCDataConverter.class) private String applyUserId; /** * 提交者所在部门 */ @XStreamAlias("ApplyUserParty") @XStreamConverter(value = XStreamCDataConverter.class) private String applyUserParty; /** * 提交者头像 */ @XStreamAlias("ApplyUserImage") @XStreamConverter(value = XStreamCDataConverter.class) private String applyUserImage; /** * 当前审批节点:0-第一个审批节点;1-第二个审批节点…以此类推 */ @XStreamAlias("ApproverStep") private Integer approverStep; /** * 审批流程信息 */ @XStreamImplicit(itemFieldName = "ApprovalNodes") private List approvalNodes; /** * 抄送信息,可能有多个抄送人 */ @XStreamImplicit(itemFieldName = "NotifyNodes") private List notifyNodes; /** * 抄送人信息 */ @XStreamAlias("NotifyNodes") @Data public static class NotifyNode implements Serializable { private static final long serialVersionUID = -979255011922209018L; /** * 抄送人姓名 */ @XStreamAlias("ItemName") @XStreamConverter(value = XStreamCDataConverter.class) private String itemName; /** * 抄送人userid */ @XStreamAlias("ItemUserid") @XStreamConverter(value = XStreamCDataConverter.class) private String itemUserId; /** * 抄送人所在部门 */ @XStreamAlias("ItemParty") @XStreamConverter(value = XStreamCDataConverter.class) private String itemParty; /** * 抄送人头像 */ @XStreamAlias("ItemImage") @XStreamConverter(value = XStreamCDataConverter.class) private String itemImage; } /** * 审批流程信息,可以有多个审批节点 */ @XStreamAlias("ApprovalNodes") @Data public static class ApprovalNode implements Serializable { private static final long serialVersionUID = -979255011922209018L; /** * 节点审批操作状态:1-审批中;2-已同意;3-已驳回;4-已转审 */ @XStreamAlias("NodeStatus") private Integer nodeStatus; /** * 审批节点属性:1-或签;2-会签 */ @XStreamAlias("NodeAttr") private Integer nodeAttr; /** * 审批节点类型:1-固定成员;2-标签;3-上级 */ @XStreamAlias("NodeType") private Integer nodeType; /** * 审批节点信息,当节点为标签或上级时,一个节点可能有多个分支 */ @XStreamImplicit(itemFieldName = "Items") private List items; } /** * 审批节点分支,当节点为标签或上级时,一个节点可能有多个分支 */ @XStreamAlias("Items") @Data public static class Item implements Serializable { private static final long serialVersionUID = -979255011922209018L; /** * 分支审批人姓名 */ @XStreamAlias("ItemName") @XStreamConverter(value = XStreamCDataConverter.class) private String itemName; /** * 分支审批人userid */ @XStreamAlias("ItemUserid") @XStreamConverter(value = XStreamCDataConverter.class) private String itemUserId; /** * 分支审批人所在部门 */ @XStreamAlias("ItemParty") @XStreamConverter(value = XStreamCDataConverter.class) private String itemParty; /** * 分支审批人头像 */ @XStreamAlias("ItemImage") @XStreamConverter(value = XStreamCDataConverter.class) private String itemImage; /** * 分支审批人审批意见 */ @XStreamAlias("ItemSpeech") @XStreamConverter(value = XStreamCDataConverter.class) private String itemSpeech; /** * 分支审批审批操作状态:1-审批中;2-已同意;3-已驳回;4-已转审 */ @XStreamAlias("ItemStatus") private Integer itemStatus; /** * 分支审批人操作时间 */ @XStreamAlias("ItemOpTime") private Long itemOpTime; } // 审批申请状态变化回调通知 /** * 审批编号 */ @XStreamAlias("SpNo") private String spNo; /** * 审批申请类型名称(审批模板名称) */ @XStreamAlias("SpName") @XStreamConverter(value = XStreamCDataConverter.class) private String spName; /** * 申请单状态:1-审批中;2-已通过;3-已驳回;4-已撤销;6-通过后撤销;7-已删除;10-已支付 */ @XStreamAlias("SpStatus") private Integer spStatus; /** * 审批模板id。 */ @XStreamAlias("TemplateId") @XStreamConverter(value = XStreamCDataConverter.class) private String templateId; /** * 审批申请提交时间,Unix时间戳 */ @XStreamAlias("ApplyTime") private Long applyTime; /** * 申请人信息 */ @XStreamAlias("Applyer") private Applier applier; /** * 审批流程信息,可能有多个审批节点。 */ @XStreamImplicit(itemFieldName = "SpRecord") private List spRecords; /** * 抄送信息,可能有多个抄送节点 * 这回查字典,notifier通知人,Notifyer这不知道是什么 */ @XStreamImplicit(itemFieldName = "Notifyer") private List notifier; /** * 审批申请备注信息,可能有多个备注节点 */ @XStreamImplicit(itemFieldName = "Comments") private List comments; /** * 审批申请单变化类型 */ @XStreamAlias("StatuChangeEvent") private Integer statusChangeEvent; /** * 申请人信息 */ @XStreamAlias("Applyer") @Data public static class Applier implements Serializable { private static final long serialVersionUID = -979255011922209018L; /** * 申请人userid */ @XStreamAlias("UserId") private String userId; /** * 申请人所在部门pid */ @XStreamAlias("Party") private String party; } /** * 审批流程信息 */ @XStreamAlias("SpRecord") @Data public static class SpRecord implements Serializable { private static final long serialVersionUID = 1247535623941881764L; /** * 审批节点状态:1-审批中;2-已同意;3-已驳回;4-已转审 */ @XStreamAlias("SpStatus") private String spStatus; /** * 节点审批方式:1-或签;2-会签 */ @XStreamAlias("ApproverAttr") private String approverAttr; /** * 审批节点详情。当节点为标签或上级时,一个节点可能有多个分支 */ @XStreamImplicit(itemFieldName = "Details") private List details; } /** * 审批节点详情 */ @XStreamAlias("Details") @Data public static class Detail implements Serializable { private static final long serialVersionUID = -8446107461495047603L; /** * 分支审批人 */ @XStreamAlias("Approver") private Approver approver; /** * 审批意见字段 */ @XStreamAlias("Speech") private String speech; /** * 分支审批人审批状态:1-审批中;2-已同意;3-已驳回;4-已转审 */ @XStreamAlias("SpStatus") private String spStatus; /** * 节点分支审批人审批操作时间,0为尚未操作 */ @XStreamAlias("SpTime") private Long spTime; /** * 节点分支审批人审批意见附件,赋值为media_id具体使用请参考:文档-获取临时素材 */ @XStreamImplicit(itemFieldName = "Attach") private List attach; } /** * 分支审批人 */ @Data @XStreamAlias("Approver") public static class Approver implements Serializable { private static final long serialVersionUID = 7360442444186683191L; /** * 分支审批人userid */ @XStreamAlias("UserId") private String userId; } /** * 抄送信息 */ @Data @XStreamAlias("Notifyer") public static class Notifier implements Serializable { private static final long serialVersionUID = -4524071522890013920L; /** * 节点抄送人userid */ @XStreamAlias("UserId") private String userId; } /** * 审批申请备注信息 */ @Data @XStreamAlias("Comments") public static class Comment implements Serializable { private static final long serialVersionUID = 6912156206252719485L; /** * 备注人信息 */ @XStreamAlias("CommentUserInfo") private CommentUserInfo commentUserInfo; /** * 备注提交时间 */ @XStreamAlias("CommentTime") private String commentTime; /** * 备注文本内容 */ @XStreamAlias("CommentContent") private String commentContent; /** * 备注id */ @XStreamAlias("CommentId") private String commentId; /** * 备注意见附件,值是附件media_id */ @XStreamImplicit(itemFieldName = "Attach") private List attach; } @Data @XStreamAlias("CommentUserInfo") public static class CommentUserInfo implements Serializable { private static final long serialVersionUID = 5031739716823000947L; /** * 备注人userid */ @XStreamAlias("UserId") private String userId; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy