Changeset 180 for trunk/grails-app/services
- Timestamp:
- Nov 4, 2009, 2:47:47 PM (16 years ago)
- Location:
- trunk/grails-app/services
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/grails-app/services/CreateDataService.groovy
r177 r180 1 1 /** 2 2 * Provides a data service to create base and demo data. 3 * Beware that most, if not all, base data is referenced by "Id" throughout the program. 4 * This allows changing the text of the 'name' property to something of the same meaning. 5 * But be sure to maintain the correct Id during creation, indicated by #1, #2 etc. 3 6 */ 4 7 class CreateDataService { 5 8 9 boolean transactional = false 10 6 11 def authenticateService 7 boolean transactional = false12 def taskService 8 13 9 14 /******************************************* … … 40 45 createBaseManufacturerType() 41 46 // Tasks 47 createBaseTaskGroups() 42 48 createBaseTaskStatus() 43 49 createBaseTaskPriorities() 44 50 createBaseTaskTypes() 51 createBaseTaskModificationTypes() 45 52 createBaseEntryTypes() 46 createBaseModificationTypes()47 53 // Inventory 48 54 createBaseInventoryTypes() … … 66 72 createDemoManufacturers() 67 73 // Tasks 68 createDemoTaskGroups() /// @todo: Perhaps this should be BaseData?69 74 createDemoTasks() 70 75 createDemoEntries() … … 383 388 *********************/ 384 389 385 def create DemoTaskGroups() {390 def createBaseTaskGroups() { 386 391 //TaskGroup 387 392 def taskGroupInstance … … 454 459 } 455 460 461 def createBaseTaskModificationTypes() { 462 463 //ModificationType 464 def taskModificationTypeInstance 465 taskModificationTypeInstance = new TaskModificationType(name:"Created").save() // #1 466 taskModificationTypeInstance = new TaskModificationType(name:"Started").save() // #2 467 taskModificationTypeInstance = new TaskModificationType(name:"Modified").save() // #3 468 taskModificationTypeInstance = new TaskModificationType(name:"Completed").save() // #4 469 taskModificationTypeInstance = new TaskModificationType(name:"Reopened").save() // #5 470 taskModificationTypeInstance = new TaskModificationType(name:"Trashed").save() // #6 471 taskModificationTypeInstance = new TaskModificationType(name:"Restored").save() // #7 472 taskModificationTypeInstance = new TaskModificationType(name:"Approved").save() // #8 473 taskModificationTypeInstance = new TaskModificationType(name:"Renege approval").save() // #9 474 } 475 456 476 def createDemoTasks() { 457 477 458 //Task459 def taskInstance478 def taskResult 479 def p = [:] 460 480 461 481 //Task #1 462 taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"), 463 taskStatus:TaskStatus.findByName("Not Started"), 464 taskPriority:TaskPriority.get(2), 465 taskType:TaskType.get(1), 466 leadPerson:Person.get(2), 467 description:"Check specific level sensor", 468 comment:"Has been noted as problematic, try recalibrating.", 469 targetStartDate:new Date()) 470 saveAndTest(taskInstance) 482 p = [taskGroup:TaskGroup.findByName("Engineering Activites"), 483 taskStatus:TaskStatus.findByName("Not Started"), 484 taskPriority:TaskPriority.get(2), 485 taskType:TaskType.get(1), 486 leadPerson:Person.get(2), 487 description:"Check specific level sensor", 488 comment:"Has been noted as problematic, try recalibrating.", 489 targetStartDate:new Date()] 490 491 taskResult = taskService.create(p) 471 492 472 493 //Task #2 473 taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"),494 p = [taskGroup:TaskGroup.findByName("Engineering Activites"), 474 495 taskStatus:TaskStatus.findByName("Not Started"), 475 496 taskPriority:TaskPriority.get(2), … … 479 500 comment:"Some help required", 480 501 targetStartDate:new Date()+1, 481 parentTask: Task.get(1)) 482 saveAndTest(taskInstance) 502 parentTask: Task.get(1)] 503 504 taskResult = taskService.create(p) 483 505 484 506 //Task #3 485 taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"),507 p = [taskGroup:TaskGroup.findByName("Engineering Activites"), 486 508 taskStatus:TaskStatus.findByName("Not Started"), 487 509 taskPriority:TaskPriority.get(2), … … 491 513 comment:"Some help required", 492 514 targetStartDate:new Date()-1, 493 parentTask: Task.get(1)) 494 saveAndTest(taskInstance) 515 parentTask: Task.get(1)] 516 517 taskResult = taskService.create(p) 495 518 496 519 //Task #4 497 taskInstance = new Task(taskGroup:TaskGroup.findByName("Engineering Activites"),520 p = [taskGroup:TaskGroup.findByName("Engineering Activites"), 498 521 taskStatus:TaskStatus.findByName("Not Started"), 499 522 taskPriority:TaskPriority.get(2), … … 503 526 comment:"Nothing else has worked.", 504 527 targetStartDate:new Date()+7, 505 parentTask: Task.get(1)) 506 saveAndTest(taskInstance) 528 parentTask: Task.get(1)] 529 530 taskResult = taskService.create(p) 507 531 508 532 //Task #5 509 taskInstance = new Task(taskGroup:TaskGroup.findByName("Production Activites"),533 p = [taskGroup:TaskGroup.findByName("Production Activites"), 510 534 taskStatus:TaskStatus.findByName("Not Started"), 511 535 taskPriority:TaskPriority.get(2), … … 514 538 description:"Production Report", 515 539 comment:"Production report for specific production run or shift", 516 targetStartDate:new Date()-7) 517 saveAndTest(taskInstance) 540 targetStartDate:new Date()-7] 541 542 taskResult = taskService.create(p) 518 543 519 544 //Task #6 520 taskInstance = new Task(taskGroup:TaskGroup.findByName("New Projects"),545 p = [taskGroup:TaskGroup.findByName("New Projects"), 521 546 taskStatus:TaskStatus.findByName("Not Started"), 522 547 taskPriority:TaskPriority.get(2), … … 525 550 description:"Make killer CMMS app", 526 551 comment:"Use Grails and get a move on!", 527 targetStartDate:new Date()-6) 528 saveAndTest(taskInstance) 552 targetStartDate:new Date()-6] 553 554 taskResult = taskService.create(p) 529 555 } 530 556 … … 575 601 durationMinute: 20) 576 602 saveAndTest(entryInstance) 577 }578 579 def createBaseModificationTypes() {580 581 //ModificationType582 def taskModificationTypeInstance583 taskModificationTypeInstance = new TaskModificationType(name:"Created").save()584 taskModificationTypeInstance = new TaskModificationType(name:"Completed").save()585 taskModificationTypeInstance = new TaskModificationType(name:"Closed").save()586 taskModificationTypeInstance = new TaskModificationType(name:"Altered").save()587 taskModificationTypeInstance = new TaskModificationType(name:"TargetDateModified").save()588 taskModificationTypeInstance = new TaskModificationType(name:"ScheduledDateModified").save()589 taskModificationTypeInstance = new TaskModificationType(name:"DescriptionModified").save()590 taskModificationTypeInstance = new TaskModificationType(name:"AssignedToModified").save()591 taskModificationTypeInstance = new TaskModificationType(name:"NameModified").save()592 603 } 593 604 -
trunk/grails-app/services/DateUtilService.groovy
r137 r180 2 2 3 3 boolean transactional = false 4 static scope = "request"5 6 4 //static scope = "request" 5 6 public static Date getToday() { 7 7 return setMidnight(new Date()) 8 8 } -
trunk/grails-app/services/TaskSearchService.groovy
r165 r180 2 2 3 3 boolean transactional = false 4 static scope = "request"5 4 6 5 def dateUtilService -
trunk/grails-app/services/TaskService.groovy
r143 r180 1 1 class TaskService { 2 2 3 boolean transactional = true 4 static scope = "request" 3 boolean transactional = false 5 4 6 5 def dateUtilService 6 def authenticateService 7 7 8 def taskDates(taskInstance, params) { 9 println "yes" 10 } 11 } 8 def create(params) { 9 Task.withTransaction { status -> 10 def result = [:] 11 def taskInstance = new Task(params) 12 result.taskInstance = taskInstance 13 14 // Get person in a safe way to avoid a null userDomain during bootstrap. 15 def userDomain = authenticateService.userDomain() 16 def person = userDomain ? Person.get(userDomain.id) : Person.get(1) 17 18 if(taskInstance.save()) { 19 def taskModification = new TaskModification(person:person, 20 taskModificationType: TaskModificationType.get(1), 21 task: taskInstance) 22 23 if(!taskModification.save()) { 24 status.setRollbackOnly() 25 taskInstance.errors.rejectValue("taskModifications", "task.modifications.failedToSave") 26 result.error = true 27 return result 28 } 29 30 return result 31 } 32 else { 33 result.error = true 34 return result 35 } 36 37 } //end withTransaction 38 } // end create() 39 40 def start() { 41 //TaskModificationType.get(2) 42 } // end start() 43 44 def update(params) { 45 Task.withTransaction { status -> 46 def result = [:] 47 result.taskInstance = Task.get(params.id) 48 if(result.taskInstance) { 49 50 // Optimistic locking check. 51 if(params.version) { 52 def version = params.version.toLong() 53 if(result.taskInstance.version > version) { 54 status.setRollbackOnly() 55 result.taskInstance.errors.rejectValue("version", "task.optimistic.locking.failure", "Another user has updated this Task while you were editing.") 56 result.error = true 57 return result 58 } 59 } 60 61 62 result.taskInstance.properties = params 63 64 if(result.taskInstance.save()) { 65 def taskModification = new TaskModification(person:Person.get(authenticateService.userDomain().id), 66 taskModificationType: TaskModificationType.get(3), 67 task: result.taskInstance) 68 if(taskModification.save()) { 69 // All went well. 70 return result 71 } 72 else { 73 status.setRollbackOnly() 74 result.taskInstance.errors.rejectValue("taskModifications", "task.modifications.failedToSave") 75 result.error = true 76 return result 77 } 78 } 79 } 80 // Something failed. 81 status.setRollbackOnly() 82 result.error = true 83 return result 84 85 } //end withTransaction 86 } // end update() 87 88 def complete() { 89 //TaskModificationType.get(4) 90 } // end complete() 91 92 def reopen() { 93 //TaskModificationType.get(5) 94 } // end reopen() 95 96 def trash() { 97 //TaskModificationType.get(6) 98 } // end trash() 99 100 def restore() { 101 //TaskModificationType.get(7) 102 } // end restore() 103 104 def approve() { 105 //TaskModificationType.get(8) 106 } // end approve() 107 108 def renegeApproval() { 109 //TaskModificationType.get(9) 110 } // end renegeApproval() 111 112 } // end TaskService
Note: See TracChangeset
for help on using the changeset viewer.