Changeset 131


Ignore:
Timestamp:
May 8, 2009, 1:01:56 AM (10 years ago)
Author:
gav
Message:

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

Location:
trunk
Files:
19 added
1 deleted
38 edited
4 moved

Legend:

Unmodified
Added
Removed
  • trunk/doc/Definitions/PreventativeMaintenance_PM.txt

    r130 r131  
    1  Planned Maintenance or PM
     1Preventative Maintenance or PM
    22
    33 * A PM is simply a task where:
    4   * Task type = "Planned Maintenance"
    5   * As with any task a PM may have a recurring schedule, actions and entries etc.
     4  * Task type = "Preventative Maintenance"
     5  * As with any task a PM may have a recurring schedule, procedure and entries etc.
    66
    77The following information can be automatically returned from the system.
    88
    99 * PM frequency = Task.taskRecurringSchedule
     10
    1011 * PM KPI's:
    11   * Total PM's = Task.findAllByTaskType("Planned Maintenance")
     12  * Total PM's = Task.findAllByTaskType("Preventative Maintenance")
    1213  * Complete PM's = Total.findAllByTaskStatus("Complete")
    1314  * PM completetion rate = Complete/Total
    1415  * Missed PM's = Total - Complete
    15  * PM parent tasks = context{TaskRecShed.task.taskType("Planned Maintenance") and Date in range}
     16
     17 * Find all Recurring PM tasks = context{TaskRecShed.task.taskType("Preventative Maintenance") and Date in range}
  • trunk/doc/Definitions/TaskActions.txt

    r77 r131  
    3838    Modification.person = userName                                     
    3939    Modification.comment = comment 
    40 }                                                           
     40}                     
     41
     42
     43Required Services:
     44TaskCopy
     45TaskGenerateSubTask                                     
  • trunk/grails-app/conf/BootStrap.groovy

    r127 r131  
    216216
    217217        taskGroupInstance = new TaskGroup(name:"Engineering Activites",
    218                       description:"Engineering daily activities")
     218                                                                            description:"Engineering daily activities")
    219219        BootStrapSaveAndTest(taskGroupInstance)
    220220
    221221        taskGroupInstance = new TaskGroup(name:"Production Activites",
    222                       description:"Production daily activities")
     222                                                                            description:"Production daily activities")
    223223        BootStrapSaveAndTest(taskGroupInstance)
    224224
    225225        taskGroupInstance = new TaskGroup(name:"New Projects",
    226                       description:" ")
     226                                                                            description:" ")
    227227        BootStrapSaveAndTest(taskGroupInstance)
    228228
     
    260260        BootStrapSaveAndTest(taskTypeInstance)
    261261
    262         taskTypeInstance = new TaskType(name:"Planned Maintenance")
     262        taskTypeInstance = new TaskType(name:"Preventative Maintenance")
    263263        BootStrapSaveAndTest(taskTypeInstance)
    264264
     
    409409        BootStrapSaveAndTest(assignedPersonInstance)
    410410
    411 //RecurringSchedule
    412         def recurringScheduleInstance
    413 
    414         //RecurringSchedule #1
    415         recurringScheduleInstance = new RecurringSchedule(recurEvery: 1,
     411//TaskRecurringSchedule
     412        def taskRecurringScheduleInstance
     413
     414        //TaskRecurringSchedule #1
     415        taskRecurringScheduleInstance = new TaskRecurringSchedule(task: Task.get(1),
     416                                                                                                    recurEvery: 1,
    416417                                                                                                    period: Period.get(1),
    417418                                                                                                    task: Task.get(1),
    418419                                                                                                    nextDueDate: new Date())
    419         BootStrapSaveAndTest(recurringScheduleInstance)
    420 
    421         //RecurringSchedule #2
    422         recurringScheduleInstance = new RecurringSchedule(recurEvery: 1,
    423                                                                                                     period: Period.get(2),
     420        BootStrapSaveAndTest(taskRecurringScheduleInstance)
     421
     422        //TaskRecurringSchedule #2
     423        taskRecurringScheduleInstance = new TaskRecurringSchedule(task: Task.get(2),
     424                                                                                                    recurEvery: 1,
     425                                                                                                    period: Period.get(1),
    424426                                                                                                    task: Task.get(2),
    425427                                                                                                    nextDueDate: new Date())
    426         BootStrapSaveAndTest(recurringScheduleInstance)
     428        BootStrapSaveAndTest(taskRecurringScheduleInstance)
    427429
    428430/*************************
     
    591593        BootStrapSaveAndTest(maintenancePolicyInstance)
    592594
    593 //PlannedMaintenance
    594         def plannedMaintenanceInstance
    595 
    596         //PM #1
    597         plannedMaintenanceInstance = new PlannedMaintenance(name: "PM1",
    598                                                                                                             recurringSchedule: RecurringSchedule.get(1))
    599         BootStrapSaveAndTest(plannedMaintenanceInstance)
    600 
    601         //PM #2
    602         plannedMaintenanceInstance = new PlannedMaintenance(name: "PM2",
    603                                                                                                             recurringSchedule: RecurringSchedule.get(1))
    604         BootStrapSaveAndTest(plannedMaintenanceInstance)
     595//TaskProcedure
     596        def taskProcedureInstance
     597
     598        taskProcedureInstance = new TaskProcedure(name: "Daily check")
     599        BootStrapSaveAndTest(taskProcedureInstance)
     600        taskProcedureInstance.addToTasks(Task.get(1))
    605601
    606602//MaintenanceAction
     
    608604
    609605        //MaintenanceAction #1
    610         maintenanceActionInstance = new MaintenanceAction(maintenanceAction: "Check all E-stops, active E-stop S1-S12 and ensure machine cannot run",
    611                                                                                                         pmStepNumber: 1,
     606        maintenanceActionInstance = new MaintenanceAction(description: "Check all E-stops, active E-stop S1-S12 and ensure machine cannot run",
     607                                                                                                        procedureStepNumber: 1,
    612608                                                                                                        maintenancePolicy: MaintenancePolicy.get(1),
    613                                                                                                         plannedMaintenance: PlannedMaintenance.get(1))
     609                                                                                                        taskProcedure: TaskProcedure.get(1))
    614610        BootStrapSaveAndTest(maintenanceActionInstance)
    615611
    616612        //MaintenanceAction #2
    617         maintenanceActionInstance = new MaintenanceAction(maintenanceAction: "Do more pushups",
    618                                                                                                         pmStepNumber: 2,
     613        maintenanceActionInstance = new MaintenanceAction(description: "Do more pushups",
     614                                                                                                        procedureStepNumber: 2,
    619615                                                                                                        maintenancePolicy: MaintenancePolicy.get(1),
    620                                                                                                         plannedMaintenance: PlannedMaintenance.get(1))
     616                                                                                                        taskProcedure: TaskProcedure.get(1))
    621617        BootStrapSaveAndTest(maintenanceActionInstance)
    622618
    623619        //MaintenanceAction #3
    624         maintenanceActionInstance = new MaintenanceAction(maintenanceAction: "Ok just one more pushup",
    625                                                                                                         pmStepNumber: 3,
     620        maintenanceActionInstance = new MaintenanceAction(description: "Ok just one more pushup",
     621                                                                                                        procedureStepNumber: 3,
    626622                                                                                                        maintenancePolicy: MaintenancePolicy.get(1),
    627                                                                                                         plannedMaintenance: PlannedMaintenance.get(1))
     623                                                                                                        taskProcedure: TaskProcedure.get(1))
    628624        BootStrapSaveAndTest(maintenanceActionInstance)
    629625                                                                                                   
     
    661657
    662658        //Assembly #1
    663         assemblyInstance = new Assembly(name: "Print Couple")
     659        assemblyInstance = new Assembly(name: "Print Couple",
     660                                                                        assetType: AssetType.get(1))
    664661        BootStrapSaveAndTest(assemblyInstance)
    665662//        assemblyInstance.addToMaintenanceActions(MaintenanceAction.get(1))
     
    667664        //Assembly #2
    668665        assemblyInstance = new Assembly(name: "Agitator",
    669                         lifeplan: LifePlan.get(1))
     666                                                                        assetType: AssetType.get(2))
    670667        BootStrapSaveAndTest(assemblyInstance)
    671668
     
    674671
    675672        //SubAssembly #1
    676         subAssemblyInstance = new SubAssembly(name: "Cylinder")
     673        subAssemblyInstance = new SubAssembly(name: "Cylinder",
     674                                                                                    assembly: Assembly.get(1))
    677675        BootStrapSaveAndTest(subAssemblyInstance)
    678676 
    679677         //SubAssembly #2
    680         subAssemblyInstance = new SubAssembly(name: "Gearmotor")
     678        subAssemblyInstance = new SubAssembly(name: "Gearmotor",
     679                                                                                    assembly: Assembly.get(2))
    681680        BootStrapSaveAndTest(subAssemblyInstance)
    682681
     
    685684   
    686685        //ComponentItem #1
    687         componentItemInstance = new ComponentItem(name: "Centre Pulley")
     686        componentItemInstance = new ComponentItem(name: "Bearing",
     687                                                                                            subAssembly: SubAssembly.get(1))
    688688        BootStrapSaveAndTest(componentItemInstance)
    689689
    690690         //ComponentItem #2
    691         componentItemInstance = new ComponentItem(name: "Bearing")
     691        componentItemInstance = new ComponentItem(name: "Drive shaft oil seal",
     692                                                                                            subAssembly: SubAssembly.get(2))
    692693        BootStrapSaveAndTest(componentItemInstance)
    693694
  • trunk/grails-app/controllers/TaskDetailedController.groovy

    r124 r131  
    2727            redirect(action:list)
    2828        }
    29         else { return [ taskInstance : taskInstance ] }
     29        else {
     30            def taskProcedureInstance = TaskProcedure.get(taskInstance?.taskProcedure?.id)
     31            return [ taskInstance : taskInstance,  taskProcedureInstance: taskProcedureInstance]
     32
     33        }
    3034    }
    3135
  • trunk/grails-app/domain/Assembly.groovy

    r121 r131  
    11class Assembly {
     2
     3    AssetType assetType
     4
    25    String name
    36    String description = ""
    47    boolean isActive = true
    58
    6     static hasMany = [assetTypes: AssetType, subAssemblies: SubAssembly, maintenanceActions: MaintenanceAction]
     9    static hasMany = [subAssemblies: SubAssembly, maintenanceActions: MaintenanceAction]
    710
    811    static belongsTo = [AssetType]
  • trunk/grails-app/domain/Asset.groovy

    r124 r131  
    88    boolean isActive = true
    99
    10     static hasMany = [maintenanceActions: MaintenanceAction, assetExtendedAttributes: AssetExtendedAttribute]
     10    static hasMany = [maintenanceActions: MaintenanceAction,
     11                                    assetExtendedAttributes: AssetExtendedAttribute]
    1112
    1213    static belongsTo = [SystemSection, AssetType]
  • trunk/grails-app/domain/ComponentItem.groovy

    r122 r131  
    11class ComponentItem {
     2
     3    SubAssembly subAssembly
    24
    35    String name
     
    57    boolean isActive = true
    68
    7     static hasMany = [subAssemblies: SubAssembly, maintenanceActions: MaintenanceAction]
     9    static hasMany = [maintenanceActions: MaintenanceAction]
    810
    911    static belongsTo = [SubAssembly]
  • trunk/grails-app/domain/MaintenanceAction.groovy

    r130 r131  
    1 class TaskAction {
    2     Task task
     1class MaintenanceAction {
     2
     3    TaskProcedure taskProcedure
    34    MaintenancePolicy maintenancePolicy
    45    SystemSection systemSection
     
    89    SubAssembly subAssembly
    910    ComponentItem componentItem
    10     String action
     11
     12    String description
    1113    String reasoning = ""
    12     Integer stepNumber
     14    Integer procedureStepNumber
    1315    boolean isActive = true
    1416
     
    1820
    1921    static constraints = {
     22        maintenancePolicy(blank:true, nullable:true)
    2023        systemSection(blank:true, nullable:true)
    2124        asset(blank:true, nullable:true)
     
    2427        subAssembly(blank:true, nullable:true)
    2528        componentItem(blank:true, nullable:true)
    26         stepNumber(blank:true, nullable:true)
     29        procedureStepNumber(blank:true, nullable:true)
    2730    }
    2831
    2932    String toString() {
    30         "${this.action}"
     33        "${this.description}"
    3134    }
    3235}
  • trunk/grails-app/domain/Period.groovy

    r122 r131  
    11class Period {
     2
    23    String period
    34    boolean isActive = true
    45
    5     static hasMany = [recurringSchedules: RecurringSchedule]
     6    static hasMany = [taskRecurringSchedules: TaskRecurringSchedule]
    67//
    78//     static belongsTo = []
  • trunk/grails-app/domain/SubAssembly.groovy

    r121 r131  
    11class SubAssembly {
     2
     3    Assembly assembly
    24
    35    String name
     
    57    boolean isActive = true
    68
    7     static hasMany = [assemblies: Assembly, componentItems: ComponentItem, maintenanceActions: MaintenanceAction]
     9    static hasMany = [componentItems: ComponentItem,
     10                                    maintenanceActions: MaintenanceAction]
    811
    912    static belongsTo = [Assembly]
  • trunk/grails-app/domain/Task.groovy

    r123 r131  
    88    Person leadPerson
    99    Asset primaryAsset
    10     RecurringSchedule recurringSchedule
     10    TaskRecurringSchedule taskRecurringSchedule
     11    TaskProcedure taskProcedure
    1112
    1213    String description
     
    2526                        inventoryMovements: InventoryMovement]
    2627
     28    static mappedBy = [taskRecurringSchedule:"task"]
     29
    2730    static belongsTo = [TaskGroup, TaskStatus, Task, Person]
    2831
    2932    static constraints = {
     33        description(blank:false,maxSize:75)
     34        comment()
    3035        targetStartDate()
    31         description(blank:false,maxSize:75)
     36        targetCompletionDate()
    3237        leadPerson()
    3338        taskPriority()
    3439        taskStatus()
    3540        parentTask(blank: true, nullable:true)
    36         comment()
    3741        primaryAsset(blank: true, nullable:true)
    38         recurringSchedule(blank: true, nullable:true)
     42        taskRecurringSchedule(blank: true, nullable:true)
     43        taskProcedure(blank: true, nullable:true)
    3944       
    4045    }
  • trunk/grails-app/domain/TaskRecurringSchedule.groovy

    r130 r131  
    22
    33    Task task
    4 //     Task lastGeneratedSubTask
     4    Task lastGeneratedSubTask
    55    Period period
    66
     
    99    Date lastGeneratedDate
    1010    Date nextDueDate
    11     boolean isActive = true
     11    boolean isEnabled = true
    1212
    1313//     static hasMany = []
     
    1616
    1717    static constraints = {
    18 //         lastGeneratedDate(blank:true, nullable:true)
     18        lastGeneratedDate(blank:true, nullable:true)
     19        lastGeneratedSubTask(blank:true, nullable:true)
    1920    }
    2021
  • trunk/grails-app/views/assembly/create.gsp

    r122 r131  
    2626                    <table>
    2727                        <tbody>
     28                       
     29                            <tr class="prop">
     30                                <td valign="top" class="name">
     31                                    <label for="assetType">Asset Type:</label>
     32                                </td>
     33                                <td valign="top" class="value ${hasErrors(bean:assemblyInstance,field:'assetType','errors')}">
     34                                    <g:select optionKey="id" from="${AssetType.list()}" name="assetType.id" value="${assemblyInstance?.assetType?.id}" ></g:select>
     35                                </td>
     36                            </tr>
    2837                       
    2938                            <tr class="prop">
  • trunk/grails-app/views/assembly/edit.gsp

    r122 r131  
    3232                            <tr class="prop">
    3333                                <td valign="top" class="name">
    34                                     <label for="assetTypes">Asset Types:</label>
     34                                    <label for="assetType">Asset Type:</label>
    3535                                </td>
    36                                 <td valign="top" class="value ${hasErrors(bean:assemblyInstance,field:'assetTypes','errors')}">
    37                                    
     36                                <td valign="top" class="value ${hasErrors(bean:assemblyInstance,field:'assetType','errors')}">
     37                                    <g:select optionKey="id" from="${AssetType.list()}" name="assetType.id" value="${assemblyInstance?.assetType?.id}" ></g:select>
    3838                                </td>
    3939                            </tr>
     
    8787                                </td>
    8888                                <td valign="top" class="value ${hasErrors(bean:assemblyInstance,field:'subAssemblies','errors')}">
    89                                     <g:select name="subAssemblies"
    90 from="${SubAssembly.list()}"
    91 size="5" multiple="yes" optionKey="id"
    92 value="${assemblyInstance?.subAssemblies}" />
     89                                   
     90<ul>
     91<g:each var="s" in="${assemblyInstance?.subAssemblies?}">
     92    <li><g:link controller="subAssembly" action="show" id="${s.id}">${s?.encodeAsHTML()}</g:link></li>
     93</g:each>
     94</ul>
     95<g:link controller="subAssembly" params="['assembly.id':assemblyInstance?.id]" action="create">Add SubAssembly</g:link>
    9396
    9497                                </td>
  • trunk/grails-app/views/assembly/list.gsp

    r122 r131  
    2424                                <g:sortableColumn property="id" title="Id" />
    2525                       
     26                                <th>Asset Type</th>
     27                           
    2628                                <g:sortableColumn property="description" title="Description" />
    2729                       
     
    3739                       
    3840                            <td><g:link action="show" id="${assemblyInstance.id}">${fieldValue(bean:assemblyInstance, field:'id')}</g:link></td>
     41                       
     42                            <td>${fieldValue(bean:assemblyInstance, field:'assetType')}</td>
    3943                       
    4044                            <td>${fieldValue(bean:assemblyInstance, field:'description')}</td>
  • trunk/grails-app/views/assembly/show.gsp

    r122 r131  
    3131                   
    3232                        <tr class="prop">
    33                             <td valign="top" class="name">Asset Types:</td>
     33                            <td valign="top" class="name">Asset Type:</td>
    3434                           
    35                             <td  valign="top" style="text-align:left;" class="value">
    36                                 <ul>
    37                                 <g:each var="a" in="${assemblyInstance.assetTypes}">
    38                                     <li><g:link controller="assetType" action="show" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
    39                                 </g:each>
    40                                 </ul>
    41                             </td>
     35                            <td valign="top" class="value"><g:link controller="assetType" action="show" id="${assemblyInstance?.assetType?.id}">${assemblyInstance?.assetType?.encodeAsHTML()}</g:link></td>
    4236                           
    4337                        </tr>
  • trunk/grails-app/views/asset/create.gsp

    r122 r131  
    2929                            <tr class="prop">
    3030                                <td valign="top" class="name">
     31                                    <label for="name">Name:</label>
     32                                </td>
     33                                <td valign="top" class="value ${hasErrors(bean:assetInstance,field:'name','errors')}">
     34                                    <input type="text" id="name" name="name" value="${fieldValue(bean:assetInstance,field:'name')}"/>
     35                                </td>
     36                            </tr>
     37                       
     38                            <tr class="prop">
     39                                <td valign="top" class="name">
    3140                                    <label for="assetType">Asset Type:</label>
    3241                                </td>
     
    5665                            <tr class="prop">
    5766                                <td valign="top" class="name">
    58                                     <label for="name">Name:</label>
    59                                 </td>
    60                                 <td valign="top" class="value ${hasErrors(bean:assetInstance,field:'name','errors')}">
    61                                     <input type="text" id="name" name="name" value="${fieldValue(bean:assetInstance,field:'name')}"/>
    62                                 </td>
    63                             </tr>
    64                        
    65                             <tr class="prop">
    66                                 <td valign="top" class="name">
    6767                                    <label for="systemSection">System Section:</label>
    6868                                </td>
  • trunk/grails-app/views/asset/edit.gsp

    r124 r131  
    2929                    <table>
    3030                        <tbody>
     31                       
     32                            <tr class="prop">
     33                                <td valign="top" class="name">
     34                                    <label for="name">Name:</label>
     35                                </td>
     36                                <td valign="top" class="value ${hasErrors(bean:assetInstance,field:'name','errors')}">
     37                                    <input type="text" id="name" name="name" value="${fieldValue(bean:assetInstance,field:'name')}"/>
     38                                </td>
     39                            </tr>
    3140                       
    3241                            <tr class="prop">
     
    91100                            <tr class="prop">
    92101                                <td valign="top" class="name">
    93                                     <label for="name">Name:</label>
    94                                 </td>
    95                                 <td valign="top" class="value ${hasErrors(bean:assetInstance,field:'name','errors')}">
    96                                     <input type="text" id="name" name="name" value="${fieldValue(bean:assetInstance,field:'name')}"/>
    97                                 </td>
    98                             </tr>
    99                        
    100                             <tr class="prop">
    101                                 <td valign="top" class="name">
    102102                                    <label for="systemSection">System Section:</label>
    103103                                </td>
  • trunk/grails-app/views/asset/list.gsp

    r122 r131  
    2424                                <g:sortableColumn property="id" title="Id" />
    2525                       
     26                                <g:sortableColumn property="name" title="Name" />
     27                       
    2628                                <th>Asset Type</th>
    2729                           
     
    2931                       
    3032                                <g:sortableColumn property="isActive" title="Is Active" />
    31                        
    32                                 <g:sortableColumn property="name" title="Name" />
    3333                       
    3434                                <th>System Section</th>
     
    4242                            <td><g:link action="show" id="${assetInstance.id}">${fieldValue(bean:assetInstance, field:'id')}</g:link></td>
    4343                       
     44                            <td>${fieldValue(bean:assetInstance, field:'name')}</td>
     45                       
    4446                            <td>${fieldValue(bean:assetInstance, field:'assetType')}</td>
    4547                       
     
    4749                       
    4850                            <td>${fieldValue(bean:assetInstance, field:'isActive')}</td>
    49                        
    50                             <td>${fieldValue(bean:assetInstance, field:'name')}</td>
    5151                       
    5252                            <td>${fieldValue(bean:assetInstance, field:'systemSection')}</td>
  • trunk/grails-app/views/asset/show.gsp

    r124 r131  
    2727                           
    2828                            <td valign="top" class="value">${fieldValue(bean:assetInstance, field:'id')}</td>
     29                           
     30                        </tr>
     31                   
     32                        <tr class="prop">
     33                            <td valign="top" class="name">Name:</td>
     34                           
     35                            <td valign="top" class="value">${fieldValue(bean:assetInstance, field:'name')}</td>
    2936                           
    3037                        </tr>
     
    7885                   
    7986                        <tr class="prop">
    80                             <td valign="top" class="name">Name:</td>
    81                            
    82                             <td valign="top" class="value">${fieldValue(bean:assetInstance, field:'name')}</td>
    83                            
    84                         </tr>
    85                    
    86                         <tr class="prop">
    8787                            <td valign="top" class="name">System Section:</td>
    8888                           
  • trunk/grails-app/views/assetType/edit.gsp

    r124 r131  
    3535                                </td>
    3636                                <td valign="top" class="value ${hasErrors(bean:assetTypeInstance,field:'assemblies','errors')}">
    37                                     <g:select name="assemblies"
    38 from="${Assembly.list()}"
    39 size="5" multiple="yes" optionKey="id"
    40 value="${assetTypeInstance?.assemblies}" />
     37                                   
     38<ul>
     39<g:each var="a" in="${assetTypeInstance?.assemblies?}">
     40    <li><g:link controller="assembly" action="show" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
     41</g:each>
     42</ul>
     43<g:link controller="assembly" params="['assetType.id':assetTypeInstance?.id]" action="create">Add Assembly</g:link>
    4144
    4245                                </td>
  • trunk/grails-app/views/componentItem/create.gsp

    r122 r131  
    5454                            </tr>
    5555                       
     56                            <tr class="prop">
     57                                <td valign="top" class="name">
     58                                    <label for="subAssembly">Sub Assembly:</label>
     59                                </td>
     60                                <td valign="top" class="value ${hasErrors(bean:componentItemInstance,field:'subAssembly','errors')}">
     61                                    <g:select optionKey="id" from="${SubAssembly.list()}" name="subAssembly.id" value="${componentItemInstance?.subAssembly?.id}" ></g:select>
     62                                </td>
     63                            </tr>
     64                       
    5665                        </tbody>
    5766                    </table>
  • trunk/grails-app/views/componentItem/edit.gsp

    r122 r131  
    7575                            <tr class="prop">
    7676                                <td valign="top" class="name">
    77                                     <label for="subAssemblies">Sub Assemblies:</label>
     77                                    <label for="subAssembly">Sub Assembly:</label>
    7878                                </td>
    79                                 <td valign="top" class="value ${hasErrors(bean:componentItemInstance,field:'subAssemblies','errors')}">
    80                                    
     79                                <td valign="top" class="value ${hasErrors(bean:componentItemInstance,field:'subAssembly','errors')}">
     80                                    <g:select optionKey="id" from="${SubAssembly.list()}" name="subAssembly.id" value="${componentItemInstance?.subAssembly?.id}" ></g:select>
    8181                                </td>
    8282                            </tr>
  • trunk/grails-app/views/componentItem/list.gsp

    r122 r131  
    3030                                <g:sortableColumn property="name" title="Name" />
    3131                       
     32                                <th>Sub Assembly</th>
     33                           
    3234                        </tr>
    3335                    </thead>
     
    4446                            <td>${fieldValue(bean:componentItemInstance, field:'name')}</td>
    4547                       
     48                            <td>${fieldValue(bean:componentItemInstance, field:'subAssembly')}</td>
     49                       
    4650                        </tr>
    4751                    </g:each>
  • trunk/grails-app/views/componentItem/show.gsp

    r122 r131  
    6565                   
    6666                        <tr class="prop">
    67                             <td valign="top" class="name">Sub Assemblies:</td>
     67                            <td valign="top" class="name">Sub Assembly:</td>
    6868                           
    69                             <td  valign="top" style="text-align:left;" class="value">
    70                                 <ul>
    71                                 <g:each var="s" in="${componentItemInstance.subAssemblies}">
    72                                     <li><g:link controller="subAssembly" action="show" id="${s.id}">${s?.encodeAsHTML()}</g:link></li>
    73                                 </g:each>
    74                                 </ul>
    75                             </td>
     69                            <td valign="top" class="value"><g:link controller="subAssembly" action="show" id="${componentItemInstance?.subAssembly?.id}">${componentItemInstance?.subAssembly?.encodeAsHTML()}</g:link></td>
    7670                           
    7771                        </tr>
  • trunk/grails-app/views/subAssembly/create.gsp

    r122 r131  
    2626                    <table>
    2727                        <tbody>
     28                       
     29                            <tr class="prop">
     30                                <td valign="top" class="name">
     31                                    <label for="assembly">Assembly:</label>
     32                                </td>
     33                                <td valign="top" class="value ${hasErrors(bean:subAssemblyInstance,field:'assembly','errors')}">
     34                                    <g:select optionKey="id" from="${Assembly.list()}" name="assembly.id" value="${subAssemblyInstance?.assembly?.id}" ></g:select>
     35                                </td>
     36                            </tr>
    2837                       
    2938                            <tr class="prop">
  • trunk/grails-app/views/subAssembly/edit.gsp

    r122 r131  
    3232                            <tr class="prop">
    3333                                <td valign="top" class="name">
    34                                     <label for="assemblies">Assemblies:</label>
     34                                    <label for="assembly">Assembly:</label>
    3535                                </td>
    36                                 <td valign="top" class="value ${hasErrors(bean:subAssemblyInstance,field:'assemblies','errors')}">
    37                                    
     36                                <td valign="top" class="value ${hasErrors(bean:subAssemblyInstance,field:'assembly','errors')}">
     37                                    <g:select optionKey="id" from="${Assembly.list()}" name="assembly.id" value="${subAssemblyInstance?.assembly?.id}" ></g:select>
    3838                                </td>
    3939                            </tr>
     
    4444                                </td>
    4545                                <td valign="top" class="value ${hasErrors(bean:subAssemblyInstance,field:'componentItems','errors')}">
    46                                     <g:select name="componentItems"
    47 from="${ComponentItem.list()}"
    48 size="5" multiple="yes" optionKey="id"
    49 value="${subAssemblyInstance?.componentItems}" />
     46                                   
     47<ul>
     48<g:each var="c" in="${subAssemblyInstance?.componentItems?}">
     49    <li><g:link controller="componentItem" action="show" id="${c.id}">${c?.encodeAsHTML()}</g:link></li>
     50</g:each>
     51</ul>
     52<g:link controller="componentItem" params="['subAssembly.id':subAssemblyInstance?.id]" action="create">Add ComponentItem</g:link>
    5053
    5154                                </td>
  • trunk/grails-app/views/subAssembly/list.gsp

    r122 r131  
    2424                                <g:sortableColumn property="id" title="Id" />
    2525                       
     26                                <th>Assembly</th>
     27                           
    2628                                <g:sortableColumn property="description" title="Description" />
    2729                       
     
    3739                       
    3840                            <td><g:link action="show" id="${subAssemblyInstance.id}">${fieldValue(bean:subAssemblyInstance, field:'id')}</g:link></td>
     41                       
     42                            <td>${fieldValue(bean:subAssemblyInstance, field:'assembly')}</td>
    3943                       
    4044                            <td>${fieldValue(bean:subAssemblyInstance, field:'description')}</td>
  • trunk/grails-app/views/subAssembly/show.gsp

    r122 r131  
    3131                   
    3232                        <tr class="prop">
    33                             <td valign="top" class="name">Assemblies:</td>
     33                            <td valign="top" class="name">Assembly:</td>
    3434                           
    35                             <td  valign="top" style="text-align:left;" class="value">
    36                                 <ul>
    37                                 <g:each var="a" in="${subAssemblyInstance.assemblies}">
    38                                     <li><g:link controller="assembly" action="show" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
    39                                 </g:each>
    40                                 </ul>
    41                             </td>
     35                            <td valign="top" class="value"><g:link controller="assembly" action="show" id="${subAssemblyInstance?.assembly?.id}">${subAssemblyInstance?.assembly?.encodeAsHTML()}</g:link></td>
    4236                           
    4337                        </tr>
  • trunk/grails-app/views/task/create.gsp

    r122 r131  
    2929                            <tr class="prop">
    3030                                <td valign="top" class="name">
     31                                    <label for="description">Description:</label>
     32                                </td>
     33                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'description','errors')}">
     34                                    <input type="text" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
     35                                </td>
     36                            </tr>
     37                       
     38                            <tr class="prop">
     39                                <td valign="top" class="name">
     40                                    <label for="comment">Comment:</label>
     41                                </td>
     42                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'comment','errors')}">
     43                                    <input type="text" id="comment" name="comment" value="${fieldValue(bean:taskInstance,field:'comment')}"/>
     44                                </td>
     45                            </tr>
     46                       
     47                            <tr class="prop">
     48                                <td valign="top" class="name">
    3149                                    <label for="targetStartDate">Target Start Date:</label>
    3250                                </td>
     
    3856                            <tr class="prop">
    3957                                <td valign="top" class="name">
    40                                     <label for="description">Description:</label>
     58                                    <label for="targetCompletionDate">Target Completion Date:</label>
    4159                                </td>
    42                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'description','errors')}">
    43                                     <input type="text" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
     60                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetCompletionDate','errors')}">
     61                                    <g:datePicker name="targetCompletionDate" value="${taskInstance?.targetCompletionDate}" ></g:datePicker>
    4462                                </td>
    4563                            </tr>
     
    83101                            <tr class="prop">
    84102                                <td valign="top" class="name">
    85                                     <label for="comment">Comment:</label>
     103                                    <label for="primaryAsset">Primary Asset:</label>
    86104                                </td>
    87                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'comment','errors')}">
    88                                     <input type="text" id="comment" name="comment" value="${fieldValue(bean:taskInstance,field:'comment')}"/>
     105                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'primaryAsset','errors')}">
     106                                    <g:select optionKey="id" from="${Asset.list()}" name="primaryAsset.id" value="${taskInstance?.primaryAsset?.id}" noSelection="['null':'']"></g:select>
    89107                                </td>
    90108                            </tr>
     
    92110                            <tr class="prop">
    93111                                <td valign="top" class="name">
    94                                     <label for="primaryAsset">Primary Asset:</label>
     112                                    <label for="taskRecurringSchedule">Task Recurring Schedule:</label>
    95113                                </td>
    96                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'primaryAsset','errors')}">
    97                                     <g:select optionKey="id" from="${Asset.list()}" name="primaryAsset.id" value="${taskInstance?.primaryAsset?.id}" noSelection="['null':'']"></g:select>
     114                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskRecurringSchedule','errors')}">
     115                                    <g:select optionKey="id" from="${TaskRecurringSchedule.list()}" name="taskRecurringSchedule.id" value="${taskInstance?.taskRecurringSchedule?.id}" noSelection="['null':'']"></g:select>
     116                                </td>
     117                            </tr>
     118                       
     119                            <tr class="prop">
     120                                <td valign="top" class="name">
     121                                    <label for="taskProcedure">Task Procedure:</label>
     122                                </td>
     123                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskProcedure','errors')}">
     124                                    <g:select optionKey="id" from="${TaskProcedure.list()}" name="taskProcedure.id" value="${taskInstance?.taskProcedure?.id}" noSelection="['null':'']"></g:select>
    98125                                </td>
    99126                            </tr>
     
    128155                            <tr class="prop">
    129156                                <td valign="top" class="name">
    130                                     <label for="recurringSchedule">Recurring Schedule:</label>
    131                                 </td>
    132                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'recurringSchedule','errors')}">
    133                                     <g:select optionKey="id" from="${RecurringSchedule.list()}" name="recurringSchedule.id" value="${taskInstance?.recurringSchedule?.id}" ></g:select>
    134                                 </td>
    135                             </tr>
    136                        
    137                             <tr class="prop">
    138                                 <td valign="top" class="name">
    139                                     <label for="targetCompletionDate">Target Completion Date:</label>
    140                                 </td>
    141                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetCompletionDate','errors')}">
    142                                     <g:datePicker name="targetCompletionDate" value="${taskInstance?.targetCompletionDate}" ></g:datePicker>
    143                                 </td>
    144                             </tr>
    145                        
    146                             <tr class="prop">
    147                                 <td valign="top" class="name">
    148157                                    <label for="taskGroup">Task Group:</label>
    149158                                </td>
  • trunk/grails-app/views/task/edit.gsp

    r122 r131  
    3232                            <tr class="prop">
    3333                                <td valign="top" class="name">
     34                                    <label for="description">Description:</label>
     35                                </td>
     36                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'description','errors')}">
     37                                    <input type="text" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
     38                                </td>
     39                            </tr>
     40                       
     41                            <tr class="prop">
     42                                <td valign="top" class="name">
     43                                    <label for="comment">Comment:</label>
     44                                </td>
     45                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'comment','errors')}">
     46                                    <input type="text" id="comment" name="comment" value="${fieldValue(bean:taskInstance,field:'comment')}"/>
     47                                </td>
     48                            </tr>
     49                       
     50                            <tr class="prop">
     51                                <td valign="top" class="name">
    3452                                    <label for="targetStartDate">Target Start Date:</label>
    3553                                </td>
     
    4159                            <tr class="prop">
    4260                                <td valign="top" class="name">
    43                                     <label for="description">Description:</label>
    44                                 </td>
    45                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'description','errors')}">
    46                                     <input type="text" maxlength="75" id="description" name="description" value="${fieldValue(bean:taskInstance,field:'description')}"/>
     61                                    <label for="targetCompletionDate">Target Completion Date:</label>
     62                                </td>
     63                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetCompletionDate','errors')}">
     64                                    <g:datePicker name="targetCompletionDate" value="${taskInstance?.targetCompletionDate}" ></g:datePicker>
    4765                                </td>
    4866                            </tr>
     
    86104                            <tr class="prop">
    87105                                <td valign="top" class="name">
    88                                     <label for="comment">Comment:</label>
    89                                 </td>
    90                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'comment','errors')}">
    91                                     <input type="text" id="comment" name="comment" value="${fieldValue(bean:taskInstance,field:'comment')}"/>
    92                                 </td>
    93                             </tr>
    94                        
    95                             <tr class="prop">
    96                                 <td valign="top" class="name">
    97106                                    <label for="primaryAsset">Primary Asset:</label>
    98107                                </td>
    99108                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'primaryAsset','errors')}">
    100109                                    <g:select optionKey="id" from="${Asset.list()}" name="primaryAsset.id" value="${taskInstance?.primaryAsset?.id}" noSelection="['null':'']"></g:select>
     110                                </td>
     111                            </tr>
     112                       
     113                            <tr class="prop">
     114                                <td valign="top" class="name">
     115                                    <label for="taskRecurringSchedule">Task Recurring Schedule:</label>
     116                                </td>
     117                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskRecurringSchedule','errors')}">
     118                                    <g:select optionKey="id" from="${TaskRecurringSchedule.list()}" name="taskRecurringSchedule.id" value="${taskInstance?.taskRecurringSchedule?.id}" noSelection="['null':'']"></g:select>
     119                                </td>
     120                            </tr>
     121                       
     122                            <tr class="prop">
     123                                <td valign="top" class="name">
     124                                    <label for="taskProcedure">Task Procedure:</label>
     125                                </td>
     126                                <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'taskProcedure','errors')}">
     127                                    <g:select optionKey="id" from="${TaskProcedure.list()}" name="taskProcedure.id" value="${taskInstance?.taskProcedure?.id}" noSelection="['null':'']"></g:select>
    101128                                </td>
    102129                            </tr>
     
    192219                            <tr class="prop">
    193220                                <td valign="top" class="name">
    194                                     <label for="recurringSchedule">Recurring Schedule:</label>
    195                                 </td>
    196                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'recurringSchedule','errors')}">
    197                                     <g:select optionKey="id" from="${RecurringSchedule.list()}" name="recurringSchedule.id" value="${taskInstance?.recurringSchedule?.id}" ></g:select>
    198                                 </td>
    199                             </tr>
    200                        
    201                             <tr class="prop">
    202                                 <td valign="top" class="name">
    203221                                    <label for="subTasks">Sub Tasks:</label>
    204222                                </td>
     
    212230<g:link controller="task" params="['task.id':taskInstance?.id]" action="create">Add Task</g:link>
    213231
    214                                 </td>
    215                             </tr>
    216                        
    217                             <tr class="prop">
    218                                 <td valign="top" class="name">
    219                                     <label for="targetCompletionDate">Target Completion Date:</label>
    220                                 </td>
    221                                 <td valign="top" class="value ${hasErrors(bean:taskInstance,field:'targetCompletionDate','errors')}">
    222                                     <g:datePicker name="targetCompletionDate" value="${taskInstance?.targetCompletionDate}" ></g:datePicker>
    223232                                </td>
    224233                            </tr>
  • trunk/grails-app/views/task/list.gsp

    r96 r131  
    2424                                <g:sortableColumn property="id" title="Id" />
    2525                       
     26                                <g:sortableColumn property="description" title="Description" />
     27                       
     28                                <g:sortableColumn property="comment" title="Comment" />
     29                       
    2630                                <g:sortableColumn property="targetStartDate" title="Target Start Date" />
    2731                       
    28                                 <g:sortableColumn property="description" title="Description" />
     32                                <g:sortableColumn property="targetCompletionDate" title="Target Completion Date" />
    2933                       
    3034                                <th>Lead Person</th>
    31                            
    32                                 <th>Task Priority</th>
    33                            
    34                                 <th>Task Status</th>
    3535                           
    3636                        </tr>
     
    4242                            <td><g:link action="show" id="${taskInstance.id}">${fieldValue(bean:taskInstance, field:'id')}</g:link></td>
    4343                       
     44                            <td>${fieldValue(bean:taskInstance, field:'description')}</td>
     45                       
     46                            <td>${fieldValue(bean:taskInstance, field:'comment')}</td>
     47                       
    4448                            <td>${fieldValue(bean:taskInstance, field:'targetStartDate')}</td>
    4549                       
    46                             <td>${fieldValue(bean:taskInstance, field:'description')}</td>
     50                            <td>${fieldValue(bean:taskInstance, field:'targetCompletionDate')}</td>
    4751                       
    4852                            <td>${fieldValue(bean:taskInstance, field:'leadPerson')}</td>
    49                        
    50                             <td>${fieldValue(bean:taskInstance, field:'taskPriority')}</td>
    51                        
    52                             <td>${fieldValue(bean:taskInstance, field:'taskStatus')}</td>
    5353                       
    5454                        </tr>
  • trunk/grails-app/views/task/show.gsp

    r122 r131  
    3131                   
    3232                        <tr class="prop">
     33                            <td valign="top" class="name">Description:</td>
     34                           
     35                            <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'description')}</td>
     36                           
     37                        </tr>
     38                   
     39                        <tr class="prop">
     40                            <td valign="top" class="name">Comment:</td>
     41                           
     42                            <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
     43                           
     44                        </tr>
     45                   
     46                        <tr class="prop">
    3347                            <td valign="top" class="name">Target Start Date:</td>
    3448                           
     
    3852                   
    3953                        <tr class="prop">
    40                             <td valign="top" class="name">Description:</td>
    41                            
    42                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'description')}</td>
     54                            <td valign="top" class="name">Target Completion Date:</td>
     55                           
     56                            <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'targetCompletionDate')}</td>
    4357                           
    4458                        </tr>
     
    7387                   
    7488                        <tr class="prop">
    75                             <td valign="top" class="name">Comment:</td>
    76                            
    77                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
    78                            
    79                         </tr>
    80                    
    81                         <tr class="prop">
    8289                            <td valign="top" class="name">Primary Asset:</td>
    8390                           
    8491                            <td valign="top" class="value"><g:link controller="asset" action="show" id="${taskInstance?.primaryAsset?.id}">${taskInstance?.primaryAsset?.encodeAsHTML()}</g:link></td>
     92                           
     93                        </tr>
     94                   
     95                        <tr class="prop">
     96                            <td valign="top" class="name">Task Recurring Schedule:</td>
     97                           
     98                            <td valign="top" class="value"><g:link controller="taskRecurringSchedule" action="show" id="${taskInstance?.taskRecurringSchedule?.id}">${taskInstance?.taskRecurringSchedule?.encodeAsHTML()}</g:link></td>
     99                           
     100                        </tr>
     101                   
     102                        <tr class="prop">
     103                            <td valign="top" class="name">Task Procedure:</td>
     104                           
     105                            <td valign="top" class="value"><g:link controller="taskProcedure" action="show" id="${taskInstance?.taskProcedure?.id}">${taskInstance?.taskProcedure?.encodeAsHTML()}</g:link></td>
    85106                           
    86107                        </tr>
     
    160181                   
    161182                        <tr class="prop">
    162                             <td valign="top" class="name">Recurring Schedule:</td>
    163                            
    164                             <td valign="top" class="value"><g:link controller="recurringSchedule" action="show" id="${taskInstance?.recurringSchedule?.id}">${taskInstance?.recurringSchedule?.encodeAsHTML()}</g:link></td>
    165                            
    166                         </tr>
    167                    
    168                         <tr class="prop">
    169183                            <td valign="top" class="name">Sub Tasks:</td>
    170184                           
     
    176190                                </ul>
    177191                            </td>
    178                            
    179                         </tr>
    180                    
    181                         <tr class="prop">
    182                             <td valign="top" class="name">Target Completion Date:</td>
    183                            
    184                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'targetCompletionDate')}</td>
    185192                           
    186193                        </tr>
  • trunk/grails-app/views/taskDetailed/show.gsp

    r126 r131  
    1818
    1919
    20 
    2120            <richui:tabView id="tabView">
     21
    2222                <richui:tabLabels>
    2323                    <richui:tabLabel selected="true" title="Task" />
     24                    <richui:tabLabel title="Procedure" />
    2425                    <richui:tabLabel title="Recurrence" />
     26                    <richui:tabLabel title="Inventory" />
    2527                    <richui:tabLabel title="Sub Tasks" />
    26                     <richui:tabLabel title="PM" />
    2728                </richui:tabLabels>
     29
    2830                <richui:tabContents>
    29                     <richui:tabContent>
    30 
    31             <div class="dialog">
    32                 <table>
    33                     <tbody>
    34 
    35                    
    36                         <tr class="prop">
    37                             <td valign="top" class="name">Id:</td>
    38                            
    39                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'id')}</td>
    40                            
    41                         </tr>
    42 
    43                         <tr class="prop">
    44                             <td valign="top" class="name">Description:</td>
    45                            
    46                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'description')}</td>
    47                            
    48                         </tr>
    49 
    50                         <tr class="prop">
    51                             <td valign="top" class="name">Comment:</td>
    52                            
    53                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
    54                            
    55                         </tr>
    56                    
    57                         <tr class="prop">
    58                             <td valign="top" class="name">Target Start Date:</td>
    59                            
    60                             <td valign="top" class="value"><g:formatDate date="${taskInstance.targetStartDate}" format="EEE, dd MMM yyyy"/></td>
    61                            
    62                         </tr>
    63 
    64                         <tr class="prop">
    65                             <td valign="top" class="name">Target Completion Date:</td>
    66                            
    67                             <td valign="top" class="value"><g:formatDate date="${taskInstance.targetCompletionDate}" format="EEE, dd MMM yyyy"/></td>
    68                            
    69                         </tr>
    70                    
    71                         <tr class="prop">
    72                             <td valign="top" class="name">Lead Person:</td>
    73                            
    74                             <td valign="top" class="value">${taskInstance?.leadPerson?.encodeAsHTML()}</td>
    75                            
    76                         </tr>
    77                    
    78                         <tr class="prop">
    79                             <td valign="top" class="name">Task Priority:</td>
    80                            
    81                             <td valign="top" class="value">${taskInstance?.taskPriority?.encodeAsHTML()}</td>
    82                            
    83                         </tr>
    84                    
    85                         <tr class="prop">
    86                             <td valign="top" class="name">Task Status:</td>
    87                            
    88                             <td valign="top" class="value">${taskInstance?.taskStatus?.encodeAsHTML()}</td>
    89                            
    90                         </tr>
    91                    
    92                         <tr class="prop">
    93                             <td valign="top" class="name">Is Active:</td>
    94                            
    95                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isActive')}</td>
    96                            
    97                         </tr>
    98                    
    99                         <tr class="prop">
    100                             <td valign="top" class="name">Is Approved:</td>
    101                            
    102                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isApproved')}</td>
    103                            
    104                         </tr>
    105                    
    106                         <tr class="prop">
    107                             <td valign="top" class="name">Is Scheduled:</td>
    108                            
    109                             <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isScheduled')}</td>
    110                            
    111                         </tr>
    112 
    113                         <tr class="prop">
    114                             <td valign="top" class="name">Parent Task:</td>
    115                            
    116                             <td valign="top" class="value"><g:link controller="taskDetailed" action="show" id="${taskInstance?.parentTask?.id}">${taskInstance?.parentTask?.encodeAsHTML()}</g:link></td>
    117                            
    118                         </tr>
    119                    
    120                         <tr class="prop">
    121                             <td valign="top" class="name">Task Group:</td>
    122                            
    123                             <td valign="top" class="value">${taskInstance?.taskGroup?.encodeAsHTML()}</td>
    124                            
    125                         </tr>
    126                    
    127                         <tr class="prop">
    128                             <td valign="top" class="name">Task Type:</td>
    129                            
    130                             <td valign="top" class="value">${taskInstance?.taskType?.encodeAsHTML()}</td>
    131                            
    132                         </tr>
    133 
    134                         <tr class="prop">
    135                             <td valign="top" class="name">Assigned Persons:</td>
    136                            
    137                             <td  valign="top" style="text-align:left;" class="value">
    138                                 <ul>
    139                                 <g:each var="a" in="${taskInstance.assignedPersons}">
    140                                     <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
     31
     32<!-- Start Task tab -->
     33                    <richui:tabContent>
     34           
     35                        <div class="dialog">
     36                            <table>
     37                                <tbody>
     38           
     39                               
     40                                    <tr class="prop">
     41                                        <td valign="top" class="name">Id:</td>
     42                                       
     43                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'id')}</td>
     44                                       
     45                                    </tr>
     46           
     47                                    <tr class="prop">
     48                                        <td valign="top" class="name">Description:</td>
     49                                       
     50                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'description')}</td>
     51                                       
     52                                    </tr>
     53           
     54                                    <tr class="prop">
     55                                        <td valign="top" class="name">Comment:</td>
     56                                       
     57                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
     58                                       
     59                                    </tr>
     60                               
     61                                    <tr class="prop">
     62                                        <td valign="top" class="name">Target Start Date:</td>
     63                                       
     64                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetStartDate}" format="EEE, dd MMM yyyy"/></td>
     65                                       
     66                                    </tr>
     67           
     68                                    <tr class="prop">
     69                                        <td valign="top" class="name">Target Completion Date:</td>
     70                                       
     71                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetCompletionDate}" format="EEE, dd MMM yyyy"/></td>
     72                                       
     73                                    </tr>
     74                               
     75                                    <tr class="prop">
     76                                        <td valign="top" class="name">Lead Person:</td>
     77                                       
     78                                        <td valign="top" class="value">${taskInstance?.leadPerson?.encodeAsHTML()}</td>
     79                                       
     80                                    </tr>
     81                               
     82                                    <tr class="prop">
     83                                        <td valign="top" class="name">Task Priority:</td>
     84                                       
     85                                        <td valign="top" class="value">${taskInstance?.taskPriority?.encodeAsHTML()}</td>
     86                                       
     87                                    </tr>
     88                               
     89                                    <tr class="prop">
     90                                        <td valign="top" class="name">Task Status:</td>
     91                                       
     92                                        <td valign="top" class="value">${taskInstance?.taskStatus?.encodeAsHTML()}</td>
     93                                       
     94                                    </tr>
     95                               
     96                                    <tr class="prop">
     97                                        <td valign="top" class="name">Is Active:</td>
     98                                       
     99                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isActive')}</td>
     100                                       
     101                                    </tr>
     102                               
     103                                    <tr class="prop">
     104                                        <td valign="top" class="name">Is Approved:</td>
     105                                       
     106                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isApproved')}</td>
     107                                       
     108                                    </tr>
     109                               
     110                                    <tr class="prop">
     111                                        <td valign="top" class="name">Is Scheduled:</td>
     112                                       
     113                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isScheduled')}</td>
     114                                       
     115                                    </tr>
     116           
     117                                    <tr class="prop">
     118                                        <td valign="top" class="name">Parent Task:</td>
     119                                       
     120                                        <td valign="top" class="value"><g:link controller="taskDetailed" action="show" id="${taskInstance?.parentTask?.id}">${taskInstance?.parentTask?.encodeAsHTML()}</g:link></td>
     121                                       
     122                                    </tr>
     123                               
     124                                    <tr class="prop">
     125                                        <td valign="top" class="name">Task Group:</td>
     126                                       
     127                                        <td valign="top" class="value">${taskInstance?.taskGroup?.encodeAsHTML()}</td>
     128                                       
     129                                    </tr>
     130                               
     131                                    <tr class="prop">
     132                                        <td valign="top" class="name">Task Type:</td>
     133                                       
     134                                        <td valign="top" class="value">${taskInstance?.taskType?.encodeAsHTML()}</td>
     135                                       
     136                                    </tr>
     137           
     138                                    <tr class="prop">
     139                                        <td valign="top" class="name">Assigned Persons:</td>
     140                                       
     141                                        <td  valign="top" style="text-align:left;" class="value">
     142                                            <ul>
     143                                            <g:each var="a" in="${taskInstance.assignedPersons}">
     144                                                <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
     145                                            </g:each>
     146                                            </ul>
     147                                        </td>
     148                                       
     149                                    </tr>
     150                               
     151                                </tbody>
     152                            </table>
     153                        </div>
     154           
     155           
     156                        <div class="buttons">
     157                            <g:form>
     158                                <input type="hidden" name="id" value="${taskInstance?.id}" />
     159                                <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
     160                                <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
     161                            </g:form>
     162                        </div>
     163           
     164                        <div class="list">
     165                            <h1>Faults</h1>
     166                            <table>
     167                                <thead>
     168                                    <tr>
     169                                        <th>Comment</th>
     170                                        <th>Date Done</th>
     171                                        <th>Duration</th>
     172                                        <th>Entered By</th>
     173                                        <th></th>
     174           
     175            <!--                            <g:sortableColumn property="comment" title="Comment" />
     176                                   
     177                                        <g:sortableColumn property="dateDone" title="Date Done" />
     178                                   
     179                                        <g:sortableColumn property="enteredBy" title="Entered By" />-->
     180                                    </tr>
     181                                </thead>
     182                                <tbody>
     183                                <g:each in="${taskInstance?.entries}" status="i" var="entry">
     184                                    <g:if test="${entry.entryType == EntryType.findByName('Fault')}">
     185                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
     186                                       
     187                                            <td style="width:65%">${entry.comment}</td>
     188                                            <td><g:formatDate date="${entry.dateDone}" format="EEE, dd MMM yyyy"/></td>
     189                                            <td>${entry.durationHour}:${entry.durationMinute}</td>
     190                                            <td>${entry.enteredBy}</td>
     191           
     192                                            <td>
     193                                                <g:link controller="entryDetailed" action="edit" id="${entry.id}">
     194                                                    <img  src="${createLinkTo(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
     195                                                </g:link>
     196                                            </td>
     197           
     198                                        </tr>
     199                                    </g:if>
    141200                                </g:each>
    142                                 </ul>
    143                             </td>
    144                            
    145                         </tr>
    146                    
    147                     </tbody>
    148                 </table>
    149             </div>
    150 
    151 
    152             <div class="buttons">
    153                 <g:form>
    154                     <input type="hidden" name="id" value="${taskInstance?.id}" />
    155                     <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
    156                     <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
    157                 </g:form>
    158             </div>
    159 
    160             <div class="list">
    161                 <h1>Faults</h1>
    162                 <table>
    163                     <thead>
    164                         <tr>
    165                             <th>Comment</th>
    166                             <th>Date Done</th>
    167                             <th>Duration</th>
    168                             <th>Entered By</th>
    169                             <th></th>
    170 
    171 <!--                            <g:sortableColumn property="comment" title="Comment" />
    172                        
    173                             <g:sortableColumn property="dateDone" title="Date Done" />
    174                        
    175                             <g:sortableColumn property="enteredBy" title="Entered By" />-->
    176                         </tr>
    177                     </thead>
    178                     <tbody>
    179                     <g:each in="${taskInstance?.entries}" status="i" var="entry">
    180                         <g:if test="${entry.entryType == EntryType.findByName('Fault')}">
    181                             <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
    182                            
    183                                 <td style="width:65%">${entry.comment}</td>
    184                                 <td><g:formatDate date="${entry.dateDone}" format="EEE, dd MMM yyyy"/></td>
    185                                 <td>${entry.durationHour}:${entry.durationMinute}</td>
    186                                 <td>${entry.enteredBy}</td>
    187 
    188                                 <td>
    189                                     <g:link controller="entryDetailed" action="edit" id="${entry.id}">
    190                                         <img  src="${createLinkTo(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
    191                                     </g:link>
    192                                 </td>
    193 
    194                             </tr>
    195                         </g:if>
    196                     </g:each>
    197                     </tbody>
    198                 </table>
    199             </div>
    200 
    201             <div class="list">
    202                 <h1>Work Done</h1>
    203                 <table>
    204                     <thead>
    205                         <tr>
    206                             <th>Comment</th>
    207                             <th>Date Done</th>
    208                             <th>Duration</th>
    209                             <th>Entered By</th>
    210                             <th></th>
    211 
    212 <!--                            <g:sortableColumn property="commentW" title="Comment" />
    213                        
    214                             <g:sortableColumn property="dateDoneW" title="Date Done" />
    215                        
    216                             <g:sortableColumn property="enteredByW" title="Entered By" />-->
    217                         </tr>
    218                     </thead>
    219                     <tbody>
    220                     <g:each in="${taskInstance?.entries}" status="i" var="entry">
    221                         <g:if test="${entry.entryType == EntryType.findByName('WorkDone')}">
    222                             <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
    223 
    224                                 <td width="65%">${entry.comment}</td>
    225                                 <td><g:formatDate date="${entry.dateDone}" format="EEE, dd MMM yyyy"/></td>
    226                                 <td>${entry.durationHour}:${entry.durationMinute}</td>
    227                                 <td>${entry.enteredBy}</td>
    228 
    229                                 <td>
    230                                     <g:link controller="entryDetailed" action="edit" id="${entry.id}">
    231                                         <img  src="${createLinkTo(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
    232                                     </g:link>
    233                                 </td>
    234 
    235                             </tr>
    236                         </g:if>
    237                     </g:each>
    238                     </tbody>
    239                 </table>
    240             </div>
    241 
    242             <br />
    243 
    244             <div class="buttons">
    245                 <g:form controller="entryDetailed">
    246                     <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
    247                     <span class="button">
    248                         <g:actionSubmit value="Add Entry" action="create"  class="add"/>
    249                     </span>
    250                 </g:form>
    251             </div>
    252         </richui:tabContent>
    253 
    254         <richui:tabContent>
    255            <div class="dialog">
    256                 <table>
    257                     <tbody>
    258                         <tr class="prop">
    259                             <td valign="top" class="name">Recurring Schedule:</td>
    260                            
    261                             <td valign="top" class="value">${taskInstance.recurringSchedule?.encodeAsHTML()}</td>
    262                            
    263                         </tr>
    264 
    265                         <tr class="prop">
    266                             <td valign="top" class="name">Start Date:</td>
    267                            
    268                             <td valign="top" class="value">${taskInstance.recurringSchedule?.startDate}</td>
    269                            
    270                         </tr>
    271 
    272                         <tr class="prop">
    273                             <td valign="top" class="name">Next Due Date:</td>
    274                            
    275                             <td valign="top" class="value">${taskInstance.recurringSchedule?.nextDueDate}</td>
    276                            
    277                         </tr>
    278 
    279                         <tr class="prop">
    280                             <td valign="top" class="name">Last Excecuted Date:</td>
    281                            
    282                             <td valign="top" class="value">${taskInstance.recurringSchedule?.lastExecutedDate}</td>
    283                            
    284                         </tr>
    285                     </tbody>
    286                 </table>
    287             </div>
    288 
    289         </richui:tabContent>
    290 
    291         <richui:tabContent>
    292             <div class="dialog">
    293                 <table>
    294                     <tbody>
    295                         <tr class="prop">
    296                             <td valign="top" class="name">Sub Tasks:</td>
    297                            
    298                             <td  valign="top" style="text-align:left;" class="value">
    299                                 <ul>
    300                                 <g:each var="s" in="${taskInstance.subTasks}">
    301                                     <li><g:link controller="taskDetailed" action="show" id="${s.id}">${s?.encodeAsHTML()}</g:link></li>
     201                                </tbody>
     202                            </table>
     203                        </div>
     204           
     205                        <div class="list">
     206                            <h1>Work Done</h1>
     207                            <table>
     208                                <thead>
     209                                    <tr>
     210                                        <th>Comment</th>
     211                                        <th>Date Done</th>
     212                                        <th>Duration</th>
     213                                        <th>Entered By</th>
     214                                        <th></th>
     215           
     216            <!--                            <g:sortableColumn property="commentW" title="Comment" />
     217                                   
     218                                        <g:sortableColumn property="dateDoneW" title="Date Done" />
     219                                   
     220                                        <g:sortableColumn property="enteredByW" title="Entered By" />-->
     221                                    </tr>
     222                                </thead>
     223                                <tbody>
     224                                <g:each in="${taskInstance?.entries}" status="i" var="entry">
     225                                    <g:if test="${entry.entryType == EntryType.findByName('WorkDone')}">
     226                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
     227           
     228                                            <td width="65%">${entry.comment}</td>
     229                                            <td><g:formatDate date="${entry.dateDone}" format="EEE, dd MMM yyyy"/></td>
     230                                            <td>${entry.durationHour}:${entry.durationMinute}</td>
     231                                            <td>${entry.enteredBy}</td>
     232           
     233                                            <td>
     234                                                <g:link controller="entryDetailed" action="edit" id="${entry.id}">
     235                                                    <img  src="${createLinkTo(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
     236                                                </g:link>
     237                                            </td>
     238           
     239                                        </tr>
     240                                    </g:if>
    302241                                </g:each>
    303                                 </ul>
    304                             </td>
    305                            
    306                         </tr>
    307                     </tbody>
    308                 </table>
    309             </div>
    310         </richui:tabContent>
    311 
    312 <!-- Planned Maintenance start-->
    313         <richui:tabContent>
    314             <div class="dialog">
    315                 <table>
    316                     <tbody>
    317                         <tr class="prop">
    318                             <td valign="top" class="name">Id:</td>
    319                            
    320                             <td valign="top" class="value">${taskInstance.recurringSchedule?.plannedMaintenance?.id}</td>
    321                            
    322                         </tr>
    323                    
    324                         <tr class="prop">
    325                             <td valign="top" class="name">Name:</td>
    326                            
    327                             <td valign="top" class="value">${taskInstance.recurringSchedule?.plannedMaintenance?.name}</td>
    328                            
    329                         </tr>
    330                    
    331                         <tr class="prop">
    332                             <td valign="top" class="name">Description:</td>
    333                            
    334                             <td valign="top" class="value">${taskInstance.recurringSchedule?.plannedMaintenance?.description}</td>
    335                            
    336                         </tr>
    337                    
    338                         <tr class="prop">
    339                             <td valign="top" class="name">Recurring Schedule:</td>
    340                            
    341                             <td valign="top" class="value"><g:link controller="recurringScheduleDetailed" action="edit" id="${taskInstance.recurringSchedule?.id}">${taskInstance.recurringSchedule?.encodeAsHTML()}</g:link></td>
    342                            
    343                         </tr>
    344                    
    345                         <tr class="prop">
    346                             <td valign="top" class="name">Is Active:</td>
    347                            
    348                             <td valign="top" class="value">${taskInstance.recurringSchedule?.plannedMaintenance?.isActive}</td>
    349                            
    350                         </tr>
    351                    
    352                     </tbody>
    353                 </table>
    354             </div>
    355             <div class="buttons">
    356                 <g:form controller="plannedMaintenanceDetailed">
    357                     <input type="hidden" name="id" value="${taskInstance.recurringSchedule?.plannedMaintenance?.id}" />
    358                     <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
    359                     <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
    360                 </g:form>
    361             </div>
    362 
    363             <div class="list">
    364                 <h1>Maintenance Actions</h1>
    365                 <table>
    366                     <thead>
    367                         <tr>
    368 
    369 <!--                             <g:sortableColumn property="plannedMaintenanceInstance.maintenanceAction.pmStepNumber" title="PM Step" /> -->
    370                             <th>Step</th>
    371                             <th>Action</th>
    372                             <th>System Section</th>
    373                             <th>Asset</th>
    374                             <th>Assembly</th>
    375                             <th>Maintenance Policy</th>
    376                             <th></th>
    377 
    378 <!--                            <g:sortableColumn property="commentW" title="Comment" />
    379                        
    380                             <g:sortableColumn property="dateDoneW" title="Date Done" />
    381                        
    382                             <g:sortableColumn property="enteredByW" title="Entered By" />-->
    383                         </tr>
    384                     </thead>
    385                     <tbody>
    386                         <g:each in="${taskInstance.recurringSchedule?.plannedMaintenance?.maintenanceActions}" status="i" var="maintenanceAction">
    387                                 <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/maintenanceActionDetailed/edit/${maintenanceAction.id}"'/>
    388    
    389                                     <td>${fieldValue(bean:maintenanceAction, field:'pmStepNumber')}</td>
    390                                     <td>${maintenanceAction.maintenanceAction}</td>
    391                                     <td>${maintenanceAction.systemSection}</td>
    392                                     <td>${maintenanceAction.asset}</td>
    393                                     <td>${maintenanceAction.assembly}</td>
    394                                     <td>${maintenanceAction.maintenancePolicy}</td>
    395    
    396                                     <td>
    397                                         <g:link controller="maintenanceActionDetailed" action="edit" id="${maintenanceAction.id}">
    398                                             <img  src="${createLinkTo(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
    399                                         </g:link>
    400                                     </td>
    401    
    402                                 </tr>
    403                         </g:each>
    404                     </tbody>
    405                 </table>
    406             </div>
    407 
    408             <br />
    409 
    410             <g:if test="${taskInstance.recurringSchedule?.plannedMaintenance?.id}">
    411                 <div class="buttons">
    412                     <g:form controller="maintenanceActionDetailed">
    413                         <input type="hidden" name="plannedMaintenanceInstance.id" value="${taskInstance.recurringSchedule?.plannedMaintenance?.id}" />
    414                         <span class="button">
    415                             <g:actionSubmit value="Add Action" action="create"  class="add"/>
    416                         </span>
    417                     </g:form>
    418                 </div>
    419             </g:if>
    420 
    421         </richui:tabContent>
    422 <!-- Planned Maintenance end-->
    423 
    424     </richui:tabContents>
    425 </richui:tabView>
    426 
     242                                </tbody>
     243                            </table>
     244                        </div>
     245           
     246                        <br />
     247           
     248                        <div class="buttons">
     249                            <g:form controller="entryDetailed">
     250                                <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
     251                                <span class="button">
     252                                    <g:actionSubmit value="Add Entry" action="create"  class="add"/>
     253                                </span>
     254                            </g:form>
     255                        </div>
     256                    </richui:tabContent>
     257<!-- End Task tab -->
     258
     259<!-- Start Task Procedure tab-->
     260                    <richui:tabContent>
     261
     262                        <div class="list">
     263                            <table>
     264                                <thead>
     265                                    <tr>
     266                                        <th>Step</th>
     267                                        <th>Description</th>
     268                                        <th></th>
     269                                    </tr>
     270                                </thead>
     271                                <tbody>
     272                                    <g:each in="${taskProcedureInstance?.maintenanceActions}" status="i" var="maintenanceAction">
     273                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/maintenanceActionDetailed/edit/${maintenanceAction.id}"'/>
     274                                       
     275                                        <td valign="top" class="name">
     276                                            ${maintenanceAction?.procedureStepNumber}
     277                                        </td>
     278                                       
     279                                        <td  valign="top" style="text-align:left;" class="value">
     280                                            ${maintenanceAction?.description}
     281                                        </td>
     282                                       
     283                                    </tr>
     284                                    </g:each>
     285
     286                                </tbody>
     287                            </table>
     288                        </div>
     289
     290                    </richui:tabContent>
     291<!-- End Task Procedure tab-->
     292
     293<!-- Start Task Recurrence tab -->
     294                    <richui:tabContent>
     295                    <div class="dialog">
     296                            <table>
     297                                <tbody>
     298                                    <tr class="prop">
     299                                        <td valign="top" class="name">Recurring Schedule:</td>
     300                                       
     301                                        <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.encodeAsHTML()}</td>
     302                                       
     303                                    </tr>
     304           
     305                                    <tr class="prop">
     306                                        <td valign="top" class="name">Start Date:</td>
     307                                       
     308                                        <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.startDate}</td>
     309                                       
     310                                    </tr>
     311           
     312                                    <tr class="prop">
     313                                        <td valign="top" class="name">Next Due Date:</td>
     314                                       
     315                                        <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.nextDueDate}</td>
     316                                       
     317                                    </tr>
     318           
     319                                    <tr class="prop">
     320                                        <td valign="top" class="name">Last Generated Date:</td>
     321                                       
     322                                        <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.lastGeneratedDate}</td>
     323                                       
     324                                    </tr>
     325           
     326                                    <tr class="prop">
     327                                        <td valign="top" class="name">Last Generated Sub Task:</td>
     328                                       
     329                                        <td valign="top" class="value">${taskInstance.taskRecurringSchedule?.lastGeneratedSubTask}</td>
     330                                       
     331                                    </tr>
     332                                </tbody>
     333                            </table>
     334                        </div>
     335                    </richui:tabContent>
     336<!-- End Task Recurrence tab -->
     337
     338<!-- Start Inventory tab -->
     339                    <richui:tabContent>
     340                        Used Inventory
     341                    </richui:tabContent>
     342<!-- End Inventory tab -->
     343
     344<!-- Start Sub Task tab --> 
     345                    <richui:tabContent>
     346                        <div class="dialog">
     347                            <table>
     348                                <tbody>
     349                                    <tr class="prop">
     350                                        <td valign="top" class="name">Sub Tasks:</td>
     351                                       
     352                                        <td  valign="top" style="text-align:left;" class="value">
     353                                            <ul>
     354                                            <g:each var="s" in="${taskInstance.subTasks}">
     355                                                <li><g:link controller="taskDetailed" action="show" id="${s.id}">${s?.encodeAsHTML()}</g:link></li>
     356                                            </g:each>
     357                                            </ul>
     358                                        </td>
     359                                       
     360                                    </tr>
     361                                </tbody>
     362                            </table>
     363                        </div>
     364                    </richui:tabContent>
     365<!-- End Sub Task tab -->
     366
     367                </richui:tabContents>
     368            </richui:tabView>
     369           
    427370        </div>
    428371    </body>
  • trunk/grails-app/views/taskRecurringSchedule/create.gsp

    r123 r131  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>Create RecurringSchedule</title>         
     7        <title>Create TaskRecurringSchedule</title>         
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="list" action="list">RecurringSchedule List</g:link></span>
     12            <span class="menuButton"><g:link class="list" action="list">TaskRecurringSchedule List</g:link></span>
    1313        </div>
    1414        <div class="body">
    15             <h1>Create RecurringSchedule</h1>
     15            <h1>Create TaskRecurringSchedule</h1>
    1616            <g:if test="${flash.message}">
    1717            <div class="message">${flash.message}</div>
    1818            </g:if>
    19             <g:hasErrors bean="${recurringScheduleInstance}">
     19            <g:hasErrors bean="${taskRecurringScheduleInstance}">
    2020            <div class="errors">
    21                 <g:renderErrors bean="${recurringScheduleInstance}" as="list" />
     21                <g:renderErrors bean="${taskRecurringScheduleInstance}" as="list" />
    2222            </div>
    2323            </g:hasErrors>
     
    2929                            <tr class="prop">
    3030                                <td valign="top" class="name">
    31                                     <label for="plannedMaintenance">Planned Maintenance:</label>
     31                                    <label for="lastGeneratedDate">Last Generated Date:</label>
    3232                                </td>
    33                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'plannedMaintenance','errors')}">
    34                                     <g:select optionKey="id" from="${PlannedMaintenance.list()}" name="plannedMaintenance.id" value="${recurringScheduleInstance?.plannedMaintenance?.id}" noSelection="['null':'']"></g:select>
     33                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedDate','errors')}">
     34                                    <g:datePicker name="lastGeneratedDate" value="${taskRecurringScheduleInstance?.lastGeneratedDate}" noSelection="['':'']"></g:datePicker>
    3535                                </td>
    3636                            </tr>
     
    3838                            <tr class="prop">
    3939                                <td valign="top" class="name">
    40                                     <label for="lastExecutedDate">Last Executed Date:</label>
     40                                    <label for="lastGeneratedSubTask">Last Generated Sub Task:</label>
    4141                                </td>
    42                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'lastExecutedDate','errors')}">
    43                                     <g:datePicker name="lastExecutedDate" value="${recurringScheduleInstance?.lastExecutedDate}" noSelection="['':'']"></g:datePicker>
     42                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedSubTask','errors')}">
     43                                    <g:select optionKey="id" from="${Task.list()}" name="lastGeneratedSubTask.id" value="${taskRecurringScheduleInstance?.lastGeneratedSubTask?.id}" noSelection="['null':'']"></g:select>
     44                                </td>
     45                            </tr>
     46                       
     47                            <tr class="prop">
     48                                <td valign="top" class="name">
     49                                    <label for="isEnabled">Is Enabled:</label>
     50                                </td>
     51                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'isEnabled','errors')}">
     52                                    <g:checkBox name="isEnabled" value="${taskRecurringScheduleInstance?.isEnabled}" ></g:checkBox>
    4453                                </td>
    4554                            </tr>
     
    4958                                    <label for="nextDueDate">Next Due Date:</label>
    5059                                </td>
    51                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'nextDueDate','errors')}">
    52                                     <g:datePicker name="nextDueDate" value="${recurringScheduleInstance?.nextDueDate}" noSelection="['':'']"></g:datePicker>
    53                                 </td>
    54                             </tr>
    55                        
    56                             <tr class="prop">
    57                                 <td valign="top" class="name">
    58                                     <label for="isActive">Is Active:</label>
    59                                 </td>
    60                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'isActive','errors')}">
    61                                     <g:checkBox name="isActive" value="${recurringScheduleInstance?.isActive}" ></g:checkBox>
     60                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'nextDueDate','errors')}">
     61                                    <g:datePicker name="nextDueDate" value="${taskRecurringScheduleInstance?.nextDueDate}" ></g:datePicker>
    6262                                </td>
    6363                            </tr>
     
    6767                                    <label for="period">Period:</label>
    6868                                </td>
    69                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'period','errors')}">
    70                                     <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${recurringScheduleInstance?.period?.id}" ></g:select>
     69                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'period','errors')}">
     70                                    <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${taskRecurringScheduleInstance?.period?.id}" ></g:select>
    7171                                </td>
    7272                            </tr>
     
    7676                                    <label for="recurEvery">Recur Every:</label>
    7777                                </td>
    78                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'recurEvery','errors')}">
    79                                     <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:recurringScheduleInstance,field:'recurEvery')}" />
     78                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'recurEvery','errors')}">
     79                                    <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:taskRecurringScheduleInstance,field:'recurEvery')}" />
    8080                                </td>
    8181                            </tr>
     
    8585                                    <label for="startDate">Start Date:</label>
    8686                                </td>
    87                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'startDate','errors')}">
    88                                     <g:datePicker name="startDate" value="${recurringScheduleInstance?.startDate}" ></g:datePicker>
     87                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'startDate','errors')}">
     88                                    <g:datePicker name="startDate" value="${taskRecurringScheduleInstance?.startDate}" ></g:datePicker>
    8989                                </td>
    9090                            </tr>
     
    9494                                    <label for="task">Task:</label>
    9595                                </td>
    96                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'task','errors')}">
    97                                     <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${recurringScheduleInstance?.task?.id}" ></g:select>
     96                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'task','errors')}">
     97                                    <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${taskRecurringScheduleInstance?.task?.id}" ></g:select>
    9898                                </td>
    9999                            </tr>
  • trunk/grails-app/views/taskRecurringSchedule/edit.gsp

    r123 r131  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>Edit RecurringSchedule</title>
     7        <title>Edit TaskRecurringSchedule</title>
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="list" action="list">RecurringSchedule List</g:link></span>
    13             <span class="menuButton"><g:link class="create" action="create">New RecurringSchedule</g:link></span>
     12            <span class="menuButton"><g:link class="list" action="list">TaskRecurringSchedule List</g:link></span>
     13            <span class="menuButton"><g:link class="create" action="create">New TaskRecurringSchedule</g:link></span>
    1414        </div>
    1515        <div class="body">
    16             <h1>Edit RecurringSchedule</h1>
     16            <h1>Edit TaskRecurringSchedule</h1>
    1717            <g:if test="${flash.message}">
    1818            <div class="message">${flash.message}</div>
    1919            </g:if>
    20             <g:hasErrors bean="${recurringScheduleInstance}">
     20            <g:hasErrors bean="${taskRecurringScheduleInstance}">
    2121            <div class="errors">
    22                 <g:renderErrors bean="${recurringScheduleInstance}" as="list" />
     22                <g:renderErrors bean="${taskRecurringScheduleInstance}" as="list" />
    2323            </div>
    2424            </g:hasErrors>
    2525            <g:form method="post" >
    26                 <input type="hidden" name="id" value="${recurringScheduleInstance?.id}" />
    27                 <input type="hidden" name="version" value="${recurringScheduleInstance?.version}" />
     26                <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
     27                <input type="hidden" name="version" value="${taskRecurringScheduleInstance?.version}" />
    2828                <div class="dialog">
    2929                    <table>
     
    3232                            <tr class="prop">
    3333                                <td valign="top" class="name">
    34                                     <label for="plannedMaintenance">Planned Maintenance:</label>
     34                                    <label for="lastGeneratedDate">Last Generated Date:</label>
    3535                                </td>
    36                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'plannedMaintenance','errors')}">
    37                                     <g:select optionKey="id" from="${PlannedMaintenance.list()}" name="plannedMaintenance.id" value="${recurringScheduleInstance?.plannedMaintenance?.id}" noSelection="['null':'']"></g:select>
     36                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedDate','errors')}">
     37                                    <g:datePicker name="lastGeneratedDate" value="${taskRecurringScheduleInstance?.lastGeneratedDate}" noSelection="['':'']"></g:datePicker>
    3838                                </td>
    3939                            </tr>
     
    4141                            <tr class="prop">
    4242                                <td valign="top" class="name">
    43                                     <label for="lastExecutedDate">Last Executed Date:</label>
     43                                    <label for="lastGeneratedSubTask">Last Generated Sub Task:</label>
    4444                                </td>
    45                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'lastExecutedDate','errors')}">
    46                                     <g:datePicker name="lastExecutedDate" value="${recurringScheduleInstance?.lastExecutedDate}" noSelection="['':'']"></g:datePicker>
     45                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'lastGeneratedSubTask','errors')}">
     46                                    <g:select optionKey="id" from="${Task.list()}" name="lastGeneratedSubTask.id" value="${taskRecurringScheduleInstance?.lastGeneratedSubTask?.id}" noSelection="['null':'']"></g:select>
     47                                </td>
     48                            </tr>
     49                       
     50                            <tr class="prop">
     51                                <td valign="top" class="name">
     52                                    <label for="isEnabled">Is Enabled:</label>
     53                                </td>
     54                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'isEnabled','errors')}">
     55                                    <g:checkBox name="isEnabled" value="${taskRecurringScheduleInstance?.isEnabled}" ></g:checkBox>
    4756                                </td>
    4857                            </tr>
     
    5261                                    <label for="nextDueDate">Next Due Date:</label>
    5362                                </td>
    54                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'nextDueDate','errors')}">
    55                                     <g:datePicker name="nextDueDate" value="${recurringScheduleInstance?.nextDueDate}" noSelection="['':'']"></g:datePicker>
    56                                 </td>
    57                             </tr>
    58                        
    59                             <tr class="prop">
    60                                 <td valign="top" class="name">
    61                                     <label for="isActive">Is Active:</label>
    62                                 </td>
    63                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'isActive','errors')}">
    64                                     <g:checkBox name="isActive" value="${recurringScheduleInstance?.isActive}" ></g:checkBox>
     63                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'nextDueDate','errors')}">
     64                                    <g:datePicker name="nextDueDate" value="${taskRecurringScheduleInstance?.nextDueDate}" ></g:datePicker>
    6565                                </td>
    6666                            </tr>
     
    7070                                    <label for="period">Period:</label>
    7171                                </td>
    72                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'period','errors')}">
    73                                     <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${recurringScheduleInstance?.period?.id}" ></g:select>
     72                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'period','errors')}">
     73                                    <g:select optionKey="id" from="${Period.list()}" name="period.id" value="${taskRecurringScheduleInstance?.period?.id}" ></g:select>
    7474                                </td>
    7575                            </tr>
     
    7979                                    <label for="recurEvery">Recur Every:</label>
    8080                                </td>
    81                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'recurEvery','errors')}">
    82                                     <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:recurringScheduleInstance,field:'recurEvery')}" />
     81                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'recurEvery','errors')}">
     82                                    <input type="text" id="recurEvery" name="recurEvery" value="${fieldValue(bean:taskRecurringScheduleInstance,field:'recurEvery')}" />
    8383                                </td>
    8484                            </tr>
     
    8888                                    <label for="startDate">Start Date:</label>
    8989                                </td>
    90                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'startDate','errors')}">
    91                                     <g:datePicker name="startDate" value="${recurringScheduleInstance?.startDate}" ></g:datePicker>
     90                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'startDate','errors')}">
     91                                    <g:datePicker name="startDate" value="${taskRecurringScheduleInstance?.startDate}" ></g:datePicker>
    9292                                </td>
    9393                            </tr>
     
    9797                                    <label for="task">Task:</label>
    9898                                </td>
    99                                 <td valign="top" class="value ${hasErrors(bean:recurringScheduleInstance,field:'task','errors')}">
    100                                     <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${recurringScheduleInstance?.task?.id}" ></g:select>
     99                                <td valign="top" class="value ${hasErrors(bean:taskRecurringScheduleInstance,field:'task','errors')}">
     100                                    <g:select optionKey="id" from="${Task.list()}" name="task.id" value="${taskRecurringScheduleInstance?.task?.id}" ></g:select>
    101101                                </td>
    102102                            </tr>
  • trunk/grails-app/views/taskRecurringSchedule/list.gsp

    r123 r131  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>RecurringSchedule List</title>
     7        <title>TaskRecurringSchedule List</title>
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="create" action="create">New RecurringSchedule</g:link></span>
     12            <span class="menuButton"><g:link class="create" action="create">New TaskRecurringSchedule</g:link></span>
    1313        </div>
    1414        <div class="body">
    15             <h1>RecurringSchedule List</h1>
     15            <h1>TaskRecurringSchedule List</h1>
    1616            <g:if test="${flash.message}">
    1717            <div class="message">${flash.message}</div>
     
    2424                                <g:sortableColumn property="id" title="Id" />
    2525                       
    26                                 <th>Planned Maintenance</th>
     26                                <g:sortableColumn property="lastGeneratedDate" title="Last Generated Date" />
     27                       
     28                                <th>Last Generated Sub Task</th>
    2729                           
    28                                 <g:sortableColumn property="lastExecutedDate" title="Last Executed Date" />
     30                                <g:sortableColumn property="isEnabled" title="Is Enabled" />
    2931                       
    3032                                <g:sortableColumn property="nextDueDate" title="Next Due Date" />
    31                        
    32                                 <g:sortableColumn property="isActive" title="Is Active" />
    3333                       
    3434                                <th>Period</th>
     
    3737                    </thead>
    3838                    <tbody>
    39                     <g:each in="${recurringScheduleInstanceList}" status="i" var="recurringScheduleInstance">
     39                    <g:each in="${taskRecurringScheduleInstanceList}" status="i" var="taskRecurringScheduleInstance">
    4040                        <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
    4141                       
    42                             <td><g:link action="show" id="${recurringScheduleInstance.id}">${fieldValue(bean:recurringScheduleInstance, field:'id')}</g:link></td>
     42                            <td><g:link action="show" id="${taskRecurringScheduleInstance.id}">${fieldValue(bean:taskRecurringScheduleInstance, field:'id')}</g:link></td>
    4343                       
    44                             <td>${fieldValue(bean:recurringScheduleInstance, field:'plannedMaintenance')}</td>
     44                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'lastGeneratedDate')}</td>
    4545                       
    46                             <td>${fieldValue(bean:recurringScheduleInstance, field:'lastExecutedDate')}</td>
     46                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'lastGeneratedSubTask')}</td>
    4747                       
    48                             <td>${fieldValue(bean:recurringScheduleInstance, field:'nextDueDate')}</td>
     48                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'isEnabled')}</td>
    4949                       
    50                             <td>${fieldValue(bean:recurringScheduleInstance, field:'isActive')}</td>
     50                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'nextDueDate')}</td>
    5151                       
    52                             <td>${fieldValue(bean:recurringScheduleInstance, field:'period')}</td>
     52                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'period')}</td>
    5353                       
    5454                        </tr>
     
    5858            </div>
    5959            <div class="paginateButtons">
    60                 <g:paginate total="${recurringScheduleInstanceTotal}" />
     60                <g:paginate total="${taskRecurringScheduleInstanceTotal}" />
    6161            </div>
    6262        </div>
  • trunk/grails-app/views/taskRecurringSchedule/show.gsp

    r123 r131  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>Show RecurringSchedule</title>
     7        <title>Show TaskRecurringSchedule</title>
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="list" action="list">RecurringSchedule List</g:link></span>
    13             <span class="menuButton"><g:link class="create" action="create">New RecurringSchedule</g:link></span>
     12            <span class="menuButton"><g:link class="list" action="list">TaskRecurringSchedule List</g:link></span>
     13            <span class="menuButton"><g:link class="create" action="create">New TaskRecurringSchedule</g:link></span>
    1414        </div>
    1515        <div class="body">
    16             <h1>Show RecurringSchedule</h1>
     16            <h1>Show TaskRecurringSchedule</h1>
    1717            <g:if test="${flash.message}">
    1818            <div class="message">${flash.message}</div>
     
    2626                            <td valign="top" class="name">Id:</td>
    2727                           
    28                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'id')}</td>
     28                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'id')}</td>
    2929                           
    3030                        </tr>
    3131                   
    3232                        <tr class="prop">
    33                             <td valign="top" class="name">Planned Maintenance:</td>
     33                            <td valign="top" class="name">Last Generated Date:</td>
    3434                           
    35                             <td valign="top" class="value"><g:link controller="plannedMaintenance" action="show" id="${recurringScheduleInstance?.plannedMaintenance?.id}">${recurringScheduleInstance?.plannedMaintenance?.encodeAsHTML()}</g:link></td>
     35                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'lastGeneratedDate')}</td>
    3636                           
    3737                        </tr>
    3838                   
    3939                        <tr class="prop">
    40                             <td valign="top" class="name">Last Executed Date:</td>
     40                            <td valign="top" class="name">Last Generated Sub Task:</td>
    4141                           
    42                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'lastExecutedDate')}</td>
     42                            <td valign="top" class="value"><g:link controller="task" action="show" id="${taskRecurringScheduleInstance?.lastGeneratedSubTask?.id}">${taskRecurringScheduleInstance?.lastGeneratedSubTask?.encodeAsHTML()}</g:link></td>
     43                           
     44                        </tr>
     45                   
     46                        <tr class="prop">
     47                            <td valign="top" class="name">Is Enabled:</td>
     48                           
     49                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'isEnabled')}</td>
    4350                           
    4451                        </tr>
     
    4754                            <td valign="top" class="name">Next Due Date:</td>
    4855                           
    49                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'nextDueDate')}</td>
    50                            
    51                         </tr>
    52                    
    53                         <tr class="prop">
    54                             <td valign="top" class="name">Is Active:</td>
    55                            
    56                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'isActive')}</td>
     56                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'nextDueDate')}</td>
    5757                           
    5858                        </tr>
     
    6161                            <td valign="top" class="name">Period:</td>
    6262                           
    63                             <td valign="top" class="value"><g:link controller="period" action="show" id="${recurringScheduleInstance?.period?.id}">${recurringScheduleInstance?.period?.encodeAsHTML()}</g:link></td>
     63                            <td valign="top" class="value"><g:link controller="period" action="show" id="${taskRecurringScheduleInstance?.period?.id}">${taskRecurringScheduleInstance?.period?.encodeAsHTML()}</g:link></td>
    6464                           
    6565                        </tr>
     
    6868                            <td valign="top" class="name">Recur Every:</td>
    6969                           
    70                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'recurEvery')}</td>
     70                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'recurEvery')}</td>
    7171                           
    7272                        </tr>
     
    7575                            <td valign="top" class="name">Start Date:</td>
    7676                           
    77                             <td valign="top" class="value">${fieldValue(bean:recurringScheduleInstance, field:'startDate')}</td>
     77                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'startDate')}</td>
    7878                           
    7979                        </tr>
     
    8282                            <td valign="top" class="name">Task:</td>
    8383                           
    84                             <td valign="top" class="value"><g:link controller="task" action="show" id="${recurringScheduleInstance?.task?.id}">${recurringScheduleInstance?.task?.encodeAsHTML()}</g:link></td>
     84                            <td valign="top" class="value"><g:link controller="task" action="show" id="${taskRecurringScheduleInstance?.task?.id}">${taskRecurringScheduleInstance?.task?.encodeAsHTML()}</g:link></td>
    8585                           
    8686                        </tr>
     
    9191            <div class="buttons">
    9292                <g:form>
    93                     <input type="hidden" name="id" value="${recurringScheduleInstance?.id}" />
     93                    <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
    9494                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
    9595                    <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
  • trunk/grails-app/views/taskRecurringScheduleDetailed/list.gsp

    r122 r131  
    55        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    66        <meta name="layout" content="main" />
    7         <title>RecurringSchedule List</title>
     7        <title>TaskRecurringSchedule List</title>
    88    </head>
    99    <body>
    1010        <div class="nav">
    1111            <span class="menuButton"><a class="home" href="${createLinkTo(dir:'')}">Home</a></span>
    12             <span class="menuButton"><g:link class="create" action="create">New RecurringSchedule</g:link></span>
     12            <span class="menuButton"><g:link class="create" action="create">New TaskRecurringSchedule</g:link></span>
    1313        </div>
    1414        <div class="body">
    15             <h1>RecurringSchedule List</h1>
     15            <h1>TaskRecurringSchedule List</h1>
    1616            <g:if test="${flash.message}">
    1717            <div class="message">${flash.message}</div>
     
    3737                    </thead>
    3838                    <tbody>
    39                     <g:each in="${recurringScheduleInstanceList}" status="i" var="recurringScheduleInstance">
     39                    <g:each in="${taskRecurringScheduleInstanceList}" status="i" var="taskRecurringScheduleInstance">
    4040                        <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
    4141                       
    42                             <td><g:link action="show" id="${recurringScheduleInstance.id}">${fieldValue(bean:recurringScheduleInstance, field:'id')}</g:link></td>
     42                            <td><g:link action="show" id="${taskRecurringScheduleInstance.id}">${fieldValue(bean:taskRecurringScheduleInstance, field:'id')}</g:link></td>
    4343                       
    44                             <td>${fieldValue(bean:recurringScheduleInstance, field:'plannedMaintenance')}</td>
     44                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'task')}</td>
    4545                       
    46                             <td>${fieldValue(bean:recurringScheduleInstance, field:'isActive')}</td>
     46                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'isActive')}</td>
    4747                       
    48                             <td>${fieldValue(bean:recurringScheduleInstance, field:'period')}</td>
     48                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'period')}</td>
    4949                       
    50                             <td>${fieldValue(bean:recurringScheduleInstance, field:'recurEvery')}</td>
     50                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'recurEvery')}</td>
    5151                       
    52                             <td>${fieldValue(bean:recurringScheduleInstance, field:'startDate')}</td>
     52                            <td>${fieldValue(bean:taskRecurringScheduleInstance, field:'startDate')}</td>
    5353                       
    5454                        </tr>
     
    5858            </div>
    5959            <div class="paginateButtons">
    60                 <g:paginate total="${recurringScheduleInstanceTotal}" />
     60                <g:paginate total="${taskRecurringScheduleInstanceTotal}" />
    6161            </div>
    6262        </div>
  • trunk/src/templates/scaffolding/Controller.groovy

    r128 r131  
     1import org.codehaus.groovy.grails.plugins.springsecurity.Secured
    12
    2 
    3 <%=packageName ? "package ${packageName}\n\n" : ''%>class ${className}Controller {
     3<%=packageName ? "package ${packageName}\n\n" : ''%>class ${className}Controller extends BaseAppAdminController {
    44   
    55    def index = { redirect(action:list,params:params) }
Note: See TracChangeset for help on using the changeset viewer.