Compare commits

...

1 Commits
main ... zwk

Author SHA1 Message Date
STRIV1 da9002367a zwk
1 year ago

@ -3,39 +3,59 @@ package com.entity;
import java.util.List;
/**
*
*
*
* GetterSetter访便
* @author Wxj
*/
public class Cinema {
private long cinema_id;
private String cinema_name; //影院名称
private String cinema_address; //影院地址
private List<Hall> hallList; //所有的放映厅集合
public long getCinema_id() {
return cinema_id;
}
public void setCinema_id(long cinema_id) {
this.cinema_id = cinema_id;
}
public String getCinema_name() {
return cinema_name;
}
public void setCinema_name(String cinema_name) {
this.cinema_name = cinema_name;
}
public String getCinema_address() {
return cinema_address;
}
public void setCinema_address(String cinema_address) {
this.cinema_address = cinema_address;
}
public List<Hall> getHallList() {
return hallList;
}
public void setHallList(List<Hall> hallList) {
this.hallList = hallList;
}
}
// 电影院的唯一标识符,在数据库中通常作为主键,用于唯一区分不同的电影院记录,方便对特定电影院进行查找、管理以及关联其他相关业务操作(比如查询该影院下的放映厅、场次等信息)。
private long cinema_id;
// 影院名称,用于直观地标识每个电影院,方便用户识别和选择想去观影的影院,同时也便于在系统中进行影院相关的展示、统计等操作。
private String cinema_name; //影院名称
// 影院地址,记录电影院所在的具体地理位置信息,便于用户知晓如何前往观影,在地图导航、影院推荐等业务场景中会用到该属性。
private String cinema_address; //影院地址
// 所有的放映厅集合,用于存储该电影院内包含的所有放映厅信息,体现了电影院与放映厅之间的一对多关系,方便查询影院的放映厅布局、统计放映厅相关数据等业务操作。
private List<Hall> hallList; //所有的放映厅集合
// Getter方法用于获取电影院的唯一标识符cinema_id外部代码可以通过调用此方法获取电影院对象的该属性值遵循JavaBean规范常用于查找、对比等操作中确定具体电影院。
public long getCinema_id() {
return cinema_id;
}
// Setter方法用于设置电影院的唯一标识符cinema_id外部代码可以通过调用此方法来修改电影院对象的该属性值遵循JavaBean规范一般在创建或更新电影院记录时使用。
public void setCinema_id(long cinema_id) {
this.cinema_id = cinema_id;
}
// Getter方法用于获取影院名称cinema_name在展示电影院相关信息给用户如在电影购票页面展示可选影院名称等或者进行内部管理操作如根据名称查找电影院等可以获取该属性值进行相应操作。
public String getCinema_name() {
return cinema_name;
}
// Setter方法用于设置影院名称cinema_name例如在修改影院名称可能由于品牌升级、重新命名等原因或者添加新电影院时设置其对应的名称属性更新电影院对象的该属性值。
public void setCinema_name(String cinema_name) {
this.cinema_name = cinema_name;
}
// Getter方法用于获取影院地址cinema_address在展示电影院位置信息给用户如在地图导航中显示地址引导用户前往等或者进行基于地址的业务操作如查找附近影院等可以获取该属性值进行相应操作。
public String getCinema_address() {
return cinema_address;
}
// Setter方法用于设置影院地址cinema_address例如在电影院搬迁、地址变更等情况下通过此方法更新电影院对象的该属性值改变其地址记录。
public void setCinema_address(String cinema_address) {
this.cinema_address = cinema_address;
}
// Getter方法用于获取所有的放映厅集合hallList在需要了解该电影院的放映厅布局、查询具体放映厅信息、统计放映厅数量等业务场景中可以通过此方法获取对应的放映厅列表进行相应操作。
public List<Hall> getHallList() {
return hallList;
}
// Setter方法用于设置所有的放映厅集合hallList一般在创建电影院与放映厅的关联比如新建电影院后添加放映厅或者更新放映厅列表如新增、移除放映厅等情况通过此方法设置属性值维护电影院与放映厅之间的关系更新放映厅列表内容。
public void setHallList(List<Hall> hallList) {
this.hallList = hallList;
}
}

@ -1,53 +1,85 @@
package com.entity;
import java.util.Date;
/**
*
*
* 便
* GetterSetter访
* @author Wxj
*/
public class Comment {
import java.util.Date;
// 评论的唯一标识符,在数据库中通常作为主键,用于唯一区分不同的评论记录,方便对特定评论进行查找、管理以及在关联其他相关业务操作时作为关键标识。
private long comment_id;
// 所属用户编号,关联到用户表中的对应用户记录,表明该评论是由哪个用户发表的,用于确定评论的归属以及后续与用户相关的业务操作(如查询用户的所有评论等)。
private long user_id; //所属用户编号
// 评论内容,以字符串形式存储用户输入的具体评论文字信息,是评论的核心部分,会展示给其他用户查看,以体现对相应电影的评价和看法。
private String comment_content; //评论内容
// 所属电影编号,关联到电影表中的对应电影记录,用于明确该评论是针对哪部电影而发表的,方便在展示电影评论、统计电影相关评论数据等业务场景中使用。
private long movie_id; //所属电影编号
// 评论时间使用Date类型记录用户发表评论的具体时间点可用于按照时间顺序展示评论、统计不同时间段的评论数量等业务操作便于对评论的时效性等方面进行分析。
private Date comment_time; //评论时间
// 所属用户对象,通过关联关系可以获取发表该评论的用户的详细信息(如用户名、头像等),方便在业务逻辑中涉及用户相关信息展示或操作时使用,此处是对象形式的关联,与通过用户编号关联对应。
private User comment_user; //所属用户
public class Comment {
private long comment_id;
private long user_id; //所属用户编号
private String comment_content; //评论内容
private long movie_id; //所属电影编号
private Date comment_time; //评论时间
private User comment_user; //所属用户
public long getComment_id() {
return comment_id;
}
public void setComment_id(long comment_id) {
this.comment_id = comment_id;
}
public long getUser_id() {
return user_id;
}
public void setUser_id(long user_id) {
this.user_id = user_id;
}
public String getComment_content() {
return comment_content;
}
public void setComment_content(String comment_content) {
this.comment_content = comment_content;
}
public long getMovie_id() {
return movie_id;
}
public void setMovie_id(long movie_id) {
this.movie_id = movie_id;
}
public Date getComment_time() {
return comment_time;
}
public void setComment_time(Date comment_time) {
this.comment_time = comment_time;
}
public User getComment_user() {
return comment_user;
}
public void setComment_user(User comment_user) {
this.comment_user = comment_user;
}
}
// Getter方法用于获取评论的唯一标识符comment_id外部代码可以通过调用此方法获取评论对象的该属性值遵循JavaBean规范常用于根据评论ID查找、对比等操作中确定具体评论。
public long getComment_id() {
return comment_id;
}
// Setter方法用于设置评论的唯一标识符comment_id外部代码可以通过调用此方法来修改评论对象的该属性值遵循JavaBean规范一般在创建或更新评论记录时使用。
public void setComment_id(long comment_id) {
this.comment_id = comment_id;
}
// Getter方法用于获取所属用户编号user_id可以用于进一步查询用户的详细信息或者在涉及用户关联的业务逻辑中作为关键参数使用比如查找该用户发表的其他评论等操作。
public long getUser_id() {
return user_id;
}
// Setter方法用于设置所属用户编号user_id例如在创建评论并关联到具体用户时通过此方法更新评论对象的该属性值建立评论与用户的关联。
public void setUser_id(long user_id) {
this.user_id = user_id;
}
// Getter方法用于获取评论内容comment_content在展示评论信息给其他用户、进行评论内容相关的文本分析等业务场景中可以通过此方法获取该属性值进行相应操作。
public String getComment_content() {
return comment_content;
}
// Setter方法用于设置评论内容comment_content例如在用户修改评论内容或者添加新评论时填写具体的评论文字通过此方法更新评论对象的该属性值。
public void setComment_content(String comment_content) {
this.comment_content = comment_content;
}
// Getter方法用于获取所属电影编号movie_id同样可用于关联电影相关信息或者作为查询、验证等业务操作的参数依据比如获取该电影的其他评论等信息。
public long getMovie_id() {
return movie_id;
}
// Setter方法用于设置所属电影编号movie_id在确定评论所针对的电影时通过此方法设置相应的电影编号属性确保评论与正确的电影对应起来。
public void setMovie_id(long movie_id) {
this.movie_id = movie_id;
}
// Getter方法用于获取评论时间comment_time在按照时间顺序展示评论、统计不同时间段的评论情况、判断评论的时效性等业务场景中可以获取该属性值进行相应操作依据具体的时间信息来做相关业务决策。
public Date getComment_time() {
return comment_time;
}
// Setter方法用于设置评论时间comment_time例如在一些特殊情况下如数据迁移、时间校正等需要更新评论的发表时间时通过此方法更新评论对象的该属性值改变其时间记录。
public void setComment_time(Date comment_time) {
this.comment_time = comment_time;
}
// Getter方法用于获取所属用户对象comment_user在需要获取发表评论的用户详细信息如用户名、头像等可以通过此方法获取对应的User对象进行相关操作比如展示评论者信息等情况。
public User getComment_user() {
return comment_user;
}
// Setter方法用于设置所属用户对象comment_user例如在关联评论与具体用户或者更新评论对应的用户时通过此方法设置属性值确保评论与正确的用户关联起来。
public void setComment_user(User comment_user) {
this.comment_user = comment_user;
}
}

