Example usage for com.liferay.portal.kernel.util StringPool DASH

List of usage examples for com.liferay.portal.kernel.util StringPool DASH

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.util StringPool DASH.

Prototype

String DASH

To view the source code for com.liferay.portal.kernel.util StringPool DASH.

Click Source Link

Usage

From source file:org.opencps.jms.business.SubmitPaymentFile.java

License:Open Source License

/**
 * @param paymentFileMsgBody/*from ww w. j  a  v a2  s. c o  m*/
 * @return
 * @throws SystemException
 * @throws PortalException
 */
public PaymentFile syncPaymentFile(PaymentFileMsgBody paymentFileMsgBody)
        throws SystemException, PortalException {

    String oId = paymentFileMsgBody.getOid();

    PaymentFile paymentFile = PaymentFileLocalServiceUtil.getPaymentFileByOID(oId);

    ServiceContext serviceContext = paymentFileMsgBody.getServiceContext();

    serviceContext.setAddGroupPermissions(true);
    serviceContext.setAddGuestPermissions(true);

    String sourceFileName = paymentFileMsgBody != null
            ? paymentFile.getPaymentFileId() + StringPool.DASH + paymentFileMsgBody.getFileTitle()
                    + StringPool.DASH + System.currentTimeMillis()
            : StringPool.BLANK;

    System.out.println("####################SubmitPaymentFile: Starting synchronize PaymentFile");

    paymentFile = PaymentFileLocalServiceUtil.syncPaymentFile(oId, paymentFileMsgBody.getTypeUpdate(),
            paymentFileMsgBody.getPaymentStatus(), paymentFileMsgBody.getPaymentMethod(),
            paymentFileMsgBody.getApproveNote(), paymentFileMsgBody.getConfirmFileEntry(), sourceFileName,
            paymentFileMsgBody.getMimeType(),
            paymentFileMsgBody != null ? paymentFileMsgBody.getFileTitle() : StringPool.BLANK,
            paymentFileMsgBody.getFileDescription(), StringPool.BLANK, serviceContext);

    // TODO add log

    return paymentFile;
}

From source file:org.opencps.paymentmgt.portlet.PaymentMgtBackOfficePortlet.java

License:Open Source License

/**
 * @param actionRequest/*w  ww .  j av a2  s.  co m*/
 * 
 * @param actionResponse
 * @throws IOException
 */
