Skip to content

Commit 0c98a70

Browse files
committed
multiple representations problem fixed
1 parent 3ae4863 commit 0c98a70

20 files changed

+959
-892
lines changed

issuesFaced notes - IssuesFaced

File renamed without changes.

notes - SqlQueries

+89
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
-- Servie - ProductionCompanies Freq
2+
SELECT s.tmdb_id, s.title, COUNT(*) AS CountOfProdCompanies
3+
FROM track_servie.servie s
4+
JOIN track_servie.servie_production_companies spc
5+
ON s.tmdb_id = spc.tmdb_id AND s.childtype = spc.childtype
6+
JOIN track_servie.production_company pc
7+
ON spc.production_company_id = pc.id
8+
GROUP BY s.tmdb_id, s.title
9+
ORDER BY COUNT(*) DESC, s.tmdb_id;
10+
11+
-- Servie - ProductionCountries Freq
12+
SELECT s.tmdb_id, s.title, COUNT(*) AS CountOfProdCountries
13+
FROM track_servie.servie s
14+
JOIN track_servie.servie_production_countries spc
15+
ON s.tmdb_id = spc.tmdb_id AND s.childtype = spc.childtype
16+
JOIN track_servie.production_country pc
17+
ON spc.iso = pc.iso_3166_1
18+
GROUP BY s.tmdb_id, s.title
19+
ORDER BY COUNT(*) DESC, s.tmdb_id;
20+
21+
-- Servie - SpokenLanguages Frequency
22+
SELECT s.tmdb_id, s.title, COUNT(*) AS CountOfSpokenLanguages
23+
FROM track_servie.servie s
24+
JOIN track_servie.servie_spoken_languages spl
25+
ON s.tmdb_id = spl.tmdb_id AND s.childtype = spl.childtype
26+
JOIN track_servie.spoken_language sl
27+
ON spl.iso = sl.iso_639_1
28+
GROUP BY s.tmdb_id, s.title
29+
ORDER BY COUNT(*) DESC, s.tmdb_id;
30+
31+
-- Episodes - Crew Frequency
32+
SELECT e.tmdb_id, s.title, e.season_no, e.episode_no, COUNT(*) AS CountOfCrew
33+
FROM track_servie.episode e
34+
JOIN track_servie.servie s
35+
ON s.tmdb_id = e.tmdb_id
36+
JOIN track_servie.episode_crew ec
37+
ON e.id = ec.episode_id
38+
JOIN track_servie.ecrew ecw
39+
ON ecw.credit_id = ec.credit_id
40+
GROUP BY e.tmdb_id, e.season_no, e.episode_no
41+
ORDER BY e.tmdb_id, e.season_no, e.episode_no;
42+
43+
-- Episodes - GuestStars Frequency
44+
SELECT e.tmdb_id, s.title, e.season_no, e.episode_no, COUNT(*) AS CountOfGuestStars
45+
FROM track_servie.episode e
46+
JOIN track_servie.servie s
47+
ON s.tmdb_id = e.tmdb_id
48+
JOIN track_servie.episode_cast ec
49+
ON e.id = ec.episode_id
50+
JOIN track_servie.ecast ecw
51+
ON ecw.credit_id = ec.credit_id
52+
GROUP BY e.tmdb_id, e.season_no, e.episode_no
53+
ORDER BY e.tmdb_id, e.season_no, e.episode_no;
54+
55+
-- Season - Cast Frequency
56+
SELECT ser.title, s.season_no, COUNT(*) AS CountOfCast
57+
FROM track_servie.season s
58+
JOIN track_servie.servie ser
59+
ON s.tmdb_id = ser.tmdb_id
60+
JOIN track_servie.season_cast sc
61+
ON s.id = sc.season_id
62+
JOIN track_servie.scast sct
63+
ON sct.credit_id = sc.credit_id
64+
GROUP BY ser.tmdb_id, s.season_no
65+
ORDER BY ser.tmdb_id, s.season_no;
66+
67+
-- Movie - Cast Frequency
68+
SELECT ser.title, COUNT(*) AS CountOfCasts
69+
FROM track_servie.movie m
70+
JOIN track_servie.servie ser
71+
ON m.tmdb_id = ser.tmdb_id
72+
JOIN track_servie.movie_cast mc
73+
ON mc.tmdb_id = ser.tmdb_id
74+
JOIN track_servie.mcast mct
75+
ON mct.credit_id = mc.credit_id
76+
GROUP BY ser.tmdb_id
77+
ORDER BY ser.tmdb_id;
78+
79+
-- Movie - Crew Frequency
80+
SELECT ser.title, mcw.department, COUNT(*) AS CountOfCast, COUNT(DISTINCT mcw.person_id) AS CountOfDistinctPersons
81+
FROM track_servie.movie m
82+
JOIN track_servie.servie ser
83+
ON m.tmdb_id = ser.tmdb_id
84+
JOIN track_servie.movie_crew mc
85+
ON mc.tmdb_id = ser.tmdb_id
86+
JOIN track_servie.mcrew mcw
87+
ON mcw.credit_id = mc.credit_id
88+
GROUP BY ser.tmdb_id, mcw.department
89+
ORDER BY ser.tmdb_id;
File renamed without changes.

traktTvNotes notes - traktTvNotes

File renamed without changes.

src/main/java/servie/track_servie/entity/Cast.java

-69
This file was deleted.

