Merge branch 'master' of https://git.bukova.info/repos/git/isspst
commit
67ff54d3f1
@ -0,0 +1,30 @@
|
|||||||
|
package info.bukova.isspst.ui.main.invoicing;
|
||||||
|
|
||||||
|
import info.bukova.isspst.data.Invoicing;
|
||||||
|
import org.springframework.security.access.AccessDeniedException;
|
||||||
|
import org.zkoss.bind.annotation.Init;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class InvoicingMaterialArchiveList extends InvoicingList {
|
||||||
|
|
||||||
|
@Init(superclass = true)
|
||||||
|
public void initInvoicingMaterialArchiveList()
|
||||||
|
{
|
||||||
|
formZul = "/main/invoicing/material/invHeadForm.zul";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<Invoicing> getListFromService() {
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return invoicingService.getMaterialArchiveList();
|
||||||
|
}
|
||||||
|
catch (AccessDeniedException e)
|
||||||
|
{
|
||||||
|
e.printStackTrace();
|
||||||
|
return new ArrayList<Invoicing>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package info.bukova.isspst.ui.main.invoicing;
|
||||||
|
|
||||||
|
import info.bukova.isspst.data.Invoicing;
|
||||||
|
import org.springframework.security.access.AccessDeniedException;
|
||||||
|
import org.zkoss.bind.annotation.Init;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class InvoicingMaterialPendingList extends InvoicingList {
|
||||||
|
|
||||||
|
@Init(superclass = true)
|
||||||
|
public void initInvoicingMaterialPendingList()
|
||||||
|
{
|
||||||
|
formZul = "/main/invoicing/material/invHeadForm.zul";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<Invoicing> getListFromService() {
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return invoicingService.getMaterialPendingList();
|
||||||
|
}
|
||||||
|
catch (AccessDeniedException e)
|
||||||
|
{
|
||||||
|
e.printStackTrace();
|
||||||
|
return new ArrayList<Invoicing>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,32 +0,0 @@
|
|||||||
package info.bukova.isspst.ui.main.invoicing;
|
|
||||||
|
|
||||||
import info.bukova.isspst.data.Invoicing;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.springframework.security.access.AccessDeniedException;
|
|
||||||
import org.zkoss.bind.annotation.Init;
|
|
||||||
|
|
||||||
public class InvoicingPendingList extends InvoicingList
|
|
||||||
{
|
|
||||||
@Init(superclass = true)
|
|
||||||
public void initInvoicingPendingList()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected List<Invoicing> getListFromService()
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
return invoicingService.getPendingList();
|
|
||||||
}
|
|
||||||
catch (AccessDeniedException e)
|
|
||||||
{
|
|
||||||
// BindUtils.postGlobalCommand(null, null, "disableCentre", null);
|
|
||||||
// e.printStackTrace();
|
|
||||||
return new ArrayList<Invoicing>();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,30 @@
|
|||||||
|
package info.bukova.isspst.ui.main.invoicing;
|
||||||
|
|
||||||
|
import info.bukova.isspst.data.Invoicing;
|
||||||
|
import org.springframework.security.access.AccessDeniedException;
|
||||||
|
import org.zkoss.bind.annotation.Init;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class InvoicingServicesArchiveList extends InvoicingList {
|
||||||
|
|
||||||
|
@Init(superclass = true)
|
||||||
|
public void initInvoicingServicesArchiveList()
|
||||||
|
{
|
||||||
|
formZul = "/main/invoicing/services/invHeadForm.zul";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<Invoicing> getListFromService() {
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return invoicingService.getServicesArchiveList();
|
||||||
|
}
|
||||||
|
catch (AccessDeniedException e)
|
||||||
|
{
|
||||||
|
e.printStackTrace();
|
||||||
|
return new ArrayList<Invoicing>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package info.bukova.isspst.ui.main.invoicing;
|
||||||
|
|
||||||
|
import info.bukova.isspst.data.Invoicing;
|
||||||
|
import org.springframework.security.access.AccessDeniedException;
|
||||||
|
import org.zkoss.bind.annotation.Init;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class InvoicingServicesPendingList extends InvoicingList {
|
||||||
|
|
||||||
|
@Init(superclass = true)
|
||||||
|
public void initInvoicingServicesPendingList()
|
||||||
|
{
|
||||||
|
formZul = "/main/invoicing/services/invHeadForm.zul";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<Invoicing> getListFromService() {
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return invoicingService.getServicesPendingList();
|
||||||
|
}
|
||||||
|
catch (AccessDeniedException e)
|
||||||
|
{
|
||||||
|
e.printStackTrace();
|
||||||
|
return new ArrayList<Invoicing>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,3 +1,3 @@
|
|||||||
storage.root=/home/pepa/tmp/isspst
|
storage.root=~/tmp/isspst
|
||||||
storage.fulltextIndex=/home/pepa/tmp/isspst
|
storage.fulltextIndex=~/tmp/isspst
|
||||||
storage.signedDocuments=/home/pepa/tmp/isspst/signedDoc
|
storage.signedDocuments=~/tmp/isspst/signedDoc
|
@ -1,215 +0,0 @@
|
|||||||
<?page contentType="text/html;charset=UTF-8"?>
|
|
||||||
<zk>
|
|
||||||
<window
|
|
||||||
id="editWin"
|
|
||||||
closable="true"
|
|
||||||
width="95%"
|
|
||||||
height="95%"
|
|
||||||
border="normal"
|
|
||||||
position="center"
|
|
||||||
apply="org.zkoss.bind.BindComposer"
|
|
||||||
viewModel="@id('vm') @init('info.bukova.isspst.ui.main.invoicing.InvoicingForm')">
|
|
||||||
<caption
|
|
||||||
src="/img/invoicing-032.png"
|
|
||||||
zclass="form-caption"
|
|
||||||
label="${labels.InvoicingFormTitle}" />
|
|
||||||
<vlayout vflex="1">
|
|
||||||
<hbox
|
|
||||||
vflex="min"
|
|
||||||
hflex="1">
|
|
||||||
<div hflex="1">
|
|
||||||
<button
|
|
||||||
image="/img/item-add.png"
|
|
||||||
label="${labels.InvoicingAdd}"
|
|
||||||
sclass="nicebutton"
|
|
||||||
onClick="@command('addItem')" />
|
|
||||||
</div>
|
|
||||||
<div hflex="1"></div>
|
|
||||||
<div
|
|
||||||
hflex="1"
|
|
||||||
align="right">
|
|
||||||
<checkbox
|
|
||||||
label="${labels.Completed}"
|
|
||||||
checked="@bind(vm.dataBean.completed)" />
|
|
||||||
</div>
|
|
||||||
</hbox>
|
|
||||||
<hbox vflex="1">
|
|
||||||
<vbox vflex="1">
|
|
||||||
<listbox
|
|
||||||
model="@load(vm.dataBean.items)"
|
|
||||||
vflex="1"
|
|
||||||
selectedItem="@bind(vm.selectedItem)"
|
|
||||||
selectedIndex="@bind(vm.selectedIndex)">
|
|
||||||
<listhead>
|
|
||||||
<listheader
|
|
||||||
label="${labels.InvoicingDate}"
|
|
||||||
width="150px" />
|
|
||||||
<listheader label="${labels.InvoicingInvoiceNumber}" />
|
|
||||||
<listheader
|
|
||||||
label="${labels.InvoicingAmount}"
|
|
||||||
align="right"
|
|
||||||
width="90px" />
|
|
||||||
<listheader />
|
|
||||||
</listhead>
|
|
||||||
<template name="model">
|
|
||||||
<listitem>
|
|
||||||
<listcell>
|
|
||||||
<datebox
|
|
||||||
value="@bind(each.invoiceDate)"
|
|
||||||
format="${labels.DateFormat}"
|
|
||||||
inplace="true"
|
|
||||||
onFocus="@command('onFocus', item=each)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<textbox
|
|
||||||
value="@bind(each.invoiceNumber)"
|
|
||||||
sclass="grid-textbox-max"
|
|
||||||
inplace="true"
|
|
||||||
maxlength="@load(vm.lengthText)"
|
|
||||||
onFocus="@command('onFocus', item=each)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<textbox
|
|
||||||
value="@bind(each.amount) @converter(vm.standardBigDecimalConverter)"
|
|
||||||
sclass="grid-textbox-max"
|
|
||||||
inplace="true"
|
|
||||||
onFocus="@command('onFocus', item=each)"
|
|
||||||
maxlength="@load(vm.lengthText)"
|
|
||||||
onChange="@command('calculate')" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<button
|
|
||||||
label="${labels.RemoveItem}"
|
|
||||||
sclass="nicebutton"
|
|
||||||
onClick="@command('removeItem', item=each)" />
|
|
||||||
</listcell>
|
|
||||||
</listitem>
|
|
||||||
</template>
|
|
||||||
</listbox>
|
|
||||||
</vbox>
|
|
||||||
<grid hflex="min">
|
|
||||||
<columns>
|
|
||||||
<column
|
|
||||||
align="right"
|
|
||||||
hflex="min" />
|
|
||||||
<column />
|
|
||||||
</columns>
|
|
||||||
<rows>
|
|
||||||
<row>
|
|
||||||
<cell sclass="row-title">${labels.InvoicingRequirementNumber} :</cell>
|
|
||||||
<cell>
|
|
||||||
<textbox
|
|
||||||
width="200px"
|
|
||||||
value="@bind(vm.dataBean.requirement.numser)"
|
|
||||||
style="font-weight: bold;"
|
|
||||||
maxlength="@load(vm.lengthText)"
|
|
||||||
readonly="true" />
|
|
||||||
</cell>
|
|
||||||
</row>
|
|
||||||
<row>
|
|
||||||
<cell sclass="row-title">${labels.InvoicingDescription} :</cell>
|
|
||||||
<cell>
|
|
||||||
<textbox
|
|
||||||
width="350px"
|
|
||||||
rows="5"
|
|
||||||
value="@bind(vm.dataBean.requirement.description)"
|
|
||||||
maxlength="@load(vm.lengthDescription)"
|
|
||||||
readonly="true" />
|
|
||||||
</cell>
|
|
||||||
</row>
|
|
||||||
<row>
|
|
||||||
<cell sclass="row-title">${labels.InvoicingRequirementPrice} :</cell>
|
|
||||||
<cell>
|
|
||||||
<textbox
|
|
||||||
width="150px"
|
|
||||||
value="@bind(vm.dataBean.requirement.sumTotal) @converter(vm.standardBigDecimalConverter)"
|
|
||||||
maxlength="@load(vm.lengthText)"
|
|
||||||
readonly="true" />
|
|
||||||
</cell>
|
|
||||||
</row>
|
|
||||||
<row>
|
|
||||||
<cell sclass="row-title">${labels.InvoicingInvoicedPrice} :</cell>
|
|
||||||
<cell>
|
|
||||||
<textbox
|
|
||||||
width="150px"
|
|
||||||
value="@bind(vm.dataBean.totalInvoiced) @converter(vm.standardBigDecimalConverter)"
|
|
||||||
readonly="true"
|
|
||||||
maxlength="@load(vm.lengthText)"
|
|
||||||
style="@load(vm.dataBean.totalInvoiced gt vm.dataBean.requirement.sumTotal ? ' color: red;' : '' )" />
|
|
||||||
</cell>
|
|
||||||
</row>
|
|
||||||
</rows>
|
|
||||||
</grid>
|
|
||||||
</hbox>
|
|
||||||
<listbox
|
|
||||||
vflex="1"
|
|
||||||
model="@load(vm.dataBean.requirement.items)">
|
|
||||||
<listhead>
|
|
||||||
<listheader
|
|
||||||
hflex="10"
|
|
||||||
label="${labels.RequirementItemCode}" />
|
|
||||||
<listheader
|
|
||||||
hflex="15"
|
|
||||||
label="${labels.RequirementItemName}" />
|
|
||||||
<listheader
|
|
||||||
hflex="30"
|
|
||||||
label="${labels.RequirementItemText}" />
|
|
||||||
<listheader
|
|
||||||
hflex="10"
|
|
||||||
align="right"
|
|
||||||
label="${labels.RequirementItemQuantity}" />
|
|
||||||
<listheader
|
|
||||||
hflex="10"
|
|
||||||
label="${labels.RequirementItemMUnit}" />
|
|
||||||
<listheader
|
|
||||||
hflex="10"
|
|
||||||
align="right"
|
|
||||||
label="${labels.RequirementItemUnitPrice}" />
|
|
||||||
<listheader
|
|
||||||
hflex="10"
|
|
||||||
align="right"
|
|
||||||
label="${labels.RequirementItemTotal}" />
|
|
||||||
<listheader
|
|
||||||
hflex="10"
|
|
||||||
align="right"
|
|
||||||
label="${labels.InvoicingInvoiced}" />
|
|
||||||
<listheader
|
|
||||||
hflex="15"
|
|
||||||
label="${labels.RequirementItemDescription}" />
|
|
||||||
</listhead>
|
|
||||||
<template name="model">
|
|
||||||
<listitem>
|
|
||||||
<listcell>
|
|
||||||
<label value="@load(each.code)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<label value="@load(each.name)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<label value="@load(each.textItem)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<label value="@bind(each.quantity) @converter(vm.standardBigDecimalConverter)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<label value="@bind(each.munit.name)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<label value="@bind(each.unitPrice) @converter(vm.standardBigDecimalConverter)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<label value="@bind(each.total) @converter(vm.standardBigDecimalConverter)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<checkbox checked="@bind(each.paid)" />
|
|
||||||
</listcell>
|
|
||||||
<listcell>
|
|
||||||
<label value="@bind(each.description)" />
|
|
||||||
</listcell>
|
|
||||||
</listitem>
|
|
||||||
</template>
|
|
||||||
</listbox>
|
|
||||||
<include src="/app/formButtons.zul" />
|
|
||||||
</vlayout>
|
|
||||||
</window>
|
|
||||||
</zk>
|
|
@ -1,4 +1,4 @@
|
|||||||
<?page title="${labels.Invoicing}" contentType="text/html;charset=UTF-8"?>
|
<?page title="${labels.InvoicingMaterial}" contentType="text/html;charset=UTF-8"?>
|
||||||
<zk>
|
<zk>
|
||||||
|
|
||||||
<zscript>
|
<zscript>
|
@ -0,0 +1,20 @@
|
|||||||
|
<?page title="${labels.InvoicingMaterial}" contentType="text/html;charset=UTF-8"?>
|
||||||
|
<zk>
|
||||||
|
<window
|
||||||
|
id="editWin"
|
||||||
|
width="95%"
|
||||||
|
height="95%"
|
||||||
|
closable="true"
|
||||||
|
border="normal"
|
||||||
|
position="center"
|
||||||
|
apply="org.zkoss.bind.BindComposer"
|
||||||
|
viewModel="@id('vm') @init('info.bukova.isspst.ui.main.invoicing.InvoicingForm')">
|
||||||
|
<caption
|
||||||
|
image="/img/invoicing-032.png"
|
||||||
|
zclass="form-caption"
|
||||||
|
label="${labels.InvoicingMaterial}" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/main/invoicing/shared/invoicingForm.zul" />
|
||||||
|
</window>
|
||||||
|
</zk>
|
@ -0,0 +1,10 @@
|
|||||||
|
<?page title="${labels.InvoicingServices}" contentType="text/html;charset=UTF-8"?>
|
||||||
|
<zk>
|
||||||
|
|
||||||
|
<zscript>
|
||||||
|
String gridZul = "setup.zul";
|
||||||
|
</zscript>
|
||||||
|
|
||||||
|
<include src="/app/template.zhtml"/>
|
||||||
|
|
||||||
|
</zk>
|
@ -0,0 +1,20 @@
|
|||||||
|
<?page title="${labels.InvoicingServices}" contentType="text/html;charset=UTF-8"?>
|
||||||
|
<zk>
|
||||||
|
<window
|
||||||
|
id="editWin"
|
||||||
|
width="95%"
|
||||||
|
height="95%"
|
||||||
|
closable="true"
|
||||||
|
border="normal"
|
||||||
|
position="center"
|
||||||
|
apply="org.zkoss.bind.BindComposer"
|
||||||
|
viewModel="@id('vm') @init('info.bukova.isspst.ui.main.invoicing.InvoicingForm')">
|
||||||
|
<caption
|
||||||
|
image="/img/invoicing-032.png"
|
||||||
|
zclass="form-caption"
|
||||||
|
label="${labels.InvoicingServices}" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/main/invoicing/shared/invoicingForm.zul" />
|
||||||
|
</window>
|
||||||
|
</zk>
|
@ -0,0 +1,13 @@
|
|||||||
|
<zk>
|
||||||
|
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
|
||||||
|
<window
|
||||||
|
vflex="1"
|
||||||
|
border="none"
|
||||||
|
apply="org.zkoss.bind.BindComposer"
|
||||||
|
viewModel="@id('vm') @init('info.bukova.isspst.ui.main.invoicing.InvoicingServicesArchiveList')">
|
||||||
|
<include src="/app/toolbar.zul" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/main/invoicing/shared/invoicingGrid.zul" />
|
||||||
|
</window>
|
||||||
|
</zk>
|
@ -0,0 +1,13 @@
|
|||||||
|
<zk>
|
||||||
|
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
|
||||||
|
<window
|
||||||
|
vflex="1"
|
||||||
|
border="none"
|
||||||
|
apply="org.zkoss.bind.BindComposer"
|
||||||
|
viewModel="@id('vm') @init('info.bukova.isspst.ui.main.invoicing.InvoicingServicesPendingList')">
|
||||||
|
<include src="/app/toolbar.zul" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/main/invoicing/shared/invoicingGrid.zul" />
|
||||||
|
</window>
|
||||||
|
</zk>
|
@ -0,0 +1,19 @@
|
|||||||
|
<?page contentType="text/html;charset=UTF-8"?>
|
||||||
|
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
|
||||||
|
<zk>
|
||||||
|
<zscript>
|
||||||
|
String gridPending = "/main/invoicing/services/invHeadListPending.zul";
|
||||||
|
String gridArchive = "/main/invoicing/services/invHeadListArchive.zul";
|
||||||
|
</zscript>
|
||||||
|
<window
|
||||||
|
vflex="1"
|
||||||
|
border="normal">
|
||||||
|
<caption
|
||||||
|
src="/img/invoicing-032.png"
|
||||||
|
zclass="form-caption"
|
||||||
|
label="${labels.InvoicingServices}" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/main/invoicing/shared/tabPanels.zul" />
|
||||||
|
</window>
|
||||||
|
</zk>
|
@ -0,0 +1,198 @@
|
|||||||
|
<vlayout vflex="1">
|
||||||
|
<hbox
|
||||||
|
vflex="min"
|
||||||
|
hflex="1">
|
||||||
|
<div hflex="1">
|
||||||
|
<button
|
||||||
|
image="/img/item-add.png"
|
||||||
|
label="${labels.InvoicingAdd}"
|
||||||
|
sclass="nicebutton"
|
||||||
|
onClick="@command('addItem')"/>
|
||||||
|
</div>
|
||||||
|
<div hflex="1"></div>
|
||||||
|
<div
|
||||||
|
hflex="1"
|
||||||
|
align="right">
|
||||||
|
<checkbox
|
||||||
|
label="${labels.Completed}"
|
||||||
|
checked="@bind(vm.dataBean.completed)"/>
|
||||||
|
</div>
|
||||||
|
</hbox>
|
||||||
|
<hbox vflex="1">
|
||||||
|
<vbox vflex="1">
|
||||||
|
<listbox
|
||||||
|
model="@load(vm.dataBean.items)"
|
||||||
|
vflex="1"
|
||||||
|
selectedItem="@bind(vm.selectedItem)"
|
||||||
|
selectedIndex="@bind(vm.selectedIndex)">
|
||||||
|
<listhead>
|
||||||
|
<listheader
|
||||||
|
label="${labels.InvoicingDate}"
|
||||||
|
width="150px"/>
|
||||||
|
<listheader label="${labels.InvoicingInvoiceNumber}"/>
|
||||||
|
<listheader
|
||||||
|
label="${labels.InvoicingAmount}"
|
||||||
|
align="right"
|
||||||
|
width="90px"/>
|
||||||
|
<listheader/>
|
||||||
|
</listhead>
|
||||||
|
<template name="model">
|
||||||
|
<listitem>
|
||||||
|
<listcell>
|
||||||
|
<datebox
|
||||||
|
value="@bind(each.invoiceDate)"
|
||||||
|
format="${labels.DateFormat}"
|
||||||
|
inplace="true"
|
||||||
|
onFocus="@command('onFocus', item=each)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<textbox
|
||||||
|
value="@bind(each.invoiceNumber)"
|
||||||
|
sclass="grid-textbox-max"
|
||||||
|
inplace="true"
|
||||||
|
maxlength="@load(vm.lengthText)"
|
||||||
|
onFocus="@command('onFocus', item=each)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<textbox
|
||||||
|
value="@bind(each.amount) @converter(vm.standardBigDecimalConverter)"
|
||||||
|
sclass="grid-textbox-max"
|
||||||
|
inplace="true"
|
||||||
|
onFocus="@command('onFocus', item=each)"
|
||||||
|
maxlength="@load(vm.lengthText)"
|
||||||
|
onChange="@command('calculate')"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<button
|
||||||
|
label="${labels.RemoveItem}"
|
||||||
|
sclass="nicebutton"
|
||||||
|
onClick="@command('removeItem', item=each)"/>
|
||||||
|
</listcell>
|
||||||
|
</listitem>
|
||||||
|
</template>
|
||||||
|
</listbox>
|
||||||
|
</vbox>
|
||||||
|
<grid hflex="min">
|
||||||
|
<columns>
|
||||||
|
<column
|
||||||
|
align="right"
|
||||||
|
hflex="min"/>
|
||||||
|
<column/>
|
||||||
|
</columns>
|
||||||
|
<rows>
|
||||||
|
<row>
|
||||||
|
<cell sclass="row-title">${labels.InvoicingRequirementNumber} :</cell>
|
||||||
|
<cell>
|
||||||
|
<textbox
|
||||||
|
width="200px"
|
||||||
|
value="@bind(vm.dataBean.requirement.numser)"
|
||||||
|
style="font-weight: bold;"
|
||||||
|
maxlength="@load(vm.lengthText)"
|
||||||
|
readonly="true"/>
|
||||||
|
</cell>
|
||||||
|
</row>
|
||||||
|
<row>
|
||||||
|
<cell sclass="row-title">${labels.InvoicingDescription} :</cell>
|
||||||
|
<cell>
|
||||||
|
<textbox
|
||||||
|
width="350px"
|
||||||
|
rows="5"
|
||||||
|
value="@bind(vm.dataBean.requirement.description)"
|
||||||
|
maxlength="@load(vm.lengthDescription)"
|
||||||
|
readonly="true"/>
|
||||||
|
</cell>
|
||||||
|
</row>
|
||||||
|
<row>
|
||||||
|
<cell sclass="row-title">${labels.InvoicingRequirementPrice} :</cell>
|
||||||
|
<cell>
|
||||||
|
<textbox
|
||||||
|
width="150px"
|
||||||
|
value="@bind(vm.dataBean.requirement.sumTotal) @converter(vm.standardBigDecimalConverter)"
|
||||||
|
maxlength="@load(vm.lengthText)"
|
||||||
|
readonly="true"/>
|
||||||
|
</cell>
|
||||||
|
</row>
|
||||||
|
<row>
|
||||||
|
<cell sclass="row-title">${labels.InvoicingInvoicedPrice} :</cell>
|
||||||
|
<cell>
|
||||||
|
<textbox
|
||||||
|
width="150px"
|
||||||
|
value="@bind(vm.dataBean.totalInvoiced) @converter(vm.standardBigDecimalConverter)"
|
||||||
|
readonly="true"
|
||||||
|
maxlength="@load(vm.lengthText)"
|
||||||
|
style="@load(vm.dataBean.totalInvoiced gt vm.dataBean.requirement.sumTotal ? ' color: red;' : '' )"/>
|
||||||
|
</cell>
|
||||||
|
</row>
|
||||||
|
</rows>
|
||||||
|
</grid>
|
||||||
|
</hbox>
|
||||||
|
<listbox
|
||||||
|
vflex="1"
|
||||||
|
model="@load(vm.dataBean.requirement.items)">
|
||||||
|
<listhead>
|
||||||
|
<listheader
|
||||||
|
hflex="10"
|
||||||
|
label="${labels.RequirementItemCode}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="15"
|
||||||
|
label="${labels.RequirementItemName}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="30"
|
||||||
|
label="${labels.RequirementItemText}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="10"
|
||||||
|
align="right"
|
||||||
|
label="${labels.RequirementItemQuantity}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="10"
|
||||||
|
label="${labels.RequirementItemMUnit}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="10"
|
||||||
|
align="right"
|
||||||
|
label="${labels.RequirementItemUnitPrice}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="10"
|
||||||
|
align="right"
|
||||||
|
label="${labels.RequirementItemTotal}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="10"
|
||||||
|
align="right"
|
||||||
|
label="${labels.InvoicingInvoiced}"/>
|
||||||
|
<listheader
|
||||||
|
hflex="15"
|
||||||
|
label="${labels.RequirementItemDescription}"/>
|
||||||
|
</listhead>
|
||||||
|
<template name="model">
|
||||||
|
<listitem>
|
||||||
|
<listcell>
|
||||||
|
<label value="@load(each.code)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<label value="@load(each.name)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<label value="@load(each.textItem)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<label value="@bind(each.quantity) @converter(vm.standardBigDecimalConverter)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<label value="@bind(each.munit.name)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<label value="@bind(each.unitPrice) @converter(vm.standardBigDecimalConverter)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<label value="@bind(each.total) @converter(vm.standardBigDecimalConverter)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<checkbox checked="@bind(each.paid)"/>
|
||||||
|
</listcell>
|
||||||
|
<listcell>
|
||||||
|
<label value="@bind(each.description)"/>
|
||||||
|
</listcell>
|
||||||
|
</listitem>
|
||||||
|
</template>
|
||||||
|
</listbox>
|
||||||
|
<include src="/app/formButtons.zul"/>
|
||||||
|
</vlayout>
|
Loading…
Reference in New Issue