package com.iqser.red.service.persistence.service.v1.api.shared.model;

import java.time.OffsetDateTime;

import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.configuration.HorizontalTextAlignment;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.configuration.VerticalTextAlignment;
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.configuration.WatermarkOrientation;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class WatermarkModel {

    @Schema(description = "The watermark Id. Generated by the system on create.")
    private Long id;
    @Schema(description = "The name of this watermark configuration. Must be set on create / update requests")
    private String name;
    @Schema(description = "The name of this dossierTemplate. Must be set on create / update requests")
    private boolean enabled;
    @Schema(description = "The dossier template id to which watermark belongs")
    private String dossierTemplateId;
    @Schema(description = "The text used for this watermark")
    private String text;
    @Schema(description = "The hex color used in watermark")
    private String hexColor;
    @Schema(description = "The opacity used in watermark")
    private int opacity;
    @Schema(description = "The font size used for watermark")
    private int fontSize;
    @Schema(description = "The font type used for watermark")
    private String fontType;
    @Schema(description = "The watermark orientation")
    private WatermarkOrientation orientation;
    @Schema(description = "The userId of the user who created this watermark. Set by the system.")
    private String createdBy;
    @Schema(description = "The date when this watermark was created. Set by System on create.")
    private OffsetDateTime dateAdded;
    @Schema(description = "The date when this watermark was last modified. Set by System on create.")
    private OffsetDateTime dateModified;
    @Schema(description = "The watermark horizontal text alignment")
    private HorizontalTextAlignment horizontalTextAlignment;
    @Schema(description = "The watermark vertical text alignment")
    private VerticalTextAlignment verticalTextAlignment;

}
