Beispiel #1
0
        /// <summary>
        /// Totalizar Venta
        /// </summary>
        /// <param name="totalizarVentaRequest">Petición de totalización de venta</param>
        /// <param name="codeStore">Código de tienda</param>
        /// <param name="codeBox">Código de caja</param>
        /// <param name="codeEmployee">Código de empleado cajero</param>
        /// <returns>Folio de Venta</returns>
        public TotalizarApartadoResponse TotalizarApartado(TotalizarApartadoRequest totalizarVentaRequest, int codeStore, int codeBox, int codeEmployee)
        {
            FormasPagoRepository formasPagoRepository = new FormasPagoRepository();

            TotalizarApartadoResponse totalizarVentaResponse = new TotalizarApartadoResponse();

            using (TransactionScope scope = new TransactionScope())
            {
                totalizarVentaResponse.FolioOperacion = totalizarVentaRequest.cabeceraVentaRequest.FolioOperacion;
                // Actualizar el estatus de la venta
                var parameters = new Dictionary <string, object>();
                parameters.Add("@FolioOperacion", totalizarVentaResponse.FolioOperacion);
                parameters.Add("@CodigoTienda", codeStore);
                parameters.Add("@CodigoCaja", codeBox);
                List <System.Data.SqlClient.SqlParameter> parametersOut = new List <System.Data.SqlClient.SqlParameter>();
                this.data.ExecuteProcedure("[dbo].[sp_vanti_TotalizarApartado]", parameters, parametersOut);
                // Información acerca de las formas de pago que deben mostrarse en el Front
                totalizarVentaResponse.InformacionAsociadaFormasPago = formasPagoRepository.GetConfigFormasPago(codeBox, codeStore, totalizarVentaRequest.cabeceraVentaRequest.FolioOperacion, totalizarVentaRequest.cabeceraVentaRequest.FolioDevolucion, totalizarVentaRequest.cabeceraVentaRequest.TipoCabeceraVenta);
                totalizarVentaResponse.InformacionAsociadaFormasPagoMonedaExtranjera = formasPagoRepository.GetConfigFormasPagoExt(codeBox, codeStore, totalizarVentaRequest.cabeceraVentaRequest.FolioOperacion, totalizarVentaRequest.cabeceraVentaRequest.FolioDevolucion, totalizarVentaRequest.cabeceraVentaRequest.TipoCabeceraVenta);
                // Actualizar la cabecera
                this.ActualizarCabeceraApartado(codeStore, codeBox, codeEmployee, totalizarVentaRequest.cabeceraVentaRequest);
                scope.Complete();
            }
            return(totalizarVentaResponse);
        }
Beispiel #2
0
 /// <summary>
 /// Totalización de apartado
 /// </summary>
 /// <param name="request">Objeto de peticion del apartado a totalizar</param>
 /// <returns></returns>
 public ResponseBussiness <TotalizarApartadoResponse> TotalizarApartado(TotalizarApartadoRequest request)
 {
     return(tryCatch.SafeExecutor(() =>
     {
         TotalizarApartadoResponse response = repository.TotalizarApartado(request, token.CodeStore, token.CodeBox, token.CodeEmployee);
         return response;
     }));
 }