예제 #1
0
        public ActionResult Modificar(in_Producto_Info model)

        {
            try
            {
                bus_producto = new in_Producto_Bus();
                model.lst_producto_x_bodega = Lis_in_producto_x_tb_bodega_Info_List.get_list(Convert.ToInt32(model.IdTransaccionSession));
                if (model.lst_producto_x_bodega == null)
                {
                    model.lst_producto_x_bodega = new List <in_producto_x_tb_bodega_Info>();
                }
                model.IdUsuarioUltMod = SessionFixed.IdUsuario.ToString();
                model.pr_imagen       = Producto_imagen.pr_imagen;
                if (!validar(model, ref mensaje))
                {
                    if (model.pr_imagen == null)
                    {
                        model.pr_imagen = new byte[0];
                    }
                    cargar_combos(model);
                    ViewBag.mensaje = mensaje;
                    return(View(model));
                }
                if (!bus_producto.modificarDB(model))
                {
                    if (model.pr_imagen == null)
                    {
                        model.pr_imagen = new byte[0];
                    }
                    cargar_combos(model);
                    return(View(model));
                }

                model.lst_producto_composicion = list_producto_composicion.get_list(model.IdTransaccionSession);
                model.lst_producto_composicion.ForEach(q => { q.IdEmpresa = model.IdEmpresa; q.IdProductoPadre = model.IdProducto; });
                bus_producto_composicion.eliminarDB(model.IdEmpresa, model.IdProducto);
                if (!bus_producto_composicion.guardarDB(model.lst_producto_composicion))
                {
                    cargar_combos(model);
                    return(View(model));
                }
                Producto_imagen.pr_imagen = null;
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                if (model.pr_imagen == null)
                {
                    model.pr_imagen = new byte[0];
                }
                tb_sis_log_error_InfoList.DescripcionError = ex.InnerException.ToString();
                if (tb_sis_log_error_InfoList.DescripcionError == null)
                {
                    tb_sis_log_error_InfoList.DescripcionError = ex.Message.ToString();
                }
                ViewBag.error = ex.Message.ToString();
                cargar_combos(model);
                return(View(model));
            }
        }