/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.rjconsultores.ventaboletos.web.gui.controladores.seguridad;

import com.rjconsultores.ventaboletos.entidad.CompaniaBancaria;
import com.rjconsultores.ventaboletos.entidad.UsuarioBancario;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
import java.util.Calendar;
import java.util.List;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.zkoss.util.resource.Labels;
import org.zkoss.zhtml.Messagebox;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;

/**
 *
 * @author Administrador
 */
@Controller("editarUsuarioBancarioController")
@Scope("prototype")
public class EditarUsuarioBancarioController extends MyGenericForwardComposer {

    private CompaniaBancaria companiaBancaria;
    private UsuarioBancario usuarioBancario;
    private List<UsuarioBancario> lsUsuarioBancario;
    private MyListbox usuarioBancarioList;

    public UsuarioBancario getUsuarioBancario() {
        return usuarioBancario;
    }

    public void setUsuarioBancario(UsuarioBancario usuarioBancario) {
        this.usuarioBancario = usuarioBancario;
    }

    @Override
    public void doAfterCompose(Component comp) throws Exception {
        super.doAfterCompose(comp);

        companiaBancaria = (CompaniaBancaria) Executions.getCurrent().getArg().get("companiaBancaria");
        usuarioBancarioList = (MyListbox) Executions.getCurrent().getArg().get("usuarioBancarioList");
        lsUsuarioBancario = (List) Executions.getCurrent().getArg().get("lsUsuarioBancario");

        usuarioBancario = new UsuarioBancario();
        usuarioBancario.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
        usuarioBancario.setActivo(Boolean.TRUE);
        usuarioBancario.setFecmodif(Calendar.getInstance().getTime());
        usuarioBancario.setCompaniaBancaria(companiaBancaria);
    }

    public void onClick$btnSalvar(Event ev) throws InterruptedException {

        for (UsuarioBancario ub : lsUsuarioBancario) {
            if (ub.getCveusuario().equals(usuarioBancario.getCveusuario())) {
                Messagebox.show(
                        Labels.getLabel("MSG.Registro.Existe"),
                        Labels.getLabel("editarUsuarioBancarioController.window.title"),
                        Messagebox.OK, Messagebox.EXCLAMATION);

                return;
            }
        }

        lsUsuarioBancario.add(usuarioBancario);
        usuarioBancarioList.setData(lsUsuarioBancario);

        closeWindow();
    }
}