public void createReport(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException {

    ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long paymentFileId = ParamUtil.getLong(actionRequest, "paymentFileId");

    AccountBean accountBean = AccountUtil.getAccountBean(actionRequest);
    File file = null;

    InputStream inputStream = null;

    JSONObject responseJSON = JSONFactoryUtil.createJSONObject();

    String fileExportDir = StringPool.BLANK;
    String urlFileDowLoad = StringPool.BLANK;
    try {
        if (paymentFileId > 0) {
            ServiceContext serviceContext = ServiceContextFactory.getInstance(actionRequest);
            serviceContext.setAddGroupPermissions(true);
            serviceContext.setAddGuestPermissions(true);
            // Get PaymentFile
            PaymentFile paymentFile = PaymentFileLocalServiceUtil.fetchPaymentFile(paymentFileId);
            long govAgencyOrganizationId = -1;
            long userId = themeDisplay.getUserId();
            Employee employee = EmployeeLocalServiceUtil
                    .getEmployeeByMappingUserId(themeDisplay.getScopeGroupId(), userId);
            WorkingUnit workingUnit = WorkingUnitLocalServiceUtil.fetchWorkingUnit(employee.getWorkingUnitId());
            govAgencyOrganizationId = workingUnit.getMappingOrganisationId();
            //            govAgencyOrganizationId = 24787;
            PaymentConfig paymentConfig = PaymentConfigLocalServiceUtil
                    .getPaymentConfigByGovAgency(themeDisplay.getScopeGroupId(), govAgencyOrganizationId);
            // Get account folder
            String dossierDestinationFolder = PortletUtil
                    .getEmployeeDestinationFolder(themeDisplay.getScopeGroupId(), userId);
            DLFolder accountForlder = DLFolderUtil.getTargetFolder(themeDisplay.getUserId(),
                    themeDisplay.getScopeGroupId(), themeDisplay.getScopeGroupId(), false, 0,
                    dossierDestinationFolder, StringPool.BLANK, false, serviceContext);
            ;

            // Get dossier folder
            DLFolder paymentFolder = DLFolderUtil.addFolder(themeDisplay.getUserId(),
                    themeDisplay.getScopeGroupId(), themeDisplay.getScopeGroupId(), false,
                    accountForlder.getFolderId(), String.valueOf(paymentConfig.getPaymentConfigId()),
                    StringPool.BLANK, false, serviceContext);

            //TODO
            String formData = StringPool.BLANK;
            JSONObject payloadJSON = JSONFactoryUtil.createJSONObject();
            JSONObject resultJSON = JSONFactoryUtil.createJSONObject();
            payloadJSON.put("paymentFileId", paymentFile.getPaymentFileId());
            payloadJSON.put("dossierId", paymentFile.getDossierId());
            payloadJSON.put("fileGroupId", paymentFile.getFileGroupId());
            payloadJSON.put("ownerUserId", paymentFile.getOwnerUserId());
            payloadJSON.put("ownerOrganizationId", paymentFile.getOwnerOrganizationId());
            //TODO

            Citizen citizen = null;
            if (paymentFile.getOwnerOrganizationId() != 0)
                workingUnit = WorkingUnitLocalServiceUtil.fetchByMappingOrganisationId(
                        themeDisplay.getScopeGroupId(), paymentFile.getOwnerOrganizationId());
            else if (paymentFile.getOwnerUserId() != 0)
                citizen = CitizenLocalServiceUtil.getByMappingUserId(paymentFile.getOwnerUserId());
            if (workingUnit != null) {
                payloadJSON.put("ownerOrganizationName", workingUnit.getName());
                payloadJSON.put("ownerOrganizationAddress", workingUnit.getAddress());
            } else if (citizen != null) {
                payloadJSON.put("ownerOrganizationName", citizen.getFullName());
                payloadJSON.put("ownerOrganizationAddress", citizen.getAddress());
            } else {
                payloadJSON.put("ownerOrganizationName", "");
                payloadJSON.put("ownerOrganizationAddress", "");
            }

            payloadJSON.put("govAgencyOrganizationId", paymentFile.getGovAgencyOrganizationId());
            payloadJSON.put("paymentName", paymentFile.getPaymentName());
            payloadJSON.put("requestDatetime", DateTimeUtil
                    .convertDateToString(paymentFile.getRequestDatetime(), DateTimeUtil._VN_DATE_TIME_FORMAT));
            payloadJSON.put("amount", paymentFile.getAmount());
            //TODO
            payloadJSON.put("amountNumber", paymentFile.getAmount());
            payloadJSON.put("amountString", paymentFile.getAmount());

            payloadJSON.put("requestNote", paymentFile.getRequestNote());
            payloadJSON.put("keypayUrl", paymentFile.getKeypayUrl());
            payloadJSON.put("keypayTransactionId", paymentFile.getKeypayTransactionId());
            payloadJSON.put("keypayGoodCode", paymentFile.getKeypayGoodCode());
            payloadJSON.put("keypayMerchantCode", paymentFile.getKeypayMerchantCode());
            payloadJSON.put("bankInfo", paymentFile.getBankInfo());
            payloadJSON.put("placeInfo", paymentFile.getPlaceInfo());
            payloadJSON.put("paymentStatus",
                    PortletUtil.getPaymentStatusLabel(paymentFile.getPaymentStatus(), Locale.getDefault()));
            payloadJSON.put("paymentMethod",
                    PortletUtil.getPaymentMethodLabel(paymentFile.getPaymentMethod(), Locale.getDefault()));
            //TODO

            payloadJSON.put("confirmDatetime", DateTimeUtil
                    .convertDateToString(paymentFile.getConfirmDatetime(), DateTimeUtil._VN_DATE_TIME_FORMAT));
            payloadJSON.put("confirmFileEntryId", paymentFile.getConfirmFileEntryId());
            payloadJSON.put("approveDatetime", DateTimeUtil
                    .convertDateToString(paymentFile.getApproveDatetime(), DateTimeUtil._VN_DATE_TIME_FORMAT));
            payloadJSON.put("accountUserName", paymentFile.getAccountUserName());
            payloadJSON.put("approveNote", paymentFile.getApproveNote());
            payloadJSON.put("govAgencyTaxNo", paymentFile.getGovAgencyTaxNo());
            payloadJSON.put("invoiceTemplateNo", paymentFile.getInvoiceTemplateNo());
            payloadJSON.put("invoiceIssueNo", paymentFile.getInvoiceIssueNo());
            payloadJSON.put("invoiceNo", paymentFile.getInvoiceNo());

            payloadJSON.put("cf_paymentConfigId", paymentConfig.getPaymentConfigId());
            payloadJSON.put("cf_govAgencyOrganizationId", paymentConfig.getGovAgencyOrganizationId());
            payloadJSON.put("cf_govAgencyName", paymentConfig.getGovAgencyName());
            payloadJSON.put("cf_govAgencyTaxNo", paymentConfig.getGovAgencyTaxNo());
            payloadJSON.put("cf_invoiceTemplateNo", paymentConfig.getInvoiceTemplateNo());
            payloadJSON.put("cf_invoiceIssueNo", paymentConfig.getInvoiceIssueNo());
            payloadJSON.put("cf_invoiceLastNo", paymentConfig.getInvoiceLastNo());
            payloadJSON.put("cf_bankInfo", paymentConfig.getBankInfo());
            payloadJSON.put("cf_placeInfo", paymentConfig.getPlaceInfo());
            payloadJSON.put("cf_keypayDomain", paymentConfig.getKeypayDomain());
            payloadJSON.put("cf_keypayVersion", paymentConfig.getKeypayVersion());
            payloadJSON.put("cf_keypayMerchantCode", paymentConfig.getKeypayMerchantCode());
            payloadJSON.put("cf_keypaySecureKey", paymentConfig.getKeypaySecureKey());
            resultJSON.put("opencps", payloadJSON);
            System.out.println("PaymentMgtBackOfficePortlet.createReport()" + resultJSON.toString());

            String jrxmlTemplate = paymentConfig.getReportTemplate();

            // Validate json string
            formData = resultJSON.toString();
            //            JSONFactoryUtil
            //                .createJSONObject(formData);

            String outputDestination = PortletPropsValues.OPENCPS_FILE_SYSTEM_TEMP_DIR;
            String fileName = System.currentTimeMillis() + StringPool.DASH + paymentConfig.getPaymentConfigId()
                    + StringPool.DASH + paymentFile.getPaymentFileId() + ".pdf";

            fileExportDir = exportToPDFFile(jrxmlTemplate, formData, null, outputDestination, fileName);

            if (Validator.isNotNull(fileExportDir)) {

                file = new File(fileExportDir);
                inputStream = new FileInputStream(file);
                if (inputStream != null) {
                    String sourceFileName = fileExportDir
                            .substring(fileExportDir.lastIndexOf(StringPool.SLASH) + 1, fileExportDir.length());
                    System.out.println(sourceFileName);

                    System.out.println(file.getName());

                    String mimeType = MimeTypesUtil.getContentType(file);

                    FileEntry fileEntry = DLAppServiceUtil.addFileEntry(serviceContext.getScopeGroupId(),
                            paymentFolder.getFolderId(), sourceFileName, mimeType, fileName, StringPool.BLANK,
                            StringPool.BLANK, inputStream, file.length(), serviceContext);
                    fileExportDir = getURL(fileEntry);
                    String tenFileExport = "defaultPDF.pdfs";
                    if (fileExportDir.contains(".pdfs")) {
                        urlFileDowLoad = fileExportDir.replace(".pdfs", ".pdf")
                                + "#view=FitH&scrollbar=0&page=1&toolbar=0&statusbar=0&messages=0&navpanes=0";
                    } else if (fileExportDir.contains(".doc")) {
                        urlFileDowLoad = "https://docs.google.com/viewer?url="
                                + PortalUtil.getPortalURL(actionRequest) + fileExportDir + "&embedded=true";
                    } else {
                        urlFileDowLoad = fileExportDir
                                + "#view=FitH&scrollbar=0&page=1&toolbar=0&statusbar=0&messages=0&navpanes=0";
                    }
                }
            }
        }
    } catch (Exception e) {
        _log.error(e);
    } finally {
        responseJSON.put("fileExportDir", urlFileDowLoad);
        PortletUtil.writeJSON(actionRequest, actionResponse, responseJSON);
        inputStream.close();
        file.delete();

    }
}

From source file:org.opencps.paymentmgt.portlet.PaymentMgtPaymentConfigPortlet.java

License:Open Source License

public void previewReport(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException {
    ThemeDisplay themeDisplay = (ThemeDisplay) actionRequest.getAttribute(WebKeys.THEME_DISPLAY);

    File file = null;//  w w  w  .j  ava 2s .  c o  m

    InputStream inputStream = null;

    JSONObject responseJSON = JSONFactoryUtil.createJSONObject();

    String fileExportDir = StringPool.BLANK;
    String urlFileDowLoad = StringPool.BLANK;
    PortletSession portletSession = actionRequest.getPortletSession();
    String reportTemplate = (String) portletSession.getAttribute(PaymentConfigDisplayTerms.REPORT_TEMPLATE);
    portletSession.removeAttribute(PaymentConfigDisplayTerms.REPORT_TEMPLATE);
    try {
        ServiceContext serviceContext = ServiceContextFactory.getInstance(actionRequest);
        serviceContext.setAddGroupPermissions(true);
        serviceContext.setAddGuestPermissions(true);
        // Get PaymentFile
        long govAgencyOrganizationId = -1;
        long userId = themeDisplay.getUserId();
        long paymentConfigId = ParamUtil.getLong(actionRequest, PaymentConfigDisplayTerms.PAYMENT_CONFIG_ID);
        // Get account folder
        String dossierDestinationFolder = PortletUtil
                .getEmployeeDestinationFolder(themeDisplay.getScopeGroupId(), userId);
        DLFolder accountForlder = DLFolderUtil.getTargetFolder(themeDisplay.getUserId(),
                themeDisplay.getScopeGroupId(), themeDisplay.getScopeGroupId(), false, 0,
                dossierDestinationFolder, StringPool.BLANK, false, serviceContext);
        ;

        // Get user folder
        DLFolder paymentFolder = DLFolderUtil.addFolder(themeDisplay.getUserId(),
                themeDisplay.getScopeGroupId(), themeDisplay.getScopeGroupId(), false,
                accountForlder.getFolderId(), String.valueOf(userId), StringPool.BLANK, false, serviceContext);

        //TODO
        String formData = StringPool.BLANK;
        JSONObject payloadJSON = JSONFactoryUtil.createJSONObject();
        JSONObject resultJSON = JSONFactoryUtil.createJSONObject();
        payloadJSON.put("paymentFileId", "");
        payloadJSON.put("dossierId", "");
        payloadJSON.put("fileGroupId", "");
        payloadJSON.put("ownerUserId", "");
        payloadJSON.put("ownerOrganizationId", "");
        //TODO

        Citizen citizen = null;
        payloadJSON.put("ownerOrganizationName", "");
        payloadJSON.put("ownerOrganizationAddress", "");

        payloadJSON.put("govAgencyOrganizationId", "");
        payloadJSON.put("paymentName", "");
        payloadJSON.put("requestDatetime", "");
        payloadJSON.put("amount", "");
        //TODO
        payloadJSON.put("amountNumber", "");
        payloadJSON.put("amountString", "");

        payloadJSON.put("requestNote", "");
        payloadJSON.put("keypayUrl", "");
        payloadJSON.put("keypayTransactionId", "");
        payloadJSON.put("keypayGoodCode", "");
        payloadJSON.put("keypayMerchantCode", "");
        payloadJSON.put("bankInfo", "");
        payloadJSON.put("placeInfo", "");
        payloadJSON.put("paymentStatus", "");
        payloadJSON.put("paymentMethod", "");
        //TODO

        payloadJSON.put("confirmDatetime", "");
        payloadJSON.put("confirmFileEntryId", "");
        payloadJSON.put("approveDatetime", "");
        payloadJSON.put("accountUserName", "");
        payloadJSON.put("approveNote", "");
        payloadJSON.put("govAgencyTaxNo", "");
        payloadJSON.put("invoiceTemplateNo", "");
        payloadJSON.put("invoiceIssueNo", "");
        payloadJSON.put("invoiceNo", "");

        payloadJSON.put("cf_paymentConfigId", "");
        payloadJSON.put("cf_govAgencyOrganizationId", "");
        payloadJSON.put("cf_govAgencyName", "");
        payloadJSON.put("cf_govAgencyTaxNo", "");
        payloadJSON.put("cf_invoiceTemplateNo", "");
        payloadJSON.put("cf_invoiceIssueNo", "");
        payloadJSON.put("cf_invoiceLastNo", "");
        payloadJSON.put("cf_bankInfo", "");
        payloadJSON.put("cf_placeInfo", "");
        payloadJSON.put("cf_keypayDomain", "");
        payloadJSON.put("cf_keypayVersion", "");
        payloadJSON.put("cf_keypayMerchantCode", "");
        payloadJSON.put("cf_keypaySecureKey", "");
        resultJSON.put("opencps", payloadJSON);
        System.out.println("PaymentMgtBackOfficePortlet.createReport()" + resultJSON.toString());

        String jrxmlTemplate = reportTemplate;

        // Validate json string
        formData = resultJSON.toString();
        //               JSONFactoryUtil
        //                   .createJSONObject(formData);

        String outputDestination = PortletPropsValues.OPENCPS_FILE_SYSTEM_TEMP_DIR;
        String fileName = System.currentTimeMillis() + StringPool.DASH + "preview.pdf";

        fileExportDir = exportToPDFFile(jrxmlTemplate, formData, null, outputDestination, fileName);

        if (Validator.isNotNull(fileExportDir)) {

            file = new File(fileExportDir);
            inputStream = new FileInputStream(file);
            if (inputStream != null) {
                String sourceFileName = fileExportDir.substring(fileExportDir.lastIndexOf(StringPool.SLASH) + 1,
                        fileExportDir.length());
                System.out.println(sourceFileName);

                System.out.println(file.getName());

                String mimeType = MimeTypesUtil.getContentType(file);

                FileEntry fileEntry = DLAppServiceUtil.addFileEntry(serviceContext.getScopeGroupId(),
                        paymentFolder.getFolderId(), sourceFileName, mimeType, fileName, StringPool.BLANK,
                        StringPool.BLANK, inputStream, file.length(), serviceContext);
                fileExportDir = getURL(fileEntry);
                String tenFileExport = "defaultPDF.pdfs";
                if (fileExportDir.contains(".pdfs")) {
                    urlFileDowLoad = fileExportDir.replace(".pdfs", ".pdf")
                            + "#view=FitH&scrollbar=0&page=1&toolbar=0&statusbar=0&messages=0&navpanes=0";
                } else if (fileExportDir.contains(".doc")) {
                    urlFileDowLoad = "https://docs.google.com/viewer?url="
                            + PortalUtil.getPortalURL(actionRequest) + fileExportDir + "&embedded=true";
                } else {
                    urlFileDowLoad = fileExportDir
                            + "#view=FitH&scrollbar=0&page=1&toolbar=0&statusbar=0&messages=0&navpanes=0";
                }
            }
        }
    } catch (Exception e) {
        _log.error(e);
    } finally {
        responseJSON.put("fileExportDir", urlFileDowLoad);
        PortletUtil.writeJSON(actionRequest, actionResponse, responseJSON);
        inputStream.close();
        file.delete();

    }
}

From source file:org.opencps.processmgt.portlet.ProcessOrderPortlet.java

License:Open Source License

/**
 * @param actionRequest//from   www.  j a  v  a2  s .c  o  m
 * @param actionResponse
 * @throws IOException
 */
public void createReport(ActionRequest actionRequest, ActionResponse actionResponse) throws IOException {

    /*
     * ThemeDisplay themeDisplay = (ThemeDisplay)
     * actionRequest.getAttribute(WebKeys.THEME_DISPLAY);
     */

    /*AccountBean accountBean =
       AccountUtil.getAccountBeanFromAttribute(actionRequest);*/

    AccountBean accountBean = AccountUtil.getAccountBean(actionRequest);

    long dossierFileId = ParamUtil.getLong(actionRequest, DossierFileDisplayTerms.DOSSIER_FILE_ID);

    String sourceFileName = StringPool.BLANK;

    InputStream inputStream = null;

    File file = null;

    JSONObject responseJSON = JSONFactoryUtil.createJSONObject();

    String fileExportDir = StringPool.BLANK;

    try {
        validateCreateDynamicForm(dossierFileId, accountBean);

        ServiceContext serviceContext = ServiceContextFactory.getInstance(actionRequest);
        serviceContext.setAddGroupPermissions(true);
        serviceContext.setAddGuestPermissions(true);

        // Get dossier file
        DossierFile dossierFile = DossierFileLocalServiceUtil.getDossierFile(dossierFileId);

        // Get dossier part
        DossierPart dossierPart = DossierPartLocalServiceUtil.getDossierPart(dossierFile.getDossierPartId());

        Dossier dossier = DossierLocalServiceUtil.getDossier(dossierFile.getDossierId());

        // Get account folder
        // DLFolder accountForlder = accountBean.getAccountFolder();

        // Get dossier folder
        /*
         * DLFolder dosserFolder = DLFolderUtil.addFolder(
         * themeDisplay.getUserId(), themeDisplay.getScopeGroupId(),
         * themeDisplay.getScopeGroupId(), false,
         * accountForlder.getFolderId(),
         * String.valueOf(dossier.getCounter()), StringPool.BLANK, false,
         * serviceContext);
         */

        String formData = dossierFile.getFormData();
        String jrxmlTemplate = dossierPart.getFormReport();

        // Validate json string

        JSONFactoryUtil.createJSONObject(formData);

        String outputDestination = PortletPropsValues.OPENCPS_FILE_SYSTEM_TEMP_DIR;
        String fileName = System.currentTimeMillis() + StringPool.DASH + dossierFileId + StringPool.DASH
                + dossierPart.getDossierpartId() + ".pdf";

        fileExportDir = exportToPDFFile(jrxmlTemplate, formData, null, outputDestination, fileName);

        if (Validator.isNotNull(fileExportDir)) {

            file = new File(fileExportDir);
            inputStream = new FileInputStream(file);
            if (inputStream != null) {
                sourceFileName = fileExportDir.substring(fileExportDir.lastIndexOf(StringPool.SLASH) + 1,
                        fileExportDir.length());
                String mimeType = MimeTypesUtil.getContentType(file);

                // Add new version
                if (dossierFile.getFileEntryId() > 0) {
                    DossierFileLocalServiceUtil.addDossierFile(dossierFile.getDossierFileId(),
                            dossier.getFolderId(), sourceFileName, mimeType, dossierFile.getDisplayName(),
                            StringPool.BLANK, StringPool.BLANK, inputStream, file.length(), serviceContext);
                } else {
                    // Update version 1
                    DossierFileLocalServiceUtil.updateDossierFile(dossierFileId, dossier.getFolderId(),
                            sourceFileName, mimeType, dossierFile.getDisplayName(), StringPool.BLANK,
                            StringPool.BLANK, inputStream, file.length(), serviceContext);
                }
            }
        }
    } catch (Exception e) {
        if (e instanceof NoSuchDossierFileException) {
            SessionErrors.add(actionRequest, NoSuchDossierFileException.class);
        } else if (e instanceof NoSuchAccountException) {
            SessionErrors.add(actionRequest, NoSuchAccountException.class);
        } else if (e instanceof NoSuchAccountTypeException) {
            SessionErrors.add(actionRequest, NoSuchAccountTypeException.class);
        } else if (e instanceof NoSuchAccountFolderException) {
            SessionErrors.add(actionRequest, NoSuchAccountFolderException.class);
        } else if (e instanceof NoSuchAccountOwnUserIdException) {
            SessionErrors.add(actionRequest, NoSuchAccountOwnUserIdException.class);
        } else if (e instanceof NoSuchAccountOwnOrgIdException) {
            SessionErrors.add(actionRequest, NoSuchAccountOwnOrgIdException.class);
        } else if (e instanceof PermissionDossierException) {
            SessionErrors.add(actionRequest, PermissionDossierException.class);
        } else if (e instanceof DuplicateFileException) {
            SessionErrors.add(actionRequest, DuplicateFileException.class);
        } else if (e instanceof RolePermissionsException) {
            SessionErrors.add(actionRequest, RolePermissionsException.class);
        } else {
            SessionErrors.add(actionRequest, PortalException.class);
        }

        _log.error(e);
    } finally {
        responseJSON.put("fileExportDir", fileExportDir);
        PortletUtil.writeJSON(actionRequest, actionResponse, responseJSON);
        if (inputStream != null) {
            inputStream.close();
        }

        if (file.exists()) {
            file.delete();
        }
    }
}

From source file:org.opencps.processmgt.portlet.ProcessOrderPortlet.java

License:Open Source License

/**
 * @param actionRequest//from   www .  ja va2s  .  c om
 * @param dossierFile
 * @return
 */
protected JSONObject computerHash(ActionRequest actionRequest, DossierFile dossierFile) {

    JSONObject data = JSONFactoryUtil.createJSONObject();

    JSONObject resources = JSONFactoryUtil.createJSONObject();

    AccountBean accountBean = AccountUtil.getAccountBean(actionRequest);

    String tempFolderPath = PortletUtil.getTempFolderPath(actionRequest);

    String imageFolderPath = PortletUtil.getResourceFolderPath(actionRequest);

    String certFolderPath = PortletUtil.getResourceFolderPath(actionRequest);

    String employeeEmail = ((Employee) accountBean.getAccountInstance()).getEmail();

    boolean isVisible = false;

    String inputFilePath = StringPool.BLANK;

    String outputFilePath = StringPool.BLANK;

    String hashFileTempPath = StringPool.BLANK;

    try {
        outputFilePath = tempFolderPath + "signed" + StringPool.DASH + dossierFile.getDisplayName()
                + StringPool.DASH + System.currentTimeMillis() + ".pdf";

        hashFileTempPath = tempFolderPath + "hash" + StringPool.DASH + dossierFile.getDisplayName()
                + StringPool.DASH + System.currentTimeMillis() + ".pdf";

        String certPath = certFolderPath + "/" + employeeEmail + ".cer";

        String imagePath = imageFolderPath + "/" + employeeEmail + ".png";

        inputFilePath = PDFUtil.saveAsPdf(tempFolderPath, dossierFile.getFileEntryId());

        PdfPkcs7Signer pdfSigner = SignatureUtil.getPdfPkcs7Signer(inputFilePath, certPath, hashFileTempPath,
                outputFilePath, isVisible, imagePath);

        System.out.println("inputFilePath: " + inputFilePath);
        System.out.println("hashFileTempPath: " + hashFileTempPath);
        System.out.println("outputFilePath: " + outputFilePath);
        System.out.println("imagePath: " + imagePath);

        pdfSigner.setHashAlgorithm(HashAlgorithm.SHA1);

        byte[] hash = pdfSigner.computeHash(0, 0, 144, 80);

        String hashHex = Helper.binToHex(hash);

        data.put("hashHex", hashHex);

        resources.put("inputFilePath", inputFilePath);
        resources.put("dossierFileId", dossierFile.getDossierFileId());
        resources.put("dossierId", dossierFile.getDossierId());
        resources.put("dossierPartId", dossierFile.getDossierPartId());
        resources.put("outputFilePath", outputFilePath);
        resources.put("hashFileTempPath", hashFileTempPath);
        resources.put("certPath", certPath);
        resources.put("imagePath", imagePath);

        resources.put("signatureFieldName", pdfSigner.getSignatureFieldName());

        data.put("resources", resources);

    } catch (Exception e) {
        _log.error(e);
    }

    return data;
}

From source file:org.opencps.servlet.ExportFileServlet.java

License:Open Source License

@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    // fix encoding preview html
    //response.setCharacterEncoding("utf-8");
    //response.setContentType("text/html");

    //PrintWriter writer = response.getWriter();

    long dossierFileId = ParamUtil.getLong(request, DossierFileDisplayTerms.DOSSIER_FILE_ID);

    String docType = ParamUtil.getString(request, "docType");

    // String sign = ParamUtil.getString(request, "sign");

    InputStream inputStream = null;
    OutputStream os = null;//from   ww w. ja  v  a 2 s  .  c om

    File file = null;

    // JSONObject responseJSON = JSONFactoryUtil.createJSONObject();

    String fileExportDir = StringPool.BLANK;

    try {

        ServiceContext serviceContext = ServiceContextFactory.getInstance(request);
        serviceContext.setAddGroupPermissions(true);
        serviceContext.setAddGuestPermissions(true);

        // Get dossier file
        DossierFile dossierFile = DossierFileLocalServiceUtil.getDossierFile(dossierFileId);

        // Get dossier part
        DossierPart dossierPart = DossierPartLocalServiceUtil.getDossierPart(dossierFile.getDossierPartId());

        String formData = dossierFile.getFormData();
        String jrxmlTemplate = dossierPart.getFormReport();

        // Validate json string

        JSONFactoryUtil.createJSONObject(formData);

        String outputDestination = PortletPropsValues.OPENCPS_FILE_SYSTEM_TEMP_DIR;
        String fileName = System.currentTimeMillis() + StringPool.DASH
                + FriendlyURLNormalizerUtil.normalize(dossierPart.getPartName()) + docType;

        DocType type = DocType.getEnum(docType);

        fileExportDir = JRReportUtil.exportReportFile(jrxmlTemplate, formData, null, outputDestination,
                fileName, type);

        if (Validator.isNotNull(fileExportDir)) {

            file = new File(fileExportDir);
            inputStream = new FileInputStream(file);

            /*byte[] byteArray = IOUtils.toByteArray(inputStream);
                    
            String  base64String = Base64.encode(byteArray);
                    
            System.out.println("base64String  " + base64String);*/

            String mimeType = MimeTypesUtil.getContentType(file);

            response.setContentType(mimeType);
            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
            //ServletContext ctx = getServletContext();
            //InputStream is = ctx.getResourceAsStream("/testing.txt");

            int read = 0;
            byte[] bytes = new byte[2048];
            os = response.getOutputStream();

            while ((read = inputStream.read(bytes)) != -1) {
                os.write(bytes, 0, read);
            }
        }

    } catch (Exception e) {
        e.printStackTrace();
    } finally {

        if (inputStream != null) {
            inputStream.close();
        }
        if (os != null) {
            os.close();
        }
    }
}

From source file:org.opencps.util.PDFUtil.java

License:Open Source License

public static String saveAsPdf(String dest, long fileEntryId) throws IOException {

    InputStream is = null;//from  w  ww . ja  v  a  2s  .  c  om
    OutputStream os = null;
    String imagePath = StringPool.BLANK;
    try {

        FileEntry fileEntry = DLFileEntryUtil.getFileEntry(fileEntryId);
        if (fileEntry == null) {
            return StringPool.BLANK;
        }

        if (!fileEntry.getExtension().equals("pdf")) {
            return StringPool.BLANK;
        }

        is = fileEntry.getContentStream();

        imagePath = dest + fileEntry.getTitle() + StringPool.DASH + System.currentTimeMillis() + "_tmp."
                + fileEntry.getExtension();

        os = new FileOutputStream(imagePath);

        byte[] b = new byte[1024];
        int length;

        while ((length = is.read(b)) != -1) {
            os.write(b, 0, length);
        }
    } catch (Exception e) {
        _log.error(e);
    } finally {
        if (is != null) {
            is.close();
        }
        if (os != null) {
            os.close();
        }
    }
    return imagePath;
}

From source file:se.gothiaforum.util.FriendlyURLNormalizer.java

License:Open Source License

public static String normalize(String friendlyURL, char[] replaceChars) {
    if (Validator.isNull(friendlyURL)) {
        return friendlyURL;
    }// w  w w.ja  v a 2s  . com

    friendlyURL = GetterUtil.getString(friendlyURL);
    friendlyURL = friendlyURL.toLowerCase();
    friendlyURL = normalizerWrapper.normalizeToAscii(friendlyURL);

    char[] chars = friendlyURL.toCharArray();

    for (int i = 0; i < chars.length; i++) {
        char oldChar = chars[i];

        char newChar = oldChar;

        if (ArrayUtil.contains(_REPLACE_CHARS, oldChar)
                || ((replaceChars != null) && ArrayUtil.contains(replaceChars, oldChar))) {

            newChar = CharPool.DASH;
        }

        if (oldChar != newChar) {
            chars[i] = newChar;
        }
    }

    friendlyURL = new String(chars);

    while (friendlyURL.contains(StringPool.DASH + StringPool.DASH)) {
        friendlyURL = StringUtil.replace(friendlyURL, StringPool.DASH + StringPool.DASH, StringPool.DASH);
    }

    return friendlyURL;
}

From source file:se.vgregion.service.innovationsslussen.util.FriendlyURLNormalizer.java

License:Open Source License

/**
 * Normalize./*from w  w  w.  j a  va2s. c o m*/
 *
 * @param friendlyURL the friendly url
 * @param replaceChars the replace chars
 * @return the string
 */
public static String normalize(String friendlyURL, char[] replaceChars) {
    if (Validator.isNull(friendlyURL)) {
        return friendlyURL;
    }

    friendlyURL = GetterUtil.getString(friendlyURL);
    friendlyURL = friendlyURL.toLowerCase();
    friendlyURL = Normalizer.normalizeToAscii(friendlyURL);

    char[] charArray = friendlyURL.toCharArray();

    for (int i = 0; i < charArray.length; i++) {
        char oldChar = charArray[i];

        char newChar = oldChar;

        if (ArrayUtil.contains(REPLACE_CHARS, oldChar)
                || ((replaceChars != null) && ArrayUtil.contains(replaceChars, oldChar))) {

            newChar = CharPool.DASH;
        }

        if (oldChar != newChar) {
            charArray[i] = newChar;
        }
    }

    friendlyURL = new String(charArray);

    while (friendlyURL.contains(StringPool.DASH + StringPool.DASH)) {
        friendlyURL = StringUtil.replace(friendlyURL, StringPool.DASH + StringPool.DASH, StringPool.DASH);
    }

    if (friendlyURL.startsWith(StringPool.DASH)) {
        friendlyURL = friendlyURL.substring(1, friendlyURL.length());
    }

    if (friendlyURL.endsWith(StringPool.DASH)) {
        friendlyURL = friendlyURL.substring(0, friendlyURL.length() - 1);
    }

    return friendlyURL;
}

From source file:yg0r2.datamanipulator.handler.content.JournalArticleHandler.java

License:Open Source License

@Override
protected Map<String, Object> getAddEntrySpecifiedArgs(RequestContext requestContext) throws Exception {

    boolean autoArticleId = requestContext.getBoolean(getDisplayFieldName(AUTO_ARTICLE_ID));

    String articleId;// w  w  w .j a v a 2 s .  c  om
    if (autoArticleId) {
        articleId = StringPool.BLANK;
    } else {
        StringBuilder sb = new StringBuilder();
        sb.append(requestContext.getString("entryName"));
        sb.append(requestContext.getString("entryCount"));
        sb.append("-ARTICLE-ID-");
        sb.append(RandomUtil.nextString());

        articleId = sb.toString().toUpperCase();
        articleId = articleId.replace(StringPool.SPACE, StringPool.DASH);
    }

    long structureId = requestContext.getLong(getDisplayFieldName(STRUCTURE_LIST));

    long templateId = 0;

    String structureKey = StringPool.BLANK;
    String templateKey = StringPool.BLANK;

    if (structureId != 0) {
        DDMStructure strucrute = DDMStructureLocalServiceUtil.getStructure(structureId);

        structureKey = strucrute.getStructureKey();

        List<DDMTemplate> templates = DDMTemplateLocalServiceUtil.getTemplates(structureId);

        DDMTemplate template = templates.get(0);

        if (Validator.isNotNull(templates) && templates.size() > 0) {
            templateId = template.getTemplateId();
        }

        if (templateId != 0) {
            try {
                templateKey = (String) BeanUtil.getProperty(template, "templateKey");
            } catch (Exception e) {
                templateKey = String.valueOf(templateId);
            }
        }
    }

    int index = RandomUtil.nextInt(JournalArticleConstants.TYPES.length);
    String type = JournalArticleConstants.TYPES[index];

    Map<String, Object> args = new HashMap<String, Object>();

    args.put("articleId", articleId);
    args.put("articleURL", requestContext.getString("createURL"));
    args.put("autoArticleId", autoArticleId);
    args.put("classNameId", (long) 0);
    args.put("classPK", (long) 0);
    args.put("content", StringUtil.getLocalizedContent(""));
    args.put("layoutUuid", null);
    //args.put("neverExpire", RandomUtil.nextBoolean());
    args.put("neverExpire", true);
    //args.put("neverReview", RandomUtil.nextBoolean());
    args.put("neverReview", true);
    args.put("structureId", structureKey);
    args.put("structureKey", structureKey);
    args.put("ddmStructureKey", structureKey);
    args.put("templateId", structureKey);
    args.put("templateKey", templateKey);
    args.put("ddmTemplateKey", templateKey);
    args.put("type", type);
    args.put("version", JournalArticleConstants.VERSION_DEFAULT);

    return args;
}