package com.pingcap.kb.integration.jira;

import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Date;
import java.util.List;
import java.util.Map;
import lombok.Data;

@Data
public class JiraIssue {
  private String key;
  private Fields fields;

  @Data
  public static class Fields {
    private String summary;
    private String issue;
    private String rootCause;
    private String diagnosticSteps;
    private String resolution;
    private String workaround;
    private String product;
    private List<CustomValue> components;
    private List<CustomValue> affectedVersions;
    private User assignee;
    private User reporter;
    private Status status;
    private Date updated;
    private Date created;
    private String kbLink;
    private List<String> labels;
  }

  @Data
  public static class CustomValue {
    private String self;
    private String id;
    private String name;
    private String description;
  }

  @Data
  public static class User {
    private String self;
    private String name;
    private String key;
    private String emailAddress;
    private Map<String, String> avatarUrls;
    private String displayName;
    private boolean active;
    private String timeZone;
  }

  @Data
  private static class Status {
    private String self;
    private String description;
    private String name;
    private String id;
  }
}
