Example usage for java.math BigDecimal ONE

List of usage examples for java.math BigDecimal ONE

Introduction

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

Prototype

BigDecimal ONE

To view the source code for java.math BigDecimal ONE.

Click Source Link

Document

The value 1, with a scale of 0.

Usage

From source file:org.ofbiz.order.order.OrderServices.java

public static Map<String, Object> shoppingCartTest(DispatchContext dctx,
        Map<String, ? extends Object> context) {
    Locale locale = (Locale) context.get("locale");
    ShoppingCart cart = new ShoppingCart(dctx.getDelegator(), "9000", "webStore", locale, "USD");
    try {//from  w w w . j  a  v a2  s .co m
        cart.addOrIncreaseItem("GZ-1005", null, BigDecimal.ONE, null, null, null, null, null, null, null,
                "DemoCatalog", null, null, null, null, dctx.getDispatcher());
    } catch (CartItemModifyException e) {
        Debug.logError(e, module);
    } catch (ItemNotFoundException e) {
        Debug.logError(e, module);
    }

    try {
        dctx.getDispatcher().runAsync("shoppingCartRemoteTest", UtilMisc.toMap("cart", cart), true);
    } catch (GenericServiceException e) {
        Debug.logError(e, module);
    }

    return ServiceUtil.returnSuccess();
}

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