@ -3,52 +3,83 @@ package com.entity;
import java.util.List;
/**
*
*
*
* GetterSetter访便
* @author Wxj
*/
public class Hall {
private long hall_id;
private String hall_name; //放映厅名称
private int hall_capacity; //放映厅容量
private long cinema_id; //所属影院编号
private Cinema hall_cinema; //所属影院
private List<Schedule> ScheduleList; //所有的电影场次集合
public long getHall_id() {
return hall_id;
}
public void setHall_id(long hall_id) {
this.hall_id = hall_id;
}
public List<Schedule> getScheduleList() {
return ScheduleList;
}
public void setScheduleList(List<Schedule> scheduleList) {
ScheduleList = scheduleList;
}
public Cinema getHall_cinema() {
return hall_cinema;
}
public void setHall_cinema(Cinema hall_cinema) {
this.hall_cinema = hall_cinema;
}
public String getHall_name() {
return hall_name;
}
public void setHall_name(String hall_name) {
this.hall_name = hall_name;
}
public int getHall_capacity() {
return hall_capacity;
}
public void setHall_capacity(int hall_capacity) {
this.hall_capacity = hall_capacity;
}
public long getCinema_id() {
return cinema_id;
}
public void setCinema_id(long cinema_id) {
this.cinema_id = cinema_id;
}
}
// 放映厅的唯一标识符,在数据库中通常作为主键,用于唯一区分不同的放映厅记录,方便对特定放映厅进行查找、管理以及关联其他相关业务操作。
private long hall_id;
// 放映厅名称,用于直观地标识每个放映厅,方便用户在选择观影场次时知晓是在哪个具体的放映厅观看电影,也便于影院内部管理和区分不同的放映场所。
private String hall_name; //放映厅名称
// 放映厅容量,即该放映厅能够容纳的观众数量,在安排场次、统计可售票数等业务场景中会依据此属性来判断座位资源是否充足等情况。
private int hall_capacity; //放映厅容量
// 所属影院编号,关联到影院表中的对应记录,表明该放映厅隶属于哪个电影院,用于确定放映厅的归属以及后续与影院相关的业务操作(如查询影院下的所有放映厅等)。
private long cinema_id; //所属影院编号
// 所属影院对象,通过关联关系可以获取影院的详细信息(如影院名称、地址等),方便在业务逻辑中涉及影院相关信息展示或操作时使用,此处是对象形式的关联,与通过影院编号关联对应。
private Cinema hall_cinema; //所属影院
// 所有的电影场次集合,用于记录在该放映厅安排的所有电影场次信息,体现了放映厅与场次之间的一对多关系,方便在查询放映厅的排片情况、统计场次相关数据等业务场景中使用。
private List<Schedule> scheduleList; //所有的电影场次集合
// Getter方法用于获取放映厅的唯一标识符hall_id外部代码可以通过调用此方法获取放映厅对象的该属性值遵循JavaBean规范常用于查找、对比等操作中确定具体放映厅。
public long getHall_id() {
return hall_id;
}
// Setter方法用于设置放映厅的唯一标识符hall_id外部代码可以通过调用此方法来修改放映厅对象的该属性值遵循JavaBean规范一般在创建或更新放映厅记录时使用。
public void setHall_id(long hall_id) {
this.hall_id = hall_id;
}
// Getter方法用于获取所有的电影场次集合scheduleList在需要获取该放映厅的排片信息、统计场次相关数据如场次数量、不同时间段场次分布等等业务场景中可以通过此方法获取对应的场次列表进行相应操作。
public List<Schedule> getScheduleList() {
return scheduleList;
}
// Setter方法用于设置所有的电影场次集合scheduleList一般在创建放映厅与场次的关联比如为放映厅安排新的场次或者更新场次列表如场次时间调整、取消场次等情况通过此方法设置属性值维护放映厅与场次之间的关系更新场次列表内容。
public void setScheduleList(List<Schedule> scheduleList) {
this.scheduleList = scheduleList;
}
// Getter方法用于获取所属影院对象hall_cinema在需要获取影院详细信息如影院名称、地址等可以通过此方法获取对应的Cinema对象进行相关操作比如展示放映厅所属影院信息等情况。
public Cinema getHall_cinema() {
return hall_cinema;
}
// Setter方法用于设置所属影院对象hall_cinema例如在关联放映厅与具体影院或者更新放映厅对应的影院时通过此方法设置属性值确保放映厅与正确的影院关联起来。
public void setHall_cinema(Cinema hall_cinema) {
this.hall_cinema = hall_cinema;
}
// Getter方法用于获取放映厅名称hall_name在展示放映厅相关信息给用户如在购票页面展示可选放映厅名称等或者进行内部管理操作如根据名称查找放映厅等可以获取该属性值进行相应操作。
public String getHall_name() {
return hall_name;
}
// Setter方法用于设置放映厅名称hall_name例如在修改放映厅名称可能由于重新装修、命名调整等原因或者添加新放映厅时设置其对应的名称属性更新放映厅对象的该属性值。
public void setHall_name(String hall_name) {
this.hall_name = hall_name;
}
// Getter方法用于获取放映厅容量hall_capacity在安排场次、判断座位资源是否充足、统计可售票数等业务场景中可以获取该属性值进行相应操作依据容量信息来做相关业务决策。
public int getHall_capacity() {
return hall_capacity;
}
// Setter方法用于设置放映厅容量hall_capacity例如在放映厅进行改造、座位布局调整导致容量变化时通过此方法更新放映厅对象的该属性值改变其容量记录。
public void setHall_capacity(int hall_capacity) {
this.hall_capacity = hall_capacity;
}
// Getter方法用于获取所属影院编号cinema_id可以用于进一步查询影院的详细信息或者在涉及影院关联的业务逻辑中作为关键参数使用比如查找该影院下的其他放映厅等操作。
public long getCinema_id() {
return cinema_id;
}
// Setter方法用于设置所属影院编号cinema_id例如在创建放映厅并关联到具体影院时通过此方法更新放映厅对象的该属性值建立放映厅与影院的关联。
public void setCinema_id(long cinema_id) {
this.cinema_id = cinema_id;
}
}