src/main/java/servie/track_servie/entity/Movie.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public class Movie extends Servie
5555
// ---------------------------------------------------------------
5656
@Column(name = "revenue")
5757
@JsonProperty("revenue")
58-
private Integer revenue;
58+
private Long revenue;
5959
// ---------------------------------------------------------------
6060
@ManyToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE})
6161
@JoinTable( name = "movie_cast",
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package servie.track_servie.entity;
2+
3+
import jakarta.persistence.Column;
4+
import jakarta.persistence.Entity;
5+
import jakarta.persistence.Id;
6+
import jakarta.persistence.Table;
7+
import lombok.Data;
8+
9+
@Entity
10+
@Data
11+
@Table(name = "movies_bkp")
12+
public class ServieBkp
13+
{
14+
@Id
15+
@Column(name = "tmdb_id")
16+
private Integer tmdbId;
17+
}

src/main/java/servie/track_servie/entity/credits/EpisodeCast.java

+66-66
Original file line numberDiff line numberDiff line change
@@ -16,72 +16,72 @@
1616
@Table(name = "ecast")
1717
public class EpisodeCast
1818
{
19-
@Id
20-
@Column(name = "credit_id")
21-
@JsonProperty("credit_id")
22-
private String creditId;
23-
// ---------------------------------------------------------------
24-
@Column(name = "media_character")
25-
@JsonProperty("character")
26-
private String character;
27-
// ---------------------------------------------------------------
28-
@Column(name = "priority")
29-
@JsonProperty("order")
30-
private Integer order;
31-
// ---------------------------------------------------------------
32-
@Column(name = "gender")
33-
@JsonProperty("gender")
34-
private Integer gender;
35-
// ---------------------------------------------------------------
36-
@Column(name = "person_id")
37-
@JsonProperty("id")
38-
private Integer personId;
39-
// ---------------------------------------------------------------
40-
@Column(name = "adult")
41-
@JsonProperty("adult")
42-
private boolean adult;
43-
// ---------------------------------------------------------------
44-
@JsonProperty("known_for_department")
45-
@Column(name = "knownForDepartment")
46-
private String knownForDepartment;
47-
// ---------------------------------------------------------------
48-
@Column(name = "name")
49-
@JsonProperty("name")
50-
private String name;
51-
// ---------------------------------------------------------------
52-
@Column(name = "original_name")
53-
@JsonProperty("original_name")
54-
private String originalName;
55-
// ---------------------------------------------------------------
56-
@Column(name = "popularity")
57-
@JsonProperty("popularity")
58-
private Double popularity;
59-
// ---------------------------------------------------------------
60-
@Column(name = "profile_path")
61-
@JsonProperty("profile_path")
62-
private String profilePath;
63-
// ---------------------------------------------------------------
64-
@ManyToMany(mappedBy = "guestStars")
65-
private Set<Episode> episodes;
19+
@Id
20+
@Column(name = "credit_id")
21+
@JsonProperty("credit_id")
22+
private String creditId;
23+
// ---------------------------------------------------------------
24+
@Column(name = "media_character")
25+
@JsonProperty("character")
26+
private String character;
27+
// ---------------------------------------------------------------
28+
@Column(name = "priority")
29+
@JsonProperty("order")
30+
private Integer order;
31+
// ---------------------------------------------------------------
32+
@Column(name = "gender")
33+
@JsonProperty("gender")
34+
private Integer gender;
35+
// ---------------------------------------------------------------
36+
@Column(name = "person_id")
37+
@JsonProperty("id")
38+
private Integer personId;
39+
// ---------------------------------------------------------------
40+
@Column(name = "adult")
41+
@JsonProperty("adult")
42+
private boolean adult;
43+
// ---------------------------------------------------------------
44+
@JsonProperty("known_for_department")
45+
@Column(name = "knownForDepartment")
46+
private String knownForDepartment;
47+
// ---------------------------------------------------------------
48+
@Column(name = "name")
49+
@JsonProperty("name")
50+
private String name;
51+
// ---------------------------------------------------------------
52+
@Column(name = "original_name")
53+
@JsonProperty("original_name")
54+
private String originalName;
55+
// ---------------------------------------------------------------
56+
@Column(name = "popularity")
57+
@JsonProperty("popularity")
58+
private Double popularity;
59+
// ---------------------------------------------------------------
60+
@Column(name = "profile_path")
61+
@JsonProperty("profile_path")
62+
private String profilePath;
63+
// ---------------------------------------------------------------
64+
@ManyToMany(mappedBy = "guestStars")
65+
private Set<Episode> episodes;
6666

67-
@Override
68-
public boolean equals(Object o)
69-
{
70-
if(this==o)
71-
{
72-
return true;
73-
}
74-
if(o==null || getClass()!=o.getClass())
75-
{
76-
return false;
77-
}
78-
EpisodeCast that = (EpisodeCast) o;
79-
return Objects.equals(creditId, that.creditId);
80-
}
67+
@Override
68+
public boolean equals(Object o)
69+
{
70+
if(this==o)
71+
{
72+
return true;
73+
}
74+
if(o==null || getClass()!=o.getClass())
75+
{
76+
return false;
77+
}
78+
EpisodeCast that = (EpisodeCast) o;
79+
return Objects.equals(creditId, that.creditId);
80+
}
8181

82-
@Override
83-
public int hashCode()
84-
{
85-
return Objects.hash(creditId);
86-
}
82+
@Override
83+
public int hashCode()
84+
{
85+
return Objects.hash(creditId);
86+
}
8787
}

0 commit comments

Comments
 (0)