Commit: f0438c2

Commit Details

SHAf0438c2cbc2d838bb66a4d8129dd25b5d48d28ee
Treeb8e53d050248c8b632fa3de86003489acae4670b
Author<f69e50@finnacloud.com> 1766443042 +0300
Committer<f69e50@finnacloud.com> 1766443042 +0300
Message
increment once more
GPG Signature
-----BEGIN PGP SIGNATURE-----

iQJSBAABCAA8FiEEWJb139mJI+vZ81KkoAIVSUsXI0oFAmlJyCIeHHNvcGhpYS5l
cmFzbGFuQGZpbm5hY2xvdWQuY29tAAoJEKACFUlLFyNKtrgP/04FZPSa4Hmx9WpR
gOamzjIXc+1+pBvGQDairLZU6rtDSgNkoryrsqOOLIXZWkkxZ70q8/aXQBFThr+t
YyDIz85u9GiwPOV8o1X4sxzF7bupOd6YmOOPqS2vco1aibpB8w9N9EwlMzW95Otw
vnQ/h0kz8MTp0wfXeRJqvLg8DVPnLgW70ly1TZQe19jEA4NwBZOyK2ksTis8iycX
HUM4WW8Velo8O+OtygAbwISr2dILKvkclTLn9kgfpN5esvBvJu4K+xA5T5alDchc
PY3FFeZteQf3GX4v0EH8K3c/q8OcQFMxuRGO31uYGqNbjbOB7zdZVs3N0B1m1efv
vhCgZ6gyxlz0kiozgO6Sx5WFOzHuTlguCK+x0JOtzCokRL/VLiPzmW5Umt280eJz
AlD7u7Dah3khoqDkzXfCL1lxch9tRMVMUYWRMayxC3iculCFM6OCLgzY9hay5y1j
WP1ZOdy/x9jKPoLv5USnw0KlH4rZIHH+aDMDEzWmWUWYDpShylG7sKafXg75bnho
5LbAfCucnDrkjN+rx1dxaKrZswQlIJ8iZ5Q6DzHnDzl4TaFcN1E3exS+xp46H7va
SbR94UfpCyjpTQ2hHdOS7XHINFUDIzWF3mUZ8gqyEANiqpgJ+RcOGX66s69oILpr
vD20SIdMHWDqJH3G6GMNsg1g5/QU
=YrcG
-----END PGP SIGNATURE-----

✓ Verified

File: src/main/java/com/paymentlink/model/entity/Translation.java

1 package com.paymentlink.model.entity;
2
3 import jakarta.persistence.*;
4 import lombok.AllArgsConstructor;
5 import lombok.Builder;
6 import lombok.Data;
7 import lombok.NoArgsConstructor;
8 import org.hibernate.annotations.CreationTimestamp;
9 import org.hibernate.annotations.UpdateTimestamp;
10
11 import java.time.LocalDateTime;
12
13 @Entity
14 @Table(name = "translations",
15 indexes = @Index(name = "idx_translation_lookup",
16 columnList = "entityType,entityId,fieldName,languageCode"))
17 @Data
18 @NoArgsConstructor
19 @AllArgsConstructor
20 @Builder
21 public class Translation {
22
23 @Id
24 @GeneratedValue(strategy = GenerationType.IDENTITY)
25 private Long id;
26
27 @Column(nullable = false, length = 50)
28 private String entityType; // "product", "category", "ui"
29
30 @Column(nullable = false, length = 100)
31 private String entityId; // Product ID, category name, or UI key
32
33 @Column(nullable = false, length = 50)
34 private String fieldName; // "name", "description", etc.
35
36 @Column(length = 2, nullable = false)
37 private String languageCode; // ISO 639-1 (e.g., "en", "es", "fr")
38
39 @Column(columnDefinition = "TEXT", nullable = false)
40 private String translatedText;
41
42 @CreationTimestamp
43 @Column(name = "created_at", updatable = false)
44 private LocalDateTime createdAt;
45
46 @UpdateTimestamp
47 @Column(name = "updated_at")
48 private LocalDateTime updatedAt;
49 }
50