@ -1,125 +1,206 @@
package com.entity;
import java.sql.Date; //yyyy-mm-dd
import java.sql.Date; // 导入用于表示日期的数据类型格式为yyyy-MM-dd用于存储电影的上映时间等日期相关信息。
import java.util.List;
/**
*
*
*
* GetterSetter访便
* @author Wxj
*/
public class Movie {
private long movie_id;
private String movie_cn_name;
private String movie_fg_name;
private String movie_actor; //演职人员
private String movie_director; //导演
private String movie_detail; //电影详情
private String movie_duration; //电影时长
private String movie_type; //电影类型
private float movie_score; //电影评分
private float movie_boxOffice; //票房
private long movie_commentCount; //电影参评人数
private Date movie_releaseDate; //上映时间
private String movie_country; //制片地区
private String movie_picture; //电影海报地址
private int movie_state; //电影状态 默认1 1在线 0下架
private List<Comment> commentList; //所有的评论信息
public long getMovie_id() {
return movie_id;
}
public void setMovie_id(long movie_id) {
this.movie_id = movie_id;
}
public String getMovie_cn_name() {
return movie_cn_name;
}
public int getMovie_state() {
return movie_state;
}
public void setMovie_state(int movie_state) {
this.movie_state = movie_state;
}
public void setMovie_cn_name(String movie_cn_name) {
this.movie_cn_name = movie_cn_name;
}
public String getMovie_fg_name() {
return movie_fg_name;
}
public void setMovie_fg_name(String movie_fg_name) {
this.movie_fg_name = movie_fg_name;
}
public String getMovie_actor() {
return movie_actor;
}
public void setMovie_actor(String movie_actor) {
this.movie_actor = movie_actor;
}
public String getMovie_director() {
return movie_director;
}
public void setMovie_director(String movie_director) {
this.movie_director = movie_director;
}
public String getMovie_detail() {
return movie_detail;
}
public void setMovie_detail(String movie_detail) {
this.movie_detail = movie_detail;
}
public String getMovie_duration() {
return movie_duration;
}
public void setMovie_duration(String movie_duration) {
this.movie_duration = movie_duration;
}
public String getMovie_type() {
return movie_type;
}
public void setMovie_type(String movie_type) {
this.movie_type = movie_type;
}
public float getMovie_score() {
return movie_score;
}
public void setMovie_score(float movie_score) {
this.movie_score = movie_score;
}
public float getMovie_boxOffice() {
return movie_boxOffice;
}
public void setMovie_boxOffice(float movie_boxOffice) {
this.movie_boxOffice = movie_boxOffice;
}
public long getMovie_commentCount() {
return movie_commentCount;
}
public void setMovie_commentCount(long movie_commentCount) {
this.movie_commentCount = movie_commentCount;
}
public Date getReleaseDate() {
return movie_releaseDate;
}
public void setReleaseDate(Date releaseDate) {
this.movie_releaseDate = releaseDate;
}
public String getMovie_country() {
return movie_country;
}
public void setMovie_country(String movie_country) {
this.movie_country = movie_country;
}
public String getMovie_picture() {
return movie_picture;
}
public void setMovie_picture(String movie_picture) {
this.movie_picture = movie_picture;
}
public List<Comment> getCommentList() {
return commentList;
}
public void setCommentList(List<Comment> commentList) {
this.commentList = commentList;
}
}
// 电影的唯一标识符,在数据库中通常作为主键,用于唯一区分不同的电影记录,方便对特定电影进行查找、管理等操作。
private long movie_id;
// 电影的中文名称,用于展示给用户,让用户直观地识别电影,在电影列表展示、详情页展示等场景中会用到该属性。
private String movie_cn_name;
// 电影的外文名称(可能是英文或其他语言),用于在一些需要展示外文名称的场景中,比如国际影片相关展示或多语言环境下的信息呈现等。
private String movie_fg_name;
// 演职人员信息,通常包含主演、配角等参演人员的相关介绍,以字符串形式存储,方便在电影详情页等地方展示给用户了解电影的演员阵容。
private String movie_actor; //演职人员
// 导演信息,用于记录执导该电影的导演名字,同样在电影详情页等场景展示给用户,体现电影创作的关键人物信息。
private String movie_director; //导演
// 电影详情描述,一般是对电影剧情、主题、特色等方面较为详细的文字介绍,供用户查看以进一步了解电影内容,常用于电影详情页面的展示。
private String movie_detail; //电影详情
// 电影时长,通常以某种格式(如小时:分钟)表示电影播放的时间长度,用于让用户知晓电影的播放时长情况,在排片、观影安排等业务场景中会考虑该因素。
private String movie_duration; //电影时长
// 电影类型,例如“喜剧”“动作”“科幻”等分类信息,方便用户按照类型筛选电影,也用于电影分类统计、推荐等业务逻辑中。
private String movie_type; //电影类型
// 电影评分,以浮点数形式存储,一般是根据用户评价等方式计算得出的对电影质量的量化评价指标,常用于电影排序、推荐等业务场景,展示给用户作为参考。
private float movie_score; //电影评分
// 票房,以浮点数形式记录电影的票房收入情况,可用于统计、分析电影的商业表现,在电影相关统计报表、热门电影排序等业务中会用到该数据。
private float movie_boxOffice; //票房
// 电影参评人数,记录参与对该电影进行评价的用户数量,在统计电影热度、评价活跃度等方面可作为参考数据,结合评分等信息能更全面地反映电影受关注程度。
private long movie_commentCount; //电影参评人数
// 上映时间,使用 java.sql.Date 类型存储电影正式在影院上映的日期格式为yyyy-MM-dd用于排片、上映计划展示以及判断电影是否处于上映周期等业务场景。
private Date movie_releaseDate; //上映时间
// 制片地区,用于说明电影是由哪个地区或国家制作的,在电影分类、地域特色展示等业务场景中有应用,例如展示不同地区的热门电影等。
private String movie_country; //制片地区
// 电影海报地址,存储电影海报图片在服务器上的相对或绝对路径,方便前端页面根据此地址获取对应的海报图片进行展示,增强电影的视觉呈现效果。
private String movie_picture; //电影海报地址
// 电影状态默认值为1表示电影当前的在线状态1在线意味着可正常展示、排片、购票观看等0下架表示电影已从正常业务流程中移除不再对外展示和提供服务用于控制电影在系统中的展示和可用性。
private int movie_state; //电影状态 默认1 1在线 0下架
// 所有的评论信息,以列表形式存储该电影对应的所有用户评论对象,方便在展示电影详情页的评论区、统计评论相关数据等业务场景中使用,体现了电影与评论之间的一对多关系。
private List<Comment> commentList; //所有的评论信息
// Getter方法用于获取电影的唯一标识符movie_id外部代码可以通过调用此方法获取电影对象的该属性值遵循JavaBean规范常用于根据电影ID查找、对比等操作中确定具体电影。
public long getMovie_id() {
return movie_id;
}
// Setter方法用于设置电影的唯一标识符movie_id外部代码可以通过调用此方法来修改电影对象的该属性值遵循JavaBean规范一般在创建或更新电影记录时使用。
public void setMovie_id(long movie_id) {
this.movie_id = movie_id;
}
// Getter方法用于获取电影的中文名称movie_cn_name在展示电影相关信息给用户如电影列表展示、详情页展示中文名称等时可以获取该属性值进行相应操作。
public String getMovie_cn_name() {
return movie_cn_name;
}
// Getter方法用于获取电影状态movie_state方便在业务逻辑中根据电影状态进行不同的操作处理例如判断电影是否可购票观看、是否展示在列表中等情况。
public int getMovie_state() {
return movie_state;
}
// Setter方法用于设置电影状态movie_state例如在管理员操作电影上下架时通过此方法更新电影对象的该属性值改变电影的在线或下架状态。
public void setMovie_state(int movie_state) {
this.movie_state = movie_state;
}
// Setter方法用于设置电影的中文名称movie_cn_name例如在修改电影中文名称或者添加新电影时设置其对应的中文名称属性更新电影对象的该属性值。
public void setMovie_cn_name(String movie_cn_name) {
this.movie_cn_name = movie_cn_name;
}
// Getter方法用于获取电影的外文名称movie_fg_name在需要展示外文名称的业务场景如国际影片相关展示或多语言环境下的信息呈现等中可以获取该属性值进行相应操作。
public String getMovie_fg_name() {
return movie_fg_name;
}
// Setter方法用于设置电影的外文名称movie_fg_name例如在更新电影的外文名称信息时通过此方法更新电影对象的该属性值改变其外文名称记录。
public void setMovie_fg_name(String movie_fg_name) {
this.movie_fg_name = movie_fg_name;
}
// Getter方法用于获取演职人员信息movie_actor在电影详情页等地方展示电影的演员阵容时可以通过此方法获取该属性值进行展示操作。
public String getMovie_actor() {
return movie_actor;
}
// Setter方法用于设置演职人员信息movie_actor例如在更新电影的演职人员信息或者添加新电影时填写演职人员相关内容通过此方法更新电影对象的该属性值。
public void setMovie_actor(String movie_actor) {
this.movie_actor = movie_actor;
}
// Getter方法用于获取导演信息movie_director在展示电影创作的关键人物导演相关信息时可以通过此方法获取该属性值进行展示操作比如在电影详情页呈现导演名字。
public String getMovie_director() {
return movie_director;
}
// Setter方法用于设置导演信息movie_director例如在修改电影的导演信息或者添加新电影时确定导演相关内容通过此方法更新电影对象的该属性值。
public void setMovie_director(String movie_director) {
this.movie_director = movie_director;
}
// Getter方法用于获取电影详情描述movie_detail在需要向用户展示电影详细剧情、主题、特色等内容时可以通过此方法获取该属性值进行相应展示操作常用于电影详情页面的展示。
public String getMovie_detail() {
return movie_detail;
}
// Setter方法用于设置电影详情描述movie_detail例如在更新电影的详细介绍内容或者添加新电影时填写电影详情相关文字通过此方法更新电影对象的该属性值。
public void setMovie_detail(String movie_detail) {
this.movie_detail = movie_detail;
}
// Getter方法用于获取电影时长movie_duration在让用户知晓电影播放时长情况以及在排片、观影安排等业务场景中考虑电影时长因素时可以通过此方法获取该属性值进行相应操作。
public String getMovie_duration() {
return movie_duration;
}
// Setter方法用于设置电影时长movie_duration例如在修改电影时长信息可能存在不同版本时长不同等情况通过此方法更新电影对象的该属性值改变其时长记录。
public void setMovie_duration(String movie_duration) {
this.movie_duration = movie_duration;
}
// Getter方法用于获取电影类型movie_type方便用户按照类型筛选电影也用于在电影分类统计、推荐等业务逻辑中获取该属性值进行相应操作比如查找某一类型的所有电影。
public String getMovie_type() {
return movie_type;
}
// Setter方法用于设置电影类型movie_type例如在更新电影的类型分类可能存在重新归类等情况或者添加新电影时确定电影类型相关内容通过此方法更新电影对象的该属性值。
public void setMovie_type(String movie_type) {
this.movie_type = movie_type;
}
// Getter方法用于获取电影评分movie_score在展示电影质量评价情况、电影排序、推荐等业务场景中可以获取该属性值进行相应操作作为用户参考指标之一。
public float getMovie_score() {
return movie_score;
}
// Setter方法用于设置电影评分movie_score例如在根据新的用户评价等情况重新计算并更新电影评分时通过此方法更新电影对象的该属性值改变其评分记录。
public void setMovie_score(float movie_score) {
this.movie_score = movie_score;
}
// Getter方法用于获取票房movie_boxOffice在统计、分析电影的商业表现如在电影相关统计报表、热门电影排序等业务中可以获取该属性值进行相应操作体现电影的营收情况。
public float getMovie_boxOffice() {
return movie_boxOffice;
}
// Setter方法用于设置票房movie_boxOffice例如在有新的票房数据更新如实时票房数据同步等情况通过此方法更新电影对象的该属性值改变其票房记录。
public void setMovie_boxOffice(float movie_boxOffice) {
this.movie_boxOffice = movie_boxOffice;
}
// Getter方法用于获取电影参评人数movie_commentCount在统计电影热度、评价活跃度等方面可作为参考数据结合评分等信息能更全面地反映电影受关注程度通过此方法获取该属性值进行相应操作。
public long getMovie_commentCount() {
return movie_commentCount;
}
// Setter方法用于设置电影参评人数movie_commentCount例如在有新的用户参与评价后更新参评人数统计时通过此方法更新电影对象的该属性值改变其参评人数记录。
public void setMovie_commentCount(long movie_commentCount) {
this.movie_commentCount = movie_commentCount;
}
// Getter方法用于获取上映时间movie_releaseDate在排片、上映计划展示以及判断电影是否处于上映周期等业务场景中可以获取该属性值进行相应操作按照指定的日期格式yyyy-MM-dd使用该时间信息。
public Date getReleaseDate() {
return movie_releaseDate;
}
// Setter方法用于设置上映时间movie_releaseDate例如在调整电影的上映计划修改上映日期可能存在延期、提前上映等情况通过此方法更新电影对象的该属性值改变其上映时间记录。
public void setReleaseDate(Date releaseDate) {
this.movie_releaseDate = releaseDate;
}
// Getter方法用于获取制片地区movie_country在电影分类、地域特色展示等业务场景中有应用例如展示不同地区的热门电影等通过此方法获取该属性值进行相应操作。
public String getMovie_country() {
return movie_country;
}
// Setter方法用于设置制片地区movie_country例如在更新电影的制片地区信息可能存在信息纠错、重新标注等情况通过此方法更新电影对象的该属性值改变其制片地区记录。
public void setMovie_country(String movie_country) {
this.movie_country = movie_country;
}
// Getter方法用于获取电影海报地址movie_picture前端页面根据此地址获取对应的海报图片进行展示增强电影的视觉呈现效果通过此方法获取该属性值进行相应操作获取海报图片资源路径。
public String getMovie_picture() {
return movie_picture;
}
// Setter方法用于设置电影海报地址movie_picture例如在更新电影的海报图片后通过此方法将新的海报图片地址保存到电影对象中以便后续相关操作使用改变其海报地址记录。
public void setMovie_picture(String movie_picture) {
this.movie_picture = movie_picture;
}
// Getter方法用于获取所有的评论信息commentList在展示电影详情页的评论区、统计评论相关数据等业务场景中可以获取该属性值评论列表进行相应操作体现了电影与评论之间的关联关系及数据获取。
public List<Comment> getCommentList() {
return commentList;
}
// Setter方法用于设置所有的评论信息commentList一般在创建电影与评论的关联或者更新评论列表比如新评论添加、旧评论删除等情况通过此方法设置属性值维护电影与评论之间的关系更新评论列表内容。
public void setCommentList(List<Comment> commentList) {
this.commentList = commentList;
}
}

