source: src/main/java/com/example/autopartz/model/Part.java@ 4d67d70

main
Last change on this file since 4d67d70 was 4d67d70, checked in by andrejtodorovski <82031894+andrejtodorovski@…>, 18 months ago

Final touches

  • Property mode set to 100644
File size: 2.1 KB
RevLine 
[2e46f06]1package com.example.autopartz.model;
2
[eaf0f1b]3import lombok.Getter;
4import lombok.RequiredArgsConstructor;
5import lombok.Setter;
6import lombok.ToString;
[2e46f06]7import org.hibernate.Hibernate;
8
[ae042f4]9import javax.persistence.*;
[23a2bc5]10import java.util.List;
[2e46f06]11import java.util.Objects;
12
13@Getter
14@Setter
15@ToString
16@RequiredArgsConstructor
17@Entity
18public class Part {
19 @Id
[4d67d70]20 @GeneratedValue(strategy = GenerationType.IDENTITY)
[feffc2f]21 @Column(name = "ID_part")
[ae042f4]22 Integer id;
[feffc2f]23 @Column(name = "part_name")
24 String name;
25 @Column(name = "part_description")
26 String description;
[2e46f06]27 @ManyToOne
28 @JoinColumn(name = "id_part_manufacturer")
[feffc2f]29 PartManufacturer manufacturer;
[23a2bc5]30 @ManyToMany
31 @JoinTable(name = "part_is_from_category", joinColumns =
32 @JoinColumn(name = "id_part"),
33 inverseJoinColumns = @JoinColumn(name = "id_category"))
34 @ToString.Exclude
35 List<Category> categoryList;
[eaf0f1b]36 @ManyToMany
37 @JoinTable(name = "part_is_in_stock_in_warehouse", joinColumns =
38 @JoinColumn(name = "id_part"),
39 inverseJoinColumns = @JoinColumn(name = "id_warehouse"))
40 @ToString.Exclude
41 List<Warehouse> warehouseList;
42 @ManyToMany
43 @JoinTable(name = "part_is_appropriate_for_car", joinColumns =
44 @JoinColumn(name = "id_part"),
45 inverseJoinColumns = @JoinColumn(name = "id_car"))
46 @ToString.Exclude
47 List<Car> carList;
[2e46f06]48
[4d67d70]49 public Part(String name, String description, PartManufacturer manufacturer, List<Category> categoryList, List<Warehouse> warehouseList, List<Car> carList) {
50 this.name = name;
51 this.description = description;
52 this.manufacturer = manufacturer;
53 this.categoryList = categoryList;
54 this.warehouseList = warehouseList;
55 this.carList = carList;
56 }
57
[2e46f06]58 @Override
59 public boolean equals(Object o) {
60 if (this == o) return true;
61 if (o == null || Hibernate.getClass(this) != Hibernate.getClass(o)) return false;
62 Part part = (Part) o;
[feffc2f]63 return id != null && Objects.equals(id, part.id);
[2e46f06]64 }
65
66 @Override
67 public int hashCode() {
68 return getClass().hashCode();
69 }
70}
Note: See TracBrowser for help on using the repository browser.