|
|
|
@@ -1,4 +1,5 @@
|
|
|
|
|
<?page title="${labels.TravelOrdersFormTitle}" contentType="text/html;charset=UTF-8"?>
|
|
|
|
|
|
|
|
|
|
<zk>
|
|
|
|
|
<window
|
|
|
|
|
id="editWin"
|
|
|
|
@@ -12,7 +13,295 @@
|
|
|
|
|
zclass="form-caption"
|
|
|
|
|
label="${labels.TravelOrdersFormTitle}" />
|
|
|
|
|
<vlayout>
|
|
|
|
|
|
|
|
|
|
<grid>
|
|
|
|
|
<columns visible="false">
|
|
|
|
|
<column hflex="min"/>
|
|
|
|
|
<column hflex="min"/>
|
|
|
|
|
<column hflex="2"/>
|
|
|
|
|
<column hflex="2"/>
|
|
|
|
|
<column hflex="2"/>
|
|
|
|
|
</columns>
|
|
|
|
|
<auxhead>
|
|
|
|
|
<auxheader label="${labels.TripBillTravelBegin}" colspan="2"/>
|
|
|
|
|
<auxheader label="${labels.TripBillTravelTarget}"/>
|
|
|
|
|
<auxheader label="${labels.TripBillPurpose}"/>
|
|
|
|
|
<auxheader label="${labels.TripBillTravelEnd}"/>
|
|
|
|
|
</auxhead>
|
|
|
|
|
<rows>
|
|
|
|
|
<row>
|
|
|
|
|
<cell colspan="2">
|
|
|
|
|
<label value="@load(vm.dataBean.requirement.from)"/>
|
|
|
|
|
</cell>
|
|
|
|
|
<cell>
|
|
|
|
|
<label value="@load(vm.dataBean.requirement.to)"/>
|
|
|
|
|
</cell>
|
|
|
|
|
<cell>
|
|
|
|
|
<label value="@load(vm.dataBean.requirement.description)"/>
|
|
|
|
|
</cell>
|
|
|
|
|
<cell>
|
|
|
|
|
<label value="@load(vm.dataBean.requirement.end)"/>
|
|
|
|
|
</cell>
|
|
|
|
|
</row>
|
|
|
|
|
<row>
|
|
|
|
|
<label value="@load(vm.dataBean.requirement.tripDate) @converter('formatedDate', format=labels.DateFormat)"/>
|
|
|
|
|
<label value="@load(vm.dataBean.requirement.tripDate) @converter('formatedDate', format='hh:mm')"/>
|
|
|
|
|
<cell/>
|
|
|
|
|
<cell/>
|
|
|
|
|
<label value="@load(vm.dataBean.requirement.endDate) @converter('formatedDate', format=labels.DateFormat)"/>
|
|
|
|
|
</row>
|
|
|
|
|
</rows>
|
|
|
|
|
</grid>
|
|
|
|
|
<grid>
|
|
|
|
|
<columns>
|
|
|
|
|
<column/>
|
|
|
|
|
<column/>
|
|
|
|
|
</columns>
|
|
|
|
|
<rows>
|
|
|
|
|
<row>
|
|
|
|
|
<label value="${labels.TripBillResultMessage}"/>
|
|
|
|
|
<datebox value="@bind(vm.dataBean.resultMessageDate)"/>
|
|
|
|
|
</row>
|
|
|
|
|
<row>
|
|
|
|
|
<cell colspan="2">
|
|
|
|
|
<checkbox label="${labels.TripBillFreeMeals}" checked="@bind(vm.dataBean.freeMeals)" onCheck="@command('calculate')"/>
|
|
|
|
|
</cell>
|
|
|
|
|
</row>
|
|
|
|
|
<row>
|
|
|
|
|
<cell colspan="2">
|
|
|
|
|
<checkbox label="${labels.TripBillFreeHousing}" checked="@bind(vm.dataBean.freeHousing)"/>
|
|
|
|
|
</cell>
|
|
|
|
|
</row>
|
|
|
|
|
<row>
|
|
|
|
|
<cell colspan="2">
|
|
|
|
|
<checkbox label="${labels.TripBillFreeCarfare}" checked="@bind(vm.dataBean.freeCarfare)"/>
|
|
|
|
|
</cell>
|
|
|
|
|
</row>
|
|
|
|
|
</rows>
|
|
|
|
|
</grid>
|
|
|
|
|
<grid model="@load(vm.dataBean.billItems)">
|
|
|
|
|
<auxhead>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<div sclass="vertikaal" height="50px">
|
|
|
|
|
<label value="${labels.TripBillDate}" sclass="bold"/>
|
|
|
|
|
</div>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader colspan="2">
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<!-- <auxheader >
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader> -->
|
|
|
|
|
<auxheader colspan="2" align="center">
|
|
|
|
|
<label value="${labels.TripBillDepartureArrival}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<!-- <auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader> -->
|
|
|
|
|
<auxheader rowspan="2" valign="bottom" height="110px">
|
|
|
|
|
<div sclass="vertikaal" height="88px" width="88px">
|
|
|
|
|
<vbox>
|
|
|
|
|
<label value="${labels.TripBillUsed}" sclass="bold"/>
|
|
|
|
|
<label value="${labels.TripBillVehicle}" sclass="bold"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2" valign="bottom" height="112px">
|
|
|
|
|
<div sclass="vertikaal" height="101px" width="90px">
|
|
|
|
|
<vbox>
|
|
|
|
|
<label value="${labels.TripBillBeginEnd}" sclass="bold"/>
|
|
|
|
|
<label value="${labels.TripBillWork}" sclass="bold"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
</div>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<html>
|
|
|
|
|
<![CDATA[${labels.TripBillTraveled} <br /> ${labels.TripBillKm} ]]>
|
|
|
|
|
</html>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<html>
|
|
|
|
|
<![CDATA[${labels.TripBillConsumption} <br /> ${labels.TripBillPHM} ]]>
|
|
|
|
|
</html>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<html>
|
|
|
|
|
<![CDATA[${labels.TripBillCarfare} <br /> ${labels.TripBillLocal} <br /> ${labels.TripBillTransportation} ]]>
|
|
|
|
|
</html>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<label value="${labels.TripBillHousing}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<html>
|
|
|
|
|
<![CDATA[${labels.TripBillNumber} <br /> ${labels.TripBillMeals} <br /> ${labels.TripBillFree} ]]>
|
|
|
|
|
</html>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<label value="${labels.TripBillMealExpenses}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<html>
|
|
|
|
|
<![CDATA[${labels.TripBillNecessary} <br /> ${labels.TripBillOther} <br /> ${labels.TripBillExpenses} ]]>
|
|
|
|
|
</html>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<label value="${labels.TripBillTotal}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader rowspan="2">
|
|
|
|
|
<label value="${labels.TripBillAdjusted}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
</auxhead>
|
|
|
|
|
<auxhead>
|
|
|
|
|
<!-- <auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader> -->
|
|
|
|
|
<auxheader colspan="2" align="center">
|
|
|
|
|
<label value="${labels.TripBillTravelTarget}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<!-- <auxheader >
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader> -->
|
|
|
|
|
<auxheader>
|
|
|
|
|
<label value="${labels.TripBillHourMin}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<label value="${labels.TripBillHourMin}" sclass="bold"/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<!-- <auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>-->
|
|
|
|
|
<!-- <auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader> -->
|
|
|
|
|
<auxheader>
|
|
|
|
|
<html>
|
|
|
|
|
<![CDATA[<div> ${labels.TripBillTraveled} <br /> ${labels.TripBillKm} <br /> ${labels.TripBillInKc}</div> ]]>
|
|
|
|
|
</html>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<html>
|
|
|
|
|
<![CDATA[${labels.TripBillConsumption} <br /> ${labels.TripBillPHM} <br /> ${labels.TripBillInKc}]]>
|
|
|
|
|
</html>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<!-- <auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>
|
|
|
|
|
<auxheader>
|
|
|
|
|
<label value=""/>
|
|
|
|
|
</auxheader>-->
|
|
|
|
|
</auxhead>
|
|
|
|
|
<columns visible="false">
|
|
|
|
|
<column width="60px"/>
|
|
|
|
|
<column width="60px"/>
|
|
|
|
|
<column hflex="max"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
<column width="70px"/>
|
|
|
|
|
</columns>
|
|
|
|
|
<rows>
|
|
|
|
|
<template name="model">
|
|
|
|
|
<row>
|
|
|
|
|
<label value="@load(each.date) @converter('formatedDate', format='dd.MM')"/>
|
|
|
|
|
<vbox>
|
|
|
|
|
<label value="${labels.TripBillTo}"/>
|
|
|
|
|
<label value="${labels.TripBillBack}"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
<vbox hflex="max">
|
|
|
|
|
<textbox inplace="true"
|
|
|
|
|
value="@load(each.to)"
|
|
|
|
|
sclass="grid-textbox-max-left"/>
|
|
|
|
|
<textbox inplace="true"
|
|
|
|
|
value="@load(each.back)"
|
|
|
|
|
sclass="grid-textbox-max-left"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
<vbox>
|
|
|
|
|
<timebox inplace="true" width="68px" value="@bind(each.toArrival)" onChange="@command('calculate')" format="short"/>
|
|
|
|
|
<timebox inplace="true" width="68px" value="@bind(each.backArrival)" onChange="@command('calculate')" format="short"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
<vbox>
|
|
|
|
|
<timebox inplace="true" width="68px" value="@bind(each.toDeparture)" onChange="@command('calculate')" format="short"/>
|
|
|
|
|
<timebox inplace="true" width="68px" value="@bind(each.backDeparture)" onChange="@command('calculate')" format="short"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
<vbox>
|
|
|
|
|
<combobox inplace="true"
|
|
|
|
|
model="@load(vm.vehicles)"
|
|
|
|
|
selectedItem="@bind(each.toVehicle)"
|
|
|
|
|
width="67px"
|
|
|
|
|
readonly="true">
|
|
|
|
|
<template name="model">
|
|
|
|
|
<comboitem label="@load(each.code)"/>
|
|
|
|
|
</template>
|
|
|
|
|
</combobox>
|
|
|
|
|
|
|
|
|
|
<combobox inplace="true"
|
|
|
|
|
model="@load(vm.vehicles)"
|
|
|
|
|
selectedItem="@bind(each.backVehicle)"
|
|
|
|
|
width="67px"
|
|
|
|
|
readonly="true">
|
|
|
|
|
<template name="model">
|
|
|
|
|
<comboitem label="@load(each.code)"/>
|
|
|
|
|
</template>
|
|
|
|
|
</combobox>
|
|
|
|
|
</vbox>
|
|
|
|
|
<vbox>
|
|
|
|
|
<timebox inplace="true" width="68px" value="@bind(each.beginWork)" format="short"/>
|
|
|
|
|
<timebox inplace="true" width="68px" value="@bind(each.endWork)" format="short"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
<vbox>
|
|
|
|
|
<textbox inplace="true" width="68px" value="@bind(each.distance) @converter(vm.bigDecimalConverter)"/>
|
|
|
|
|
<textbox inplace="true" width="68px" value="@bind(each.distanceAmount) @converter(vm.bigDecimalConverter)" onChange="@command('calculate')"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
<vbox>
|
|
|
|
|
<textbox inplace="true" width="68px" value="@bind(each.fuelConsumption) @converter(vm.bigDecimalConverter)"/>
|
|
|
|
|
<textbox inplace="true" width="68px" value="@bind(each.fuelAmount) @converter(vm.bigDecimalConverter)" onChange="@command('calculate')"/>
|
|
|
|
|
</vbox>
|
|
|
|
|
<textbox inplace="true" value="@bind(each.carefare) @converter(vm.bigDecimalConverter)" onChange="@command('calculate')"/>
|
|
|
|
|
<textbox inplace="true" value="@bind(each.housing) @converter(vm.bigDecimalConverter)" onChange="@command('calculate')"/>
|
|
|
|
|
<combobox inplace="true" selectedIndex="@bind(each.freeMealsCount)"
|
|
|
|
|
readonly="true"
|
|
|
|
|
width="60px"
|
|
|
|
|
disabled="@load(not vm.dataBean.freeMeals)"
|
|
|
|
|
onBlur="@command('calculate')">
|
|
|
|
|
<comboitem value="0" label="0"/>
|
|
|
|
|
<comboitem value="1" label="1"/>
|
|
|
|
|
<comboitem value="2" label="2"/>
|
|
|
|
|
<comboitem value="3" label="3"/>
|
|
|
|
|
</combobox>
|
|
|
|
|
<label value="@load(each.meals) @converter(vm.bigDecimalConverter)"/>
|
|
|
|
|
<textbox inplace="true" value="@bind(each.otherExpenses) @converter(vm.bigDecimalConverter)" onChange="@command('calculate')"/>
|
|
|
|
|
<label value="@load(each.total) @converter(vm.bigDecimalConverter)"/>
|
|
|
|
|
<label value="@load(each.adjustedTotal) @converter(vm.bigDecimalConverter)"/>
|
|
|
|
|
</row>
|
|
|
|
|
</template>
|
|
|
|
|
</rows>
|
|
|
|
|
</grid>
|
|
|
|
|
<div hflex="1" align="end" >
|
|
|
|
|
<label value="${labels.TripBillTotal}: " style="font-size: 14px; font-weight: bold;"/>
|
|
|
|
|
<label value="@load(vm.dataBean.total) @converter(vm.bigDecimalConverter)" style="font-size: 14px; font-weight: bold;"/>
|
|
|
|
|
</div>
|
|
|
|
|
<include src="/app/formButtons.zul" />
|
|
|
|
|
</vlayout>
|
|
|
|
|
</window>
|
|
|
|
|