@ -4,75 +4,119 @@ import java.util.Date;
import java.util.List;
/**
*
*
*
* GetterSetter访便
* @author Wxj
*
*/
public class Order {
private String order_id;
private long user_id; //所属用户编号
private long schedule_id; //所属场次编号,通过schedule_id-》场次信息-》放映厅信息+电影信息
private String order_position; //电影票座位信息
private int order_state; //订单状态 0退票中 -1无法退票 1已支付 2退票成功
private int order_price; //订单价格
private Date order_time; //订单支付时间
private User order_user; //所属用户对象
private Schedule order_schedule; //所属电影场次
public String getOrder_id() {
return order_id;
}
public void setOrder_id(String order_id) {
this.order_id = order_id;
}
public Date getOrder_time() {
return order_time;
}
public void setOrder_time(Date order_time) {
this.order_time = order_time;
}
public int getOrder_price() {
return order_price;
}
public void setOrder_price(int order_price) {
this.order_price = order_price;
}
public long getUser_id() {
return user_id;
}
public void setUser_id(long user_id) {
this.user_id = user_id;
}
public long getSchedule_id() {
return schedule_id;
}
public void setSchedule_id(long schedule_id) {
this.schedule_id = schedule_id;
}
public String getOrder_position() {
return order_position;
}
public void setOrder_position(String order_position) {
this.order_position = order_position;
}
public User getOrder_user() {
return order_user;
}
public int getOrder_state() {
return order_state;
}
public void setOrder_state(int order_state) {
this.order_state = order_state;
}
public void setOrder_user(User order_user) {
this.order_user = order_user;
}
public Schedule getOrder_schedule() {
return order_schedule;
}
public void setOrder_schedule(Schedule order_schedule) {
this.order_schedule = order_schedule;
}
}
// 订单的唯一标识符,通常具有唯一性,用于在系统中唯一区分不同的订单记录,可能包含了一定的业务规则生成的编号,方便订单的查找、管理等操作。
private String order_id;
// 所属用户编号,关联到用户表中的对应用户记录,表明该订单是由哪个用户创建的,用于确定订单的归属以及后续与用户相关的业务操作(如查询用户的所有订单等)。
private long user_id; //所属用户编号
// 所属场次编号,通过此编号可以关联到场次表中的对应场次记录,进而获取该场次的详细信息(如放映厅信息、电影信息等),方便在订单相关业务中涉及场次详情展示或操作时使用。
private long schedule_id; //所属场次编号,通过schedule_id-》场次信息-》放映厅信息+电影信息
// 电影票座位信息用于记录用户购买的具体座位位置例如“3排5座”等格式方便在观影、座位管理等业务场景中使用该信息。
private String order_position; //电影票座位信息
// 订单状态用于标识该订单当前所处的状态不同状态值代表不同含义如0表示退票中意味着用户正在申请退票-1表示无法退票可能是超过了退票时间等原因1表示已支付说明订单已完成支付正常等待观影2表示退票成功代表退票操作已完成订单已处理为退票状态可用于订单状态的判断及相应业务逻辑处理。
private int order_state; //订单状态 0退票中 -1无法退票 1已支付 2退票成功
// 订单价格,即用户购买该电影票实际支付的金额,用于记录订单的金额信息,在统计用户消费、场次收入等业务场景中会用到该数据。
private int order_price; //订单价格
// 订单支付时间,用于记录用户完成支付操作的具体时间,方便在查询订单历史、统计支付时间相关数据等业务场景中使用该时间信息进行分析或展示。
private Date order_time; //订单支付时间
// 所属用户对象,通过关联关系可以获取用户的详细信息(如用户名、联系方式等),方便在业务逻辑中涉及用户相关信息展示或操作时使用,此处是对象形式的关联,与通过用户编号关联对应。
private User order_user; //所属用户对象
// 所属电影场次,通过关联关系可以获取场次的详细信息(如放映时间、剩余座位数等),方便在业务逻辑中涉及场次相关信息展示或操作时使用,此处是对象形式的关联,与通过场次编号关联对应。
private Schedule order_schedule; //所属电影场次
// Getter方法用于获取订单的唯一标识符order_id外部代码可以通过调用此方法获取订单对象的该属性值遵循JavaBean规范常用于查找、对比等操作中确定具体订单。
public String getOrder_id() {
return order_id;
}
// Setter方法用于设置订单的唯一标识符order_id外部代码可以通过调用此方法来修改订单对象的该属性值遵循JavaBean规范一般在创建或更新订单记录时使用。
public void setOrder_id(String order_id) {
this.order_id = order_id;
}
// Getter方法用于获取订单支付时间order_time在展示订单详情、查询支付时间范围的订单等业务场景中可以获取该时间信息进行相应操作。
public Date getOrder_time() {
return order_time;
}
// Setter方法用于设置订单支付时间order_time例如在完成支付操作或者更新订单支付时间相关信息时通过此方法更新订单对象的该属性值改变订单的支付时间记录。
public void setOrder_time(Date order_time) {
this.order_time = order_time;
}
// Getter方法用于获取订单价格order_price可用于展示订单金额信息给用户或者在涉及价格统计、收入计算等业务操作中获取该订单的价格数据。
public int getOrder_price() {
return order_price;
}
// Setter方法用于设置订单价格order_price例如在修改订单价格可能存在特殊情况如补差价等通过此方法更新订单对象的该属性值调整订单的价格信息。
public void setOrder_price(int order_price) {
this.order_price = order_price;
}
// Getter方法用于获取所属用户编号user_id可以用于进一步查询用户的详细信息或者在涉及用户关联的业务逻辑中作为关键参数使用比如查找该用户的其他订单等操作。
public long getUser_id() {
return user_id;
}
// Setter方法用于设置所属用户编号user_id例如在创建订单并关联到具体用户时通过此方法更新订单对象的该属性值建立订单与用户的关联。
public void setUser_id(long user_id) {
this.user_id = user_id;
}
// Getter方法用于获取所属场次编号schedule_id同样可用于关联场次相关信息或者作为查询、验证等业务操作的参数依据比如获取场次的放映时间等信息。
public long getSchedule_id() {
return schedule_id;
}
// Setter方法用于设置所属场次编号schedule_id在确定订单所属的场次时通过此方法设置相应的场次编号属性确保订单与正确的场次对应起来。
public void setSchedule_id(long schedule_id) {
this.schedule_id = schedule_id;
}
// Getter方法用于获取电影票座位信息order_position在展示座位位置、核对座位等业务场景中可以获取该信息进行相应操作。
public String getOrder_position() {
return order_position;
}
// Setter方法用于设置电影票座位信息order_position例如在用户选择座位并创建订单时通过此方法更新订单对象的该属性值记录购买的座位信息。
public void setOrder_position(String order_position) {
this.order_position = order_position;
}
// Getter方法用于获取所属用户对象order_user在需要获取用户详细信息如用户名、联系方式等可以通过此方法获取对应的User对象进行相关操作比如展示订单所属用户信息等情况。
public User getOrder_user() {
return order_user;
}
// Getter方法用于获取订单状态order_state方便在业务逻辑中根据订单状态进行不同的操作处理例如判断订单是否可退票等情况。
public int getOrder_state() {
return order_state;
}
// Setter方法用于设置订单状态order_state例如在进行退票操作、支付操作等导致订单状态改变时通过此方法更新订单对象的该属性值更新订单的状态信息。
public void setOrder_state(int order_state) {
this.order_state = order_state;
}
// Setter方法用于设置所属用户对象order_user例如在关联订单与具体用户或者更新订单对应的用户时通过此方法设置属性值确保订单与正确的用户关联起来。
public void setOrder_user(User order_user) {
this.order_user = order_user;
}
// Getter方法用于获取所属电影场次order_schedule在需要获取场次详细信息如放映时间、剩余座位数等可以通过此方法获取对应的Schedule对象进行相关操作比如展示订单对应场次的详细情况等。
public Schedule getOrder_schedule() {
return order_schedule;
}
// Setter方法用于设置所属电影场次order_schedule例如在关联订单与具体场次或者更新订单对应的场次时通过此方法设置属性值确保订单与正确的场次关联起来。
public void setOrder_schedule(Schedule order_schedule) {
this.order_schedule = order_schedule;
}
}