public void PublicarContenido(ActionEvent event) {
    try {//  w ww .j a v a2s .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:org.openbravo.test.costing.TestCosting.java

@Test
public void testCostingLC1() throws Exception {

    final int day0 = 0;
    final int day1 = 5;
    final int day2 = 10;
    final BigDecimal price1 = new BigDecimal("135.00");
    final BigDecimal price2 = new BigDecimal("145.00");
    final BigDecimal price3 = new BigDecimal("80.00");
    final BigDecimal price4 = new BigDecimal("105.00");
    final BigDecimal price5 = new BigDecimal("145.37");
    final BigDecimal quantity1 = new BigDecimal("500");
    final BigDecimal quantity2 = BigDecimal.ONE;

    try {//from   w ww  . j a  v a2 s .  c om

        OBContext.setOBContext(USER_ID, ROLE_ID, CLIENT_ID, ORGANIZATION_ID);
        OBContext.setAdminMode(true);

        // Create a new product for the test
        Product product = createProduct(price1);

        // Create purchase order and book it
        Order purchaseOrder = createPurchaseOrder(product, price1, quantity1, day0);

        // Create goods receipt, run costing background, post it and assert it
        ShipmentInOut goodsReceipt = createGoodsReceipt(purchaseOrder, price1, quantity1, day1);

        // Create purchase invoice, post it and assert it
        createPurchaseInvoice(purchaseOrder, price2, quantity1, day2);

        // Run price correction background
        runPriceBackground();

        // Create purchase invoice with landed cost, post it and assert it
        Invoice purchaseInvoiceLandedCost1 = createPurchaseInvoiceLandedCost(LANDEDCOSTTYPE1_ID, price3,
                quantity2, day2);

        // Create purchase invoice with landed cost, post it and assert it
        Invoice purchaseInvoiceLandedCost2 = createPurchaseInvoiceLandedCost(LANDEDCOSTTYPE2_ID, price4,
                quantity2, day2);

        // Create Landed Cost
        List<Invoice> invoiceList = new ArrayList<Invoice>();
        invoiceList.add(purchaseInvoiceLandedCost1);
        invoiceList.add(purchaseInvoiceLandedCost2);
        List<ShipmentInOut> receiptList = new ArrayList<ShipmentInOut>();
        receiptList.add(goodsReceipt);
        createLandedCost(invoiceList, receiptList, day2);

        // Assert product transactions
        List<ProductTransactionAssert> productTransactionAssertList = new ArrayList<ProductTransactionAssert>();
        productTransactionAssertList.add(
                new ProductTransactionAssert(OBDal.getInstance().get(ShipmentInOut.class, goodsReceipt.getId())
                        .getMaterialMgmtShipmentInOutLineList().get(0), price1, price5, price2));
        assertProductTransaction(product.getId(), productTransactionAssertList);

        // Assert product costing
        List<MaterialTransaction> transactionList = getProductTransactions(product.getId());
        List<ProductCostingAssert> productCostingAssertList = new ArrayList<ProductCostingAssert>();
        productCostingAssertList
                .add(new ProductCostingAssert(transactionList.get(0), price2, price1, price5, quantity1));
        assertProductCosting(product.getId(), productCostingAssertList);

        // Assert cost adjustment
        List<CostAdjustment> costAdjustmentList = getCostAdjustment(product.getId());
        List<List<CostAdjustmentAssert>> costAdjustmentAssertList = new ArrayList<List<CostAdjustmentAssert>>();
        List<CostAdjustmentAssert> costAdjustmentAssertLineList1 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList1.add(new CostAdjustmentAssert(transactionList.get(0), "PDC",
                quantity1.multiply(price2).add(quantity1.multiply(price1).negate()), day2, true));
        costAdjustmentAssertList.add(costAdjustmentAssertLineList1);
        List<CostAdjustmentAssert> costAdjustmentAssertLineList2 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList2.add(new CostAdjustmentAssert(transactionList.get(0), "LC",
                quantity2.multiply(price3).add(quantity2.multiply(price4)), day2, true, false));
        costAdjustmentAssertList.add(costAdjustmentAssertLineList2);
        assertCostAdjustment(costAdjustmentList, costAdjustmentAssertList);

        // Post cost adjustment 1 and assert it
        postDocument(costAdjustmentList.get(0));
        List<DocumentPostAssert> documentPostAssertList1 = new ArrayList<DocumentPostAssert>();
        documentPostAssertList1.add(new DocumentPostAssert("99904", amount0,
                quantity1.multiply(price2).add(quantity1.multiply(price1).negate()), null));
        documentPostAssertList1.add(new DocumentPostAssert("35000",
                quantity1.multiply(price2).add(quantity1.multiply(price1).negate()), amount0, null));
        CostAdjustment costAdjustment1 = OBDal.getInstance().get(CostAdjustment.class,
                costAdjustmentList.get(0).getId());
        assertDocumentPost(costAdjustment1, product.getId(), documentPostAssertList1);

        OBDal.getInstance().commitAndClose();

    } catch (Exception e) {
        System.out.println(e.getMessage());
        throw new OBException(e);
    }

    finally {
        OBContext.restorePreviousMode();
    }
}

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

public void sendContenidoSolicita(ActionEvent event) {
    try {//from w w w . j  av a2  s . com
        if (StringUtils.isBlank(this.getSelectedContenido().getVmsjsolicita())) {
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, Constante.SEVERETY_ALERTA,
                    "Campo requerido. Ingrese el mensaje a enviar.");
            FacesContext.getCurrentInstance().addMessage(null, message);
        } else {
            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()
                    .setVmsjsolicita(this.getSelectedContenido().getVmsjsolicita().toUpperCase());
            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());
            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.setVusuariocreacion(user_savecontenido.getVlogin());
            historialService.saveOrUpdate(historial);

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

            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);

            }

            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.CONTENIDO);
            asignacion.setNconocimientoid(this.getSelectedContenido().getNconocimientoid());
            asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
            asignacion.setNusuarioid(
                    serviceasig.getUserCreacionByContenido(this.getSelectedContenido().getNtipoconocimientoid(),
                            this.getSelectedContenido().getNconocimientoid()));
            asignacion.setDfechaasignacion(new Date());
            asignacion.setDfechacreacion(new Date());
            serviceasig.saveOrUpdate(asignacion);

            loginMB.refreshNotifications();

            this.fSInfMod = "true";
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                    "Se envi la solicitud de informacin.");
            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 sendContenidoRespuesta(ActionEvent event) {
    try {//  www  . j  av  a2  s .  c o  m
        if (StringUtils.isBlank(this.getSelectedContenido().getVmsjrespuesta())) {
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, Constante.SEVERETY_ALERTA,
                    "Campo requerido. Ingrese el mensaje a enviar.");
            FacesContext.getCurrentInstance().addMessage(null, message);
        } else {
            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()
                    .setVmsjrespuesta(this.getSelectedContenido().getVmsjrespuesta().toUpperCase());
            this.getSelectedContenido()
                    .setVmsjsolicita(this.getSelectedContenido().getVmsjsolicita().toUpperCase());
            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());
            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());

            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);

            }

            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("10")));
            serviceasig.saveOrUpdate(this.getSelectedAsignacion());

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

            loginMB.refreshNotifications();

            this.fSInfMod = "true";
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                    "Se envi la respuesta a la solicitud de informacin.");
            FacesContext.getCurrentInstance().addMessage(null, message);
            FacesContext.getCurrentInstance().getExternalContext().redirect("/gescon/index.xhtml");
        }

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

From source file:org.openbravo.test.costing.TestCosting.java

