Ejemplo n.º 1
0
 private void EnviarDetalleSolicitud()
 {
     if (this.ValidateChildren(ValidationConstraints.Enabled))
     {
         if (dgvDetallesSolicitudes.CurrentRow == null)
         {
             return;
         }
         vw2_SolicitudAutorizacionDetalle obj = dgvDetallesSolicitudes.CurrentRow.DataBoundItem as vw2_SolicitudAutorizacionDetalle;
         vw2_SolicitudAutorizacionDetalle objSolicitudAutorizacionDetalle = objSolicitudAutorizacionDetalleBL.GetDetalleSolicitudPorNumeroSolicitudId(obj.Nro_Solicitud, obj.DetalleId);
         if (Convert.ToBoolean(objSolicitudAutorizacionDetalle.Procesado))
         {
             return;
         }
         if (!(Convert.ToBoolean(objSolicitudAutorizacion.ValidadoSIS) || Convert.ToBoolean(objSolicitudAutorizacion.ValidadoFISSAL)))
         {
             objSolicitudAutorizacion.SexoId          = Convert.ToByte(cboPacienteSexo.SelectedValue);
             objSolicitudAutorizacion.TipoDocumentoId = Convert.ToByte(cboPacienteTipoDocumento.SelectedValue);
             objSolicitudAutorizacion.TipoRegimenId   = Convert.ToByte(cboPacienteTipoRegimen.SelectedValue);
             objSolicitudAutorizacion.ApellidoMaterno = txtPacienteApellidoMaterno.Text.Trim();
             objSolicitudAutorizacion.ApellidoPaterno = txtPacienteApellidoPaterno.Text.Trim();
             objSolicitudAutorizacion.Nacimiento      = Convert.ToDateTime(txtPacienteFechaNacimiento.Text);
             objSolicitudAutorizacion.Historia        = txtPacienteHistoria.Text.Trim();
             objSolicitudAutorizacion.Nombres         = txtPacienteNombres.Text.Trim();
             objSolicitudAutorizacion.NumeroDocumento = txtPacienteNumeroDocumento.Text.Trim();
             objSolicitudAutorizacion.OtrosNombres    = txtPacienteOtrosNombres.Text.Trim();
             objSolicitudAutorizacion.Asegurado       = chkAsegurado.Checked;
             objSolicitudAutorizacion.Activo          = chkActivo.Checked;
         }
         if (!txtPacienteFechaDefuncion.Text.Equals(string.Empty))
         {
             objSolicitudAutorizacion.fecha_defuncion = Convert.ToDateTime(txtPacienteFechaDefuncion.Text);
         }
         else
         {
             objSolicitudAutorizacion.fecha_defuncion = null;
         }
         objSolicitudAutorizacion.Recibido        = true;
         objSolicitudAutorizacion.Usuario_Procesa = VariablesGlobales.Login;
         FrmGestionarAutorizaciones objFrmGestionarAutorizaciones = new FrmGestionarAutorizaciones(objSolicitudAutorizacion, objSolicitudAutorizacionDetalle);
         DialogResult dialogResult = objFrmGestionarAutorizaciones.ShowDialog();
         if (dialogResult == DialogResult.OK)
         {
             MessageBox.Show("Solicitud Procesada", "FISSAL", MessageBoxButtons.OK, MessageBoxIcon.Information);
             this.DialogResult = DialogResult.OK;
             Salir();
         }
         if (dialogResult == DialogResult.Yes)
         {
             CargarDetallesSolicitudAutorizacion();
         }
     }
     else
     {
         MessageBox.Show("Hay datos no validos en el formulario", "FISSAL", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
 public int RechazarDetalleSolicitudAutorizacion(vw2_SolicitudAutorizacionDetalle objSolicitudAutorizacionDetalle)
 {
     using (SqlCommand cmd = new SqlCommand())
     {
         cmd.CommandText = "sp2_RechazarDetalleSolicitudAutorizacion";
         cmd.Parameters.AddWithValue("@Nro_Solicitud", objSolicitudAutorizacionDetalle.Nro_Solicitud);
         cmd.Parameters.AddWithValue("@DetalleId", objSolicitudAutorizacionDetalle.DetalleId);
         cmd.Parameters.AddWithValue("@Observaciones", objSolicitudAutorizacionDetalle.Observaciones);
         return(Datos.Mantenimiento(cmd));
     }
 }
        public vw2_SolicitudAutorizacionDetalle CargarDetalleSolicitud(IDataReader dr)
        {
            vw2_SolicitudAutorizacionDetalle objSolicitudAutorizacionDetalle = new vw2_SolicitudAutorizacionDetalle();

            if (dr["Adicional"] != DBNull.Value)
            {
                objSolicitudAutorizacionDetalle.Adicional = Convert.ToBoolean(dr["Adicional"]);
            }
            if (dr["Aprobado"] != DBNull.Value)
            {
                objSolicitudAutorizacionDetalle.Aprobado = Convert.ToBoolean(dr["Aprobado"]);
            }
            if (dr["AutorizacionId"] != DBNull.Value)
            {
                objSolicitudAutorizacionDetalle.AutorizacionId = Convert.ToInt32(dr["AutorizacionId"]);
            }
            objSolicitudAutorizacionDetalle.CategoriaId       = dr["CategoriaId"].ToString();
            objSolicitudAutorizacionDetalle.DetalleId         = Convert.ToInt32(dr["DetalleId"]);
            objSolicitudAutorizacionDetalle.EstablecimientoId = Convert.ToInt32(dr["EstablecimientoId"]);
            objSolicitudAutorizacionDetalle.EstadioId         = Convert.ToByte(dr["EstadioId"]);
            objSolicitudAutorizacionDetalle.FaseId            = Convert.ToInt32(dr["FaseId"]);
            if (dr["Fecha_Procesado"] != DBNull.Value)
            {
                objSolicitudAutorizacionDetalle.Fecha_Procesado = Convert.ToDateTime(dr["Fecha_Procesado"]);
            }
            objSolicitudAutorizacionDetalle.Modalidad     = dr["Modalidad"].ToString();
            objSolicitudAutorizacionDetalle.Nro_Solicitud = dr["Nro_Solicitud"].ToString();
            objSolicitudAutorizacionDetalle.Observaciones = dr["Observaciones"].ToString();
            if (dr["Procesado"] != DBNull.Value)
            {
                objSolicitudAutorizacionDetalle.Procesado = Convert.ToBoolean(dr["Procesado"]);
            }
            objSolicitudAutorizacionDetalle.TipoAutorizacionId = Convert.ToByte(dr["TipoAutorizacionId"]);
            objSolicitudAutorizacionDetalle.TratamientoId      = Convert.ToInt32(dr["TratamientoId"]);
            objSolicitudAutorizacionDetalle.Version            = Convert.ToInt16(dr["Version"]);
            objSolicitudAutorizacionDetalle.Vigencia           = Convert.ToByte(dr["Vigencia"]);

            #region 'CAMPOS VISTA'

            objSolicitudAutorizacionDetalle.DescripcionTipoAutorizacion = dr["DescripcionTipoAutorizacion"].ToString();
            objSolicitudAutorizacionDetalle.DescripcionEstablecimiento  = dr["DescripcionEstablecimiento"].ToString();
            objSolicitudAutorizacionDetalle.DescripcionCategoria        = dr["DescripcionCategoria"].ToString();
            objSolicitudAutorizacionDetalle.DescripcionEstadio          = dr["DescripcionEstadio"].ToString();
            objSolicitudAutorizacionDetalle.DescripcionFase             = dr["DescripcionFase"].ToString();

            #endregion

            return(objSolicitudAutorizacionDetalle);
        }
 public vw2_SolicitudAutorizacionDetalle GetDetalleSolicitudPorNumeroSolicitudId(string numeroSolicitud, int detalleId)
 {
     using (SqlCommand cmd = new SqlCommand())
     {
         cmd.CommandText = "sp2_GetDetalleSolicitudPorNumeroSolicitudId";
         cmd.Parameters.AddWithValue("@Nro_Solicitud", numeroSolicitud);
         cmd.Parameters.AddWithValue("@DetalleId", detalleId);
         vw2_SolicitudAutorizacionDetalle objSolicitudAutorizacionDetalle = null;
         using (DbDataReader dr = Datos.ObtenerDbDataReaderPorProcedure(cmd))
         {
             while (dr.Read())
             {
                 objSolicitudAutorizacionDetalle = CargarDetalleSolicitud(dr);
             }
         }
         return(objSolicitudAutorizacionDetalle);
     }
 }
        public bool RechazarDetalleSolicitudAutorizacion(vw2_SolicitudAutorizacion objSolicitudAutorizacion, vw2_SolicitudAutorizacionDetalle objSolicitudAutorizacionDetalle)
        {
            bool seProcesaronTodos;

            using (TransactionScope transactionScope = new TransactionScope())
            {
                objSolicitudAutorizacionDetalleDA.RechazarDetalleSolicitudAutorizacion(objSolicitudAutorizacionDetalle);
                SolicitudAutorizacionCabeceraDA objSolicitudAutorizacionCabeceraDA = new SolicitudAutorizacionCabeceraDA();
                seProcesaronTodos = objSolicitudAutorizacionDetalleDA.SeProcesaronTodos(objSolicitudAutorizacion.Nro_Solicitud);
                if (seProcesaronTodos)
                {
                    objSolicitudAutorizacion.Fecha_Procesado = DateTime.Today;
                    objSolicitudAutorizacion.Procesado       = true;
                }
                objSolicitudAutorizacionCabeceraDA.Actualizar(objSolicitudAutorizacion);
                transactionScope.Complete();
            }
            return(seProcesaronTodos);
        }
 public FrmGestionarAutorizaciones(vw2_SolicitudAutorizacion objSolicitudAutorizacion, vw2_SolicitudAutorizacionDetalle objSolicitudAutorizacionDetalle)
     : this()
 {
     this.objSolicitudAutorizacion        = objSolicitudAutorizacion;
     this.objSolicitudAutorizacionDetalle = objSolicitudAutorizacionDetalle;
 }
Ejemplo n.º 7
0
        public bool RegistrarAutorizacion(Paciente objPaciente, Autorizacion objAutorizacion, vw2_SolicitudAutorizacion objSolicitudAutorizacion, vw2_SolicitudAutorizacionDetalle objSolicitudAutorizacionDetalle)
        {
            bool seProcesaronTodos;

            using (TransactionScope transactionScope = new TransactionScope())
            {
                #region 'Guardar Paciente'

                PacienteBL objPacienteBL = new PacienteBL();
                objPaciente = objPacienteBL.Guardar(objPaciente);

                #endregion

                #region 'Registrar Autorizacion'

                objAutorizacion.PacienteId  = objPaciente.PacienteId;
                objAutorizacion.FechaInicio = objAutorizacion.Fecha;
                TratamientoBL objTratamientoBL = new TratamientoBL();
                Tratamiento   objTratamiento2  = objTratamientoBL.GetTratamientoPorIdVersion(objAutorizacion.TratamiendoId, objSolicitudAutorizacion.Fecha_Solicitud);
                if (objAutorizacionDA.ExisteAutorizacion(objTratamiento2.CadenaId, objSolicitudAutorizacionDetalle.FaseId, objAutorizacion.EstablecimientoId, objAutorizacion.PacienteId))
                {
                    throw new Exception("No se registro la autorizacion, paciente ya tiene el tratamiento autorizado");
                }
                else
                {
                    objAutorizacion = objAutorizacionDA.RegistrarAutorizacion(objAutorizacion);
                }

                #endregion

                #region 'Aprobar Detalle Solicitud'

                SolicitudAutorizacionDetalleDA objSolicitudAutorizacionDetalleDA = new SolicitudAutorizacionDetalleDA();
                objSolicitudAutorizacionDetalle.AutorizacionId = objAutorizacion.AutorizacionId;
                objSolicitudAutorizacionDetalleDA.AprobarDetalleSolicitudAutorizacion(objSolicitudAutorizacionDetalle);

                #endregion

                #region 'Actualizar Solicitud'

                SolicitudAutorizacionCabeceraDA objSolicitudAutorizacionCabeceraDA = new SolicitudAutorizacionCabeceraDA();
                seProcesaronTodos = objSolicitudAutorizacionDetalleDA.SeProcesaronTodos(objSolicitudAutorizacion.Nro_Solicitud);
                if (seProcesaronTodos)
                {
                    objSolicitudAutorizacion.Fecha_Procesado = DatosBL.GetDate();
                    objSolicitudAutorizacion.Procesado       = true;
                }
                objSolicitudAutorizacionCabeceraDA.Actualizar(objSolicitudAutorizacion);

                #endregion

                #region 'Registrar DX Asociado'

                PaqueteBL objPaqueteBL = new PaqueteBL();
                if (objPaqueteBL.ExisteIdDiagnosticoAsociado(objSolicitudAutorizacion.EstablecimientoId))
                {
                    int tratamientoId = objPaqueteBL.GetIdDiagnosticoAsociado(objSolicitudAutorizacion.EstablecimientoId);
                    if (!objAutorizacionDA.ExisteDiagnosticoAsociado(tratamientoId, objSolicitudAutorizacion.EstablecimientoId, objPaciente.PacienteId))
                    {
                        Tratamiento  objTratamiento            = objTratamientoBL.GetTratamientoPorIdVersion(tratamientoId, objSolicitudAutorizacion.Fecha_Solicitud);
                        Autorizacion objAutorizacionDxAsociado = new Autorizacion();
                        objAutorizacionDxAsociado.Adicional           = false;
                        objAutorizacionDxAsociado.Anulado             = false;
                        objAutorizacionDxAsociado.ControlaCantidad    = false;
                        objAutorizacionDxAsociado.DiagnosticoAsociado = true;
                        objAutorizacionDxAsociado.EstablecimientoId   = objSolicitudAutorizacion.EstablecimientoId;
                        objAutorizacionDxAsociado.Estado             = "A";
                        objAutorizacionDxAsociado.Fecha              = objAutorizacion.Fecha;
                        objAutorizacionDxAsociado.FechaInicio        = objAutorizacionDxAsociado.Fecha;
                        objAutorizacionDxAsociado.Modalidad          = "R";
                        objAutorizacionDxAsociado.Monto              = objTratamiento.Monto;
                        objAutorizacionDxAsociado.PacienteId         = objPaciente.PacienteId;
                        objAutorizacionDxAsociado.Tipo               = "P";
                        objAutorizacionDxAsociado.TipoAutorizacionId = Convert.ToByte(objTratamiento.TipoAutorizacionId);
                        objAutorizacionDxAsociado.TratamiendoId      = objTratamiento.TratamientoId;
                        objAutorizacionDxAsociado.UsuarioCreacion    = objAutorizacion.UsuarioCreacion;
                        objAutorizacionDxAsociado.Version            = objTratamiento.Version;
                        objAutorizacionDxAsociado.Nro_Solicitud      = objSolicitudAutorizacion.Nro_Solicitud;
                        objAutorizacionDxAsociado.FechaSolicitud     = objSolicitudAutorizacion.Fecha_Solicitud;
                        objAutorizacionDxAsociado.Vigencia           = Convert.ToDateTime(objAutorizacionDxAsociado.FechaInicio).AddMonths(Convert.ToInt32(objTratamiento.Vigencia));
                        objAutorizacionDA.RegistrarAutorizacion(objAutorizacionDxAsociado);
                    }
                }
                else
                {
                    throw new Exception("No se registro la autorizacion, no existe diagnostico asociado para el establecimiento");
                }

                #endregion

                transactionScope.Complete();
            }

            return(seProcesaronTodos);
        }