@ -6,82 +6,133 @@ import java.util.List;
import org.springframework.format.annotation.DateTimeFormat;
/**
*
*
*
* GetterSetter访便
* @author Wxj
*/
public class Schedule {
private long schedule_id;
private long hall_id; //所属放映厅
private long movie_id; //放映的电影编号
//@DateTimeFormat(pattern="yyyy-MM-dd")
private String schedule_startTime; //电影放映时间
private int schedule_price; //售价
private int schedule_remain; //剩余座位数
private int schedule_state; //场次状态 1上映中 0下架
private Hall schedule_hall; //所属放映厅对象
private Movie schedule_movie; //放映的电影
private List<Order> orderList; //所有的订单集合
public long getSchedule_id() {
return schedule_id;
}
public void setSchedule_id(long schedule_id) {
this.schedule_id = schedule_id;
}
public int getSchedule_state() {
return schedule_state;
}
public void setSchedule_state(int schedule_state) {
this.schedule_state = schedule_state;
}
public Movie getSchedule_movie() {
return schedule_movie;
}
public void setSchedule_movie(Movie schedule_movie) {
this.schedule_movie = schedule_movie;
}
public long getHall_id() {
return hall_id;
}
public void setHall_id(long hall_id) {
this.hall_id = hall_id;
}
public long getMovie_id() {
return movie_id;
}
public void setMovie_id(long movie_id) {
this.movie_id = movie_id;
}
public String getSchedule_startTime() {
return schedule_startTime;
}
public void setSchedule_startTime(String schedule_startTime) {
this.schedule_startTime = schedule_startTime;
}
public int getSchedule_price() {
return schedule_price;
}
public void setSchedule_price(int schedule_price) {
this.schedule_price = schedule_price;
}
public int getSchedule_remain() {
return schedule_remain;
}
public void setSchedule_remain(int schedule_remain) {
this.schedule_remain = schedule_remain;
}
public Hall getSchedule_hall() {
return schedule_hall;
}
public void setSchedule_hall(Hall schedule_hall) {
this.schedule_hall = schedule_hall;
}
public List<Order> getOrderList() {
return orderList;
}
public void setOrderList(List<Order> orderList) {
this.orderList = orderList;
}
}
// 场次的唯一标识符,在数据库中通常作为主键,用于唯一区分不同的场次记录。
private long schedule_id;
// 所属放映厅的唯一标识符,关联到放映厅表中的对应记录,表明该场次是在哪个放映厅进行放映的。
private long hall_id; //所属放映厅
// 放映的电影的编号,关联到电影表中的对应电影记录,用于确定该场次播放的是哪部电影。
private long movie_id; //放映的电影编号
// 电影放映时间,用于记录该场次具体的开始放映时间,虽然此处注释掉了日期格式化注解,但理论上可按照指定格式(如"yyyy-MM-dd")进行时间格式的规范处理,方便时间的展示和比较等操作。
//@DateTimeFormat(pattern="yyyy-MM-dd")
private String schedule_startTime; //电影放映时间
// 售价,即该场次电影票的价格,用于向用户展示票价信息以及在购票、结算等业务场景中使用。
private int schedule_price; //售价
// 剩余座位数,用于实时记录该场次还有多少座位可供售卖,在购票、退票等操作时会相应地更新这个数值,反映座位的剩余情况。
private int schedule_remain; //剩余座位数
// 场次状态用于标识该场次当前的状态1表示上映中意味着该场次正常对外售票并即将放映0表示下架即该场次不再对外售票且不会放映了可用于场次筛选等业务逻辑判断。
private int schedule_state; //场次状态 1上映中 0下架
// 所属放映厅对象,通过关联关系可以获取放映厅的详细信息(如放映厅名称、座位布局等),方便在业务逻辑中涉及放映厅相关信息展示或操作时使用,此处是对象形式的关联。
private Hall schedule_hall; //所属放映厅对象
// 放映的电影对象,通过关联关系可以获取电影的详细信息(如电影名称、评分、类型等),方便在业务逻辑中涉及电影相关信息展示或操作时使用,此处是对象形式的关联。
private Movie schedule_movie; //放映的电影
// 所有的订单集合,用于记录购买该场次电影票的所有订单信息,方便在统计场次收入、查询已购票用户等业务场景中使用,体现了场次与订单之间的一对多关系。
private List<Order> orderList; //所有的订单集合
// Getter方法用于获取场次的唯一标识符schedule_id外部代码可以通过调用此方法获取场次对象的该属性值遵循JavaBean规范常用于查找、对比等操作中确定具体场次。
public long getSchedule_id() {
return schedule_id;
}
// Setter方法用于设置场次的唯一标识符schedule_id外部代码可以通过调用此方法来修改场次对象的该属性值遵循JavaBean规范一般在创建或更新场次记录时使用。
public void setSchedule_id(long schedule_id) {
this.schedule_id = schedule_id;
}
// Getter方法用于获取场次状态schedule_state方便在业务逻辑中根据场次状态进行不同的操作处理例如判断场次是否可购票等情况。
public int getSchedule_state() {
return schedule_state;
}
// Setter方法用于设置场次状态schedule_state例如在管理员操作场次上下架时通过此方法更新场次对象的状态属性值。
public void setSchedule_state(int schedule_state) {
this.schedule_state = schedule_state;
}
// Getter方法用于获取放映的电影对象schedule_movie在需要展示电影详细信息或者基于电影进行相关业务操作如统计票房等可以通过此方法获取对应的电影对象。
public Movie getSchedule_movie() {
return schedule_movie;
}
// Setter方法用于设置放映的电影对象schedule_movie一般在关联电影与场次或者更新场次所对应的电影时通过此方法设置属性值确保场次与正确的电影相关联。
public void setSchedule_movie(Movie schedule_movie) {
this.schedule_movie = schedule_movie;
}
// Getter方法用于获取所属放映厅的唯一标识符hall_id可以用于进一步查询放映厅的详细信息或者在涉及放映厅关联的业务逻辑中作为关键参数使用。
public long getHall_id() {
return hall_id;
}
// Setter方法用于设置所属放映厅的唯一标识符hall_id例如在安排场次到具体放映厅时通过此方法更新场次对象的该属性值建立场次与放映厅的关联。
public void setHall_id(long hall_id) {
this.hall_id = hall_id;
}
// Getter方法用于获取放映的电影编号movie_id同样可用于关联电影相关信息或者作为查询、验证等业务操作的参数依据。
public long getMovie_id() {
return movie_id;
}
// Setter方法用于设置放映的电影编号movie_id在确定场次播放的电影时通过此方法设置相应的电影编号属性确保场次与正确的电影对应起来。
public void setMovie_id(long movie_id) {
this.movie_id = movie_id;
}
// Getter方法用于获取电影放映时间schedule_startTime在展示场次时间表、判断场次是否冲突等业务场景中可以获取该时间信息进行相应操作。
public String getSchedule_startTime() {
return schedule_startTime;
}
// Setter方法用于设置电影放映时间schedule_startTime例如在调整场次时间安排时通过此方法更新场次对象的该属性值改变场次的放映时间。
public void setSchedule_startTime(String schedule_startTime) {
this.schedule_startTime = schedule_startTime;
}
// Getter方法用于获取售价schedule_price可用于展示票价信息给用户或者在涉及价格计算、统计等业务操作中获取该场次的票价数据。
public int getSchedule_price() {
return schedule_price;
}
// Setter方法用于设置售价schedule_price例如在修改场次票价时通过此方法更新场次对象的该属性值调整场次的价格信息。
public void setSchedule_price(int schedule_price) {
this.schedule_price = schedule_price;
}
// Getter方法用于获取剩余座位数schedule_remain在购票、退票等业务场景中实时获取座位剩余情况以决定是否可继续售票或者更新剩余座位数量等操作。
public int getSchedule_remain() {
return schedule_remain;
}
// Setter方法用于设置剩余座位数schedule_remain在有购票、退票等操作发生时通过此方法相应地更新场次对象的剩余座位数属性值保持数据的准确性。
public void setSchedule_remain(int schedule_remain) {
this.schedule_remain = schedule_remain;
}
// Getter方法用于获取所属放映厅对象schedule_hall在需要获取放映厅详细信息如名称、座位布局等可以通过此方法获取对应的Hall对象进行相关操作。
public Hall getSchedule_hall() {
return schedule_hall;
}
// Setter方法用于设置所属放映厅对象schedule_hall例如在关联场次与具体放映厅或者更新场次对应的放映厅时通过此方法设置属性值确保场次与正确的放映厅关联起来。
public void setSchedule_hall(Hall schedule_hall) {
this.schedule_hall = schedule_hall;
}
// Getter方法用于获取所有的订单集合orderList在统计场次收入、查询已购票用户等业务场景中可以通过此方法获取对应的订单列表进行相关操作。
public List<Order> getOrderList() {
return orderList;
}
// Setter方法用于设置所有的订单集合orderList一般在创建场次与订单的关联或者更新订单列表比如退票后更新相关订单状态等情况通过此方法设置属性值维护场次与订单之间的关系。
public void setOrderList(List<Order> orderList) {
this.orderList = orderList;
}
}

