Пример #1
0
        public void UpdateTotales(TbFaCotizacion compra)
        {
            var detalles = new List <TbFaCotizacionDetalle>();
            var dolar    = compra.TipoCambioDolar;
            var euro     = compra.TipoCambioEuro;

            foreach (var domain in compra.TbFaCotizacionDetalle)
            {
                if (compra.IdMoneda == 1)
                {
                    domain.SubTotalExcentoDolar = domain.SubTotalExcentoBase / dolar;
                    domain.SubTotalExcentoEuro  = domain.SubTotalExcentoBase / euro;

                    domain.SubTotalExcentoNetoDolar = domain.SubTotalExcentoNetoBase / dolar;
                    domain.SubTotalExcentoNetoEuro  = domain.SubTotalExcentoNetoBase / euro;

                    domain.SubTotalGravadoDolar = domain.SubTotalGravadoBase / dolar;
                    domain.SubTotalGravadoEuro  = domain.SubTotalGravadoBase / euro;

                    domain.SubTotalGravadoNetoDolar = domain.SubTotalGravadoNetoBase / dolar;
                    domain.SubTotalGravadoNetoEuro  = domain.SubTotalGravadoNetoBase / euro;

                    domain.MontoIvaDolar = domain.MontoIvaBase / dolar;
                    domain.MontoIvaEuro  = domain.MontoIvaBase / euro;

                    domain.TotalDolar = domain.TotalBase / dolar;
                    domain.TotalEuro  = domain.TotalBase / euro;

                    domain.TotalDescuentoDolar = domain.TotalDescuentoBase / dolar;
                    domain.TotalDescuentoEuro  = domain.TotalDescuentoBase / euro;
                }
                else if (compra.IdMoneda == 2)
                {
                    domain.SubTotalExcentoBase = domain.SubTotalExcentoBase * dolar;
                    domain.SubTotalExcentoEuro = domain.SubTotalExcentoBase / euro;

                    domain.SubTotalExcentoNetoBase = domain.SubTotalExcentoNetoBase * dolar;
                    domain.SubTotalExcentoNetoEuro = domain.SubTotalExcentoNetoBase / euro;

                    domain.SubTotalGravadoBase = domain.SubTotalGravadoBase * dolar;
                    domain.SubTotalGravadoEuro = domain.SubTotalGravadoBase / euro;

                    domain.SubTotalGravadoNetoBase = domain.SubTotalGravadoNetoBase * dolar;
                    domain.SubTotalGravadoNetoEuro = domain.SubTotalGravadoNetoBase / euro;


                    domain.MontoIvaBase = domain.MontoIvaBase * Convert.ToDouble(dolar);
                    domain.MontoIvaEuro = domain.MontoIvaBase / euro;


                    domain.TotalBase = domain.TotalBase * dolar;
                    domain.TotalEuro = domain.TotalBase / euro;


                    domain.TotalDescuentoBase = domain.TotalDescuentoBase * dolar;
                    domain.TotalDescuentoEuro = domain.TotalDescuentoBase / euro;
                }
                else if (compra.IdMoneda == 3)
                {
                    domain.SubTotalExcentoBase  = domain.SubTotalExcentoBase * euro;
                    domain.SubTotalExcentoDolar = domain.SubTotalExcentoBase / dolar;

                    domain.SubTotalExcentoNetoBase  = domain.SubTotalExcentoNetoBase * euro;
                    domain.SubTotalExcentoNetoDolar = domain.SubTotalExcentoNetoBase / dolar;

                    domain.SubTotalGravadoBase  = domain.SubTotalGravadoBase * euro;
                    domain.SubTotalGravadoDolar = domain.SubTotalGravadoBase / dolar;

                    domain.SubTotalGravadoNetoBase  = domain.SubTotalGravadoNetoBase * euro;
                    domain.SubTotalGravadoNetoDolar = domain.SubTotalGravadoNetoBase / dolar;


                    domain.MontoIvaBase  = domain.MontoIvaBase * Convert.ToDouble(euro);
                    domain.MontoIvaDolar = domain.MontoIvaBase / dolar;

                    domain.TotalBase  = domain.TotalBase * euro;
                    domain.TotalDolar = domain.TotalBase / dolar;

                    domain.TotalDescuentoBase  = domain.TotalDescuentoBase * euro;
                    domain.TotalDescuentoDolar = domain.TotalDescuentoBase / dolar;
                }

                detalles.Add(domain);
            }


            _Service.UpdateCotizacionDetalle(detalles);
        }
