private void Guardar() { SISTMEDEntities P = new SISTMEDEntities(); using (var dbContextTransaction = P.Database.BeginTransaction()) try { P.Configuration.ValidateOnSaveEnabled = false; PRO_PHPV2 _itemPHP = new PRO_PHPV2(); _itemPHP.tamanio_frasco = ObtieneTamanioFrasco(); _itemPHP.bic = checkBic.Checked; _itemPHP.gotas_minuto = Convert.ToInt32(cboGotaHora.SelectedValue); _itemPHP.ml_hora = txtMlHora.Text == ""? 0: Convert.ToInt32(txtMlHora.Text); _itemPHP.fecha_carga = DateTime.Now; _itemPHP.usr_carga = Clases.Usuario.UsuarioLogeado.id_usuario_Logeado; _itemPHP.obs = txtObs.Text; if (_suspender == 1) { _itemPHP.fecha_baja = _fbja; } _itemPHP.frasco1 = Convert.ToInt32(cboDiluyente.SelectedValue); _itemPHP.frasco2 = Convert.ToInt32(cboDiluyente2.SelectedValue); _itemPHP.frasco3 = Convert.ToInt32(cboDiluyente3.SelectedValue); _itemPHP.frasco4 = Convert.ToInt32(cboDiluyente4.SelectedValue); _itemPHP.frasco5 = Convert.ToInt32(cboDiluyente5.SelectedValue); _itemPHP.frasco6 = Convert.ToInt32(cboDiluyente6.SelectedValue); _itemPHP.frasco7 = Convert.ToInt32(cboDiluyente7.SelectedValue); _itemPHP.frasco8 = Convert.ToInt32(cboDiluyente8.SelectedValue); _itemPHP.frasco9 = Convert.ToInt32(cboDiluyente9.SelectedValue); _itemPHP.frasco10 = Convert.ToInt32(cboDiluyente10.SelectedValue); if (suministro_procedimiento_id != 0) { _itemPHP.id_php = _phpID; P.Entry(_itemPHP).State = System.Data.Entity.EntityState.Modified; } else { P.PRO_PHPV2.Add(_itemPHP); } if (suministro_procedimiento_id != 0) { P.PRO_PHPV2_ADITIVO.RemoveRange(P.PRO_PHPV2_ADITIVO.Where(a => a.id_php == _phpID)); } foreach (Control c in groupBoxFrascos.Controls) { if (c is DataGridView) { DataGridView _tablaAditivos = (DataGridView)c; if (_tablaAditivos.Rows.Count > 0)//Tiene algun aditivo { for (int i = 0; i < _tablaAditivos.Rows.Count; i++) { PRO_PHPV2_ADITIVO _itemAditivo = new PRO_PHPV2_ADITIVO(); _itemAditivo.PRO_PHPV2 = _itemPHP; _itemAditivo.id_frasco = Convert.ToInt32(_tablaAditivos.Tag); _itemAditivo.aditivo_id = _tablaAditivos.Rows[i].Cells[(int)Col_Aditivos.ID].Value.ToString(); _itemAditivo.aditivo_desc = _tablaAditivos.Rows[i].Cells[(int)Col_Aditivos.ADITIVO].Value.ToString(); _itemAditivo.dosis = Convert.ToDecimal(_tablaAditivos.Rows[i].Cells[(int)Col_Aditivos.DOSIS].Value); P.PRO_PHPV2_ADITIVO.Add(_itemAditivo); } } else //No tiene aditivos { PRO_PHPV2_ADITIVO _itemAditivo = new PRO_PHPV2_ADITIVO(); _itemAditivo.PRO_PHPV2 = _itemPHP; _itemAditivo.id_frasco = Convert.ToInt32(_tablaAditivos.Tag); _itemAditivo.aditivo_id = "S/A"; _itemAditivo.aditivo_desc = ""; _itemAditivo.dosis = 0; P.PRO_PHPV2_ADITIVO.Add(_itemAditivo); } } } PRO_SuministroDeProcedimiento _itemSP = new PRO_SuministroDeProcedimiento(); _itemSP.paciente_id = Clases.Paciente.PacienteIngresado; _itemSP.procedimiento_id = procedimiento_id; _itemSP.tipoProcedimiento_id = 8; _itemSP.usuario_id = Clases.Usuario.UsuarioLogeado.id_usuario_Logeado; _itemSP.fechaAltaSistema = DateTime.Now; if (_suspender == 1) { _itemSP.fechaBaja = _fbja; } if (suministro_procedimiento_id == 0) { _itemSP.PRO_PHPV2 = _itemPHP; P.PRO_SuministroDeProcedimiento.Add(_itemSP); } else { if (_suspender == 1) { PRO_SuministroDeProcedimiento _itemSuministro = new PRO_SuministroDeProcedimiento { suministroDeProcedimiento_id = suministro_procedimiento_id, fechaBaja = _fbja }; P.PRO_SuministroDeProcedimiento.Attach(_itemSuministro); P.Entry(_itemSuministro).Property(s => s.fechaBaja).IsModified = true; } } P.SaveChanges(); dbContextTransaction.Commit(); MetroMessageBox.Show(this, "Se guardo correctamente"); if (suministro_procedimiento_id != 0) { ActualizarIndicacion(); } else { Opener.IActualiza(); } this.Close(); } catch (Exception ex) { dbContextTransaction.Rollback(); MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void Modifica_Suministro_Procedimiento_Nutricion() { try { { CultureInfo culture = new CultureInfo("en-US"); SISTMEDEntities E = new SISTMEDEntities(); // Tabla PRO_SuministroDeProcedimiento PRO_SuministroDeProcedimiento _itemSuministro = new PRO_SuministroDeProcedimiento(); foreach (var item in E.ObtieneUltimoId("PRO_Posologia")) // Nombre de la tabla en la que buscara { if (suministro_procedimiento_id == 0) { if (item.Value == 1) { _itemSuministro.posologia_id = Convert.ToInt32(item.Value); } else { _itemSuministro.posologia_id = Convert.ToInt32(item.Value + 1); } } else { _itemSuministro.posologia_id = nutricion_id; } } _itemSuministro.paciente_id = paciente_id; _itemSuministro.procedimiento_id = procedimiento_id; _itemSuministro.tipoProcedimiento_id = tipo_procedimiento_id; _itemSuministro.fechaAltaSistema = System.DateTime.Now; _itemSuministro.usuario_id = Clases.Usuario.UsuarioLogeado.id_usuario_Logeado; _itemSuministro.suministroDeProcedimiento_id = suministro_procedimiento_id; E.Entry(_itemSuministro).State = (AlreadyExistsSuministro() ? EntityState.Modified : EntityState.Added); // Tabla PRO_Posologia PRO_Posologia _itemPosologia = new PRO_Posologia(); _itemPosologia.paciente_id = paciente_id; _itemPosologia.procedimiento_id = procedimiento_id; _itemPosologia.posologia_id = nutricion_id; // ORAL _itemPosologia.PlanOral = cboPlanOral.Text; if (this.chckCortado.Checked) { _itemPosologia.Cortado = true; } else { _itemPosologia.Cortado = false; } if (this.chckLiquidoAligerado.Checked) { _itemPosologia.LiquidosAligerados = true; } else { _itemPosologia.LiquidosAligerados = false; } if (this.chckLiquidoEspeso.Checked) { _itemPosologia.LiquidosEspesos = true; } else { _itemPosologia.LiquidosEspesos = false; } if (this.chckLiquidoFino.Checked) { _itemPosologia.LiquidosFinos = true; } else { _itemPosologia.LiquidosFinos = false; } if (this.chckPicado.Checked) { _itemPosologia.Picado = true; } else { _itemPosologia.Picado = false; } if (this.chckSupControl.Checked) { _itemPosologia.SupControl = true; } else { _itemPosologia.SupControl = false; } if (this.ckchAsistencia.Checked) { _itemPosologia.Asistencia = true; } else { _itemPosologia.Asistencia = false; } if (this.ckchSinLiquidos.Checked) { _itemPosologia.SinLiquidos = true; } else { _itemPosologia.SinLiquidos = false; } if (this.chckHiposodico.Checked) { _itemPosologia.hiposodica = true; } else { _itemPosologia.hiposodica = false; } if (this.chckDBT.Checked) { _itemPosologia.dbt = true; } else { _itemPosologia.dbt = false; } if (this.chckACO.Checked) { _itemPosologia.ACO = true; } else { _itemPosologia.ACO = false; } if (this.chckIRA.Checked) { _itemPosologia.IRA = true; } else { _itemPosologia.IRA = false; } if (this.chckICR.Checked) { _itemPosologia.IRC = true; } else { _itemPosologia.IRC = false; } if (this.chckSorbete.Checked) { _itemPosologia.Sorbete = true; } else { _itemPosologia.Sorbete = false; } if (this.chckCeliaco.Checked) { _itemPosologia.Celiaco = true; } else { _itemPosologia.Celiaco = false; } if (this.chckHepatoProtector.Checked) { _itemPosologia.HepatoProtector = true; } else { _itemPosologia.HepatoProtector = false; } if (this.chckHipercalorica.Checked) { _itemPosologia.Hipercalorico = true; } else { _itemPosologia.Hipercalorico = false; } if (this.chckHipocalorica.Checked) { _itemPosologia.Hipocalorico = true; } else { _itemPosologia.Hipocalorico = false; } // ENTERAL _itemPosologia.alimento_id = this.cboAlimento1.SelectedValue.ToString(); _itemPosologia.alimentoVelocidad = txtVelocidad1.Text == "" ? 0 : Convert.ToInt32(this.txtVelocidad1.Text.ToString()); _itemPosologia.horario_alimento = this.txtHorario1.Text; _itemPosologia.VolT1 = this.txtVolTot1.Text; _itemPosologia.Goteo1 = radioGoteo1.Checked; _itemPosologia.Paralelo1 = radioParalelo1.Checked; _itemPosologia.alimento_id2 = this.cboAlimento2.SelectedValue.ToString(); _itemPosologia.alimentoVelocidad2 = txtVelocidad2.Text == "" ? 0 : Convert.ToInt32(this.txtVelocidad2.Text.ToString()); _itemPosologia.horario_alimento2 = this.txtHorario2.Text; _itemPosologia.VolT2 = this.txtVolTot2.Text; _itemPosologia.Goteo2 = radioGoteo2.Checked; _itemPosologia.Paralelo2 = radioParalelo2.Checked; _itemPosologia.alimento_id3 = this.cboAlimento3.SelectedValue.ToString(); _itemPosologia.alimento_velocidad3 = txtVelocidad3.Text == "" ? 0 : Convert.ToInt32(this.txtVelocidad3.Text.ToString()); _itemPosologia.horario_alimento3 = this.txtHorario3.Text; _itemPosologia.VolT3 = this.txtVolTot3.Text; _itemPosologia.Goteo3 = radioGoteo3.Checked; _itemPosologia.Paralelo3 = radioParalelo3.Checked; _itemPosologia.alimento_id4 = this.cboAlimento4.SelectedValue.ToString(); _itemPosologia.alimentoVelocidad4 = txtVelocidad4.Text == "" ? 0 : Convert.ToInt32(this.txtVelocidad4.Text.ToString()); _itemPosologia.horario_alimento4 = this.txtHorario4.Text; _itemPosologia.VolT4 = this.txtVolTot4.Text; _itemPosologia.Goteo4 = radioGoteo4.Checked; _itemPosologia.Paralelo4 = radioParalelo4.Checked; _itemPosologia.SNG = radioSNG.Checked; _itemPosologia.Gastro = radioGastro.Checked; _itemPosologia.Yeyunostomia = radioYeyu.Checked; _itemPosologia.Oral = radioOral.Checked; _itemPosologia.observacion = this.txtObservacion.Text; _itemPosologia.usuario_id = Clases.Usuario.UsuarioLogeado.id_usuario_Logeado; _itemPosologia.fechaAltaSistema = System.DateTime.Now; _itemPosologia.fechaModificacion = System.DateTime.Now; _itemPosologia.ml_frasco1 = txtMlFrasco1.Text == ""? 0 : Convert.ToInt32(txtMlFrasco1.Text); _itemPosologia.ml_frasco2 = txtMlFrasco2.Text == "" ? 0 : Convert.ToInt32(txtMlFrasco2.Text); _itemPosologia.ml_frasco3 = txtMlFrasco3.Text == "" ? 0 : Convert.ToInt32(txtMlFrasco3.Text); _itemPosologia.ml_frasco4 = txtMlFrasco4.Text == "" ? 0 : Convert.ToInt32(txtMlFrasco4.Text); if (txtSuspenderMotivo.Text != string.Empty) { _itemPosologia.fechaBaja = DateTime.Now; _itemPosologia.motivoBaja = txtSuspenderMotivo.Text; _itemSuministro.fechaBaja = DateTime.Now; _itemSuministro.motivoBaja = txtSuspenderMotivo.Text; } E.Entry(_itemPosologia).State = (AlreadyExists() ? EntityState.Modified : EntityState.Added); E.SaveChanges(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }