예제 #1
0
        public Auditoria CrearAudtoria(Auditoria auditoriaARegistrar)
        {
            Auditoria auditoriaRegistrado = null;
            string sql = "INSERT into auditoria(codigoreserva,codigousuario,fecha,asistentes,estado)values(@codigoreserva,@codigousuario,@fecha,@asistentes,@estado)";
            if (connection == null)
                connection = new MySqlConnection(ConexionUtil.Cadena);
            int codigoRespuesta = 0;
            using (connection)
            {
                connection.Open();
                using (MySqlCommand com = new MySqlCommand(sql, connection))
                {
                    com.Parameters.Add(new MySqlParameter("@codigoreserva", auditoriaARegistrar.codigoreserva));
                    com.Parameters.Add(new MySqlParameter("@codigousuario", auditoriaARegistrar.codigousuario));
                    com.Parameters.Add(new MySqlParameter("@fecha", auditoriaARegistrar.fecha));
                    com.Parameters.Add(new MySqlParameter("@asistentes", auditoriaARegistrar.asistentes));
                    com.Parameters.Add(new MySqlParameter("@estado", auditoriaARegistrar.estado));
                    codigoRespuesta = com.ExecuteNonQuery();

                    auditoriaARegistrar.codigoreserva = codigoRespuesta.ToString();
                }
            }

            auditoriaRegistrado = auditoriaARegistrar;
            return auditoriaRegistrado;
        }
예제 #2
0
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            var request = filterContext.HttpContext.Request;
            var action = filterContext.Controller.ControllerContext.RouteData.Values["action"].ToString();
            var controller = filterContext.Controller.ControllerContext.RouteData.Values["controller"].ToString();
            var userName = (request.IsAuthenticated) ? filterContext.HttpContext.User.Identity.Name : "Anonymous";
            var ipAddress = request.ServerVariables["HTTP_X_FORWARDED_FOR"] ?? request.UserHostAddress;
            var data = Json.Encode(new
            {
                request.Cookies,
                request.Headers,
                request.Files,
                request.Form,
                request.QueryString,
                request.Params
            });
            var sessionId = request.Cookies[FormsAuthentication.FormsCookieName] != null
                ? request.Cookies[FormsAuthentication.FormsCookieName].Value
                : "NoSession";
            var audit = new Auditoria
            {
                Usuario = userName,
                SessaoId = sessionId,
                Acao = action,
                Controle = controller,
                EnderecoIP = ipAddress,
                DataEvento = DateTime.Now,
                Dados = data
            };
            var context = new AppContext();

            context.Auditorias.Add(audit);
            context.SaveChanges();

            base.OnActionExecuting(filterContext);
        }
예제 #3
0
        public ActionResult Login(FrmLogin login)
        {
            var priv = new Privacidad();

            if (login.Usuario == null && login.Contraseña == null)
            {
                login.Usuario    = login.Usuario_Eng;
                login.Contraseña = login.Contraseña_Eng;
            }

            var ln  = new NegocioCuenta();
            var seg = new Privacidad();

            // Traduce páginas de LOGIN.
            TraducirPagina((String)Session["IdiomaApp"]);

            // Usuario con Sesión activa.
            if (ln.ValidarSesionActiva(login.Usuario))
            {
                Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_SESION_ACTIVA;
                return(RedirectToAction("Login"));
            }

            Session["IdUsuario"]          = null;
            Session["NombreUsuario"]      = null;
            Session["PerfilUsuario"]      = null;
            Session["EmailUsuario"]       = null;
            Session["CodUsuario"]         = null;
            Session["DireccionUsuario"]   = null;
            Session["RazonSocialUsuario"] = null;

            Session["UsrLogin"] = null;

            Session["ErrorLogin"] = null;
            Session["Excepcion"]  = null;

            // Usuario incorrecto, solo devuelvo el error al Login.
            if (ln.ValidarUsuario(login.Usuario))
            {
                Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_USUARIO_PSW_INVALIDOS;
                return(RedirectToAction("Login"));
            }

            // Valido que la cuenta no este bloqueada.
            if (ln.ValidarBloqueoCuenta(login.Usuario))

            {
                return(RedirectToAction("CuentaBloqueada"));
            }


            // Valido que la contraseña sea correcta, en caso negativo incremento intentos fallidos.
            if (ln.ValidarUsuarioPsw(login.Usuario, login.Contraseña))
            {
                Session["ErrorLogin"] = ViewBag.ERROR_LOGIN_USUARIO_PSW_INVALIDOS;

                //Sumo intento fallido.
                if (ln.SumarIntentoFallido(login.Usuario) == 3)
                {
                    ln.BloquearCuentaUsuario(login.Usuario); //Bloqueo cuenta de Usuario.

                    var aud = new Auditoria();
                    aud.grabarBitacora(DateTime.Now, "SISTEMA", "BLOQUEO USUARIO", "ERROR LEVE", "Se bloqueó al Usuario: " + login.Usuario);


                    return(RedirectToAction("CuentaBloqueada"));
                }

                return(RedirectToAction("Login"));
            }

            var usrSesion = ln.Autenticar(login);

            //Error en la base de datos.
            if (usrSesion.Nombre == null || usrSesion.PerfilUsr.Descripcion == null)

            {
                var aud = new Auditoria();
                aud.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR LOGIN", "ERROR LEVE", "Error al intentar ingresar al sistema.");
                return(RedirectToAction("Index", "Home"));
            }

            //Usuario Logueado correctamente, se mapean las variables de Sesión.

            Session["IdUsuario"]          = usrSesion.Id.ToString();
            Session["NombreUsuario"]      = usrSesion.Nombre;
            Session["RazonSocialUsuario"] = usrSesion.RazonSocial;
            Session["PerfilUsuario"]      = usrSesion.PerfilUsr.Descripcion;
            Session["EmailUsuario"]       = usrSesion.Email;
            Session["CodUsuario"]         = usrSesion.Id;
            Session["DireccionUsuario"]   = usrSesion.Direccion;
            Session["IdiomaApp"]          = usrSesion.Idioma.Abreviacion;

            Session["UsrLogin"] = usrSesion.Usr;

            HttpCookie cookie = new HttpCookie("UsrLogin");

            cookie.Value = usrSesion.Usr;
            Response.Cookies.Add(cookie);

            //Activo la Sesión.
            //ln.ActivarSesionCuentaUsuario(usrSesion.Usr);

            return(RedirectToAction("Index", "Home"));
        }
예제 #4
0
        public static IAuditoria GetAuditoria()
        {
            Auditoria auditoria = new Auditoria();

            return((IAuditoria)auditoria);
        }
예제 #5
0
        public int SaveChanges(Auditoria auditoria)
        {
            foreach (var entry in ChangeTracker.Entries().Where(p => p.State == EntityState.Added || p.State == EntityState.Deleted || p.State == EntityState.Modified))
            {
                if (entry.Entity == null)
                {
                    continue;
                }

                var tableName        = GetTableName(entry.Entity.GetType());
                var primaryKeyObject = GetPrimaryKeyValue(entry);
                var primaryKey       = 0;

                if (!int.TryParse(primaryKeyObject.ToString(), out primaryKey))
                {
                    primaryKey = 0;
                }

                switch (entry.State)
                {
                case EntityState.Added:
                    foreach (string prop in entry.CurrentValues.PropertyNames)
                    {
                        var currentValue  = entry.CurrentValues[prop] != null ? entry.CurrentValues[prop].ToString() : string.Empty;
                        var originalValue = string.Empty;

                        if (string.IsNullOrEmpty(currentValue))
                        {
                            continue;
                        }

                        auditoria.Alteracoes.Add(new AuditoriaAlteracao {
                            Operacao = TipoOperacaoAuditoria.Adicionar, Tabela = tableName, Campo = prop, ID = primaryKey, InfoAnterior = originalValue, InfoAtual = currentValue
                        });
                    }
                    break;

                case EntityState.Deleted:
                    foreach (string prop in entry.OriginalValues.PropertyNames)
                    {
                        var currentValue  = string.Empty;
                        var originalValue = entry.OriginalValues[prop] != null ? entry.OriginalValues[prop].ToString() : string.Empty;

                        if (string.IsNullOrEmpty(originalValue))
                        {
                            continue;
                        }

                        auditoria.Alteracoes.Add(new AuditoriaAlteracao {
                            Operacao = TipoOperacaoAuditoria.Remover, Tabela = tableName, Campo = prop, ID = primaryKey, InfoAnterior = originalValue, InfoAtual = currentValue
                        });
                    }
                    break;

                case EntityState.Modified:
                    foreach (string prop in entry.OriginalValues.PropertyNames)
                    {
                        var currentValue  = entry.CurrentValues[prop] != null ? entry.CurrentValues[prop].ToString() : string.Empty;
                        var originalValue = entry.OriginalValues[prop] != null ? entry.OriginalValues[prop].ToString() : string.Empty;

                        if (currentValue.Equals(originalValue))
                        {
                            continue;
                        }

                        auditoria.Alteracoes.Add(new AuditoriaAlteracao {
                            Operacao = TipoOperacaoAuditoria.Atualizar, Tabela = tableName, Campo = prop, ID = primaryKey, InfoAnterior = originalValue, InfoAtual = currentValue
                        });
                    }
                    break;
                }
            }

            Auditorias.Add(auditoria);

            return(base.SaveChanges());
        }
예제 #6
0
        public ActionResult Grafico(ReporteModel model)
        {
            model.returnPage = Url.Action("Index", "Documento", new { model.IdModulo });
            model.Perfil     = Metodos.GetPerfilData();
            string _PageTitle = Metodos.GetModuloName(model.IdModuloActual);

            ViewBag.Title = string.Format("{0} - {1}", Resources.BCMWebPublic.labelAppTitle, _PageTitle);

            Auditoria.RegistarAccion(eTipoAccion.Mostrar);
            int iEscala = 0;

            switch (model.IdModuloActual)
            {
            case 13010300:
                model.EscalaGrafico       = Metodos.GetTipoEscalaGrafico(eTipoEscala.ImpactoOperacional);
                model.DataCuadro          = Metodos.GetDataGraficoImpactoOperacional(model.IdEscalaGrafico);
                iEscala                   = model.EscalaGrafico.FindIndex(x => x.IdTipoEscala == model.IdEscalaGrafico);
                ViewData["TituloGrafico"] = _PageTitle + " - " + model.EscalaGrafico[iEscala].TipoEscala;
                break;

            case 13010600:
                model.EscalaGrafico       = Metodos.GetEscalaGrafico();
                model.DataCuadro          = Metodos.GetDataGraficoValorImpacto((eTipoEscala)model.IdEscalaGrafico);
                iEscala                   = model.EscalaGrafico.FindIndex(x => x.IdTipoEscala == model.IdEscalaGrafico);
                ViewData["TituloGrafico"] = _PageTitle + " - " + model.EscalaGrafico[iEscala].TipoEscala;
                break;

            case 13010900:
                model.EscalaGrafico       = Metodos.GetSemestres();
                model.DataCuadro          = Metodos.GetDataGraficoGranImpacto(model.IdEscalaGrafico);
                iEscala                   = model.EscalaGrafico.FindIndex(x => x.IdTipoEscala == model.IdEscalaGrafico);
                ViewData["TituloGrafico"] = _PageTitle + " - " + model.EscalaGrafico[iEscala].TipoEscala;
                break;

            case 13050300:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoProbabilidad();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13050500:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoProbabilidad();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13050700:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoProbabilidad();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13050900:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoProbabilidad();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13051100:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoProbabilidad();
                ViewData["TituloGrafico"] = _PageTitle;
                break;
            }

            return(View(model));
        }
예제 #7
0
        public ActionResult Tabla(long modId)
        {
            Session["modId"] = modId;

            ReporteModel model           = new ReporteModel();
            string       _modId          = modId.ToString();
            int          IdTipoDocumento = int.Parse(_modId.Substring(0, (_modId.Length == 7 ? 1 : 2)));

            long IdModulo = IdTipoDocumento * 1000000;

            model.returnPage     = Url.Action("Index", "Documento", new { IdModulo });
            model.IdModulo       = IdModulo;
            model.IdModuloActual = modId;
            model.Perfil         = Metodos.GetPerfilData();
            model.PageTitle      = Metodos.GetModuloName(modId);
            ViewBag.Title        = string.Format("{0} - {1}", model.PageTitle, Resources.BCMWebPublic.labelAppTitle);

            Auditoria.RegistarAccion(eTipoAccion.Mostrar);

            switch (modId)
            {
            case 13010200:
                model.DataCuadro = Metodos.GetNroProcesosByImpactoOperacional();
                break;

            case 13010500:
                model.DataCuadro = Metodos.GetNroProcesosByValorImpacto();
                break;

            case 13010800:
                model.DataCuadro = Metodos.GetNroProcesosByGranImpacto();
                break;

            case 13030100:
            case 13030200:
            case 13030300:
            case 13030400:
            case 13030500:
                model.DataCuadro = Metodos.GetDataAmenazasProbabilidad();
                break;

            case 13050200:
                model.Escalas    = Metodos.GetProbabilidadEmpresa().Select(x => x.Descripcion).ToList();
                model.DataCuadro = Metodos.GetNroProcesosByRiesgoProbabilidad();
                break;

            case 13050400:
                model.Escalas    = Metodos.GetImpactoEmpresa().Select(x => x.Descripcion).ToList();
                model.DataCuadro = Metodos.GetNroProcesosByRiesgoImpacto();
                break;

            case 13050600:
                model.Escalas    = Metodos.GetSeveridadEmpresa().Select(x => x.Descripcion).ToList();
                model.DataCuadro = Metodos.GetNroProcesosByRiesgoSeveridad();
                break;

            case 13050800:
                model.Escalas    = Metodos.GetFuenteEmpresa().Select(x => x.Descripcion).ToList();
                model.DataCuadro = Metodos.GetNroProcesosByRiesgoFuente();
                break;

            case 13051000:
                model.Escalas    = Metodos.GetControlEmpresa().Select(x => x.Descripcion).ToList();
                model.DataCuadro = Metodos.GetNroProcesosByRiesgoControl();
                break;
            }

            return(View(model));
        }
예제 #8
0
 public InformeDiscrepanciaUIForm(long oid, bool ismodal, Form parent, Auditoria auditoria)
     : base(oid, ismodal, parent)
 {
     InitializeComponent();
     _auditoria = auditoria;
 }
