package com.foxinmy.weixin4j.qy.model; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.annotation.JSONField; import com.foxinmy.weixin4j.http.weixin.ApiResult; import com.foxinmy.weixin4j.qy.type.BatchStatus; import com.foxinmy.weixin4j.qy.type.BatchType; /** * 异步任务执行结果 * * @className BatchResult * @author jinyu(foxinmy@gmail.com) * @date 2015年3月31日 * @since JDK 1.6 * @see */ public class BatchResult extends ApiResult { private static final long serialVersionUID = 4985338631992208903L; /** * 任务状态 */ private int status; /** * 任务类型 */ private String type; /** * 任务运行总条数 */ private int total; /** * 目前运行百分比,当任务完成时为100 */ @JSONField(name = "percentage") private int percentAge; /** * 预估剩余时间(单位:分钟),当任务完成时为0 */ @JSONField(name = "remaintime") private int remainTime; /** * 详细的处理结果 TODO */ private JSONArray result; public int getStatus() { return status; } @JSONField(serialize = false) public BatchStatus getFormatStatus() { return BatchStatus.values()[status - 1]; } public String getType() { return type; } @JSONField(serialize = false) public BatchType getFormatType() { return type != null ? BatchType.valueOf(type.toUpperCase()) : null; } public int getTotal() { return total; } public int getPercentAge() { return percentAge; } public int getRemainTime() { return remainTime; } public JSONArray getResult() { return result; } // ---------- setter 应该全部去掉 public void setStatus(int status) { this.status = status; } public void setType(String type) { this.type = type; } public void setTotal(int total) { this.total = total; } public void setPercentAge(int percentAge) { this.percentAge = percentAge; } public void setRemainTime(int remainTime) { this.remainTime = remainTime; } public void setResult(JSONArray result) { this.result = result; } @Override public String toString() { return "BatchResult [" + super.toString() + ", status=" + status + ", type=" + type + ", total=" + total + ", percentAge=" + percentAge + ", remainTime=" + remainTime + ", result=" + result + "]"; } }