package pwc.taxtech.atms.dto.vatdto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Getter
@Setter
public class DataSourceDto {
//    private static String _DataSourcePrefix = "DS[";
//    private static String _DataSourceSuffix = "]";

    public DataSourceDto() {
        //this.internalCode = _DataSourcePrefix + hashCode() + _DataSourceSuffix;
    }

    String id;

    //String internalCode;
    String name;

    // 1: Formula, 2: Voucher, 3: OutputInvoice, 4: InputInvoice, 5: CustomInvoice, 6: KeyIn, 7: RelatedModel, 8: SapDaily
    Integer dataSourceType;
    private BigDecimal amount;
    String description;

    // 1: +, 2: -, 3: *, 4: /
    Integer operationType;

    // 1: Number, 2: Percentage, 3: Boolean, 4: String
    Integer resultType;
    Integer type;
    @JsonProperty("keyValueDataID")
    String keyValueDataId;
    String creator;
    Date createTime;
    String updater;
    Date updateTime;
    @JsonProperty("cellDataID")
    String cellDataId;
    List<String> items;
    @JsonProperty("projectID")
    String projectId;
    @JsonProperty("serviceTypeID")
    String serviceTypeId;
    Integer rowIndex;
    Integer columnIndex;
    String rowName;
    String columnName;
    Integer year;
    Integer period;
    String summaryExp;
    @JsonProperty("cellTemplateID")
    String cellTemplateId;
    @JsonProperty("reportTemplateID")
    String reportTemplateId;
}