@ -1,51 +1,84 @@
package com.entity;
/**
*
*
* GetterSetter访
* 便
* @author Wxj
*/
public class User {
private long user_id;
private String user_name; //用户账号
private String user_pwd; //用户密码
private String user_email; //用户邮箱
private int user_role; //用户权限 0普通会员 1管理员
private String user_headImg; //用户头像地址
public long getUser_id() {
return user_id;
}
public void setUser_id(long user_id) {
this.user_id = user_id;
}
public String getUser_name() {
return user_name;
}
public void setUser_name(String user_name) {
this.user_name = user_name;
}
public String getUser_pwd() {
return user_pwd;
}
public void setUser_pwd(String user_pwd) {
this.user_pwd = user_pwd;
}
public String getUser_email() {
return user_email;
}
public void setUser_email(String user_email) {
this.user_email = user_email;
}
public int getUser_role() {
return user_role;
}
public void setUser_role(int user_role) {
this.user_role = user_role;
}
public String getUser_headImg() {
return user_headImg;
}
public void setUser_headImg(String user_headImg) {
this.user_headImg = user_headImg;
}
}
// 用户的唯一标识符,在数据库中通常作为主键,用于唯一区分不同的用户记录。
private long user_id;
// 用户账号,用于用户登录等操作时的身份标识,一般是用户自定义的字符串形式的用户名。
private String user_name; //用户账号
// 用户密码,用于验证用户身份的保密信息,存储时通常需要进行加密处理以保障安全性(此处仅为简单的属性定义,实际应用中加密处理在其他地方实现)。
private String user_pwd; //用户密码
// 用户邮箱,用于接收系统相关通知、找回密码等功能的联系邮箱地址,方便与用户进行沟通及一些业务逻辑关联(如邮件验证等)。
private String user_email; //用户邮箱
// 用户权限用于区分不同角色的用户0表示普通会员具有普通的使用系统功能的权限1表示管理员拥有更多的管理系统相关的高级权限。
private int user_role; //用户权限 0普通会员 1管理员
// 用户头像地址,用于存储用户头像图片在服务器上的相对或绝对路径,方便在前端页面展示用户头像时根据此地址获取对应的图片资源。
private String user_headImg; //用户头像地址
// Getter方法用于获取用户的唯一标识符user_id外部代码可以通过调用此方法获取用户对象的该属性值遵循JavaBean规范。
public long getUser_id() {
return user_id;
}
// Setter方法用于设置用户的唯一标识符user_id外部代码可以通过调用此方法来修改用户对象的该属性值遵循JavaBean规范。
public void setUser_id(long user_id) {
this.user_id = user_id;
}
// Getter方法用于获取用户账号user_name方便在其他地方获取并使用此账号信息例如进行登录验证等操作时获取输入的账号与该值进行对比。
public String getUser_name() {
return user_name;
}
// Setter方法用于设置用户账号user_name例如在用户注册或者修改账号时通过此方法更新用户对象的账号属性值。
public void setUser_name(String user_name) {
this.user_name = user_name;
}
// Getter方法用于获取用户密码user_pwd不过在实际应用中直接获取密码可能需要遵循一定的安全规则比如仅在特定的验证场景下使用等。
public String getUser_pwd() {
return user_pwd;
}
// Setter方法用于设置用户密码user_pwd通常在用户修改密码或者注册新用户设置初始密码时调用此方法注意实际应用中密码应加密后存储。
public void setUser_pwd(String user_pwd) {
this.user_pwd = user_pwd;
}
// Getter方法用于获取用户邮箱user_email可以在需要发送邮件等与邮箱相关的业务场景中获取该邮箱地址使用。
public String getUser_email() {
return user_email;
}
// Setter方法用于设置用户邮箱user_email例如用户更新邮箱信息或者注册时填写邮箱时通过此方法设置属性值。
public void setUser_email(String user_email) {
this.user_email = user_email;
}
// Getter方法用于获取用户权限user_role在业务逻辑中可以根据此权限值判断用户所能进行的操作范围例如是否有管理功能权限等。
public int getUser_role() {
return user_role;
}
// Setter方法用于设置用户权限user_role一般在系统管理后台对用户角色进行调整等操作时使用此方法修改权限值。
public void setUser_role(int user_role) {
this.user_role = user_role;
}
// Getter方法用于获取用户头像地址user_headImg前端页面展示用户头像时可以根据此地址去获取对应的图片资源进行显示。
public String getUser_headImg() {
return user_headImg;
}
// Setter方法用于设置用户头像地址user_headImg例如用户更新头像后通过此方法将新的头像图片地址保存到用户对象中以便后续相关操作使用。
public void setUser_headImg(String user_headImg) {
this.user_headImg = user_headImg;
}
}