@Test
public void testCostingLC3LC4() throws Exception {

    final int day0 = 0;
    final int day1 = 5;
    final int day2 = 10;
    final int day3 = 15;
    final int day4 = 20;
    final int day5 = 25;
    final int day6 = 30;
    final BigDecimal price1 = new BigDecimal("100.00");
    final BigDecimal price2 = new BigDecimal("110.00");
    final BigDecimal price3 = new BigDecimal("1500.00");
    final BigDecimal price4 = new BigDecimal("210.00");
    final BigDecimal price5 = new BigDecimal("130.00");
    final BigDecimal price6 = new BigDecimal("126.0936");
    final BigDecimal price7 = new BigDecimal("115.0600");
    final BigDecimal price8 = new BigDecimal("126.0933");
    final BigDecimal price9 = new BigDecimal("138.7029");
    final BigDecimal price10 = new BigDecimal("146.5664");
    final BigDecimal price11 = new BigDecimal("138.7030");
    final BigDecimal price12 = new BigDecimal("119.7281");
    final BigDecimal price13 = new BigDecimal("121.7382");
    final BigDecimal price14 = new BigDecimal("144.8463");
    final BigDecimal price15 = new BigDecimal("142.2134");
    final BigDecimal price16 = new BigDecimal("84.9400");
    final BigDecimal price17 = new BigDecimal("93.4338");
    final BigDecimal price18 = new BigDecimal("88.9665");
    final BigDecimal price19 = new BigDecimal("97.8632");
    final BigDecimal quantity1 = new BigDecimal("11");
    final BigDecimal quantity2 = new BigDecimal("7");
    final BigDecimal quantity3 = new BigDecimal("15");
    final BigDecimal quantity4 = new BigDecimal("25");
    final BigDecimal quantity5 = new BigDecimal("12");
    final BigDecimal quantity6 = new BigDecimal("24");
    final BigDecimal quantity7 = BigDecimal.ONE;
    final BigDecimal quantity8 = new BigDecimal("3");
    final BigDecimal amount1 = new BigDecimal("500");
    final String costType = "AVA";

    try {/*w w w . j a  v  a 2  s.  c o  m*/

        OBContext.setOBContext(USER_ID, ROLE_ID, CLIENT_ID, ORGANIZATION_ID);
        OBContext.setAdminMode(true);

        // Create a new product for the test
        Product product1 = createProduct(price1, price1, costType);

        // Create a new product for the test
        Product product2 = createProduct(price2, price2, costType);

        // Create goods receipt, run costing background, post it and assert it
        ShipmentInOut goodsReceipt11 = createGoodsReceipt(product1, price1, quantity1, day1);

        // Create goods receipt, run costing background, post it and assert it
        ShipmentInOut goodsReceipt21 = createGoodsReceipt(product2, price2, quantity2, day1);

        // Create goods receipt, run costing background, post it and assert it
        ShipmentInOut goodsReceipt12 = createGoodsReceipt(product1, price1, quantity3, day2);

        // Create goods receipt, run costing background, post it and assert it
        ShipmentInOut goodsReceipt22 = createGoodsReceipt(product2, price2, quantity4, day2);

        // Create goods receipt, run costing background, post it and assert it
        ShipmentInOut goodsReceipt13 = createGoodsReceipt(product1, price1, quantity5, day3);

        // Create goods receipt, run costing background, post it and assert it
        ShipmentInOut goodsReceipt23 = createGoodsReceipt(product2, price2, quantity6, day3);

        // Create purchase invoice with landed cost, post it and assert it
        Invoice purchaseInvoiceLandedCost1 = createPurchaseInvoiceLandedCost(LANDEDCOSTTYPE1_ID, price3,
                quantity7, day0);

        // Create purchase invoice with landed cost, post it and assert it
        Invoice purchaseInvoiceLandedCost2 = createPurchaseInvoiceLandedCost(LANDEDCOSTTYPE2_ID, price4,
                quantity8, day4);

        // Create Landed Cost
        List<Invoice> invoiceList1 = new ArrayList<Invoice>();
        invoiceList1.add(purchaseInvoiceLandedCost1);
        List<ShipmentInOut> receiptList1 = new ArrayList<ShipmentInOut>();
        receiptList1.add(goodsReceipt11);
        receiptList1.add(goodsReceipt21);
        receiptList1.add(goodsReceipt12);
        receiptList1.add(goodsReceipt22);
        receiptList1.add(goodsReceipt13);
        receiptList1.add(goodsReceipt23);
        createLandedCost(invoiceList1, receiptList1, day0);

        // Create Landed Cost
        List<Invoice> invoiceList2 = new ArrayList<Invoice>();
        invoiceList2.add(purchaseInvoiceLandedCost2);
        List<ShipmentInOut> receiptList2 = new ArrayList<ShipmentInOut>();
        receiptList2.add(goodsReceipt11);
        receiptList2.add(goodsReceipt21);
        receiptList2.add(goodsReceipt13);
        receiptList2.add(goodsReceipt23);
        createLandedCost(invoiceList2, receiptList2, day5);

        // Update transaction total cost amount
        manualCostAdjustment(getProductTransactions(product2.getId()).get(1), amount1, true, true, day6);

        // Assert product transactions 1
        List<ProductTransactionAssert> productTransactionAssertList1 = new ArrayList<ProductTransactionAssert>();
        productTransactionAssertList1.add(new ProductTransactionAssert(OBDal.getInstance()
                .get(ShipmentInOut.class, goodsReceipt11.getId()).getMaterialMgmtShipmentInOutLineList().get(0),
                price1, price6, price1));
        productTransactionAssertList1.add(new ProductTransactionAssert(OBDal.getInstance()
                .get(ShipmentInOut.class, goodsReceipt12.getId()).getMaterialMgmtShipmentInOutLineList().get(0),
                price1, price7, price1));
        productTransactionAssertList1.add(new ProductTransactionAssert(OBDal.getInstance()
                .get(ShipmentInOut.class, goodsReceipt13.getId()).getMaterialMgmtShipmentInOutLineList().get(0),
                price1, price8, price1));
        assertProductTransaction(product1.getId(), productTransactionAssertList1);

        // Assert product transactions 2
        List<ProductTransactionAssert> productTransactionAssertList2 = new ArrayList<ProductTransactionAssert>();
        productTransactionAssertList2.add(new ProductTransactionAssert(OBDal.getInstance()
                .get(ShipmentInOut.class, goodsReceipt21.getId()).getMaterialMgmtShipmentInOutLineList().get(0),
                price2, price9, price2));
        productTransactionAssertList2.add(new ProductTransactionAssert(OBDal.getInstance()
                .get(ShipmentInOut.class, goodsReceipt22.getId()).getMaterialMgmtShipmentInOutLineList().get(0),
                price2, price10, price5));
        productTransactionAssertList2.add(new ProductTransactionAssert(OBDal.getInstance()
                .get(ShipmentInOut.class, goodsReceipt23.getId()).getMaterialMgmtShipmentInOutLineList().get(0),
                price2, price11, price2));
        assertProductTransaction(product2.getId(), productTransactionAssertList2);

        // Assert product costing 1
        List<MaterialTransaction> transactionList1 = getProductTransactions(product1.getId());
        List<ProductCostingAssert> productCostingAssertList1 = new ArrayList<ProductCostingAssert>();
        productCostingAssertList1.add(new ProductCostingAssert(null, null, null, price1, null, costType));
        productCostingAssertList1
                .add(new ProductCostingAssert(transactionList1.get(0), price1, price1, price6, quantity1));
        productCostingAssertList1.add(new ProductCostingAssert(transactionList1.get(1), price1, price1, price12,
                quantity1.add(quantity3)));
        productCostingAssertList1.add(new ProductCostingAssert(transactionList1.get(2), price1, price1, price13,
                quantity1.add(quantity3).add(quantity5)));
        assertProductCosting(product1.getId(), productCostingAssertList1);

        // Assert product costing 2
        List<MaterialTransaction> transactionList2 = getProductTransactions(product2.getId());
        List<ProductCostingAssert> productCostingAssertList2 = new ArrayList<ProductCostingAssert>();
        productCostingAssertList2.add(new ProductCostingAssert(null, null, null, price2, null, costType));
        productCostingAssertList2
                .add(new ProductCostingAssert(transactionList2.get(0), price2, price2, price9, quantity2));
        productCostingAssertList2.add(new ProductCostingAssert(transactionList2.get(1), price5, price2, price14,
                quantity2.add(quantity4)));
        productCostingAssertList2.add(new ProductCostingAssert(transactionList2.get(2), price2, price2, price15,
                quantity2.add(quantity4).add(quantity6)));
        assertProductCosting(product2.getId(), productCostingAssertList2);

        // Assert cost adjustment 1
        List<CostAdjustment> costAdjustmentList1 = getCostAdjustment(product1.getId());
        List<List<CostAdjustmentAssert>> costAdjustmentAssertList1 = new ArrayList<List<CostAdjustmentAssert>>();
        List<CostAdjustmentAssert> costAdjustmentAssertLineList11 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList1.get(0), "LC",
                quantity1.multiply(price1).add(quantity1.multiply(price16).negate()), day0, true, false));
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList2.get(0), "LC",
                quantity2.multiply(price2).add(quantity2.multiply(price17).negate()), day0, true, false));
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList1.get(1), "LC",
                quantity3.multiply(price1).add(quantity3.multiply(price16).negate()), day0, true, false));
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList2.get(1), "LC",
                quantity4.multiply(price2).add(quantity4.multiply(price17).negate()), day0, true, false));
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList1.get(2), "LC",
                quantity5.multiply(price1).add(quantity5.multiply(price16).negate()), day0, true, false));
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList2.get(2), "LC",
                quantity6.multiply(price2).add(quantity6.multiply(price17).negate()), day0, true, false));
        costAdjustmentAssertList1.add(costAdjustmentAssertLineList11);
        List<CostAdjustmentAssert> costAdjustmentAssertLineList12 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList12.add(new CostAdjustmentAssert(transactionList1.get(0), "LC",
                quantity1.multiply(price1).add(quantity1.multiply(price18).negate()), day5, true, false));
        costAdjustmentAssertLineList12.add(new CostAdjustmentAssert(transactionList2.get(0), "LC",
                quantity2.multiply(price2).add(quantity2.multiply(price19).negate()), day5, true, false));
        costAdjustmentAssertLineList12.add(new CostAdjustmentAssert(transactionList1.get(2), "LC",
                quantity5.multiply(price1).add(quantity5.multiply(price18).negate()), day5, true, false));
        costAdjustmentAssertLineList12.add(new CostAdjustmentAssert(transactionList2.get(2), "LC",
                quantity6.multiply(price2).add(quantity6.multiply(price19).negate()), day5, true, false));
        costAdjustmentAssertList1.add(costAdjustmentAssertLineList12);
        assertCostAdjustment(costAdjustmentList1, costAdjustmentAssertList1);

        // Assert cost adjustment 2
        List<CostAdjustment> costAdjustmentList2 = getCostAdjustment(product2.getId());
        List<List<CostAdjustmentAssert>> costAdjustmentAssertList2 = new ArrayList<List<CostAdjustmentAssert>>();
        List<CostAdjustmentAssert> costAdjustmentAssertLineList21 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList1.get(0), "LC",
                quantity1.multiply(price1).add(quantity1.multiply(price16).negate()), day0, true, false));
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList2.get(0), "LC",
                quantity2.multiply(price2).add(quantity2.multiply(price17).negate()), day0, true, false));
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList1.get(1), "LC",
                quantity3.multiply(price1).add(quantity3.multiply(price16).negate()), day0, true, false));
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList2.get(1), "LC",
                quantity4.multiply(price2).add(quantity4.multiply(price17).negate()), day0, true, false));
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList1.get(2), "LC",
                quantity5.multiply(price1).add(quantity5.multiply(price16).negate()), day0, true, false));
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList2.get(2), "LC",
                quantity6.multiply(price2).add(quantity6.multiply(price17).negate()), day0, true, false));
        costAdjustmentAssertList2.add(costAdjustmentAssertLineList21);
        List<CostAdjustmentAssert> costAdjustmentAssertLineList22 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList22.add(new CostAdjustmentAssert(transactionList1.get(0), "LC",
                quantity1.multiply(price1).add(quantity1.multiply(price18).negate()), day5, true, false));
        costAdjustmentAssertLineList22.add(new CostAdjustmentAssert(transactionList2.get(0), "LC",
                quantity2.multiply(price2).add(quantity2.multiply(price19).negate()), day5, true, false));
        costAdjustmentAssertLineList22.add(new CostAdjustmentAssert(transactionList1.get(2), "LC",
                quantity5.multiply(price1).add(quantity5.multiply(price18).negate()), day5, true, false));
        costAdjustmentAssertLineList22.add(new CostAdjustmentAssert(transactionList2.get(2), "LC",
                quantity6.multiply(price2).add(quantity6.multiply(price19).negate()), day5, true, false));
        costAdjustmentAssertList2.add(costAdjustmentAssertLineList22);
        List<CostAdjustmentAssert> costAdjustmentAssertLineList23 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList23
                .add(new CostAdjustmentAssert(transactionList2.get(1), "MCC", amount1, day6, true));
        costAdjustmentAssertList2.add(costAdjustmentAssertLineList23);
        assertCostAdjustment(costAdjustmentList2, costAdjustmentAssertList2);

        // Post cost adjustment 3 and assert it
        postDocument(costAdjustmentList2.get(2));
        List<DocumentPostAssert> documentPostAssertList1 = new ArrayList<DocumentPostAssert>();
        documentPostAssertList1.add(new DocumentPostAssert("61000", amount0, amount1, null));
        documentPostAssertList1.add(new DocumentPostAssert("35000", amount1, amount0, null));
        CostAdjustment costAdjustment1 = OBDal.getInstance().get(CostAdjustment.class,
                costAdjustmentList2.get(2).getId());
        assertDocumentPost(costAdjustment1, product2.getId(), documentPostAssertList1);

        OBDal.getInstance().commitAndClose();

    } catch (Exception e) {
        System.out.println(e.getMessage());
        throw new OBException(e);
    }

    finally {
        OBContext.restorePreviousMode();
    }
}

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

