/// <summary> /// Método de inserción /// </summary> /// <param name="Entidad">Entidad a guardar en la tabla</param> /// <returns>Cadena de texto con el resultado correspondiente.</returns> public bool Agregar(ATENCION_RECIBIDA Entidad) { try { using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions() { IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted })) { if (!Context.ATENCION_RECIBIDA.Any(w => w.ID_CITA == Entidad.ID_CITA)) { Context.ATENCION_RECIBIDA.Add(Entidad); //cambiamos el estatus en la taba de atencion cita var obj = new ATENCION_CITA(); obj.ID_CITA = Entidad.ID_CITA; obj.ID_CENTRO_UBI = Entidad.ID_CENTRO_UBI; obj.ESTATUS = "S"; Context.ATENCION_CITA.Attach(obj); Context.Entry(obj).Property(x => x.ESTATUS).IsModified = true; Context.SaveChanges(); transaccion.Complete(); return(true); } return(false); } //return Insert(Entidad); } catch (Exception ex) { throw new ApplicationException(ex.Message); } }
public void ReagendarTVCitaMedica(int id_tv_cita, ATENCION_CITA cita, short id_centro, ATENCION_MEDICA atencion_medica = null) { try { using (TransactionScope transaccion = new TransactionScope(TransactionScopeOption.RequiresNew, new TransactionOptions() { IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted })) { var id_cita = GetIDProceso <int>("ATENCION_CITA", "ID_CITA", string.Format("ID_CENTRO_UBI={0}", id_centro)); cita.ID_CITA = id_cita; Context.ATENCION_CITA.Add(cita); Context.SaveChanges(); if (atencion_medica != null) { var id_atencion_medica = GetIDProceso <int>("ATENCION_MEDICA", "ID_ATENCION_MEDICA", string.Format("ID_CENTRO_UBI={0}", id_centro)); atencion_medica.ID_ATENCION_MEDICA = id_atencion_medica; foreach (var proc_at_med in atencion_medica.PROC_ATENCION_MEDICA) { var id_proc_prog = 1; proc_at_med.ID_ATENCION_MEDICA = id_atencion_medica; foreach (var proc_prog in proc_at_med.PROC_ATENCION_MEDICA_PROG) { proc_prog.ID_ATENCION_MEDICA = id_atencion_medica; proc_prog.ID_AM_PROG = id_proc_prog; proc_prog.ID_CITA = id_cita; foreach (var detalle in proc_prog.PROC_MEDICO_PROG_DET) { detalle.ID_AM_PROG = id_proc_prog; detalle.ID_ATENCION_MEDICA = id_atencion_medica; } id_proc_prog += 1; } } Context.ATENCION_MEDICA.Add(atencion_medica); } Context.SaveChanges(); var _tv_cita_medica = Context.TV_CITA_MEDICA.Where(w => w.ID_TV_CITA == id_tv_cita && w.ID_CENTRO_UBI == id_centro).FirstOrDefault(); if (_tv_cita_medica == null) { throw new Exception("No se pudo encontrar el registro en la tabla TV_CITA_MEDICA"); } _tv_cita_medica.ID_TV_MEDICO_ESTATUS = "RP"; Context.SaveChanges(); transaccion.Complete(); } } catch (Exception ex) { throw new ApplicationException(ex.Message + " " + (ex.InnerException != null ? ex.InnerException.InnerException.Message : "")); } }
private bool GuardarAgenda() { try { if (SelectedSolicitud != null) { if (!base.HasErrors) { var obj = new ATENCION_CITA(); obj.ID_CENTRO_UBI = SelectedSolicitud.ATENCION_INGRESO.ID_CENTRO_UBI; obj.ID_CITA = 0; obj.ESTATUS = "N"; obj.ID_CENTRO = SelectedSolicitud.ATENCION_INGRESO.ID_CENTRO; obj.ID_ANIO = SelectedSolicitud.ATENCION_INGRESO.ID_ANIO; obj.ID_IMPUTADO = SelectedSolicitud.ATENCION_INGRESO.ID_IMPUTADO; obj.ID_INGRESO = SelectedSolicitud.ATENCION_INGRESO.ID_INGRESO; obj.ID_ATENCION = SelectedSolicitud.ATENCION_INGRESO.ID_ATENCION; obj.CITA_FECHA_HORA = new DateTime(AFecha.Value.Year, AFecha.Value.Month, AFecha.Value.Day, AHoraI.Value.Hour, AHoraI.Value.Minute, 0); obj.CITA_HORA_TERMINA = new DateTime(AFecha.Value.Year, AFecha.Value.Month, AFecha.Value.Day, AHoraF.Value.Hour, AHoraF.Value.Minute, 0); obj.ID_TIPO_ATENCION = SelectedSolicitud.ATENCION_INGRESO.ATENCION_SOLICITUD.ID_TIPO_ATENCION; obj.ID_AREA = SelectedSolicitud.ATENCION_INGRESO.ATENCION_SOLICITUD.ID_AREA; obj.ID_TIPO_SERVICIO = SelectedSolicitud.ATENCION_INGRESO.ATENCION_SOLICITUD.ID_TECNICA == (short)eAreas.AREA_MEDICA ? SelectedSolicitud.ATENCION_INGRESO.ATENCION_SOLICITUD.ID_TIPO_ATENCION == (short)enumAtencionTipo.CONSULTA_MEDICA ? (short?)enumAtencionServicio.CITA_MEDICA : SelectedSolicitud.ATENCION_INGRESO.ATENCION_SOLICITUD.ID_TIPO_ATENCION == (short)enumAtencionTipo.CONSULTA_DENTAL ? (short?)enumAtencionServicio.CITA_MEDICA_DENTAL : null : null; obj.ID_RESPONSABLE = _empleado.ID_EMPLEADO; obj.ID_CENTRO_AT_SOL = SelectedSolicitud.ATENCION_INGRESO.ATENCION_SOLICITUD.ID_CENTRO; obj.ID_USUARIO = GlobalVar.gUsr; obj.ID_CITA = new cAtencionCita().Agregar(obj); if (obj.ID_CITA > 0) { ActualizaEstatusSolicitud((short)enumSolicitudCita.AGENDADA); return(true); } } } } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al guardar agenda.", ex); } return(false); }
public AtencionCitaViewModel(ATENCION_CITA ac) { SelectedAtencionCita = ac; }
private void Guardar() { try { if (!PInsertar) { new Dialogos().ConfirmacionDialogo("Validación", "Su usuario no tiene privilegios para realizar esta acción"); return; } if (SelectIngreso == null) { new Dialogos().ConfirmacionDialogo("Validación", "Favor de seleccionar un Ingreso"); return; } if (base.HasErrors) { new Dialogos().ConfirmacionDialogo("Validación", "Favor de capturar los campos requeridos. " + base.Error); return; } var hoy = Fechas.GetFechaDateServer; var responsable = new cUsuario().ObtenerUsuario(GlobalVar.gUsr); var a = new ATENCION_SOLICITUD(); //a.ID_ATENCION = a.ID_TECNICA = AreaTecnica; //a.ID_AREA = a.SOLICITUD_FEC = hoy; a.ACTIVIDAD = string.Empty; a.ID_CENTRO = GlobalVar.gCentro; a.ESTATUS = 0; a.ATENCION_INGRESO.Add(new ATENCION_INGRESO() { ID_CENTRO_UBI = GlobalVar.gCentro, ID_CENTRO = SelectIngreso.ID_CENTRO, ID_ANIO = SelectIngreso.ID_ANIO, ID_IMPUTADO = SelectIngreso.ID_IMPUTADO, ID_INGRESO = SelectIngreso.ID_INGRESO, REGISTRO_FEC = hoy, ESTATUS = 1 }); var obj = new ATENCION_CITA(); obj.ID_CENTRO_UBI = GlobalVar.gCentro; obj.ID_CENTRO_AT_SOL = GlobalVar.gCentro; obj.ID_CENTRO = SelectIngreso.ID_CENTRO; obj.ID_ANIO = SelectIngreso.ID_ANIO; obj.ID_IMPUTADO = SelectIngreso.ID_IMPUTADO; obj.ID_INGRESO = SelectIngreso.ID_INGRESO; obj.CITA_FECHA_HORA = hoy; obj.CITA_HORA_TERMINA = hoy; obj.ID_RESPONSABLE = responsable.ID_PERSONA; //ID_AREA obj.ESTATUS = "A"; obj.ID_USUARIO = GlobalVar.gUsr; var ar = new ATENCION_RECIBIDA(); ar.ID_CENTRO_UBI = GlobalVar.gCentro; ar.ID_USUARIO = GlobalVar.gUsr; ar.ATENCION_FEC = hoy; //ar.ATENCION_RECIBIDA ar.ATENCION_RECIBIDA_TXT = AtencionTxt; obj.ATENCION_RECIBIDA = ar; a.ATENCION_CITA.Add(obj); a.ID_ATENCION = new cAtencionSolicitud().Agregar(a); if (a.ID_ATENCION > 0) { MenuGuardarEnabled = false; new Dialogos().ConfirmacionDialogo("Éxito", "La información se guardo correctamente"); } else { new Dialogos().ConfirmacionDialogo("Error", "Ocurrio un error al guardar la información"); } #region Comentado //var obj = new ATENCION_RECIBIDA(); //obj.ID_CITA = SelectedAtencionCita.ID_CITA; //obj.ID_USUARIO = GlobalVar.gUsr; //obj.ATENCION_FEC = Fechas.GetFechaDateServer; ////byte[] data; ////Editor.Save(out data, BinaryStreamType.WordprocessingML); ////obj.ATENCION_RECIBIDA1 = data; //obj.ATENCION_RECIBIDA_TXT = AtencionTxt; //if (SelectedAtencionRecibida == null) //{ // if (new cAtencionRecibida().Agregar(obj)) // { // SelectedAtencionRecibida = obj; // MenuGuardarEnabled = false; // #region Historico // LstAtencionRecibidaHistorico = new ObservableCollection<ATENCION_RECIBIDA>(new cAtencionRecibida().ObtenerTodoHistorico(SelectedAtencionCita.INGRESO.ID_CENTRO, SelectedAtencionCita.INGRESO.ID_ANIO, SelectedAtencionCita.INGRESO.ID_IMPUTADO)); // HistoricoVisible = LstAtencionRecibidaHistorico.Count > 0 ? Visibility.Collapsed : Visibility.Visible; // #endregion // new Dialogos().ConfirmacionDialogo("Éxito", "La información se ha guardado correctamente"); // } // else // new Dialogos().ConfirmacionDialogo("Error", "Ocurrio unj error al guardar la información"); //} //else //{ // if (new cAtencionRecibida().Actualizar(obj)) // { // SelectedAtencionRecibida = obj; // MenuGuardarEnabled = false; // #region Historico // LstAtencionRecibidaHistorico = new ObservableCollection<ATENCION_RECIBIDA>(new cAtencionRecibida().ObtenerTodoHistorico(SelectedAtencionCita.INGRESO.ID_CENTRO, SelectedAtencionCita.INGRESO.ID_ANIO, SelectedAtencionCita.INGRESO.ID_IMPUTADO)); // HistoricoVisible = LstAtencionRecibidaHistorico.Count > 0 ? Visibility.Collapsed : Visibility.Visible; // #endregion // new Dialogos().ConfirmacionDialogo("Éxito", "La información se ha guardado correctamente"); // } // else // new Dialogos().ConfirmacionDialogo("Error", "Ocurrio unj error al guardar la información"); //} #endregion } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al guardar", ex); } }