package com.akbank.pys.controller.hgo; import java.util.ArrayList; import java.util.Collections; import java.util.List; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import org.apache.log4j.Logger; import org.zkoss.bind.BindUtils; import org.zkoss.bind.annotation.AfterCompose; import org.zkoss.bind.annotation.Command; import org.zkoss.bind.annotation.ContextParam; import org.zkoss.bind.annotation.ContextType; import org.zkoss.bind.annotation.NotifyChange; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.select.Selectors; import org.zkoss.zkplus.databind.BindingGroupsListModel; import org.zkoss.zkplus.databind.BindingListModelList; import org.zkoss.zul.Window; import com.akbank.pys.controller.AkGenericController; import com.akbank.pys.controller.userauthentication.UserSessionController; import com.akbank.pys.controller.util.ContextUtil; import com.akbank.pys.dao.ifs.KpiValuesDAO; import com.akbank.pys.dao.ifs.SkorkartDAO; import com.akbank.pys.orm.KpiValue; import com.akbank.pys.orm.Skorkart; import com.akbank.pys.orm.Term; import com.akbank.pys.util.DateOp; import com.akbank.pys.util.Functions; public class list extends AkGenericController { private static final long serialVersionUID = 1L; private static final Logger log = Logger.getLogger(list.class); private Term selectedTerm; SkorkartDAO skorkartDAO; BindingListModelList skList; KpiValuesDAO kpiValuesDAO; BindingGroupsListModel kpiValueModel; Window win; private void initBeans() throws NamingException { Context ctx = new InitialContext(); skorkartDAO = (SkorkartDAO) ctx.lookup("ejblocal:" + SkorkartDAO.class.getName()); kpiValuesDAO = ContextUtil.find(KpiValuesDAO.class); } @AfterCompose public void init(@ContextParam(ContextType.VIEW) Component view) { win=(Window) view; if (!validateTermAndAuthentication(false)) { return; } Selectors.wireComponents(view, this, false); Selectors.wireEventListeners(view, this); try { initBeans(); selectedTerm = UserSessionController.getInstance().getTerm(); skList=new BindingListModelList(skorkartDAO.getSkorkarts(user.getEmpId()),true); } catch (Exception e) { log.error(e); e.printStackTrace(); //redirectToFailurePage(e.toString()); } } @NotifyChange({"kpiList","kpiValueModel"}) @Command() public void showDetail() throws Exception { Skorkart selSk = skList.getSelection().iterator().next(); List kpiValueList = kpiValuesDAO.getKPIs( selSk.getId().getUserId(), selSk.getId().getUnitCode(),selSk.getId().getSkorkartCode(),selSk.getId().getBeginDate(),selSk.getId().getTypeCode()); KpiGroupingModel kpiGroupingModel = new KpiGroupingModel(kpiValueList, new KpiGroupingComparator(), false); kpiValueModel = new BindingGroupsListModel(kpiGroupingModel); } public BindingListModelList getSkList() { return skList; } public void setSkList(BindingListModelList skList) { this.skList = skList; } public BindingGroupsListModel getKpiValueModel() { return kpiValueModel; } public void setKpiValueModel(BindingGroupsListModel kpiValueModel) { this.kpiValueModel = kpiValueModel; } }