public void sendWikiSolicita(ActionEvent event) {
    try {/*from w  w  w . j  av a 2s.  co  m*/
        if (StringUtils.isBlank(this.getSelectedWiki().getVmsjsolicita())) {
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, Constante.SEVERETY_ALERTA,
                    "Campo requerido. Ingrese el mensaje a enviar.");
            FacesContext.getCurrentInstance().addMessage(null, message);
        } else {
            //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().setVmsjsolicita(this.getSelectedWiki().getVmsjsolicita().toUpperCase());
            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("9")));
            serviceasig.saveOrUpdate(this.getSelectedAsignacion());

            Asignacion asignacion = new Asignacion();
            asignacion.setNasignacionid(serviceasig.getNextPK());
            asignacion.setNtipoconocimientoid(Constante.WIKI);
            asignacion.setNconocimientoid(this.getSelectedWiki().getNconocimientoid());
            asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
            asignacion.setNusuarioid(
                    serviceasig.getUserCreacionByContenido(this.getSelectedWiki().getNtipoconocimientoid(),
                            this.getSelectedWiki().getNconocimientoid()));
            asignacion.setDfechaasignacion(new Date());
            asignacion.setDfechacreacion(new Date());
            serviceasig.saveOrUpdate(asignacion);

            loginMB.refreshNotifications();

            this.fSInfMod = "true";
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                    "Solicitud de informacin enviada.");
            FacesContext.getCurrentInstance().addMessage(null, message);
            FacesContext.getCurrentInstance().getExternalContext().redirect("/gescon/index.xhtml");
        }
    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
}

