r302 - in trunk: magalie-services/src/main/java/com/franciaflex/magalie/services magalie-services/src/main/java/com/franciaflex/magalie/services/service magalie-services/src/test/java/com/franciaflex/magalie/services/service magalie-web/src/main/webapp/WEB-INF/content
Author: bleny Date: 2013-07-11 21:31:05 +0200 (Thu, 11 Jul 2013) New Revision: 302 Url: http://forge.codelutin.com/projects/franciaflex-magalie/repository/revisions... Log: in simple-withdraw-item-input show quantities and mention when no batchCode value, fix exception raised with simple withdraw item on an unavailable article Modified: trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/SimpleWithdrawItemTask.java trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemService.java trunk/magalie-services/src/test/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemServiceTest.java trunk/magalie-web/src/main/webapp/WEB-INF/content/simple-withdraw-item-input.jsp Modified: trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/SimpleWithdrawItemTask.java =================================================================== --- trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/SimpleWithdrawItemTask.java 2013-07-11 18:41:26 UTC (rev 301) +++ trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/SimpleWithdrawItemTask.java 2013-07-11 19:31:05 UTC (rev 302) @@ -48,12 +48,16 @@ } public boolean isDriverLicenseRequired() { - Preconditions.checkState( ! articleUnavailable); + if (driverLicenseRequired) { + Preconditions.checkState( ! articleUnavailable); + } return driverLicenseRequired; } public boolean isArticleUnavailable() { - Preconditions.checkState( ! driverLicenseRequired); + if (articleUnavailable) { + Preconditions.checkState( ! driverLicenseRequired); + } return articleUnavailable; } } Modified: trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemService.java =================================================================== --- trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemService.java 2013-07-11 18:41:26 UTC (rev 301) +++ trunk/magalie-services/src/main/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemService.java 2013-07-11 19:31:05 UTC (rev 302) @@ -81,17 +81,31 @@ Predicate<StoredArticle> articleStoredInAccessibleLocationPredicate = StoredArticles.articleStoredInAccessibleLocationPredicate(magalieUser); - boolean articleIsAccessible = - Iterables.any( - storedArticles, - articleStoredInAccessibleLocationPredicate); - boolean articleUnavailable = Iterables.isEmpty(storedArticles); + boolean articleAvailable = ! articleUnavailable; + + boolean driverLicenseRequired; + + if (articleAvailable) { + + boolean articleIsAccessible = + Iterables.any( + storedArticles, + articleStoredInAccessibleLocationPredicate); + + driverLicenseRequired = ! articleIsAccessible; + + } else { + + driverLicenseRequired = false; + + } + storedArticles = Iterables.filter(storedArticles, articleStoredInAccessibleLocationPredicate); SimpleWithdrawItemTask simpleWithdrawItemTask = - new SimpleWithdrawItemTask(storedArticles, ! articleIsAccessible, articleUnavailable); + new SimpleWithdrawItemTask(storedArticles, driverLicenseRequired, articleUnavailable); return simpleWithdrawItemTask; Modified: trunk/magalie-services/src/test/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemServiceTest.java =================================================================== --- trunk/magalie-services/src/test/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemServiceTest.java 2013-07-11 18:41:26 UTC (rev 301) +++ trunk/magalie-services/src/test/java/com/franciaflex/magalie/services/service/SimpleWithdrawItemServiceTest.java 2013-07-11 19:31:05 UTC (rev 302) @@ -92,6 +92,20 @@ } @Test + public void testSimpleWithdrawOnUnavailableArticle() throws InvalidMagalieBarcodeException, IllegalWithdrawException { + + Article article = fixture("article4"); + + SimpleWithdrawItemTask simpleWithdrawItemTask = + service.getSimpleWithdrawItemTask(building, magalieUser, article.getCode()); + + Assert.assertTrue(simpleWithdrawItemTask.isArticleUnavailable()); + + Assert.assertFalse(simpleWithdrawItemTask.isDriverLicenseRequired()); + + } + + @Test public void testSimpleWithdrawWithoutDriverLicense() throws InvalidMagalieBarcodeException, IllegalWithdrawException { magalieUser = fixture("corinne"); Modified: trunk/magalie-web/src/main/webapp/WEB-INF/content/simple-withdraw-item-input.jsp =================================================================== --- trunk/magalie-web/src/main/webapp/WEB-INF/content/simple-withdraw-item-input.jsp 2013-07-11 18:41:26 UTC (rev 301) +++ trunk/magalie-web/src/main/webapp/WEB-INF/content/simple-withdraw-item-input.jsp 2013-07-11 19:31:05 UTC (rev 302) @@ -39,10 +39,16 @@ <li> <s:property value="location.barcode" /> + Qté + <s:property value="quantity" /> + <s:property value="article.unit" /> - <s:if test="batchCode != null"> + <s:if test="batchCode == null"> + (aucun lot) + </s:if> + <s:else> (<s:property value="batchCode" />) - </s:if> + </s:else> </li>
participants (1)
-
bleny@users.forge.codelutin.com