Пример #1
0
        // Método para imprimir la lista de los números premiados y ganadores
        public void printPrizeTicket(LTD_LotteryDraw pDraw, string[] pWinningNumberArray, bool pSendToPrint, bool pShowInPanel)
        {
            // Configurar impresión para Ticket de Venta
            TicketPrinter ticketPrinter = new TicketPrinter();
            PrizeTicket   prizeTicket   = new PrizeTicket();

            prizeTicket.companyName = UtilityService.getCompanyName();
            prizeTicket.title       = "NÚMEROS PREMIADOS";
            // Obtener datos del punto de venta
            LPS_LotteryPointSale pointSale = UtilityService.getPointSale();

            prizeTicket.pointSaleName = pointSale.LPS_DisplayName;
            prizeTicket.drawDate      = pDraw.LTD_CreateDate;
            // Obtener datos de tipo de sorteo
            LotteryDrawTypeRepository drawTypeRepo = new LotteryDrawTypeRepository();
            LDT_LotteryDrawType       drawType     = drawTypeRepo.getById(pDraw.LDT_LotteryDrawType);

            prizeTicket.drawTypeCode = drawType.LDT_Code;
            // Llenar datos del número de lista
            prizeTicket.createDate = DateTime.Now;
            // Obtener datos de los premios
            PrizeFactorService     prizeFactorService = new PrizeFactorService();
            LPF_LotteryPrizeFactor prizeFactor        = prizeFactorService.getByGroup(drawType.LDT_Id);

            if (prizeFactor != null)
            {
                prizeTicket.prizeFactorArray[0] = prizeFactor.LPF_FirtsPrizeFactor;
                prizeTicket.prizeFactorArray[1] = prizeFactor.LPF_SecondPrizeFactor;
                prizeTicket.prizeFactorArray[2] = prizeFactor.LPF_ThirdPrizeFactor;
            }
            // Obtener listado de información de ganadores
            LotteryListRepository listRepository = new LotteryListRepository();

            prizeTicket.listWinningInfo = listRepository.getWinningNumbersList(pDraw, pWinningNumberArray);
            prizeTicket.winnerNumbers   = pWinningNumberArray;
            ticketPrinter.prizeTicket   = prizeTicket;
            // Obtener nombre de impresora y enviar impresión
            string printerName = UtilityService.getTicketPrinterName();

            ticketPrinter.printPrizeTicket(printerName, pSendToPrint);
            // Almacenar importe de premio para el sorteo
            DrawBalanceService drawBalanceService = new DrawBalanceService();

            drawBalanceService.saveBalance(pDraw.LDT_LotteryDrawType, pDraw.LTD_CreateDate, 0, ticketPrinter.prizeImport);
            if (pShowInPanel)
            {
                //Console.Write(ticketPrinter.ticketStringText);
                MessageBox.Show(ticketPrinter.ticketStringText);
            }
        }
Пример #2
0
        // Método para imprimir un ticket de venta de una lista
        public void printList(LTL_LotteryList pNumberList, int pTicketType = 0)
        {
            // Configurar impresión para Ticket de Venta
            SaleTicket saleTicket = new SaleTicket(pTicketType);

            saleTicket.companyName = UtilityService.getCompanyName();
            // Obtener datos del punto de venta
            LPS_LotteryPointSale pointSale = UtilityService.getPointSale();

            saleTicket.pointSaleName = pointSale.LPS_DisplayName;
            // Obtener usuario vendedor
            saleTicket.userName = SystemSession.username;
            // Obtener datos del sorteo
            LotteryDrawRepository drawRepo   = new LotteryDrawRepository();
            LTD_LotteryDraw       drawObject = drawRepo.getById(pNumberList.LTD_LotteryDraw);

            saleTicket.drawDate = drawObject.LTD_CreateDate;
            // Obtener datos de tipo de sorteo
            this.drawTypeRepo = new LotteryDrawTypeRepository();
            LDT_LotteryDrawType drawType = drawTypeRepo.getById(drawObject.LDT_LotteryDrawType);

            saleTicket.drawTypeCode = drawType.LDT_Code;
            // Obtener datos de los premios
            PrizeFactorService     prizeFactorService = new PrizeFactorService();
            LPF_LotteryPrizeFactor prizeFactor        = prizeFactorService.getByGroup(drawType.LDT_Id);

            if (prizeFactor != null)
            {
                saleTicket.prizeFactorArray[0] = prizeFactor.LPF_FirtsPrizeFactor;
                saleTicket.prizeFactorArray[1] = prizeFactor.LPF_SecondPrizeFactor;
                saleTicket.prizeFactorArray[2] = prizeFactor.LPF_ThirdPrizeFactor;
            }
            // Llenar datos del número de lista
            saleTicket.createDate   = DateTime.Now;
            saleTicket.ticketId     = pNumberList.LTL_Id;
            saleTicket.globalId     = pointSale.LPS_Id + "" + saleTicket.ticketId;
            saleTicket.customerName = pNumberList.LTL_CustomerName;
            // Obtener detalle de la lista procesada
            this.listRepo = new LotteryListRepository();
            saleTicket.listNumberDetail = listRepo.getTupleListDetail(pNumberList.LTL_Id);
            // Crear instancia de impresora y asignar el ticket
            TicketPrinter ticketPrinter = new TicketPrinter();

            ticketPrinter.saleTicket = saleTicket;
            // Obtener nombre de impresora y enviar impresión
            string printerName = UtilityService.getTicketPrinterName();

            ticketPrinter.printLotterySaleTicket(printerName);
        }
Пример #3
0
    public PawnStatus()
    {
        money     = new BigIntWrapper();
        timeStamp = -1;
        printers  = new List <TicketPrinter>();

        TicketPrinter printer = null;

        for (int i = 0; i < TicketPrinter.PriceScaler.Length; i++)
        {
            printer = TicketPrinter.CreateReceiptPrinter();
            printer.PrinterIndex = i;
            printers.Add(printer);
        }
    }
Пример #4
0
    public static TicketPrinter CreateTemporaryLaser()
    {
        TicketPrinter printer = new TicketPrinter
        {
            Printer       = PrinterType.Laser,
            PurchasePrice = 1000000,

            BatchTime = 90,
            BatchSize = 100,
            Capacity  = 400,
            Luck      = 10,
        };

        return(printer);
    }
Пример #5
0
    public static TicketPrinter CreateTemporaryInkjet()
    {
        TicketPrinter printer = new TicketPrinter
        {
            Printer       = PrinterType.Inkjet,
            PurchasePrice = 500,

            BatchTime = 60,
            BatchSize = 25,
            Capacity  = 250,
            Luck      = 3,
        };

        return(printer);
    }
Пример #6
0
    public void InitializePopUp(TicketPrinter printer)
    {
        pawnStatus   = PawnManager.ReadPawnStatus();
        this.printer = printer;
        popUp.SetActive(true);
        InitializeUpgradeBars();

        printerImage.sprite       = printer.GetPrinterSprite();
        popUpProgressBar.maxValue = printer.BatchTime;

        // set up upgrade buttons
        UpdateUpgradeButtons();

        InitializeTicketDropDown();
    }
    /**
     * Validates that a printer is printing a valid type of tickets.
     */
    private void ValidatePrinter(TicketPrinter printer)
    {
        switch (printer.Ticket)
        {
        case TicketPrinter.TicketType.DebugTicket:
            if (!arcadeStatus.DebugStatus.IsActive)
            {
                ResetPrinterState(printer);
            }
            break;

        case TicketPrinter.TicketType.QMGTicket:
            if (!arcadeStatus.QMGStatus.IsActive)
            {
                ResetPrinterState(printer);
            }
            break;

        case TicketPrinter.TicketType.KNGTicket:
            if (!arcadeStatus.KNGStatus.IsActive)
            {
                ResetPrinterState(printer);
            }
            break;

        case TicketPrinter.TicketType.BRDTicket:
            if (!arcadeStatus.BRDStatus.IsActive)
            {
                ResetPrinterState(printer);
            }
            break;

        case TicketPrinter.TicketType.SNKTicket:
            if (!arcadeStatus.SNKStatus.IsActive)
            {
                ResetPrinterState(printer);
            }
            break;

        case TicketPrinter.TicketType.PrizeTicket:
            // check if we have the ability to print prize tickets???
            break;

        default:
            break;
        }
    }
Пример #8
0
    public static Sprite GetPrinterSprite(TicketPrinter printer)
    {
        Sprite sprite = null;

        switch (printer.Printer)
        {
        case TicketPrinter.PrinterType.Receipt:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Receipt");
            break;

        case TicketPrinter.PrinterType.Inkjet:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Inkjet");
            break;

        case TicketPrinter.PrinterType.Laser:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Laser");
            break;

        case TicketPrinter.PrinterType.Office:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Office");
            break;

        case TicketPrinter.PrinterType.Industrial:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Industrial");
            break;

        case TicketPrinter.PrinterType.Compact3D:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Compact3D");
            break;

        case TicketPrinter.PrinterType.Industrial3D:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Industrial3D");
            break;

        case TicketPrinter.PrinterType.Space:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Space");
            break;

        default:
            sprite = GameOperations.LoadSpriteFromPath("Sprites/Printers/Receipt");
            break;
        }
        return(sprite);
    }
Пример #9
0
    public void InitializePopUp(TicketPrinter printer)
    {
        pawnStatus               = PawnManager.ReadPawnStatus();
        this.printer             = printer;
        nextPrinter              = printer.GetNextPrinter();
        nextPrinter.PrinterIndex = this.printer.PrinterIndex;

        popUp.SetActive(true);
        printerImage.sprite = nextPrinter.GetPrinterSprite();
        priceText.text      = "This Will Cost:\n$" + GameOperations.BigIntToString(nextPrinter.PurchasePrice);

        if (pawnStatus.Money < nextPrinter.PurchasePrice)
        {
            yesButton.interactable = false;
        }
        else
        {
            yesButton.interactable = true;
        }

        InitializeUpgradeBars();
    }
Пример #10
0
    public static TicketPrinter CreateReceiptPrinter()
    {
        TicketPrinter printer = new TicketPrinter
        {
            Printer       = PrinterType.Receipt,
            PurchasePrice = 100,

            BatchTime = 30,
            BatchSize = 1,

            Capacity            = 50,
            CapacityIncrement   = 10,
            CapacityMaxLevel    = 5,
            CapacityUpgradeCost = 10,

            Luck            = 0,
            LuckIncrement   = 1,
            LuckMaxLevel    = 5,
            LuckUpgradeCost = 1
        };

        return(printer);
    }
 /**
  * Resets a printer to have no ticket type, base timer, and no tickets printed.
  */
 private void ResetPrinterState(TicketPrinter printer)
 {
     printer.Ticket         = TicketPrinter.TicketType.None;
     printer.TicketsPrinted = 0;
     printer.PrintTimer     = 0;
 }
Пример #12
0
 public void ExecutePrintJob(PrintJob printJob)
 {
     TicketPrinter.ExecutePrintJob(printJob);
 }
Пример #13
0
 public void PrintSlipReport(FlowDocument document)
 {
     TicketPrinter.PrintSlipReport(document);
 }
Пример #14
0
 public void AutoPrintTicket(Ticket ticket)
 {
     TicketPrinter.AutoPrintTicket(ticket);
 }