Example usage for java.math BigDecimal intValue

List of usage examples for java.math BigDecimal intValue

Introduction

In this page you can find the example usage for java.math BigDecimal intValue.

Prototype

@Override
public int intValue() 

Source Link

Document

Converts this BigDecimal to an int .

Usage

From source file:pcgen.gui2.facade.CharacterFacadeImpl.java

private double calcItemCost(Equipment selected, double purchaseQty, GearBuySellScheme gearBuySellScheme) {
    if (selected == null) {
        return 0;
    }/* w  w  w  .  ja v a 2  s  . c o m*/

    BigDecimal rate = purchaseQty >= 0 ? gearBuySellScheme.getBuyRate() : gearBuySellScheme.getSellRate();
    if (purchaseQty < 0 && selected.isSellAsCash()) {
        rate = gearBuySellScheme.getCashSellRate();
    }

    return (purchaseQty * rate.intValue()) * (float) 0.01 * selected.getCost(theCharacter).floatValue();
}

From source file:org.kuali.ole.select.document.service.impl.OleInvoiceServiceImpl.java

/**
 * This method calculates the Amount and the Percent in Accounting Line if the Invoiced List Price changed
 */// w  ww. j a  v a2  s  . c  o  m
public void calculateAccount(PurApItem purapItem) {
    purapItem.setExtendedPrice(purapItem.calculateExtendedPrice());
    List<PurApAccountingLine> purApAccountingLines = purapItem.getSourceAccountingLines();
    BigDecimal totalPercent = BigDecimal.ZERO;
    BigDecimal totalAmt = BigDecimal.ZERO;
    for (PurApAccountingLine account : purApAccountingLines) {
        if (purapItem.getTotalAmount() != null && !purapItem.getTotalAmount().equals(KualiDecimal.ZERO)) {
            if (account.getAccountLinePercent() != null
                    && (account.getAmount() == null || account.getAmount().equals(KualiDecimal.ZERO))) {
                BigDecimal percent = account.getAccountLinePercent().divide(new BigDecimal(100));
                account.setAmount((purapItem.getTotalAmount().multiply(new KualiDecimal(percent))));
            } else if (account.getAmount() != null && account.getAmount().isNonZero()
                    && account.getAccountLinePercent() == null) {
                KualiDecimal dollar = account.getAmount().multiply(new KualiDecimal(100));
                BigDecimal dollarToPercent = dollar.bigDecimalValue()
                        .divide((purapItem.getTotalAmount().bigDecimalValue()), 0, RoundingMode.FLOOR);
                account.setAccountLinePercent(dollarToPercent);
            } else if (account.getAmount() != null && account.getAmount().isZero()
                    && account.getAccountLinePercent() == null) {
                account.setAccountLinePercent(new BigDecimal(0));
            } else if ((account.getAmount() != null && account.getAccountLinePercent() != null)
                    || (account.getAmount() != null && account.getAccountLinePercent().intValue() == 100)) {
                BigDecimal percent = account.getAccountLinePercent().divide(new BigDecimal(100));
                account.setAmount((purapItem.getTotalAmount().multiply(new KualiDecimal(percent))));
            }
            totalPercent = totalPercent.add(account.getAccountLinePercent());
            totalAmt = totalAmt.add(account.getAmount().bigDecimalValue());
        } else {
            account.setAmount(KualiDecimal.ZERO);
        }
    }
    // If Total Percent or Total Amount mis matches,percentage is divided across accounting lines.
    if (totalPercent.intValue() != 100 || (purapItem.getTotalAmount() != null
            && totalAmt.compareTo(purapItem.getTotalAmount().bigDecimalValue()) != 0)) {
        for (PurApAccountingLine account : purApAccountingLines) {
            if (purapItem.getTotalAmount() != null && !purapItem.getTotalAmount().equals(KualiDecimal.ZERO)) {
                BigDecimal percent = BigDecimal.ONE.divide(new BigDecimal(purApAccountingLines.size()),
                        BigDecimal.ROUND_CEILING, BigDecimal.ROUND_HALF_UP);
                account.setAmount((purapItem.getTotalAmount().multiply(new KualiDecimal(percent))));
            } else {
                account.setAmount(KualiDecimal.ZERO);
            }
        }
    }

}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public String DevEsp() {
    String pagina = null;/*from  w  w w.j  a  va2 s  .  c  o m*/
    try {
        /* Validando si la cantidad de pregutnas destacados lleg al lmite (10 max.).*/
        if (this.getChkDestacado()) {
            ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
            HashMap filter = new HashMap();
            filter.put("ntipoconocimientoid", Constante.PREGUNTAS);
            BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
            if (cant.intValue() >= 10) {
                this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                return "";
            }
        }
        PreguntaService service = (PreguntaService) ServiceFinder.findBean("PreguntaService");
        this.getSelectedPregunta().setNdestacado(this.getChkDestacado() ? BigDecimal.ONE : BigDecimal.ZERO);
        this.getSelectedPregunta().setNsituacionid(BigDecimal.valueOf((long) 2));
        service.saveOrUpdate(this.getSelectedPregunta());

        AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
        this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
        this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("12")));
        this.getSelectedAsignacion().setDfechaatencion(new Date());

        serviceasig.saveOrUpdate(this.getSelectedAsignacion());

        Asignacion asignacion = new Asignacion();
        asignacion.setNasignacionid(serviceasig.getNextPK());
        asignacion.setNtipoconocimientoid(Constante.PREGUNTAS);
        asignacion.setNconocimientoid(this.getSelectedPregunta().getNpreguntaid());
        asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
        CategoriaService categoriaService = (CategoriaService) ServiceFinder.findBean("CategoriaService");
        asignacion.setNusuarioid(categoriaService.getCategoriaById(this.getSelectedPregunta().getNcategoriaid())
                .getNespecialista());
        asignacion.setDfechacreacion(new Date());
        asignacion.setDfechaasignacion(new Date());
        serviceasig.saveOrUpdate(asignacion);

        LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
        loginMB.refreshNotifications();

        pagina = "/index.xhtml";

    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
    return pagina;
}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public String sendSiMod() {
    String pagina = null;//from  w  w  w  .  j  av  a2  s  . c o  m
    try {
        if (StringUtils.isBlank(this.getSelectedPregunta().getVmsjmoderador())) {
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, Constante.SEVERETY_ALERTA,
                    "Campo requerido. Ingrese el mensaje a enviar.");
            FacesContext.getCurrentInstance().addMessage(null, message);
            pagina = null;
        } else {
            /* Validando si la cantidad de pregutnas destacados lleg al lmite (10 max.).*/
            if (this.getChkDestacado()) {
                ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
                HashMap filter = new HashMap();
                filter.put("ntipoconocimientoid", Constante.PREGUNTAS);
                BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
                if (cant.intValue() >= 10) {
                    this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                    RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                    return "";
                }
            }
            LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
            PreguntaService service = (PreguntaService) ServiceFinder.findBean("PreguntaService");
            this.getSelectedPregunta().setNdestacado(this.getChkDestacado() ? BigDecimal.ONE : BigDecimal.ZERO);
            this.getSelectedPregunta()
                    .setVmsjmoderador(this.getSelectedPregunta().getVmsjmoderador().toUpperCase());
            service.saveOrUpdate(this.getSelectedPregunta());

            AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
            this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
            this.getSelectedAsignacion().setDfechaatencion(new Date());
            this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("9")));
            serviceasig.saveOrUpdate(this.getSelectedAsignacion());

            Asignacion asignacion = new Asignacion();
            asignacion.setNasignacionid(serviceasig.getNextPK());
            asignacion.setNtipoconocimientoid(Constante.PREGUNTAS);
            asignacion.setNconocimientoid(this.getSelectedPregunta().getNpreguntaid());
            asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
            asignacion.setNusuarioid(
                    serviceasig.getUserCreacionByPregunta(this.getSelectedPregunta().getNpreguntaid()));
            asignacion.setDfechaasignacion(new Date());
            asignacion.setDfechacreacion(new Date());
            serviceasig.saveOrUpdate(asignacion);

            loginMB.refreshNotifications();

            this.fSInfMod = "true";
            pagina = "/index.xhtml";
        }

    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
    return pagina;
}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public String sendUsuMod() {
    String pagina = null;//from   ww  w .  j a v a 2 s .c o m
    try {
        if (StringUtils.isBlank(this.getSelectedPregunta().getVmsjusuario1())) {
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, Constante.SEVERETY_ALERTA,
                    "Campo requerido. Ingrese el mensaje a enviar");
            FacesContext.getCurrentInstance().addMessage(null, message);
            pagina = null;
        } else {
            /* Validando si la cantidad de pregutnas destacados lleg al lmite (10 max.).*/
            if (this.getChkDestacado()) {
                ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
                HashMap filter = new HashMap();
                filter.put("ntipoconocimientoid", Constante.PREGUNTAS);
                BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
                if (cant.intValue() >= 10) {
                    this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                    RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                    return "";
                }
            }
            PreguntaService service = (PreguntaService) ServiceFinder.findBean("PreguntaService");
            this.getSelectedPregunta().setNdestacado(this.getChkDestacado() ? BigDecimal.ONE : BigDecimal.ZERO);
            this.getSelectedPregunta()
                    .setVmsjusuario1(this.getSelectedPregunta().getVmsjusuario1().toUpperCase());
            service.saveOrUpdate(this.getSelectedPregunta());

            AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
            this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
            this.getSelectedAsignacion().setDfechaatencion(new Date());
            this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("11")));
            serviceasig.saveOrUpdate(this.getSelectedAsignacion());

            Asignacion asignacion = new Asignacion();
            asignacion.setNasignacionid(serviceasig.getNextPK());
            asignacion.setNtipoconocimientoid(Constante.PREGUNTAS);
            asignacion.setNconocimientoid(this.getSelectedPregunta().getNpreguntaid());
            asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
            CategoriaService categoriaService = (CategoriaService) ServiceFinder.findBean("CategoriaService");
            asignacion.setNusuarioid(categoriaService
                    .getCategoriaById(this.getSelectedPregunta().getNcategoriaid()).getNmoderador());
            asignacion.setDfechacreacion(new Date());
            asignacion.setDfechaasignacion(new Date());
            serviceasig.saveOrUpdate(asignacion);

            LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
            loginMB.refreshNotifications();

            this.fMsjUsu1 = "true";
            pagina = "/index.xhtml";
        }

    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
    return pagina;
}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public void implementarOmejora(ActionEvent event) {
    try {//from   w w  w.ja  va 2 s.  c o  m
        //this.setContenidoHtml(JSFUtils.getRequestParameter("descHtml"));
        if (this.getChkDestacado()) {
            ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
            HashMap filter = new HashMap();
            filter.put("ntipoconocimientoid", Constante.OPORTUNIDADMEJORA);
            BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
            if (cant.intValue() >= 10) {
                this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                return;
            }
        }
        this.setContenidoPlain(Jsoup.parse(this.getContenidoHtml()).text());
        LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
        User usuario = loginMB.getUser();
        ImplementacionService implementacionService = (ImplementacionService) ServiceFinder
                .findBean("ImplementacionService");
        Implementacion implementacion = new Implementacion();
        implementacion.setNimplementacionid(implementacionService.getNextPK());
        implementacion.setNconocimientoid(this.getSelectedOmejora().getNconocimientoid());
        implementacion.setNtipoconocimientoid(this.getSelectedOmejora().getNtipoconocimientoid());
        implementacion.setNcategoriaid(this.getSelectedOmejora().getNcategoriaid());
        implementacion.setVtitulo(StringUtils.upperCase(this.getSelectedOmejora().getVtitulo()));
        implementacion.setVdescripcion(StringUtils.upperCase(this.getSelectedOmejora().getVdescripcion()));
        if (this.getContenidoPlain().length() < 400) {
            implementacion.setVcontenido(StringUtils.capitalize(this.getContenidoPlain()));
        } else {
            implementacion.setVcontenido(StringUtils.capitalize(this.getContenidoPlain().substring(0, 399)));
        }
        implementacion.setNdestacado(this.getChkDestacado() ? BigDecimal.ONE : BigDecimal.ZERO);

        implementacion.setDfechacreacion(new Date());
        implementacion.setVusuariocreacion(usuario.getVlogin());
        implementacion.setNsituacionid(BigDecimal.valueOf((long) 11));
        implementacionService.saveOrUpdate(implementacion);

        String np = this.pathom.concat(this.getSelectedOmejora().getNconocimientoid().toString())
                .concat("/impl/");
        this.setContenidoPlain(Jsoup.parse(this.getContenidoHtml()).text());
        GcmFileUtils.writeStringToFileServer(np, "html.txt", this.getContenidoHtml());
        GcmFileUtils.writeStringToFileServer(np, "plain.txt", this.getContenidoPlain());

        this.setListaTargetVinculos(new ArrayList());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBL());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBP());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosCT());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosOM());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosPR());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosWK());

        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(this.getListaTargetVinculos())) {
            VinculoImplementacionService vinculoService = (VinculoImplementacionService) ServiceFinder
                    .findBean("VinculoImplementacionService");
            vinculoService.deleteByConocimiento(implementacion.getNimplementacionid());
            for (Consulta consulta : this.getListaTargetVinculos()) {
                VinculoImplementacion vinculo = new VinculoImplementacion();
                vinculo.setNimplvinculoid(vinculoService.getNextPK());
                vinculo.setNimplementacionid(implementacion.getNconocimientoid());
                vinculo.setNconocimientovinc(consulta.getIdconocimiento());
                vinculo.setNtipoconocimientovinc(consulta.getIdTipoConocimiento());
                vinculo.setDfechacreacion(new Date());
                vinculo.setVusuariocreacion(usuario.getVlogin());
                vinculoService.saveOrUpdate(vinculo);
            }
        }

        ConocimientoService conocimientoService = (ConocimientoService) ServiceFinder
                .findBean("ConocimientoService");
        this.getSelectedOmejora().setNsituacionid(BigDecimal.valueOf((long) 11));
        conocimientoService.saveOrUpdate(this.getSelectedOmejora());

        AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
        this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
        this.getSelectedAsignacion().setDfechaatencion(new Date());
        this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("15")));
        serviceasig.saveOrUpdate(this.getSelectedAsignacion());

        Asignacion asignacion = new Asignacion();
        asignacion.setNasignacionid(serviceasig.getNextPK());
        asignacion.setNtipoconocimientoid(Constante.OPORTUNIDADMEJORA);
        asignacion.setNconocimientoid(this.getSelectedOmejora().getNconocimientoid());
        asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
        CategoriaService categoriaService = (CategoriaService) ServiceFinder.findBean("CategoriaService");
        asignacion.setNusuarioid(
                categoriaService.getCategoriaById(this.getSelectedOmejora().getNcategoriaid()).getNmoderador());
        asignacion.setDfechaasignacion(new Date());
        asignacion.setDfechacreacion(new Date());
        serviceasig.saveOrUpdate(asignacion);

        loginMB.refreshNotifications();
        FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                "Se implement la oportunidad de mejora.");
        FacesContext.getCurrentInstance().addMessage(null, message);
        FacesContext.getCurrentInstance().getExternalContext().redirect("/gescon/index.xhtml");

    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public void savePregEdit(ActionEvent event) {
    String pagina = "/gescon/index.xhtml";
    try {// w  w w.j a  va 2 s .co m
        //this.getSelectedPregunta().setVrespuesta(JSFUtils.getRequestParameter("descHtml"));
        /* Validando si la cantidad de pregutnas destacados lleg al lmite (10 max.).*/
        if (this.getChkDestacado()) {
            ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
            HashMap filter = new HashMap();
            filter.put("ntipoconocimientoid", Constante.PREGUNTAS);
            BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
            if (cant.intValue() >= 10) {
                this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                return;
            }
        }
        LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
        User user_savepreg = loginMB.getUser();

        PreguntaService service = (PreguntaService) ServiceFinder.findBean("PreguntaService");
        if (this.getSelectedCategoria() == null) {
            this.getSelectedPregunta().setNcategoriaid(this.getSelectedPregunta().getNcategoriaid());
            cat_nueva = this.getSelectedPregunta().getNcategoriaid();
        } else {
            this.getSelectedPregunta().setNcategoriaid(this.getSelectedCategoria().getNcategoriaid());
            cat_nueva = this.getSelectedPregunta().getNcategoriaid();
        }
        this.getSelectedPregunta().setVasunto(this.getSelectedPregunta().getVasunto().trim());
        this.getSelectedPregunta().setVdetalle(this.getSelectedPregunta().getVdetalle().trim());
        this.getSelectedPregunta().setNentidadid(this.getSelectedPregunta().getNentidadid());
        String html = this.getSelectedPregunta().getVrespuesta();
        if (Jsoup.parse(this.getSelectedPregunta().getVrespuesta()).toString().length() > 400) {
            this.getSelectedPregunta().setVrespuesta(StringUtils.capitalize(
                    Jsoup.parse(this.getSelectedPregunta().getVrespuesta()).toString().substring(0, 300)));
        } else {
            this.getSelectedPregunta().setVrespuesta(
                    StringUtils.capitalize(Jsoup.parse(this.getSelectedPregunta().getVrespuesta()).toString()));
        }
        this.getSelectedPregunta().setVdatoadicional(this.getSelectedPregunta().getVdatoadicional().trim());
        this.getSelectedPregunta().setNdestacado(this.getChkDestacado() ? BigDecimal.ONE : BigDecimal.ZERO);
        this.getSelectedPregunta().setDfechamodificacion(new Date());
        this.getSelectedPregunta().setVusuariomodificacion(user_savepreg.getVlogin());
        service.saveOrUpdate(this.getSelectedPregunta());

        String ruta0 = this.pathpr + this.getSelectedPregunta().getNpreguntaid().toString() + "/"
                + BigDecimal.ZERO.toString() + "/";
        String texto = this.getSelectedPregunta().getVasunto() + " \n "
                + this.getSelectedPregunta().getVdetalle() + " \n " + html;
        GcmFileUtils.writeStringToFileServer(ruta0, "html.txt", texto);
        texto = this.getSelectedPregunta().getVasunto() + " \n " + this.getSelectedPregunta().getVdetalle()
                + " \n " + Jsoup.parse(this.getSelectedPregunta().getVrespuesta());
        GcmFileUtils.writeStringToFileServer(ruta0, "plain.txt", texto);

        RespuestaHistService serviceresp = (RespuestaHistService) ServiceFinder
                .findBean("RespuestaHistService");
        RespuestaHist respuestahist = new RespuestaHist();
        respuestahist.setNhistorialid(serviceresp.getNextPK());
        respuestahist.setNpreguntaid(this.getSelectedPregunta().getNpreguntaid());
        respuestahist.setVrespuesta(this.getSelectedPregunta().getVrespuesta());
        respuestahist.setVusuariocreacion(user_savepreg.getVlogin());
        respuestahist.setDfechacreacion(new Date());
        serviceresp.saveOrUpdate(respuestahist);

        this.setListaTargetVinculos(new ArrayList<Consulta>());

        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosBL())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBL());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosBP())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBP());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosCT())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosCT());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosOM())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosOM());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosPR())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosPR());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosWK())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosWK());
        }

        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(this.getListaTargetVinculos())) {
            VinculoPreguntaService vinculopreguntaService = (VinculoPreguntaService) ServiceFinder
                    .findBean("VinculoPreguntaService");
            service.delete(this.getSelectedPregunta().getNpreguntaid());
            for (Consulta consulta : this.getListaTargetVinculos()) {
                VinculoPregunta vinculopregunta = new VinculoPregunta();
                vinculopregunta.setNvinculoid(vinculopreguntaService.getNextPK());
                vinculopregunta.setNpreguntaid(this.getSelectedPregunta().getNpreguntaid());
                vinculopregunta.setNconocimientovinc(consulta.getIdconocimiento());
                vinculopregunta.setNtipoconocimientovinc(consulta.getIdTipoConocimiento());
                vinculopregunta.setDfechacreacion(new Date());
                vinculopregunta.setVusuariocreacion(user_savepreg.getVlogin());
                vinculopreguntaService.saveOrUpdate(vinculopregunta);
            }
        }

        if (cat_antigua != cat_nueva) {
            AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
            this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
            this.getSelectedAsignacion().setDfechaatencion(new Date());
            this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("12")));
            serviceasig.saveOrUpdate(this.getSelectedAsignacion());

            Asignacion asignacion = new Asignacion();
            asignacion.setNasignacionid(serviceasig.getNextPK());
            asignacion.setNtipoconocimientoid(Constante.PREGUNTAS);
            asignacion.setNconocimientoid(this.getSelectedPregunta().getNpreguntaid());
            asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
            CategoriaService categoriaService = (CategoriaService) ServiceFinder.findBean("CategoriaService");
            asignacion.setNusuarioid(categoriaService
                    .getCategoriaById(this.getSelectedPregunta().getNcategoriaid()).getNmoderador());
            asignacion.setDfechaasignacion(new Date());
            asignacion.setDfechacreacion(new Date());
            serviceasig.saveOrUpdate(asignacion);
        }
        loginMB.refreshNotifications();
        FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                "Actualizacin exitosa!.");
        FacesContext.getCurrentInstance().addMessage(null, message);
        FacesContext.getCurrentInstance().getExternalContext().redirect(pagina);
    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }

}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public void PublicarContenido(ActionEvent event) {
    try {//from   w ww. jav a  2s. c om
        LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
        User user_savecontenido = loginMB.getUser();
        //this.setContenidoHtml(JSFUtils.getRequestParameter("descHtml"));
        if (this.getChkDestacado()) {
            ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
            HashMap filter = new HashMap();
            filter.put("ntipoconocimientoid", Constante.CONTENIDO);
            BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
            if (cant.intValue() >= 10) {
                this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                return;
            }
        }
        ContenidoService service = (ContenidoService) ServiceFinder.findBean("ContenidoService");
        this.setContenidoPlain(Jsoup.parse(this.getContenidoHtml()).text());
        this.getSelectedContenido().setVtitulo(this.getSelectedContenido().getVtitulo().trim());
        this.getSelectedContenido().setVdescripcion(this.getSelectedContenido().getVdescripcion().trim());
        if (this.getContenidoPlain().length() < 400) {
            this.getSelectedContenido().setVcontenido(StringUtils.capitalize(this.getContenidoPlain()));
        } else {
            this.getSelectedContenido()
                    .setVcontenido(StringUtils.capitalize(this.getContenidoPlain().substring(0, 399)));
        }
        this.getSelectedContenido().setNcategoriaid(this.getSelectedCategoria().getNcategoriaid());
        this.getSelectedContenido().setDfechamodificacion(new Date());
        this.getSelectedContenido().setVusuariomodificacion(user_savecontenido.getVlogin());
        this.getSelectedContenido().setNsituacionid(BigDecimal.valueOf((long) 6));
        this.getSelectedContenido().setDfechapublicacion(new Date());
        service.saveOrUpdate(this.getSelectedContenido());

        GcmFileUtils.writeStringToFileServer(this.getSelectedContenido().getVruta(), "html.txt",
                this.getContenidoHtml());
        GcmFileUtils.writeStringToFileServer(this.getSelectedContenido().getVruta(), "plain.txt",
                this.getContenidoPlain());

        HistorialService historialService = (HistorialService) ServiceFinder.findBean("HistorialService");
        Historial lastHistorial = historialService
                .getLastHistorialByConocimiento(this.getSelectedContenido().getNconocimientoid());
        int lastversion;
        if (lastHistorial != null) {
            lastversion = lastHistorial.getNnumversion().intValue();
        } else {
            lastversion = 0;
        }

        String url = this.path.concat(this.getSelectedContenido().getNconocimientoid().toString()).concat("/")
                .concat(Integer.toString(lastversion + 1)).concat("/");

        ThistorialId thistorialId = new ThistorialId();
        thistorialId.setNconocimientoid(this.getSelectedContenido().getNconocimientoid());
        thistorialId.setNhistorialid(historialService.getNextPK());
        Historial historial = new Historial();
        historial.setId(thistorialId);
        historial.setNtipoconocimientoid(Constante.CONTENIDO);
        historial.setNcategoriaid(this.getSelectedCategoria().getNcategoriaid());
        historial.setVdescripcion(this.getSelectedContenido().getVdescripcion().trim());
        historial.setVtitulo(this.getSelectedContenido().getVtitulo());
        if (this.getContenidoPlain().length() < 400) {
            historial.setVcontenido(StringUtils.capitalize(this.getContenidoPlain()));
        } else {
            historial.setVcontenido(StringUtils.capitalize(this.getContenidoPlain().substring(0, 399)));
        }
        historial.setNactivo(BigDecimal.ONE);
        historial.setNsituacionid(this.getSelectedContenido().getNsituacionid());
        historial.setVruta(url);
        historial.setNnumversion(BigDecimal.valueOf(lastversion + 1));
        historial.setDfechacreacion(new Date());
        historial.setVmsjsolicita(this.getSelectedContenido().getVmsjsolicita());
        historial.setVmsjrespuesta(this.getSelectedContenido().getVmsjrespuesta());
        historial.setVusuariocreacion(user_savecontenido.getVlogin());
        historialService.saveOrUpdate(historial);

        GcmFileUtils.writeStringToFileServer(url, "html.txt", this.getContenidoHtml());
        GcmFileUtils.writeStringToFileServer(url, "plain.txt", this.getContenidoPlain());

        AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
        this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
        this.getSelectedAsignacion().setDfechaatencion(new Date());
        this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("8")));
        serviceasig.saveOrUpdate(this.getSelectedAsignacion());

        this.setListaTargetVinculos(new ArrayList<Consulta>());

        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosBL())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBL());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosBP())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBP());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosCT())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosCT());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosOM())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosOM());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosPR())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosPR());
        }
        if (!CollectionUtils.isEmpty(this.getListaTargetVinculosWK())) {
            this.getListaTargetVinculos().addAll(this.getListaTargetVinculosWK());
        }

        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(this.getListaTargetVinculos())) {
            VinculoService vinculoService = (VinculoService) ServiceFinder.findBean("VinculoService");
            VinculoHistService vinculoHistService = (VinculoHistService) ServiceFinder
                    .findBean("VinculoHistService");
            service.delete(this.getSelectedContenido().getNconocimientoid());
            for (Consulta consulta : this.getListaTargetVinculos()) {
                Vinculo vinculo = new Vinculo();
                vinculo.setNvinculoid(vinculoService.getNextPK());
                vinculo.setNconocimientoid(this.getSelectedContenido().getNconocimientoid());
                vinculo.setNconocimientovinc(consulta.getIdconocimiento());
                vinculo.setNtipoconocimientovinc(consulta.getIdTipoConocimiento());
                vinculo.setDfechacreacion(new Date());
                vinculo.setVusuariocreacion(user_savecontenido.getVlogin());
                vinculoService.saveOrUpdate(vinculo);

                TvinculoHistId vinculoHistId = new TvinculoHistId();
                vinculoHistId.setNvinculohid(vinculoHistService.getNextPK());
                vinculoHistId.setNconocimientoid(thistorialId.getNconocimientoid());
                vinculoHistId.setNhistorialid(thistorialId.getNhistorialid());
                VinculoHist vinculoHist = new VinculoHist();
                vinculoHist.setId(vinculoHistId);
                vinculoHist.setNconocimientovinc(vinculo.getNconocimientovinc());
                vinculoHist.setNtipoconocimientovinc(vinculo.getNtipoconocimientovinc());
                vinculoHist.setDfechacreacion(new Date());
                vinculoHist.setVusuariocreacion(user_savecontenido.getVlogin());
                vinculoHistService.saveOrUpdate(vinculoHist);

            }
        }

        ArchivoConocimientoService aservice = (ArchivoConocimientoService) ServiceFinder
                .findBean("ArchivoConocimientoService");
        service.deleteArchivos(this.getSelectedContenido().getNconocimientoid());
        for (ArchivoConocimiento v : this.getListaArchivos()) {

            ArchivoConocimiento archivoconocimiento = new ArchivoConocimiento();
            archivoconocimiento.setNarchivoid(aservice.getNextPK());
            archivoconocimiento.setNtipoconocimientoid(Constante.CONTENIDO);
            archivoconocimiento.setNconocimientoid(this.getSelectedContenido().getNconocimientoid());
            archivoconocimiento.setVnombre(v.getVnombre());
            archivoconocimiento.setNtipoarchivo(v.getNtipoarchivo());
            archivoconocimiento.setVcontenttype(v.getVcontenttype());
            archivoconocimiento.setNversion(historial.getNnumversion());
            archivoconocimiento.setVruta(path + this.getSelectedContenido().getNconocimientoid().toString()
                    + "/" + archivoconocimiento.getNversion().toString() + "/"
                    + archivoconocimiento.getVnombre());
            archivoconocimiento.setVusuariocreacion(user_savecontenido.getVlogin());
            archivoconocimiento.setDfechacreacion(new Date());
            aservice.saveOrUpdate(archivoconocimiento);
            saveFileCT(archivoconocimiento);

        }
        loginMB.refreshNotifications();
        FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                "Se public el contenido exitosamente.");
        FacesContext.getCurrentInstance().addMessage(null, message);
        FacesContext.getCurrentInstance().getExternalContext().redirect("/gescon/index.xhtml");
    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public String publicarWiki() {
    String pagina = null;/*from  ww  w.  ja  v a2s.c  o  m*/
    try {
        //this.setDescripcionHtml(JSFUtils.getRequestParameter("descHtml"));
        if (this.getChkDestacado()) {
            ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
            HashMap filter = new HashMap();
            filter.put("ntipoconocimientoid", Constante.WIKI);
            BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
            if (cant.intValue() >= 10) {
                this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                return "";
            }
        }
        LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
        User usuario = loginMB.getUser();
        ConocimientoService conocimientoService = (ConocimientoService) ServiceFinder
                .findBean("ConocimientoService");
        this.setDescripcionPlain(Jsoup.parse(this.getDescripcionHtml()).text());
        this.getSelectedWiki().setNcategoriaid(this.getSelectedCategoria().getNcategoriaid());
        this.getSelectedWiki().setVtitulo(StringUtils.upperCase(this.getSelectedWiki().getVtitulo()));
        if (this.getDescripcionPlain().length() < 400) {
            this.getSelectedWiki().setVdescripcion(StringUtils.capitalize(this.getDescripcionPlain()));
        } else {
            this.getSelectedWiki()
                    .setVdescripcion(StringUtils.capitalize(this.getDescripcionPlain().substring(0, 399)));
        }
        this.getSelectedWiki().setNdestacado(this.getChkDestacado() ? BigDecimal.ONE : BigDecimal.ZERO);
        this.getSelectedWiki().setDfechamodificacion(new Date());
        this.getSelectedWiki().setVusuariomodificacion(usuario.getVlogin());
        this.getSelectedWiki().setNsituacionid(BigDecimal.valueOf((long) 6));
        this.getSelectedWiki().setDfechapublicacion(new Date());
        conocimientoService.saveOrUpdate(this.getSelectedWiki());

        GcmFileUtils.writeStringToFileServer(this.getSelectedWiki().getVruta(), "html.txt",
                this.getDescripcionHtml());
        GcmFileUtils.writeStringToFileServer(this.getSelectedWiki().getVruta(), "plain.txt",
                this.getDescripcionPlain());

        HistorialService historialService = (HistorialService) ServiceFinder.findBean("HistorialService");
        Historial lastHistorial = historialService
                .getLastHistorialByConocimiento(this.getSelectedWiki().getNconocimientoid());
        int lastversion;
        if (lastHistorial != null) {
            lastversion = lastHistorial.getNnumversion().intValue();
        } else {
            lastversion = 0;
        }
        String url = this.pathwk.concat(this.getSelectedWiki().getNconocimientoid().toString()).concat("/")
                .concat(Integer.toString(lastversion + 1)).concat("/");

        ThistorialId thistorialId = new ThistorialId();
        thistorialId.setNconocimientoid(this.getSelectedWiki().getNconocimientoid());
        thistorialId.setNhistorialid(historialService.getNextPK());
        Historial historial = new Historial();
        historial.setId(thistorialId);
        historial.setNtipoconocimientoid(Constante.WIKI);
        historial.setNcategoriaid(this.getSelectedCategoria().getNcategoriaid());
        historial.setVtitulo(this.getSelectedWiki().getVtitulo());
        historial.setNactivo(BigDecimal.ONE);
        historial.setNsituacionid(this.getSelectedWiki().getNsituacionid());
        historial.setVruta(url);
        historial.setNnumversion(BigDecimal.valueOf(lastversion + 1));
        historial.setDfechacreacion(new Date());
        historial.setVusuariocreacion(usuario.getVlogin());
        historial.setVmsjsolicita(this.getSelectedWiki().getVmsjsolicita());
        historial.setVmsjrespuesta(this.getSelectedWiki().getVmsjrespuesta());
        historialService.saveOrUpdate(historial);

        GcmFileUtils.writeStringToFileServer(url, "html.txt", this.getDescripcionHtml());
        GcmFileUtils.writeStringToFileServer(url, "plain.txt", this.getDescripcionPlain());

        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(this.getListaSeccion())) {
            String url0 = this.getSelectedWiki().getVruta().concat("s");
            String url1 = url.concat("s");
            SeccionService seccionService = (SeccionService) ServiceFinder.findBean("SeccionService");
            SeccionHistService seccionHistService = (SeccionHistService) ServiceFinder
                    .findBean("SeccionHistService");
            for (Seccion seccion : this.getListaSeccion()) {
                String ruta0 = url0.concat(seccion.getNorden().toString()).concat("/");
                seccion.setVruta(ruta0);
                if (seccion.getNseccionid() != null) {
                    seccion.setDfechamodificacion(new Date());
                    seccion.setVusuariomodificacion(usuario.getVlogin());
                } else {
                    seccion.setNseccionid(seccionService.getNextPK());
                    seccion.setNconocimientoid(this.getSelectedWiki().getNconocimientoid());
                    seccion.setDfechacreacion(new Date());
                    seccion.setVusuariocreacion(usuario.getVlogin());
                }
                seccionService.saveOrUpdate(seccion);

                seccion.setDetallePlain(Jsoup.parse(seccion.getDetalleHtml()).text());
                GcmFileUtils.writeStringToFileServer(ruta0, "html.txt", seccion.getDetalleHtml());
                GcmFileUtils.writeStringToFileServer(ruta0, "plain.txt", seccion.getDetallePlain());

                String ruta1 = url1.concat(seccion.getNorden().toString()).concat("/");
                TseccionHistId tseccionHistId = new TseccionHistId();
                tseccionHistId.setNconocimientoid(thistorialId.getNconocimientoid());
                tseccionHistId.setNhistorialid(thistorialId.getNhistorialid());
                tseccionHistId.setNseccionhid(seccionHistService.getNextPK());
                SeccionHist seccionHist = new SeccionHist();
                seccionHist.setId(tseccionHistId);
                seccionHist.setNorden(seccion.getNorden());
                seccionHist.setVruta(ruta1);
                seccionHist.setVtitulo(seccion.getVtitulo());
                seccionHist.setVusuariocreacion(usuario.getVlogin());
                seccionHist.setDfechacreacion(new Date());
                seccionHistService.saveOrUpdate(seccionHist);

                GcmFileUtils.writeStringToFileServer(ruta1, "html.txt", seccion.getDetalleHtml());
                GcmFileUtils.writeStringToFileServer(ruta1, "plain.txt", seccion.getDetallePlain());
            }
        }

        this.setListaTargetVinculos(new ArrayList());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBL());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBP());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosCT());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosOM());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosPR());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosWK());

        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(this.getListaTargetVinculos())) {
            VinculoService vinculoService = (VinculoService) ServiceFinder.findBean("VinculoService");
            VinculoHistService vinculoHistService = (VinculoHistService) ServiceFinder
                    .findBean("VinculoHistService");
            vinculoService.deleteByConocimiento(this.getSelectedWiki().getNconocimientoid());
            for (Consulta consulta : this.getListaTargetVinculos()) {
                Vinculo vinculo = new Vinculo();
                vinculo.setNvinculoid(vinculoService.getNextPK());
                vinculo.setNconocimientoid(this.getSelectedWiki().getNconocimientoid());
                vinculo.setNconocimientovinc(consulta.getIdconocimiento());
                vinculo.setNtipoconocimientovinc(consulta.getIdTipoConocimiento());
                vinculo.setDfechacreacion(new Date());
                vinculo.setVusuariocreacion(usuario.getVlogin());
                vinculoService.saveOrUpdate(vinculo);

                TvinculoHistId vinculoHistId = new TvinculoHistId();
                vinculoHistId.setNvinculohid(vinculoHistService.getNextPK());
                vinculoHistId.setNconocimientoid(thistorialId.getNconocimientoid());
                vinculoHistId.setNhistorialid(thistorialId.getNhistorialid());
                VinculoHist vinculoHist = new VinculoHist();
                vinculoHist.setId(vinculoHistId);
                vinculoHist.setNconocimientovinc(vinculo.getNconocimientovinc());
                vinculoHist.setDfechacreacion(new Date());
                vinculoHist.setVusuariocreacion(usuario.getVlogin());
                vinculoHistService.saveOrUpdate(vinculoHist);
            }
        }

        AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
        this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
        this.getSelectedAsignacion().setDfechaatencion(new Date());
        this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("8")));
        serviceasig.saveOrUpdate(this.getSelectedAsignacion());

        loginMB.refreshNotifications();
        FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.", "Se public el wiki.");
        FacesContext.getCurrentInstance().addMessage(null, message);
        FacesContext.getCurrentInstance().getExternalContext().redirect("/gescon/index.xhtml");
    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
    return pagina;
}