Пример #2
0
        public TbFaCotizacion ViewModelToDomain(CotizacionViewModel viewModel)
        {
            var domain = new TbFaCotizacion {
            };

            try
            {
                domain = new TbFaCotizacion
                {
                    IdCotizacion      = viewModel.IdCotizacion,
                    FechaCotizacion   = viewModel.FechaCotizacion,
                    IdCliente         = viewModel.IdCliente,
                    Estado            = viewModel.Estado,
                    IdMoneda          = viewModel.IdMoneda,
                    IdVendedor        = viewModel.IdVendedor,
                    IdUsuarioCreador  = viewModel.IdUsuarioCreador,
                    FechaVencimiento  = viewModel.FechaVencimiento,
                    TipoCambioDolar   = viewModel.TipoCambioDolar,
                    TipoCambioEuro    = viewModel.TipoCambioEuro,
                    FechaCreacion     = viewModel.FechaCreacion,
                    FechaModificacion = DateTime.Now,

                    TbFaCotizacionDetalle = ViewModelToDomainCD(viewModel)
                };

                if (viewModel.IdMoneda == 1)
                {
                    domain.SubTotalBase  = viewModel.SubTotalBase;
                    domain.SubTotalDolar = domain.SubTotalBase * domain.TipoCambioDolar;
                    domain.SubTotalEuro  = domain.SubTotalBase * domain.TipoCambioEuro;

                    domain.SubTotalGravadoBase  = viewModel.SubTotalGravadoBase;
                    domain.SubTotalGravadoDolar = domain.SubTotalGravadoBase / domain.TipoCambioDolar;
                    domain.SubTotalGravadoEuro  = domain.SubTotalGravadoBase / domain.TipoCambioEuro;

                    domain.SubTotalExcentoBase  = viewModel.SubTotalExcentoBase;
                    domain.SubTotalExcentoDolar = domain.SubTotalExcentoBase / domain.TipoCambioDolar;
                    domain.SubTotalExcentoEuro  = domain.SubTotalExcentoBase / domain.TipoCambioEuro;

                    domain.PorcDescuentoBase = viewModel.PorcDescuentoBase;

                    domain.TotalDescuentoBase  = viewModel.TotalDescuentoBase;
                    domain.TotalDescuentoDolar = domain.TotalDescuentoBase / domain.TipoCambioDolar;
                    domain.TotalDescuentoEuro  = domain.TotalDescuentoBase / domain.TipoCambioEuro;

                    domain.SubTotalGravadoNetoBase  = viewModel.SubTotalGravadoNetoBase;
                    domain.SubTotalGravadoNetoDolar = domain.SubTotalGravadoNetoBase / domain.TipoCambioDolar;
                    domain.SubTotalGravadoNetoEuro  = domain.SubTotalGravadoNetoBase / domain.TipoCambioEuro;

                    domain.SubTotalExcentoNetoBase  = viewModel.SubTotalExcentoNetoBase;
                    domain.SubTotalExcentoNetoDolar = domain.SubTotalExcentoNetoBase / domain.TipoCambioDolar;
                    domain.SubTotalExcentoNetoEuro  = domain.SubTotalExcentoNetoBase / domain.TipoCambioEuro;

                    domain.MontoIvabase  = viewModel.MontoIvabase;
                    domain.MontoIvadolar = domain.MontoIvabase / domain.TipoCambioDolar;
                    domain.MontoIvaeuro  = domain.MontoIvabase / domain.TipoCambioEuro;

                    domain.TotalBase  = viewModel.TotalBase;
                    domain.TotalDolar = domain.TotalBase / domain.TipoCambioDolar;
                    domain.TotalEuro  = domain.TotalBase / domain.TipoCambioEuro;
                }
                else if (viewModel.IdMoneda == 2)
                {
                    domain.SubTotalBase  = viewModel.SubTotalBase * domain.TipoCambioDolar;
                    domain.SubTotalDolar = viewModel.SubTotalDolar;
                    domain.SubTotalEuro  = domain.SubTotalBase / domain.TipoCambioDolar;

                    domain.SubTotalGravadoBase  = viewModel.SubTotalGravadoBase * domain.TipoCambioDolar;
                    domain.SubTotalGravadoDolar = viewModel.SubTotalGravadoDolar;
                    domain.SubTotalGravadoEuro  = domain.SubTotalGravadoBase / domain.TipoCambioEuro;

                    domain.SubTotalExcentoBase  = viewModel.SubTotalExcentoBase * domain.TipoCambioDolar;
                    domain.SubTotalExcentoDolar = viewModel.SubTotalExcentoDolar;
                    domain.SubTotalExcentoEuro  = domain.SubTotalExcentoBase / domain.TipoCambioEuro;

                    domain.PorcDescuentoBase = viewModel.PorcDescuentoBase;

                    domain.TotalDescuentoBase  = viewModel.TotalDescuentoBase * domain.TipoCambioDolar;
                    domain.TotalDescuentoDolar = viewModel.TotalDescuentoDolar;
                    domain.TotalDescuentoEuro  = domain.TotalDescuentoBase / domain.TipoCambioEuro;

                    domain.SubTotalGravadoNetoBase  = viewModel.SubTotalGravadoNetoBase * domain.TipoCambioDolar;
                    domain.SubTotalGravadoNetoDolar = viewModel.SubTotalGravadoNetoDolar;
                    domain.SubTotalGravadoNetoEuro  = domain.SubTotalGravadoNetoBase / domain.TipoCambioEuro;

                    domain.SubTotalExcentoNetoBase  = viewModel.SubTotalExcentoNetoBase * domain.TipoCambioDolar;
                    domain.SubTotalExcentoNetoDolar = viewModel.SubTotalExcentoNetoDolar;
                    domain.SubTotalExcentoNetoEuro  = domain.SubTotalExcentoNetoBase / domain.TipoCambioEuro;

                    domain.MontoIvabase  = viewModel.MontoIvabase * domain.TipoCambioDolar;
                    domain.MontoIvadolar = viewModel.MontoIvadolar;
                    domain.MontoIvaeuro  = domain.MontoIvabase / domain.TipoCambioEuro;

                    domain.TotalBase  = viewModel.TotalBase * domain.TipoCambioDolar;
                    domain.TotalDolar = viewModel.TotalDolar;
                    domain.TotalEuro  = domain.TotalBase / domain.TipoCambioEuro;
                }
                else if (viewModel.IdMoneda == 3)
                {
                    domain.SubTotalBase  = viewModel.SubTotalBase * domain.TipoCambioEuro;
                    domain.SubTotalDolar = domain.SubTotalBase / domain.TipoCambioDolar;
                    domain.SubTotalEuro  = viewModel.SubTotalEuro;

                    domain.SubTotalGravadoBase  = viewModel.SubTotalGravadoBase * domain.TipoCambioEuro;
                    domain.SubTotalGravadoDolar = domain.SubTotalGravadoBase / domain.TipoCambioDolar;
                    domain.SubTotalGravadoEuro  = viewModel.SubTotalGravadoEuro;

                    domain.SubTotalExcentoBase  = viewModel.SubTotalExcentoBase * domain.TipoCambioEuro;
                    domain.SubTotalExcentoDolar = domain.SubTotalExcentoBase / domain.TipoCambioDolar;
                    domain.SubTotalExcentoEuro  = viewModel.SubTotalExcentoEuro;

                    domain.PorcDescuentoBase = viewModel.PorcDescuentoBase;

                    domain.TotalDescuentoBase  = viewModel.TotalDescuentoBase * domain.TipoCambioEuro;
                    domain.TotalDescuentoDolar = domain.TotalDescuentoBase / domain.TipoCambioDolar;
                    domain.TotalDescuentoEuro  = viewModel.TotalDescuentoEuro;

                    domain.SubTotalGravadoNetoBase  = viewModel.SubTotalGravadoNetoBase * domain.TipoCambioEuro;
                    domain.SubTotalGravadoNetoDolar = domain.SubTotalGravadoNetoBase / domain.TipoCambioDolar;
                    domain.SubTotalGravadoNetoEuro  = viewModel.SubTotalGravadoNetoEuro;

                    domain.SubTotalExcentoNetoBase  = viewModel.SubTotalExcentoNetoBase * domain.TipoCambioEuro;
                    domain.SubTotalExcentoNetoDolar = domain.SubTotalExcentoNetoBase / domain.TipoCambioDolar;
                    domain.SubTotalExcentoNetoEuro  = viewModel.SubTotalExcentoNetoEuro;

                    domain.MontoIvabase  = viewModel.MontoIvabase * domain.TipoCambioEuro;
                    domain.MontoIvadolar = domain.MontoIvabase / domain.TipoCambioDolar;
                    domain.MontoIvaeuro  = viewModel.MontoIvaeuro;

                    domain.TotalBase  = viewModel.TotalBase * domain.TipoCambioEuro;
                    domain.TotalDolar = domain.TotalBase / domain.TipoCambioDolar;
                    domain.TotalEuro  = viewModel.TotalEuro;
                }
                return(domain);
            }
            catch (Exception ex)
            {
                AltivaLog.Log.Insertar(ex.ToString(), "Advertencia");
                var msj = ex.Message;
                return(domain);
            }
        }