From source file:org.ofbiz.order.order.OrderServices.java

public static Map<String, Object> createSimpleNonProductSalesOrder(DispatchContext dctx,
        Map<String, ? extends Object> context) {
    LocalDispatcher dispatcher = dctx.getDispatcher();
    Delegator delegator = dctx.getDelegator();

    GenericValue userLogin = (GenericValue) context.get("userLogin");
    Locale locale = (Locale) context.get("locale");

    String paymentMethodId = (String) context.get("paymentMethodId");
    String productStoreId = (String) context.get("productStoreId");
    String currency = (String) context.get("currency");
    String partyId = (String) context.get("partyId");
    Map<String, BigDecimal> itemMap = UtilGenerics.checkMap(context.get("itemMap"));

    ShoppingCart cart = new ShoppingCart(delegator, productStoreId, null, locale, currency);
    try {//from w  w w  .  j av a  2 s  . c o m
        cart.setUserLogin(userLogin, dispatcher);
    } catch (CartItemModifyException e) {
        Debug.logError(e, module);
        return ServiceUtil.returnError(e.getMessage());
    }
    cart.setOrderType("SALES_ORDER");
    cart.setOrderPartyId(partyId);

    Iterator<String> i = itemMap.keySet().iterator();
    while (i.hasNext()) {
        String item = i.next();
        BigDecimal price = itemMap.get(item);
        try {
            cart.addNonProductItem("BULK_ORDER_ITEM", item, null, price, BigDecimal.ONE, null, null, null,
                    dispatcher);
        } catch (CartItemModifyException e) {
            Debug.logError(e, module);
            return ServiceUtil.returnError(e.getMessage());
        }
    }

    // set the payment method
    try {
        cart.addPayment(paymentMethodId);
    } catch (IllegalArgumentException e) {
        return ServiceUtil.returnError(e.getMessage());
    }

    // save the order (new tx)
    Map<String, Object> createResp;
    try {
        createResp = dispatcher.runSync("createOrderFromShoppingCart", UtilMisc.toMap("shoppingCart", cart), 90,
                true);
    } catch (GenericServiceException e) {
        Debug.logError(e, module);
        return ServiceUtil.returnError(e.getMessage());
    }
    if (ServiceUtil.isError(createResp)) {
        return createResp;
    }

    // auth the order (new tx)
    Map<String, Object> authResp;
    try {
        authResp = dispatcher.runSync("callProcessOrderPayments", UtilMisc.toMap("shoppingCart", cart), 180,
                true);
    } catch (GenericServiceException e) {
        Debug.logError(e, module);
        return ServiceUtil.returnError(e.getMessage());
    }
    if (ServiceUtil.isError(authResp)) {
        return authResp;
    }

    Map<String, Object> result = ServiceUtil.returnSuccess();
    result.put("orderId", createResp.get("orderId"));
    return result;
}