From source file:pe.gob.mef.gescon.web.ui.PendienteMB.java

public void publicarBpractica(ActionEvent event) {
    try {//from   w  ww  .ja  v a2  s  . c  om
        //this.setDescripcionHtml(JSFUtils.getRequestParameter("descHtml"));
        if (this.getChkDestacado()) {
            ConsultaService consultaService = (ConsultaService) ServiceFinder.findBean("ConsultaService");
            HashMap filter = new HashMap();
            filter.put("ntipoconocimientoid", Constante.BUENAPRACTICA);
            BigDecimal cant = consultaService.countDestacadosByTipoConocimiento(filter);
            if (cant.intValue() >= 10) {
                this.setListaDestacados(consultaService.getDestacadosByTipoConocimiento(filter));
                RequestContext.getCurrentInstance().execute("PF('destDialog').show();");
                return;
            }
        }
        this.setDescripcionPlain(Jsoup.parse(this.getDescripcionHtml()).text());
        LoginMB loginMB = (LoginMB) JSFUtils.getSessionAttribute("loginMB");
        User usuario = loginMB.getUser();
        ConocimientoService conocimientoService = (ConocimientoService) ServiceFinder
                .findBean("ConocimientoService");
        this.getSelectedBpractica().setNcategoriaid(this.getSelectedCategoria().getNcategoriaid());
        this.getSelectedBpractica()
                .setVtitulo(StringUtils.upperCase(this.getSelectedBpractica().getVtitulo().trim()));
        if (this.getDescripcionPlain().length() < 400) {
            this.getSelectedBpractica().setVdescripcion(StringUtils.capitalize(this.getDescripcionPlain()));
        } else {
            this.getSelectedBpractica()
                    .setVdescripcion(StringUtils.capitalize(this.getDescripcionPlain().substring(0, 399)));
        }
        this.getSelectedBpractica().setNdestacado(this.getChkDestacado() ? BigDecimal.ONE : BigDecimal.ZERO);
        this.getSelectedBpractica().setDfechamodificacion(new Date());
        this.getSelectedBpractica().setVusuariomodificacion(usuario.getVlogin());
        this.getSelectedBpractica().setNsituacionid(BigDecimal.valueOf((long) 6));
        this.getSelectedBpractica().setDfechapublicacion(new Date());
        conocimientoService.saveOrUpdate(this.getSelectedBpractica());

        GcmFileUtils.writeStringToFileServer(this.getSelectedBpractica().getVruta(), "html.txt",
                this.getDescripcionHtml());
        GcmFileUtils.writeStringToFileServer(this.getSelectedBpractica().getVruta(), "plain.txt",
                this.getDescripcionPlain());

        HistorialService historialService = (HistorialService) ServiceFinder.findBean("HistorialService");
        Historial lastHistorial = historialService
                .getLastHistorialByConocimiento(this.getSelectedBpractica().getNconocimientoid());
        int lastversion;
        if (lastHistorial != null) {
            lastversion = lastHistorial.getNnumversion().intValue();
        } else {
            lastversion = 0;
        }
        String url = this.pathbp.concat(this.getSelectedBpractica().getNconocimientoid().toString()).concat("/")
                .concat(Integer.toString(lastversion + 1)).concat("/");

        ThistorialId thistorialId = new ThistorialId();
        thistorialId.setNconocimientoid(this.getSelectedBpractica().getNconocimientoid());
        thistorialId.setNhistorialid(historialService.getNextPK());
        Historial historial = new Historial();
        historial.setId(thistorialId);
        historial.setNtipoconocimientoid(Constante.BUENAPRACTICA);
        historial.setNcategoriaid(this.getSelectedCategoria().getNcategoriaid());
        historial.setVtitulo(this.getSelectedBpractica().getVtitulo());
        historial.setNactivo(BigDecimal.ONE);
        historial.setNsituacionid(this.getSelectedBpractica().getNsituacionid());
        historial.setVruta(url);
        historial.setNnumversion(BigDecimal.valueOf(lastversion + 1));
        historial.setDfechacreacion(new Date());
        historial.setVusuariocreacion(usuario.getVlogin());
        historial.setVmsjsolicita(this.getSelectedBpractica().getVmsjsolicita());
        historial.setVmsjrespuesta(this.getSelectedBpractica().getVmsjrespuesta());
        historialService.saveOrUpdate(historial);

        GcmFileUtils.writeStringToFileServer(url, "html.txt", this.getDescripcionHtml());
        GcmFileUtils.writeStringToFileServer(url, "plain.txt", this.getDescripcionPlain());

        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(this.getListaSeccion())) {
            String url0 = this.getSelectedBpractica().getVruta().concat("s");
            String url1 = url.concat("s");
            SeccionService seccionService = (SeccionService) ServiceFinder.findBean("SeccionService");
            SeccionHistService seccionHistService = (SeccionHistService) ServiceFinder
                    .findBean("SeccionHistService");
            for (Seccion seccion : this.getListaSeccion()) {
                String ruta0 = url0.concat(seccion.getNorden().toString()).concat("/");
                seccion.setVruta(ruta0);
                if (seccion.getNseccionid() != null) {
                    seccion.setDfechamodificacion(new Date());
                    seccion.setVusuariomodificacion(usuario.getVlogin());
                } else {
                    seccion.setNseccionid(seccionService.getNextPK());
                    seccion.setNconocimientoid(this.getSelectedBpractica().getNconocimientoid());
                    seccion.setDfechacreacion(new Date());
                    seccion.setVusuariocreacion(usuario.getVlogin());
                }
                seccionService.saveOrUpdate(seccion);

                seccion.setDetallePlain(Jsoup.parse(seccion.getDetalleHtml()).text());
                GcmFileUtils.writeStringToFileServer(ruta0, "html.txt", seccion.getDetalleHtml());
                GcmFileUtils.writeStringToFileServer(ruta0, "plain.txt", seccion.getDetallePlain());

                String ruta1 = url1.concat(seccion.getNorden().toString()).concat("/");
                TseccionHistId tseccionHistId = new TseccionHistId();
                tseccionHistId.setNconocimientoid(thistorialId.getNconocimientoid());
                tseccionHistId.setNhistorialid(thistorialId.getNhistorialid());
                tseccionHistId.setNseccionhid(seccionHistService.getNextPK());
                SeccionHist seccionHist = new SeccionHist();
                seccionHist.setId(tseccionHistId);
                seccionHist.setNorden(seccion.getNorden());
                seccionHist.setVruta(ruta1);
                seccionHist.setVtitulo(seccion.getVtitulo());
                seccionHist.setVusuariocreacion(usuario.getVlogin());
                seccionHist.setDfechacreacion(new Date());
                seccionHistService.saveOrUpdate(seccionHist);

                GcmFileUtils.writeStringToFileServer(ruta1, "html.txt", seccion.getDetalleHtml());
                GcmFileUtils.writeStringToFileServer(ruta1, "plain.txt", seccion.getDetallePlain());
            }
        }

        this.setListaTargetVinculos(new ArrayList());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBL());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosBP());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosCT());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosOM());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosPR());
        this.getListaTargetVinculos().addAll(this.getListaTargetVinculosWK());

        if (org.apache.commons.collections.CollectionUtils.isNotEmpty(this.getListaTargetVinculos())) {
            VinculoService vinculoService = (VinculoService) ServiceFinder.findBean("VinculoService");
            VinculoHistService vinculoHistService = (VinculoHistService) ServiceFinder
                    .findBean("VinculoHistService");
            vinculoService.deleteByConocimiento(this.getSelectedBpractica().getNconocimientoid());
            for (Consulta consulta : this.getListaTargetVinculos()) {
                Vinculo vinculo = new Vinculo();
                vinculo.setNvinculoid(vinculoService.getNextPK());
                vinculo.setNconocimientoid(this.getSelectedBpractica().getNconocimientoid());
                vinculo.setNconocimientovinc(consulta.getIdconocimiento());
                vinculo.setNtipoconocimientovinc(consulta.getIdTipoConocimiento());
                vinculo.setDfechacreacion(new Date());
                vinculo.setVusuariocreacion(usuario.getVlogin());
                vinculoService.saveOrUpdate(vinculo);

                TvinculoHistId vinculoHistId = new TvinculoHistId();
                vinculoHistId.setNvinculohid(vinculoHistService.getNextPK());
                vinculoHistId.setNconocimientoid(thistorialId.getNconocimientoid());
                vinculoHistId.setNhistorialid(thistorialId.getNhistorialid());
                VinculoHist vinculoHist = new VinculoHist();
                vinculoHist.setId(vinculoHistId);
                vinculoHist.setNconocimientovinc(vinculo.getNconocimientovinc());
                vinculoHist.setDfechacreacion(new Date());
                vinculoHist.setVusuariocreacion(usuario.getVlogin());
                vinculoHistService.saveOrUpdate(vinculoHist);
            }
        }

        AsignacionService serviceasig = (AsignacionService) ServiceFinder.findBean("AsignacionService");
        this.getSelectedAsignacion().setNestadoid(BigDecimal.valueOf(Long.parseLong("2")));
        this.getSelectedAsignacion().setDfechaatencion(new Date());
        this.getSelectedAsignacion().setNaccionid(BigDecimal.valueOf(Long.parseLong("8")));
        serviceasig.saveOrUpdate(this.getSelectedAsignacion());

        loginMB.refreshNotifications();
        FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                "Se public la buena prctica.");
        FacesContext.getCurrentInstance().addMessage(null, message);
        FacesContext.getCurrentInstance().getExternalContext().redirect("/gescon/index.xhtml");
    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
}