Пример #3
0
 public TbFaCotizacion Update(TbFaCotizacion domain)
 {
     return(repository.Update(domain));
 }
Пример #4
0
        public CotizacionViewModel DomainToViewModel(TbFaCotizacion domain)
        {
            var viewModel = new CotizacionViewModel
            {
                IdCotizacion      = domain.IdCotizacion,
                FechaCotizacion   = domain.FechaCotizacion,
                IdCliente         = domain.IdCliente,
                Estado            = domain.Estado,
                IdMoneda          = domain.IdMoneda,
                IdVendedor        = domain.IdVendedor,
                IdUsuarioCreador  = domain.IdUsuarioCreador,
                FechaVencimiento  = domain.FechaVencimiento,
                TipoCambioDolar   = domain.TipoCambioDolar,
                TipoCambioEuro    = domain.TipoCambioEuro,
                FechaCreacion     = domain.FechaCreacion,
                FechaModificacion = domain.FechaModificacion
            };

            if (domain.IdMoneda == 1)
            {
                viewModel.SubTotalBase             = domain.SubTotalBase;
                viewModel.SubTotalDolar            = domain.SubTotalGravadoDolar;
                viewModel.SubTotalEuro             = domain.SubTotalEuro;
                viewModel.SubTotalGravadoBase      = domain.SubTotalGravadoBase;
                viewModel.SubTotalGravadoDolar     = domain.SubTotalGravadoDolar;
                viewModel.SubTotalGravadoEuro      = domain.SubTotalGravadoEuro;
                viewModel.SubTotalExcentoBase      = domain.SubTotalExcentoBase;
                viewModel.SubTotalExcentoDolar     = domain.SubTotalExcentoDolar;
                viewModel.SubTotalExcentoEuro      = domain.SubTotalExcentoEuro;
                viewModel.PorcDescuentoBase        = Convert.ToDouble(domain.PorcDescuentoBase);
                viewModel.TotalDescuentoBase       = domain.TotalDescuentoBase;
                viewModel.TotalDescuentoDolar      = domain.TotalDescuentoDolar;
                viewModel.TotalDescuentoEuro       = domain.TotalDescuentoEuro;
                viewModel.SubTotalGravadoNetoBase  = domain.SubTotalGravadoNetoBase;
                viewModel.SubTotalGravadoNetoDolar = domain.SubTotalGravadoNetoDolar;
                viewModel.SubTotalGravadoNetoEuro  = domain.SubTotalGravadoNetoEuro;
                viewModel.SubTotalExcentoNetoBase  = domain.SubTotalExcentoNetoBase;
                viewModel.SubTotalExcentoNetoDolar = domain.SubTotalExcentoNetoDolar;
                viewModel.SubTotalExcentoNetoEuro  = domain.SubTotalExcentoNetoEuro;
                viewModel.MontoIvabase             = domain.MontoIvabase;
                viewModel.MontoIvadolar            = domain.MontoIvadolar;
                viewModel.MontoIvaeuro             = domain.MontoIvaeuro;
                viewModel.TotalBase  = domain.TotalBase;
                viewModel.TotalDolar = domain.TotalDolar;
                viewModel.TotalEuro  = domain.TotalEuro;
            }
            else if (domain.IdMoneda == 2)
            {
                viewModel.SubTotalBase             = domain.SubTotalBase;
                viewModel.SubTotalDolar            = domain.SubTotalGravadoDolar;
                viewModel.SubTotalEuro             = domain.SubTotalEuro;
                viewModel.SubTotalGravadoBase      = domain.SubTotalGravadoBase;
                viewModel.SubTotalGravadoDolar     = domain.SubTotalGravadoDolar;
                viewModel.SubTotalGravadoEuro      = domain.SubTotalGravadoEuro;
                viewModel.SubTotalExcentoBase      = domain.SubTotalExcentoBase;
                viewModel.SubTotalExcentoDolar     = domain.SubTotalExcentoDolar;
                viewModel.SubTotalExcentoEuro      = domain.SubTotalExcentoEuro;
                viewModel.PorcDescuentoBase        = Convert.ToDouble(domain.PorcDescuentoBase);
                viewModel.TotalDescuentoBase       = domain.TotalDescuentoBase;
                viewModel.TotalDescuentoDolar      = domain.TotalDescuentoDolar;
                viewModel.TotalDescuentoEuro       = domain.TotalDescuentoEuro;
                viewModel.SubTotalGravadoNetoBase  = domain.SubTotalGravadoNetoBase;
                viewModel.SubTotalGravadoNetoDolar = domain.SubTotalGravadoNetoDolar;
                viewModel.SubTotalGravadoNetoEuro  = domain.SubTotalGravadoNetoEuro;
                viewModel.SubTotalExcentoNetoBase  = domain.SubTotalExcentoNetoBase;
                viewModel.SubTotalExcentoNetoDolar = domain.SubTotalExcentoNetoDolar;
                viewModel.SubTotalExcentoNetoEuro  = domain.SubTotalExcentoNetoEuro;
                viewModel.MontoIvabase             = domain.MontoIvabase;
                viewModel.MontoIvadolar            = domain.MontoIvadolar;
                viewModel.MontoIvaeuro             = domain.MontoIvaeuro;
                viewModel.TotalBase  = domain.TotalBase;
                viewModel.TotalDolar = domain.TotalDolar;
                viewModel.TotalEuro  = domain.TotalEuro;
            }
            else if (domain.IdMoneda == 3)
            {
                viewModel.SubTotalBase             = domain.SubTotalBase;
                viewModel.SubTotalDolar            = domain.SubTotalGravadoDolar;
                viewModel.SubTotalEuro             = domain.SubTotalEuro;
                viewModel.SubTotalGravadoBase      = domain.SubTotalGravadoBase;
                viewModel.SubTotalGravadoDolar     = domain.SubTotalGravadoDolar;
                viewModel.SubTotalGravadoEuro      = domain.SubTotalGravadoEuro;
                viewModel.SubTotalExcentoBase      = domain.SubTotalExcentoBase;
                viewModel.SubTotalExcentoDolar     = domain.SubTotalExcentoDolar;
                viewModel.SubTotalExcentoEuro      = domain.SubTotalExcentoEuro;
                viewModel.PorcDescuentoBase        = Convert.ToDouble(domain.PorcDescuentoBase);
                viewModel.TotalDescuentoBase       = domain.TotalDescuentoBase;
                viewModel.TotalDescuentoDolar      = domain.TotalDescuentoDolar;
                viewModel.TotalDescuentoEuro       = domain.TotalDescuentoEuro;
                viewModel.SubTotalGravadoNetoBase  = domain.SubTotalGravadoNetoBase;
                viewModel.SubTotalGravadoNetoDolar = domain.SubTotalGravadoNetoDolar;
                viewModel.SubTotalGravadoNetoEuro  = domain.SubTotalGravadoNetoEuro;
                viewModel.SubTotalExcentoNetoBase  = domain.SubTotalExcentoNetoBase;
                viewModel.SubTotalExcentoNetoDolar = domain.SubTotalExcentoNetoDolar;
                viewModel.SubTotalExcentoNetoEuro  = domain.SubTotalExcentoNetoEuro;
                viewModel.MontoIvabase             = domain.MontoIvabase;
                viewModel.MontoIvadolar            = domain.MontoIvadolar;
                viewModel.MontoIvaeuro             = domain.MontoIvaeuro;
                viewModel.TotalBase  = domain.TotalBase;
                viewModel.TotalDolar = domain.TotalDolar;
                viewModel.TotalEuro  = domain.TotalEuro;
            }


            return(viewModel);
        }
Пример #5
0
 public TbFaCotizacion Save(TbFaCotizacion domain)
 {
     return(repository.Save(domain));
 }