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

Last change on this file since 172 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
Line 
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>
6        <nav:resources override="true"/>
7        <resource:tabView skin="tabviewCustom" />
8    </head>
9    <body>
10        <div class="nav">
11            <nav:renderSubItems group="nav"/>
12        </div>
13        <div class="body">
14            <g:if test="${flash.message}">
15            <div class="message">${flash.message}</div>
16            </g:if>
17            <g:hasErrors bean="${taskProcedureInstance}">
18            <div class="errors">
19                <g:renderErrors bean="${taskProcedureInstance}" as="list" />
20            </div>
21            </g:hasErrors>
22
23            <richui:tabView id="tabView">
24
25                <richui:tabLabels>
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" />
31                </richui:tabLabels>
32
33                <richui:tabContents>
34
35<!-- Start Task tab -->
36                    <richui:tabContent>
37
38                        <div class="dialog">
39                            <table>
40                                <tbody>
41
42                                    <tr class="prop">
43                                        <td valign="top" class="name">Id:</td>
44
45                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'id')}</td>
46
47                                    </tr>
48
49                                    <tr class="prop">
50                                        <td valign="top" class="name">Description:</td>
51
52                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'description')}</td>
53
54                                    </tr>
55
56                                    <tr class="prop">
57                                        <td valign="top" class="name">Comment:</td>
58
59                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
60
61                                    </tr>
62
63                                    <tr class="prop">
64                                        <td valign="top" class="name">Target Start Date:</td>
65
66                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetStartDate}" format="EEE, dd-MMM-yyyy"/></td>
67
68                                    </tr>
69
70                                    <tr class="prop">
71                                        <td valign="top" class="name">Target Completion Date:</td>
72
73                                        <td valign="top" class="value"><g:formatDate date="${taskInstance.targetCompletionDate}" format="EEE, dd-MMM-yyyy"/></td>
74
75                                    </tr>
76
77                                    <tr class="prop">
78                                        <td valign="top" class="name">Lead Person:</td>
79
80                                        <td valign="top" class="value">${taskInstance?.leadPerson?.encodeAsHTML()}</td>
81
82                                    </tr>
83
84                                    <tr class="prop">
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">
105                                        <td valign="top" class="name">Task Priority:</td>
106
107                                        <td valign="top" class="value">${taskInstance?.taskPriority?.encodeAsHTML()}</td>
108
109                                    </tr>
110
111                                    <tr class="prop">
112                                        <td valign="top" class="name">Task Status:</td>
113
114                                        <td valign="top" class="value">${taskInstance?.taskStatus?.encodeAsHTML()}</td>
115
116                                    </tr>
117
118                                    <tr class="prop">
119                                        <td valign="top" class="name">Is Active:</td>
120
121                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isActive')}</td>
122
123                                    </tr>
124
125                                    <tr class="prop">
126                                        <td valign="top" class="name">Is Approved:</td>
127
128                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isApproved')}</td>
129
130                                    </tr>
131
132                                    <tr class="prop">
133                                        <td valign="top" class="name">Is Scheduled:</td>
134
135                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'isScheduled')}</td>
136
137                                    </tr>
138
139                                    <tr class="prop">
140                                        <td valign="top" class="name">Parent Task:</td>
141
142                                        <td valign="top" class="value"><g:link controller="taskDetailed" action="show" id="${taskInstance?.parentTask?.id}">${taskInstance?.parentTask?.encodeAsHTML()}</g:link></td>
143
144                                    </tr>
145
146                                    <tr class="prop">
147                                        <td valign="top" class="name">Task Group:</td>
148
149                                        <td valign="top" class="value">${taskInstance?.taskGroup?.encodeAsHTML()}</td>
150
151                                    </tr>
152
153                                    <tr class="prop">
154                                        <td valign="top" class="name">Task Type:</td>
155
156                                        <td valign="top" class="value">${taskInstance?.taskType?.encodeAsHTML()}</td>
157
158                                    </tr>
159
160                                    <tr class="prop">
161                                        <td valign="top" class="name">Assigned Persons:</td>
162
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>
169                                            <g:link controller="assignedPersonDetailed" params="['task.id':taskInstance?.id]" action="create">Add AssignedPerson</g:link>
170                                        </td>
171
172                                    </tr>
173
174                                </tbody>
175                            </table>
176                        </div>
177
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>
185
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>
196
197            <!--                            <g:sortableColumn property="comment" title="Comment" />
198
199                                        <g:sortableColumn property="dateDone" title="Date Done" />
200
201                                        <g:sortableColumn property="enteredBy" title="Entered By" />-->
202                                    </tr>
203                                </thead>
204                                <tbody>
205                                <g:each in="${entryFaultList}" status="i" var="entry">
206                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
207
208                                            <td style="width:65%">${entry.comment}</td>
209                                            <td><g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/></td>
210                                            <td>${entry.durationHour}:${entry.durationMinute}</td>
211                                            <td>${entry.enteredBy}</td>
212
213                                            <td>
214                                                <g:link controller="entryDetailed" action="edit" id="${entry.id}">
215                                                    <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
216                                                </g:link>
217                                            </td>
218
219                                        </tr>
220                                </g:each>
221                                </tbody>
222                            </table>
223                        </div>
224
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>
235
236            <!--                            <g:sortableColumn property="commentW" title="Comment" />
237
238                                        <g:sortableColumn property="dateDoneW" title="Date Done" />
239
240                                        <g:sortableColumn property="enteredByW" title="Entered By" />-->
241                                    </tr>
242                                </thead>
243                                <tbody>
244                                <g:each in="${entryWorkDoneList}" status="i" var="entry">
245                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'/>
246
247                                            <td width="65%">${entry.comment}</td>
248                                            <td><g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/></td>
249                                            <td>${entry.durationHour}:${entry.durationMinute}</td>
250                                            <td>${entry.enteredBy}</td>
251
252                                            <td>
253                                                <g:link controller="entryDetailed" action="edit" id="${entry.id}">
254                                                    <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" />
255                                                </g:link>
256                                            </td>
257
258                                        </tr>
259                                </g:each>
260                                </tbody>
261                            </table>
262                        </div>
263
264                        <br />
265
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 -->
276
277
278<!-- Start Task Procedure tab-->
279                    <richui:tabContent>
280                        <g:if test="${!taskProcedureExits}">
281                            <br />
282                            No Procedure linked.
283                            <br />
284                            <br />
285                            <g:form controller="taskProcedureDetailed" >
286                                <input type="hidden" name="taskInstance.id" value="${taskInstance?.id}" />
287
288                                <div class="buttons">
289                                    <span class="button">
290                                        <g:actionSubmit value="New" action="create"  class="add"/>
291                                    </span>
292                                    <span class="button">
293                                        <g:actionSubmit value="Search" action="search"  class="search"/>
294                                    </span>
295                                </div>
296
297                            </g:form>
298
299                        </g:if>
300                        <g:else>
301                            <div class="dialog">
302                                <table>
303                                    <tbody>
304
305                                        <tr class="prop">
306                                            <td valign="top" class="name">Procedure Id:</td>
307
308                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'id')}</td>
309
310                                        </tr>
311
312                                        <tr class="prop">
313                                            <td valign="top" class="name">Name:</td>
314
315                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'name')}</td>
316
317                                        </tr>
318
319                                        <tr class="prop">
320                                            <td valign="top" class="name">Description:</td>
321
322                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'description')}</td>
323
324                                        </tr>
325
326                                        <tr class="prop">
327                                            <td valign="top" class="name">Is Active:</td>
328
329                                            <td valign="top" class="value">${fieldValue(bean:taskProcedureInstance, field:'isActive')}</td>
330
331                                        </tr>
332
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>
340                                </g:form>
341                            </div>
342
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
370                        </g:else>
371
372                    </richui:tabContent>
373<!-- End Task Procedure tab-->
374
375<!-- Start Task Recurrence tab -->
376                    <richui:tabContent>
377
378                        <g:if test="${!taskRecurringScheduleExits}">
379                            <br />
380                            No Recurring Schedule.
381                            <br />
382                            <br />
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>
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
405                                        </tr>
406
407                                        <tr class="prop">
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">
417                                            <td valign="top" class="name">Task Duration:</td>
418
419                                            <td valign="top" class="value">
420                                                ${taskRecurringScheduleInstance?.taskDuration} ${taskRecurringScheduleInstance?.taskDurationPeriod}
421                                            </td>
422                                        </tr>
423
424                                        <tr class="prop">
425                                            <td valign="top" class="name">Generate Ahead:</td>
426
427                                            <td valign="top" class="value">
428                                                ${taskRecurringScheduleInstance?.generateAhead} ${taskRecurringScheduleInstance?.generateAheadPeriod}
429                                            </td>
430
431                                        </tr>
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
442                                    </tbody>
443                                </table>
444
445                                <table>
446                                    <tbody>
447
448                                        <tr class="prop">
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">
458                                            <td valign="top" class="name">Next Target Completion Date:</td>   
459
460                                            <td valign="top" class="value">
461                                                <g:formatDate date="${taskRecurringScheduleInstance.nextTargetCompletionDate}" format="EEE, dd-MMM-yyyy"/>
462                                            </td>
463
464                                        </tr>
465
466                                        <tr class="prop">
467                                            <td valign="top" class="name">Next Generation Date:</td>
468
469                                            <td valign="top" class="value">
470                                                <g:formatDate date="${taskRecurringScheduleInstance.nextGenerationDate}" format="EEE, dd-MMM-yyyy"/>
471                                            </td>
472                                        </tr>
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>
495                            <div class="buttons">
496                                <g:form controller="taskRecurringScheduleDetailed">
497                                    <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
498                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
499                                </g:form>
500                            </div>
501
502                        </g:else>
503                    </richui:tabContent>
504<!-- End Task Recurrence tab -->
505
506<!-- Start Inventory tab -->
507                    <richui:tabContent>
508                        Used Inventory
509                    </richui:tabContent>
510<!-- End Inventory tab -->
511
512<!-- Start Sub Task tab -->
513                    <richui:tabContent>
514                        <g:if test="${subTaskInstanceTotal >= 1}">
515                            <div class="list">
516                                <table>
517                                    <thead>
518                                        <tr>
519
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
586                    </richui:tabContent>
587<!-- End Sub Task tab -->
588
589                </richui:tabContents>
590            </richui:tabView>
591
592        </div>
593    </body>
594</html>
Note: See TracBrowser for help on using the repository browser.