Пример #1
0
        public object generateNewListToSync(LTL_LotteryList pListObject, List <LND_ListNumberDetail> pListNumberDetail = null)
        {
            List <ListNumberDetail> numberDetail = null;

            if (pListNumberDetail != null)
            {
                // Trasnformar LND_ListNumberDetail en una lista de elementos para el json
                numberDetail = pListNumberDetail.Select(
                    x => new ListNumberDetail(x.LND_Id, x.LTL_LotteryList, x.LNR_LotteryNumber, x.LND_SaleImport)
                    ).ToList();
            }
            LotteryDrawRepository lotteryDrawRepository = new LotteryDrawRepository();
            LTD_LotteryDraw       draw = lotteryDrawRepository.getById(pListObject.LTD_LotteryDraw);
            // Crear el objeto JSON
            var jsonObject = new
            {
                listNumber       = pListObject.LTL_Id,
                lotteryPointSale = pListObject.LPS_LotteryPointSale,
                lotteryDraw      = new
                {
                    id = pListObject.LTD_LotteryDraw,
                    lotteryDrawType   = draw.LDT_LotteryDrawType,
                    lotteryDrawStatus = draw.LDS_LotteryDrawStatus,
                    createDate        = draw.LTD_CreateDate
                },
                customerName      = pListObject.LTL_CustomerName,
                createDate        = pListObject.LTL_CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
                lotteryListStatus = SystemConstants.LIST_STATUS_CREATED,
                listNumberDetail  = numberDetail
            }
            ;

            return(jsonObject);
        }
Пример #2
0
        public async Task <bool> processReverseToServerAsync(LTL_LotteryList pListObject)
        {
            bool successReversion = false;

            Console.WriteLine(" - Anulada ");
            ServiceResponseResult response = await this.reverseListNumberFromServerAsync(pListObject);

            if (ServiceValidator.isValidServiceResponse(response))
            {
                // Cambiar el estado de la lista local a Sincronizado
                this.setListCompleteSync(pListObject);
                successReversion = true;
            }
            else
            {
                // Error de sincronización
                string responseType = response == null ? "N/A" : response.type;
                LogService.logErrorServiceResponse("No se pudo sincronizar la reversión", responseType, "Pendiente");
            }
            if (response != null && response.message == "No se pudo actualizar. El elemento especificado no existe")
            {
                successReversion = true;
            }
            return(successReversion);
        }
Пример #3
0
        //----------------- Servicios de Sincronización de Pago y Reversión -----------------//
        #region Servicios de Sincronización de Pago y Reversión

        public void sendListNumberToServer(LTL_LotteryList pList, List <LND_ListNumberDetail> pNumberDetail)
        {
            // Llamar al servicio de sincronización con el servidor
            ServerConnectionService service        = new ServerConnectionService();
            ServiceResponseResult   responseResult = service.syncListToServer(pList, pNumberDetail, result => processResponseToSendList(result));
            //this.processResponseToSendList(responseResult);
        }
Пример #4
0
        public async Task <ServiceResponseResult> reverseListNumberFromServerAsync(LTL_LotteryList pList)
        {
            // Llamar al servicio de sincronización con el servidor
            ServerConnectionService serverConection = new ServerConnectionService();
            ServiceResponseResult   response        = await serverConection.reverseListToServerAsync(pList);

            return(response);
        }
Пример #5
0
        public async Task <ServiceResponseResult> syncListToServerAsync(LTL_LotteryList pListObject, List <LND_ListNumberDetail> pListNumberDetail)
        {
            var jsonObject = this.generateNewListToSync(pListObject, pListNumberDetail);
            //Console.WriteLine("Request Venta: " + jsonObject);
            string            urlEndPoint = ServiceConectionConstants.LIST_RESOURCE_URL;
            RestClientService restClient  = new RestClientService();

            return(await restClient.processHttpRequestAsync(urlEndPoint, jsonObject, SystemConstants.HTTP_POST_METHOD));
        }
Пример #6
0
        public async Task <ServiceResponseResult> sendListNumberToServerAsync(LTL_LotteryList pList, List <LND_ListNumberDetail> pNumberDetail)
        {
            // Llamar al servicio de sincronización con el servidor
            ServerConnectionService service        = new ServerConnectionService();
            ServiceResponseResult   responseResult = await service.syncListToServerAsync(pList, pNumberDetail);

            this.processResponseToSendList(responseResult);
            return(responseResult);
        }
Пример #7
0
        public void changeListSyncStatus(long pList, long pSyncStatus = SystemConstants.SYNC_STATUS_COMPLETED)
        {
            // Cambiar el estado de la lista local a Sincronizado
            LotteryListRepository listRepository = new LotteryListRepository();
            LTL_LotteryList       syncList       = listRepository.getById(pList);

            syncList.SYS_SynchronyStatus = pSyncStatus;
            listRepository.save(syncList, syncList.LTL_Id, (e1, e2) => e1.copy(e2));
            //Console.WriteLine("Estado cambiado a sincronizado: " + pList);
        }
Пример #8
0
        public ServiceResponseResult reverseListToServer(LTL_LotteryList pListObject)
        {
            var jsonObject = this.generateSimpleListObject(pListObject,
                                                           SystemConstants.LIST_STATUS_CANCELED, SystemConstants.SYNC_STATUS_COMPLETED);

            Console.WriteLine("Request Reversión: " + jsonObject);
            string            urlEndPoint = ServiceConectionConstants.ROOT_LIST_RESOURCE_URL + "/" + pListObject.LTL_Id + "/";
            RestClientService restClient  = new RestClientService();

            return(restClient.processHttpRequest(urlEndPoint, jsonObject, SystemConstants.HTTP_PUT_METHOD));
        }
