gilPts commented on code in PR #517: URL: https://github.com/apache/ofbiz-framework/pull/517#discussion_r1158197368
########## applications/product/groovyScripts/facility/facility/CountFacilityInventoryByProduct.groovy: ########## @@ -55,165 +57,168 @@ rows = [] as ArrayList if (action) { // ------------------------------ prodView = new DynamicViewEntity() - atpDiffComplexAlias = new ComplexAlias("-") + atpDiffComplexAlias = new ComplexAlias('-') - conditionMap = [facilityId : facilityId] + conditionMap = [facilityId: facilityId] if (offsetQOHQty) { try { offsetQOH = Integer.parseInt(offsetQOHQty) hasOffsetQOH = true - searchParameterString = searchParameterString + "&offsetQOHQty=" + offsetQOH + searchParameterString = searchParameterString + '&offsetQOHQty=' + offsetQOH } catch (NumberFormatException nfe) { - logError(nfe, "Caught an exception : " + nfe.toString()) - request.setAttribute("_ERROR_MESSAGE", "An entered value seems non-numeric") + logError(nfe, 'Caught an exception : ' + nfe) + request.setAttribute('_ERROR_MESSAGE', 'An entered value seems non-numeric') } } if (offsetATPQty) { try { offsetATP = Integer.parseInt(offsetATPQty) hasOffsetATP = true - searchParameterString = searchParameterString + "&offsetATPQty=" + offsetATP + searchParameterString = searchParameterString + '&offsetATPQty=' + offsetATP } catch (NumberFormatException nfe) { - logError(nfe, "Caught an exception : " + nfe.toString()) - request.setAttribute("_ERROR_MESSAGE", "An entered value seems non-numeric") + logError(nfe, 'Caught an exception : ' + nfe) + request.setAttribute('_ERROR_MESSAGE', 'An entered value seems non-numeric') } } - prodView.addMemberEntity("PRFA", "ProductFacility") - prodView.addAlias("PRFA", "productId", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "minimumStock", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "reorderQuantity", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "daysToShip", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "facilityId", null, null, null, Boolean.TRUE, null) - - prodView.addMemberEntity("PROD", "Product") - prodView.addViewLink("PROD", "PRFA", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")) - prodView.addAlias("PROD", "internalName", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PROD", "isVirtual", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PROD", "salesDiscontinuationDate", null, null, null, Boolean.TRUE, null) + prodView.with { + addMemberEntity('PRFA', 'ProductFacility') + addAlias('PRFA', 'productId', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'minimumStock', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'reorderQuantity', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'daysToShip', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'facilityId', null, null, null, Boolean.TRUE, null) + + addMemberEntity('PROD', 'Product') + addViewLink('PROD', 'PRFA', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId')) + addAlias('PROD', 'internalName', null, null, null, Boolean.TRUE, null) + addAlias('PROD', 'isVirtual', null, null, null, Boolean.TRUE, null) + addAlias('PROD', 'salesDiscontinuationDate', null, null, null, Boolean.TRUE, null) + } if (productTypeId) { - prodView.addAlias("PROD", "productTypeId", null, null, null, Boolean.TRUE, null) + prodView.addAlias('PROD', 'productTypeId', null, null, null, Boolean.TRUE, null) conditionMap.productTypeId = productTypeId - searchParameterString = searchParameterString + "&productTypeId=" + productTypeId + searchParameterString = searchParameterString + '&productTypeId=' + productTypeId } - prodView.addMemberEntity("IITE", "InventoryItem") - prodView.addViewLink("PRFA", "IITE", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId", "productId", "facilityId", "facilityId")) - prodView.addAlias("IITE", "totalQuantityOnHandTotal", "quantityOnHandTotal", null, null, null, "sum") - prodView.addAlias("IITE", "totalAvailableToPromiseTotal", "availableToPromiseTotal", null, null, null, "sum") - qohDiffComplexAlias = new ComplexAlias("-") - qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("IITE", "quantityOnHandTotal", null, "sum")) - qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("PRFA", "minimumStock", null, null)) - prodView.addAlias(null, "offsetQOHQtyAvailable", null, null, null, null, null, qohDiffComplexAlias) - atpDiffComplexAlias = new ComplexAlias("-") - atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("IITE", "availableToPromiseTotal", null, "sum")) - atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("PRFA", "minimumStock", null, null)) - prodView.addAlias(null, "offsetATPQtyAvailable", null, null, null, null, null, atpDiffComplexAlias) + prodView.addMemberEntity('IITE', 'InventoryItem') + prodView.addViewLink('PRFA', 'IITE', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId', 'productId', 'facilityId', 'facilityId')) + prodView.addAlias('IITE', 'totalQuantityOnHandTotal', 'quantityOnHandTotal', null, null, null, 'sum') + prodView.addAlias('IITE', 'totalAvailableToPromiseTotal', 'availableToPromiseTotal', null, null, null, 'sum') + qohDiffComplexAlias = new ComplexAlias('-') + qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('IITE', 'quantityOnHandTotal', null, 'sum')) + qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('PRFA', 'minimumStock', null, null)) + prodView.addAlias(null, 'offsetQOHQtyAvailable', null, null, null, null, null, qohDiffComplexAlias) + atpDiffComplexAlias = new ComplexAlias('-') + atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('IITE', 'availableToPromiseTotal', null, 'sum')) + atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('PRFA', 'minimumStock', null, null)) + prodView.addAlias(null, 'offsetATPQtyAvailable', null, null, null, null, null, atpDiffComplexAlias) if (searchInProductCategoryId) { - prodView.addMemberEntity("PRCA", "ProductCategoryMember") - prodView.addViewLink("PRFA", "PRCA", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")) - prodView.addAlias("PRCA", "productCategoryId", null, null, null, Boolean.TRUE, null) + prodView.addMemberEntity('PRCA', 'ProductCategoryMember') + prodView.addViewLink('PRFA', 'PRCA', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId')) + prodView.addAlias('PRCA', 'productCategoryId', null, null, null, Boolean.TRUE, null) conditionMap.productCategoryId = searchInProductCategoryId - searchParameterString = searchParameterString + "&searchInProductCategoryId=" + searchInProductCategoryId + searchParameterString = searchParameterString + '&searchInProductCategoryId=' + searchInProductCategoryId } if (productSupplierId) { - prodView.addMemberEntity("SPPR", "SupplierProduct") - prodView.addViewLink("PRFA", "SPPR", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")) - prodView.addAlias("SPPR", "partyId", null, null, null, Boolean.TRUE, null) + prodView.addMemberEntity('SPPR', 'SupplierProduct') + prodView.addViewLink('PRFA', 'SPPR', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId')) + prodView.addAlias('SPPR', 'partyId', null, null, null, Boolean.TRUE, null) conditionMap.partyId = productSupplierId - searchParameterString = searchParameterString + "&productSupplierId=" + productSupplierId + searchParameterString = searchParameterString + '&productSupplierId=' + productSupplierId } // set distinct on so we only get one row per product searchCondition = EntityCondition.makeCondition(conditionMap, EntityOperator.AND) - notVirtualCondition = EntityCondition.makeCondition(EntityCondition.makeCondition("isVirtual", EntityOperator.EQUALS, null), + notVirtualCondition = EntityCondition.makeCondition(EntityCondition.makeCondition('isVirtual', EntityOperator.EQUALS, null), EntityOperator.OR, - EntityCondition.makeCondition("isVirtual", EntityOperator.NOT_EQUAL, "Y")) + EntityCondition.makeCondition('isVirtual', EntityOperator.NOT_EQUAL, 'Y')) whereConditionsList = [searchCondition, notVirtualCondition] // add the discontinuation date condition if (productsSoldThruTimestamp) { discontinuationDateCondition = EntityCondition.makeCondition( [ - EntityCondition.makeCondition("salesDiscontinuationDate", EntityOperator.EQUALS, null), - EntityCondition.makeCondition("salesDiscontinuationDate", EntityOperator.GREATER_THAN,productsSoldThruTimestamp) + EntityCondition.makeCondition('salesDiscontinuationDate', EntityOperator.EQUALS, null), + EntityCondition.makeCondition('salesDiscontinuationDate', EntityOperator.GREATER_THAN, productsSoldThruTimestamp) ], EntityOperator.OR) whereConditionsList.add(discontinuationDateCondition) - searchParameterString = searchParameterString + "&productsSoldThruTimestamp=" + productsSoldThruTimestamp + searchParameterString = searchParameterString + '&productsSoldThruTimestamp=' + productsSoldThruTimestamp } // add search on internal name if (internalName) { - whereConditionsList.add(EntityCondition.makeCondition("internalName", EntityOperator.LIKE, "%" + internalName + "%")) - searchParameterString = searchParameterString + "&internalName=" + internalName + whereConditionsList.add(EntityCondition.makeCondition('internalName', EntityOperator.LIKE, '%' + internalName + '%')) + searchParameterString = searchParameterString + '&internalName=' + internalName } // add search on productId if (productId) { - whereConditionsList.add(EntityCondition.makeCondition("productId", EntityOperator.LIKE, productId + "%")) - searchParameterString = searchParameterString + "&productId=" + productId + whereConditionsList.add(EntityCondition.makeCondition('productId', EntityOperator.LIKE, productId + '%')) + searchParameterString = searchParameterString + '&productId=' + productId } orderBy = [] if (hasOffsetATP) { - orderBy.add("offsetATPQtyAvailable") + orderBy.add('offsetATPQtyAvailable') } if (hasOffsetQOH) { - orderBy.add("offsetQOHQtyAvailable") + orderBy.add('offsetQOHQtyAvailable') } - orderBy.add("productId") + orderBy.add('productId') // If the user has specified a number of months over which to sum usage quantities, define the correct timestamp checkTime = null - monthsInPastLimitStr = request.getParameter("monthsInPastLimit") + monthsInPastLimitStr = request.getParameter('monthsInPastLimit') if (monthsInPastLimitStr) { try { monthsInPastLimit = Integer.parseInt(monthsInPastLimitStr) cal = UtilDateTime.toCalendar(null) cal.add(Calendar.MONTH, 0 - monthsInPastLimit) checkTime = UtilDateTime.toTimestamp(cal.getTime()) - searchParameterString += "&monthsInPastLimit=" + monthsInPastLimitStr + searchParameterString += '&monthsInPastLimit=' + monthsInPastLimitStr } catch (Exception e) { - logError(e, "Caught an exception : " + e.toString()) - request.setAttribute("_ERROR_MESSAGE", "An exception occured please check the log") + logError(e, 'Caught an exception : ' + e) + request.setAttribute('_ERROR_MESSAGE', 'An exception occured please check the log') } } if (checkTime) { - // Construct a dynamic view entity to search against for sales usage quantities - salesUsageViewEntity = new DynamicViewEntity() - salesUsageViewEntity.addMemberEntity("OI", "OrderItem") - salesUsageViewEntity.addMemberEntity("OH", "OrderHeader") - salesUsageViewEntity.addMemberEntity("ItIss", "ItemIssuance") - salesUsageViewEntity.addMemberEntity("InvIt", "InventoryItem") - salesUsageViewEntity.addViewLink("OI", "OH", false, ModelKeyMap.makeKeyMapList("orderId")) - salesUsageViewEntity.addViewLink("OI", "ItIss", false, ModelKeyMap.makeKeyMapList("orderId", "orderId", "orderItemSeqId", "orderItemSeqId")) - salesUsageViewEntity.addViewLink("ItIss", "InvIt", false, ModelKeyMap.makeKeyMapList("inventoryItemId")) - salesUsageViewEntity.addAlias("OI", "productId") - salesUsageViewEntity.addAlias("OH", "statusId") - salesUsageViewEntity.addAlias("OH", "orderTypeId") - salesUsageViewEntity.addAlias("OH", "orderDate") - salesUsageViewEntity.addAlias("ItIss", "inventoryItemId") - salesUsageViewEntity.addAlias("ItIss", "quantity") - salesUsageViewEntity.addAlias("InvIt", "facilityId") + salesUsageViewEntity = new DynamicViewEntity().with { + addMemberEntity('OI', 'OrderItem') + addMemberEntity('OH', 'OrderHeader') + addMemberEntity('ItIss', 'ItemIssuance') + addMemberEntity('InvIt', 'InventoryItem') + addViewLink('OI', 'OH', false, ModelKeyMap.makeKeyMapList('orderId')) + addViewLink('OI', 'ItIss', false, ModelKeyMap.makeKeyMapList('orderId', 'orderId', 'orderItemSeqId', 'orderItemSeqId')) + addViewLink('ItIss', 'InvIt', false, ModelKeyMap.makeKeyMapList('inventoryItemId')) + addAlias('OI', 'productId') + addAlias('OH', 'statusId') + addAlias('OH', 'orderTypeId') + addAlias('OH', 'orderDate') + addAlias('ItIss', 'inventoryItemId') + addAlias('ItIss', 'quantity') + addAlias('InvIt', 'facilityId') + } Review Comment: Done Thanks ! ########## applications/product/groovyScripts/facility/facility/CountFacilityInventoryByProduct.groovy: ########## @@ -55,165 +57,168 @@ rows = [] as ArrayList if (action) { // ------------------------------ prodView = new DynamicViewEntity() - atpDiffComplexAlias = new ComplexAlias("-") + atpDiffComplexAlias = new ComplexAlias('-') - conditionMap = [facilityId : facilityId] + conditionMap = [facilityId: facilityId] if (offsetQOHQty) { try { offsetQOH = Integer.parseInt(offsetQOHQty) hasOffsetQOH = true - searchParameterString = searchParameterString + "&offsetQOHQty=" + offsetQOH + searchParameterString = searchParameterString + '&offsetQOHQty=' + offsetQOH } catch (NumberFormatException nfe) { - logError(nfe, "Caught an exception : " + nfe.toString()) - request.setAttribute("_ERROR_MESSAGE", "An entered value seems non-numeric") + logError(nfe, 'Caught an exception : ' + nfe) + request.setAttribute('_ERROR_MESSAGE', 'An entered value seems non-numeric') } } if (offsetATPQty) { try { offsetATP = Integer.parseInt(offsetATPQty) hasOffsetATP = true - searchParameterString = searchParameterString + "&offsetATPQty=" + offsetATP + searchParameterString = searchParameterString + '&offsetATPQty=' + offsetATP } catch (NumberFormatException nfe) { - logError(nfe, "Caught an exception : " + nfe.toString()) - request.setAttribute("_ERROR_MESSAGE", "An entered value seems non-numeric") + logError(nfe, 'Caught an exception : ' + nfe) + request.setAttribute('_ERROR_MESSAGE', 'An entered value seems non-numeric') } } - prodView.addMemberEntity("PRFA", "ProductFacility") - prodView.addAlias("PRFA", "productId", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "minimumStock", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "reorderQuantity", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "daysToShip", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PRFA", "facilityId", null, null, null, Boolean.TRUE, null) - - prodView.addMemberEntity("PROD", "Product") - prodView.addViewLink("PROD", "PRFA", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")) - prodView.addAlias("PROD", "internalName", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PROD", "isVirtual", null, null, null, Boolean.TRUE, null) - prodView.addAlias("PROD", "salesDiscontinuationDate", null, null, null, Boolean.TRUE, null) + prodView.with { + addMemberEntity('PRFA', 'ProductFacility') + addAlias('PRFA', 'productId', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'minimumStock', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'reorderQuantity', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'daysToShip', null, null, null, Boolean.TRUE, null) + addAlias('PRFA', 'facilityId', null, null, null, Boolean.TRUE, null) + + addMemberEntity('PROD', 'Product') + addViewLink('PROD', 'PRFA', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId')) + addAlias('PROD', 'internalName', null, null, null, Boolean.TRUE, null) + addAlias('PROD', 'isVirtual', null, null, null, Boolean.TRUE, null) + addAlias('PROD', 'salesDiscontinuationDate', null, null, null, Boolean.TRUE, null) + } if (productTypeId) { - prodView.addAlias("PROD", "productTypeId", null, null, null, Boolean.TRUE, null) + prodView.addAlias('PROD', 'productTypeId', null, null, null, Boolean.TRUE, null) conditionMap.productTypeId = productTypeId - searchParameterString = searchParameterString + "&productTypeId=" + productTypeId + searchParameterString = searchParameterString + '&productTypeId=' + productTypeId } - prodView.addMemberEntity("IITE", "InventoryItem") - prodView.addViewLink("PRFA", "IITE", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId", "productId", "facilityId", "facilityId")) - prodView.addAlias("IITE", "totalQuantityOnHandTotal", "quantityOnHandTotal", null, null, null, "sum") - prodView.addAlias("IITE", "totalAvailableToPromiseTotal", "availableToPromiseTotal", null, null, null, "sum") - qohDiffComplexAlias = new ComplexAlias("-") - qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("IITE", "quantityOnHandTotal", null, "sum")) - qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("PRFA", "minimumStock", null, null)) - prodView.addAlias(null, "offsetQOHQtyAvailable", null, null, null, null, null, qohDiffComplexAlias) - atpDiffComplexAlias = new ComplexAlias("-") - atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("IITE", "availableToPromiseTotal", null, "sum")) - atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField("PRFA", "minimumStock", null, null)) - prodView.addAlias(null, "offsetATPQtyAvailable", null, null, null, null, null, atpDiffComplexAlias) + prodView.addMemberEntity('IITE', 'InventoryItem') + prodView.addViewLink('PRFA', 'IITE', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId', 'productId', 'facilityId', 'facilityId')) + prodView.addAlias('IITE', 'totalQuantityOnHandTotal', 'quantityOnHandTotal', null, null, null, 'sum') + prodView.addAlias('IITE', 'totalAvailableToPromiseTotal', 'availableToPromiseTotal', null, null, null, 'sum') + qohDiffComplexAlias = new ComplexAlias('-') + qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('IITE', 'quantityOnHandTotal', null, 'sum')) + qohDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('PRFA', 'minimumStock', null, null)) + prodView.addAlias(null, 'offsetQOHQtyAvailable', null, null, null, null, null, qohDiffComplexAlias) + atpDiffComplexAlias = new ComplexAlias('-') + atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('IITE', 'availableToPromiseTotal', null, 'sum')) + atpDiffComplexAlias.addComplexAliasMember(new ComplexAliasField('PRFA', 'minimumStock', null, null)) + prodView.addAlias(null, 'offsetATPQtyAvailable', null, null, null, null, null, atpDiffComplexAlias) if (searchInProductCategoryId) { - prodView.addMemberEntity("PRCA", "ProductCategoryMember") - prodView.addViewLink("PRFA", "PRCA", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")) - prodView.addAlias("PRCA", "productCategoryId", null, null, null, Boolean.TRUE, null) + prodView.addMemberEntity('PRCA', 'ProductCategoryMember') + prodView.addViewLink('PRFA', 'PRCA', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId')) + prodView.addAlias('PRCA', 'productCategoryId', null, null, null, Boolean.TRUE, null) conditionMap.productCategoryId = searchInProductCategoryId - searchParameterString = searchParameterString + "&searchInProductCategoryId=" + searchInProductCategoryId + searchParameterString = searchParameterString + '&searchInProductCategoryId=' + searchInProductCategoryId } if (productSupplierId) { - prodView.addMemberEntity("SPPR", "SupplierProduct") - prodView.addViewLink("PRFA", "SPPR", Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")) - prodView.addAlias("SPPR", "partyId", null, null, null, Boolean.TRUE, null) + prodView.addMemberEntity('SPPR', 'SupplierProduct') + prodView.addViewLink('PRFA', 'SPPR', Boolean.FALSE, ModelKeyMap.makeKeyMapList('productId')) + prodView.addAlias('SPPR', 'partyId', null, null, null, Boolean.TRUE, null) conditionMap.partyId = productSupplierId - searchParameterString = searchParameterString + "&productSupplierId=" + productSupplierId + searchParameterString = searchParameterString + '&productSupplierId=' + productSupplierId } // set distinct on so we only get one row per product searchCondition = EntityCondition.makeCondition(conditionMap, EntityOperator.AND) - notVirtualCondition = EntityCondition.makeCondition(EntityCondition.makeCondition("isVirtual", EntityOperator.EQUALS, null), + notVirtualCondition = EntityCondition.makeCondition(EntityCondition.makeCondition('isVirtual', EntityOperator.EQUALS, null), EntityOperator.OR, - EntityCondition.makeCondition("isVirtual", EntityOperator.NOT_EQUAL, "Y")) + EntityCondition.makeCondition('isVirtual', EntityOperator.NOT_EQUAL, 'Y')) whereConditionsList = [searchCondition, notVirtualCondition] // add the discontinuation date condition if (productsSoldThruTimestamp) { discontinuationDateCondition = EntityCondition.makeCondition( [ - EntityCondition.makeCondition("salesDiscontinuationDate", EntityOperator.EQUALS, null), - EntityCondition.makeCondition("salesDiscontinuationDate", EntityOperator.GREATER_THAN,productsSoldThruTimestamp) + EntityCondition.makeCondition('salesDiscontinuationDate', EntityOperator.EQUALS, null), + EntityCondition.makeCondition('salesDiscontinuationDate', EntityOperator.GREATER_THAN, productsSoldThruTimestamp) ], EntityOperator.OR) whereConditionsList.add(discontinuationDateCondition) - searchParameterString = searchParameterString + "&productsSoldThruTimestamp=" + productsSoldThruTimestamp + searchParameterString = searchParameterString + '&productsSoldThruTimestamp=' + productsSoldThruTimestamp } // add search on internal name if (internalName) { - whereConditionsList.add(EntityCondition.makeCondition("internalName", EntityOperator.LIKE, "%" + internalName + "%")) - searchParameterString = searchParameterString + "&internalName=" + internalName + whereConditionsList.add(EntityCondition.makeCondition('internalName', EntityOperator.LIKE, '%' + internalName + '%')) + searchParameterString = searchParameterString + '&internalName=' + internalName } // add search on productId if (productId) { - whereConditionsList.add(EntityCondition.makeCondition("productId", EntityOperator.LIKE, productId + "%")) - searchParameterString = searchParameterString + "&productId=" + productId + whereConditionsList.add(EntityCondition.makeCondition('productId', EntityOperator.LIKE, productId + '%')) + searchParameterString = searchParameterString + '&productId=' + productId } orderBy = [] if (hasOffsetATP) { - orderBy.add("offsetATPQtyAvailable") + orderBy.add('offsetATPQtyAvailable') } if (hasOffsetQOH) { - orderBy.add("offsetQOHQtyAvailable") + orderBy.add('offsetQOHQtyAvailable') } - orderBy.add("productId") + orderBy.add('productId') // If the user has specified a number of months over which to sum usage quantities, define the correct timestamp checkTime = null - monthsInPastLimitStr = request.getParameter("monthsInPastLimit") + monthsInPastLimitStr = request.getParameter('monthsInPastLimit') if (monthsInPastLimitStr) { try { monthsInPastLimit = Integer.parseInt(monthsInPastLimitStr) cal = UtilDateTime.toCalendar(null) cal.add(Calendar.MONTH, 0 - monthsInPastLimit) checkTime = UtilDateTime.toTimestamp(cal.getTime()) - searchParameterString += "&monthsInPastLimit=" + monthsInPastLimitStr + searchParameterString += '&monthsInPastLimit=' + monthsInPastLimitStr } catch (Exception e) { - logError(e, "Caught an exception : " + e.toString()) - request.setAttribute("_ERROR_MESSAGE", "An exception occured please check the log") + logError(e, 'Caught an exception : ' + e) + request.setAttribute('_ERROR_MESSAGE', 'An exception occured please check the log') } } if (checkTime) { - // Construct a dynamic view entity to search against for sales usage quantities - salesUsageViewEntity = new DynamicViewEntity() - salesUsageViewEntity.addMemberEntity("OI", "OrderItem") - salesUsageViewEntity.addMemberEntity("OH", "OrderHeader") - salesUsageViewEntity.addMemberEntity("ItIss", "ItemIssuance") - salesUsageViewEntity.addMemberEntity("InvIt", "InventoryItem") - salesUsageViewEntity.addViewLink("OI", "OH", false, ModelKeyMap.makeKeyMapList("orderId")) - salesUsageViewEntity.addViewLink("OI", "ItIss", false, ModelKeyMap.makeKeyMapList("orderId", "orderId", "orderItemSeqId", "orderItemSeqId")) - salesUsageViewEntity.addViewLink("ItIss", "InvIt", false, ModelKeyMap.makeKeyMapList("inventoryItemId")) - salesUsageViewEntity.addAlias("OI", "productId") - salesUsageViewEntity.addAlias("OH", "statusId") - salesUsageViewEntity.addAlias("OH", "orderTypeId") - salesUsageViewEntity.addAlias("OH", "orderDate") - salesUsageViewEntity.addAlias("ItIss", "inventoryItemId") - salesUsageViewEntity.addAlias("ItIss", "quantity") - salesUsageViewEntity.addAlias("InvIt", "facilityId") + salesUsageViewEntity = new DynamicViewEntity().with { + addMemberEntity('OI', 'OrderItem') + addMemberEntity('OH', 'OrderHeader') + addMemberEntity('ItIss', 'ItemIssuance') + addMemberEntity('InvIt', 'InventoryItem') + addViewLink('OI', 'OH', false, ModelKeyMap.makeKeyMapList('orderId')) + addViewLink('OI', 'ItIss', false, ModelKeyMap.makeKeyMapList('orderId', 'orderId', 'orderItemSeqId', 'orderItemSeqId')) + addViewLink('ItIss', 'InvIt', false, ModelKeyMap.makeKeyMapList('inventoryItemId')) + addAlias('OI', 'productId') + addAlias('OH', 'statusId') + addAlias('OH', 'orderTypeId') + addAlias('OH', 'orderDate') + addAlias('ItIss', 'inventoryItemId') + addAlias('ItIss', 'quantity') + addAlias('InvIt', 'facilityId') + } // Construct a dynamic view entity to search against for production usage quantities - productionUsageViewEntity = new DynamicViewEntity() - productionUsageViewEntity.addMemberEntity("WEIA", "WorkEffortInventoryAssign") - productionUsageViewEntity.addMemberEntity("WE", "WorkEffort") - productionUsageViewEntity.addMemberEntity("II", "InventoryItem") - productionUsageViewEntity.addViewLink("WEIA", "WE", false, ModelKeyMap.makeKeyMapList("workEffortId")) - productionUsageViewEntity.addViewLink("WEIA", "II", false, ModelKeyMap.makeKeyMapList("inventoryItemId")) - productionUsageViewEntity.addAlias("WEIA", "quantity") - productionUsageViewEntity.addAlias("WE", "actualCompletionDate") - productionUsageViewEntity.addAlias("WE", "workEffortTypeId") - productionUsageViewEntity.addAlias("II", "facilityId") - productionUsageViewEntity.addAlias("II", "productId") + productionUsageViewEntity = new DynamicViewEntity().with { + addMemberEntity('WEIA', 'WorkEffortInventoryAssign') + addMemberEntity('WE', 'WorkEffort') + addMemberEntity('II', 'InventoryItem') + addViewLink('WEIA', 'WE', false, ModelKeyMap.makeKeyMapList('workEffortId')) + addViewLink('WEIA', 'II', false, ModelKeyMap.makeKeyMapList('inventoryItemId')) + addAlias('WEIA', 'quantity') + addAlias('WE', 'actualCompletionDate') + addAlias('WE', 'workEffortTypeId') + addAlias('II', 'facilityId') + addAlias('II', 'productId') + } Review Comment: Done Thanks ! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@ofbiz.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org