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);
        }
 public DtoLib.Resultado Configuracion_SetMetodoCalculoUtilidad(DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Ficha ficha)
 {
     return(ServiceProv.Configuracion_SetMetodoCalculoUtilidad(ficha));
 }
        public DtoLib.Resultado Configuracion_SetMetodoCalculoUtilidad(DtoLibInventario.Configuracion.MetodoCalculoUtilidad.Editar.Ficha ficha)
        {
            var result = new DtoLib.Resultado();

            try
            {
                using (var cnn = new invEntities(_cnInv.ConnectionString))
                {
                    using (var ts = cnn.Database.BeginTransaction())
                    {
                        var ent = cnn.sistema_configuracion.FirstOrDefault(f => f.codigo == "GLOBAL13");
                        if (ent == null)
                        {
                            result.Mensaje = "[ ID ] CONFIGURACION NO ENCONTRADO";
                            result.Result  = DtoLib.Enumerados.EnumResult.isError;
                            return(result);
                        }
                        ent.usuario = ficha.Metodo;
                        cnn.SaveChanges();

                        var sql  = @"update productos set precio_1=@p1, precio_2=@p2, precio_3=@p3, precio_4=@p4, precio_pto=@p5,
                                    pdf_1=@pd1, pdf_2=@pd2, pdf_3=@pd3, pdf_4=@pd4, pdf_pto=@pd5 where auto=@auto";
                        var p1   = new MySql.Data.MySqlClient.MySqlParameter();
                        var p2   = new MySql.Data.MySqlClient.MySqlParameter();
                        var p3   = new MySql.Data.MySqlClient.MySqlParameter();
                        var p4   = new MySql.Data.MySqlClient.MySqlParameter();
                        var p5   = new MySql.Data.MySqlClient.MySqlParameter();
                        var pd1  = new MySql.Data.MySqlClient.MySqlParameter();
                        var pd2  = new MySql.Data.MySqlClient.MySqlParameter();
                        var pd3  = new MySql.Data.MySqlClient.MySqlParameter();
                        var pd4  = new MySql.Data.MySqlClient.MySqlParameter();
                        var pd5  = new MySql.Data.MySqlClient.MySqlParameter();
                        var auto = new MySql.Data.MySqlClient.MySqlParameter();
                        p1.ParameterName   = "@p1";
                        p2.ParameterName   = "@p2";
                        p3.ParameterName   = "@p3";
                        p4.ParameterName   = "@p4";
                        p5.ParameterName   = "@p5";
                        pd1.ParameterName  = "@pd1";
                        pd2.ParameterName  = "@pd2";
                        pd3.ParameterName  = "@pd3";
                        pd4.ParameterName  = "@pd4";
                        pd5.ParameterName  = "@pd5";
                        auto.ParameterName = "@auto";

                        foreach (var it in ficha.Precio)
                        {
                            p1.Value   = it.Precio_1.pneto;
                            p2.Value   = it.Precio_2.pneto;
                            p3.Value   = it.Precio_3.pneto;
                            p4.Value   = it.Precio_4.pneto;
                            p5.Value   = it.Precio_5.pneto;
                            pd1.Value  = it.Precio_1.pdf;
                            pd2.Value  = it.Precio_2.pdf;
                            pd3.Value  = it.Precio_3.pdf;
                            pd4.Value  = it.Precio_4.pdf;
                            pd5.Value  = it.Precio_5.pdf;
                            auto.Value = it.idProducto;
                            var xsql = cnn.Database.ExecuteSqlCommand(sql, p1, p2, p3, p4, p5, pd1, pd2, pd3, pd4, pd5, auto);
                            if (xsql == 0)
                            {
                                result.Mensaje = "[ ID ] PRODUCTO NO ENCONTRADO";
                                result.Result  = DtoLib.Enumerados.EnumResult.isError;
                                return(result);
                            }

                            //var entPrd = cnn.productos.Find(it.idProducto);
                            //if (entPrd == null)
                            //{
                            //    result.Mensaje = "[ ID ] PRODUCTO NO ENCONTRADO";
                            //    result.Result = DtoLib.Enumerados.EnumResult.isError;
                            //    return result;
                            //}

                            //entPrd.precio_1 = it.Precio_1.pneto;
                            //entPrd.pdf_1 = it.Precio_1.pdf;
                            //entPrd.precio_2 = it.Precio_2.pneto;
                            //entPrd.pdf_2 = it.Precio_2.pdf;
                            //entPrd.precio_3 = it.Precio_3.pneto;
                            //entPrd.pdf_3 = it.Precio_3.pdf;
                            //entPrd.precio_4 = it.Precio_4.pneto;
                            //entPrd.pdf_4 = it.Precio_4.pdf;
                            //entPrd.precio_pto = it.Precio_5.pneto;
                            //entPrd.pdf_pto = it.Precio_5.pdf;
                            //cnn.SaveChanges();
                        }
                        ts.Commit();
                    }
                }
            }
            catch (Exception e)
            {
                result.Mensaje = e.Message;
                result.Result  = DtoLib.Enumerados.EnumResult.isError;
            }

            return(result);
        }