source: trunk/grails-app/conf/BootStrap.groovy @ 131

Last change on this file since 131 was 131, checked in by gav, 16 years ago

Reconfigure Planned Maintenance again, now Preventative Maintenance, TaskProcedure? and MaintenanceAction?

File size: 35.7 KB
Line 
1import grails.util.GrailsUtil
2
3class BootStrap 
4{
5    //Required to be right here for Acegi plugin.
6    def authenticateService
7    Boolean BootStrapDemoDataSuccessful = true
8
9    def init = { servletContext ->
10
11    println "**** BootStrap GrailsUtil.environment = ${GrailsUtil.environment}"
12   
13        switch (GrailsUtil.environment)
14        {
15            case "development":
16                        bootStrapDemoData()
17                        break
18            case "test":
19                        break
20            case "production":
21                        bootStrapDemoData()
22                        break 
23        }
24   
25    }
26
27    def destroy = {
28    }
29
30    //Insert some demo/startup data.
31    void bootStrapDemoData()
32    {
33        println "BootStrapping demo data..."
34
35/***********************
36START OF UTILITIES
37***********************/
38
39//Site
40        def siteInstance
41
42        siteInstance = new Site(name: "Creek Mill")
43        BootStrapSaveAndTest(siteInstance)
44
45        siteInstance = new Site(name: "Jasper Street Depot")
46        BootStrapSaveAndTest(siteInstance)
47
48//UnitOfMeasure
49        def unitOfMeasureInstance
50
51        //UnitOfMeasure #1
52        unitOfMeasureInstance = new UnitOfMeasure(name: "each")
53        BootStrapSaveAndTest(unitOfMeasureInstance)
54
55        //UnitOfMeasure #2
56        unitOfMeasureInstance = new UnitOfMeasure(name: "meter(s)")
57        BootStrapSaveAndTest(unitOfMeasureInstance)
58
59        //UnitOfMeasure #3
60        unitOfMeasureInstance = new UnitOfMeasure(name: "box(es)")
61        BootStrapSaveAndTest(unitOfMeasureInstance)
62
63        //UnitOfMeasure #4
64        unitOfMeasureInstance = new UnitOfMeasure(name: "litre(s)")
65        BootStrapSaveAndTest(unitOfMeasureInstance)
66
67        //UnitOfMeasure #5
68        unitOfMeasureInstance = new UnitOfMeasure(name: "kilogram(s)")
69        BootStrapSaveAndTest(unitOfMeasureInstance)
70
71//Period
72        def periodInstance
73
74        //Period #1
75        periodInstance = new Period(period: "Day(s)")
76        BootStrapSaveAndTest(periodInstance)
77
78        //Period #2
79        periodInstance = new Period(period: "Week(s)")
80        BootStrapSaveAndTest(periodInstance)
81
82        //Period #3
83        periodInstance = new Period(period: "Month(s)")
84        BootStrapSaveAndTest(periodInstance)
85
86        //Period #4
87        periodInstance = new Period(period: "Year(s)")
88        BootStrapSaveAndTest(periodInstance)
89
90/*********************
91START OF PERSON
92*********************/
93
94//TypeOfPersonGroup
95        def personGroupTypeInstance
96        personGroupTypeInstance = new PersonGroupType(name:"Department")
97        BootStrapSaveAndTest(personGroupTypeInstance)
98        personGroupTypeInstance = new PersonGroupType(name:"Contractor")
99        BootStrapSaveAndTest(personGroupTypeInstance)
100        personGroupTypeInstance = new PersonGroupType(name:"ProjectTeam")
101        BootStrapSaveAndTest(personGroupTypeInstance)
102   
103//PersonGroup
104        def personGroupInstance
105        personGroupInstance = new PersonGroup(personGroupType:PersonGroupType.findByName("Department"),
106                        name:"Electrical")
107        BootStrapSaveAndTest(personGroupInstance)
108        personGroupInstance = new PersonGroup(personGroupType:PersonGroupType.findByName("Department"),
109                        name:"Mechanical")
110        BootStrapSaveAndTest(personGroupInstance)
111        personGroupInstance = new PersonGroup(personGroupType:PersonGroupType.findByName("Department"),
112                        name:"Production")
113        BootStrapSaveAndTest(personGroupInstance)
114        personGroupInstance = new PersonGroup(personGroupType:PersonGroupType.get(2),
115                        name:"Kewl AirCon Guys")
116        BootStrapSaveAndTest(personGroupInstance)
117        personGroupInstance = new PersonGroup(personGroupType:PersonGroupType.get(3),
118                        name:"gnuMims")
119        BootStrapSaveAndTest(personGroupInstance)
120
121//Authority
122        def authInstance
123
124        authInstance = new Authority(description:"Application Admin, not required for daily use! Grants full admin access to the application.",
125                                        authority:"ROLE_AppAdmin")
126        BootStrapSaveAndTest(authInstance)
127
128        authInstance = new Authority(description:"Business manager, grants full management access.",
129                                        authority:"ROLE_Manager")
130        BootStrapSaveAndTest(authInstance)
131
132        authInstance = new Authority(description:"Application User, all application users need this base role to allow login.",
133                                        authority:"ROLE_AppUser")
134        BootStrapSaveAndTest(authInstance)
135           
136//Person
137        def passClearText = "pass"
138        def passwordEncoded = authenticateService.encodePassword(passClearText)
139        def personInstance
140
141        //Person #1
142        personInstance = new Person(loginName:"admin",
143                                    firstName:"Admin",
144                                    lastName:"Powers",
145                                    pass:passClearText,
146                                    password:passwordEncoded,
147                                    email:"admin@example.com")
148        BootStrapSaveAndTest(personInstance)
149        personInstance.addToAuthorities(Authority.get(1))
150        personInstance.addToAuthorities(Authority.get(2))
151        personInstance.addToAuthorities(Authority.get(3))
152        personInstance.addToPersonGroups(PersonGroup.findByName("gnuMims"))
153
154        //Person #2
155        personInstance = new Person(loginName:"manager",
156                                    firstName:"Meca",
157                                    lastName:"Manager",
158                                    pass:passClearText,
159                                    password:passwordEncoded,
160                                    email:"manager@example.com")
161        BootStrapSaveAndTest(personInstance)
162        personInstance.addToAuthorities(Authority.get(2))
163        personInstance.addToAuthorities(Authority.get(3))
164        personInstance.addToPersonGroups(PersonGroup.findByName("gnuMims"))
165
166        //Person #3
167        personInstance = new Person(loginName:"user",
168                                    firstName:"Demo",
169                                    lastName:"User",
170                                    pass:passClearText,
171                                    password:passwordEncoded,
172                                    email:"user@example.com")
173        BootStrapSaveAndTest(personInstance)
174        personInstance.addToAuthorities(Authority.get(3))
175        personInstance.addToPersonGroups(PersonGroup.findByName("Electrical"))
176
177        //Person #4
178        personInstance = new Person(loginName:"craig",
179                                    firstName:"Craig",
180                                    lastName:"SuperSparky",
181                                    pass:passClearText,
182                                    password:passwordEncoded,
183                                    email:"user@example.com")
184        BootStrapSaveAndTest(personInstance)
185        personInstance.addToAuthorities(Authority.get(3))
186        personInstance.addToPersonGroups(PersonGroup.findByName("Electrical"))
187
188        //Person #5
189        personInstance = new Person(loginName:"john",
190                                    firstName:"John",
191                                    lastName:"SuperFitter",
192                                    pass:passClearText,
193                                    password:passwordEncoded,
194                                    email:"user@example.com")
195        BootStrapSaveAndTest(personInstance)
196        personInstance.addToAuthorities(Authority.get(3))
197        personInstance.addToPersonGroups(PersonGroup.findByName("Mechanical"))
198
199        //Person #6
200        personInstance = new Person(loginName:"mann",
201                                    firstName:"Production",
202                                    lastName:"Mann",
203                                    pass:passClearText,
204                                    password:passwordEncoded,
205                                    email:"user@example.com")
206        BootStrapSaveAndTest(personInstance)
207        personInstance.addToAuthorities(Authority.get(3))
208        personInstance.addToPersonGroups(PersonGroup.findByName("Production"))
209
210/*********************
211START OF TASK
212*********************/
213
214//TaskGroup
215        def taskGroupInstance
216
217        taskGroupInstance = new TaskGroup(name:"Engineering Activites",
218                                                                            description:"Engineering daily activities")
219        BootStrapSaveAndTest(taskGroupInstance)
220
221        taskGroupInstance = new TaskGroup(name:"Production Activites",
222                                                                            description:"Production daily activities")
223        BootStrapSaveAndTest(taskGroupInstance)
224
225        taskGroupInstance = new TaskGroup(name:"New Projects",
226                                                                            description:" ")
227        BootStrapSaveAndTest(taskGroupInstance)
228
229//TaskStatus
230        def taskStatusInstance
231   
232        taskStatusInstance = new TaskStatus(name:"Not Started")
233        BootStrapSaveAndTest(taskStatusInstance)
234
235        taskStatusInstance = new TaskStatus(name:"In Progress")
236        BootStrapSaveAndTest(taskStatusInstance)
237
238        taskStatusInstance = new TaskStatus(name:"Completed")
239        BootStrapSaveAndTest(taskStatusInstance)
240
241//TaskPriority
242        def taskPriorityInstance
243
244        taskPriorityInstance = new TaskPriority(name:"Normal")
245        BootStrapSaveAndTest(taskPriorityInstance)
246
247        taskPriorityInstance = new TaskPriority(name:"Low")
248        BootStrapSaveAndTest(taskPriorityInstance)
249
250        taskPriorityInstance = new TaskPriority(name:"High")
251        BootStrapSaveAndTest(taskPriorityInstance)
252
253        taskPriorityInstance = new TaskPriority(name:"Immediate")
254        BootStrapSaveAndTest(taskPriorityInstance)
255
256//TaskType
257        def taskTypeInstance
258
259        taskTypeInstance = new TaskType(name:"Unscheduled Breakin")
260        BootStrapSaveAndTest(taskTypeInstance)
261
262        taskTypeInstance = new TaskType(name:"Preventative Maintenance")
263        BootStrapSaveAndTest(taskTypeInstance)
264
265        taskTypeInstance = new TaskType(name:"Project")
266        BootStrapSaveAndTest(taskTypeInstance)
267
268        taskTypeInstance = new TaskType(name:"Turnaround")
269        BootStrapSaveAndTest(taskTypeInstance)
270
271        taskTypeInstance = new TaskType(name:"Production Run")
272        BootStrapSaveAndTest(taskTypeInstance)
273
274//Task
275        def taskInstance
276
277        //Task #1
278        taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"),
279                 taskStatus:TaskStatus.findByName("Not Started"),
280                 taskPriority:TaskPriority.get(2),
281                 taskType:TaskType.get(1),
282                 leadPerson:Person.get(3),
283                 description:"Check specific level sensor",
284                 comment:"Has been noted as problematic, try recalibrating.")
285        BootStrapSaveAndTest(taskInstance)
286
287        //Task #2
288        taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"),
289                taskStatus:TaskStatus.findByName("Not Started"),
290                taskPriority:TaskPriority.get(2),
291                taskType:TaskType.get(1),
292                leadPerson:Person.get(5),
293                description:"Some follow-up work",
294                comment:"Some help required",
295                parentTask: Task.get(1))
296        BootStrapSaveAndTest(taskInstance)
297
298        //Task #3
299        taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"),
300                taskStatus:TaskStatus.findByName("Not Started"),
301                taskPriority:TaskPriority.get(2),
302                taskType:TaskType.get(1),
303                leadPerson:Person.get(5),
304                description:"A Sub Task can be created by setting the Parent Task value",
305                comment:"Some help required",
306                parentTask: Task.get(1))
307        BootStrapSaveAndTest(taskInstance)
308
309        //Task #4
310        taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"),
311                 taskStatus:TaskStatus.findByName("Not Started"),
312                 taskPriority:TaskPriority.get(2),
313                 taskType:TaskType.get(1),
314                 leadPerson:Person.get(4),
315                 description:"Replace sensor at next opportunity.",
316                 comment:"Nothing else has worked.",
317                parentTask: Task.get(1))
318        BootStrapSaveAndTest(taskInstance)
319
320        //Task #5
321        taskInstance = new Task(taskGroup:TaskGroup.findByName("Production Activites"),
322                 taskStatus:TaskStatus.findByName("Not Started"),
323                 taskPriority:TaskPriority.get(2),
324                 taskType:TaskType.get(5),
325                 leadPerson:Person.get(6),
326                 description:"Production Report",
327                 comment:"Production report for specific production run or shift")
328        BootStrapSaveAndTest(taskInstance)
329
330        //Task #6
331        taskInstance = new Task(taskGroup:TaskGroup.findByName("New Projects"),
332                 taskStatus:TaskStatus.findByName("Not Started"),
333                 taskPriority:TaskPriority.get(2),
334                 taskType:TaskType.get(3),
335                 leadPerson:Person.get(1),
336                 description:"Make killer CMMS app",
337                 comment:"Use Grails and get a move on!")
338        BootStrapSaveAndTest(taskInstance)
339
340//EntryType
341        def entryTypeInstance
342
343        entryTypeInstance = new EntryType(name:"Fault")
344        BootStrapSaveAndTest(entryTypeInstance)
345
346        entryTypeInstance = new EntryType(name:"WorkDone")
347        BootStrapSaveAndTest(entryTypeInstance)
348
349        entryTypeInstance = new EntryType(name:"Production Note")
350        BootStrapSaveAndTest(entryTypeInstance)
351
352        entryTypeInstance = new EntryType(name:"Work Request")
353        BootStrapSaveAndTest(entryTypeInstance)
354
355//Entry
356        def entryInstance
357
358        //Entry #1
359        entryInstance = new Entry(enteredBy: Person.get(6),
360                                                    task: Task.get(1),
361                                                    entryType: EntryType.findByName("Fault"),
362                                                    comment: "This level sensor is causing us trouble.",
363                                                    durationMinute: 20)
364        BootStrapSaveAndTest(entryInstance)
365
366        //Entry #2
367        entryInstance = new Entry(enteredBy: Person.get(4),
368                                                    task: Task.get(1),
369                                                    entryType: EntryType.findByName("WorkDone"),
370                                                    comment: "Cleaned sensor, see how it goes.",
371                                                    durationMinute: 30)
372        BootStrapSaveAndTest(entryInstance)
373
374        //Entry #3
375        entryInstance = new Entry(enteredBy: Person.get(4),
376                                                    task: Task.get(1),
377                                                    entryType: EntryType.findByName("WorkDone"),
378                                                    comment: "Checked up on it later and sensor is dropping out intermittently, created subTask to replace sensor.",
379                                                    durationMinute: 20)
380        BootStrapSaveAndTest(entryInstance)
381
382//ModificationType
383        def taskModificationTypeInstance
384        taskModificationTypeInstance = new TaskModificationType(name:"Created").save()
385        taskModificationTypeInstance = new TaskModificationType(name:"Completed").save()
386        taskModificationTypeInstance = new TaskModificationType(name:"Closed").save()
387        taskModificationTypeInstance = new TaskModificationType(name:"Altered").save()
388        taskModificationTypeInstance = new TaskModificationType(name:"TargetDateModified").save()
389        taskModificationTypeInstance = new TaskModificationType(name:"ScheduledDateModified").save()
390        taskModificationTypeInstance = new TaskModificationType(name:"DescriptionModified").save()
391        taskModificationTypeInstance = new TaskModificationType(name:"AssignedToModified").save()
392        taskModificationTypeInstance = new TaskModificationType(name:"NameModified").save()
393   
394//AssignedPerson
395        def assignedPersonInstance
396
397        //AssignedPerson #1
398        assignedPersonInstance = new AssignedPerson(person: Person.get(4),
399                                                                                        task: Task.get(1),
400                                                                                        estimatedHour: 1,
401                                                                                        estimatedMinute: 20)
402        BootStrapSaveAndTest(assignedPersonInstance)
403
404        //AssignedPerson #2
405        assignedPersonInstance = new AssignedPerson(person: Person.get(5),
406                                                                                        task: Task.get(1),
407                                                                                        estimatedHour: 3,
408                                                                                        estimatedMinute: 30)
409        BootStrapSaveAndTest(assignedPersonInstance)
410
411//TaskRecurringSchedule
412        def taskRecurringScheduleInstance
413
414        //TaskRecurringSchedule #1
415        taskRecurringScheduleInstance = new TaskRecurringSchedule(task: Task.get(1),
416                                                                                                    recurEvery: 1,
417                                                                                                    period: Period.get(1),
418                                                                                                    task: Task.get(1),
419                                                                                                    nextDueDate: new Date())
420        BootStrapSaveAndTest(taskRecurringScheduleInstance)
421
422        //TaskRecurringSchedule #2
423        taskRecurringScheduleInstance = new TaskRecurringSchedule(task: Task.get(2),
424                                                                                                    recurEvery: 1,
425                                                                                                    period: Period.get(1),
426                                                                                                    task: Task.get(2),
427                                                                                                    nextDueDate: new Date())
428        BootStrapSaveAndTest(taskRecurringScheduleInstance)
429
430/*************************
431START OF INVENTORY
432**************************/
433
434//InventoryStore
435        def inventoryStoreInstance
436
437        inventoryStoreInstance = new InventoryStore(site: Site.get(1), name: "Store #1")
438        BootStrapSaveAndTest(inventoryStoreInstance)
439
440        inventoryStoreInstance = new InventoryStore(site: Site.get(2), name: "Store #2")
441        BootStrapSaveAndTest(inventoryStoreInstance)
442
443//StoreLocation
444        def storeLocation
445       
446        storeLocation = new StoreLocation(inventoryStore: InventoryStore.get(1), bin: "A1-2")
447        BootStrapSaveAndTest(storeLocation)
448
449        storeLocation = new StoreLocation(inventoryStore: InventoryStore.get(1), bin: "C55")
450        BootStrapSaveAndTest(storeLocation)
451
452//InventoryGroup
453        def inventoryGroupInstance
454
455        //InventoryGroup #1
456        inventoryGroupInstance = new InventoryGroup(name: "Misc")
457        BootStrapSaveAndTest(inventoryGroupInstance)
458
459        //InventoryGroup #2
460        inventoryGroupInstance = new InventoryGroup(name: "Electrical")
461        BootStrapSaveAndTest(inventoryGroupInstance)
462
463        //InventoryGroup #3
464        inventoryGroupInstance = new InventoryGroup(name: "Mechanical")
465        BootStrapSaveAndTest(inventoryGroupInstance)
466
467        //InventoryGroup #4
468        inventoryGroupInstance = new InventoryGroup(name: "Production")
469        BootStrapSaveAndTest(inventoryGroupInstance)
470
471//InventoryType
472        def inventoryTypeInstance
473
474        inventoryTypeInstance = new InventoryType(name: "Consumable")
475        BootStrapSaveAndTest(inventoryTypeInstance)
476
477        inventoryTypeInstance = new InventoryType(name: "Repairable")
478        BootStrapSaveAndTest(inventoryTypeInstance)
479
480//InventoryItem
481        def inventoryItemInstance
482
483        //InventoryItem #1
484        inventoryItemInstance = new InventoryItem(inventoryGroup: InventoryGroup.get(1),
485                                                                                    inventoryType: InventoryType.get(1),
486                                                                                    unitOfMeasure: UnitOfMeasure.get(2),
487                                                                                    name: "J-Rope",
488                                                                                    description: "Twine wound J-Rope",
489                                                                                    reorderPoint: 0)
490        BootStrapSaveAndTest(inventoryItemInstance)
491
492        //InventoryItem #2
493        inventoryItemInstance = new InventoryItem(inventoryGroup: InventoryGroup.get(1),
494                                                                                    inventoryType: InventoryType.get(1),
495                                                                                    unitOfMeasure: UnitOfMeasure.get(2),
496                                                                                    name: "L-Rope",
497                                                                                    description: "Twine wound L-Rope",
498                                                                                    alternateItems: InventoryItem.get(1),
499                                                                                    reorderPoint: 0)
500        BootStrapSaveAndTest(inventoryItemInstance)
501
502        //InventoryItem #3
503        inventoryItemInstance = new InventoryItem(inventoryGroup: InventoryGroup.get(3),
504                                                                                    inventoryType: InventoryType.get(1),
505                                                                                    unitOfMeasure: UnitOfMeasure.get(1),
506                                                                                    name: "2305-2RS",
507                                                                                    description: "Bearing 25x62x24mm double row self aligning ball",
508                                                                                    reorderPoint: 2)
509        BootStrapSaveAndTest(inventoryItemInstance)
510
511        //InventoryItem #4
512        inventoryItemInstance = new InventoryItem(inventoryGroup: InventoryGroup.get(2),
513                                                                                    inventoryType: InventoryType.get(1),
514                                                                                    unitOfMeasure: UnitOfMeasure.get(1),
515                                                                                    name: "L1592-K10",
516                                                                                    description: "10kW contactor",
517                                                                                    reorderPoint: 0)
518        BootStrapSaveAndTest(inventoryItemInstance)
519
520        //InventoryItem #5
521        inventoryItemInstance = new InventoryItem(inventoryGroup: InventoryGroup.get(3),
522                                                                                    inventoryType: InventoryType.get(1),
523                                                                                    unitOfMeasure: UnitOfMeasure.get(1),
524                                                                                    name: "6205-ZZ",
525                                                                                    description: "Bearing 25x52x15mm single row ball shielded",
526                                                                                    reorderPoint: 2)
527        BootStrapSaveAndTest(inventoryItemInstance)
528
529//StoredItem
530        def storedItemInstance
531
532        //StoredItem #1
533        storedItemInstance = new StoredItem(inventoryItem: InventoryItem.get(1),
534                                                                            storeLocation: StoreLocation.get(1),
535                                                                            quantity: 8)
536        BootStrapSaveAndTest(storedItemInstance)
537
538        //StoredItem #2
539        storedItemInstance = new StoredItem(inventoryItem: InventoryItem.get(1),
540                                                                            storeLocation: StoreLocation.get(2),
541                                                                            quantity: 4)
542        BootStrapSaveAndTest(storedItemInstance)
543
544        //StoredItem #3
545        storedItemInstance = new StoredItem(inventoryItem: InventoryItem.get(2),
546                                                                            storeLocation: StoreLocation.get(1),
547                                                                            quantity: 2)
548        BootStrapSaveAndTest(storedItemInstance)
549
550        //StoredItem #4
551        storedItemInstance = new StoredItem(inventoryItem: InventoryItem.get(3),
552                                                                            storeLocation: StoreLocation.get(1),
553                                                                            quantity: 2)
554        BootStrapSaveAndTest(storedItemInstance)
555
556        //StoredItem #5
557        storedItemInstance = new StoredItem(inventoryItem: InventoryItem.get(4),
558                                                                            storeLocation: StoreLocation.get(1),
559                                                                            quantity: 30)
560        BootStrapSaveAndTest(storedItemInstance)
561
562/*******************
563START OF ASSET
564*******************/
565
566//LifePlan
567        def lifeplanInstance
568
569        lifeplanInstance = new LifePlan(name: "Initial Plan")
570        BootStrapSaveAndTest(lifeplanInstance)
571
572//MaintenancePolicy
573        def maintenancePolicyInstance
574
575        //MaintenancePolicy #1
576        maintenancePolicyInstance = new MaintenancePolicy(name: "Fixed Time")
577        BootStrapSaveAndTest(maintenancePolicyInstance)
578
579        //MaintenancePolicy #2
580        maintenancePolicyInstance = new MaintenancePolicy(name: "Condition Based Online")
581        BootStrapSaveAndTest(maintenancePolicyInstance)
582
583        //MaintenancePolicy #3
584        maintenancePolicyInstance = new MaintenancePolicy(name: "Condition Based Offline")
585        BootStrapSaveAndTest(maintenancePolicyInstance)
586
587        //MaintenancePolicy #4
588        maintenancePolicyInstance = new MaintenancePolicy(name: "Design Out")
589        BootStrapSaveAndTest(maintenancePolicyInstance)
590
591        //MaintenancePolicy #5
592        maintenancePolicyInstance = new MaintenancePolicy(name: "Operate To Failure")
593        BootStrapSaveAndTest(maintenancePolicyInstance)
594
595//TaskProcedure
596        def taskProcedureInstance
597
598        taskProcedureInstance = new TaskProcedure(name: "Daily check")
599        BootStrapSaveAndTest(taskProcedureInstance)
600        taskProcedureInstance.addToTasks(Task.get(1))
601
602//MaintenanceAction
603        def maintenanceActionInstance
604
605        //MaintenanceAction #1
606        maintenanceActionInstance = new MaintenanceAction(description: "Check all E-stops, active E-stop S1-S12 and ensure machine cannot run",
607                                                                                                        procedureStepNumber: 1,
608                                                                                                        maintenancePolicy: MaintenancePolicy.get(1),
609                                                                                                        taskProcedure: TaskProcedure.get(1))
610        BootStrapSaveAndTest(maintenanceActionInstance)
611
612        //MaintenanceAction #2
613        maintenanceActionInstance = new MaintenanceAction(description: "Do more pushups",
614                                                                                                        procedureStepNumber: 2,
615                                                                                                        maintenancePolicy: MaintenancePolicy.get(1),
616                                                                                                        taskProcedure: TaskProcedure.get(1))
617        BootStrapSaveAndTest(maintenanceActionInstance)
618
619        //MaintenanceAction #3
620        maintenanceActionInstance = new MaintenanceAction(description: "Ok just one more pushup",
621                                                                                                        procedureStepNumber: 3,
622                                                                                                        maintenancePolicy: MaintenancePolicy.get(1),
623                                                                                                        taskProcedure: TaskProcedure.get(1))
624        BootStrapSaveAndTest(maintenanceActionInstance)
625                                                                                                   
626//SystemSection
627    def systemSectionInstance
628
629    //SystemSection #1
630    systemSectionInstance = new SystemSection(name: "Press Section",
631                                                                                   site: Site.get(1))
632    BootStrapSaveAndTest(systemSectionInstance)
633
634    //SystemSection #2
635    systemSectionInstance = new SystemSection(name: "RO System",
636                                                                                   site: Site.get(2))
637    BootStrapSaveAndTest(systemSectionInstance)
638
639    //SystemSection #3
640    systemSectionInstance = new SystemSection(name: "Auxilliray Section",
641                                                                                   site: Site.get(1))
642    BootStrapSaveAndTest(systemSectionInstance)
643
644//AssetType
645        def assetTypeInstance
646
647        //AssetType #1
648        assetTypeInstance = new AssetType(name: "Print Unit")
649        BootStrapSaveAndTest(assetTypeInstance)
650
651        //AssetType #2
652        assetTypeInstance = new AssetType(name: "Reactor Tower")
653        BootStrapSaveAndTest(assetTypeInstance)
654   
655//Assembly
656        def assemblyInstance
657
658        //Assembly #1
659        assemblyInstance = new Assembly(name: "Print Couple",
660                                                                        assetType: AssetType.get(1))
661        BootStrapSaveAndTest(assemblyInstance)
662//        assemblyInstance.addToMaintenanceActions(MaintenanceAction.get(1))
663       
664        //Assembly #2
665        assemblyInstance = new Assembly(name: "Agitator",
666                                                                        assetType: AssetType.get(2))
667        BootStrapSaveAndTest(assemblyInstance)
668
669//SubAssembly
670        def subAssemblyInstance
671
672        //SubAssembly #1
673        subAssemblyInstance = new SubAssembly(name: "Cylinder",
674                                                                                    assembly: Assembly.get(1))
675        BootStrapSaveAndTest(subAssemblyInstance)
676 
677         //SubAssembly #2
678        subAssemblyInstance = new SubAssembly(name: "Gearmotor",
679                                                                                    assembly: Assembly.get(2))
680        BootStrapSaveAndTest(subAssemblyInstance)
681
682//ComponentItem
683        def componentItemInstance
684   
685        //ComponentItem #1
686        componentItemInstance = new ComponentItem(name: "Bearing",
687                                                                                            subAssembly: SubAssembly.get(1))
688        BootStrapSaveAndTest(componentItemInstance)
689
690         //ComponentItem #2
691        componentItemInstance = new ComponentItem(name: "Drive shaft oil seal",
692                                                                                            subAssembly: SubAssembly.get(2))
693        BootStrapSaveAndTest(componentItemInstance)
694
695//Asset
696        def assetInstance
697
698        //Asset #1
699        assetInstance = new Asset(name: "Print Unit 22",
700                                                        assetType: AssetType.get(1),
701                                                        systemSection: SystemSection.get(1))
702        BootStrapSaveAndTest(assetInstance)
703//        assetInstance.addToMaintenanceActions(MaintenanceAction.get(1))
704
705        //Asset #2
706        assetInstance = new Asset(name: "Print Unit 21",
707                                                        assetType: AssetType.get(1),
708                                                        systemSection: SystemSection.get(1))
709        BootStrapSaveAndTest(assetInstance)
710
711        //Asset #3
712        assetInstance = new Asset(name: "Print Unit 23",
713                                                        assetType: AssetType.get(1),
714                                                        systemSection: SystemSection.get(1))
715        BootStrapSaveAndTest(assetInstance)
716
717        //Asset #4
718        assetInstance = new Asset(name: "RO 1",
719                                                        assetType: AssetType.get(2),
720                                                        systemSection: SystemSection.get(2))
721        BootStrapSaveAndTest(assetInstance)
722
723//AssetExtendedAttributeType
724        def assetExtendedAttributeInstanceType
725
726        //AssetExtendedAttributeType #1
727        assetExtendedAttributeInstanceType = new AssetExtendedAttributeType(name: "Model Number")
728        BootStrapSaveAndTest(assetExtendedAttributeInstanceType)
729
730        //AssetExtendedAttributeType #2
731        assetExtendedAttributeInstanceType = new AssetExtendedAttributeType(name: "Purchase Cost")
732        BootStrapSaveAndTest(assetExtendedAttributeInstanceType)
733
734        //AssetExtendedAttributeType #3
735        assetExtendedAttributeInstanceType = new AssetExtendedAttributeType(name: "Serial Number")
736        BootStrapSaveAndTest(assetExtendedAttributeInstanceType)
737
738        //AssetExtendedAttributeType #4
739        assetExtendedAttributeInstanceType = new AssetExtendedAttributeType(name: "Manufactured Date")
740        BootStrapSaveAndTest(assetExtendedAttributeInstanceType)
741
742        //AssetExtendedAttributeType #5
743        assetExtendedAttributeInstanceType = new AssetExtendedAttributeType(name: "Location Description")
744        BootStrapSaveAndTest(assetExtendedAttributeInstanceType)
745
746//AssetExtendedAttribute
747        def assetExtendedAttributeInstance
748
749        //AssetExtendedAttribute #1
750        assetExtendedAttributeInstance = new AssetExtendedAttribute(value: "PU Mark 2",
751                                                                                                                    asset: Asset.get(1),
752                                                                                                                    assetExtendedAttributeType: AssetExtendedAttributeType.get(1))
753        BootStrapSaveAndTest(assetExtendedAttributeInstance)
754
755        //AssetExtendedAttribute #2
756        assetExtendedAttributeInstance = new AssetExtendedAttribute(value: "On the far side of Tank 5",
757                                                                                                                    asset: Asset.get(1),
758                                                                                                                    assetExtendedAttributeType: AssetExtendedAttributeType.get(5))
759        BootStrapSaveAndTest(assetExtendedAttributeInstance)
760
761/*************************
762Finally did it all work.
763**************************/       
764        if(BootStrapDemoDataSuccessful) {
765            println "BootStrapping demo data...successful."
766        }
767        else println "BootStrapping demo data...failed."
768    }
769
770/****************************************
771Call this function instead of .save()
772*****************************************/   
773    void BootStrapSaveAndTest(object) {
774        if(!object.save()) {
775            BootStrapDemoDataSuccessful = false
776            println "'${object}' failed to save!"
777            println object.errors
778
779        }
780    } 
781}
Note: See TracBrowser for help on using the repository browser.