Search in sources :

Example 1 with FiscalMessage

use of ar.com.ergio.print.fiscal.msg.FiscalMessage in project lar_361 by comitsrl.

the class HasarFiscalPrinter method checkStatus.

private boolean checkStatus(FiscalPacket response) throws FiscalPrinterIOException {
    int newPrinterStatus;
    int newFiscalStatus;
    try {
        // Se obtiene los estados a partir de la respuesta.
        newPrinterStatus = response.getPrinterStatus();
        newFiscalStatus = response.getFiscalStatus();
    } catch (Exception e) {
        // respuesta.
        throw new FiscalPrinterIOException(MsgRepository.get("ResponseFormatError"), getLastRequest(), response);
    }
    // Se comprueba si el status fue modificado.
    boolean stsChanged = getPrinterStatus() != newPrinterStatus || getFiscalStatus() != newFiscalStatus;
    // Se asignan los estados de impresora y controlador fiscal.
    setPrinterStatus(newPrinterStatus);
    setFiscalStatus(newFiscalStatus);
    FiscalMessages msgs = new FiscalMessages();
    // Se chequea el estado del controlador fiscal.
    for (int i = 0; i < getFiscalStatusCodes().length; i++) {
        int statusCode = getFiscalStatusCodes()[i];
        if ((getFiscalStatus() & statusCode) != 0) {
            FiscalMessage msg = getFiscalStatusMsgs().get(statusCode);
            msgs.add(msg);
        }
    }
    // Se chequea el estado de la impresora.
    for (int i = 0; i < getPrinterStatusCodes().length; i++) {
        int statusCode = getPrinterStatusCodes()[i];
        if ((getPrinterStatus() & statusCode) != 0) {
            FiscalMessage msg = getPrinterStatusMsgs().get(statusCode);
            msgs.add(msg);
        }
        // setea el mismo.
        if (statusCode == PST_JOURNAL_PAPER_OUT || statusCode == PST_TICKET_PAPER_OUT)
            setWithoutPaper((getPrinterStatus() & statusCode) != 0);
    }
    // Se setean los mensajes de la impresora.
    setMessages(msgs);
    return stsChanged;
}
Also used : FiscalPrinterIOException(ar.com.ergio.print.fiscal.exception.FiscalPrinterIOException) FiscalMessages(ar.com.ergio.print.fiscal.msg.FiscalMessages) FiscalMessage(ar.com.ergio.print.fiscal.msg.FiscalMessage) IOException(java.io.IOException) FiscalPrinterIOException(ar.com.ergio.print.fiscal.exception.FiscalPrinterIOException) DocumentException(ar.com.ergio.print.fiscal.exception.DocumentException)

Aggregations

DocumentException (ar.com.ergio.print.fiscal.exception.DocumentException)1 FiscalPrinterIOException (ar.com.ergio.print.fiscal.exception.FiscalPrinterIOException)1 FiscalMessage (ar.com.ergio.print.fiscal.msg.FiscalMessage)1 FiscalMessages (ar.com.ergio.print.fiscal.msg.FiscalMessages)1 IOException (java.io.IOException)1