@ -1,4 +1,4 @@
package com.service.imp;
package com.service.imp;
import java.util.List;
@ -14,110 +14,211 @@ import com.mapper.MovieMapper;
import com.mapper.UserMapper;
import com.service.IMovieService;
/**
* IMovieService
* Mapper
*
* @ServiceSpring便Spring
*/
@Service
public class MovieServiceImp implements IMovieService{
@Autowired
private MovieMapper movieMapper;
@Autowired
private CommentMapper commentMapper;
@Autowired
private UserMapper userMapper;
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public Movie findMovieById(long movie_id) {
Movie movie = this.movieMapper.findMovieById(movie_id);
List<Comment> list = this.commentMapper.findCommentsByMoiveId(movie_id);
for(Comment comment : list) {
comment.setComment_user(this.userMapper.findUserById(comment.getUser_id()));
}
movie.setCommentList(list);
return movie;
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer changeMovieBoxOffice(float price, long movie_id) {
return this.movieMapper.changeMovieBoxOffice(price, movie_id);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public Movie findMovieByName(String movie_cn_name) {
return this.movieMapper.findMovieByName(movie_cn_name);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer addCommentCount(long movie_id) {
return this.movieMapper.addMovieCommentCount(movie_id);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer delCommentCount(long movie_id) {
return this.movieMapper.deleteMovieCommentCount(movie_id);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer addMovie(Movie movie) {
return this.movieMapper.addMovie(movie);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer deleteMovie(long movie_id) {
return this.movieMapper.deleteMovie(movie_id);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer updateMovie(Movie movie) {
return this.movieMapper.updateMovie(movie);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Movie> findAllMovies(int movie_state) {
return this.movieMapper.findAllMovies(movie_state);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Movie> findMoviesLikeName(String name) {
return this.movieMapper.findMoviesLikeName(name);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Movie> findMoviesLikeType(String type) {
return this.movieMapper.findMoviesLikeType(type);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Movie> sortMovieByDate() {
return this.movieMapper.sortMovieByDate();
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Movie> sortMovieByCount() {
return this.movieMapper.sortMovieByCount();
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Movie> sortMovieByScore() {
return this.movieMapper.sortMovieByScore();
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Movie> sortMovieByBoxOffice() {
return this.movieMapper.sortMovieByBoxOffice();
}
}
public class MovieServiceImp implements IMovieService {
// 使用@Autowired注解自动注入MovieMapper接口用于调用数据库中与电影表相关的操作方法例如根据电影ID查询电影信息、添加电影、更新电影记录以及删除电影等操作。
@Autowired
private MovieMapper movieMapper;
// 自动注入CommentMapper接口用于操作评论相关的数据比如根据电影ID获取该电影对应的评论列表辅助电影相关业务逻辑处理因为电影与评论存在一对多的关联关系。
@Autowired
private CommentMapper commentMapper;
// 自动注入UserMapper接口用于获取用户相关信息在处理电影评论相关业务时需要根据评论中关联的用户ID查找用户详细信息以完善评论对象中的用户相关数据。
@Autowired
private UserMapper userMapper;
/**
* ID
* 使Propagation.REQUIRED
* readOnly=true
* @param movie_id
* @return Movienull
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public Movie findMovieById(long movie_id) {
// 首先通过MovieMapper根据电影ID从数据库中查询出基本的电影信息得到一个Movie对象。
Movie movie = this.movieMapper.findMovieById(movie_id);
// 通过CommentMapper根据电影ID查询该电影对应的所有评论列表信息得到一个Comment列表。
List<Comment> list = this.commentMapper.findCommentsByMoiveId(movie_id);
for (Comment comment : list) {
// 对每条评论信息通过UserMapper根据评论中关联的用户ID查找并设置评论对象中的所属用户信息建立评论与用户的关联关系方便后续业务操作展示评论用户相关详情。
comment.setComment_user(this.userMapper.findUserById(comment.getUser_id()));
}
// 将包含完整用户关联信息的评论列表设置到电影对象中,建立电影与评论的关联关系,使电影对象包含其对应的所有评论及相关用户信息,方便后续业务场景中展示电影详情页的评论等操作。
movie.setCommentList(list);
return movie;
}
/**
*
* 使Propagation.REQUIRED
* rollbackForException.class
* @param price
* @param movie_id
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer changeMovieBoxOffice(float price, long movie_id) {
return this.movieMapper.changeMovieBoxOffice(price, movie_id);
}
/**
*
* 使Propagation.REQUIREDreadOnly=true
* Movienull便使
* @param movie_cn_name
* @return Movienull
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public Movie findMovieByName(String movie_cn_name) {
return this.movieMapper.findMovieByName(movie_cn_name);
}
/**
*
*
* @param movie_id
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer addCommentCount(long movie_id) {
return this.movieMapper.addMovieCommentCount(movie_id);
}
/**
*
*
* @param movie_id
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer delCommentCount(long movie_id) {
return this.movieMapper.deleteMovieCommentCount(movie_id);
}
/**
* Movie
* 使Propagation.REQUIRED
* rollbackForException.class
* @param movie Movie
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer addMovie(Movie movie) {
return this.movieMapper.addMovie(movie);
}
/**
*
* 使Propagation.REQUIRED
* rollbackForException.class
* @param movie_id
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer deleteMovie(long movie_id) {
return this.movieMapper.deleteMovie(movie_id);
}
/**
* Movie
* 使
* @param movie Movie
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer updateMovie(Movie movie) {
return this.movieMapper.updateMovie(movie);
}
/**
* 线1线0
* 使Propagation.REQUIREDreadOnly=true
* 便使
* @param movie_state 线
* @return
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Movie> findAllMovies(int movie_state) {
return this.movieMapper.findAllMovies(movie_state);
}
/**
* 便
* 使Propagation.REQUIREDreadOnly=true
* 便使
* @param name
* @return
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Movie> findMoviesLikeName(String name) {
return this.movieMapper.findMoviesLikeName(name);
}
/**
* 便
* 使readOnly=truePropagation.REQUIRED
*
* @param type
* @return
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Movie> findMoviesLikeType(String type) {
return this.movieMapper.findMoviesLikeType(type);
}
/**
* 便
* 使Propagation.REQUIREDreadOnly=true
* 便使
* @return
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Movie> sortMovieByDate() {
return this.movieMapper.sortMovieByDate();
}
/**
* 便
* 使readOnly=truePropagation.REQUIRED
*
* @return
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Movie> sortMovieByCount() {
return this.movieMapper.sortMovieByCount();
}
/**
* 便
* readOnly=truePropagation.REQUIRED
*
* @return
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Movie> sortMovieByScore() {
return this.movieMapper.sortMovieByScore();
}
/**
* 便

@ -21,150 +21,211 @@ import com.mapper.ScheduleMapper;
import com.mapper.UserMapper;
import com.service.IOrderService;
/**
* IOrderService
* Mapper
* 使便
* @ServiceSpring使Spring便
*/
@Service
public class OrderServiceImp implements IOrderService{
@Autowired
private OrderMapper orderMapper;
@Autowired
private UserMapper userMapper;
@Autowired
private ScheduleMapper scheduleMapper;
@Autowired
private HallMapper hallMapper;
@Autowired
private MovieMapper movieMapper;
@Autowired
private CinemaMapper cinemaMapper;
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public Order findOrderById(String order_id) {
Order order = this.orderMapper.findOrderById(order_id);
if(order != null) {
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}else {
order = null;
}
return order;
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Order> findRefundOrderByUserName(String user_name) {
List<Order> list = this.orderMapper.findRefundOrderByUserName(user_name);
if(list.size() > 0) {
for(Order order : list) {
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
}else {
list = null;
}
return list;
}
public class OrderServiceImp implements IOrderService {
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer addOrder(Order order) {
return this.orderMapper.addOrder(order);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer updateOrderStateToRefund(String order_id) {
return this.orderMapper.updateOrderStateToRefund(order_id);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer updateOrderStateToRefunded(String order_id) {
return this.orderMapper.updateOrderStateToRefunded(order_id);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public PageInfo<Order> findOrdersByUserName(Integer page,Integer limit,String user_name) {
PageHelper.startPage(page, limit);
List<Order> list = this.orderMapper.findOrdersByUserName(user_name);
for(Order order : list) {
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
PageInfo<Order> info = new PageInfo<Order>(list);
return info;
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Order> findAllOrders() {
List<Order> list = this.orderMapper.findAllOrders();
for(Order order : list) {
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
return list;
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public PageInfo<Order> findOrdersByState(Integer page,Integer limit,int order_state) {
PageHelper.startPage(page, limit);
List<Order> list = this.orderMapper.findOrdersByState(order_state);
for(Order order : list) {
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
PageInfo<Order> info = new PageInfo<Order>(list);
return info;
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public PageInfo<Order> findAllOrdersBySplitPage(Integer page, Integer limit, String keyword) {
PageHelper.startPage(page, limit);
List<Order> list = new ArrayList<Order>();
if(keyword != null && !keyword.trim().equals("")) {
list = this.orderMapper.findOrdersByUserName(keyword);
}else {
list = this.orderMapper.findAllOrders();
}
for(Order order : list) {
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
PageInfo<Order> info = new PageInfo<Order>(list);
return info;
}
}
// 使用@Autowired注解自动注入OrderMapper接口用于调用数据库中与订单表相关的操作方法例如根据订单ID查询订单、添加订单、更新订单状态等操作。
@Autowired
private OrderMapper orderMapper;
// 自动注入UserMapper接口用于获取用户相关信息在处理订单业务时需要根据订单关联的用户ID查找用户详细信息以完善订单对象中的用户相关数据。
@Autowired
private UserMapper userMapper;
// 自动注入ScheduleMapper接口用于操作场次相关的数据因为订单与场次存在关联关系需要通过场次ID查找场次详细信息并关联到订单对象中。
@Autowired
private ScheduleMapper scheduleMapper;
// 自动注入HallMapper接口用于获取放映厅相关信息辅助完善场次对象中的放映厅信息进而使订单对象能够关联到完整的场次及放映厅相关数据因为场次关联放映厅。
@Autowired
private HallMapper hallMapper;
// 自动注入MovieMapper接口用于获取电影相关信息同样是为了完善场次对象中的电影信息最终使订单对象关联到完整的场次、放映厅及电影相关数据因为场次关联电影。
@Autowired
private MovieMapper movieMapper;
// 自动注入CinemaMapper接口用于获取影院相关信息以便在完善放映厅对象的所属影院信息时使用通过层层关联使订单对象能关联到完整的业务相关数据链条用户、订单、场次、放映厅、影院、电影
@Autowired
private CinemaMapper cinemaMapper;
/**
* ID
* 使Propagation.REQUIRED
* readOnly=true
* @param order_id
* @return Ordernull
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public Order findOrderById(String order_id) {
// 首先通过OrderMapper根据订单ID从数据库中查询出基本的订单信息得到一个Order对象。
Order order = this.orderMapper.findOrderById(order_id);
if (order!= null) {
// 通过UserMapper根据订单中关联的用户ID查找并设置订单对象中的所属用户信息建立订单与用户的关联关系方便后续业务操作获取用户详细信息。
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
// 通过ScheduleMapper根据订单中关联的场次ID查找对应的场次信息得到一个Schedule对象。
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
// 根据场次中关联的放映厅ID通过HallMapper查询对应的放映厅信息得到一个Hall对象。
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
// 再通过CinemaMapper根据放映厅所属的影院ID查找并设置放映厅对象中的所属影院信息完善放映厅的关联信息。
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
// 将包含完整信息的放映厅对象设置到场次对象中,建立场次与放映厅的关联关系,方便后续业务操作获取放映厅详细信息。
schedule.setSchedule_hall(hall);
// 通过MovieMapper根据场次中关联的电影ID查找并设置场次对象中的放映电影信息建立场次与电影的关联关系以便获取电影详细信息。
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
// 将包含完整关联信息的场次对象设置到订单对象中,建立订单与场次的关联关系,使订单对象包含完整的业务关联信息链条。
order.setOrder_schedule(schedule);
} else {
order = null;
}
return order;
}
/**
* 退退
* 使readOnly=truePropagation.REQUIRED
* 0null退便退
* @param user_name 退
* @return 退null
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Order> findRefundOrderByUserName(String user_name) {
// 通过OrderMapper根据用户名查询该用户的所有可退款订单列表信息得到一个初始的订单列表。
List<Order> list = this.orderMapper.findRefundOrderByUserName(user_name);
if (list.size() > 0) {
for (Order order : list) {
// 对每个可退款订单信息进行关联信息的补充以下步骤与findOrderById方法中补充关联信息的逻辑类似依次查找并设置所属用户、所属场次及其关联的放映厅、电影等信息。
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
} else {
list = null;
}
return list;
}
/**
*
* 使Propagation.REQUIRED
* rollbackForException.class
* @param order Order
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer addOrder(Order order) {
return this.orderMapper.addOrder(order);
}
/**
* 退
* 使
* @param order_id
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer updateOrderStateToRefund(String order_id) {
return this.orderMapper.updateOrderStateToRefund(order_id);
}
/**
* 退
* 退退
* @param order_id 退
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer updateOrderStateToRefunded(String order_id) {
return this.orderMapper.updateOrderStateToRefunded(order_id);
}
/**
*
* 使readOnly=truePropagation.REQUIREDPageHelperPageInfo
* @param page
* @param limit
* @param user_name
* @return PageInfo<Order>便便
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public PageInfo<Order> findOrdersByUserName(Integer page, Integer limit, String user_name) {
// 使用PageHelper设置分页参数指定当前页码和每页显示数量后续查询操作将按照此分页规则获取数据。
PageHelper.startPage(page, limit);
// 通过OrderMapper根据用户名查询符合条件的订单列表信息得到一个包含基本订单信息的列表。
List<Order> list = this.orderMapper.findOrdersByUserName(user_name);
for (Order order : list) {
// 对每个订单信息进行关联信息的补充以下步骤与findOrderById方法中补充关联信息的逻辑类似依次查找并设置所属用户、所属场次及其关联的放映厅、电影等信息。
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
// 将包含完整关联信息的订单列表封装成PageInfo对象该对象包含了分页相关信息如总记录数、当前页码、每页数量等以及订单数据列表方便前端进行分页展示等操作。
PageInfo<Order> info = new PageInfo<Order>(list);
return info;
}
/**
*
* 使readOnly=true使便使
* @return
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public List<Order> findAllOrders() {
// 通过OrderMapper查询所有订单的基本信息得到一个初始的订单列表。
List<Order> list = this.orderMapper.findAllOrders();
for (Order order : list) {
// 对每个订单信息进行关联信息的补充以下步骤与findOrderById方法中补充关联信息的逻辑类似依次查找并设置所属用户、所属场次及其关联的放映厅、电影等信息。
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
return list;
}
/**
*
* PageInfo便
* @param page
* @param limit
* @param order_state 0退1
* @return PageInfo<Order>便
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public PageInfo<Order> findOrdersByState(Integer page, Integer limit, int order_state) {
PageHelper.startPage(page, limit);
List<Order> list = this.orderMapper.findOrdersByState(order_state);
for (Order order : list) {
order.setOrder_user(this.userMapper.findUserById(order.getUser_id()));
Schedule schedule = this.scheduleMapper.findScheduleById(order.getSchedule_id());
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
order.setOrder_schedule(schedule);
}
PageInfo<Order> info = new PageInfo<Order>(list);
return info;
}
/**
*

@ -19,154 +19,219 @@ import com.mapper.OrderMapper;
import com.mapper.ScheduleMapper;
import com.service.IScheduleService;
/**
* IScheduleService
* Mapper
* 使
* @ServiceSpring便
*/
@Service
public class ScheduleServiceImp implements IScheduleService{
@Autowired
private ScheduleMapper scheduleMapper;
@Autowired
private HallMapper hallMapper;
@Autowired
private MovieMapper movieMapper;
@Autowired
private OrderMapper orderMapper;
@Autowired
private CinemaMapper cinemaMapper;
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public Schedule findScheduleById(long schedule_id) {
Schedule schedule = this.scheduleMapper.findScheduleById(schedule_id);
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule_id);
schedule.setOrderList(list);
return schedule;
}
public class ScheduleServiceImp implements IScheduleService {
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer addSchedule(Schedule schedule) {
return this.scheduleMapper.addSchedule(schedule);
}
// 使用@Autowired注解自动注入ScheduleMapper接口用于调用数据库中与场次表相关的操作方法比如根据ID查询场次、添加场次、更新场次等操作。
@Autowired
private ScheduleMapper scheduleMapper;
// 自动注入HallMapper接口用于操作放映厅相关的数据例如查询放映厅信息等辅助场次相关业务逻辑处理因为场次与放映厅存在关联关系。
@Autowired
private HallMapper hallMapper;
// 自动注入MovieMapper接口用于获取电影相关信息比如根据电影ID查找电影详细信息等在处理场次业务时需要关联电影信息进行展示等操作。
@Autowired
private MovieMapper movieMapper;
// 自动注入OrderMapper接口用于查询与场次相关的订单信息例如查找某个场次下的所有订单方便在业务逻辑中涉及订单相关的操作如统计场次收入等
@Autowired
private OrderMapper orderMapper;
// 自动注入CinemaMapper接口用于获取影院相关信息比如查找放映厅所属的影院信息等因为场次关联放映厅放映厅又属于特定影院存在多层关联关系。
@Autowired
private CinemaMapper cinemaMapper;
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer updateSchedule(Schedule schedule) {
return this.scheduleMapper.updateSchedule(schedule);
}
/**
* ID
* 使Propagation.REQUIRED
* readOnly=true
* @param schedule_id
* @return Schedulenull
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public Schedule findScheduleById(long schedule_id) {
// 首先通过ScheduleMapper根据场次ID从数据库中查询出基本的场次信息得到一个Schedule对象。
Schedule schedule = this.scheduleMapper.findScheduleById(schedule_id);
// 根据场次中关联的放映厅ID通过HallMapper查询对应的放映厅信息得到一个Hall对象。
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
// 再通过CinemaMapper根据放映厅所属的影院ID查找并设置放映厅对象中的所属影院信息完善放映厅的关联信息。
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
// 将包含完整信息的放映厅对象设置到场次对象中,建立场次与放映厅的关联关系,方便后续业务操作获取放映厅详细信息。
schedule.setSchedule_hall(hall);
// 通过MovieMapper根据场次中关联的电影ID查找并设置场次对象中的放映电影信息建立场次与电影的关联关系以便获取电影详细信息。
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
// 通过OrderMapper根据场次ID查找该场次下的所有订单信息得到一个订单列表设置到场次对象中方便后续统计订单相关数据等操作。
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule_id);
schedule.setOrderList(list);
return schedule;
}
/**
*
*/
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer deleteSchedule(long schedule_id) {
return this.scheduleMapper.deleteSchedule(schedule_id);
}
/**
*
* 使Propagation.REQUIRED
* rollbackForException.class
* @param schedule Schedule
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer addSchedule(Schedule schedule) {
return this.scheduleMapper.addSchedule(schedule);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer addScheduleRemain(long schedule_id) {
return this.scheduleMapper.addScheduleRemain(schedule_id);
}
/**
*
* 使
* @param schedule Schedule
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer updateSchedule(Schedule schedule) {
return this.scheduleMapper.updateSchedule(schedule);
}
@Transactional(propagation=Propagation.REQUIRED,rollbackFor=Exception.class)
@Override
public Integer delScheduleRemain(long schedule_id) {
return this.scheduleMapper.delScheduleRemain(schedule_id);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public PageInfo<Schedule> findScheduleByMovieName(Integer page,Integer limit,String movie_name) {
PageHelper.startPage(page, limit);
List<Schedule> schedules = this.scheduleMapper.findScheduleByMovieName(movie_name);
for(Schedule schedule: schedules) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules);
return info;
}
/**
* 使
*
* @param schedule_id
* @return 010
*/
/**
*
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer deleteSchedule(long schedule_id) {
return this.scheduleMapper.deleteSchedule(schedule_id);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public PageInfo<Schedule> findOffScheduleByMovieName(Integer page, Integer limit, String movie_name) {
PageHelper.startPage(page, limit);
List<Schedule> schedules = this.scheduleMapper.findOffScheduleByMovieName(movie_name);
for(Schedule schedule: schedules) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules);
return info;
}
/**
* 退
* 使
* @param schedule_id
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer addScheduleRemain(long schedule_id) {
return this.scheduleMapper.addScheduleRemain(schedule_id);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public PageInfo<Schedule> findAllScheduleByState(Integer page,Integer limit,int schedule_state) {
PageHelper.startPage(page, limit);
List<Schedule> schedules = this.scheduleMapper.findScheduleByState(schedule_state);
for(Schedule schedule: schedules) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules);
return info;
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public PageInfo<Schedule> findAllSchedule(Integer page,Integer limit) {
PageHelper.startPage(page, limit);
List<Schedule> schedules = this.scheduleMapper.findAllSchedule();
for(Schedule schedule: schedules) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules);
return info;
}
/**
*
* 使
* @param schedule_id
* @return 010
*/
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
@Override
public Integer delScheduleRemain(long schedule_id) {
return this.scheduleMapper.delScheduleRemain(schedule_id);
}
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Schedule> findScheduleByCinemaAndMovie(long cinema_id, long movie_id) {
return this.scheduleMapper.findScheduleByCinemaAndMovie(cinema_id, movie_id);
}
/**
* selectSeat
*/
@Transactional(propagation=Propagation.REQUIRED,readOnly=true)
@Override
public List<Schedule> findScheduleByCineamIdAndMovieId(long cinema_id, long movie_id) {
List<Schedule> list = this.scheduleMapper.findScheduleByCinemaAndMovie(cinema_id, movie_id);
for(Schedule schedule: list) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
}
return list;
}
}
/**
*
* 使readOnly=truePropagation.REQUIRED
* PageHelperPageInfo
* @param page
* @param limit
* @param movie_name
* @return PageInfo<Schedule>便
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public PageInfo<Schedule> findScheduleByMovieName(Integer page, Integer limit, String movie_name) {
// 使用PageHelper设置分页参数指定当前页码和每页显示数量后续查询操作将按照此分页规则获取数据。
PageHelper.startPage(page, limit);
// 通过ScheduleMapper根据电影名称查询符合条件的场次列表信息得到一个包含基本场次信息的列表。
List<Schedule> schedules = this.scheduleMapper.findScheduleByMovieName(movie_name);
for (Schedule schedule : schedules) {
// 对每个场次信息进行关联信息的补充以下步骤与findScheduleById方法中补充关联信息的逻辑类似依次查找并设置放映厅、电影、订单列表等关联信息。
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
// 将包含完整关联信息的场次列表封装成PageInfo对象该对象包含了分页相关信息如总记录数、当前页码、每页数量等以及场次数据列表方便前端进行分页展示等操作。
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules);
return info;
}
/**
*
* findScheduleByMovieName使
* @param page
* @param limit
* @param movie_name
* @return PageInfo<Schedule>便
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public PageInfo<Schedule> findOffScheduleByMovieName(Integer page, Integer limit, String movie_name) {
PageHelper.startPage(page, limit);
List<Schedule> schedules = this.scheduleMapper.findOffScheduleByMovieName(movie_name);
for (Schedule schedule : schedules) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules);
return info;
}
/**
*
* PageInfo
* @param page
* @param limit
* @param schedule_state 10
* @return PageInfo<Schedule>便
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public PageInfo<Schedule> findAllScheduleByState(Integer page, Integer limit, int schedule_state) {
PageHelper.startPage(page, limit);
List<Schedule> schedules = this.scheduleMapper.findScheduleByState(schedule_state);
for (Schedule schedule : schedules) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules);
return info;
}
/**
*
* PageInfo
* @param page
* @param limit
* @return PageInfo<Schedule>便
*/
@Transactional(propagation = Propagation.REQUIRED, readOnly = true)
@Override
public PageInfo<Schedule> findAllSchedule(Integer page, Integer limit) {
PageHelper.startPage(page, limit);
List<Schedule> schedules = this.scheduleMapper.findAllSchedule();
for (Schedule schedule : schedules) {
Hall hall = this.hallMapper.findHallById(schedule.getHall_id());
hall.setHall_cinema(this.cinemaMapper.findCinemaById(hall.getCinema_id()));
schedule.setSchedule_hall(hall);
schedule.setSchedule_movie(this.movieMapper.findMovieById(schedule.getMovie_id()));
List<Order> list = this.orderMapper.findOrdersByScheduleId(schedule.getSchedule_id());
schedule.setOrderList(list);
}
PageInfo<Schedule> info = new PageInfo<Schedule>(schedules
Loading…
Cancel
Save