This commit is contained in:
@@ -32,7 +32,11 @@ public class Article implements Serializable {
|
|||||||
private String title;
|
private String title;
|
||||||
private String topic;
|
private String topic;
|
||||||
private String URL_article;
|
private String URL_article;
|
||||||
private String mainAuthor;
|
|
||||||
|
//@ManyToOne(targetEntity=Conference.class)
|
||||||
|
//@JoinColumn(name="mainAuthor",nullable=false)
|
||||||
|
private User mainAuthor;
|
||||||
|
|
||||||
private ArrayList<String> secondaryAuthors;
|
private ArrayList<String> secondaryAuthors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -77,9 +81,9 @@ public class Article implements Serializable {
|
|||||||
secondaryAuthors = new ArrayList<String>();
|
secondaryAuthors = new ArrayList<String>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Article(int reference, String title, String topic,
|
public Article(String title, String topic,
|
||||||
String url_article, String mainAuthor,
|
String url_article, User mainAuthor,
|
||||||
List<String> secondaryAuthor, int state) {
|
List<String> secondaryAuthor, int state, Conference conference) {
|
||||||
//this.id = reference;
|
//this.id = reference;
|
||||||
this.title = title;
|
this.title = title;
|
||||||
this.topic = topic;
|
this.topic = topic;
|
||||||
@@ -93,6 +97,7 @@ public class Article implements Serializable {
|
|||||||
this.state = state;
|
this.state = state;
|
||||||
referees = new ArrayList<User>();
|
referees = new ArrayList<User>();
|
||||||
pcMembers = new ArrayList<User>();
|
pcMembers = new ArrayList<User>();
|
||||||
|
this.conference = conference;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
@@ -129,11 +134,15 @@ public class Article implements Serializable {
|
|||||||
URL_article = url_article;
|
URL_article = url_article;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getMainAuthor() {
|
@ManyToOne(targetEntity=User.class)
|
||||||
|
@JoinColumn(name="mainAuthor",nullable=false)
|
||||||
|
public User getMainAuthor() {
|
||||||
return mainAuthor;
|
return mainAuthor;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setMainAuthor(String mainAuthor) {
|
@ManyToOne(targetEntity=User.class)
|
||||||
|
@JoinColumn(name="mainAuthor",nullable=false)
|
||||||
|
public void setMainAuthor(User mainAuthor) {
|
||||||
this.mainAuthor = mainAuthor;
|
this.mainAuthor = mainAuthor;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -213,13 +222,13 @@ public class Article implements Serializable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ManyToOne(targetEntity=Conference.class)
|
@ManyToOne(targetEntity=Conference.class)
|
||||||
|
@JoinColumn(name="conference_id",nullable=false)
|
||||||
public Conference getConference(){
|
public Conference getConference(){
|
||||||
return conference;
|
return conference;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ManyToOne(targetEntity=Conference.class)
|
@ManyToOne(targetEntity=Conference.class)
|
||||||
|
@JoinColumn(name="conference_id",nullable=false)
|
||||||
public void setConference(Conference conference){
|
public void setConference(Conference conference){
|
||||||
this.conference = conference;
|
this.conference = conference;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,8 +7,9 @@ import javax.ejb.Stateless;
|
|||||||
import javax.persistence.EntityManager;
|
import javax.persistence.EntityManager;
|
||||||
import javax.persistence.NoResultException;
|
import javax.persistence.NoResultException;
|
||||||
import javax.persistence.PersistenceContext;
|
import javax.persistence.PersistenceContext;
|
||||||
|
import javax.persistence.Query;
|
||||||
|
|
||||||
|
import org.yacos.core.conferences.Conference;
|
||||||
import org.yacos.core.users.User;
|
import org.yacos.core.users.User;
|
||||||
|
|
||||||
@Stateless
|
@Stateless
|
||||||
@@ -26,18 +27,13 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Article addArticle(int reference, String title, String topic,String url_article,
|
public Article addArticle(String title, String topic,String url_article,
|
||||||
String mainAuthor, List<String> secondaryAuthor, int state) {
|
User mainAuthor, List<String> secondaryAuthor, int state,Conference conference) {
|
||||||
Article a = new Article(reference, title, topic, url_article, mainAuthor, secondaryAuthor, state);
|
Article a = new Article(title, topic, url_article, mainAuthor, secondaryAuthor, state, conference);
|
||||||
em.persist(a);
|
em.persist(a);
|
||||||
return a;
|
return a;
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
|
||||||
public List<Article> getArticles() {
|
|
||||||
return em.createQuery("from Article a ORDER BY a.title").getResultList();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void updateArticle(Article article) {
|
public void updateArticle(Article article) {
|
||||||
em.merge(article);
|
em.merge(article);
|
||||||
|
|
||||||
@@ -52,6 +48,26 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
return em.find(Article.class, id);
|
return em.find(Article.class, id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public List<Article> getArticles(Conference conf) {
|
||||||
|
Query query = em.createQuery("from Article a WHERE conference = ? ORDER BY a.title");
|
||||||
|
query.setParameter(1, conf);
|
||||||
|
return query.getResultList();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public List<Article> getArticleOfAuthor(Conference conf, User author) {
|
||||||
|
Query query = em.createQuery("from Article a WHERE conference = ? and mainAuthor = ? ORDER BY a.title");
|
||||||
|
query.setParameter(1, conf);
|
||||||
|
query.setParameter(2, author);
|
||||||
|
return query.getResultList();
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Article> getArticlesOfMember(Conference conf, User member){
|
||||||
|
//TODO
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
public void assignArticleToPCMember(Article article,User pcMember){
|
public void assignArticleToPCMember(Article article,User pcMember){
|
||||||
article.assignToPCMember(pcMember);
|
article.assignToPCMember(pcMember);
|
||||||
em.flush();
|
em.flush();
|
||||||
|
|||||||
@@ -1,27 +1,42 @@
|
|||||||
package org.yacos.core.article;
|
package org.yacos.core.article;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.ejb.Remote;
|
import javax.ejb.Remote;
|
||||||
|
|
||||||
|
import org.yacos.core.conferences.Conference;
|
||||||
|
import org.yacos.core.users.User;
|
||||||
|
|
||||||
|
|
||||||
@Remote
|
@Remote
|
||||||
public interface IArticleManager {
|
public interface IArticleManager {
|
||||||
public Article getArticle(Integer id);
|
public Article getArticle(Integer id);
|
||||||
public Article addArticle(int reference, String title, String topic,String url_article,
|
public Article addArticle(String title, String topic,String url_article,
|
||||||
String mainAuthor, List<String> secondaryAuthor, int state);
|
User mainAuthor, List<String> secondaryAuthor, int state,Conference conference);
|
||||||
public void removeArticle(Article a);
|
public void removeArticle(Article a);
|
||||||
public void updateArticle(Article article);
|
public void updateArticle(Article article);
|
||||||
public List<Article> getArticles();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//liste d'articles
|
||||||
|
|
||||||
|
//public List<Article> getArticles();
|
||||||
|
public List<Article> getArticles(Conference conf);
|
||||||
|
public List<Article> getArticleOfAuthor(Conference conf, User Author);
|
||||||
|
public List<Article> getArticlesOfMember(Conference conf, User member);
|
||||||
|
|
||||||
|
//FIXME a d<>placer dans user??
|
||||||
public List<?> getArticlePCMembers(Article article);
|
public List<?> getArticlePCMembers(Article article);
|
||||||
public List<?> getArticleReferees(Article article);
|
public List<?> getArticleReferees(Article article);
|
||||||
|
|
||||||
|
|
||||||
public Preference getArticlePreferenceForUser(Integer article_id, String pcMemberLogin);
|
public Preference getArticlePreferenceForUser(Integer article_id, String pcMemberLogin);
|
||||||
public void setArticlePreferences(Article article, List<Preference> preferences);
|
public void setArticlePreferences(Article article, List<Preference> preferences);
|
||||||
public void addArticlePreference(Integer article_id, String userLogin, String preferenceValue);
|
public void addArticlePreference(Integer article_id, String userLogin, String preferenceValue);
|
||||||
public void addOrUpdatePreference(Integer article_id, String userLogin, String preferenceValue);
|
public void addOrUpdatePreference(Integer article_id, String userLogin, String preferenceValue);
|
||||||
|
|
||||||
|
//FIXME interet ?
|
||||||
public boolean existsArticle(Article article);
|
public boolean existsArticle(Article article);
|
||||||
public boolean existsPreference(Preference preference);
|
public boolean existsPreference(Preference preference);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user