From source file:org.openbravo.test.costing.TestCosting.java

@Test
public void testCostingLC100LC200() throws Exception {

    final int day0 = 0;
    final int day1 = 5;
    final int day2 = 10;
    final int day3 = 15;
    final BigDecimal price1 = new BigDecimal("150.00");
    final BigDecimal price2 = new BigDecimal("185.00");
    final BigDecimal price3 = new BigDecimal("535.00");
    final BigDecimal price4 = new BigDecimal("105.00");
    final BigDecimal price5 = new BigDecimal("151.8462");
    final BigDecimal price6 = new BigDecimal("187.2769");
    final BigDecimal quantity1 = new BigDecimal("100");
    final BigDecimal quantity2 = new BigDecimal("200");
    final BigDecimal quantity3 = BigDecimal.ONE;

    try {/* w w w  .j  a v a2s . co m*/

        OBContext.setOBContext(USER_ID, ROLE_ID, CLIENT_ID, ORGANIZATION_ID);
        OBContext.setAdminMode(true);

        // Create a new product for the test
        Product product1 = createProduct(price1);

        // Create a new product for the test
        Product product2 = createProduct(price2);

        // Create purchase order and book it
        Order purchaseOrder1 = createPurchaseOrder(product1, price1, quantity1, day0);

        // Create purchase order and book it
        Order purchaseOrder2 = createPurchaseOrder(product2, price2, quantity2, day0);

        // Create purchase invoice with landed cost, post it and assert it
        Invoice purchaseInvoiceLandedCost1 = createPurchaseInvoiceLandedCost(LANDEDCOSTTYPE1_ID, price3,
                quantity3, day1);

        // Create purchase invoice with landed cost, post it and assert it
        Invoice purchaseInvoiceLandedCost2 = createPurchaseInvoiceLandedCost(LANDEDCOSTTYPE2_ID, price4,
                quantity3, day2);

        // Create goods receipt, run costing background, post it and assert it
        List<Order> purchaseOrderList = new ArrayList<Order>();
        purchaseOrderList.add(purchaseOrder1);
        purchaseOrderList.add(purchaseOrder2);
        List<Invoice> invoiceList = new ArrayList<Invoice>();
        invoiceList.add(purchaseInvoiceLandedCost1);
        invoiceList.add(purchaseInvoiceLandedCost2);
        ShipmentInOut goodsReceipt = createGoodsReceipt(purchaseOrderList, null, quantity1.add(quantity2), day3,
                invoiceList);

        // Post landed cost and assert it
        List<ShipmentInOut> receiptList = new ArrayList<ShipmentInOut>();
        receiptList.add(goodsReceipt);
        postLandedCost(OBDal.getInstance().get(LandedCost.class,
                goodsReceipt.getLandedCostCostList().get(0).getLandedCost().getId()));

        // Assert product transactions 1
        List<ProductTransactionAssert> productTransactionAssertList1 = new ArrayList<ProductTransactionAssert>();
        productTransactionAssertList1.add(
                new ProductTransactionAssert(OBDal.getInstance().get(ShipmentInOut.class, goodsReceipt.getId())
                        .getMaterialMgmtShipmentInOutLineList().get(0), price1, price5, price1));
        assertProductTransaction(product1.getId(), productTransactionAssertList1);

        // Assert product transactions 2
        List<ProductTransactionAssert> productTransactionAssertList2 = new ArrayList<ProductTransactionAssert>();
        productTransactionAssertList2.add(
                new ProductTransactionAssert(OBDal.getInstance().get(ShipmentInOut.class, goodsReceipt.getId())
                        .getMaterialMgmtShipmentInOutLineList().get(1), price2, price6, price2));
        assertProductTransaction(product2.getId(), productTransactionAssertList2);

        // Assert product costing 1
        List<MaterialTransaction> transactionList1 = getProductTransactions(product1.getId());
        List<ProductCostingAssert> productCostingAssertList1 = new ArrayList<ProductCostingAssert>();
        productCostingAssertList1
                .add(new ProductCostingAssert(transactionList1.get(0), price1, price1, price5, quantity1));
        assertProductCosting(product1.getId(), productCostingAssertList1);

        // Assert product costing 2
        List<MaterialTransaction> transactionList2 = getProductTransactions(product2.getId());
        List<ProductCostingAssert> productCostingAssertList2 = new ArrayList<ProductCostingAssert>();
        productCostingAssertList2
                .add(new ProductCostingAssert(transactionList2.get(0), price2, price2, price6, quantity2));
        assertProductCosting(product2.getId(), productCostingAssertList2);

        // Assert cost adjustment 1
        List<CostAdjustment> costAdjustmentList1 = getCostAdjustment(product1.getId());
        List<List<CostAdjustmentAssert>> costAdjustmentAssertList1 = new ArrayList<List<CostAdjustmentAssert>>();
        List<CostAdjustmentAssert> costAdjustmentAssertLineList11 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList1.get(0), "LC",
                quantity1.multiply(price5).add(quantity1.multiply(price1).negate()), day0, true, false));
        costAdjustmentAssertLineList11.add(new CostAdjustmentAssert(transactionList2.get(0), "LC",
                quantity2.multiply(price6).add(quantity2.multiply(price2).negate()), day0, true, false));
        costAdjustmentAssertList1.add(costAdjustmentAssertLineList11);
        assertCostAdjustment(costAdjustmentList1, costAdjustmentAssertList1);

        // Assert cost adjustment 2
        List<CostAdjustment> costAdjustmentList2 = getCostAdjustment(product2.getId());
        List<List<CostAdjustmentAssert>> costAdjustmentAssertList2 = new ArrayList<List<CostAdjustmentAssert>>();
        List<CostAdjustmentAssert> costAdjustmentAssertLineList21 = new ArrayList<CostAdjustmentAssert>();
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList1.get(0), "LC",
                quantity1.multiply(price5).add(quantity1.multiply(price1).negate()), day0, true, false));
        costAdjustmentAssertLineList21.add(new CostAdjustmentAssert(transactionList2.get(0), "LC",
                quantity2.multiply(price6).add(quantity2.multiply(price2).negate()), day0, true, false));
        costAdjustmentAssertList2.add(costAdjustmentAssertLineList21);
        assertCostAdjustment(costAdjustmentList2, costAdjustmentAssertList2);

        OBDal.getInstance().commitAndClose();

    } catch (Exception e) {
        System.out.println(e.getMessage());
        throw new OBException(e);
    }

    finally {
        OBContext.restorePreviousMode();
    }
}

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

