demo20230512/Views/Partial/LCA/DetailSurveyForm/WorkHour.cshtml
2023-05-12 10:20:28 +08:00

353 lines
17 KiB
Plaintext

<div ng-controller="LCAWorkHourCtrl" select-row lca-detail>
@* header *@
@* header's button style is controlled by header-content-layout, the business logic(ng-show) is controlled here *@
<div class="body_content " style="margin-top: 0px;">
<div header-content-layout>
<div header-content-layout style="margin: 0;">
<table border="1">
<tr>
<td style="text-align:right">{{Factors[0]}}</td>
<td style="width:10px"></td>
<td style="text-align:right">{{Factors[1]}}</td>
<td style="width:30px"></td>
<td style="text-align:right">{{Factors[2]}}</td>
<td style="width:10px"></td>
<td style="text-align:right">{{Factors[3]}}</td>
<td style="width:30px"></td>
<td style="text-align:right">{{Factors[4]}}</td>
<td style="width:10px"></td>
<td style="text-align:right">{{Factors[5]}}</td>
</tr>
<tr>
<td style="text-align:right">{{Factors[6]}}</td>
<td></td>
<td style="text-align:right">{{Factors[7]}}</td>
<td></td>
<td style="text-align:right">{{Factors[8]}}</td>
<td></td>
<td style="text-align:right">{{Factors[9]}}</td>
<td></td>
<td style="text-align:right">{{Factors[10]}}</td>
<td></td>
<td style="text-align:right">{{Factors[11]}}</td>
</tr>
</table>
</div>
<div style="margin: 10px 0 0 0;" ng-show="lcaDetail.isProductLCA">
<label for="Allocation">@Resource.Allocation</label>
<select name="AllocationN" id="Allocation"
ng-model="Allocation" style="width:130px"
ng-change="onAllocationChange(Allocation)"
ng-disabled="lcaDetail.Status == 5"
class="table_text_select">
<option value="-1">-- @Resource.StaticLabelGlobal_Select --</option>
<option value="99">@Resource.AllocationNon</option>
<option value="0">@Resource.AllocationWeight</option>
<option value="1">@Resource.AllocationAreaSize</option>
<option value="2">@Resource.AllocationPcsPerYear</option>
<option value="3">@Resource.AllocationEconomic</option>
<option value="4">@Resource.AllocationWorkHour</option>
</select>
<label for="Ratio">@Resource.Ratio {{Ratio}} </label>
<button class="header_button"
style="float: none; margin-left: 16px;"
ng-click="dataQualityShow(selectRow.getSelected())"
ng-show="lcaDetail.isProductLCA">
@Resource.DataQualityLevel
</button>
</div>
@*header content layout provide the general function like mouse over and background image*@
<div ng-hide="Editable" style="margin-top: 10px;">
<div class="header_image_button" ng-style="{backgroundImage: headerLayout.header_image4}"
ng-click="editProcess()"
ng-mouseover="headerLayout.headerImageChange(4, 2)"
ng-mouseleave="headerLayout.headerImageChange(4, 1)"
ng-show="lcaDetail.Status < 5">
<div class="tooltip" ng-show="headerLayout.show4">
<div ng-style="{width: headerLayout.tooltipWidth(4)}">
@Resource.StaticLabelGlobal_Edit
</div>
</div>
</div>
<div class="header_image_button"
ng-style="{backgroundImage: headerLayout.header_image8}"
ng-click="modelBuilder.export(getAllWorkHoursData())"
ng-mouseover="headerLayout.headerImageChange(8, 2)"
ng-mouseleave="headerLayout.headerImageChange(8, 1)">
<div class="tooltip" ng-show="headerLayout.show8">
<div ng-style="{width: tooltipWidth(8)}">
@Resource.StaticLabelExportBOM
</div>
</div>
</div>
<div class="header_image_button"
ng-style="{backgroundImage: headerLayout.header_image9}"
ng-click="fileImportModal.show = true;"
ng-mouseover="headerLayout.headerImageChange(9, 2)"
ng-mouseleave="headerLayout.headerImageChange(9, 1)"
ng-show="lcaDetail.Status < 5">
<div class="tooltip" ng-show="headerLayout.show9">
<div ng-style="{width: tooltipWidth(9)}">
@Resource.StaticLabelImprotBOM
</div>
</div>
</div>
<div class="header_image_button"
ng-style="{backgroundImage: headerLayout.header_image17}"
ng-click="quoteModal.show = true;"
ng-mouseover="headerLayout.headerImageChange(17, 2)"
ng-mouseleave="headerLayout.headerImageChange(17, 1)"
ng-show="lcaDetail.Status < 5">
<div class="tooltip" ng-show="headerLayout.show17">
<div ng-style="{width: tooltipWidth(17)}">
@Resource.StaticLabelReferenceData
</div>
</div>
</div>
</div>
<div ng-show="Editable">
<!-- Save -->
<div class="header_image_button"
ng-style="{backgroundImage: headerLayout.header_image5}"
ng-click="saveData()"
ng-mouseover="headerLayout.headerImageChange(5, 2)"
ng-mouseleave="headerLayout.headerImageChange(5, 1)">
<div class="tooltip" ng-show="headerLayout.show5">
<div ng-style="{width: tooltipWidth(5)}">
@Resource.StaticLabelGlobal_Save
</div>
</div>
</div>
<!--Cancel-->
<div class="header_image_button"
ng-style="{backgroundImage: headerLayout.header_image7}"
ng-click="cancelData()"
ng-mouseover="headerLayout.headerImageChange(7, 2)"
ng-mouseleave="headerLayout.headerImageChange(7, 1)">
<div class="tooltip" ng-show="headerLayout.show7">
<div ng-style="{width: tooltipWidth(7)}">
@Resource.StaticLabelGlobal_Cancel
</div>
</div>
</div>
</div>
</div>
</div>
@* end of header *@
@* the body of index *@
<div class="body_content">
<div class="title">
@*{{selectedPeopleType}}*@
<label class="col-sm-2 col-form-label" style="width:auto;">新增人員類別:</label>
<input type="text" ng-model="newPeopleType" class="col-2 ml-2 mr-2" ng-disabled="Editable" />
<button class="header_button"
style="float: none; margin-left: 0px;"
ng-click="createPeopleType()" ng-disabled="Editable">
@Resource.StaticLabelGlobal_Save
</button>
<br />
<label class="col-sm-2 col-form-label" style="width:auto;">選擇人員類別:</label>
<select class="col-2 ml-2 mr-2" ng-model="selectedPeopleType" ng-change="onPeopleTypeChange(selectedPeopleType)"
ng-options="m as m for m in peopleTypes" ng-disabled="Editable" />
<button class="header_button"
style="float: none; margin-left: 0px;"
ng-click="deletePeopleType()" ng-disabled="Editable">
@Resource.StaticLabelGlobal_Delete
</button>
</div>
<div class="table_overflow">
<table class="table">
<thead>
<tr class="table-active" style="text-align:center">
<th ng-show="lcaDetail.isProductLCA">@Resource.StaticLabelGlobal_Years</th>
<th>@Resource.StaticLabelGlobal_Month</th>
<th>@Resource.WorkerNumber</th>
<th>@Resource.WorkDays</th>
<th>@Resource.AverageHourPerDay</th>
<th>@Resource.ProportionOfWorkingHours</th>
<th>@Resource.TotalWorkHours</th>
<th>@Resource.DescriptionAndExplanation</th>
<th>@Resource.KgCO2e</th>
</tr>
</thead>
<tbody ng-mouseleave="setHoverColumnRow(-1, -1, -1)">
<tr class="survey_order_table_row"
ng-class="{ selected: row == selectRow.getSelected() }"
ng-click="selectRow.select(row)"
ng-repeat="row in modelDirectWorkHours | filter : searchText">
<td ng-show="lcaDetail.isProductLCA" align="right"> {{row.showYear}}</td>
<td> {{row.Month}}</td>
<td align="right">
<div ng-hide="Editable">{{row.WorkerNumber | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.newWorkerNumber" class="table_text_input" ng-blur="updateRow(row)"/> </div>
</td>
<td align="right">
<div ng-hide="Editable">{{row.WorkDay | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.newWorkDay" class="table_text_input" ng-blur="updateRow(row)"/> </div>
</td>
<td align="right">
<div ng-hide="Editable">{{row.AverageHourPerDay | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.newAverageHourPerDay" class="table_text_input" ng-blur="updateRow(row)"/> </div>
</td>
<td align="right"> {{row.ProportionOfWorkingHours|number:4}}</td>
<td align="right">
<div ng-hide="Editable">{{row.Scalar | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.Scalar" class="table_text_input" /> </div>
</td>
<td>
<div ng-hide="Editable">{{row.Description}}</div>
<div ng-show="Editable"><input type="text" ng-model="row.newDescription" class="table_text_input" /> </div>
</td>
<td align="right"> {{row.KgCO2e | number:4}}</td>
@*</div>*@
</tr>
<tr style="background-color: #F5F5F5" align="right">
<td></td>
<td ng-show="lcaDetail.isProductLCA"></td>
<td></td>
<td>{{sumWorkDay | number:4}}</td>
<td></td>
<td></td>
<td>{{sumStaffTotalWorkHour | number:4}}</td>
<td></td>
<td>{{sumKgCO2e | number:4}}</td>
</tr>
<tr style="background-color: #F5F5F5" ng-show="lcaDetail.isProductLCA" align="right">
<td>@Resource.AllocatedKgCO2e</td>
<td ng-show="lcaDetail.isProductLCA"></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>{{sumKgCO2e * Ratio | number:4}}</td>
</tr>
<tr style="border-bottom: solid 1px rgb(214, 214, 214);">
<td ng-show="model.length == 0">
@Resource.NoData
</td>
</tr>
</tbody>
</table>
</div>
<br />
@*
<div class="title">
@Resource.IndirectStaff
</div>
<div class="table_overflow">
<table class="table">
<thead>
<tr class="table-active" style="text-align:center" >
<th ng-show="lcaDetail.isProductLCA" align="right">@Resource.StaticLabelGlobal_Years</th>
<th>@Resource.StaticLabelGlobal_Month</th>
<th>@Resource.WorkerNumber</th>
<th>@Resource.WorkDays</th>
<th>@Resource.AverageHourPerDay</th>
<th>@Resource.ProportionOfWorkingHours</th>
<th>@Resource.TotalWorkHours</th>
<th>@Resource.DescriptionAndExplanation</th>
<th>@Resource.KgCO2e (kgCO2e)</th>
</tr>
</thead>
<tbody ng-mouseleave="setHoverColumnRow(-1, -1, -1)">
<tr class="survey_order_table_row"
ng-repeat="row in modelIndirectWorkHours"
ng-class="{ selected: row == selectRow.getSelected() }"
ng-click="selectRow.select(row)">
<td ng-show="lcaDetail.isProductLCA" align="right"> {{row.showYear}}</td>
<td> {{row.Month}}</td>
<td align="right">
<div ng-hide="Editable">{{row.WorkerNumber | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.newWorkerNumber" ng-blur="updateRow(row)"/> </div>
</td>
<td align="right">
<div ng-hide="Editable">{{row.WorkDay | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.newWorkDay" ng-blur="updateRow(row)"/> </div>
</td>
<td align="right">
<div ng-hide="Editable">{{row.AverageHourPerDay | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.newAverageHourPerDay" ng-blur="updateRow(row)"/> </div>
</td>
<td align="right"> {{row.ProportionOfWorkingHours|number:4}}</td>
<td align="right">
<div ng-hide="Editable">{{row.Scalar | number:4}}</div>
<div ng-show="Editable"><input type="number" step="any" ng-model="row.Scalar" class="table_text_input" /> </div>
</td>
<td>
<div ng-hide="Editable">{{row.Description}}</div>
<div ng-show="Editable"><input type="text" ng-model="row.newDescription" class="table_text_input" /> </div>
</td>
<td align="right"> {{row.KgCO2e | number:3}}</td>
</tr>
<tr style="background-color: #F5F5F5" align="right">
<td></td>
<td ng-show="lcaDetail.isProductLCA"></td>
<td></td>
<td>{{sumIndirectWorkDay | number:4}}</td>
<td></td>
<td></td>
<td>{{sumIndirectStaffTotalWorkHour | number:4}}</td>
<td></td>
<td>{{sumIndirectKgCO2e | number:3}}</td>
</tr>
<tr style="background-color: #F5F5F5" align="right">
<td>@Resource.AllocatedKgCO2e</td>
<td ng-show="lcaDetail.isProductLCA"></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>{{sumIndirectKgCO2e * Ratio | number:4}}</td>
</tr>
<tr border-bottom: solid 1px rgb(214, 214, 214);">
<td ng-show="model.length == 0">
@Resource.NoData
</td>
</tr>
</tbodyclass="table-active>
</table>
</div>
*@
@* end of the body of index *@
<loading ng-init="loading=false"></loading>
<table-edit-modal display-option="fileImportModal">
<div file-import-process import-option="fileImportOptions"></div>
</table-edit-modal>
<quality display-option="dataQualityOption">
</quality>
<table-edit-modal display-option="quoteModal">
<div></div>
<div quote quote-options="quoteOptions"></div>
</table-edit-modal>
<div class="footnote">
@Html.Raw(@Resource.FootnoteWorkHour.Replace("\r\n", "<br>"))
</div>
</div>
</div>