Changeset 720


Ignore:
Timestamp:
Nov 25, 2010, 9:08:43 AM (14 years ago)
Author:
gav
Message:

Domain change: as per ticket #96 - Remove unused fields from InventoryItem?.
Removed InventoryItem?.alternateItems.

Location:
trunk/grails-app
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/controllers/InventoryItemDetailedController.groovy

    r719 r720  
    430430
    431431        if(!result.error) {
    432             def possibleAlternateItems = inventoryItemService.getPossibleAlternateItems(result.inventoryItemInstance)
    433432            def suppliers = Supplier.findAllByIsActive(true).sort { p1, p2 -> p1.name.compareToIgnoreCase(p2.name) }
    434433
    435434            return [ inventoryItemInstance : result.inventoryItemInstance,
    436                             possibleAlternateItems: possibleAlternateItems,
    437435                            suppliers: suppliers]
    438436        }
     
    457455        }
    458456
    459         def possibleAlternateItems = inventoryItemService.getPossibleAlternateItems(result.inventoryItemInstance)
    460457        def suppliers = Supplier.findAllByIsActive(true).sort { p1, p2 -> p1.name.compareToIgnoreCase(p2.name) }
    461458        render(view:'edit', model:[inventoryItemInstance: result.inventoryItemInstance.attach(),
    462                                                 possibleAlternateItems: possibleAlternateItems,
    463459                                                suppliers: suppliers])
    464460    }
  • trunk/grails-app/domain/InventoryItem.groovy

    r719 r720  
    2323    }
    2424
    25     static hasMany = [alternateItems: InventoryItem,
    26                                     spareFor: Asset,
     25    static hasMany = [spareFor: Asset,
    2726                                    inventoryMovements: InventoryMovement,
    2827                                    alternateSuppliers: Supplier]
     
    6059    }
    6160
    62     def afterInsert = {
    63         addReverseAlternateItems()
    64     }
    65 
    66     /**
    67     * Add reverse alternateItem references.
    68     */
    69     def addReverseAlternateItems() {
    70         this.alternateItems.each() {
    71             if( !it.alternateItems?.contains(this) )
    72                 it.addToAlternateItems(this)
    73         }
    74     }
    75 
    76     /**
    77    * Remove all reverse alternateItem references.
    78     * On update: reverse alternateItem handling must be done in the
    79     * service class since the before assignment alternateItems are required.
    80     */
    81     def removeReverseAlternateItems(alternateItems = this.alternateItems) {
    82         alternateItems.each() {
    83             it.removeFromAlternateItems(this)
    84         }
    85     }
    86 
    8761}
  • trunk/grails-app/services/CreateDataService.groovy

    r703 r720  
    12971297                                                                                    estimatedUnitPriceAmount: 2.50,
    12981298                                                                                    estimatedUnitPriceCurrency: currency,
    1299                                                                                     alternateItems: InventoryItem.get(1),
    13001299                                                                                    unitsInStock: 2,
    13011300                                                                                    reorderPoint: 0)
  • trunk/grails-app/services/InventoryCsvService.groovy

    r719 r720  
    5959                                                        "inventoryGroup", "inventoryType",
    6060                                                        "suppliersPartNumber", "preferredSupplier", "alternateSuppliers",
    61                                                         "alternateItems", "spareFor"]
     61                                                        "spareFor"]
    6262
    6363            def siteInstance
     
    6767            def supplierTypeUnknown = SupplierType.get(1)
    6868            def spareForInstance
    69             def alternateItemInstance
    7069            def inventoryTypeInstance
    7170            def unitOfMeasureInstance
     
    8584
    8685            def tempSpareFor = []
    87             def tempAlternateItems = []
    8886
    8987            def nextLine = {
     
    289287
    290288                    inventoryParams.alternateSuppliers.add(alternateSupplierInstance)
    291                 }
    292 
    293                 // AlternateItems.
    294                 tempAlternateItems = parseInputList(inventoryParams.alternateItems)
    295                 inventoryParams.alternateItems = []
    296 
    297                 for(tempAlternateItem in tempAlternateItems) {
    298                     tempAlternateItem = WordUtils.capitalize(tempAlternateItem)
    299                     alternateItemInstance = InventoryItem.findByName(tempAlternateItem)
    300                     if(!alternateItemInstance) {
    301                         alternateItemInstance = new InventoryItem(name: tempAlternateItem,
    302                                                                                                 description: "Generated from alternateItems during import, details may not be correct.",
    303                                                                                                 reorderPoint: 0,
    304                                                                                                 inventoryGroup: inventoryGroupInstance,
    305                                                                                                 inventoryType: inventoryTypeInstance,
    306                                                                                                 unitOfMeasure: unitOfMeasureInstance,
    307                                                                                                 inventoryLocation: inventoryLocationInstance)
    308                         if(!alternateItemInstance.save()) {
    309                             log.error "Failed to create alternateItems on line: " + lineNumber
    310                             return fail(code: "inventory.import.failure", args: [lineNumber, logFileLink])
    311                         }
    312                     }
    313 
    314                     inventoryParams.alternateItems.add(alternateItemInstance)
    315289                }
    316290
  • trunk/grails-app/services/InventoryItemService.groovy

    r636 r720  
    1313    def sessionFactory
    1414    def propertyInstanceMap = org.codehaus.groovy.grails.plugins.DomainClassGrailsPlugin.PROPERTY_INSTANCE_MAP
    15 
    16     /**
    17     * Prepare a sorted list of possible alternateItems.
    18     */
    19     def getPossibleAlternateItems(inventoryItemInstance) {
    20         def criteria = inventoryItemInstance.createCriteria()
    21         def possibleAlternateItems = criteria {
    22             and {
    23                 eq('isActive', true)
    24                 notEqual('id', inventoryItemInstance.id)
    25             }
    26         }.sort { p1, p2 -> p1.name.compareToIgnoreCase(p2.name) }
    27     }
    2815
    2916    /**
     
    129116                return fail(code:"inventoryMovement.still.associated")
    130117
    131             result.inventoryItemInstance.removeReverseAlternateItems()
    132 
    133118            try {
    134119                result.inventoryItemInstance.delete(flush:true)
     
    181166            }
    182167
    183             def previousAlternateItems = new ArrayList(result.inventoryItemInstance.alternateItems)
    184 
    185168            result.inventoryItemInstance.properties = params
    186169
    187170            if(result.inventoryItemInstance.hasErrors() || !result.inventoryItemInstance.save())
    188171                return fail(code:"default.update.failure")
    189 
    190             result.inventoryItemInstance.removeReverseAlternateItems(previousAlternateItems)
    191             result.inventoryItemInstance.addReverseAlternateItems()
    192172
    193173            // Success.
  • trunk/grails-app/views/inventoryItemDetailed/edit.gsp

    r719 r720  
    220220                            <tr class="prop">
    221221                                <td valign="top" class="name">
    222                                     <label for="alternateItems">Alternate Items:</label>
    223                                 </td>
    224                                 <td valign="top" class="value ${hasErrors(bean:inventoryItemInstance,field:'alternateItems','errors')}">
    225                                     <g:select name="alternateItems"
    226                                                         from="${possibleAlternateItems}"
    227                                                         size="5" multiple="yes" optionKey="id"
    228                                                         value="${inventoryItemInstance?.alternateItems.id}" noSelection="['':'--None--']"/>
    229 
    230                                 </td>
    231                             </tr>
    232 
    233                             <tr class="prop">
    234                                 <td valign="top" class="name">
    235222                                    <label for="inventoryGroup">Inventory Group:</label>
    236223                                </td>
  • trunk/grails-app/views/inventoryItemDetailed/show.gsp

    r719 r720  
    180180
    181181                                    <tr class="prop">
    182                                         <td valign="top" class="name">Alternate Items:</td>
    183 
    184                                         <td  valign="top" style="text-align:left;" class="value">
    185                                             <ul>
    186                                             <g:each var="a" in="${ inventoryItemInstance.alternateItems.sort { p1, p2 -> p1.name.compareToIgnoreCase(p2.name) } }">
    187                                                 <li><g:link controller="inventoryItemDetailed" action="show" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
    188                                             </g:each>
    189                                             </ul>
    190                                         </td>
    191                                     </tr>
    192 
    193                                     <tr class="prop">
    194182                                        <td valign="top" class="name">Spare For:</td>
    195183
Note: See TracChangeset for help on using the changeset viewer.