Пример #9
0
        public ServiceResponseResult syncListToServer(LTL_LotteryList pListObject,
                                                      List <LND_ListNumberDetail> pListNumberDetail, Func <ServiceResponseResult, bool> processResponseFunction)
        {
            var jsonObject = this.generateNewListToSync(pListObject, pListNumberDetail);
            //Console.WriteLine("Request Venta: " + jsonObject);
            string            urlEndPoint = ServiceConectionConstants.LIST_RESOURCE_URL;
            RestClientService restClient  = new RestClientService();

            //return restClient.processHttpRequest(urlEndPoint, jsonObject, SystemConstants.HTTP_POS_METHOD);
            return(restClient.processAsyncHttpRequest(urlEndPoint, jsonObject, SystemConstants.HTTP_POST_METHOD, processResponseFunction));
        }
Пример #10
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);
        }
Пример #11
0
        public void reverseListNumberFromServer(LTL_LotteryList pList)
        {
            // Llamar al servicio de sincronización con el servidor
            ServerConnectionService serverConection = new ServerConnectionService();
            ServiceResponseResult   response        = serverConection.reverseListToServer(pList);

            if (ServiceValidator.isValidServiceResponse(response))
            {
                // Cambiar el estado de la lista local a Sincronizado
                this.setListCompleteSync(pList);
            }
            else
            {
                // Error de sincronización
                string responseType = response == null ? "N/A" : response.type;
                LogService.logErrorServiceResponse("No se pudo sincronizar la venta", responseType, "Pendiente");
            }
        }
Пример #12
0
        private async Task <bool> processListToServerAsync(LTL_LotteryList pListObject, List <LND_ListNumberDetail> pListNumber)
        {
            bool successReversion = false;

            Console.WriteLine(" - Creada ");
            ServiceResponseResult response = await this.sendListNumberToServerAsync(pListObject, pListNumber);

            if (ServiceValidator.isValidServiceResponse(response))
            {
                // Cambiar el estado de la lista local a Sincronizado
                this.setListCompleteSync(pListObject);
                successReversion = true;
            }
            else
            {
                // Error de sincronización
                string responseType = response == null ? "N/A" : response.type;
                LogService.logErrorServiceResponse("No se pudo sincronizar la venta", responseType, "Pendiente");
            }
            return(successReversion);
        }
Пример #13
0
        public object generateSimpleListObject(LTL_LotteryList pListObject,
                                               long pListStatus = SystemConstants.LIST_STATUS_CREATED,
                                               long pSyncStatus = SystemConstants.SYNC_STATUS_COMPLETED
                                               )
        {
            LotteryDrawRepository      lotteryDrawRepository = new LotteryDrawRepository();
            LTD_LotteryDraw            draw      = lotteryDrawRepository.getById(pListObject.LTD_LotteryDraw);
            LotteryPointSaleRepository saleRepo  = new LotteryPointSaleRepository();
            LPS_LotteryPointSale       pointSale = saleRepo.getById(pListObject.LPS_LotteryPointSale);
            // Crear el objeto JSON
            var jsonObject = new
            {
                listNumber        = pListObject.LTL_Id,
                lotteryPointSale  = pointSale.LPS_Id,
                lotteryDraw       = pListObject.LTD_LotteryDraw,
                lotteryListStatus = pListStatus,
                synchronyStatus   = pSyncStatus,
                customerName      = pListObject.LTL_CustomerName,
                createDate        = pListObject.LTL_CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
            };

            return(jsonObject);
        }
Пример #14
0
 public void updateList(LTL_LotteryList pList)
 {
     this.listRepository.updateList(pList);
 }
Пример #15
0
        public object generateListObject(LTL_LotteryList pListObject)
        {
            LotteryDrawRepository      lotteryDrawRepository = new LotteryDrawRepository();
            LTD_LotteryDraw            draw      = lotteryDrawRepository.getById(pListObject.LTD_LotteryDraw);
            LotteryPointSaleRepository saleRepo  = new LotteryPointSaleRepository();
            LPS_LotteryPointSale       pointSale = saleRepo.getById(pListObject.LPS_LotteryPointSale);
            // Crear el objeto JSON
            var jsonObject = new
            {
                listNumber       = pListObject.LTL_Id,
                lotteryPointSale = new
                {
                    id              = pointSale.LPS_Id,
                    code            = pointSale.LPS_Code,
                    synchronyStatus = new
                    {
                        code        = "SC",
                        displayName = "Sincronizado",
                        description = "Sincronización completa",
                        id          = 3
                    },
                    displayName = pointSale.LPS_DisplayName,
                    description = pointSale.LPS_Description,
                    company     = new
                    {
                        code        = "TR",
                        displayName = "TIEMPOS RIVERA",
                        description = "Tiempos Rivera",
                        id          = 1,
                        createDate  = pointSale.LPS_CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
                    },
                    createDate = pointSale.LPS_CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
                },
                lotteryDraw = new
                {
                    id = pListObject.LTD_LotteryDraw,
                    lotteryDrawType   = draw.LDT_LotteryDrawType,
                    lotteryDrawStatus = draw.LDS_LotteryDrawStatus,
                    createDate        = draw.LTD_CreateDate
                },
                lotteryListStatus = new
                {
                    id          = 2,
                    code        = "R",
                    displayName = "Borrada",
                    description = "Borrada"
                },
                synchronyStatus = new
                {
                    id          = 3,
                    code        = "SC",
                    displayName = "Sincronización completa",
                    description = "Sincronización completa"
                },
                customerName = pListObject.LTL_CustomerName,
                createDate   = pListObject.LTL_CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
            }
            ;

            return(jsonObject);
        }
Пример #16
0
 public void setListCompleteSync(LTL_LotteryList pList)
 {
     this.changeListSyncStatus(pList);
 }