blob: 58fcca3e64817e66d5c0306c8b78e8f78f1afa1b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
package com.blog.web.models;
import com.blog.web.dto.ArticleDto;
import jakarta.persistence.*;
import org.hibernate.annotations.CreationTimestamp;
import org.hibernate.annotations.UpdateTimestamp;
import java.time.LocalDateTime;
import java.util.Optional;
@Entity
public class Article {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private final long id;
private String title;
private String photoUrl;
private String content;
@CreationTimestamp
private LocalDateTime createdOn;
@UpdateTimestamp
private LocalDateTime updatedOn;
@ManyToOne
@JoinColumn(name = "created_by", nullable = false)
private UserEntity createdBy;
public Article(long id, String title, String photoUrl, String content, UserEntity createdBy, LocalDateTime createdOn, LocalDateTime updatedOn) {
this.id = id;
this.title = title;
this.photoUrl = photoUrl;
this.content = content;
this.createdBy = createdBy;
this.createdOn = createdOn;
this.updatedOn = updatedOn;
}
public Article(ArticleDto articleDto) {
this.id = Optional.ofNullable(articleDto.getId()).orElse(0L);
this.title = articleDto.getTitle();
this.photoUrl = articleDto.getPhotoUrl();
this.content = articleDto.getContent();
this.createdBy = articleDto.getCreatedBy();
this.createdOn = articleDto.getCreatedOn();
this.updatedOn = articleDto.getUpdatedOn();
}
public Article() {
this.id = 0;
}
public long getId() {
return id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getPhotoUrl() {
return photoUrl;
}
public void setPhotoUrl(String photoUrl) {
this.photoUrl = photoUrl;
}
public LocalDateTime getCreatedOn() {
return createdOn;
}
public void setCreatedOn(LocalDateTime createdOn) {
this.createdOn = createdOn;
}
public LocalDateTime getUpdatedOn() {
return updatedOn;
}
public void setUpdatedOn(LocalDateTime updatedOn) {
this.updatedOn = updatedOn;
}
public UserEntity getCreatedBy() {
return createdBy;
}
public void setCreatedBy(UserEntity createdBy) {
this.createdBy = createdBy;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
}
|