Search in sources :

Example 1 with CPOS

use of org.adempiere.pos.service.CPOS in project adempiere-gRPC-Server by adempiere.

the class PointOfSalesServiceImplementation method printTicket.

@Override
public void printTicket(PrintTicketRequest request, StreamObserver<PrintTicketResponse> responseObserver) {
    try {
        if (Util.isEmpty(request.getOrderUuid())) {
            throw new AdempiereException("@C_Order_ID@ @NotFound@");
        }
        log.fine("Print Ticket = " + request);
        ContextManager.getContext(request.getClientRequest().getSessionUuid(), request.getClientRequest().getLanguage(), request.getClientRequest().getOrganizationUuid(), request.getClientRequest().getWarehouseUuid());
        // 
        MPOS pos = getPOSFromUuid(request.getPosUuid(), true);
        int orderId = RecordUtil.getIdFromUuid(I_C_Order.Table_Name, request.getOrderUuid(), null);
        Env.clearWinContext(1);
        CPOS posController = new CPOS();
        posController.setOrder(orderId);
        posController.setM_POS(pos);
        posController.setWindowNo(1);
        POSTicketHandler handler = POSTicketHandler.getTicketHandler(posController);
        if (handler == null) {
            throw new AdempiereException("@TicketClassName@ " + pos.getTicketClassName() + " @NotFound@");
        }
        // Print it
        handler.printTicket();
        PrintTicketResponse.Builder ticket = PrintTicketResponse.newBuilder().setResult("Ok");
        responseObserver.onNext(ticket.build());
        responseObserver.onCompleted();
    } catch (Exception e) {
        log.severe(e.getLocalizedMessage());
        responseObserver.onError(Status.INTERNAL.withDescription(e.getLocalizedMessage()).augmentDescription(e.getLocalizedMessage()).withCause(e).asRuntimeException());
    }
}
Also used : MPOS(org.compiere.model.MPOS) AdempiereException(org.adempiere.exceptions.AdempiereException) POSTicketHandler(org.adempiere.pos.util.POSTicketHandler) CPOS(org.adempiere.pos.service.CPOS) AdempiereException(org.adempiere.exceptions.AdempiereException) PrintTicketResponse(org.spin.grpc.util.PrintTicketResponse)

Aggregations

AdempiereException (org.adempiere.exceptions.AdempiereException)1 CPOS (org.adempiere.pos.service.CPOS)1 POSTicketHandler (org.adempiere.pos.util.POSTicketHandler)1 MPOS (org.compiere.model.MPOS)1 PrintTicketResponse (org.spin.grpc.util.PrintTicketResponse)1