Changeset 688 for trunk/grails-app/services/AssetSubItemService.groovy
- Timestamp:
- Oct 6, 2010, 4:23:46 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/services/AssetSubItemService.groovy
r387 r688 1 1 2 import net.kromhouts.HqlBuilder 2 3 import org.apache.commons.lang.WordUtils 3 4 … … 5 6 6 7 boolean transactional = false 8 9 def sessionFactory 7 10 8 11 /** … … 120 123 } // save() 121 124 125 /** 126 * Get a list of level 1 assetSubItems. 127 * @returns By default all level 1 assetSubItems are returned. 128 */ 129 def getLevel1AssetSubItems(params) { 130 131 // A result is returned for every level 1 assetSubItem. 132 def q = new HqlBuilder().query { 133 select 'assetSubItem' 134 from 'AssetSubItem assetSubItem', 135 'inner join assetSubItem.assets as asset' 136 where 'asset != null' // ensure that only level 1 assetSubItems are returned. 137 } 138 def assetSubItems = AssetSubItem.executeQuery(q.query, q.namedParams) 139 140 } 141 142 /** 143 * Create recommended extended attributes for all level 1 subItems. 144 */ 145 def createRecommendedExtendedAttributes() { 146 def result = [:] 147 148 def hibernateSession = sessionFactory.currentSession 149 150 def assetSubItems = getLevel1AssetSubItems() 151 152 def manufacturer = ExtendedAttributeType.get(8) 153 def modelNumber = ExtendedAttributeType.get(1) 154 def serialNumber = ExtendedAttributeType.get(3) 155 def manufacturedDate = ExtendedAttributeType.get(4) 156 157 for(assetSubItem in assetSubItems) { 158 159 def attributeTypes = assetSubItem.assetSubItemExtendedAttributes.collect {it.extendedAttributeType} 160 161 //AssetSubItemExtendedAttribute 162 def assetSubItemExtendedAttributeInstance 163 164 if(!attributeTypes.contains(manufacturer)) { 165 //AssetSubItemExtendedAttribute #1 166 assetSubItemExtendedAttributeInstance = new AssetSubItemExtendedAttribute(value: "Not Specified", 167 assetSubItem: assetSubItem, 168 extendedAttributeType: manufacturer) 169 assetSubItemExtendedAttributeInstance.save() 170 } 171 172 if(!attributeTypes.contains(modelNumber)) { 173 //AssetSubItemExtendedAttribute #2 174 assetSubItemExtendedAttributeInstance = new AssetSubItemExtendedAttribute(value: "Not Specified", 175 assetSubItem: assetSubItem, 176 extendedAttributeType: modelNumber) 177 assetSubItemExtendedAttributeInstance.save() 178 } 179 180 if(!attributeTypes.contains(serialNumber)) { 181 //AssetSubItemExtendedAttribute #3 182 assetSubItemExtendedAttributeInstance = new AssetSubItemExtendedAttribute(value: "Not Specified", 183 assetSubItem: assetSubItem, 184 extendedAttributeType: serialNumber) 185 assetSubItemExtendedAttributeInstance.save() 186 } 187 188 if(!attributeTypes.contains(manufacturedDate)) { 189 //AssetSubItemExtendedAttribute #4 190 assetSubItemExtendedAttributeInstance = new AssetSubItemExtendedAttribute(value: "Not Specified", 191 assetSubItem: assetSubItem, 192 extendedAttributeType: manufacturedDate) 193 assetSubItemExtendedAttributeInstance.save() 194 } 195 196 hibernateSession.flush() 197 198 } // for 199 200 // Success. 201 return result 202 203 } // createRecommendedExtendedAttributes() 204 122 205 } // end class
Note: See TracChangeset
for help on using the changeset viewer.