parent
							
								
									0ea29ce50e
								
							
						
					
					
						commit
						a310a438cb
					
				@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.dao;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import info.bukova.isspst.data.MUnit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface MUnitDao extends BaseDao<MUnit> {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.dao.jpa;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import info.bukova.isspst.dao.MUnitDao;
 | 
				
			||||||
 | 
					import info.bukova.isspst.data.MUnit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MUnitDaoJPA extends BaseDaoJPA<MUnit> implements MUnitDao {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override
 | 
				
			||||||
 | 
						public String getEntityName() {
 | 
				
			||||||
 | 
							return "MUnit";
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,67 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.data;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javax.persistence.Column;
 | 
				
			||||||
 | 
					import javax.persistence.Entity;
 | 
				
			||||||
 | 
					import javax.persistence.Table;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.hibernate.validator.constraints.NotBlank;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@Entity
 | 
				
			||||||
 | 
					@Table(name = "MUNIT")
 | 
				
			||||||
 | 
					public class MUnit extends BaseData implements DataModel {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Column(name = "CODE", unique = true)
 | 
				
			||||||
 | 
						private String code;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Column(name = "NAME")
 | 
				
			||||||
 | 
						private String name;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Column(name = "DESCRIPTION")
 | 
				
			||||||
 | 
						private String description;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * @return the code
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						@NotBlank(message = "{MUnitsFormCodeConstr}")
 | 
				
			||||||
 | 
						public String getCode() {
 | 
				
			||||||
 | 
							return code;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * @param code
 | 
				
			||||||
 | 
						 *            the code to set
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public void setCode(String code) {
 | 
				
			||||||
 | 
							this.code = code;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * @return the name
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public String getName() {
 | 
				
			||||||
 | 
							return name;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * @param name
 | 
				
			||||||
 | 
						 *            the name to set
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public void setName(String name) {
 | 
				
			||||||
 | 
							this.name = name;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * @return the description
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public String getDescription() {
 | 
				
			||||||
 | 
							return description;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * @param description
 | 
				
			||||||
 | 
						 *            the description to set
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public void setDescription(String description) {
 | 
				
			||||||
 | 
							this.description = description;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,56 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.filters;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import static info.bukova.isspst.StringUtils.nullStr;
 | 
				
			||||||
 | 
					import info.bukova.isspst.data.MUnit;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.hamcrest.Description;
 | 
				
			||||||
 | 
					import org.hamcrest.Factory;
 | 
				
			||||||
 | 
					import org.hamcrest.Matcher;
 | 
				
			||||||
 | 
					import org.hamcrest.TypeSafeMatcher;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MUnitFilter implements Filter<MUnit> {
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						private MUnit condMUnit;
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public MUnitFilter(MUnit condMUnit) {
 | 
				
			||||||
 | 
							this.condMUnit = condMUnit;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						private static class MUnitMatcher extends TypeSafeMatcher<MUnit> {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							private MUnit condMUnit;
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							public MUnitMatcher(MUnit cond) {
 | 
				
			||||||
 | 
								this.condMUnit = cond;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							@Override
 | 
				
			||||||
 | 
							public void describeTo(Description desc) {
 | 
				
			||||||
 | 
								desc.appendText("munits matches");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							@Override
 | 
				
			||||||
 | 
							public boolean matchesSafely(MUnit item) {
 | 
				
			||||||
 | 
								return nullStr(item.getCode()).toLowerCase().contains(nullStr(condMUnit.getCode()).toLowerCase()) 
 | 
				
			||||||
 | 
										&& nullStr(item.getName()).toLowerCase().contains(nullStr(condMUnit.getName()).toLowerCase())
 | 
				
			||||||
 | 
										&& nullStr(item.getDescription()).toLowerCase().contains(nullStr(condMUnit.getDescription()).toLowerCase());
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							@Factory
 | 
				
			||||||
 | 
							public static Matcher<MUnit> matchMUnit(MUnit munit) {
 | 
				
			||||||
 | 
								return new MUnitMatcher(munit);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						@Override
 | 
				
			||||||
 | 
						public MUnitMatcher matcher() {
 | 
				
			||||||
 | 
							return new MUnitMatcher(condMUnit);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override
 | 
				
			||||||
 | 
						public String queryString() {
 | 
				
			||||||
 | 
							// TODO query string
 | 
				
			||||||
 | 
							return "";
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.services.munits;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import info.bukova.isspst.data.MUnit;
 | 
				
			||||||
 | 
					import info.bukova.isspst.services.Service;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public interface MUnitService  extends Service<MUnit> {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.services.munits;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import info.bukova.isspst.data.MUnit;
 | 
				
			||||||
 | 
					import info.bukova.isspst.services.AbstractService;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MUnitServiceImpl  extends AbstractService<MUnit> implements MUnitService{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -1,6 +1,7 @@
 | 
				
			|||||||
package info.bukova.isspst.ui;
 | 
					package info.bukova.isspst.ui.buildings;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import info.bukova.isspst.data.Building;
 | 
					import info.bukova.isspst.data.Building;
 | 
				
			||||||
 | 
					import info.bukova.isspst.ui.FormViewModel;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.zkoss.bind.annotation.Init;
 | 
					import org.zkoss.bind.annotation.Init;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1,8 +1,9 @@
 | 
				
			|||||||
package info.bukova.isspst.ui;
 | 
					package info.bukova.isspst.ui.buildings;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import info.bukova.isspst.data.Building;
 | 
					import info.bukova.isspst.data.Building;
 | 
				
			||||||
import info.bukova.isspst.filters.BuildingFilter;
 | 
					import info.bukova.isspst.filters.BuildingFilter;
 | 
				
			||||||
import info.bukova.isspst.services.buildings.BuildingService;
 | 
					import info.bukova.isspst.services.buildings.BuildingService;
 | 
				
			||||||
 | 
					import info.bukova.isspst.ui.ListViewModel;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.zkoss.bind.annotation.Init;
 | 
					import org.zkoss.bind.annotation.Init;
 | 
				
			||||||
import org.zkoss.zk.ui.select.annotation.WireVariable;
 | 
					import org.zkoss.zk.ui.select.annotation.WireVariable;
 | 
				
			||||||
@ -0,0 +1,14 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.ui.munits;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import info.bukova.isspst.data.MUnit;
 | 
				
			||||||
 | 
					import info.bukova.isspst.ui.FormViewModel;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.zkoss.bind.annotation.Init;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MUnitsForm extends FormViewModel<MUnit> {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Init(superclass = true)
 | 
				
			||||||
 | 
						public void init() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					package info.bukova.isspst.ui.munits;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import info.bukova.isspst.data.MUnit;
 | 
				
			||||||
 | 
					import info.bukova.isspst.filters.MUnitFilter;
 | 
				
			||||||
 | 
					import info.bukova.isspst.services.munits.MUnitService;
 | 
				
			||||||
 | 
					import info.bukova.isspst.ui.ListViewModel;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.zkoss.bind.annotation.Init;
 | 
				
			||||||
 | 
					import org.zkoss.zk.ui.select.annotation.WireVariable;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class MUnitsList extends ListViewModel<MUnit> {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@WireVariable
 | 
				
			||||||
 | 
						private MUnitService munitService;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Init
 | 
				
			||||||
 | 
						public void init() {
 | 
				
			||||||
 | 
							service = munitService;
 | 
				
			||||||
 | 
							dataClass = MUnit.class;
 | 
				
			||||||
 | 
							formZul = "munitsForm.zul";
 | 
				
			||||||
 | 
							dataFilter = new MUnitFilter(getFilterTemplate());
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -1 +1,2 @@
 | 
				
			|||||||
BuildingsFormCodeConstr=Zadejte k\u00f3d budovy...
 | 
					BuildingsFormCodeConstr=Zadejte k\u00f3d budovy...
 | 
				
			||||||
 | 
					MUnitsFormCodeConstr=Zadejte k\u00f3d m\u011brn\u00e9 jednotky...
 | 
				
			||||||
											
												Binary file not shown.
											
										
									
								| 
		 After Width: | Height: | Size: 3.0 KiB  | 
@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					<?page title="${labels.AgendaMUnits}" contentType="text/html;charset=UTF-8"?>
 | 
				
			||||||
 | 
					<zk>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<zscript>
 | 
				
			||||||
 | 
						String gridZul = "munitsGrid.zul";
 | 
				
			||||||
 | 
					</zscript>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<include src="/app/template.zhtml"/>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</zk>
 | 
				
			||||||
@ -0,0 +1,35 @@
 | 
				
			|||||||
 | 
					<?page title="${labels.MUnitsFormTitle}" contentType="text/html;charset=UTF-8"?>
 | 
				
			||||||
 | 
					<zk>
 | 
				
			||||||
 | 
						<window id="editWin" closable="true" border="normal" position="center" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('info.bukova.isspst.ui.munits.MUnitsForm')">
 | 
				
			||||||
 | 
							<caption src="/img/munits.png" zclass="form-caption" label="${labels.MUnitsFormTitle}" />
 | 
				
			||||||
 | 
							<vlayout>
 | 
				
			||||||
 | 
								<grid hflex="min">
 | 
				
			||||||
 | 
									<columns>
 | 
				
			||||||
 | 
										<column align="right" hflex="min" />
 | 
				
			||||||
 | 
										<column />
 | 
				
			||||||
 | 
									</columns>
 | 
				
			||||||
 | 
									<rows>
 | 
				
			||||||
 | 
										<row>
 | 
				
			||||||
 | 
											<cell sclass="row-title">${labels.MUnitsFormCode} :</cell>
 | 
				
			||||||
 | 
											<cell>
 | 
				
			||||||
 | 
												<textbox id="code" constraint="@load(vm.constriant)" width="200px" value="@bind(vm.dataBean.code)" />
 | 
				
			||||||
 | 
											</cell>
 | 
				
			||||||
 | 
										</row>
 | 
				
			||||||
 | 
										<row>
 | 
				
			||||||
 | 
											<cell sclass="row-title">${labels.MUnitsFormName} :</cell>
 | 
				
			||||||
 | 
											<cell>
 | 
				
			||||||
 | 
												<textbox id="name" width="200px" value="@bind(vm.dataBean.name)" />
 | 
				
			||||||
 | 
											</cell>
 | 
				
			||||||
 | 
										</row>
 | 
				
			||||||
 | 
										<row>
 | 
				
			||||||
 | 
											<cell sclass="row-title">${labels.MUnitsFormDescription} :</cell>
 | 
				
			||||||
 | 
											<cell>
 | 
				
			||||||
 | 
												<textbox id="description" width="300px" value="@bind(vm.dataBean.description)" />
 | 
				
			||||||
 | 
											</cell>
 | 
				
			||||||
 | 
										</row>
 | 
				
			||||||
 | 
									</rows>
 | 
				
			||||||
 | 
								</grid>
 | 
				
			||||||
 | 
								<include src="/app/formButtons.zul" />
 | 
				
			||||||
 | 
							</vlayout>
 | 
				
			||||||
 | 
						</window>
 | 
				
			||||||
 | 
					</zk>
 | 
				
			||||||
@ -0,0 +1,58 @@
 | 
				
			|||||||
 | 
					<?page title="${labels.AgendaMUnits}" contentType="text/html;charset=UTF-8"?>
 | 
				
			||||||
 | 
					<zk>
 | 
				
			||||||
 | 
						<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
 | 
				
			||||||
 | 
						<window border="normal" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('info.bukova.isspst.ui.munits.MUnitsList')">
 | 
				
			||||||
 | 
							<caption zclass="form-caption" label="${labels.AgendaMUnits}" />
 | 
				
			||||||
 | 
							<include src="/app/toolbar.zul" />
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							<listbox model="@load(vm.dataList)" selectedItem="@bind(vm.dataBean)">
 | 
				
			||||||
 | 
								<listhead menupopup="auto">
 | 
				
			||||||
 | 
									<listheader label="${labels.MUnitsGridColumnCode}" sort="czech(code)" width="10%" />
 | 
				
			||||||
 | 
									<listheader label="${labels.MUnitsGridColumnName}" sort="czech(name)" width="30%" />
 | 
				
			||||||
 | 
									<listheader label="${labels.MUnitsGridColumnDescription}" sort="czech(description)" width="60%" />
 | 
				
			||||||
 | 
								</listhead>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								<auxhead sclass="category-center" visible="@load(vm.filter)">
 | 
				
			||||||
 | 
									<auxheader>
 | 
				
			||||||
 | 
										<div sclass="find-grid-cell">
 | 
				
			||||||
 | 
											<div sclass="find-grid-divtextbox">
 | 
				
			||||||
 | 
												<textbox value="@bind(vm.filterTemplate.code)" instant="true" onChange="@command('doFilter')" sclass="find-grid-textbox" />
 | 
				
			||||||
 | 
											</div>
 | 
				
			||||||
 | 
											<div sclass="find-grid-img">
 | 
				
			||||||
 | 
												<image src="/img/funnel.png" />
 | 
				
			||||||
 | 
											</div>
 | 
				
			||||||
 | 
										</div>
 | 
				
			||||||
 | 
									</auxheader>
 | 
				
			||||||
 | 
									<auxheader>
 | 
				
			||||||
 | 
										<div sclass="find-grid-cell">
 | 
				
			||||||
 | 
											<div sclass="find-grid-divtextbox">
 | 
				
			||||||
 | 
												<textbox value="@bind(vm.filterTemplate.name)" instant="true" onChange="@command('doFilter')" sclass="find-grid-textbox" />
 | 
				
			||||||
 | 
											</div>
 | 
				
			||||||
 | 
											<div sclass="find-grid-img">
 | 
				
			||||||
 | 
												<image src="/img/funnel.png" />
 | 
				
			||||||
 | 
											</div>
 | 
				
			||||||
 | 
										</div>
 | 
				
			||||||
 | 
									</auxheader>
 | 
				
			||||||
 | 
									<auxheader>
 | 
				
			||||||
 | 
										<div sclass="find-grid-cell">
 | 
				
			||||||
 | 
											<div sclass="find-grid-divtextbox">
 | 
				
			||||||
 | 
												<textbox value="@bind(vm.filterTemplate.description)" instant="true" onChange="@command('doFilter')" sclass="find-grid-textbox" />
 | 
				
			||||||
 | 
											</div>
 | 
				
			||||||
 | 
											<div sclass="find-grid-img">
 | 
				
			||||||
 | 
												<image src="/img/funnel.png" />
 | 
				
			||||||
 | 
											</div>
 | 
				
			||||||
 | 
										</div>
 | 
				
			||||||
 | 
									</auxheader>
 | 
				
			||||||
 | 
								</auxhead>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								<template name="model">
 | 
				
			||||||
 | 
									<listitem>
 | 
				
			||||||
 | 
										<listcell label="@load(each.code)" />
 | 
				
			||||||
 | 
										<listcell label="@load(each.name)" />
 | 
				
			||||||
 | 
										<listcell label="@load(each.description)" />
 | 
				
			||||||
 | 
									</listitem>
 | 
				
			||||||
 | 
								</template>
 | 
				
			||||||
 | 
							</listbox>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						</window>
 | 
				
			||||||
 | 
					</zk>
 | 
				
			||||||
					Loading…
					
					
				
		Reference in New Issue