r45 - in trunk: magalie-persistence/src/main/java/com/franciaflex/magalie/persistence magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/entity magalie-services/src/test/resources
Author: bleny Date: 2013-03-27 11:18:04 +0100 (Wed, 27 Mar 2013) New Revision: 45 Url: http://forge.codelutin.com/projects/franciaflex-magalie/repository/revisions... Log: support multiple fixed sites for article Modified: trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/StoredArticles.java trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/entity/Article.java trunk/magalie-services/src/test/resources/fixtures.yaml Modified: trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/StoredArticles.java =================================================================== --- trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/StoredArticles.java 2013-03-26 16:39:09 UTC (rev 44) +++ trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/StoredArticles.java 2013-03-27 10:18:04 UTC (rev 45) @@ -11,6 +11,7 @@ import java.util.Collection; import java.util.Comparator; +import java.util.Set; public class StoredArticles { @@ -23,10 +24,13 @@ } @Override - public int compare(StoredArticle o1, StoredArticle o2) { - if (o1.getSite().equals(article.getFixedSite())) { + public int compare(StoredArticle storedArticle1, StoredArticle storedArticle2) { + Set<Site> fixedSites = article.getFixedSites(); + boolean storedArticle1isInFixedSite = fixedSites.contains(storedArticle1.getSite()); + boolean storedArticle2isInFixedSite = fixedSites.contains(storedArticle2.getSite()); + if (storedArticle1isInFixedSite && ! storedArticle2isInFixedSite) { return -1; - } else if (o2.getSite().equals(article.getFixedSite())) { + } else if ( ! storedArticle1isInFixedSite && storedArticle2isInFixedSite) { return +1; } return 0; Modified: trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/entity/Article.java =================================================================== --- trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/entity/Article.java 2013-03-26 16:39:09 UTC (rev 44) +++ trunk/magalie-persistence/src/main/java/com/franciaflex/magalie/persistence/entity/Article.java 2013-03-27 10:18:04 UTC (rev 45) @@ -2,7 +2,8 @@ import javax.persistence.Entity; import javax.persistence.Id; -import javax.persistence.ManyToOne; +import javax.persistence.ManyToMany; +import java.util.Set; @Entity public class Article extends AbstractEntity { @@ -10,8 +11,8 @@ @Id protected String id; - @ManyToOne - protected Site fixedSite; + @ManyToMany + protected Set<Site> fixedSites; protected String description; @@ -30,12 +31,12 @@ this.id = id; } - public Site getFixedSite() { - return fixedSite; + public Set<Site> getFixedSites() { + return fixedSites; } - public void setFixedSite(Site fixedSite) { - this.fixedSite = fixedSite; + public void setFixedSites(Set<Site> fixedSites) { + this.fixedSites = fixedSites; } public String getCode() { Modified: trunk/magalie-services/src/test/resources/fixtures.yaml =================================================================== --- trunk/magalie-services/src/test/resources/fixtures.yaml 2013-03-26 16:39:09 UTC (rev 44) +++ trunk/magalie-services/src/test/resources/fixtures.yaml 2013-03-27 10:18:04 UTC (rev 45) @@ -77,7 +77,8 @@ article1: &article1 !article id: article1 - fixedSite: *site1 + fixedSites: + - *site1 code: 111111111 quantityInKanban: 10 unit: kg @@ -94,7 +95,8 @@ article3: &article3 !article id: article3 - fixedSite: *site2 + fixedSites: + - *site2 code: 333333333 quantityInKanban: 50 unit: g
participants (1)
-
bleny@users.forge.codelutin.com