예제 #9
0
 public async Task InsertAsync(Auditoria obj)
 {
     _context.Add(obj);
     await _context.SaveChangesAsync();
 }
        public Auditoria Consultar(string codigo)
        {
            using (var banco = new Banco())
            {
                var id               = 0;
                var auditoria        = new Auditoria();
                var lstAuditoriaItem = new List <AuditoriaItem>();

                banco.AddParameter("codigo", codigo);
                using (var reader = banco.ExecuteReader(
                           @"SELECT 
							id
							, codigo
							, cidade
							, id_estado
							, link_portal
						FROM mcf_auditoria
						where codigo = @codigo"
                           )
                       )
                {
                    if (reader.Read())
                    {
                        id = Convert.ToInt32(reader["id"]);

                        auditoria.grupos      = new List <AuditoriaGrupo>();
                        auditoria.signatarios = new List <AuditoriaSignatario>();

                        auditoria.codigo      = reader["codigo"].ToString();
                        auditoria.estado      = reader["id_estado"].ToString();
                        auditoria.cidade      = reader["cidade"].ToString();
                        auditoria.link_portal = reader["link_portal"].ToString();
                    }
                    else
                    {
                        throw new BusinessException("Auditoria não localizada!");
                    }
                }

                banco.AddParameter("id", id);
                using (var reader = banco.ExecuteReader(
                           @"SELECT 
							id
							, nome 
						FROM mcf_tranparencia_grupo;
					
						SELECT 
							ti.id
							, ti.id_mcf_transparencia_grupo
							, ti.informacao_auditada
							, ti.dispositivo_legal 
							, ai.id_mcf_id_transparencia_item_situacao
							, ai.indicio_de_prova
						FROM mcf_tranparencia_item ti
						left join mcf_auditoria_item ai on ai.id_mcf_id_transparencia_item = ti.id
						where ai.id_mcf_auditoria = @id
						order by id_mcf_transparencia_grupo, id;
						
						SELECT
							sg.id
							, sg.nome
							, sg.cpf
							, sg.rg
							, sg.nacionalidade
							, sg.estado_civil
							, sg.profissao
							, sg.cep
							, sg.endereco
							, sg.bairro
							, sg.cidade
							, sg.id_estado
							, sg.email
						FROM mcf_signatario sg
						inner join mcf_auditoria_signatario asg on asg.id_mcf_signatario = sg.id
						where asg.id_mcf_auditoria = @id;"
                           )
                       )
                {
                    while (reader.Read())
                    {
                        auditoria.grupos.Add(new AuditoriaGrupo
                        {
                            id    = Convert.ToInt32(reader["id"]),
                            nome  = reader["nome"].ToString(),
                            itens = new List <AuditoriaItem>()
                        });
                    }

                    reader.NextResult();

                    while (reader.Read())
                    {
                        lstAuditoriaItem.Add(new AuditoriaItem
                        {
                            id                  = Convert.ToInt32(reader["id"]),
                            id_grupo            = Convert.ToInt32(reader["id_mcf_transparencia_grupo"]),
                            informacao_auditada = reader["informacao_auditada"].ToString(),
                            dispositivo_legal   = reader["dispositivo_legal"].ToString(),
                            situacao            = reader["id_mcf_id_transparencia_item_situacao"].ToString(),
                            indicio_de_prova    = reader["indicio_de_prova"].ToString()
                        });
                    }

                    reader.NextResult();

                    while (reader.Read())
                    {
                        auditoria.signatarios.Add(new AuditoriaSignatario
                        {
                            //id = Convert.ToInt32(reader["id"]),
                            nome_completo = reader["nome"].ToString(),
                            cpf           = reader["cpf"].ToString(),
                            rg            = reader["rg"].ToString(),
                            nacionalidade = reader["nacionalidade"].ToString(),
                            estado_civil  = reader["estado_civil"].ToString(),
                            profissao     = reader["profissao"].ToString(),
                            cep           = reader["cep"].ToString(),
                            endereco      = reader["endereco"].ToString(),
                            bairro        = reader["bairro"].ToString(),
                            cidade        = reader["cidade"].ToString(),
                            estado        = reader["id_estado"].ToString(),
                            email         = reader["email"].ToString()
                        });
                    }
                }

                foreach (var grupo in auditoria.grupos)
                {
                    var itens = lstAuditoriaItem.FindAll(o => o.id_grupo == grupo.id);

                    grupo.itens.AddRange(itens);
                }

                return(auditoria);
            }
        }
        public string Salvar(Auditoria auditoria)
        {
            int?userId;

            try
            {
                var identity = (ClaimsIdentity)User.Identity;
                userId = Convert.ToInt32(identity.FindFirst("UserId").Value);
            }
            catch (Exception)
            {
                userId = null;
            }

            using (var banco = new Banco())
            {
                int id_mcf_auditoria;
                banco.BeginTransaction();

                if (!string.IsNullOrEmpty(auditoria.codigo))
                {
                    banco.AddParameter("codigo", auditoria.codigo);
                    var id = banco.ExecuteScalar(@"select id from mcf_auditoria where codigo = @codigo");

                    if (Convert.IsDBNull(id))
                    {
                        auditoria.codigo = null;
                        return(Salvar(auditoria));
                    }
                    id_mcf_auditoria = Convert.ToInt32(id);

                    banco.AddParameter("codigo", auditoria.codigo);
                    banco.AddParameter("id_user", userId);
                    banco.AddParameter("id_estado", auditoria.estado);
                    banco.AddParameter("cidade", auditoria.cidade);
                    banco.AddParameter("link_portal", auditoria.link_portal);
                    banco.AddParameter("id", id_mcf_auditoria);

                    banco.ExecuteNonQuery(
                        @"UPDATE mcf_auditoria SET 
							codigo = @codigo, id_user = @id_user, id_estado = @id_estado, cidade = @cidade, link_portal = @link_portal 
						WHERE id = @id;"                        );

                    banco.AddParameter("id_mcf_auditoria", id_mcf_auditoria);
                    banco.ExecuteNonQuery(@"delete from mcf_auditoria_item where id_mcf_auditoria = @id_mcf_auditoria");
                }
                else
                {
                    auditoria.codigo = Guid.NewGuid().ToString();

                    banco.AddParameter("codigo", auditoria.codigo);
                    banco.AddParameter("id_user", userId);
                    banco.AddParameter("id_estado", auditoria.estado);
                    banco.AddParameter("cidade", auditoria.cidade);
                    banco.AddParameter("link_portal", auditoria.link_portal);

                    var id = banco.ExecuteScalar(
                        @"INSERT INTO mcf_auditoria (
						codigo, id_user, data_criacao, data_geracao_denuncia, id_estado, cidade, link_portal
					) VALUES (
						@codigo, @id_user, NOW(), NULL, @id_estado, @cidade, @link_portal
					);
					SELECT LAST_INSERT_ID();"                    );

                    id_mcf_auditoria = Convert.ToInt32(id);
                }

                foreach (var grupo in auditoria.grupos)
                {
                    foreach (var item in grupo.itens)
                    {
                        banco.AddParameter("id_mcf_auditoria", id_mcf_auditoria);
                        banco.AddParameter("id_mcf_id_transparencia_item", item.id);
                        banco.AddParameter("id_mcf_id_transparencia_item_situacao", item.situacao);
                        banco.AddParameter("indicio_de_prova", item.indicio_de_prova);

                        banco.ExecuteScalar(
                            @"INSERT INTO mcf_auditoria_item (
								id_mcf_auditoria, id_mcf_id_transparencia_item, id_mcf_id_transparencia_item_situacao, indicio_de_prova
							) VALUES (
								@id_mcf_auditoria, @id_mcf_id_transparencia_item, @id_mcf_id_transparencia_item_situacao, @indicio_de_prova
							);"                            );
                    }
                }

                foreach (var signatario in auditoria.signatarios)
                {
                    banco.AddParameter("nome", signatario.nome_completo);
                    banco.AddParameter("cpf", signatario.cpf);
                    banco.AddParameter("rg", signatario.rg);
                    banco.AddParameter("nacionalidade", signatario.nacionalidade);
                    banco.AddParameter("estado_civil", signatario.estado_civil);
                    banco.AddParameter("profissao", signatario.profissao);
                    banco.AddParameter("cep", signatario.cep);
                    banco.AddParameter("endereco", signatario.endereco);
                    banco.AddParameter("bairro", signatario.bairro);
                    banco.AddParameter("cidade", signatario.cidade);
                    banco.AddParameter("id_estado", signatario.estado);
                    banco.AddParameter("email", signatario.email);

                    var id_mcf_signatario = banco.ExecuteScalar(
                        @"INSERT INTO mcf_signatario (
								nome, cpf, rg, nacionalidade, estado_civil, profissao, cep, endereco, bairro, cidade, id_estado, email
							) VALUES (
								@nome, @cpf, @rg, @nacionalidade, @estado_civil, @profissao, @cep, @endereco, @bairro, @cidade, @id_estado, @email
							);
							SELECT LAST_INSERT_ID();"                            );

                    banco.AddParameter("id_mcf_auditoria", id_mcf_auditoria);
                    banco.AddParameter("id_mcf_signatario", Convert.ToInt32(id_mcf_signatario));

                    banco.ExecuteScalar(
                        @"INSERT INTO mcf_auditoria_signatario (
								id_mcf_auditoria, id_mcf_signatario
							) VALUES (
								@id_mcf_auditoria, @id_mcf_signatario
							);"                            );
                }

                banco.CommitTransaction();
            }

            return(auditoria.codigo);
        }
 public ClienteViewModel()
 {
     Auditoria = new Auditoria();
 }
        public JsonResult RegistrarUsuario(int IdUsuario, string Nombres, string ApellidoPaterno, string ApellidoMaterno,
                                           string DNI, int IdRol, string NombreUsuario, string Clave, int IdTipoUsuario, bool IdJefatura, bool IdCoordinador)
        {
            var objResult  = new object();
            int iResultado = 0;

            try
            {
                //Listas

                SeguridadViewModel vm = new SeguridadViewModel();
                vm.Usuario                     = new Usuario();
                vm.Usuario.IdUsuario           = IdUsuario;
                vm.Usuario.IdTipoUsuario       = IdTipoUsuario;
                vm.Usuario.Nombres             = Nombres;
                vm.Usuario.ApellidoPaterno     = ApellidoPaterno;
                vm.Usuario.ApellidoMaterno     = ApellidoMaterno;
                vm.Usuario.DNI                 = DNI;
                vm.Usuario.NombreUsuario       = NombreUsuario;
                vm.Usuario.Clave               = Clave;
                vm.Usuario.Nombres             = Nombres;
                vm.Usuario.IdRol               = IdRol;
                vm.Usuario.Jefatura            = IdJefatura;
                vm.Usuario.Coordinador         = IdCoordinador;
                vm.Usuario.UsuarioCreacion     = Auditoria.ObtenerNombreUsuario();
                vm.Usuario.UsuarioModificacion = Auditoria.ObtenerNombreUsuario();

                if (IdUsuario == 0)
                {
                    iResultado = new UsuarioLG().InsertarUsuario(vm.Usuario);
                }
                else
                {
                    iResultado = new UsuarioLG().ActualizarUsuario(vm.Usuario);
                }
                if (iResultado >= 0)
                {
                    if (IdUsuario == 0)
                    {
                        objResult = new
                        {
                            iTipoResultado = 1
                        };
                    }
                    else
                    {
                        objResult = new
                        {
                            iTipoResultado = 3
                        };
                    }
                }
                else
                {
                    objResult = new { iTipoResultado = 2, vError = Constantes.msgErrorGeneralListado };
                }
                return(Json(objResult));
            }
            catch (Exception ex)
            {
                objResult = new { iTipoResultado = 2, vError = Constantes.msgErrorGeneralListado };
                return(Json(objResult));
            }
        }
        public JsonResult RegistrarRol(int IdRol, string Nombre, string Descripcion, bool SiSuperAdmi, string cadenaMenu)
        {
            var    objResult  = new object();
            int    iResultado = -1;
            string mensaje    = "Ocurrio un error al intentar realizar la acción.";

            //   string Nombre = utlAuditoria.ObtenerPrimeroNombre();
            try
            {
                string[]           stringSeparators = new string[] { "|" };
                SeguridadViewModel vm = new SeguridadViewModel();
                vm.ListaRolPagina = new List <RolPagina>();
                RolPagina RolPagina;


                string[] Codigos = cadenaMenu.Split(stringSeparators, StringSplitOptions.None);
                foreach (string item in Codigos)
                {
                    if (!item.Equals(""))
                    {
                        RolPagina          = new RolPagina();
                        RolPagina.IdPagina = int.Parse(item);
                        vm.ListaRolPagina.Add(RolPagina);
                    }
                }

                vm.Rol = new Rol()
                {
                    IdRol               = IdRol,
                    Nombre              = Nombre,
                    Descripcion         = Descripcion,
                    SiSuperAdmi         = SiSuperAdmi,
                    UsuarioCreacion     = Auditoria.ObtenerNombreUsuario(),
                    UsuarioModificacion = Auditoria.ObtenerNombreUsuario()
                };



                if (IdRol > 0)
                {
                    iResultado = new RolLG().ActualizarRol(vm.Rol, vm.ListaRolPagina.ToList());
                }
                else
                {
                    iResultado = new RolLG().InsertarRol(vm.Rol, vm.ListaRolPagina.ToList());
                }

                if (iResultado > 0)
                {
                    if (IdRol > 0)
                    {
                        mensaje = "Se modificó correctamente el Rol.";
                    }
                    else
                    {
                        mensaje = "Se registró correctamente el Rol.";
                    }
                }

                objResult = new
                {
                    iResultado = iResultado,
                    vMensaje   = mensaje
                };

                return(Json(objResult));
            }
            catch (Exception ex)
            {
                objResult = new { iResultado = 2, vMensaje = Constantes.msgErrorGrabado };
                return(Json(objResult));
            }
        }
        private List <AuditEntry> OnBeforeSaveChanges()
        {
            ChangeTracker.DetectChanges();
            var auditEntries = new List <AuditEntry>();

            foreach (var entry in ChangeTracker.Entries())
            {
                if (entry.Entity is Auditoria || entry.State == EntityState.Detached || entry.State == EntityState.Unchanged)
                {
                    continue;
                }

                var auditEntry = new AuditEntry(entry)
                {
                    Tabela  = entry.Metadata.Relational().TableName.ToUpper(),
                    Usuario = _variables.UserName
                };
                auditEntries.Add(auditEntry);

                foreach (var property in entry.Properties)
                {
                    if (property.IsTemporary)
                    {
                        auditEntry.TemporaryProperties.Add(property);
                        continue;
                    }

                    string propertyName = property.Metadata.Name;
                    if (property.Metadata.IsPrimaryKey())
                    {
                        auditEntry.IdsAlterados[propertyName] = property.CurrentValue;
                        continue;
                    }

                    switch (entry.State)
                    {
                    case EntityState.Added:
                        auditEntry.ValoresNovos[propertyName] = property.CurrentValue;
                        break;

                    case EntityState.Deleted:
                        auditEntry.ValoresAntigos[propertyName] = property.OriginalValue;
                        break;

                    case EntityState.Modified:
                        if (property.IsModified)
                        {
                            if ((property.CurrentValue != null && property.OriginalValue != null) && (!property.CurrentValue.Equals(property.OriginalValue)))
                            {
                                auditEntry.ValoresAntigos[propertyName] = property.OriginalValue;
                                auditEntry.ValoresNovos[propertyName]   = property.CurrentValue;
                            }
                        }
                        break;
                    }
                }
            }

            // Save audit entities that have all the modifications
            foreach (var auditEntry in auditEntries.Where(_ => !_.HasTemporaryProperties))
            {
                Auditoria.Add(auditEntry.ToAudit());
            }

            // keep a list of entries where the value of some properties are unknown at this step
            return(auditEntries.Where(_ => _.HasTemporaryProperties).ToList());
        }
예제 #16
0
 public ActionResult EliminarUsuario(long IdUsuario)
 {
     //Metodos.DeleteUsuario(IdUsuario);
     Auditoria.RegistarAccion(eTipoAccion.EliminarUsuario);
     return(RedirectToAction("Usuario", "Administracion", new { modId = 11010300 }));
 }
예제 #17
0
 public void SaveAuditoria(Auditoria auditoria)
 {
     DbContext.Auditoria.Add(auditoria);
     DbContext.SaveChanges();
 }
예제 #18
0
        public dynamic CreaOrdenXActividad(int actividadId = 0, Seguridadcll seguridadcll = null)
        {
            int NroOrden  = 0;
            var actividad = db.Actividad.Where(a => a.ActividadId == actividadId).FirstOrDefault();

            //valida que exista la actividad
            if (actividad != null)
            {
                //valida que el estado sea autorizado
                if (actividad.ActividadEstado == EstadosActividades.Autorizado)
                {
                    //Valida que no exista orden para esta actividad

                    var ordenTemp = db.Orden.Where(o => o.ActividadId == actividadId && o.OrdenEstado != EstadoOrden.Eliminado)
                                    .FirstOrDefault();

                    if (ordenTemp == null)
                    {
                        var actividadItems = db.ActividadItem
                                             .Include(a => a.producto)
                                             .Where(ai => ai.ActividadId == actividadId &&
                                                    ai.producto.TipoProductoID == "1").ToList();
                        if (actividadItems.Count > 0)
                        {
                            //Obtiene numero de Orden(ultimo de la tabla + 1)
                            Seguridad.Seguridad seguridad = new Seguridad.Seguridad();
                            NroOrden = seguridad.generaConsecutivo("Ordenes");


                            //Crear cabecera de la Orden
                            Orden orden = new Orden();
                            orden.OrdenId                = NroOrden;
                            orden.ActividadId            = actividad.ActividadId;
                            orden.OrdenFecha             = DateTime.Today;
                            orden.OrdenFechaDespacho     = DateTime.Today;
                            orden.OrdenFechaModificacion = DateTime.Today;
                            orden.OrdenNroGuia           = "";
                            orden.OrdenComentario        = actividad.ActividadTitulo;
                            orden.UsuarioIdModifica      = actividad.UsuarioIdElabora;
                            orden.OrdenEstado            = EstadoOrden.Abierta;

                            db.Orden.Add(orden);

                            db.SaveChanges();

                            //Crea Detalle de la orden
                            int Linea = 1;
                            foreach (var item in actividadItems)
                            {
                                var producto = db.Producto.Where(p => p.ProductoId == item.ProductoId).FirstOrDefault();
                                if (producto.TipoProductoID == "1")
                                {
                                    OrdenItems ordenItems = new OrdenItems();
                                    ordenItems.OrdenId                  = NroOrden;
                                    ordenItems.OrdenItemsLinea          = Linea;
                                    ordenItems.ProductoId               = item.ProductoId;
                                    ordenItems.OrdenItemsCant           = item.ActividadItemCantidad;
                                    ordenItems.OrdenItemsCantConfirmada = 0;
                                    ordenItems.OrdenItemsVlr            = item.ActividadItemPrecio ?? 0;
                                    ordenItems.CentroCostoID            = item.CentroCostoID;

                                    db.OrdenItems.Add(ordenItems);

                                    Linea++;
                                }
                            }//foreach (var item in actividadItems)
                            db.SaveChanges();
                            //MovimientosController movCtrl = new MovimientosController();
                            //int NroMovimiento = movCtrl.CreaMovimientoXOrden(NroOrden);

                            #region auditoria

                            Auditoria auditoria = new Auditoria();
                            //Seguridadcll seguridadcll = (Seguridadcll)Session["seguridad"];

                            auditoria.AuditoriaFecha  = System.DateTime.Now;
                            auditoria.AuditoriaHora   = System.DateTime.Now.TimeOfDay;
                            auditoria.usuarioId       = seguridadcll.Usuario.UsuarioId;
                            auditoria.AuditoriaEvento = "Create";
                            auditoria.AuditoriaDesc   = "Se Creo la Orden: " + NroOrden;
                            auditoria.ObjetoId        = "Ordenes/CreaOrdenXActividad";

                            seguridad.insertAuditoria(auditoria);
                            #endregion auditoria
                            //Afecta cantidad de Productos Inventariables en el Gasto
                            MovimientosController movCtrl = new MovimientosController();
                            movCtrl.CreaMovimientoXOrden(orden.OrdenId, trnMode.Insert, seguridadcll);
                            //return RedirectToAction("CreaMovimientoXOrden", "Movimientos", new { OrdenId = orden.OrdenId, mode = trnMode.Insert });
                        }
                        else
                        {
                            //Cambia estado de la actividad a despachada y el gasto tambien
                            //Actualiza Estado del Gasto
                            var GastoList = db.Gasto.Where(g => g.ActividadId == actividad.ActividadId).ToList();
                            foreach (var gasto in GastoList)
                            {
                                gasto.GastoEstado     = EstadoGasto.Ejecutado;
                                db.Entry(gasto).State = EntityState.Modified;
                                db.SaveChanges();
                            }//foreach (var gasto in GastoList)


                            //Actualiza estado de la actividad
                            ActividadesController actCtrl = new ActividadesController();
                            actCtrl.CambiaEstadoActividad(actividad.ActividadId, (int)EstadosActividades.Despachado);

                            //return RedirectToAction("Index", "Actividades");
                        }//if (actividadItems.Count > 0)
                    }
                    else
                    {
                        NroOrden = 0;
                    }//if (ordenTemp == null) {
                }
                else
                {
                    NroOrden = 0;
                }//if(actividad.ActividadEstado == EstadosActividades.Autorizado)
            }
            else
            {
                NroOrden = 0;
            }//if (actividad != null)


            return(NroOrden);
        }
 public EmpresarioViewModel()
 {
     Auditoria = new Auditoria();
 }
 public InformeAmpliacionUIForm(long oid, bool ismodal, Form parent, Auditoria auditoria)
     : base(oid, ismodal, parent)
 {
     InitializeComponent();
     _auditoria = auditoria;
 }
예제 #21
0
        public ActionResult Grafico(long modId)
        {
            Session["modId"] = modId;

            ReporteModel model           = new ReporteModel();
            string       _modId          = modId.ToString();
            int          IdTipoDocumento = int.Parse(_modId.Substring(0, (_modId.Length == 7 ? 1 : 2)));

            long IdModulo = IdTipoDocumento * 1000000;

            model.returnPage     = Url.Action("Index", "Documento", new { IdModulo });
            model.IdModulo       = IdModulo;
            model.IdModuloActual = modId;
            model.Perfil         = Metodos.GetPerfilData();
            string _PageTitle = Metodos.GetModuloName(modId);

            ViewBag.Title = string.Format("{0} - {1}", Resources.BCMWebPublic.labelAppTitle, _PageTitle);

            Auditoria.RegistarAccion(eTipoAccion.Mostrar);
            int iEscala = 0;

            switch (model.IdModuloActual)
            {
            case 13010300:
                model.EscalaGrafico   = Metodos.GetTipoEscalaGrafico(eTipoEscala.ImpactoOperacional);
                model.IdEscalaGrafico = model.EscalaGrafico.First().IdTipoEscala;
                model.DataCuadro      = Metodos.GetDataGraficoImpactoOperacional(model.IdEscalaGrafico);
                iEscala = model.EscalaGrafico.FindIndex(x => x.IdTipoEscala == model.IdEscalaGrafico);
                ViewData["TituloGrafico"] = _PageTitle + " - " + model.EscalaGrafico[iEscala].TipoEscala;
                break;

            case 13010600:
                model.EscalaGrafico   = Metodos.GetEscalaGrafico();
                model.IdEscalaGrafico = model.EscalaGrafico.First().IdTipoEscala;
                model.DataCuadro      = Metodos.GetDataGraficoValorImpacto((eTipoEscala)model.IdEscalaGrafico);
                iEscala = model.EscalaGrafico.FindIndex(x => x.IdTipoEscala == model.IdEscalaGrafico);
                ViewData["TituloGrafico"] = _PageTitle + " - " + model.EscalaGrafico[iEscala].TipoEscala;
                break;

            case 13010900:
                model.EscalaGrafico   = Metodos.GetSemestres();
                model.IdEscalaGrafico = model.EscalaGrafico.First().IdTipoEscala;
                model.DataCuadro      = Metodos.GetDataGraficoGranImpacto(model.IdEscalaGrafico);
                iEscala = model.EscalaGrafico.FindIndex(x => x.IdTipoEscala == model.IdEscalaGrafico);
                ViewData["TituloGrafico"] = _PageTitle + " - " + model.EscalaGrafico[iEscala].TipoEscala;
                break;

            case 13050300:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoProbabilidad();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13050500:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoImpacto();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13050700:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoSeveridad();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13050900:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoFuente();
                ViewData["TituloGrafico"] = _PageTitle;
                break;

            case 13051100:
                model.DataCuadro          = Metodos.GetDataGraficoRiesgoControl();
                ViewData["TituloGrafico"] = _PageTitle;
                break;
            }

            return(View(model));
        }
예제 #22
0
        public static void Initialize(BemPatrimonialContext context)
        {
            if (context.BensPatrimoniais.Any())
            {
                return;
            }

            var BemPatrimonial = new BemPatrimonial[]
            {
                new BemPatrimonial {
                    Descricao    = "Fulano da Silva",
                    DataCadastro = new DateTime(20 - 05 - 2018),
                    NumeroTombo  = "A1B2"
                },

                new BemPatrimonial {
                    Descricao    = "Beltrano da Silva",
                    DataCadastro = new DateTime(22 - 02 - 2018),
                    NumeroTombo  = "A5C4"
                }
            };

            context.AddRange(BemPatrimonial);

            var enderecos = new Endereco[]
            {
                new Endereco {
                    CEP        = "78058788",
                    Bairro     = "Itiquira",
                    Logradouro = "Rua 10",
                    Numero     = "7341",
                },

                new Endereco {
                    CEP        = "78000999",
                    Bairro     = "Dom Aquino",
                    Logradouro = "Rua 11",
                    Numero     = "15",
                }
            };

            context.AddRange(enderecos);

            var Responsavel = new Responsavel[]
            {
                new Responsavel
                {
                    Email = "*****@*****.**",
                    Nome  = "jose da silva"
                },

                new Responsavel
                {
                    Email = "*****@*****.**",
                    Nome  = "mario da silva"
                }
            };

            context.AddRange(Responsavel);

            var especies = new Categoria[]
            {
                new Categoria
                {
                    Descricao = "Predio"
                },

                new Categoria
                {
                    Descricao = "Condominio"
                }
            };

            context.AddRange(typeof(Categoria));

            var consultas = new Auditoria[]
            {
                new Auditoria
                {
                    Data     = new DateTime(01 / 01 / 2018),
                    Aprovado = true
                },

                new Auditoria
                {
                    Data     = new DateTime(02 / 01 / 2018),
                    Aprovado = true
                }
            };

            context.AddRange(typeof(Auditoria));

            context.SaveChanges();
        }
예제 #23
0
        private void RegistrarVenta(DateTime fechaHora, int importeTotal, int formaPago, string NroTarjeta = "N/A")
        {
            var ln    = new NegocioOperaciones();
            var cliLn = new NegocioCliente();
            var inte  = new IntegridadDatos();

            var mensajeria = new Mensajeria();

            TraducirPagina((String)Session["IdiomaApp"]);

            var estadoId = 2;// Estado PENDIENTE DE PAGO.

            if (formaPago == 2)

            {
                estadoId = 1;
            }                // Estado APROBADA

            var tipoFactura = "A";

            var codUsuario = (Int32)Session["CodUsuario"];

            // Si existe el Cliente, lo traigo, sino lo doy de alta y luego lo traigo.
            var clienteActual = cliLn.TraerCliente(codUsuario);

            // Registro la Factura.
            var facturaActual = ln.RegistrarFactura(fechaHora, tipoFactura, importeTotal, formaPago, estadoId, clienteActual.Id);


            // Registro la Venta.
            var operacionActual = ln.RegistrarOperacion(fechaHora, clienteActual.Id, importeTotal, formaPago, "VE", estadoId, facturaActual.Codigo);

            // Registro Detalle de Venta.
            var detalleCompleto = RegistrarDetalleOperacion(operacionActual.Id);

            var rutaFactura = "";

            List <Carrito> productosCarrito = (List <Carrito>)Session["Carrito"];

            try
            {
                rutaFactura = GenerarFacturaPDF(facturaActual, productosCarrito);
            }
            catch
            {
                var aud = new Auditoria();
                aud.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR GENERAR FACTURA", "ERROR LEVE", "Fallo al intentar generar la factura de venta.");
            }
            // Me guardo la factura para imprimir y enviar por correo.
            Session["Factura"] = facturaActual;


            try
            {
                var cuerpoMsj = ViewBag.MENSAJE_MAIL_COMPRA;
                var asuntoMsj = "F-000" + facturaActual.Codigo.ToString();
                mensajeria.EnviarCorreo("*****@*****.**", (String)Session["EmailUsuario"], asuntoMsj, cuerpoMsj, rutaFactura);
            }
            catch
            {
                var aud = new Auditoria();
                aud.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR ENVÍO EMAIL", "ERROR LEVE", "Fallo al intentar enviar la factura por correo.");
            }

            //Borro los items del Carrito.
            Session["Carrito"] = null;
        }
예제 #24
0
        public ActionResult Login(Login model, string ReturnUrl)
        {
            ViewBag.ReturnUrl = ReturnUrl;
            if (ModelState.IsValid)
            {
                try
                {
                    Seguridad seguridad       = new Seguridad();
                    string    passwordEncrypt = Fn.EncryptText(model.Password);
                    var       usuario         = db.Usuarios
                                                .Where(u => u.UsuarioId.ToLower() == model.Usuario.ToLower() &&
                                                       u.Usuariopassword == passwordEncrypt && u.Usuarioactivo == true)
                                                .FirstOrDefault();

                    if (usuario != null)
                    {
                        CargueSeguridad(usuario);

                        var cookie = FormsAuthentication.GetAuthCookie(usuario.UsuarioId, false);
                        cookie.HttpOnly = true;
                        cookie.Expires  = DateTime.Now.AddYears(1);
                        Response.AppendCookie(cookie);

                        // fin autenticacion


                        @ViewBag.Error = "Login Success";

                        /*Genera Auditoria*/
                        Auditoria auditoria = new Auditoria();

                        auditoria.AuditoriaFecha  = System.DateTime.Now;
                        auditoria.AuditoriaHora   = System.DateTime.Now.TimeOfDay;
                        auditoria.usuarioId       = model.Usuario;
                        auditoria.AuditoriaEvento = "Login";
                        auditoria.AuditoriaDesc   = "Ingreso al sistema Correcto: " + model.Usuario;
                        auditoria.ObjetoId        = "Usuario/Login";

                        seguridad.insertAuditoria(auditoria);


                        if (ViewBag.ReturnUrl != null)
                        {
                            return(Redirect(ViewBag.ReturnUrl));
                        }

                        else
                        {
                            return(RedirectToAction("Index", "Test"));
                        }
                    }
                    else
                    {
                        @ViewBag.Error = "Usuario/Contraseña Invalida o Usuario no activo";
                    }
                }
                catch (Exception e)
                {
                    @ViewBag.Error = "Error al ingresar, por favor comunicarse con el administrador " + e.ToString();
                }
            }

            return(View(model));
        }
예제 #25
0
        public int Enviar(DataSet TabFinanc, string NmUsuario)
        {
            SqlConnection Conexao = null;

            //XmlDocument XMLRet = new XmlDocument();

            //string StringConexao = "Data Source=SERVIDOR;Initial Catalog=BD_ERP_SGE; User ID=talimpo; Password=systalimpo; MultipleActiveResultSets=True;";
            Conexao = new SqlConnection(StringConexao);
            Conexao.Open();

            Funcoes Executar = new Funcoes();

            Executar.Conexao = Conexao;

            Verificar VerificarCad = new Verificar();

            VerificarCad.Controle = Executar;

            //TipoDocumento TipoDoc = new TipoDocumento();
            //TipoDoc.Controle = Executar;

            Vendedores Vendedor = new Vendedores();

            Vendedor.Controle = Executar;

            //FormaPagamento FormaPgto = new FormaPagamento();
            //FormaPgto.Controle = Executar;

            Usuarios CadUsu = new Usuarios();

            CadUsu.Controle = Executar;

            Financeiro CadFinanceiro = new Financeiro();

            CadFinanceiro.Controle = Executar;

            Auditoria RegAuditoria = new Auditoria();

            RegAuditoria.Controle = Executar;

            //DataSet TabFinanc = new DataSet();
            //XmlNodeReader xmlReader = new XmlNodeReader(XMLCad);
            //TabReadXml(xmlReader);
            //
            int IdTipoDoc   = -1;
            int IdFormaPgto = -1;
            int IdVendedor  = -1;
            int IdUsuario   = -1;
            int IdLancServ  = 0;

            //
            for (int I = 0; I <= TabFinanc.Tables[0].Rows.Count - 1; I++)
            {
                /*IdTipoDoc = VerificarCad.Verificar_ExisteCadastro("Id_Documento", "SELECT * FROM TIPODOCUMENTO WHERE DOCUMENTO='" + TabFinanc.Tables[0].Rows[I]["NomeTipoDoc"].ToString().Trim() + "'");
                 * if (IdTipoDoc == 0)
                 * {
                 *  TipoDoc.LerDados(0);
                 *  TipoDoc.Documento = TabFinanc.Tables[0].Rows[I]["NomeTipoDoc"].ToString().Trim();
                 *  TipoDoc.GravarDados();
                 *  IdTipoDoc = TipoDoc.IdDocumento;
                 * }
                 * IdFormaPgto = VerificarCad.Verificar_ExisteCadastro("Id_FormaPgto", "SELECT * FROM FORMAPAGAMENTO WHERE FORMAPGTO='" + TabFinanc.Tables[0].Rows[I]["NomeFormaPgto"].ToString().Trim() + "'");
                 * if (IdFormaPgto == 0)
                 * {
                 *  FormaPgto.LerDados(0);
                 *  FormaPgto.FormaPgto = TabFinanc.Tables[0].Rows[I]["NomeFormaPgto"].ToString().Trim();
                 *  FormaPgto.NumParcelas = 1;
                 *  FormaPgto.Financeiro = 1;
                 *  FormaPgto.GravarDados();
                 *  IdFormaPgto = FormaPgto.IdFormaPgto;
                 * }*/
                IdVendedor = VerificarCad.Verificar_ExisteCadastro("Id_Vendedor", "SELECT * FROM VENDEDORES WHERE VENDEDOR='" + TabFinanc.Tables[0].Rows[I]["NomeVendedor"].ToString().Trim() + "'");
                if (IdVendedor == 0)
                {
                    Vendedor.LerDados(0);
                    Vendedor.Vendedor = TabFinanc.Tables[0].Rows[I]["NomeVendedor"].ToString().Trim();
                    Vendedor.Ativo    = 1;
                    Vendedor.GravarDados();
                    IdVendedor = Vendedor.IdVendedor;
                }
                IdUsuario = VerificarCad.Verificar_ExisteCadastro("Id_Usuario", "SELECT * FROM USUARIOS WHERE USUARIO='" + TabFinanc.Tables[0].Rows[I]["Usuario"].ToString().Trim() + "'");
                if (IdUsuario == 0)
                {
                    CadUsu.LerDados(0);
                    CadUsu.Usuario = TabFinanc.Tables[0].Rows[I]["Usuario"].ToString().Trim();
                    CadUsu.GravarDados();
                    IdUsuario = CadUsu.IdUsuario;
                }

                if (TabFinanc.Tables[0].Rows[I]["IdLancServ"].ToString() != "")
                {
                    IdLancServ = int.Parse(TabFinanc.Tables[0].Rows[I]["IdLancServ"].ToString());
                }
                else
                {
                    IdLancServ = 0;
                }

                //Verificando o Cadastro Pessoa
                int           IdPessoa = 0;
                SqlDataReader PesqCad;
                string        Cnpj = TabFinanc.Tables[0].Rows[I]["Cnpj"].ToString().Trim();
                if ((Cnpj == "00000000000000" || Cnpj == "11111111111111" || Cnpj == "22222222222222" || Cnpj == "33333333333333" || Cnpj == "44444444444444" ||
                     Cnpj == "55555555555555" || Cnpj == "66666666666666" || Cnpj == "77777777777777" || Cnpj == "88888888888888" || Cnpj == "99999999999999" ||
                     Cnpj == "00000000000" || Cnpj == "11111111111" || Cnpj == "22222222222" || Cnpj == "33333333333" || Cnpj == "44444444444" ||
                     Cnpj == "55555555555" || Cnpj == "66666666666" || Cnpj == "77777777777" || Cnpj == "88888888888" || Cnpj == "99999999999"))
                {
                    IdPessoa = 0;
                    if (int.Parse(TabFinanc.Tables[0].Rows[I]["IDSERVPESSOA"].ToString().Trim()) > 0)
                    {
                        PesqCad = Executar.ConsultaSQL("SELECT ID_PESSOA FROM Pessoas WHERE Ativo=1 and IdServidor=" + TabFinanc.Tables[0].Rows[I]["IDSERVPESSOA"].ToString().Trim());
                        if (PesqCad.HasRows)
                        {
                            PesqCad.Read();
                            IdPessoa = int.Parse(PesqCad["Id_Pessoa"].ToString());
                        }
                    }
                }
                else
                {
                    PesqCad = Executar.ConsultaSQL("SELECT ID_PESSOA FROM Pessoas WHERE Ativo=1 and Cnpj='" + TabFinanc.Tables[0].Rows[I]["Cnpj"].ToString().Trim() + "'");
                    if (PesqCad.HasRows)
                    {
                        PesqCad.Read();
                        IdPessoa = int.Parse(PesqCad["Id_Pessoa"].ToString());
                    }
                }

                if (IdPessoa > 0)
                {
                    CadFinanceiro.LerDados(IdLancServ);
                    CadFinanceiro.DataLanc        = DateTime.Parse(TabFinanc.Tables[0].Rows[I]["Data"].ToString());
                    CadFinanceiro.PagRec          = int.Parse(TabFinanc.Tables[0].Rows[I]["PagRec"].ToString());
                    CadFinanceiro.IdPessoa        = IdPessoa;
                    CadFinanceiro.NumDoc          = TabFinanc.Tables[0].Rows[I]["NumDocumento"].ToString().Trim();
                    CadFinanceiro.Referente       = TabFinanc.Tables[0].Rows[I]["Referente"].ToString().Trim();
                    CadFinanceiro.NotaFiscal      = TabFinanc.Tables[0].Rows[I]["NotaFiscal"].ToString().Trim();
                    CadFinanceiro.VlrOriginal     = decimal.Parse(TabFinanc.Tables[0].Rows[I]["VlrOriginal"].ToString().Replace(".", ","));
                    CadFinanceiro.Vencimento      = DateTime.Parse(TabFinanc.Tables[0].Rows[I]["Vencimento"].ToString());
                    CadFinanceiro.Observacao      = TabFinanc.Tables[0].Rows[I]["Observacao"].ToString().Trim();
                    CadFinanceiro.IdFilial        = int.Parse(TabFinanc.Tables[0].Rows[I]["ID_Filial"].ToString());
                    CadFinanceiro.IdTipoDocumento = int.Parse(TabFinanc.Tables[0].Rows[I]["IDTIPODOC"].ToString());
                    CadFinanceiro.IdVendedor      = IdVendedor;
                    CadFinanceiro.IdFormaPgto     = int.Parse(TabFinanc.Tables[0].Rows[I]["IDFORMAPGTO"].ToString());
                    CadFinanceiro.IdUsuLanc       = IdUsuario;
                    CadFinanceiro.GravarDados();
                    TabFinanc.Tables[0].Rows[I]["IDLancServ"] = CadFinanceiro.IdLanc.ToString();

                    if (IdLancServ == 0)
                    {
                        RegAuditoria.Operacao = 1;
                    }
                    else
                    {
                        RegAuditoria.Operacao = 2;
                    }
                    RegAuditoria.IdUsuario = IdUsuario;
                    RegAuditoria.Terminal  = Conexao.WorkstationId;
                    RegAuditoria.Data      = DateTime.Now;
                    RegAuditoria.IdChave   = CadFinanceiro.IdLanc;
                    RegAuditoria.Documento = CadFinanceiro.NumDoc.Trim();
                    RegAuditoria.Opcao     = "Financeiro WEB SERVICE: Filial: " + CadFinanceiro.IdFilial.ToString();
                    RegAuditoria.Descricao = "Registro Via WEBSERVICE Usuario:" + NmUsuario.Trim();
                    RegAuditoria.Registrar();
                    //XMLRet.LoadXml(TabGetXml());
                    Conexao.Dispose();
                    return(CadFinanceiro.IdLanc);
                }
                else
                {
                    return(0);
                }
            }
            return(0);
        }
        public ActionResult RegistrarUsuarioAdministrativo(FrmRegistroAdministrativo registroAdministrativo)
        {
            if (registroAdministrativo.Nombre == null && registroAdministrativo.Apellido == null && registroAdministrativo.CUIL == null && registroAdministrativo.Email == null && registroAdministrativo.Usr == null && registroAdministrativo.Psw == null && registroAdministrativo.Direccion == null && registroAdministrativo.Telefono == null)
            {
                registroAdministrativo.Nombre    = registroAdministrativo.Nombre_Eng;
                registroAdministrativo.Apellido  = registroAdministrativo.Apellido_Eng;
                registroAdministrativo.CUIL      = registroAdministrativo.CUIL_Eng;
                registroAdministrativo.Email     = registroAdministrativo.Email_Eng;
                registroAdministrativo.Usr       = registroAdministrativo.Usr_Eng;
                registroAdministrativo.Psw       = registroAdministrativo.Psw_Eng;
                registroAdministrativo.Direccion = registroAdministrativo.Direccion_Eng;
                registroAdministrativo.Telefono  = registroAdministrativo.Telefono_Eng;
            }

            try
            {
                var ws = new WebService();

                Session["Excepcion"] = "";

                if (ws.ValidarCUIT(registroAdministrativo.CUIL) == false)
                {
                    if ((String)Session["IdiomaApp"] == "Esp" || (String)Session["IdiomaApp"] == null)
                    {
                        Session["ErrorRegistro"] = "EL CUIT ES INVÁLIDO";
                    }
                    else

                    {
                        Session["ErrorRegistro"] = "INVALID CUIT NUMBER";
                    }

                    return(RedirectToAction("RegistrarUsuarioAdministrativo"));
                }

                var ln = new NegocioCuenta();

                var usuario = new Usuario();

                //Características de "Administrativo".
                usuario.Nombre   = registroAdministrativo.Nombre;
                usuario.Apellido = registroAdministrativo.Apellido;
                usuario.Email    = registroAdministrativo.Email;
                usuario.Usr      = registroAdministrativo.Usr;
                usuario.Psw      = registroAdministrativo.Psw;

                usuario.Estado    = "S";
                usuario.FechaAlta = DateTime.Now;
                usuario.FechaBaja = new DateTime(2000, 01, 01);

                usuario.Direccion   = registroAdministrativo.Direccion;
                usuario.CUIL        = registroAdministrativo.CUIL;
                usuario.Telefono    = registroAdministrativo.Telefono;
                usuario.RazonSocial = usuario.Nombre + "_" + usuario.Apellido;

                usuario.Idioma = new Idioma {
                    Id = 1, Descripcion = "Español", Abreviacion = "Esp"
                };
                usuario.PerfilUsr = new PerfilUsr {
                    Id = 2, Descripcion = "Administrativo"
                };
                usuario.Localidad = new Localidad {
                    Id = 1, Descripcion = "Implantagraf"
                };

                // Registro Usuario.
                var usrRegistrado = ln.RegistrarUsuario(usuario);

                ln.OtorgarPermisosAdministrativo(usrRegistrado.Id);

                return(RedirectToAction("Index"));
            }
            catch
            {
                var audi = new Auditoria();
                audi.grabarBitacora(DateTime.Now, "SISTEMA", "ERROR REGISTRO", "ERROR LEVE", "Error al intentar registrar usuario Administrativo.");
                return(RedirectToAction("Index", "Home"));
            }
        }
예제 #27
0
        public ActionResult Guardar(FormCollection collection)
        {
            try
            {
                ConsecutivosModel        consecutivo     = new ConsecutivosModel();
                CamposController         camposCon       = new CamposController();
                RadicacionModelo         radicacionModel = new RadicacionModelo();
                CapturaRadicacionModel   capRadMod       = new CapturaRadicacionModel();
                List <CapturaRadicacion> liscaptura      = new List <CapturaRadicacion>();
                Radicacion data    = new Radicacion();
                Extends    extends = new Extends();

                data.CliNit          = ((GestorDocumental.Models.Clientes)Session["CLIENTE"]).CliNit;
                data.Oficina         = Convert.ToInt32(collection["Oficinas"]);
                data.IdProducto      = Convert.ToInt32(collection["Productos"]);
                data.SubProducto     = Convert.ToInt32(collection["SubProductos"]);
                data.Estado          = Convert.ToInt32(collection["Estados"]);
                data.FechaRadicacion = DateTime.Now;
                data.IdUsusario      = ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario;
                data.TipoRadicacion  = collection["Tipo"].ToString();

                //JFP; BcoPopular; abril-2016
                //data.FechaLocal = DateTime.Parse(collection["FechaLugarActual"].ToString());
                LogRepository.registro("RadicacionController metodo Guardar data.FechaLocal: " + DateTime.Now + " ;data.FechaRadicacion: " + data.FechaRadicacion);
                data.FechaLocal = DateTime.Now;


                if (data.Estado == 120)
                {
                    if (collection["NegAnuladoConfirmado"].ToString().Trim() == "")
                    {
                        data.CodBarras = ConsecutivosModel.ConsecutivoRadicado(((Clientes)Session["CLIENTE"]).Codlabel, ((Clientes)Session["CLIENTE"]).CodParametros);
                    }
                    else
                    {
                        /*EN ESTA PARTE SE HACE LA ANULACION DE NEGOCIO*/
                        var datos = db.spAnulacionNegocios(decimal.Parse(collection["NegAnuladoConfirmado"].ToString()), ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario, string.Empty, 1);
                        data.CodBarras = datos.ToArray()[0];

                        AuditoriaModel am             = new AuditoriaModel();
                        Auditoria      nuevaAuditoria = new Auditoria();

                        nuevaAuditoria.aud_idUsuario     = ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario;
                        nuevaAuditoria.aud_fechaHora     = DateTime.Now;
                        nuevaAuditoria.aud_evento        = "Anulaciones";
                        nuevaAuditoria.aud_observaciones = "Se anulo el negocio No. " + collection["NegAnuladoConfirmado"].ToString() + " y se genero con el codigo de barras " + data.CodBarras;
                        //Inserta Auditoria
                        am.AddAuditoria(nuevaAuditoria);
                    }

                    ViewData["Lable"] = data.CodBarras;

                    string valor = collection["SubProductos"].ToString();

                    valor = subProducto(int.Parse(collection["SubProductos"].ToString()));

                    if (collection["Sociedad"] != "-1" && (!(string.IsNullOrEmpty(collection["Sociedad"].ToString().Trim())) || !(string.IsNullOrWhiteSpace(collection["Sociedad"].ToString().Trim()))))
                    {
                        ViewData["descSociedad"] = CodigosCampos(int.Parse(collection["Sociedad"]));
                    }

                    //Recepcion del archivo virtual
                    if (data.TipoRadicacion == "virtual")
                    {
                        RecepcionarArchivo(data);
                    }
                }
                else if (data.Estado == 130)
                {
                    if (collection["Causal"] != "-1" && (!(string.IsNullOrEmpty(collection["Causal"].ToString().Trim())) || !(string.IsNullOrWhiteSpace(collection["Causal"].ToString().Trim()))))
                    {
                        ViewData["motivoDevolucion"] = CodigosCampos(int.Parse(collection["Causal"]));
                    }

                    if (collection["NegAnuladoConfirmado"].ToString().Trim() != "")
                    {
                        /*EN ESTA PARTE SE HACE LA ANULACION DE NEGOCIO*/
                        var datos = db.spAnulacionNegocios(decimal.Parse(collection["NegAnuladoConfirmado"].ToString()), ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario, string.Empty, 1);

                        AuditoriaModel am             = new AuditoriaModel();
                        Auditoria      nuevaAuditoria = new Auditoria();

                        nuevaAuditoria.aud_idUsuario     = ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario;
                        nuevaAuditoria.aud_fechaHora     = DateTime.Now;
                        nuevaAuditoria.aud_evento        = "Anulaciones";
                        nuevaAuditoria.aud_observaciones = "Se anulo el negocio No. " + collection["NegAnuladoConfirmado"].ToString() + " y se genero como una devolucion ";
                        //Inserta Auditoria
                        am.AddAuditoria(nuevaAuditoria);
                    }
                }

                var idRadicacion = radicacionModel.Add(data);

                //Consulto el formulario
                var formulario = collection["SubProductos"] + collection["Estados"];

                //Obtengo lo campos del formulario
                //    var campos = camposCon.getCamposFormulario(int.Parse(formulario));
                IEnumerable <dynamic> campos = Session["listaCampos"] as dynamic;

                //obtengo los datos desde la interfaz
                //  var values = (collection["_value"]).Split(',').ToArray();
                var llaves = collection.AllKeys;

                for (int i = 0; i < llaves.Length; i++)
                {
                    if (llaves[i].Contains("idCampo_"))
                    {
                        CapturaRadicacion nueva = new CapturaRadicacion();

                        string idcampo = llaves[i].Split(new String[] { "idCampo_" },
                                                         StringSplitOptions.RemoveEmptyEntries)[0].ToString();

                        var campo = campos.Where(x => Extends.ObtenerValorReflexion(x, "CampId").ToString() == idcampo).FirstOrDefault();

                        if (campo.TcId == 5)
                        {
                            nueva.IdRadicacion = idRadicacion;
                            nueva.IdCampo      = campo.CampId;
                            nueva.Valor        = CodigoDelItemLista(int.Parse(collection[llaves[i]]));
                            nueva.IdUsuario    = data.IdUsusario;
                            nueva.FechaCaptura = DateTime.Now;
                            nueva.IdFormulario = campo.CodFormulario;
                        }
                        else
                        {
                            nueva.IdRadicacion = idRadicacion;
                            nueva.IdCampo      = campo.CampId;
                            nueva.Valor        = collection[llaves[i]];
                            nueva.IdUsuario    = data.IdUsusario;
                            nueva.FechaCaptura = DateTime.Now;
                            nueva.IdFormulario = campo.CodFormulario;
                        }

                        liscaptura.Add(nueva);
                    }
                }


                capRadMod.InsertarCapturaRadicacion(liscaptura);

                ViewData["estado"]           = (collection["Estados"]).ToString();
                ViewData["estadoDescrip"]    = estado(int.Parse(collection["Estados"].ToString()));
                ViewData["subProducto"]      = subProducto(int.Parse(collection["SubProductos"].ToString()));
                ViewData["Oficina"]          = oficina(int.Parse(collection["Oficinas"].ToString()));
                ViewData["estadoRadicacion"] = data.TipoRadicacion;
                ViewData["idRadicacion"]     = idRadicacion;

                //BUSCO EN LOS STRING ESTOS CARACTERES ESPECIALES Y LOS REEMPLAZO, PRINCIPALMENTE EN LA SOCIEDAD
                char cr  = (char)13;
                char lf  = (char)10;
                char tab = (char)9;

                ///Se valida estado de la radicacion para guardar el codigo de barrar y almacenarlo en la tabla codigoBarras
                if (data.Estado == 120)
                {
                    if (data.TipoRadicacion.Trim() == "fisico")
                    {
                        char[] MyChar          = { ' ' };
                        var    nombreImpresora = db.Usuarios.Where(x => x.IdUsuario == data.IdUsusario).First().Periferico_Impresora;
                        var    respuesta       = extends.CrearEImprimirEtiqueta(ViewData["Oficina"].ToString().TrimStart(MyChar).TrimEnd(MyChar),
                                                                                collection["FechaLugarActual"].ToString().TrimStart(MyChar).TrimEnd(MyChar),
                                                                                ViewData["descSociedad"].ToString().Trim().Replace("\r", "").Replace("\n", "").Replace(cr, ' ').Replace(lf, ' ').Replace(tab, ' ').Trim(),
                                                                                data.CodBarras.Trim(),
                                                                                nombreImpresora.Trim(),
                                                                                data.IdUsusario,
                                                                                (idRadicacion).ToString().Trim());
                    }
                }

                return(View());
            }
            catch (Exception exception)
            {
                //LogRepository.registro("Error en RadicacionController metodo Guardar " + exception.Message + " linea " + exception.StackTrace + "Usuario" + ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario);
                LogRepository.registro("Error en RadicacionController metodo Guardar " + exception.Message + " linea " + exception.StackTrace + "Usuario" + ((Usuarios)Session["USUARIO_LOGUEADO"]).IdUsuario);
                return(base.RedirectToAction("Index", "Radicacion"));
                //throw;
            }
        }
        public JsonResult ListarFechaPorOperario(string FechaApertura = "", int IdOperador = 0)
        {
            try
            {
                var         objResult      = new Object();
                CultureInfo culture        = new CultureInfo("es-PE");
                DateTime    dFechaApertura = Convert.ToDateTime(FechaApertura);

                ProcesoViewModel VM = new ProcesoViewModel();
                VM.ListaRetoque = new RetoqueLG().ListarFechaPorOperario(dFechaApertura, IdOperador, Auditoria.IsAdmin()).ToList();
                objResult       = new
                {
                    iTipoResultado = 1,
                    ListaRetoque   = VM.ListaRetoque.ToList()
                };
                return(Json(objResult, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #29
0
 /// <summary>
 /// Construtores
 /// </summary>
 /// <param name="a">Auditoria</param>
 public AuditoriaCompleta(Auditoria a)
 {
     this.a   = a;
     codVulns = new List <int>();
 }
        public JsonResult RegistrarRetoqueProductoDetalle(int IdRetoqueProductoDetalle, int IdRetoqueProducto, string FechaApertura, string Descripcion, string HoraInicio, string HoraFin)
        {
            bool        Resultado = false;
            int         isHoras;
            string      mensaje        = "Ocurrio un error al intentar realizar la acción.";
            CultureInfo culture        = new CultureInfo("es-PE");
            DateTime    dFechaApertura = Convert.ToDateTime(FechaApertura);
            var         objResult      = new object();

            try
            {
                TimeSpan TotalHoras;
                TotalHoras = Convert.ToDateTime(HoraFin).Subtract(Convert.ToDateTime(HoraInicio));


                ProcesoViewModel oRetoqueProducto = new ProcesoViewModel();
                oRetoqueProducto.RetoqueProductoDetalle = new RetoqueProductoDetalle()
                {
                    IdRetoqueProductoDetalle          = IdRetoqueProductoDetalle,
                    IdRetoqueProducto                 = IdRetoqueProducto,
                    DescripcionRetoqueProductoDetalle = Descripcion,
                    FechaApertura = dFechaApertura,
                    HoraInicioRetoqueProductoDetalle = HoraInicio,
                    HoraFinRetoqueProductoDetalla    = HoraFin,
                    TotalRetoqueProductoDetalle      = TotalHoras.ToString(),
                    UsuarioCreacion     = Auditoria.ObtenerNombreUsuario(),
                    UsuarioModificacion = Auditoria.ObtenerNombreUsuario(),
                    FechaModificacion   = DateTime.Now
                };

                //Valida Horas

                //isHoras = new RetoqueProductoLG().ValidarHorasRetoqueProducto(oRetoqueProducto.RetoqueProducto);

                //if (isHoras != 0)
                //{
                //    objResult = new
                //    {
                //        iTipoResultado = false,
                //        iResultado = false,
                //        vMensaje = "El rango de horas se encuentra registrado."
                //    };

                //    return Json(objResult);
                //}

                //Registrar
                if (IdRetoqueProductoDetalle > 0)
                {
                    Resultado = new RetoqueProductoDetalleLG().ActualizarRetoqueProductoDetalle(oRetoqueProducto.RetoqueProductoDetalle);
                }
                else
                {
                    Resultado = new RetoqueProductoDetalleLG().InsertarRetoqueProductoDetalle(oRetoqueProducto.RetoqueProductoDetalle);
                }
                if (Resultado)
                {
                    if (IdRetoqueProductoDetalle > 0)
                    {
                        mensaje = "Se modificó correctamente.";
                    }
                    else
                    {
                        mensaje = "Se registró correctamente.";
                    }
                }
                objResult = new
                {
                    iTipoResultado = Resultado,
                    vMensaje       = mensaje
                };

                return(Json(objResult));
            }
            catch (Exception ex)
            {
                objResult = new { iTipoResultado = Resultado, iResultado = true, vMensaje = ex.Message };
                return(Json(objResult));
            }
        }
        public JsonResult EliminarRetoqueProductoDetalle(int IdRetoqueProductoDetalle)
        {
            ;
            bool   Resultado = false;
            string mensaje   = "Ocurrio un error al intentar realizar la acción.";
            var    objResult = new object();

            try
            {
                Resultado = new RetoqueProductoDetalleLG().EliminarRetoqueProductoDetalle(IdRetoqueProductoDetalle, Auditoria.ObtenerNombreUsuario());


                if (Resultado)
                {
                    mensaje = "Se eliminó correctamente.";
                }
                objResult = new
                {
                    iTipoResultado = Resultado,
                    vMensaje       = mensaje
                };

                return(Json(objResult));
            }
            catch (Exception ex)
            {
                objResult = new { iTipoResultado = Resultado, vMensaje = ex.Message };
                return(Json(objResult));
            }
        }
예제 #32
0
 public ActionResult EliminarEmpresa(long IdEmpresa)
 {
     Metodos.DeleteEmpresa(IdEmpresa);
     Auditoria.RegistarAccion(eTipoAccion.EliminarEmpresa);
     return(RedirectToAction("Empresa", "Administracion", new { modId = 11010300 }));
 }