Podepsané dokumenty se nyní zobrazují ve dvou záložkách - Aktuální
dokumenty a Archiv. V Archivu se zobrazují dokumenty starší než rok. closes #225Verze_3.0
parent
66e0c427ac
commit
cc374a3bf1
@ -0,0 +1,29 @@
|
|||||||
|
package info.bukova.isspst.ui.signeddocs;
|
||||||
|
|
||||||
|
import info.bukova.isspst.data.SignedDocument;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.springframework.security.access.AccessDeniedException;
|
||||||
|
import org.zkoss.bind.annotation.Init;
|
||||||
|
|
||||||
|
public class SignedDocsActualList extends SignedDocsList {
|
||||||
|
|
||||||
|
@Init(superclass = true)
|
||||||
|
public void SignedDocsActualListInit() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<SignedDocument> getListFromService() {
|
||||||
|
try {
|
||||||
|
return signedDocumentService.getActualList();
|
||||||
|
}
|
||||||
|
catch (AccessDeniedException e) {
|
||||||
|
// BindUtils.postGlobalCommand(null, null, "disableCentre", null);
|
||||||
|
// e.printStackTrace();
|
||||||
|
return new ArrayList<SignedDocument>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
package info.bukova.isspst.ui.signeddocs;
|
||||||
|
|
||||||
|
import info.bukova.isspst.data.SignedDocument;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.springframework.security.access.AccessDeniedException;
|
||||||
|
import org.zkoss.bind.annotation.Init;
|
||||||
|
|
||||||
|
public class SignedDocsArchiveList extends SignedDocsList {
|
||||||
|
|
||||||
|
@Init(superclass = true)
|
||||||
|
public void SignedDocsArchiveListInit() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<SignedDocument> getListFromService() {
|
||||||
|
try {
|
||||||
|
return signedDocumentService.getArchiveList();
|
||||||
|
}
|
||||||
|
catch (AccessDeniedException e) {
|
||||||
|
// BindUtils.postGlobalCommand(null, null, "disableCentre", null);
|
||||||
|
// e.printStackTrace();
|
||||||
|
return new ArrayList<SignedDocument>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -1,216 +1,129 @@
|
|||||||
<?page contentType="text/html;charset=UTF-8"?>
|
|
||||||
<zk xmlns="http://www.zkoss.org/2005/zul"
|
<hlayout vflex="1">
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
<listbox
|
||||||
xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul/zul.xsd">
|
vflex="1"
|
||||||
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
|
hflex="60"
|
||||||
<window
|
selectedItem="@bind(vm.dataBean)"
|
||||||
vflex="1"
|
onSelect="@command('onChangeSelectSignedDocs', ctrl=self)"
|
||||||
border="normal"
|
model="@load(vm.dataList)">
|
||||||
apply="org.zkoss.bind.BindComposer"
|
<listhead menupopup="auto">
|
||||||
viewModel="@id('vm') @init('info.bukova.isspst.ui.signeddocs.SignedDocsList')">
|
<listheader
|
||||||
<caption
|
hflex="7"
|
||||||
image="/img/adobe-032.png"
|
sort="czech(agendaName)"
|
||||||
zclass="form-caption"
|
label="${labels.AgendaName}" />
|
||||||
label="${labels.AgendaSignedDocuments}" />
|
<listheader
|
||||||
<tabbox
|
hflex="4"
|
||||||
vflex="1"
|
sort="czech(numser)"
|
||||||
orient="top">
|
label="${labels.number}" />
|
||||||
<tabs width="500px">
|
<listheader
|
||||||
<tab label="${labels.ActualDocuments}" />
|
hflex="20"
|
||||||
<!-- tab label="${labels.Archive}" /-->
|
sort="czech(description)"
|
||||||
</tabs>
|
label="${labels.OrderFormDescription}" />
|
||||||
<tabpanels>
|
<listheader
|
||||||
<tabpanel>
|
hflex="5"
|
||||||
<include src="toolbar.zul" />
|
onCreate="self.sort(false)"
|
||||||
<hlayout vflex="1">
|
sort="auto(signDate)"
|
||||||
<listbox
|
label="${labels.SigningDate}" />
|
||||||
vflex="1"
|
</listhead>
|
||||||
hflex="60"
|
<auxhead visible="@load(vm.filter)">
|
||||||
selectedItem="@bind(vm.dataBean)"
|
<auxheader>
|
||||||
onSelect="@command('onChangeSelectSignedDocs', ctrl=self)"
|
<div sclass="find-grid-cell">
|
||||||
model="@load(vm.dataList)">
|
<div sclass="find-grid-divtextbox">
|
||||||
<listhead menupopup="auto">
|
<textbox
|
||||||
<listheader
|
value="@bind(vm.filterTemplate.agendaName)"
|
||||||
hflex="7"
|
instant="true"
|
||||||
sort="czech(agendaName)"
|
onChange="@command('doFilter')"
|
||||||
label="${labels.AgendaName}" />
|
maxlength="@load(vm.lengthText)"
|
||||||
<listheader
|
sclass="find-grid-textbox" />
|
||||||
hflex="4"
|
</div>
|
||||||
sort="czech(numser)"
|
<div sclass="find-grid-img">
|
||||||
label="${labels.number}" />
|
<image src="/img/funnel.png" />
|
||||||
<listheader
|
</div>
|
||||||
hflex="20"
|
</div>
|
||||||
sort="czech(description)"
|
</auxheader>
|
||||||
label="${labels.OrderFormDescription}" />
|
<auxheader>
|
||||||
<listheader
|
<div sclass="find-grid-cell">
|
||||||
hflex="5"
|
<div sclass="find-grid-divtextbox">
|
||||||
onCreate="self.sort(false)"
|
<textbox
|
||||||
sort="auto(signDate)"
|
value="@bind(vm.filterTemplate.numser)"
|
||||||
label="${labels.SigningDate}" />
|
instant="true"
|
||||||
</listhead>
|
onChange="@command('doFilter')"
|
||||||
<auxhead visible="@load(vm.filter)">
|
maxlength="@load(vm.lengthText)"
|
||||||
<auxheader>
|
sclass="find-grid-textbox" />
|
||||||
<div sclass="find-grid-cell">
|
</div>
|
||||||
<div sclass="find-grid-divtextbox">
|
<div sclass="find-grid-img">
|
||||||
<textbox
|
<image src="/img/funnel.png" />
|
||||||
value="@bind(vm.filterTemplate.agendaName)"
|
</div>
|
||||||
instant="true"
|
</div>
|
||||||
onChange="@command('doFilter')"
|
</auxheader>
|
||||||
maxlength="@load(vm.lengthText)"
|
<auxheader>
|
||||||
sclass="find-grid-textbox" />
|
<div sclass="find-grid-cell">
|
||||||
</div>
|
<div sclass="find-grid-divtextbox">
|
||||||
<div sclass="find-grid-img">
|
<textbox
|
||||||
<image src="/img/funnel.png" />
|
value="@bind(vm.filterTemplate.description)"
|
||||||
</div>
|
instant="true"
|
||||||
</div>
|
onChange="@command('doFilter')"
|
||||||
</auxheader>
|
maxlength="@load(vm.lengthDescription)"
|
||||||
<auxheader>
|
sclass="find-grid-textbox" />
|
||||||
<div sclass="find-grid-cell">
|
</div>
|
||||||
<div sclass="find-grid-divtextbox">
|
<div sclass="find-grid-img">
|
||||||
<textbox
|
<image src="/img/funnel.png" />
|
||||||
value="@bind(vm.filterTemplate.numser)"
|
</div>
|
||||||
instant="true"
|
</div>
|
||||||
onChange="@command('doFilter')"
|
</auxheader>
|
||||||
maxlength="@load(vm.lengthText)"
|
<auxheader>
|
||||||
sclass="find-grid-textbox" />
|
<div sclass="find-grid-cell">
|
||||||
</div>
|
<div sclass="find-grid-divtextbox">
|
||||||
<div sclass="find-grid-img">
|
<datebox
|
||||||
<image src="/img/funnel.png" />
|
value="@bind(vm.filterTemplate.signDate)"
|
||||||
</div>
|
format="${labels.DateFormat}"
|
||||||
</div>
|
instant="true"
|
||||||
</auxheader>
|
onChange="@command('doFilter')"
|
||||||
<auxheader>
|
sclass="find-grid-textbox"
|
||||||
<div sclass="find-grid-cell">
|
width="100%" />
|
||||||
<div sclass="find-grid-divtextbox">
|
</div>
|
||||||
<textbox
|
<div sclass="find-grid-img">
|
||||||
value="@bind(vm.filterTemplate.description)"
|
<image src="/img/funnel.png" />
|
||||||
instant="true"
|
</div>
|
||||||
onChange="@command('doFilter')"
|
</div>
|
||||||
maxlength="@load(vm.lengthDescription)"
|
</auxheader>
|
||||||
sclass="find-grid-textbox" />
|
</auxhead>
|
||||||
</div>
|
<template name="model">
|
||||||
<div sclass="find-grid-img">
|
<listitem>
|
||||||
<image src="/img/funnel.png" />
|
<listcell label="@load(each.agendaName)" />
|
||||||
</div>
|
<listcell label="@load(each.numser)" />
|
||||||
</div>
|
<listcell label="@load(each.description)" />
|
||||||
</auxheader>
|
<listcell label="@load(each.signDate) @converter('formatedDate', format=labels.DateFormat)" />
|
||||||
<auxheader>
|
</listitem>
|
||||||
<div sclass="find-grid-cell">
|
</template>
|
||||||
<div sclass="find-grid-divtextbox">
|
</listbox>
|
||||||
<datebox
|
<listbox
|
||||||
value="@bind(vm.filterTemplate.signDate)"
|
vflex="1"
|
||||||
format="${labels.DateFormat}"
|
hflex="40"
|
||||||
instant="true"
|
selectedItem="@bind(vm.signedDocumentItem)"
|
||||||
onChange="@command('doFilter')"
|
model="@load(vm.signedDocumentItems)">
|
||||||
sclass="find-grid-textbox"
|
<listhead menupopup="auto">
|
||||||
width="100%" />
|
<listheader
|
||||||
</div>
|
hflex="2"
|
||||||
<div sclass="find-grid-img">
|
sort="czech(actualReportName)"
|
||||||
<image src="/img/funnel.png" />
|
label="${labels.PrintReports}" />
|
||||||
</div>
|
<listheader
|
||||||
</div>
|
hflex="3"
|
||||||
</auxheader>
|
sort="czech(fileName)"
|
||||||
</auxhead>
|
label="${labels.FileName}" />
|
||||||
<template name="model">
|
<listheader hflex="1" />
|
||||||
<listitem>
|
</listhead>
|
||||||
<listcell label="@load(each.agendaName)" />
|
<template name="model">
|
||||||
<listcell label="@load(each.numser)" />
|
<listitem>
|
||||||
<listcell label="@load(each.description)" />
|
<listcell label="@load(each.actualReportName)" />
|
||||||
<listcell label="@load(each.signDate) @converter('formatedDate', format=labels.DateFormat)" />
|
<listcell label="@load(each.fileName)" />
|
||||||
</listitem>
|
<listcell>
|
||||||
</template>
|
<button
|
||||||
</listbox>
|
label="Otevřít"
|
||||||
<listbox
|
onClick="@command('onOpen', item = each)"
|
||||||
vflex="1"
|
sclass="nicebutton" />
|
||||||
hflex="40"
|
</listcell>
|
||||||
selectedItem="@bind(vm.signedDocumentItem)"
|
</listitem>
|
||||||
model="@load(vm.signedDocumentItems)">
|
</template>
|
||||||
<listhead menupopup="auto">
|
</listbox>
|
||||||
<listheader
|
</hlayout>
|
||||||
hflex="2"
|
|
||||||
sort="czech(actualReportName)"
|
|
||||||
label="${labels.PrintReports}" />
|
|
||||||
<listheader
|
|
||||||
hflex="3"
|
|
||||||
sort="czech(fileName)"
|
|
||||||
label="${labels.FileName}" />
|
|
||||||
<listheader
|
|
||||||
hflex="1"/>
|
|
||||||
</listhead>
|
|
||||||
<template name="model">
|
|
||||||
<listitem>
|
|
||||||
<listcell label="@load(each.actualReportName)" />
|
|
||||||
<listcell label="@load(each.fileName)" />
|
|
||||||
<listcell>
|
|
||||||
<button label="Otevřít" onClick="@command('onOpen', item = each)" sclass="nicebutton"/>
|
|
||||||
</listcell>
|
|
||||||
</listitem>
|
|
||||||
</template>
|
|
||||||
</listbox>
|
|
||||||
</hlayout>
|
|
||||||
</tabpanel>
|
|
||||||
<tabpanel>
|
|
||||||
<!-- listbox
|
|
||||||
vflex="1"
|
|
||||||
selectedItem="@bind(vm.selectedOrderItem)"
|
|
||||||
model="@load(vm.orderItems)">
|
|
||||||
<listhead menupopup="auto">
|
|
||||||
<listheader
|
|
||||||
hflex="7"
|
|
||||||
sort="czech(code)"
|
|
||||||
label="${labels.RequirementItemCode}" />
|
|
||||||
<listheader
|
|
||||||
hflex="15"
|
|
||||||
sort="czech(name)"
|
|
||||||
label="${labels.RequirementItemName}" />
|
|
||||||
<listheader
|
|
||||||
hflex="20"
|
|
||||||
sort="czech(textItem)"
|
|
||||||
label="${labels.RequirementItemText}" />
|
|
||||||
<listheader
|
|
||||||
hflex="5"
|
|
||||||
sort="auto(quantity)"
|
|
||||||
align="right"
|
|
||||||
label="${labels.RequirementItemQuantity}" />
|
|
||||||
<listheader
|
|
||||||
hflex="5"
|
|
||||||
sort="auto(munit.name)"
|
|
||||||
label="${labels.RequirementItemMUnit}" />
|
|
||||||
<listheader
|
|
||||||
hflex="7"
|
|
||||||
align="right"
|
|
||||||
sort="auto(unitPrice)"
|
|
||||||
label="${labels.RequirementItemUnitPrice}" />
|
|
||||||
<listheader
|
|
||||||
hflex="7"
|
|
||||||
align="right"
|
|
||||||
sort="auto(total)"
|
|
||||||
label="${labels.RequirementItemTotal}" />
|
|
||||||
<listheader
|
|
||||||
hflex="15"
|
|
||||||
sort="czech(description)"
|
|
||||||
label="${labels.RequirementItemDescription}" />
|
|
||||||
<listheader
|
|
||||||
hflex="5"
|
|
||||||
sort="auto(reqItem.orderNum)"
|
|
||||||
label="${labels.OrderAbr}" />
|
|
||||||
</listhead>
|
|
||||||
<template name="model">
|
|
||||||
<listitem>
|
|
||||||
<listcell label="@load(each.code)" />
|
|
||||||
<listcell label="@load(each.name)" />
|
|
||||||
<listcell label="@load(each.textItem)" />
|
|
||||||
<listcell label="@load(each.quantity) @converter(vm.standardBigDecimalConverter)" />
|
|
||||||
<listcell label="@load(each.munit.name)" />
|
|
||||||
<listcell label="@load(each.unitPrice) @converter(vm.standardBigDecimalConverter)" />
|
|
||||||
<listcell label="@load(each.total) @converter(vm.standardBigDecimalConverter)" />
|
|
||||||
<listcell label="@load(each.description)" />
|
|
||||||
<listcell label="@load(each.reqItem.orderNum)" />
|
|
||||||
</listitem>
|
|
||||||
</template>
|
|
||||||
</listbox-->
|
|
||||||
</tabpanel>
|
|
||||||
</tabpanels>
|
|
||||||
</tabbox>
|
|
||||||
</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.signeddocs.SignedDocsActualList')">
|
||||||
|
<include src="/lists/signeddocs/toolbar.zul" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/lists/signeddocs/grid.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.signeddocs.SignedDocsArchiveList')">
|
||||||
|
<include src="/lists/signeddocs/toolbar.zul" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/lists/signeddocs/grid.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 gridActual = "/lists/signeddocs/headListActual.zul";
|
||||||
|
String gridArchive = "/lists/signeddocs/headListArchive.zul";
|
||||||
|
</zscript>
|
||||||
|
<window
|
||||||
|
vflex="1"
|
||||||
|
border="normal">
|
||||||
|
<caption
|
||||||
|
src="/img/adobe-032.png"
|
||||||
|
zclass="form-caption"
|
||||||
|
label="${labels.AgendaSignedDocuments}" />
|
||||||
|
<include
|
||||||
|
vflex="1"
|
||||||
|
src="/lists/signeddocs/tabPanels.zul" />
|
||||||
|
</window>
|
||||||
|
</zk>
|
@ -0,0 +1,17 @@
|
|||||||
|
<tabbox
|
||||||
|
apply="org.zkoss.bind.BindComposer"
|
||||||
|
orient="top"
|
||||||
|
vflex="1">
|
||||||
|
<tabs>
|
||||||
|
<tab label="${labels.ActualDocuments}" />
|
||||||
|
<tab label="${labels.Archive}" />
|
||||||
|
</tabs>
|
||||||
|
<tabpanels>
|
||||||
|
<tabpanel>
|
||||||
|
<include src="${gridActual}" />
|
||||||
|
</tabpanel>
|
||||||
|
<tabpanel>
|
||||||
|
<include src="${gridArchive}" />
|
||||||
|
</tabpanel>
|
||||||
|
</tabpanels>
|
||||||
|
</tabbox>
|
Loading…
Reference in New Issue