> Author: jleroux
> Date: Mon Nov 14 22:33:21 2011
> New Revision: 1201944
>
> URL:
http://svn.apache.org/viewvc?rev=1201944&view=rev> Log:
> "Applied fix from trunk for revision: 1201941"
> ------------------------------------------------------------------------
> r1201941 | jleroux | 2011-11-14 23:31:28 +0100 (lun., 14 nov. 2011) | 3 lines
>
> A patch from Kiran Gawde
https://issues.apache.org/jira/browse/OFBIZ-4526 "ProductDetail page inStock check doesn't take into account Marketing Package"
>
> With
http://localhost:8080/ecommerce/gizmo-basket-GZ-BASKET-p, for testing, set requireInventory="Y" for store. You will see 'Out of stock' for marketing package without the fix.
> ------------------------------------------------------------------------
>
>
> Modified:
> ofbiz/branches/release10.04/ (props changed)
> ofbiz/branches/release10.04/applications/order/webapp/ordermgr/WEB-INF/actions/entry/catalog/ProductDetail.groovy
>
> Propchange: ofbiz/branches/release10.04/
> ------------------------------------------------------------------------------
> --- svn:mergeinfo (original)
> +++ svn:mergeinfo Mon Nov 14 22:33:21 2011
> @@ -1,3 +1,3 @@
> /ofbiz/branches/addbirt:831210-885099,885686-886087
> /ofbiz/branches/multitenant20100310:921280-927264
> -/ofbiz/trunk:939988,939990,939999,940025,940053,940234,940248,940309,940401,940410,940425,940779,940815,940849,940851,941007,941047,941109,941177,941199,941261,941440,941600,941999,942084,942406,942414,942671,942883-942884,943168,943271-943272,943843,944614,944621,944623,944647,944669,944797,944895,945010,945018,945026,945118,945573,945578,945580,945582,945610,945619,945848,945852,945857,946061,946066,946073,946075,946080,946309,946313,946320,946322,946596,947004-947005,947392,947424,947679,947988,948017,948694,949174,949710,949844,950866,950870,950893,951005,951062,951098,951251,951367,951381,951672,952232,952249,952270,953294,953671,954135,954583,954733,954956,955568,956022,956206,956340,957160,958343,958514,958521,958752,958758,958769,958953,959456,960143,960491,960997,963610,964558,965470,965916,966525,966785,967098,978806,978893,978939,979104,980641-980642,980935,981051,981104,981123,981288,983920,983930,985163,985298,985473,985718,985856,985902,987841,989166,990127,990
> 339,990539,991485,993344,993387,995384,995686,996069,996078-996079,996563,997418-997420,997423-997425,997431,997440,997526,997990,998061,998412,998557,1000621,1000725,1000998,1001099,1001131,1001185,1001574,1001849,1001962,1002963,1003434,1003450,1003829,1004139,1027756,1027960,1028053,1028625,1028627,1029600,1030016,1030385,1030390,1033928,1033953,1034138,1034179,1035080,1035084,1036426,1036669,1037507,1037559-1037560,1037567,1037883,1038228,1038990,1039256,1040044,1040091,1042009,1042034,1042038,1042132,1042188,1042222,1042317,1042348,1042396,1042411,1042950,1043861,1043996-1043998,1044047,1044084,1044912,1049031,1050602,1051111,1051450,1051812,1052195,1053285,1053289,1053722,1054565,1055057,1056072,1056305,1056803,1057519,1058028,1058056,1058488,1059180,1060236,1060261,1060368,1060933,1061167,1061307,1061346,1061886,1061939,1062138,1062144,1062152,1063273,1064090,1064953,1064993,1065550,1066048,1067097,1067942,1069597,1069965,1070193,1070229,1072017,1072378,1074624,107520
> 5,1075952,1076027,1076115,1080218,1080959,1083144,1084572,1084671,1084689,1084855,1085697,1085774,1090952,1090961,1090964,1092479,1094007,1094126,1096441,1098063,1104423,1131144,1132589,1132749,1134649,1134990,1135199,1135686,1137201,1137435,1139346,1139385,1139504,1140358,1140362,1140375,1140469,1144537,1144791,1153073,1153768,1158126,1159080,1163036,1163093,1165130,1166591,1167116,1167314,1167480,1167501,1167510,1167517,1167606,1170469,1172213,1172243,1174964,1175130,1175135,1175143,1177128,1181878,1182259,1183651,1184996,1184999,1185179,1187515,1187528,1187933,1187944,1188042,1188564,1196778,1199450,1200207,1201125
> +/ofbiz/trunk:939988,939990,939999,940025,940053,940234,940248,940309,940401,940410,940425,940779,940815,940849,940851,941007,941047,941109,941177,941199,941261,941440,941600,941999,942084,942406,942414,942671,942883-942884,943168,943271-943272,943843,944614,944621,944623,944647,944669,944797,944895,945010,945018,945026,945118,945573,945578,945580,945582,945610,945619,945848,945852,945857,946061,946066,946073,946075,946080,946309,946313,946320,946322,946596,947004-947005,947392,947424,947679,947988,948017,948694,949174,949710,949844,950866,950870,950893,951005,951062,951098,951251,951367,951381,951672,952232,952249,952270,953294,953671,954135,954583,954733,954956,955568,956022,956206,956340,957160,958343,958514,958521,958752,958758,958769,958953,959456,960143,960491,960997,963610,964558,965470,965916,966525,966785,967098,978806,978893,978939,979104,980641-980642,980935,981051,981104,981123,981288,983920,983930,985163,985298,985473,985718,985856,985902,987841,989166,990127,990
> 339,990539,991485,993344,993387,995384,995686,996069,996078-996079,996563,997418-997420,997423-997425,997431,997440,997526,997990,998061,998412,998557,1000621,1000725,1000998,1001099,1001131,1001185,1001574,1001849,1001962,1002963,1003434,1003450,1003829,1004139,1027756,1027960,1028053,1028625,1028627,1029600,1030016,1030385,1030390,1033928,1033953,1034138,1034179,1035080,1035084,1036426,1036669,1037507,1037559-1037560,1037567,1037883,1038228,1038990,1039256,1040044,1040091,1042009,1042034,1042038,1042132,1042188,1042222,1042317,1042348,1042396,1042411,1042950,1043861,1043996-1043998,1044047,1044084,1044912,1049031,1050602,1051111,1051450,1051812,1052195,1053285,1053289,1053722,1054565,1055057,1056072,1056305,1056803,1057519,1058028,1058056,1058488,1059180,1060236,1060261,1060368,1060933,1061167,1061307,1061346,1061886,1061939,1062138,1062144,1062152,1063273,1064090,1064953,1064993,1065550,1066048,1067097,1067942,1069597,1069965,1070193,1070229,1072017,1072378,1074624,107520
> 5,1075952,1076027,1076115,1080218,1080959,1083144,1084572,1084671,1084689,1084855,1085697,1085774,1090952,1090961,1090964,1092479,1094007,1094126,1096441,1098063,1104423,1131144,1132589,1132749,1134649,1134990,1135199,1135686,1137201,1137435,1139346,1139385,1139504,1140358,1140362,1140375,1140469,1144537,1144791,1153073,1153768,1158126,1159080,1163036,1163093,1165130,1166591,1167116,1167314,1167480,1167501,1167510,1167517,1167606,1170469,1172213,1172243,1174964,1175130,1175135,1175143,1177128,1181878,1182259,1183651,1184996,1184999,1185179,1187515,1187528,1187933,1187944,1188042,1188564,1196778,1199450,1200207,1201125,1201941
>
> Modified: ofbiz/branches/release10.04/applications/order/webapp/ordermgr/WEB-INF/actions/entry/catalog/ProductDetail.groovy
> URL:
http://svn.apache.org/viewvc/ofbiz/branches/release10.04/applications/order/webapp/ordermgr/WEB-INF/actions/entry/catalog/ProductDetail.groovy?rev=1201944&r1=1201943&r2=1201944&view=diff> ==============================================================================
> --- ofbiz/branches/release10.04/applications/order/webapp/ordermgr/WEB-INF/actions/entry/catalog/ProductDetail.groovy (original)
> +++ ofbiz/branches/release10.04/applications/order/webapp/ordermgr/WEB-INF/actions/entry/catalog/ProductDetail.groovy Mon Nov 14 22:33:21 2011
> @@ -91,6 +91,10 @@ if (product) {
> productId = product.productId;
> context.product_id = productId;
> productTypeId = product.productTypeId;
> +
> + boolean isMarketingPackage = EntityTypeUtil.hasParentType(delegator, "ProductType", "productTypeId", product.productTypeId, "parentTypeId", "MARKETING_PKG");
> + context.isMarketingPackage = (isMarketingPackage? "true": "false");
> +
> featureTypes = [:];
> featureOrder = [];
>
> @@ -434,14 +438,21 @@ if (product) {
> context.minimumQuantity= ShoppingCart.getMinimumOrderQuantity(delegator, priceMap.price, productId);
> }
>
> - //get last inventory count from product facility for the product
> - facilities = delegator.findList("ProductFacility", EntityCondition.makeCondition([productId : product.productId]), null, null, null, false);
> availableInventory = 0.0;
> - if(facilities) {
> - facilities.each { facility ->
> - lastInventoryCount = facility.lastInventoryCount;
> - if (lastInventoryCount != null&& availableInventory.compareTo(lastInventoryCount) != 0) {
> - availableInventory += lastInventoryCount;
> +
> + // if the product is a MARKETING_PKG_AUTO/PICK, then also get the quantity which can be produced from components
> + if (isMarketingPackage) {
> + resultOutput = dispatcher.runSync("getMktgPackagesAvailable", [productId : productId]);
> + availableInventory = resultOutput.availableToPromiseTotal;
> + } else {
> + //get last inventory count from product facility for the product
> + facilities = delegator.findList("ProductFacility", EntityCondition.makeCondition([productId : product.productId]), null, null, null, false)
> + if(facilities) {
> + facilities.each { facility ->
> + lastInventoryCount = facility.lastInventoryCount;
> + if (lastInventoryCount != null) {
> + availableInventory += lastInventoryCount;
> + }
> }
> }
> }
>
>