public OOB.Resultado Configuracion_SetMetodoCalculoUtilidad(OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Ficha ficha)
        {
            var rt = new OOB.Resultado();

            var fichaDTO = new DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Ficha()
            {
                Metodo = ficha.Metodo,
                Precio = ficha.Precio.Select(s =>
                {
                    var nr = new DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.FichaPrecio()
                    {
                        idProducto = s.idProducto,
                        Precio_1   = new DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                        {
                            pdf   = s.Precio_1.pdf,
                            pneto = s.Precio_1.pneto,
                        },
                        Precio_2 = new DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                        {
                            pdf   = s.Precio_2.pdf,
                            pneto = s.Precio_2.pneto,
                        },
                        Precio_3 = new DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                        {
                            pdf   = s.Precio_3.pdf,
                            pneto = s.Precio_3.pneto,
                        },
                        Precio_4 = new DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                        {
                            pdf   = s.Precio_4.pdf,
                            pneto = s.Precio_4.pneto,
                        },
                        Precio_5 = new DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                        {
                            pdf   = s.Precio_5.pdf,
                            pneto = s.Precio_5.pneto,
                        },
                    };
                    return(nr);
                }).ToList(),
            };
            var r01 = MyData.Configuracion_SetMetodoCalculoUtilidad(fichaDTO);

            if (r01.Result == DtoLib.Enumerados.EnumResult.isError)
            {
                rt.Mensaje = r01.Mensaje;
                rt.Result  = OOB.Enumerados.EnumResult.isError;
                return(rt);
            }

            return(rt);
        }
예제 #2
0
        public void GuardarCambios()
        {
            var msg = MessageBox.Show("Guardar Cambios ?", "*** ALERTA ***", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

            if (msg == DialogResult.Yes)
            {
                var rx1 = Sistema.MyData.Configuracion_MetodoCalculoUtilidad_CapturarData();
                if (rx1.Result == OOB.Enumerados.EnumResult.isError)
                {
                    Helpers.Msg.Error(rx1.Mensaje);
                    return;
                }
                var rx2 = Sistema.MyData.Configuracion_TasaCambioActual();
                if (rx2.Result == OOB.Enumerados.EnumResult.isError)
                {
                    Helpers.Msg.Error(rx2.Mensaje);
                    return;
                }
                var rx3 = Sistema.MyData.Configuracion_PreferenciaRegistroPrecio();
                if (rx3.Result == OOB.Enumerados.EnumResult.isError)
                {
                    Helpers.Msg.Error(rx3.Mensaje);
                    return;
                }
                var rx4 = Sistema.MyData.Configuracion_ForzarRedondeoPrecioVenta();
                if (rx4.Result == OOB.Enumerados.EnumResult.isError)
                {
                    Helpers.Msg.Error(rx4.Mensaje);
                    return;
                }

                var _metodo = CalculaPrecio.metodoCalculoUtilidad.Lineal;
                if (_metCalculoUt.auto == "2")
                {
                    _metodo = CalculaPrecio.metodoCalculoUtilidad.Financiero;
                }
                var calcula = new CalculaPrecio(rx1.Lista);
                calcula.setTasaCambio(rx2.Entidad);
                calcula.setMetodoCalculoUtilidad(_metodo);
                calcula.setPreferenciaPrecio(rx3.Entidad);
                calcula.setRedondeoPrecio(rx4.Entidad);
                var lst = calcula.Recalcula();

                var fichaOOB = new OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Ficha()
                {
                    Metodo = _metCalculoUt.descripcion,
                    Precio = lst.Select(s =>
                    {
                        var nr = new OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.FichaPrecio()
                        {
                            idProducto = s.IdProducto,
                            Precio_1   = new OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                            {
                                pdf   = s.precio_1.pdf,
                                pneto = s.precio_1.pneto,
                            },
                            Precio_2 = new OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                            {
                                pdf   = s.precio_2.pdf,
                                pneto = s.precio_2.pneto,
                            },
                            Precio_3 = new OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                            {
                                pdf   = s.precio_3.pdf,
                                pneto = s.precio_3.pneto,
                            },
                            Precio_4 = new OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                            {
                                pdf   = s.precio_4.pdf,
                                pneto = s.precio_4.pneto,
                            },
                            Precio_5 = new OOB.LibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Precio()
                            {
                                pdf   = s.precio_5.pdf,
                                pneto = s.precio_5.pneto,
                            },
                        };
                        return(nr);
                    }).ToList(),
                };
                var r01 = Sistema.MyData.Configuracion_SetMetodoCalculoUtilidad(fichaOOB);
                if (r01.Result == OOB.Enumerados.EnumResult.isError)
                {
                    Helpers.Msg.Error(r01.Mensaje);
                    return;
                }
                _isOk = true;
                Helpers.Msg.EditarOk();
            }
        }