public string getAllAusencias(int idUsuario)
        {
            List <Ausencia> data = new List <Ausencia>();

            try
            {
                SqlDataReader dr = consultar($"EXEC get_all_ausencias {idUsuario}");

                while (dr.Read())
                {
                    Ausencia a = new Ausencia();
                    a.TN_Id_Ausencia = int.Parse(dr[0].ToString());
                    int    aux  = dr[1].ToString().IndexOf(" ");
                    String aux2 = dr[1].ToString().Substring(0, aux);
                    a.TF_Fecha_Salida = DateTime.Parse(aux2).ToString("dd/MM/yyyy");
                    aux  = dr[2].ToString().IndexOf(" ");
                    aux2 = dr[2].ToString().Substring(0, aux);
                    a.TF_Fecha_Regreso = DateTime.Parse(aux2).ToString("dd/MM/yyyy");
                    a.TC_Tipo_Ausencia = dr[3].ToString();

                    data.Add(a);
                }
            }
            catch (SqlException e)
            {
                Console.WriteLine(e.ToString());
            }
            this.closeCon();
            return(JsonConvert.SerializeObject(data));
        }
        // Obtener una ausencia
        public string getAusencia(Ausencia _ausencia)
        {
            Ausencia ausencia = null;

            try
            {
                SqlDataReader dataReader = consultar("EXEC get_ausencia '" + _ausencia.TN_Id_Ausencia + "'");
                if (dataReader != null)
                {
                    while (dataReader.Read())
                    {
                        string[] fecha_salida  = dataReader["TF_Fecha_Salida"].ToString().Split(' ');
                        string[] fecha_regreso = dataReader["TF_Fecha_Regreso"].ToString().Split(' ');

                        ausencia.TN_Id_Ausencia   = int.Parse(dataReader["TN_Id_Ausencia"].ToString());
                        ausencia.TF_Fecha_Salida  = fecha_salida[0];
                        ausencia.TF_Fecha_Regreso = fecha_regreso[0];
                        ausencia.tipoAusencia     = new TipoAusencia();
                        ausencia.tipoAusencia.TN_Id_Tipo_Ausencia = int.Parse(dataReader["TN_Id_Tipo_Ausencia"].ToString());
                        ausencia.tipoAusencia.TC_Tipo_Ausencia    = dataReader["TC_Tipo_Ausencia"].ToString();
                    }
                }
            }
            catch (SqlException e)
            {
                Console.WriteLine(e.ToString());
                ausencia = null;
            }
            this.closeCon();
            return(JsonConvert.SerializeObject(ausencia));
        }
