EnrichedGlassesCSV.java
package com.sintia.ffl.admin.optique.catalogue.models;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import java.time.LocalDate;
/**
* DTO created from the data read from the csv file
*
* @author jumazet
*/
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class EnrichedGlassesCSV {
private String maker;
private String provider;
private String glassOptoCode;
private String classCode;
private String classCodeRepo;
private String glassName;
private String glassNameRepo;
private String geometry;
private String geometryRepo;
private String material;
private String materialRepo;
private boolean surfaceType;
private boolean surfaceTypeRepo;
private boolean hardened;
private boolean hardenedRepo;
private boolean antiReflection;
private boolean antiReflectionRepo;
private boolean photochromic;
private boolean photochromicRepo;
private Integer refractiveIndex;
private Integer refractiveIndexRepo;
private boolean tinted;
private boolean tintedRepo;
private String action;
@JsonSerialize(using = LocalDateSerializer.class)
private LocalDate expiryDate;
@JsonSerialize(using = LocalDateSerializer.class)
private LocalDate startDate;
private String actionCodeDelta;
private String correctedData;
private String comment;
public EnrichedGlassesCSV(GlassesCSV glasses) {
super();
this.maker = glasses.getMaker();
this.provider = glasses.getProvider();
this.glassOptoCode = glasses.getGlassOptoCode();
this.classCode = glasses.getClassCode();
this.glassName = glasses.getGlassName();
this.geometry = glasses.getGeometry();
this.material = glasses.getMaterial();
this.surfaceType = glasses.isSurfaceType();
this.hardened = glasses.isHardened();
this.antiReflection = glasses.isAntiReflection();
this.photochromic = glasses.isPhotochromic();
this.refractiveIndex = glasses.getRefractiveIndex();
this.tinted = glasses.isTinted();
this.action = glasses.getAction();
this.expiryDate = glasses.getExpiryDate();
this.startDate = glasses.getStartDate();
}
public EnrichedGlassesCSV copy() {
return new EnrichedGlassesCSV(maker, provider, glassOptoCode, classCode, classCodeRepo, glassName, glassNameRepo, geometry, geometryRepo,
material, materialRepo, surfaceType, surfaceTypeRepo, hardened, hardenedRepo, antiReflection, antiReflectionRepo,
photochromic, photochromicRepo, refractiveIndex, refractiveIndexRepo, tinted, tintedRepo, action, expiryDate, startDate,
actionCodeDelta, correctedData, comment);
}
}