Ajout d'une méthode pour avoir la conférence à laquelle appartient un article
This commit is contained in:
@@ -33,12 +33,12 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
|
|
||||||
@PersistenceContext
|
@PersistenceContext
|
||||||
private EntityManager em;
|
private EntityManager em;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private UserTransaction ut;
|
private UserTransaction ut;
|
||||||
|
|
||||||
public ArticleManagerBean() {
|
public ArticleManagerBean() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Article addArticle(String title, String topic, String abstractText, String url_article,
|
public Article addArticle(String title, String topic, String abstractText, String url_article,
|
||||||
@@ -59,9 +59,9 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
a.setConference(conference);
|
a.setConference(conference);
|
||||||
em.persist(a);
|
em.persist(a);
|
||||||
ut.commit();
|
ut.commit();
|
||||||
|
|
||||||
addRoleForConference(mainAuthorLogin,RoleType.AUTHOR,conferenceId);
|
addRoleForConference(mainAuthorLogin,RoleType.AUTHOR,conferenceId);
|
||||||
|
|
||||||
return a;
|
return a;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
try {
|
try {
|
||||||
@@ -111,7 +111,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Integer countArticle(Integer confId) {
|
public Integer countArticle(Integer confId) {
|
||||||
Query query = em.createQuery("from Article WHERE conference = ?");
|
Query query = em.createQuery("from Article WHERE conference = ?");
|
||||||
Conference conf = em.find(Conference.class, confId);
|
Conference conf = em.find(Conference.class, confId);
|
||||||
@@ -122,7 +122,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
public Article getArticle(Integer articleId) {
|
public Article getArticle(Integer articleId) {
|
||||||
return em.find(Article.class, articleId);
|
return em.find(Article.class, articleId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public List<Article> getArticles(Integer confId) throws ConferenceDoesntExistException {
|
public List<Article> getArticles(Integer confId) throws ConferenceDoesntExistException {
|
||||||
if(confId == null){
|
if(confId == null){
|
||||||
@@ -132,7 +132,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
if(conf == null){
|
if(conf == null){
|
||||||
throw new ConferenceDoesntExistException(confId);
|
throw new ConferenceDoesntExistException(confId);
|
||||||
}
|
}
|
||||||
|
|
||||||
Query query = em.createQuery("from Article a WHERE a.conference = ? ORDER BY a.title");
|
Query query = em.createQuery("from Article a WHERE a.conference = ? ORDER BY a.title");
|
||||||
query.setParameter(1, conf);
|
query.setParameter(1, conf);
|
||||||
return query.getResultList();
|
return query.getResultList();
|
||||||
@@ -145,7 +145,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
query.setParameter(1, author);
|
query.setParameter(1, author);
|
||||||
return query.getResultList();
|
return query.getResultList();
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public List<Article> getArticleOfAuthor(Integer confId, String authorId) {
|
public List<Article> getArticleOfAuthor(Integer confId, String authorId) {
|
||||||
Conference conf = em.find(Conference.class, confId);
|
Conference conf = em.find(Conference.class, confId);
|
||||||
@@ -155,7 +155,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
query.setParameter(2, author);
|
query.setParameter(2, author);
|
||||||
return query.getResultList();
|
return query.getResultList();
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public List<Article> getArticlesOfMember(Integer confId, String memberId){
|
public List<Article> getArticlesOfMember(Integer confId, String memberId){
|
||||||
Conference conf = em.find(Conference.class, confId);
|
Conference conf = em.find(Conference.class, confId);
|
||||||
@@ -165,7 +165,26 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
query.setParameter(2, member);
|
query.setParameter(2, member);
|
||||||
return query.getResultList();
|
return query.getResultList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Conference getConferenceForArticle(Integer articleId) {
|
||||||
|
//try {
|
||||||
|
//ut.begin();
|
||||||
|
Article article = em.find(Article.class, articleId);
|
||||||
|
Conference conf = article.getConference();
|
||||||
|
//ut.commit();
|
||||||
|
return conf;
|
||||||
|
/*} catch (Exception e) {
|
||||||
|
try {
|
||||||
|
ut.rollback();
|
||||||
|
} catch (Exception e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
}
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return null;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void assignArticleToPCMember(Integer articleId,String memberId){
|
public void assignArticleToPCMember(Integer articleId,String memberId){
|
||||||
try{
|
try{
|
||||||
ut.begin();
|
ut.begin();
|
||||||
@@ -175,7 +194,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
article.getPcMembers().add(PCMember);
|
article.getPcMembers().add(PCMember);
|
||||||
}
|
}
|
||||||
ut.commit();
|
ut.commit();
|
||||||
|
|
||||||
this.updateArticle(article);
|
this.updateArticle(article);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
try {
|
try {
|
||||||
@@ -187,8 +206,8 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
}
|
}
|
||||||
//article.addPCMember(PCMember);
|
//article.addPCMember(PCMember);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void unassignArticleToPCMember(Integer articleId,String memberId){
|
public void unassignArticleToPCMember(Integer articleId,String memberId){
|
||||||
try{
|
try{
|
||||||
ut.begin();
|
ut.begin();
|
||||||
@@ -205,14 +224,14 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public List<User> getArticlePCMembers(Integer articleId) {
|
public List<User> getArticlePCMembers(Integer articleId) {
|
||||||
Article article = this.getArticle(articleId);
|
Article article = this.getArticle(articleId);
|
||||||
List<User> users = (List<User>)article.getPcMembers();
|
List<User> users = (List<User>)article.getPcMembers();
|
||||||
return users;
|
return users;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void delegateArticleToReferee(Integer articleId, String refereeId, String memberId){
|
public void delegateArticleToReferee(Integer articleId, String refereeId, String memberId){
|
||||||
try{
|
try{
|
||||||
ut.begin();
|
ut.begin();
|
||||||
@@ -241,10 +260,10 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
User PCMember = em.find(User.class, memberId);
|
User PCMember = em.find(User.class, memberId);
|
||||||
User referee = em.find(User.class, refereeId);
|
User referee = em.find(User.class, refereeId);
|
||||||
Query query = em.createQuery(
|
Query query = em.createQuery(
|
||||||
"delete from Delegation where article=:article and referee=:referee and pcMember=:pcMember")
|
"delete from Delegation where article=:article and referee=:referee and pcMember=:pcMember")
|
||||||
.setParameter("article", article)
|
.setParameter("article", article)
|
||||||
.setParameter("referee", referee)
|
.setParameter("referee", referee)
|
||||||
.setParameter("pcMember", PCMember);
|
.setParameter("pcMember", PCMember);
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
int affectedRows = query.executeUpdate();
|
int affectedRows = query.executeUpdate();
|
||||||
ut.commit();
|
ut.commit();
|
||||||
@@ -256,15 +275,15 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* gestion des preferences
|
* gestion des preferences
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
public Preference addPreference(Integer article_id, String userLogin,PreferenceType preferenceType){
|
public Preference addPreference(Integer article_id, String userLogin,PreferenceType preferenceType){
|
||||||
try{
|
try{
|
||||||
ut.begin();
|
ut.begin();
|
||||||
@@ -287,8 +306,8 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void removePreference(Integer article_id, String userLogin){
|
public void removePreference(Integer article_id, String userLogin){
|
||||||
try{
|
try{
|
||||||
ut.begin();
|
ut.begin();
|
||||||
@@ -304,7 +323,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updatePreference(Preference preference){
|
public void updatePreference(Preference preference){
|
||||||
try{
|
try{
|
||||||
ut.begin();
|
ut.begin();
|
||||||
@@ -313,13 +332,13 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
PreferencePK preferenceid = new PreferencePK();
|
PreferencePK preferenceid = new PreferencePK();
|
||||||
preferenceid.article = em.find(Article.class, articleId);
|
preferenceid.article = em.find(Article.class, articleId);
|
||||||
preferenceid.pcMember = em.find(User.class, login);
|
preferenceid.pcMember = em.find(User.class, login);
|
||||||
|
|
||||||
Preference preference2 = em.find(Preference.class, preferenceid);
|
Preference preference2 = em.find(Preference.class, preferenceid);
|
||||||
|
|
||||||
em.remove(preference2);
|
em.remove(preference2);
|
||||||
em.persist(preference);
|
em.persist(preference);
|
||||||
ut.commit();
|
ut.commit();
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
try{
|
try{
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
@@ -341,15 +360,15 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public List<Preference> getPreferencesForArticle(Integer article_id){
|
public List<Preference> getPreferencesForArticle(Integer article_id){
|
||||||
Query query = em.createQuery("from Preference p WHERE article_id = ?");
|
Query query = em.createQuery("from Preference p WHERE article_id = ?");
|
||||||
query.setParameter(1, article_id);
|
query.setParameter(1, article_id);
|
||||||
return query.getResultList();
|
return query.getResultList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public boolean existsArticle(Integer articleId) {
|
public boolean existsArticle(Integer articleId) {
|
||||||
return em.find(Article.class, articleId)!=null;
|
return em.find(Article.class, articleId)!=null;
|
||||||
}
|
}
|
||||||
@@ -357,11 +376,11 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
public boolean existsPreference(Preference preference) {
|
public boolean existsPreference(Preference preference) {
|
||||||
return em.find(Preference.class, preference.getId())!=null;
|
return em.find(Preference.class, preference.getId())!=null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasUserRoleForConference(String userLogin, RoleType roleType, Integer conferenceId){
|
public boolean hasUserRoleForConference(String userLogin, RoleType roleType, Integer conferenceId){
|
||||||
Conference conference = em.find(Conference.class, conferenceId);
|
Conference conference = em.find(Conference.class, conferenceId);
|
||||||
User user = em.find(User.class, userLogin);
|
User user = em.find(User.class, userLogin);
|
||||||
|
|
||||||
RolePK rolePK = new RolePK(user,roleType,conference);
|
RolePK rolePK = new RolePK(user,roleType,conference);
|
||||||
return em.find(Role.class, rolePK)!=null;
|
return em.find(Role.class, rolePK)!=null;
|
||||||
}
|
}
|
||||||
@@ -390,7 +409,7 @@ public class ArticleManagerBean implements IArticleManager, Serializable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public EntityManager getEntityManager() {
|
public EntityManager getEntityManager() {
|
||||||
return em;
|
return em;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import javax.ejb.Remote;
|
|||||||
|
|
||||||
import org.yacos.core.article.Article.State;
|
import org.yacos.core.article.Article.State;
|
||||||
import org.yacos.core.article.Preference.PreferenceType;
|
import org.yacos.core.article.Preference.PreferenceType;
|
||||||
|
import org.yacos.core.conferences.Conference;
|
||||||
import org.yacos.core.exceptions.ConferenceDoesntExistException;
|
import org.yacos.core.exceptions.ConferenceDoesntExistException;
|
||||||
|
|
||||||
|
|
||||||
@@ -35,6 +36,11 @@ public interface IArticleManager {
|
|||||||
public List<Article> getArticlesOfMember(Integer confId, String memberId);
|
public List<Article> getArticlesOfMember(Integer confId, String memberId);
|
||||||
//public List<Article> getAllArticles();
|
//public List<Article> getAllArticles();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* return the conference which own the article
|
||||||
|
*/
|
||||||
|
public Conference getConferenceForArticle(Integer articleId);
|
||||||
|
|
||||||
|
|
||||||
//gestion des preferences
|
//gestion des preferences
|
||||||
public Preference addPreference(Integer articleId, String userLogin, PreferenceType preferenceType);
|
public Preference addPreference(Integer articleId, String userLogin, PreferenceType preferenceType);
|
||||||
|
|||||||
Reference in New Issue
Block a user