Untitled
unknown
java
9 months ago
2.8 kB
6
Indexable
@Getter
@Setter
@SuperBuilder
@NoArgsConstructor
@SQLRestriction(CLAUSE_RECORD_STATUS_ACTIVE)
@Entity
@Table(name = "izvestaj")
public class Report extends UserAuditEntity {
@NotBlank
@Column(name = "naziv")
private String name;
@Column(name = "opis")
private String description;
@NotNull
@Lob
@Basic(fetch = FetchType.LAZY)
@Column(name = "jasper")
private byte[] jasper;
@NotBlank
@Column(name = "jasper_naziv")
private String jasperName;
@OneToMany(mappedBy = "report", cascade = CascadeType.ALL)
private List<ReportParam> reportParams;
public void delete() {
setRecordStatus(EnumRecordStatus.SOFT_DELETED);
reportParams.forEach(ReportParam::delete);
}
}
@Getter
@Setter
@SuperBuilder
@NoArgsConstructor
@SQLRestriction(CLAUSE_RECORD_STATUS_ACTIVE)
@Entity
@Table(name = "izvestaj_parametar")
public class ReportParam extends UserAuditEntity {
@NotNull
@ManyToOne
@JoinColumn(name = "id_izvestaj")
private Report report;
@NotNull
@Enumerated(EnumType.STRING)
@Column(name = "parametar_tip_enum")
private EnumParamType paramType;
@Column(name = "naziv")
private String name;
@NotBlank
@Column(name = "sifra")
private String code;
@NotNull
@Column(name = "obavezan")
private Boolean required;
public void delete() {
setRecordStatus(EnumRecordStatus.SOFT_DELETED);
}
}
@Getter
@Setter
@SuperBuilder
@NoArgsConstructor
@SQLRestriction(CLAUSE_RECORD_STATUS_ACTIVE)
@Entity
@Table(name = "generisan_izvestaj")
public class GeneratedReport extends UserAuditEntity {
@NotNull
@ManyToOne
@JoinColumn(name = "id_izvestaj")
private Report report;
@NotNull
@Lob
@Basic(fetch = FetchType.LAZY)
@Column(name = "sadrzaj")
private byte[] content;
@OneToMany(mappedBy = "generatedReport", cascade = { CascadeType.ALL })
private List<GeneratedReportParam> generatedReportParams;
public void delete() {
setRecordStatus(EnumRecordStatus.SOFT_DELETED);
generatedReportParams.forEach(GeneratedReportParam::delete);
}
}
@Getter
@Setter
@SuperBuilder
@NoArgsConstructor
@SQLRestriction(CLAUSE_RECORD_STATUS_ACTIVE)
@Entity
@Table(name = "generisan_izvestaj_parametar")
public class GeneratedReportParam extends UserAuditEntity {
@NotNull
@ManyToOne
@JoinColumn(name = "id_generisan_izvestaj")
private GeneratedReport generatedReport;
@NotNull
@ManyToOne
@JoinColumn(name = "id_izvestaj_parametar")
private ReportParam reportParam;
@NotBlank
@Column(name = "vrednost")
private String value;
public void delete() {
setRecordStatus(EnumRecordStatus.SOFT_DELETED);
}
}Editor is loading...
Leave a Comment