source: branches/features/taskProcedureRework/grails-app/views/taskDetailed/show.gsp @ 793

Last change on this file since 793 was 793, checked in by gav, 13 years ago

Domain change, add DocumentReference.

File size: 49.2 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" />
[196]5        <title>Show Task #${taskInstance.id}</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">
[418]14            <g:render template="/shared/messages" />
[181]15            <g:if test="${taskInstance.trash}" >
16                <div class="errors">
[418]17                        <ul><li>This task is in the trash bin, but can be restored if required.<li><ul>
[181]18                </div>
19            </g:if>
[180]20            <g:hasErrors bean="${taskInstance}">
[133]21            <div class="errors">
[180]22                <g:renderErrors bean="${taskInstance}" as="list" />
[133]23            </div>
24            </g:hasErrors>
[126]25
[418]26            <div class="tabHeader">
[500]27                <h1>
[418]28                    Task #${taskInstance.id}
[729]29
30                    <g:if test="${taskInstance.approved}" >
31                        <img  src="${resource(dir:'images/skin',file:'cog.png')}" alt="Approved" title="Approved" />
32                    </g:if>
[730]33                    <g:if test="${taskRecurringScheduleInstance?.enabled}" >
34                        <img  src="${resource(dir:'images/skin',file:'arrow_refresh.png')}" alt="Recurrence Enabled" title="Recurrence Enabled" />
35                    </g:if>
[729]36                    <g:if test="${taskInstance.taskStatus.id == 2}" >
[736]37                        <img  src="${resource(dir:'images/skin',file:'arrow_right.png')}" alt="In Progress" title="In Progress" />
[729]38                    </g:if>
[418]39                    <g:if test="${taskInstance.attentionFlag}" >
[728]40                        <img  src="${resource(dir:'images/skin',file:'flag_red.png')}" alt="Attention Flag" title="Attention Flag" />
[418]41                    </g:if>
42                    <g:if test="${taskInstance.taskStatus.id == 3}" >
[728]43                        <img  src="${resource(dir:'images/skin',file:'tick.png')}" alt="Complete" title="Complete" />
[418]44                    </g:if>
45                </h1>
46                ${fieldValue(bean:taskInstance, field:'description')}
[729]47                <g:if test="${taskInstance.safetyRequirement}" >
48                    <img  src="${resource(dir:'images/skin',file:'lightning.png')}" alt="Safety Requirement" title="Safety Requirement" />
49                    Safety
50                </g:if>
51                <g:if test="${taskInstance.regulatoryRequirement}" >
52                    <img  src="${resource(dir:'images/skin',file:'script_lightning.png')}" alt="Regulatory Requirement" title="Regulatory Requirement" />
53                    Regulatory
54                </g:if>
55                <g:if test="${taskInstance.mandatoryRequirement}" >
56                    <img  src="${resource(dir:'images/skin',file:'script.png')}" alt="Mandatory Requirement" title="Mandatory Requirement" />
57                    Mandatory
58                </g:if>
[418]59            </div>
60
61            <br/>
62
[131]63            <richui:tabView id="tabView">
[126]64
65                <richui:tabLabels>
[418]66                    <richui:tabLabel selected="${showTab.task}" title="Details" />
[574]67                    <g:if test="${taskProcedureExits}">
68                        <richui:tabLabel selected="${showTab.procedure}" title="Procedure (!)" />
69                    </g:if>
70                    <g:else>
71                        <richui:tabLabel selected="${showTab.procedure}" title="Procedure" />
72                    </g:else>
73                    <g:if test="${taskRecurringScheduleExits}">
74                        <richui:tabLabel selected="${showTab.recurrence}" title="Recurrence (!)" />
75                    </g:if>
76                    <g:else>
77                        <richui:tabLabel selected="${showTab.recurrence}" title="Recurrence" />
78                    </g:else>
79                    <g:if test="${!inventoryMovementList.isEmpty()}">
80                        <richui:tabLabel selected="${showTab.inventory}" title="Inventory (${inventoryMovementList.size()})" />
81                    </g:if>
82                    <g:else>
83                        <richui:tabLabel selected="${showTab.inventory}" title="Inventory (0)" />
84                    </g:else>
85                    <g:if test="${subTaskInstanceTotal > 0}">
86                        <richui:tabLabel selected="${showTab.subTasks}" title="Sub Tasks (${subTaskInstanceTotal})" />
87                    </g:if>
88                    <g:else>
89                        <richui:tabLabel selected="${showTab.subTasks}" title="Sub Tasks (0)" />
90                    </g:else>
[126]91                </richui:tabLabels>
[131]92
[126]93                <richui:tabContents>
[131]94
95<!-- Start Task tab -->
[126]96                    <richui:tabContent>
[153]97
[131]98                        <div class="dialog">
99                            <table>
100                                <tbody>
[153]101
[244]102                                    <g:if test="${taskInstance.parentTask}">
103                                        <tr class="prop">
104                                            <td valign="top" class="name">Parent Task:</td>
105
[431]106                                            <td valign="top" class="value">
107                                                <g:link controller="taskDetailed" action="show" id="${taskInstance.parentTask.id}">
108                                                    ${taskInstance.parentTask.encodeAsHTML()}
109                                                </g:link>
110                                            </td>
[244]111
112                                        </tr>
113                                    </g:if>
114
[131]115                                    <tr class="prop">
116                                        <td valign="top" class="name">Comment:</td>
[153]117
[131]118                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'comment')}</td>
[153]119
[131]120                                    </tr>
[153]121
[131]122                                    <tr class="prop">
[180]123                                        <td valign="top" class="name">Target Start:</td>
[153]124
[431]125                                        <td valign="top" class="value">
126                                            <g:formatDate date="${taskInstance.targetStartDate}" format="EEE, dd-MMM-yyyy"/>
127                                        </td>
[153]128
[131]129                                    </tr>
[153]130
[131]131                                    <tr class="prop">
[180]132                                        <td valign="top" class="name">Target Completion:</td>
[153]133
[431]134                                        <td valign="top" class="value">
135                                            <g:formatDate date="${taskInstance.targetCompletionDate}" format="EEE, dd-MMM-yyyy"/>
136                                        </td>
[153]137
[131]138                                    </tr>
[153]139
[131]140                                    <tr class="prop">
[180]141                                        <td valign="top" class="name">
[323]142
143                                            <jsUtil:toggleControl toggleId="modifications"
144                                                                                    imageId="modificationsImg"
145                                                                                    closedImgUrl="${resource(dir:'images/skin',file:'bullet_toggle_plus.png')}"
146                                                                                    openImgUrl="${resource(dir:'images/skin',file:'bullet_toggle_minus.png')}"
147                                                                                    effect="fade"
148                                                                                    text="Modifications"
149                                                                                    />
[180]150                                        </td>
151
152                                        <td  valign="top" style="text-align:left;" class="value">
153                                            <div id="modifications" style="display:none;">
154                                                <ul>
155                                                <g:each var="a" in="${taskModificationList}">
156                                                    <li>${a?.encodeAsHTML()}</li>
157                                                </g:each>
158                                                </ul>
159                                            </div>
160                                        </td>
161                                    </tr>
162
163                                    <tr class="prop">
[168]164                                        <td valign="top" class="name">Primary Asset:</td>
165
166                                        <td valign="top" class="value"><g:link controller="assetDetailed" action="show" id="${taskInstance?.primaryAsset?.id}">${taskInstance?.primaryAsset?.encodeAsHTML()}</g:link></td>
167
168                                    </tr>
169
170                                    <tr class="prop">
171                                        <td valign="top" class="name">Associated Assets:</td>
172
173                                        <td  valign="top" style="text-align:left;" class="value">
174                                            <ul>
175                                            <g:each var="a" in="${taskInstance.associatedAssets}">
176                                                <li>${a?.encodeAsHTML()}</li>
177                                            </g:each>
178                                            </ul>
179                                        </td>
180
181                                    </tr>
182
183                                    <tr class="prop">
[180]184                                        <td valign="top" class="name">Priority:</td>
[153]185
[131]186                                        <td valign="top" class="value">${taskInstance?.taskPriority?.encodeAsHTML()}</td>
[153]187
[131]188                                    </tr>
[153]189
[131]190                                    <tr class="prop">
[592]191                                        <td valign="top" class="name">Positive Fault:</td>
192
193                                        <td valign="top" class="value">${fieldValue(bean:taskInstance, field:'positiveFault')}</td>
194
195                                    </tr>
196
197                                    <tr class="prop">
[244]198                                        <td valign="top" class="name">Group:</td>
[153]199
[244]200                                        <td valign="top" class="value">${taskInstance?.taskGroup?.encodeAsHTML()}</td>
[153]201
[131]202                                    </tr>
[153]203
[131]204                                    <tr class="prop">
[244]205                                        <td valign="top" class="name">Type:</td>
[153]206
[244]207                                        <td valign="top" class="value">${taskInstance?.taskType?.encodeAsHTML()}</td>
[153]208
[131]209                                    </tr>
[153]210
[131]211                                    <tr class="prop">
[244]212                                        <td valign="top" class="name">Lead Person:</td>
[153]213
[244]214                                        <td valign="top" class="value">${taskInstance?.leadPerson?.encodeAsHTML()}</td>
[153]215
[131]216                                    </tr>
[153]217
[131]218                                    <tr class="prop">
[242]219                                        <td valign="top" class="name">Assigned Groups:</td>
220
221                                        <td  valign="top" style="text-align:left;" class="value">
222                                            <ul>
[253]223                                            <g:each var="a" in="${assignedGroupList}">
[247]224                                                <li><g:link controller="assignedGroupDetailed" action="edit" id="${a.id}" params="['task.id':taskInstance.id]">${a?.encodeAsHTML()}</g:link></li>
[242]225                                            </g:each>
226                                            </ul>
[410]227                                            <g:link controller="assignedGroupDetailed" action="create" params="['task.id':taskInstance.id]">+Add Group</g:link>
[242]228                                        </td>
229
230                                    </tr>
231
232
233                                    <tr class="prop">
[241]234                                        <td valign="top" class="name">Assigned Persons:</td>
[153]235
[131]236                                        <td  valign="top" style="text-align:left;" class="value">
237                                            <ul>
[253]238                                            <g:each var="a" in="${assignedPersonList}">
[249]239                                                <li><g:link controller="assignedPersonDetailed" action="edit" id="${a.id}" params="['task.id':taskInstance.id]">${a?.encodeAsHTML()}</g:link></li>
[131]240                                            </g:each>
241                                            </ul>
[410]242                                            <g:link controller="assignedPersonDetailed" action="create" params="['task.id':taskInstance?.id]">+Add Person</g:link>
[131]243                                        </td>
[153]244
[131]245                                    </tr>
[153]246
[131]247                                </tbody>
248                            </table>
249                        </div>
[153]250
[131]251                        <div class="buttons">
252                            <g:form>
253                                <input type="hidden" name="id" value="${taskInstance?.id}" />
[181]254
255                                <g:if test="${taskInstance.trash}" >
[736]256                                    <span class="button"><g:actionSubmit class="restore" onclick="return confirm('Are you sure?');" value="Restore"/></span>
[181]257                                </g:if>
258                                <g:else>
259
260                                    <g:if test="${taskInstance.taskStatus.id != 3}" >
261
[418]262                                        <g:if test="${taskInstance.attentionFlag}" >
263                                            <span class="button"><g:actionSubmit class="flag" value="Clear" action="clearAttentionFlag"/></span>
264                                        </g:if>
265                                        <g:else>
266                                            <span class="button"><g:actionSubmit class="flag" value="Unresolved" action="setAttentionFlag"/></span>
[431]267                                            <g:helpBalloon class="helpballoon" code="task.status.unresolved" />
[418]268                                        </g:else>
269
270                                        <span class="button"><g:actionSubmit class="complete" value="Resolved" action="complete"/></span>
[431]271                                        <g:helpBalloon class="helpballoon" code="task.status.resolved" />
[418]272
[181]273                                        <g:if test="${taskInstance.approved}" >
274                                            <span class="button"><g:actionSubmit class="renegeApproval" value="Renege Approval" action="renegeApproval" /></span>
275                                        </g:if>
276                                        <g:else>
277                                            <span class="button"><g:actionSubmit class="approve" value="Approve" /></span>
278                                        </g:else>
279
280                                        <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
281                                        <span class="button"><g:actionSubmit class="trash" onclick="return confirm('Are you sure?');" value="Trash" /></span>
282
283                                    </g:if>
284                                    <g:else>
285                                        <span class="button"><g:actionSubmit class="reopen" value="Reopen" /></span>
286                                    </g:else>
287
288                                </g:else>
[131]289                            </g:form>
290                        </div>
[153]291
[191]292                        <br />
[153]293
[191]294                        <g:if test="${entryFaultList.isEmpty()}">
295                            <h1>No Faults</h1>
296                            <br />
297                        </g:if>
298                        <g:else>
299                            <div class="list">
300                                <h1>Faults</h1>
301                                <table>
302                                    <thead>
303                                        <tr>
304                                            <th>Comment</th>
[431]305                                            <th>Date</th>
306                                            <th>Production</th>
[418]307                                            <th>Down Time</th>
[191]308                                            <th>Entered By</th>
309                                            <th></th>
[131]310                                        </tr>
[191]311                                    </thead>
312                                    <tbody>
313                                        <g:each in="${entryFaultList}" status="i" var="entry">
[498]314                                                <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}"/>
[153]315
[498]316                                                    <td style="width:65%" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
317                                                        ${entry.comment.encodeAsHTML()}
318                                                    </td>
319
320                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
321                                                        <g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/>
322                                                    </td>
323
324                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
[431]325                                                        <g:if test="${entry.productionReference}">
326                                                            ${entry.productionReference.encodeAsHTML()}
327                                                        </g:if>
328                                                        <g:else>
329                                                            <g:message code="default.none.text" />
330                                                        </g:else>
331                                                    </td>
[153]332
[498]333                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
334                                                        ${entry.durationHour}:${entry.durationMinute}
335                                                    </td>
336
337                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
338                                                        ${entry.enteredBy.encodeAsHTML()}
339                                                    </td>
340
341                                                    <td class="notClickable">
[191]342                                                        <g:link controller="entryDetailed" action="edit" id="${entry.id}">
[736]343                                                            <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" title="Edit" />
[191]344                                                        </g:link>
345                                                    </td>
[153]346
[191]347                                                </tr>
348                                        </g:each>
349                                    </tbody>
350                                </table>
351                            </div>
352                        </g:else>
[153]353
[191]354                        <div class="buttons">
355                            <g:form controller="entryDetailed">
356                                <g:hiddenField name="taskInstance.id" value="${taskInstance?.id}" />
357                                <g:hiddenField name="entryType.id" value="1" />
358                                <span class="button">
359                                    <g:actionSubmit value="Add Fault" action="create"  class="add"/>
360                                </span>
361                            </g:form>
[131]362                        </div>
[153]363
[131]364                        <br />
[153]365
[418]366                        <g:if test="${entryCauseList.isEmpty()}">
367                            <h1>No Causes</h1>
368                            <br />
369                        </g:if>
370                        <g:else>
371                            <div class="list">
372                                <h1>Causes</h1>
373                                <table>
374                                    <thead>
375                                        <tr>
376                                            <th>Comment</th>
377                                            <th>Date Done</th>
378                                            <th>Entered By</th>
379                                            <th></th>
380                                        </tr>
381                                    </thead>
382                                    <tbody>
383                                        <g:each in="${entryCauseList}" status="i" var="entry">
[498]384                                                <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}"/>
[418]385
[498]386                                                    <td style="width:65%" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
387                                                        ${entry.comment.encodeAsHTML()}
388                                                    </td>
[418]389
[498]390                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
391                                                        <g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/>
392                                                    </td>
393
394                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
395                                                        ${entry.enteredBy.encodeAsHTML()}
396                                                    </td>
397
398                                                    <td class="notClickable">
[418]399                                                        <g:link controller="entryDetailed" action="edit" id="${entry.id}">
[736]400                                                            <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" title="Edit" />
[418]401                                                        </g:link>
402                                                    </td>
403
404                                                </tr>
405                                        </g:each>
406                                    </tbody>
407                                </table>
408                            </div>
409                        </g:else>
410
411                        <div class="buttons">
412                            <g:form controller="entryDetailed">
413                                <g:hiddenField name="taskInstance.id" value="${taskInstance?.id}" />
414                                <g:hiddenField name="entryType.id" value="2" />
415                                <span class="button">
416                                    <g:actionSubmit value="Add Cause" action="create"  class="add"/>
417                                </span>
418                            </g:form>
419                        </div>
420
421                        <br />
422
[191]423                        <g:if test="${entryWorkDoneList.isEmpty()}">
424                            <h1>No Work Done</h1>
425                            <br />
426                        </g:if>
427                        <g:else>
428                            <div class="list">
429                                <h1>Work Done</h1>
430                                <table>
431                                    <thead>
432                                        <tr>
433                                            <th>Comment</th>
434                                            <th>Date Done</th>
435                                            <th>Duration</th>
436                                            <th>Entered By</th>
437                                            <th></th>
438                                        </tr>
439                                    </thead>
440                                    <tbody>
441                                        <g:each in="${entryWorkDoneList}" status="i" var="entry">
[498]442                                                <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}"/>
[191]443
[498]444                                                    <td width="65%" onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
445                                                        ${entry.comment.encodeAsHTML()}
446                                                    </td>
447                                                   
448                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
449                                                        <g:formatDate date="${entry.dateDone}" format="EEE, dd-MMM-yyyy"/>
450                                                    </td>
451                                                   
452                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
453                                                        ${entry.durationHour}:${entry.durationMinute}
454                                                    </td>
455                                                   
456                                                    <td onclick='window.location = "${request.getContextPath()}/entryDetailed/edit/${entry.id}"'>
457                                                        ${entry.enteredBy.encodeAsHTML()}
458                                                    </td>
[191]459
[498]460                                                    <td class="notClickable">
[191]461                                                        <g:link controller="entryDetailed" action="edit" id="${entry.id}">
[736]462                                                            <img  src="${resource(dir:'images/skin',file:'database_edit.png')}" alt="Edit" title="Edit" />
[191]463                                                        </g:link>
464                                                    </td>
465
466                                                </tr>
467                                        </g:each>
468                                    </tbody>
469                                </table>
470                            </div>
471                        </g:else>
472
[131]473                        <div class="buttons">
474                            <g:form controller="entryDetailed">
[191]475                                <g:hiddenField name="taskInstance.id" value="${taskInstance?.id}" />
[418]476                                <g:hiddenField name="entryType.id" value="3" />
[131]477                                <span class="button">
[191]478                                    <g:actionSubmit value="Add Work Done" action="create"  class="add"/>
[131]479                                </span>
480                            </g:form>
481                        </div>
482                    </richui:tabContent>
483<!-- End Task tab -->
[126]484
[137]485
[131]486<!-- Start Task Procedure tab-->
487                    <richui:tabContent>
[133]488                        <g:if test="${!taskProcedureExits}">
[153]489                            <br />
490                            No Procedure linked.
491                            <br />
492                            <br />
[134]493                            <g:form controller="taskProcedureDetailed" >
[203]494                                <g:hiddenField name="taskInstance.id" value="${taskInstance?.id}" />
[133]495
496                                <div class="buttons">
497                                    <span class="button">
[175]498                                        <g:actionSubmit value="New" action="create" class="add"/>
[133]499                                    </span>
500                                    <span class="button">
[175]501                                        <g:actionSubmit value="Search" action="search" class="search"/>
[133]502                                    </span>
503                                </div>
[134]504
[133]505                            </g:form>
[126]506
[133]507                        </g:if>
508                        <g:else>
[153]509                            <div class="dialog">
[133]510                                <table>
511                                    <tbody>
[153]512
[133]513                                        <tr class="prop">
514                                            <td valign="top" class="name">Procedure Id:</td>
[770]515                                            <td valign="top" class="value">
516                                                ${fieldValue(bean:taskProcedureInstance, field:'id')}
517                                            </td>
518                                        </tr>
[153]519
[770]520                                        <tr class="prop">
521                                            <td valign="top" class="name">Linked Task:</td>
522                                            <td valign="top" class="value">
523                                                <g:link controller="taskDetailed"
524                                                                action="show"
525                                                                id="${taskProcedureInstance.linkedTask.id}">
526                                                    ${taskProcedureInstance.linkedTask.encodeAsHTML()}
527                                                </g:link>
528                                            </td>
529                                        </tr>
[153]530
[770]531                                        <tr class="prop">
532                                            <td valign="top" class="name">Linked Asset:</td>
533                                            <td valign="top" class="value">
[780]534                                                <g:render template="/shared/assetTreeCompact" model="['assetInstance': taskProcedureInstance.linkedTask.primaryAsset]" />
[770]535                                            </td>
[133]536                                        </tr>
[153]537
[770]538                                        <tr class="prop">
539                                            <td valign="top" class="name">Version:</td>
540                                            <td valign="top" class="value">
541                                                    ${fieldValue(bean:taskProcedureInstance, field:'version')}
542                                            </td>
543                                        </tr>
[760]544
[772]545                                        <tr class="prop">
546                                            <td valign="top" class="name">Last Updated:</td>
547                                            <td valign="top" class="value">
548                                                <g:formatDate date="${taskProcedureInstance.lastUpdated}"
549                                                                            format="EEE, dd-MMM-yyyy"/>
550                                            </td>
551                                        </tr>
552
[133]553                                    </tbody>
554                                </table>
555                            </div>
556                            <div class="buttons">
557                                <g:form controller="taskProcedureDetailed">
558                                    <input type="hidden" name="id" value="${taskProcedureInstance?.id}" />
559                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
[153]560                                </g:form>
[133]561                            </div>
[126]562
[793]563                            <br />
564
565                            <g:if test="${taskProcedureInstance.documentReferences}">
566                                <div class="list">
567                                    <table>
568                                        <thead>
569                                            <tr>
570                                                <th>Document Reference</th>
571                                                <th>Location</th>
572                                            </tr>
573                                        </thead>
574                                        <tbody>
575                                            <g:each in="${taskProcedureInstance.documentReferences}" status="i" var="docRef">
576                                                <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
577
578                                                    <td valign="top" class="name">
579                                                        ${fieldValue(bean:docRef, field:'name')}
580                                                    </td>
581
582                                                    <td  valign="top" style="text-align:left;" class="value">
583                                                        ${fieldValue(bean:docRef, field:'location')}
584                                                    </td>
585
586                                                </tr>
587                                            </g:each>
588
589                                        </tbody>
590                                    </table>
591                                </div>
592                            </g:if>
593
594                            <br />
595
[153]596                            <div class="list">
597                                <table>
598                                    <thead>
599                                        <tr>
600                                            <th>Step</th>
[776]601                                            <th>Assembly</th>
[153]602                                            <th>Description</th>
[788]603                                            <th>Page Ref</th>
[153]604                                        </tr>
605                                    </thead>
606                                    <tbody>
607                                        <g:each in="${maintenanceActionList}" status="i" var="maintenanceAction">
608                                            <tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
609
610                                                <td valign="top" class="name">
[498]611                                                    ${fieldValue(bean:maintenanceAction, field:'procedureStepNumber')}
[153]612                                                </td>
613
614                                                <td  valign="top" style="text-align:left;" class="value">
[785]615                                                    <g:if test="${maintenanceAction.assetSubItem}">
616                                                        ${maintenanceAction.assetSubItem.parentItem?.encodeAsHTML()}
617                                                        --
618                                                        ${maintenanceAction.assetSubItem.encodeAsHTML()}
619                                                    </g:if>
[153]620                                                </td>
621
[474]622                                                <td  valign="top" style="text-align:left;" class="value">
[770]623                                                    ${fieldValue(bean:maintenanceAction, field:'description')}
[474]624                                                </td>
625
626                                                <td  valign="top" style="text-align:left;" class="value">
[788]627                                                    ${fieldValue(bean:maintenanceAction, field:'pageRef')}
[474]628                                                </td>
629
[153]630                                            </tr>
631                                        </g:each>
632
633                                    </tbody>
634                                </table>
635                            </div>
636
[133]637                        </g:else>
638
[131]639                    </richui:tabContent>
640<!-- End Task Procedure tab-->
[126]641
[131]642<!-- Start Task Recurrence tab -->
643                    <richui:tabContent>
[134]644
645                        <g:if test="${!taskRecurringScheduleExits}">
[153]646                            <br />
647                            No Recurring Schedule.
648                            <br />
649                            <br />
[134]650                            <g:form controller="taskRecurringScheduleDetailed" >
[203]651                                <g:hiddenField name="task.id" value="${taskInstance.id}" />
[134]652
653                                <div class="buttons">
654                                    <span class="button">
[736]655                                        <g:actionSubmit value="Add" action="create" class="add" />
[134]656                                    </span>
657                                </div>
658
659                            </g:form>
660
661                        </g:if>
662                        <g:else>
[153]663
664                        <div class="dialog">
665                                <table>
666                                    <tbody>
667                                        <tr class="prop">
668                                            <td valign="top" class="name">Recurring Schedule:</td>
669
670                                            <td valign="top" class="value">${taskRecurringScheduleInstance.encodeAsHTML()}</td>
[137]671                                        </tr>
[153]672
[137]673                                        <tr class="prop">
[445]674                                            <td valign="top" class="name">Enabled:</td>
675
676                                            <td valign="top" class="value">${fieldValue(bean:taskRecurringScheduleInstance, field:'enabled')}</td>
677                                        </tr>
678
679                                        <tr class="prop">
[199]680                                            <td valign="top" class="name">Next Generation Date:</td>
[153]681
682                                            <td valign="top" class="value">
[199]683                                                <g:formatDate date="${taskRecurringScheduleInstance.nextGenerationDate}" format="EEE, dd-MMM-yyyy"/>
[153]684                                            </td>
685                                        </tr>
686
687                                        <tr class="prop">
[137]688                                            <td valign="top" class="name">Generate Ahead:</td>
[153]689
[137]690                                            <td valign="top" class="value">
[199]691                                                ${taskRecurringScheduleInstance?.generateAhead} ${Period.get(1).encodeAsHTML()}
[137]692                                            </td>
693                                        </tr>
[153]694
695                                        <tr class="prop">
[199]696                                            <td valign="top" class="name">Next Target Start Date:</td>
[153]697
698                                            <td valign="top" class="value">
699                                                <g:formatDate date="${taskRecurringScheduleInstance.nextTargetStartDate}" format="EEE, dd-MMM-yyyy"/>
700                                            </td>
701                                        </tr>
702
703                                        <tr class="prop">
[199]704                                            <td valign="top" class="name">Task Duration:</td>
[153]705
[137]706                                            <td valign="top" class="value">
[199]707                                                ${taskRecurringScheduleInstance?.taskDuration} ${taskRecurringScheduleInstance?.taskDurationPeriod}
[137]708                                            </td>
709                                        </tr>
[153]710
[137]711                                        <tr class="prop">
[199]712                                            <td valign="top" class="name">Next Target Completion Date:</td>
[153]713
[137]714                                            <td valign="top" class="value">
[199]715                                                <g:formatDate date="${taskRecurringScheduleInstance.nextTargetCompletionDate}" format="EEE, dd-MMM-yyyy"/>
[137]716                                            </td>
717                                        </tr>
[153]718
719                                    </tbody>
720                                </table>
721                            </div>
[134]722                            <div class="buttons">
723                                <g:form controller="taskRecurringScheduleDetailed">
[135]724                                    <input type="hidden" name="id" value="${taskRecurringScheduleInstance?.id}" />
[134]725                                    <span class="button"><g:actionSubmit class="edit" value="Edit" /></span>
[199]726                                    <span class="button"><g:actionSubmit class="go" value="Show" /></span>
[153]727                                </g:form>
[134]728                            </div>
[153]729
730                        </g:else>
[131]731                    </richui:tabContent>
732<!-- End Task Recurrence tab -->
[126]733
[131]734<!-- Start Inventory tab -->
735                    <richui:tabContent>
[175]736
737                        <g:if test="${inventoryMovementList.isEmpty()}">
738                            <br />
[225]739                            No Inventory Movements.
[175]740                            <br />
741                            <br />
742                        </g:if>
743                        <g:else>
744                            <div class="list">
745                                <table>
746                                    <thead>
747                                        <tr>
748                                            <th>Inventory Item</th>
749                                            <th>Quantity</th>
750                                            <th>Movement Type</th>
751                                            <th>Date</th>
752                                            <th></th>
753                                        </tr>
754                                    </thead>
755                                    <tbody>
756                                        <g:each in="${inventoryMovementList}" status="i" var="inventoryMovementInstance">
[498]757                                            <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}"/>
[175]758
[498]759                                                <td onclick='window.location = "${request.getContextPath()}/inventoryMovementDetailed/show/${inventoryMovementInstance.id}"'>
760                                                    ${fieldValue(bean:inventoryMovementInstance, field:'inventoryItem')}
761                                                </td>
762
763                                                <td onclick='window.location = "${request.getContextPath()}/inventoryMovementDetailed/show/${inventoryMovementInstance.id}"'>
764                                                    ${fieldValue(bean:inventoryMovementInstance, field:'quantity')}
765                                                </td>
766
767                                                <td onclick='window.location = "${request.getContextPath()}/inventoryMovementDetailed/show/${inventoryMovementInstance.id}"'>
768                                                    ${fieldValue(bean:inventoryMovementInstance, field:'inventoryMovementType')}
769                                                </td>
770
771                                                <td onclick='window.location = "${request.getContextPath()}/inventoryMovementDetailed/show/${inventoryMovementInstance.id}"'>
772                                                    <g:formatDate date="${inventoryMovementInstance.date}" format="EEE, dd-MMM-yyyy"/>
773                                                </td>
774
775                                                <td class="notClickable">
[175]776                                                    <g:link controller="inventoryMovementDetailed" action="show" id="${inventoryMovementInstance.id}">
[736]777                                                        <img  src="${resource(dir:'images/skin',file:'database_go.png')}" alt="Show" title="Show" />
[175]778                                                    </g:link>
779                                                </td>
780
781                                            </tr>
782                                        </g:each>
783                                    </tbody>
784                                </table>
785                            </div>
786                        </g:else>
787
[225]788                        <g:form controller="inventoryItemDetailed" >
789                            <g:hiddenField name="task.id" value="${taskInstance?.id}" />
[175]790                            <div class="buttons">
791                                <g:if test="${!inventoryMovementList.isEmpty()}">
792                                    Results: ${inventoryMovementList.size()}
793                                    <br />
794                                </g:if>
795                                <span class="button">
[736]796                                    <g:actionSubmit action="findInventoryItemForMovement" class="add" value="Add" />
[175]797                                </span>
798                            </div>
799                        </g:form>
800
[131]801                    </richui:tabContent>
802<!-- End Inventory tab -->
[126]803
[153]804<!-- Start Sub Task tab -->
[131]805                    <richui:tabContent>
[574]806                        <g:if test="${subTaskInstanceTotal > 0}">
[153]807                            <div class="list">
808                                <table>
809                                    <thead>
810                                        <tr>
[134]811
[153]812                                            <th>Id</th>
813
814                                            <th>Target Start Date</th>
815
816                                            <th>Description</th>
817
818                                            <th>Lead Person</th>
819
820                                            <th>Task Priority</th>
821
822                                            <th>Task Status</th>
823
824                                            <th></th>
825
826                                        </tr>
827                                    </thead>
828                                    <tbody>
829                                    <g:each in="${subTaskInstanceList}" status="i" var="subTaskInstance">
[498]830                                        <tr class="${(i % 2) == 0 ? 'clickableOdd' : 'clickableEven'}"/>
[153]831
[498]832                                            <td onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'>
833                                                ${fieldValue(bean:subTaskInstance, field:'id')}
834                                            </td>
[153]835
[498]836                                            <td onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'>
837                                                <g:formatDate date="${subTaskInstance.targetStartDate}" format="EEE, dd-MMM-yyyy"/>
838                                            </td>
[153]839
[498]840                                            <td onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'>
841                                                ${fieldValue(bean:subTaskInstance, field:'description')}
842                                            </td>
[153]843
844
[498]845                                            <td onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'>
846                                                ${fieldValue(bean:subTaskInstance, field:'leadPerson')}
847                                            </td>
[153]848
[498]849                                            <td onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'>
850                                                ${fieldValue(bean:subTaskInstance, field:'taskPriority')}
851                                            </td>
[153]852
[498]853                                            <td onclick='window.location = "${request.getContextPath()}/taskDetailed/show/${subTaskInstance.id}"'>
854                                                ${fieldValue(bean:subTaskInstance, field:'taskStatus')}
855                                            </td>
[153]856
[498]857                                            <td class="notClickable">
[153]858                                                <g:link action="show" id="${subTaskInstance.id}">
[736]859                                                    <img  src="${resource(dir:'images/skin',file:'database_go.png')}" alt="Show" title="Show" />
[153]860                                                </g:link>
861                                            </td>
862
863                                        </tr>
864                                    </g:each>
865                                    </tbody>
866                                </table>
867                            </div>
868
869                            <div class="buttons">
870                                <g:form>
[196]871                                    <g:hiddenField name="id" value="${taskInstance?.id}" />
[153]872                                    <g:if test="${subTaskInstanceTotal > subTaskInstanceMax}">
873                                        Showing ${subTaskInstanceMax} of ${subTaskInstanceTotal}
874                                        <br />
875                                    </g:if>
876                                    <g:else>
877                                        Total ${subTaskInstanceTotal}
878                                        <br />
879                                    </g:else>
[196]880                                    <span class="button"><g:actionSubmit action="listSubTasks" class="table" value="List" /></span>
[257]881                                    <span class="button"><g:actionSubmit action="createSubTask" class="save" value="Create" onclick="return confirm('${g.message(code: 'sub.task.create.confirm')}');" /></span>
[153]882                                </g:form>
883                            </div>
884
885                        </g:if>
886                        <g:else>
887                            <br />
888                            No Sub Tasks.
[196]889                            <br />
890                            <br />
891
892                            <div class="buttons">
893                                <g:form>
894                                    <g:hiddenField name="id" value="${taskInstance?.id}" />
[257]895                                    <span class="button"><g:actionSubmit action="createSubTask" class="save" value="Create" onclick="return confirm('${g.message(code: 'sub.task.create.confirm')}');" /></span>
[196]896                                </g:form>
897                            </div>
[153]898                        </g:else>
899
[131]900                    </richui:tabContent>
901<!-- End Sub Task tab -->
[126]902
[131]903                </richui:tabContents>
904            </richui:tabView>
[153]905
[418]906        </div> <!--body-->
[84]907    </body>
908</html>
Note: See TracBrowser for help on using the repository browser.