示例#3
0
        // Editar el ausencia
        public int EditarAusencia(string idAusencia, string idUsuario, string tipoNuevo, string fechaSalidaNuevo, string fechaRegresoNuevo)
        {
            int respuesta = 0;

            int    id      = int.Parse(idAusencia);
            int    usuario = int.Parse(idUsuario);
            string fechaS  = fechaSalidaNuevo + " 00:00:00.000";
            string fechaR  = fechaRegresoNuevo + " 00:00:00.000";

            Ausencia ausenciaNueva = new Ausencia();

            ausenciaNueva.TN_Id_Ausencia      = id;
            ausenciaNueva.TN_Id_Usuario       = usuario;
            ausenciaNueva.TN_Id_Tipo_Ausencia = int.Parse(tipoNuevo);
            ausenciaNueva.TF_Fecha_Salida     = fechaSalidaNuevo;
            ausenciaNueva.TF_Fecha_Regreso    = fechaRegresoNuevo;

            //Llamado a accedo de datos
            try
            {
                respuesta = ausenciaAD.updateAusencia(ausenciaNueva); // Resultado de la operacion
                Console.WriteLine(respuesta);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
            return(respuesta);
        }
示例#4
0
        //TODO se comenta por que se debe cambiar el guardado
        public bool ProrrogarAusencia(EDAusencia prorrogar)
        {
            try
            {
                var result = false;
                using (var context = new SG_SSTContext())
                {
                    var ausenciaPadre = context.Tbl_Ausencias.Where(au => au.Pk_Id_Ausencias == prorrogar.IdAusencia).Select(au => au.FK_Id_Ausencias_Padre).FirstOrDefault();
                    if (ausenciaPadre > 0)
                    {
                        prorrogar.IdAusenciaPadre = ausenciaPadre;
                    }
                    else
                    {
                        prorrogar.IdAusenciaPadre = prorrogar.IdAusencia;
                    }

                    var datosAusenciaPadre = context.Tbl_Ausencias.Where(au => au.Pk_Id_Ausencias == prorrogar.IdAusencia).Select(au => au).FirstOrDefault();

                    var nuevaAusencia = new Ausencia();
                    nuevaAusencia.FK_Id_Ausencias_Padre = prorrogar.IdAusenciaPadre;
                    nuevaAusencia.Documento_Persona     = datosAusenciaPadre.Documento_Persona;
                    nuevaAusencia.NitEmpresa            = datosAusenciaPadre.NitEmpresa;
                    nuevaAusencia.FK_Id_EmpresaUsuaria  = datosAusenciaPadre.FK_Id_EmpresaUsuaria;
                    nuevaAusencia.FK_Id_Departamento    = datosAusenciaPadre.FK_Id_Departamento;
                    nuevaAusencia.FK_Id_Municipio       = datosAusenciaPadre.FK_Id_Municipio;
                    nuevaAusencia.FK_Id_Contingencia    = datosAusenciaPadre.FK_Id_Contingencia;
                    nuevaAusencia.FK_Id_Diagnostico     = datosAusenciaPadre.FK_Id_Diagnostico;
                    nuevaAusencia.FK_Id_Sede            = datosAusenciaPadre.FK_Id_Sede;
                    nuevaAusencia.FechaInicio           = prorrogar.FechaInicio;
                    nuevaAusencia.Fecha_Fin             = prorrogar.FechaFin;
                    nuevaAusencia.FK_Id_Proceso         = datosAusenciaPadre.FK_Id_Proceso;
                    nuevaAusencia.DiasAusencia          = prorrogar.DiasAusencia;
                    nuevaAusencia.Costo = prorrogar.Costo;
                    nuevaAusencia.Factor_Prestacional = prorrogar.FactorPrestacional;
                    nuevaAusencia.FK_Id_Ocupacion     = datosAusenciaPadre.FK_Id_Ocupacion;
                    nuevaAusencia.Sexo             = datosAusenciaPadre.Sexo;
                    nuevaAusencia.Tipo_Vinculacion = datosAusenciaPadre.Tipo_Vinculacion;
                    nuevaAusencia.Edad             = datosAusenciaPadre.Edad;
                    nuevaAusencia.Eps               = datosAusenciaPadre.Eps;
                    nuevaAusencia.NombrePersona     = datosAusenciaPadre.NombrePersona;
                    nuevaAusencia.FechaModificacion = DateTime.Now;
                    nuevaAusencia.FechaRegistro     = DateTime.Now;

                    context.Tbl_Ausencias.Add(nuevaAusencia);
                    context.SaveChanges();
                    result = true;
                }
            }
            catch (Exception ex)
            {
                var log = new RegistraLog();
                log.RegistrarError(typeof(AusenciaManager), string.Format("Error Prorrogando la ausencias: {0}, {1}. Error: {2}", DateTime.Now, prorrogar.FechaInicio.ToString(), prorrogar.FechaFin.ToString(), ex.StackTrace), ex);
                return(false);
            }
            return(true);
        }
        public JsonResult Obtener(int codigo)
        {
            AusenciaRN ausenciaRN = new AusenciaRN();
            Ausencia   ausencia   = new Ausencia();

            ausencia.TN_Id_Ausencia = codigo;

            return(Json(new { resultado = ausenciaRN.ObtenerAusencia(ausencia) })); // Retornar el dato solicitado
        }
示例#6
0
        public virtual void Editar(long id, string oper, Ausencia modelo)
        {
            if (!oper.Equals("edit", StringComparison.InvariantCultureIgnoreCase)) throw new ValidationErrorException();

            var session = SessionFactory.GetCurrentSession();

            var modelFromDb = session.QueryOver<Ausencia>().Where(x => x.Id == id).SingleOrDefault();

            UpdateModel(modelFromDb);

            AgregarReferencias(modelFromDb);

            ShowMessages(ResponseMessage.Success());
        }
示例#7
0
        /// <summary>
        /// Guarda en base de datos una nueva ausencia asociada
        /// a un afiliado
        /// </summary>
        /// <param name="ausencia"></param>
        /// <returns></returns>
        public bool GuardarAusencia(EDAusencia ausencia)
        {
            try
            {
                var result = false;
                using (var context = new SG_SSTContext())
                {
                    var nuevaAusencia = new Ausencia();
                    nuevaAusencia.NombrePersona        = ausencia.NombrePersona;
                    nuevaAusencia.Documento_Persona    = ausencia.Documento;
                    nuevaAusencia.NitEmpresa           = ausencia.IdEmpresa;
                    nuevaAusencia.FK_Id_EmpresaUsuaria = ausencia.IdEmpresaUsuaria;
                    nuevaAusencia.FK_Id_Departamento   = ausencia.idDepartamento;
                    nuevaAusencia.FK_Id_Municipio      = ausencia.idMunicipio;
                    nuevaAusencia.FK_Id_Contingencia   = ausencia.IdContingencia;
                    nuevaAusencia.FK_Id_Diagnostico    = ausencia.IdDiagnostico;
                    nuevaAusencia.FK_Id_Sede           = ausencia.IdSede;
                    nuevaAusencia.FK_Id_Proceso        = ausencia.IdProceso;
                    nuevaAusencia.FechaInicio          = ausencia.FechaInicio;
                    nuevaAusencia.Fecha_Fin            = ausencia.FechaFin;
                    nuevaAusencia.DiasAusencia         = ausencia.DiasAusencia;
                    nuevaAusencia.Costo = ausencia.Costo;
                    nuevaAusencia.Factor_Prestacional = ausencia.FactorPrestacional;
                    nuevaAusencia.Observaciones       = ausencia.Observaciones;
                    nuevaAusencia.FK_Id_Ocupacion     = ausencia.IdOcupacion;
                    nuevaAusencia.Sexo             = ausencia.Sexo;
                    nuevaAusencia.Tipo_Vinculacion = ausencia.TipoVinculacion;
                    nuevaAusencia.Edad             = ausencia.Edad;
                    nuevaAusencia.Eps = ausencia.Eps;
                    nuevaAusencia.FechaModificacion = DateTime.Now;
                    nuevaAusencia.FechaRegistro     = DateTime.Now;

                    context.Tbl_Ausencias.Add(nuevaAusencia);
                    context.SaveChanges();
                    result = true;
                    return(result);

                    var log = new RegistraLog();
                    log.RegistrarError(typeof(AusenciaManager), string.Format("Guardado la ausencias: {0}, {1}", DateTime.Now, nuevaAusencia.FechaInicio.ToString(), nuevaAusencia.Fecha_Fin.ToString()), new Exception());
                }
            }
            catch (Exception ex)
            {
                var log = new RegistraLog();
                log.RegistrarError(typeof(AusenciaManager), string.Format("Erorr en el guardado de ausencias: {0}, {1}. Error: {2}", DateTime.Now, ausencia.FechaInicio.ToString(), ausencia.FechaFin.ToString(), ex.StackTrace), ex);
                return(false);
            }
        }
        public string getAusencia(int id)
        {
            Ausencia      a  = new Ausencia();
            SqlDataReader dr = consultar($"EXEC sp_get_ausencia {id}");

            dr.Read();
            int    aux  = dr[0].ToString().IndexOf(" ");
            String aux2 = dr[0].ToString().Substring(0, aux);

            a.TF_Fecha_Salida = DateTime.Parse(aux2).ToString("dd/MM/yyyy");
            aux  = dr[1].ToString().IndexOf(" ");
            aux2 = dr[1].ToString().Substring(0, aux);
            a.TF_Fecha_Regreso    = DateTime.Parse(aux2).ToString("dd/MM/yyyy");
            a.TN_Id_Tipo_Ausencia = int.Parse(dr[2].ToString());
            this.closeCon();
            return(JsonConvert.SerializeObject(a));
        }
示例#9
0
        // Obtener una ausencia solicitada
        public string ObtenerAusencia(Ausencia _ausencia)
        {
            AusenciaAD auseciaAD = new AusenciaAD();
            string     respuesta = null;

            //Llamado a accedo de datos
            try
            {
                respuesta = auseciaAD.getAusencia(_ausencia); // Resultado de la operacion

                Console.WriteLine(respuesta);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
            return(respuesta);
        }
        public int updateAusencia(Ausencia ausencia)
        {
            int salida = 0;

            try
            {
                SqlDataReader dr = consultar($"EXEC update_ausencias '{ ausencia.TF_Fecha_Salida}','{ausencia.TF_Fecha_Regreso}',{ausencia.TN_Id_Tipo_Ausencia},{ausencia.TN_Id_Usuario},{ausencia.TN_Id_Ausencia}");
                dr.Read();
                salida = int.Parse(dr[0].ToString());
            }
            catch (SqlException e)
            {
                Console.WriteLine(e.ToString());
                salida = -1;
            }
            this.closeCon();
            return(salida);
        }
示例#11
0
        public void SaveAusencia(int cursoestudiante, bool ausente, DateTime fecha)
        {
            var NewAusenciaRecord = new Ausencia
            {
                IdCursosEstudiantes = cursoestudiante,
                Ausente             = ausente,
                Fecha = fecha
            };

            try
            {
                dbCtx.Ausencias.Add(NewAusenciaRecord);
                dbCtx.SaveChanges();
            }
            catch (Exception)
            {
                //ReloadEntity(NewAusenciaRecord);
                throw;
            }
        }
示例#12
0
        public Ausencia getAusencia(int id)
        {
            AusenciaAD data      = new AusenciaAD();
            string     respuesta = null;
            Ausencia   a         = new Ausencia();

            try
            {
                respuesta = data.getAusencia(id);
                if (respuesta != null)
                {
                    a = JsonConvert.DeserializeObject <Ausencia>(respuesta);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }
            return(a);
        }
示例#13
0
        public int InsertarAusencia(string fechai, string fechaf, int motivo, int id)
        {
            AusenciaAD a         = new AusenciaAD();
            int        respuesta = -1;

            try
            {
                Ausencia ausencia = new Ausencia();
                ausencia.TF_Fecha_Salida     = fechai;
                ausencia.TF_Fecha_Regreso    = fechaf;
                ausencia.TN_Id_Tipo_Ausencia = motivo;
                ausencia.TN_Id_Usuario       = id;
                respuesta = a.insertAusencia(ausencia);
            }
            catch (IOException e)
            {
                Console.WriteLine(e.ToString());
                respuesta = -1;
            }
            return(respuesta);
        }
        public string getHistoricoAusencias()
        {
            List <Ausencia> lista = new List <Ausencia>();

            try
            {
                SqlDataReader dataReader = consultar($"exec sp_historico_ausencias");

                while (dataReader.Read())
                {
                    Ausencia ausencia = new Ausencia();

                    string[] fecha_salida  = dataReader["TF_Fecha_Salida"].ToString().Split(' ');
                    string[] fecha_regreso = dataReader["TF_Fecha_Regreso"].ToString().Split(' ');

                    ausencia.TN_Id_Ausencia   = int.Parse(dataReader["TN_Id_Ausencia"].ToString());
                    ausencia.TF_Fecha_Salida  = fecha_salida[0];
                    ausencia.TF_Fecha_Regreso = fecha_regreso[0];
                    ausencia.TN_Id_Usuario    = int.Parse(dataReader["TN_Id_Usuario"].ToString());

                    ausencia.empleado = new Empleado();
                    ausencia.empleado.TC_Identificacion   = dataReader["TC_Identificacion"].ToString();
                    ausencia.empleado.TC_Nombre_Usuario   = dataReader["TC_Nombre_Usuario"].ToString();
                    ausencia.empleado.TC_Primer_Apellido  = dataReader["TC_Primer_Apellido"].ToString();
                    ausencia.empleado.TC_Segundo_Apellido = dataReader["TC_Segundo_Apellido"].ToString();

                    ausencia.tipoAusencia = new TipoAusencia();
                    ausencia.tipoAusencia.TN_Id_Tipo_Ausencia = int.Parse(dataReader["TN_Id_Tipo_Ausencia"].ToString());
                    ausencia.tipoAusencia.TC_Tipo_Ausencia    = dataReader["TC_Tipo_Ausencia"].ToString();

                    lista.Add(ausencia);
                }
            }
            catch (SqlException e)
            {
                Console.WriteLine(e.ToString());
            }
            this.closeCon();
            return(JsonConvert.SerializeObject(lista));
        }
示例#15
0
        protected Ausencia AgregarReferencias(Ausencia modelo)
        {
            modelo.Profesional = ObtenerProfesionalSeleccionado();

            //Limpio Cache de turnos
            var query = QueryFactory.Create<IObtenerTurnosProfesionalQuery>();
            query.ProfesionalId = modelo.Profesional.Id;
            query.ClearCache();

            return modelo;
        }
示例#16
0
        public EDCargueMasivo InsertarAusenciasCargueMasivo(List <EDAusencia> AusenciasMasivo)
        {
            bool result = true;
            List <EDAusencia> Ausenciastmp = new List <EDAusencia>();
            EDCargueMasivo    edCargue     = new EDCargueMasivo();

            edCargue.Message = string.Empty;
            int contador = 1;

            using (SG_SSTContext context = new SG_SSTContext())
            {
                using (var Transaction = context.Database.BeginTransaction())
                {
                    try
                    {
                        int idpadre = 0;
                        foreach (EDAusencia ausencia in AusenciasMasivo)
                        {
                            contador++;
                            Ausencia nuevaAusencia = new Ausencia();

                            bool puedeCrear = VerificarCrucesEnCargueMasivo(ausencia, Ausenciastmp);
                            if (puedeCrear)
                            {
                                if (ausencia.consecutivoPadre > 0)
                                {
                                    nuevaAusencia.FK_Id_Ausencias_Padre = idpadre;
                                    nuevaAusencia.Documento_Persona     = ausencia.Documento;
                                    nuevaAusencia.NitEmpresa            = ausencia.IdEmpresa;
                                    nuevaAusencia.FK_Id_EmpresaUsuaria  = ausencia.IdEmpresaUsuaria;
                                    nuevaAusencia.FK_Id_Departamento    = ausencia.idDepartamento;
                                    nuevaAusencia.FK_Id_Municipio       = ausencia.idMunicipio;
                                    nuevaAusencia.FK_Id_Contingencia    = ausencia.IdContingencia;
                                    nuevaAusencia.FK_Id_Diagnostico     = ausencia.IdDiagnostico;
                                    nuevaAusencia.FK_Id_Sede            = ausencia.IdSede;
                                    nuevaAusencia.FK_Id_Proceso         = ausencia.IdProceso;
                                    nuevaAusencia.FechaInicio           = ausencia.FechaInicio;
                                    nuevaAusencia.Fecha_Fin             = ausencia.FechaFin;
                                    nuevaAusencia.DiasAusencia          = ausencia.DiasAusencia;
                                    nuevaAusencia.Costo = ausencia.Costo;
                                    nuevaAusencia.Factor_Prestacional = ausencia.FactorPrestacional;
                                    nuevaAusencia.Observaciones       = ausencia.Observaciones;
                                    nuevaAusencia.FK_Id_Ocupacion     = ausencia.IdOcupacion;
                                    nuevaAusencia.Sexo             = ausencia.Sexo;
                                    nuevaAusencia.Tipo_Vinculacion = ausencia.TipoVinculacion;
                                    nuevaAusencia.Edad             = ausencia.Edad;
                                    nuevaAusencia.Eps = ausencia.Eps;
                                    nuevaAusencia.FechaModificacion = DateTime.Now;
                                    nuevaAusencia.FechaRegistro     = DateTime.Now;
                                    nuevaAusencia.NombrePersona     = ausencia.NombrePersona;

                                    context.Tbl_Ausencias.Add(nuevaAusencia);
                                    context.SaveChanges();
                                    Ausenciastmp.Add(ausencia);
                                }
                                else
                                {
                                    nuevaAusencia.Documento_Persona    = ausencia.Documento;
                                    nuevaAusencia.NitEmpresa           = ausencia.IdEmpresa;
                                    nuevaAusencia.FK_Id_EmpresaUsuaria = ausencia.IdEmpresaUsuaria;
                                    nuevaAusencia.FK_Id_Departamento   = ausencia.idDepartamento;
                                    nuevaAusencia.FK_Id_Municipio      = ausencia.idMunicipio;
                                    nuevaAusencia.FK_Id_Contingencia   = ausencia.IdContingencia;
                                    nuevaAusencia.FK_Id_Diagnostico    = ausencia.IdDiagnostico;
                                    nuevaAusencia.FK_Id_Sede           = ausencia.IdSede;
                                    nuevaAusencia.FK_Id_Proceso        = ausencia.IdProceso;
                                    nuevaAusencia.FechaInicio          = ausencia.FechaInicio;
                                    nuevaAusencia.Fecha_Fin            = ausencia.FechaFin;
                                    nuevaAusencia.DiasAusencia         = ausencia.DiasAusencia;
                                    nuevaAusencia.Costo = ausencia.Costo;
                                    nuevaAusencia.Factor_Prestacional = ausencia.FactorPrestacional;
                                    nuevaAusencia.Observaciones       = ausencia.Observaciones;
                                    nuevaAusencia.FK_Id_Ocupacion     = ausencia.IdOcupacion;
                                    nuevaAusencia.Sexo             = ausencia.Sexo;
                                    nuevaAusencia.Tipo_Vinculacion = ausencia.TipoVinculacion;
                                    nuevaAusencia.Edad             = ausencia.Edad;
                                    nuevaAusencia.Eps = ausencia.Eps;
                                    nuevaAusencia.FechaModificacion = DateTime.Now;
                                    nuevaAusencia.FechaRegistro     = DateTime.Now;
                                    nuevaAusencia.NombrePersona     = ausencia.NombrePersona;

                                    context.Tbl_Ausencias.Add(nuevaAusencia);
                                    context.SaveChanges();
                                    idpadre = nuevaAusencia.Pk_Id_Ausencias;
                                    Ausenciastmp.Add(ausencia);
                                }
                            }
                            else
                            {
                                Transaction.Rollback();
                                edCargue.Message = "Proceso fallido, las fechas del registro de la fila " + contador + " se cruzan con registros ya reportados. ";
                                result           = false;
                                break;
                            }
                        }
                        if (result)
                        {
                            Transaction.Commit();
                            edCargue.Message = "OK";
                        }
                    }
                    catch
                    {
                        Transaction.Rollback();
                        edCargue.Message = "El proceso de cargue fallo, comuniquese con el administrador del sistema";
                    }
                }
            }

            return(edCargue);
        }
示例#17
0
        public virtual void Nuevo(string oper, Ausencia modelo, int paginaId = 0)
        {
            if (!oper.Equals("add", StringComparison.InvariantCultureIgnoreCase)) throw new ValidationErrorException();

            AgregarReferencias(modelo);

            SessionFactory.GetCurrentSession().Save(modelo);

            ShowMessages(ResponseMessage.Success());
        }