public void sendBpracticaSolicita(ActionEvent event) {
    try {//from   ww w .  j  av  a2s. c o m
        if (StringUtils.isBlank(this.getSelectedBpractica().getVmsjsolicita())) {
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR, Constante.SEVERETY_ALERTA,
                    "Campo requerido. Ingrese el mensaje a enviar.");
            FacesContext.getCurrentInstance().addMessage(null, message);
        } else {
            //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()
                    .setVmsjsolicita(this.getSelectedBpractica().getVmsjsolicita().toUpperCase());
            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("9")));
            serviceasig.saveOrUpdate(this.getSelectedAsignacion());

            Asignacion asignacion = new Asignacion();
            asignacion.setNasignacionid(serviceasig.getNextPK());
            asignacion.setNtipoconocimientoid(Constante.BUENAPRACTICA);
            asignacion.setNconocimientoid(this.getSelectedBpractica().getNconocimientoid());
            asignacion.setNestadoid(BigDecimal.valueOf(Long.parseLong("1")));
            asignacion.setNusuarioid(
                    serviceasig.getUserCreacionByContenido(this.getSelectedBpractica().getNtipoconocimientoid(),
                            this.getSelectedBpractica().getNconocimientoid()));
            asignacion.setDfechaasignacion(new Date());
            asignacion.setDfechacreacion(new Date());
            serviceasig.saveOrUpdate(asignacion);

            loginMB.refreshNotifications();

            this.fSInfMod = "true";
            FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "INFO.",
                    "Solicitud de informacin adicional enviada.");
            FacesContext.getCurrentInstance().addMessage(null, message);
            FacesContext.getCurrentInstance().getExternalContext().redirect("/gescon/index.xhtml");
        }
    } catch (Exception e) {
        log.error(e.getMessage());
        e.printStackTrace();
    }
}