Ejemplo n.º 1
0
        public bool Guardar(UsuarioBE obe, out bool rptaL)
        {
            bool rpta      = false;
            int  idUsuario = 0;

            rptaL = false;
            SqlTransaction sqltrans;
            SqlTransaction sqltransLogo;

            using (SqlConnection con = new SqlConnection(strCnxRule))
            {
                con.Open();
                sqltrans = con.BeginTransaction();
                rpta     = oUsuarioDA.Guardar(con, sqltrans, obe, out idUsuario);
                if (rpta)
                {
                    sqltrans.Commit();
                    //----- GUARDAR LOGO
                    #region logo
                    if (idUsuario != 0 && obe.lologo.Count > 0)
                    {
                        for (var j = 0; j < obe.lologo.Count; j += 1)
                        {
                            obe.lologo[j].NombreCarpeta = obe.IdCliente.ToString();//.PadLeft(12, '0');
                        }
                        string msj = "";
                        rptaL = oArchivosAdjuntosBL.GuardarArchivoVUE(obe.lologo, out msj);
                        if (rptaL)
                        {
                            sqltransLogo = con.BeginTransaction();
                            string[] rutas = msj.Split('#');
                            for (var i = 0; i < rutas.Length; i += 1)
                            {
                                rptaL = oUsuarioDA.GuardarURLLogo(con, sqltransLogo, rutas[i], idUsuario, obe.UsrCreador);
                                if (!rptaL)
                                {
                                    break;
                                }
                            }

                            if (rptaL)
                            {
                                sqltransLogo.Commit();
                            }
                            else
                            {
                                sqltransLogo.Rollback();
                            }
                        }
                    }
                    else
                    {
                        rptaL = true;
                    }
                    #endregion logo
                }
                else
                {
                    sqltrans.Rollback();
                }
            }
            return(rpta);
        }