示例#1
0
        private TransApartadoResponse AnularTransaccionApartado(AnularTotalizarApartadoRequest anularTotalizarVentaRequest, TokenDto token)
        {
            TransApartadoResponse operationResponse = new TransApartadoResponse();
            var parameters = new Dictionary <string, object>();

            parameters.Add("@FolioApartado", anularTotalizarVentaRequest.FolioApartado);
            parameters.Add("@CodigoTienda", token.CodeStore);
            parameters.Add("@CodigoCaja", token.CodeBox);
            parameters.Add("@CodigoRazon", anularTotalizarVentaRequest.CodigoRazon);
            List <System.Data.SqlClient.SqlParameter> parametersOut = new List <System.Data.SqlClient.SqlParameter>();

            parametersOut.Add(new System.Data.SqlClient.SqlParameter()
            {
                ParameterName = "@CodigoResultado", Direction = ParameterDirection.Output, SqlDbType = SqlDbType.Int
            });
            parametersOut.Add(new System.Data.SqlClient.SqlParameter()
            {
                ParameterName = "@MensajeResultado", Direction = ParameterDirection.Output, SqlDbType = SqlDbType.NVarChar, Size = 4000
            });
            parametersOut.Add(new System.Data.SqlClient.SqlParameter()
            {
                ParameterName = "@FolioVenta", Direction = ParameterDirection.Output, SqlDbType = SqlDbType.NVarChar, Size = 4000
            });

            var result = this.data.ExecuteProcedure("[dbo].[sp_vanti_AnularTransaccionApartado]", parameters, parametersOut);

            operationResponse.CodeNumber      = result["@CodigoResultado"].ToString();
            operationResponse.CodeDescription = result["@MensajeResultado"].ToString();
            operationResponse.FolioVenta      = result["@FolioVenta"].ToString();

            return(operationResponse);
        }
示例#2
0
        public ResponseBussiness <OperationResponse> AnularTotalizarApartado(AnularTotalizarApartadoRequest anularTotalizarApartadoRequest)
        {
            new SecurityBusiness().ValidarPermisos("anularApartado", "E");
            TokenDto token = new TokenService().Get();
            ResponseBussiness <OperationResponse> response = new ApartadosBusiness(token).AnularTotalizarApartado(anularTotalizarApartadoRequest);

            return(response);
        }
示例#3
0
        /// <summary>
        /// Anular Venta
        /// </summary>
        /// <param name="anularTotalizarApartadoRequest">Parametro con el folio de la venta</param>
        /// <param name="token">Token del usuario activo</param>
        /// <returns></returns>
        public TransApartadoResponse AnularApartado(AnularTotalizarApartadoRequest anularTotalizarApartadoRequest, TokenDto token)
        {
            TransApartadoResponse operationResponse = new TransApartadoResponse();

            using (TransactionScope scope = new TransactionScope())
            {
                operationResponse = this.AnularTransaccionApartado(anularTotalizarApartadoRequest, token);
                // TODO: Implementar lógica TransactionLogRepository
                //new TransactionLogRepository<AnularTotalizarVentaRequest>(token).Add(anularTotalizarVentaRequest, anularTotalizarVentaRequest.FolioVenta);
                scope.Complete();
            }
            return(operationResponse);
        }
示例#4
0
        /// <summary>
        /// Anular el apartado despues de totalizar
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public ResponseBussiness <OperationResponse> AnularTotalizarApartado(AnularTotalizarApartadoRequest request)
        {
            return(tryCatch.SafeExecutor(() =>
            {
                TransApartadoResponse transApartadoResponse = repository.AnularApartado(request, this.token);
                OperationResponse operationResponse = new OperationResponse();

                operationResponse.CodeNumber = transApartadoResponse.CodeNumber;
                operationResponse.CodeDescription = transApartadoResponse.CodeDescription;

                ImprimeTicketsMM imprimeTicketsMM = new ImprimeTicketsMM(token);
                imprimeTicketsMM.PrintTicket(transApartadoResponse.FolioVenta, false);

                return operationResponse;
            }));
        }