source: trunk/grails-app/views/taskDetailed/show.gsp @ 168

Last change on this file since 168 was 168, checked in by gav, 15 years ago

Add message bundles for the task filterPane.
Add primary and associated assets to taskDetailed views.

File size: 27.9 KB
RevLine 
[84]1<html>
2    <head>
3        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
4        <meta name="layout" content="main" />
5        <title>Show Task</title>
[139]6        <nav:resources override="true"/>
[126]7        <resource:tabView skin="tabviewCustom" />
[84]8    </head>
9    <body>
10        <div class="nav">
[139]11            <nav:renderSubItems group="nav"/>
[84]12        </div>
13        <div class="body">
14            <g:if test="${flash.message}">
15            <div class="message">${flash.message}</div>
16            </g:if>
[133]17            <g:hasErrors bean="${taskProcedureInstance}">
18            <div class="errors">
19                <g:renderErrors bean="${taskProcedureInstance}" as="list" />
20            </div>
21            </g:hasErrors>
[126]22
[131]23            <richui:tabView id="tabView">
[126]24
25                <richui:tabLabels>
[133]26                    <richui:tabLabel selected="${showTaskTab}" title="Task #${taskInstance.id}" />
27                    <richui:tabLabel selected="${showProcedureTab}" title="Procedure" />
28                    <richui:tabLabel selected="${showRecurrenceTab}" title="Recurrence" />
29                    <richui:tabLabel selected="${showInventoryTab}" title="Inventory" />
30                    <richui:tabLabel selected="${showSubTasksTab}" title="Sub Tasks" />
[126]31                </richui:tabLabels>
[131]32
[126]33                <richui:tabContents>
[131]34
35<!-- Start Task tab -->
[126]36                    <richui:tabContent>
[153]37
[131]38                        <div class="dialog">
39                            <table>
40                                <tbody>
[153]41
[131]42                                    <tr class="prop">
43                                        <td valign="top" class="name">Id:</td>
[153]44
[131]45                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'id')}</td>
[153]46
[131]47                                    </tr>
[153]48
[131]49                                    <tr class="prop">
50                                        <td valign="top" class="name">Description:</td>
[153]51
[131]52                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'description')}</td>
[153]53
[131]54                                    </tr>
[153]55
[131]56                                    <tr class="prop">
57                                        <td valign="top" class="name">Comment:</td>
[153]58
[131]59                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
[153]60
[131]61                                    </tr>
[153]62
[131]63                                    <tr class="prop">
64                                        <td valign="top" class="name">Target Start Date:</td>
[153]65
[139]66                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetStartDate}" format="EEE, dd-MMM-yyyy"/></td>
[153]67
[131]68                                    </tr>
[153]69
[131]70                                    <tr class="prop">
71                                        <td valign="top" class="name">Target Completion Date:</td>
[153]72
[139]73                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetCompletionDate}" format="EEE, dd-MMM-yyyy"/></td>
[153]74
[131]75                                    </tr>
[153]76
[131]77                                    <tr class="prop">
78                                        <td valign="top" class="name">Lead Person:</td>
[153]79
[131]80                                        <td valign="top" class="value">${taskInstance?.leadPerson?.encodeAsHTML()}</td>
[153]81
[131]82                                    </tr>
[153]83
[131]84                                    <tr class="prop">
[168]85                                        <td valign="top" class="name">Primary Asset:</td>
86
87                                        <td valign="top" class="value"><g:link controller="assetDetailed" action="show" id="${taskInstance?.primaryAsset?.id}">${taskInstance?.primaryAsset?.encodeAsHTML()}</g:link></td>
88
89                                    </tr>
90
91                                    <tr class="prop">
92                                        <td valign="top" class="name">Associated Assets:</td>
93
94                                        <td  valign="top" style="text-align:left;" class="value">
95                                            <ul>
96                                            <g:each var="a" in="${taskInstance.associatedAssets}">
97                                                <li>${a?.encodeAsHTML()}</li>
98                                            </g:each>
99                                            </ul>
100                                        </td>
101
102                                    </tr>
103
104                                    <tr class="prop">
[131]105                                        <td valign="top" class="name">Task Priority:</td>
[153]106
[131]107                                        <td valign="top" class="value">${taskInstance?.taskPriority?.encodeAsHTML()}</td>
[153]108
[131]109                                    </tr>
[153]110
[131]111                                    <tr class="prop">
112                                        <td valign="top" class="name">Task Status:</td>
[153]113
[131]114                                        <td valign="top" class="value">${taskInstance?.taskStatus?.encodeAsHTML()}</td>
[153]115
[131]116                                    </tr>
[153]117
[131]118                                    <tr class="prop">
119                                        <td valign="top" class="name">Is Active:</td>
[153]120
[131]121                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isActive')}</td>
[153]122
[131]123                                    </tr>
[153]124
[131]125                                    <tr class="prop">
126                                        <td valign="top" class="name">Is Approved:</td>
[153]127
[131]128                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isApproved')}</td>
[153]129
[131]130                                    </tr>
[153]131
[131]132                                    <tr class="prop">
133                                        <td valign="top" class="name">Is Scheduled:</td>
[153]134
[131]135                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isScheduled')}</td>
[153]136
[131]137                                    </tr>
[153]138
[131]139                                    <tr class="prop">
140                                        <td valign="top" class="name">Parent Task:</td>
[153]141
[131]142                                        <td valign="top" class="value"><g:link controller="taskDetailed" action="show" id="${taskInstance?.parentTask?.id}">${taskInstance?.parentTask?.encodeAsHTML()}</g:link></td>
[153]143
[131]144                                    </tr>
[153]145
[131]146                                    <tr class="prop">
147                                        <td valign="top" class="name">Task Group:</td>
[153]148
[131]149                                        <td valign="top" class="value">${taskInstance?.taskGroup?.encodeAsHTML()}</td>
[153]150
[131]151                                    </tr>
[153]152
[131]153                                    <tr class="prop">
154                                        <td valign="top" class="name">Task Type:</td>
[153]155
[131]156                                        <td valign="top" class="value">${taskInstance?.taskType?.encodeAsHTML()}</td>
[153]157
[131]158                                    </tr>
[153]159
[131]160                                    <tr class="prop">
161                                        <td valign="top" class="name">Assigned Persons:</td>
[153]162
[131]163                                        <td  valign="top" style="text-align:left;" class="value">
164                                            <ul>
165                                            <g:each var="a" in="${taskInstance.assignedPersons}">
166                                                <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}">${a?.encodeAsHTML()}</g:link></li>
167                                            </g:each>
168                                            </ul>
[134]169                                            <g:link controller="assignedPersonDetailed" params="['task.id':taskInstance?.id]" action="create">Add AssignedPerson</g:link>
[131]170                                        </td>
[153]171
[131]172                                    </tr>
[153]173
[131]174                                </tbody>
175                            </table>
176                        </div>
[153]177
[131]178                        <div class="buttons">
179                            <g:form>
180                                <input type="hidden" name="id" value="${taskInstance?.id}" />
181                                <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
182                                <span class="button"><g:actionSubmit class="delete" onclick="return confirm('Are you sure?');" value="Delete" /></span>
183                            </g:form>
184                        </div>
[153]185
[131]186                        <div class="list">
187                            <h1>Faults</h1>
188                            <table>
189                                <thead>
190                                    <tr>
191                                        <th>Comment</th>
192                                        <th>Date Done</th>
193                                        <th>Duration</th>
194                                        <th>Entered By</th>
195                                        <th></th>
[153]196
[131]197            <!--                            <g:sortableColumn property="comment" title="Comment" />
[153]198
[131]199                                        <g:sortableColumn property="dateDone" title="Date Done" />
[153]200
[131]201                                        <g:sortableColumn property="enteredBy" title="Entered By" />-->
202                                    </tr>
203                                </thead>
204                                <tbody>
[137]205                                <g:each in="${entryFaultList}" status="i" var="entry">
[131]206                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
[153]207
[131]208                                            <td style="width:65%">${entry.comment}</td>
[139]209                                            <td><g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/></td>
[131]210                                            <td>${entry.durationHour}:${entry.durationMinute}</td>
211                                            <td>${entry.enteredBy}</td>
[153]212
[131]213                                            <td>
214                                                <g:link controller="entryDetailed" action="edit" id="${entry.id}">
[151]215                                                    <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
[131]216                                                </g:link>
217                                            </td>
[153]218
[131]219                                        </tr>
[96]220                                </g:each>
[131]221                                </tbody>
222                            </table>
223                        </div>
[153]224
[131]225                        <div class="list">
226                            <h1>Work Done</h1>
227                            <table>
228                                <thead>
229                                    <tr>
230                                        <th>Comment</th>
231                                        <th>Date Done</th>
232                                        <th>Duration</th>
233                                        <th>Entered By</th>
234                                        <th></th>
[153]235
[131]236            <!--                            <g:sortableColumn property="commentW" title="Comment" />
[153]237
[131]238                                        <g:sortableColumn property="dateDoneW" title="Date Done" />
[153]239
[131]240                                        <g:sortableColumn property="enteredByW" title="Entered By" />-->
241                                    </tr>
242                                </thead>
243                                <tbody>
[137]244                                <g:each in="${entryWorkDoneList}" status="i" var="entry">
[131]245                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
[153]246
[131]247                                            <td width="65%">${entry.comment}</td>
[139]248                                            <td><g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/></td>
[131]249                                            <td>${entry.durationHour}:${entry.durationMinute}</td>
250                                            <td>${entry.enteredBy}</td>
[153]251
[131]252                                            <td>
253                                                <g:link controller="entryDetailed" action="edit" id="${entry.id}">
[151]254                                                    <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
[131]255                                                </g:link>
256                                            </td>
[153]257
[131]258                                        </tr>
[126]259                                </g:each>
[131]260                                </tbody>
261                            </table>
262                        </div>
[153]263
[131]264                        <br />
[153]265
[131]266                        <div class="buttons">
267                            <g:form controller="entryDetailed">
268                                <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
269                                <span class="button">
270                                    <g:actionSubmit value="Add Entry" action="create"  class="add"/>
271                                </span>
272                            </g:form>
273                        </div>
274                    </richui:tabContent>
275<!-- End Task tab -->
[126]276
[137]277
[131]278<!-- Start Task Procedure tab-->
279                    <richui:tabContent>
[133]280                        <g:if test="${!taskProcedureExits}">
[153]281                            <br />
282                            No Procedure linked.
283                            <br />
284                            <br />
[134]285                            <g:form controller="taskProcedureDetailed" >
[133]286                                <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
287
288                                <div class="buttons">
289                                    <span class="button">
[134]290                                        <g:actionSubmit value="New" action="create"  class="add"/>
[133]291                                    </span>
292                                    <span class="button">
[134]293                                        <g:actionSubmit value="Search" action="search"  class="search"/>
[133]294                                    </span>
295                                </div>
[134]296
[133]297                            </g:form>
[126]298
[133]299                        </g:if>
300                        <g:else>
[153]301                            <div class="dialog">
[133]302                                <table>
303                                    <tbody>
[153]304
[133]305                                        <tr class="prop">
306                                            <td valign="top" class="name">Procedure Id:</td>
[153]307
[133]308                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'id')}</td>
[153]309
[133]310                                        </tr>
[153]311
[133]312                                        <tr class="prop">
313                                            <td valign="top" class="name">Name:</td>
[153]314
[133]315                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'name')}</td>
[153]316
[133]317                                        </tr>
[153]318
[133]319                                        <tr class="prop">
320                                            <td valign="top" class="name">Description:</td>
[153]321
[133]322                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'description')}</td>
[153]323
[133]324                                        </tr>
[153]325
[133]326                                        <tr class="prop">
327                                            <td valign="top" class="name">Is Active:</td>
[153]328
[133]329                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'isActive')}</td>
[153]330
[133]331                                        </tr>
[153]332
[133]333                                    </tbody>
334                                </table>
335                            </div>
336                            <div class="buttons">
337                                <g:form controller="taskProcedureDetailed">
338                                    <input type="hidden" name="id" value="${taskProcedureInstance?.id}" />
339                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
[153]340                                </g:form>
[133]341                            </div>
[126]342
[153]343                            <div class="list">
344                                <table>
345                                    <thead>
346                                        <tr>
347                                            <th>Step</th>
348                                            <th>Description</th>
349                                        </tr>
350                                    </thead>
351                                    <tbody>
352                                        <g:each in="${maintenanceActionList}" status="i" var="maintenanceAction">
353                                            <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
354
355                                                <td valign="top" class="name">
356                                                    ${maintenanceAction?.procedureStepNumber}
357                                                </td>
358
359                                                <td  valign="top" style="text-align:left;" class="value">
360                                                    ${maintenanceAction?.description}
361                                                </td>
362
363                                            </tr>
364                                        </g:each>
365
366                                    </tbody>
367                                </table>
368                            </div>
369
[133]370                        </g:else>
371
[131]372                    </richui:tabContent>
373<!-- End Task Procedure tab-->
[126]374
[131]375<!-- Start Task Recurrence tab -->
376                    <richui:tabContent>
[134]377
378                        <g:if test="${!taskRecurringScheduleExits}">
[153]379                            <br />
380                            No Recurring Schedule.
381                            <br />
382                            <br />
[134]383                            <g:form controller="taskRecurringScheduleDetailed" >
384                                <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
385
386                                <div class="buttons">
387                                    <span class="button">
388                                        <g:actionSubmit value="Create" action="create"  class="add"/>
389                                    </span>
390                                </div>
391
392                            </g:form>
393
394                        </g:if>
395                        <g:else>
[153]396
397                        <div class="dialog">
398                                <table>
399                                    <tbody>
400                                        <tr class="prop">
401                                            <td valign="top" class="name">Recurring Schedule:</td>
402
403                                            <td valign="top" class="value">${taskRecurringScheduleInstance.encodeAsHTML()}</td>
404
[137]405                                        </tr>
[153]406
[137]407                                        <tr class="prop">
[153]408                                            <td valign="top" class="name">Start Date:</td>
409
410                                            <td valign="top" class="value">
411                                                <g:formatDate date="${taskRecurringScheduleInstance.startDate}" format="EEE, dd-MMM-yyyy"/>
412                                            </td>
413
414                                        </tr>
415
416                                        <tr class="prop">
[137]417                                            <td valign="top" class="name">Task Duration:</td>
[153]418
[137]419                                            <td valign="top" class="value">
420                                                ${taskRecurringScheduleInstance?.taskDuration} ${taskRecurringScheduleInstance?.taskDurationPeriod}
421                                            </td>
422                                        </tr>
[153]423
[137]424                                        <tr class="prop">
425                                            <td valign="top" class="name">Generate Ahead:</td>
[153]426
[137]427                                            <td valign="top" class="value">
428                                                ${taskRecurringScheduleInstance?.generateAhead} ${taskRecurringScheduleInstance?.generateAheadPeriod}
429                                            </td>
[153]430
[137]431                                        </tr>
[153]432
433                                        </tr>
434
435                                        <tr class="prop">
436                                            <td valign="top" class="name">Is Enabled:</td>
437
438                                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'isEnabled')}</td>
439
440                                        </tr>
441
[137]442                                    </tbody>
443                                </table>
[153]444
[137]445                                <table>
446                                    <tbody>
[153]447
[137]448                                        <tr class="prop">
[153]449                                            <td valign="top" class="name">Next Target Start Date:</td>   
450
451                                            <td valign="top" class="value">
452                                                <g:formatDate date="${taskRecurringScheduleInstance.nextTargetStartDate}" format="EEE, dd-MMM-yyyy"/>
453                                            </td>
454
455                                        </tr>
456
457                                        <tr class="prop">
[137]458                                            <td valign="top" class="name">Next Target Completion Date:</td>   
[153]459
[137]460                                            <td valign="top" class="value">
[139]461                                                <g:formatDate date="${taskRecurringScheduleInstance.nextTargetCompletionDate}" format="EEE, dd-MMM-yyyy"/>
[137]462                                            </td>
[153]463
[137]464                                        </tr>
[153]465
[137]466                                        <tr class="prop">
467                                            <td valign="top" class="name">Next Generation Date:</td>
[153]468
[137]469                                            <td valign="top" class="value">
[139]470                                                <g:formatDate date="${taskRecurringScheduleInstance.nextGenerationDate}" format="EEE, dd-MMM-yyyy"/>
[137]471                                            </td>
472                                        </tr>
[153]473
474                                        <tr class="prop">
475                                            <td valign="top" class="name">Last Generated Date:</td>
476
477                                            <td valign="top" class="value">
478                                                <g:formatDate date="${taskRecurringScheduleInstance.lastGeneratedDate}" format="EEE, dd-MMM-yyyy"/>
479                                            </td>
480
481                                        </tr>
482
483                                        <tr class="prop">
484                                            <td valign="top" class="name">Last Generated Sub Task:</td>
485
486                                            <td valign="top" class="value">
487                                                <g:link controller="taskDetailed" action="show" id="${taskRecurringScheduleInstance?.lastGeneratedSubTask?.id}">
488                                                    ${taskRecurringScheduleInstance?.lastGeneratedSubTask?.encodeAsHTML()}
489                                                </g:link>
490                                            </td>
491                                        </tr>
492                                    </tbody>
493                                </table>
494                            </div>
[134]495                            <div class="buttons">
496                                <g:form controller="taskRecurringScheduleDetailed">
[135]497                                    <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
[134]498                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
[153]499                                </g:form>
[134]500                            </div>
[153]501
502                        </g:else>
[131]503                    </richui:tabContent>
504<!-- End Task Recurrence tab -->
[126]505
[131]506<!-- Start Inventory tab -->
507                    <richui:tabContent>
508                        Used Inventory
509                    </richui:tabContent>
510<!-- End Inventory tab -->
[126]511
[153]512<!-- Start Sub Task tab -->
[131]513                    <richui:tabContent>
[153]514                        <g:if test="${subTaskInstanceTotal >= 1}">
515                            <div class="list">
516                                <table>
517                                    <thead>
518                                        <tr>
[134]519
[153]520                                            <th>Id</th>
521
522                                            <th>Target Start Date</th>
523
524                                            <th>Description</th>
525
526                                            <th>Lead Person</th>
527
528                                            <th>Task Priority</th>
529
530                                            <th>Task Status</th>
531
532                                            <th></th>
533
534                                        </tr>
535                                    </thead>
536                                    <tbody>
537                                    <g:each in="${subTaskInstanceList}" status="i" var="subTaskInstance">
538                                    <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'/>
539
540                                            <td>${fieldValue(bean:subTaskInstance, field:'id')}</td>
541
542                                            <td><g:formatDate date="${subTaskInstance.targetStartDate}" format="EEE, dd-MMM-yyyy"/></td>
543
544                                            <td>${subTaskInstance.description}</td>
545
546
547                                            <td>${subTaskInstance.leadPerson}</td>
548
549                                            <td>${subTaskInstance.taskPriority}</td>
550
551                                            <td>${subTaskInstance.taskStatus}</td>
552
553                                            <td>
554                                                <g:link action="show" id="${subTaskInstance.id}">
555                                                    <img  src="${resource(dir:'images/skin',file:'database_go.png')}" alt="Show" />
556                                                </g:link>
557                                            </td>
558
559                                        </tr>
560                                    </g:each>
561                                    </tbody>
562                                </table>
563                            </div>
564
565                            <div class="buttons">
566                                <g:form>
567                                    <input type="hidden" name="id" value="${taskInstance?.id}" />
568                                    <g:if test="${subTaskInstanceTotal > subTaskInstanceMax}">
569                                        Showing ${subTaskInstanceMax} of ${subTaskInstanceTotal}
570                                        <br />
571                                    </g:if>
572                                    <g:else>
573                                        Total ${subTaskInstanceTotal}
574                                        <br />
575                                    </g:else>
576                                    <span class="button"><g:actionSubmit action="listSubTasks" class="table" value="Sortable List" /></span>
577                                </g:form>
578                            </div>
579
580                        </g:if>
581                        <g:else>
582                            <br />
583                            No Sub Tasks.
584                        </g:else>
585
[131]586                    </richui:tabContent>
587<!-- End Sub Task tab -->
[126]588
[131]589                </richui:tabContents>
590            </richui:tabView>
[153]591
[84]592        </div>
593    </body>
594</html>
Note: See TracBrowser for help on using the repository browser.