private void gridView1_MouseDown(object sender, MouseEventArgs e)
        {

            _HitInfo = gridView_Medicaments.CalcHitInfo(new Point(e.X, e.Y));
            _PatientMedicament_ViewBE = ((PatientMedicament_ViewBE)gridView_Medicaments.GetRow(_HitInfo.RowHandle));

        }
Пример #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="patientMedicament_View"></param>
        /// <param name="createdUserId"></param>
        public static void UpdatePatientMedicaments(PatientMedicament_ViewBE patientMedicament_View, Guid createdUserId)
        {
            using (Health.Back.BE.HealthEntities dc = new Health.Back.BE.HealthEntities(Common.CnnString_Entities))
            {
                PatientMedicament patientMedicament_db = dc.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(patientMedicament_View.PatientMedicamentId)).FirstOrDefault <PatientMedicament>();

                if (patientMedicament_db == null)
                {
                    return;
                }

                patientMedicament_db.Status = patientMedicament_View.Status;

                patientMedicament_db.MedicalEventId = patientMedicament_View.MedicalEventId;
                patientMedicament_db.PatientId      = patientMedicament_View.PatientId;

                patientMedicament_db.PatientMedicamentId_Parent = patientMedicament_View.PatientMedicamentId_Parent;
                patientMedicament_db.MedicamentName             = patientMedicament_View.MedicamentName;
                patientMedicament_db.MedicamentPresentation     = patientMedicament_View.MedicamentPresentation;
                patientMedicament_db.Dosis             = patientMedicament_View.Dosis;
                patientMedicament_db.Periodicity_hours = patientMedicament_View.Periodicity_hours;
                patientMedicament_db.CreatedDate       = System.DateTime.Now;
                patientMedicament_db.CreatedUserId     = createdUserId;
                patientMedicament_db.Enabled           = patientMedicament_View.Enabled;
                patientMedicament_db.DaysCount         = patientMedicament_View.DaysCount;

                dc.SaveChanges();
            }
        }
        void SetControls(PatientMedicament_ViewBE pPatientMedicament_ViewBE)
        {
            if (pPatientMedicament_ViewBE.EntityState == Fwk.Bases.EntityState.Added)
                chkSuspend.Visible = false;

            this.txtMedicamentName.Text = pPatientMedicament_ViewBE.MedicamentName;
            this.txtPresentation.Text = pPatientMedicament_ViewBE.MedicamentPresentation;
            this.txtFecha.Text = pPatientMedicament_ViewBE.CreatedDate.ToString();
            this.lblProfesional.Text = pPatientMedicament_ViewBE.ApellidoNombre;

            this.txtDaysCount.EditValue = pPatientMedicament_ViewBE.DaysCount;
            this.txtPeriodicity_hours.EditValue = pPatientMedicament_ViewBE.Periodicity_hours;

            this.txtDosis.EditValue = pPatientMedicament_ViewBE.Dosis;
            if (pPatientMedicament_ViewBE.Status == (int)Health.BE.Enums.MedicamentStatus.Permanente)
                this.chkPermanent.Checked = true;
            else
                this.chkPermanent.Checked = false;

            if (pPatientMedicament_ViewBE.Status == (int)Health.BE.Enums.MedicamentStatus.Suspendido)
                this.chkSuspend.Checked = true;
            else
                this.chkSuspend.Checked = false;

            string[] arrDosis = pPatientMedicament_ViewBE.Dosis.Split(';');

            this.txtDosis.EditValue = arrDosis[0];
            if (arrDosis.Count() > 1)
                this.cmdbMeasures.Text = arrDosis[1];
        }
Пример #4
0
        void QuitMedicamentFromGridView()
        {
            if (Selected_PatientMedicament == null)
            {
                return;
            }

            Selected_PatientMedicament = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId)).FirstOrDefault();
            //Si ahun no se envio a la BD se elimina de la coleccion
            if (Selected_PatientMedicament.PatientMedicamentId < 0)
            {
                _Evento.PatientMedicaments.Remove(Selected_PatientMedicament);
            }
            else
            {
                Selected_PatientMedicament.EntityState = Fwk.Bases.EntityState.Deleted;
                Selected_PatientMedicament.Enabled     = false;
            }

            //if (Selected_PatientMedicament.PatientMedicamentId_Parent.HasValue)
            //{
            //    var x = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId_Parent)).FirstOrDefault();
            //    if(x!=null)
            //        x.EntityState = Fwk.Bases.EntityState.Unchanged;
            //}

            patientMedicamentViewListBindingSource.DataSource = _Evento.PatientMedicaments;
            gridView_Medicaments.RefreshData();
            gridControl_Medicaments.RefreshDataSource();
        }
Пример #5
0
        public static void AddPatientMedicaments(PatientMedicament_ViewBE patientMedicament_View, Guid createdUserId)
        {
            using (Health.Back.BE.HealthEntities dc = new Health.Back.BE.HealthEntities(Common.CnnString_Entities))
            {
                PatientMedicament patientMedicament_db = new PatientMedicament();

                patientMedicament_db.Status = patientMedicament_View.Status;

                patientMedicament_db.MedicalEventId = patientMedicament_View.MedicalEventId;
                patientMedicament_db.PatientId      = patientMedicament_View.PatientId;
                if (patientMedicament_View.PatientMedicamentId_Parent >= 0)
                {
                    patientMedicament_db.PatientMedicamentId_Parent = patientMedicament_View.PatientMedicamentId_Parent;
                }

                patientMedicament_db.MedicamentName         = patientMedicament_View.MedicamentName;
                patientMedicament_db.MedicamentPresentation = patientMedicament_View.MedicamentPresentation;
                patientMedicament_db.Dosis             = patientMedicament_View.Dosis;
                patientMedicament_db.Periodicity_hours = patientMedicament_View.Periodicity_hours;
                patientMedicament_db.CreatedDate       = System.DateTime.Now;
                patientMedicament_db.CreatedUserId     = createdUserId;
                patientMedicament_db.DaysCount         = patientMedicament_View.DaysCount;
                patientMedicament_db.Enabled           = true;
                dc.PatientMedicaments.AddObject(patientMedicament_db);
                dc.SaveChanges();
            }
        }
        public override void Refresh()
        {
            SetControls(PatientMedicament_Original);
            
 

            UpdatedPatientMedicament = PatientMedicament_Original.Clone<PatientMedicament_ViewBE>();

            //Medicamento de otro evento
            if (currentMedicalEventId != PatientMedicament_Original.MedicalEventId && 
                PatientMedicament_Original.PatientMedicamentId > 0) //es por que se puede intentar modificar la info mas de una ves 
            {
                UpdatedPatientMedicament.MedicalEventId = currentMedicalEventId;
                //Historial
                UpdatedPatientMedicament.PatientMedicamentId_Parent = PatientMedicament_Original.PatientMedicamentId;

                int count = PatientMedicamentList.Count(p => p.PatientMedicamentId < 0);
                // Sin Id x q se creara luego
                UpdatedPatientMedicament.PatientMedicamentId = -(count + 1);

                //Marcar como nuevo
                UpdatedPatientMedicament.EntityState = Fwk.Bases.EntityState.Added;
                UpdateMedicamentEnum = UpdateMedicalEventEnum.Other_MedicalEvent;
                
            }

            ///Fue agregado en este evento
            if (currentMedicalEventId == PatientMedicament_Original.MedicalEventId)
            {
                UpdateMedicamentEnum = UpdateMedicalEventEnum.Same_MedicalEvent;
            }

      
           


            if (this.State == Fwk.Bases.EntityUpdateEnum.NONE)
            {
                this.txtDaysCount.Enabled =
                    this.txtMedicamentName.Enabled =
                    this.txtDosis.Enabled =
                    this.txtFecha.Enabled =
                    this.txtMedicamentName.Enabled =
                    this.txtPeriodicity_hours.Enabled =
                    this.txtPresentation.Enabled = false;
                aceptCancelButtonBar1.AceptButtonVisible = false;
                aceptCancelButtonBar1.CancelButtonText = "Salir";
            }

            base.Refresh();

        }
Пример #7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="patientId"></param>
        /// <returns></returns>
        public static void CreateUpdatePatientMedicaments(PatientMedicament_ViewBE patientMedicament_View)
        {
            CreateUpdatePatientMedicamentReq req = new CreateUpdatePatientMedicamentReq();

            req.BusinessData = patientMedicament_View;

            req.ContextInformation.UserId = frmBase_TabForm.IndentityUserInfo.ProviderId.ToString();
            req.ContextInformation.AppId  = Controller.CurrentHealthInstitution.HealthInstitutionId.ToString();
            CreateUpdatePatientMedicamentRes res = req.ExecuteService <CreateUpdatePatientMedicamentReq, CreateUpdatePatientMedicamentRes>(req);

            if (res.Error != null)
            {
                throw Fwk.Exceptions.ExceptionHelper.ProcessException(res.Error);
            }
        }
Пример #8
0
        public override void Refresh()
        {
            SetControls(PatientMedicament_Original);



            UpdatedPatientMedicament = PatientMedicament_Original.Clone <PatientMedicament_ViewBE>();

            //Medicamento de otro evento
            if (currentMedicalEventId != PatientMedicament_Original.MedicalEventId &&
                PatientMedicament_Original.PatientMedicamentId > 0) //es por que se puede intentar modificar la info mas de una ves
            {
                UpdatedPatientMedicament.MedicalEventId = currentMedicalEventId;
                //Historial
                UpdatedPatientMedicament.PatientMedicamentId_Parent = PatientMedicament_Original.PatientMedicamentId;

                int count = PatientMedicamentList.Count(p => p.PatientMedicamentId < 0);
                // Sin Id x q se creara luego
                UpdatedPatientMedicament.PatientMedicamentId = -(count + 1);

                //Marcar como nuevo
                UpdatedPatientMedicament.EntityState = Fwk.Bases.EntityState.Added;
                UpdateMedicamentEnum = UpdateMedicalEventEnum.Other_MedicalEvent;
            }

            ///Fue agregado en este evento
            if (currentMedicalEventId == PatientMedicament_Original.MedicalEventId)
            {
                UpdateMedicamentEnum = UpdateMedicalEventEnum.Same_MedicalEvent;
            }



            if (this.State == Fwk.Bases.EntityUpdateEnum.NONE)
            {
                this.txtDaysCount.Enabled                             =
                    this.txtMedicamentName.Enabled                    =
                        this.txtDosis.Enabled                         =
                            this.txtFecha.Enabled                     =
                                this.txtMedicamentName.Enabled        =
                                    this.txtPeriodicity_hours.Enabled =
                                        this.txtPresentation.Enabled  = false;
                aceptCancelButtonBar1.AceptButtonVisible              = false;
                aceptCancelButtonBar1.CancelButtonText                = "Salir";
            }

            base.Refresh();
        }
Пример #9
0
        private void gridView_Medicaments_MouseDown(object sender, MouseEventArgs e)
        {
            _HitInfo = gridView_Medicaments.CalcHitInfo(new Point(e.X, e.Y));
            selected_PatientMedicament = ((PatientMedicament_ViewBE)gridView_Medicaments.GetRow(_HitInfo.RowHandle));
            if (selected_PatientMedicament == null) return;

            if (selected_PatientMedicament.MedicalEventId.Equals(currentEvent.MedicalEventId) && selected_PatientMedicament.PatientMedicamentId_Parent.HasValue == false)
            {
                btnQuitarMedicamento.Enabled = true;
                m_quitar.Enabled = true;

                return;
            }
            btnQuitarMedicamento.Enabled = false;
            m_quitar.Enabled = false;
        }
Пример #10
0
        private void gridView_Medicaments_MouseDown(object sender, MouseEventArgs e)
        {
            _HitInfo = gridView_Medicaments.CalcHitInfo(new Point(e.X, e.Y));
            selected_PatientMedicament = ((PatientMedicament_ViewBE)gridView_Medicaments.GetRow(_HitInfo.RowHandle));
            if (selected_PatientMedicament == null)
            {
                return;
            }

            if (selected_PatientMedicament.MedicalEventId.Equals(currentEvent.MedicalEventId) && selected_PatientMedicament.PatientMedicamentId_Parent.HasValue == false)
            {
                btnQuitarMedicamento.Enabled = true;
                m_quitar.Enabled             = true;

                return;
            }
            btnQuitarMedicamento.Enabled = false;
            m_quitar.Enabled             = false;
        }
Пример #11
0
        void SetControls(PatientMedicament_ViewBE pPatientMedicament_ViewBE)
        {
            if (pPatientMedicament_ViewBE.EntityState == Fwk.Bases.EntityState.Added)
            {
                chkSuspend.Visible = false;
            }

            this.txtMedicamentName.Text = pPatientMedicament_ViewBE.MedicamentName;
            this.txtPresentation.Text   = pPatientMedicament_ViewBE.MedicamentPresentation;
            this.txtFecha.Text          = pPatientMedicament_ViewBE.CreatedDate.ToString();
            this.lblProfesional.Text    = pPatientMedicament_ViewBE.ApellidoNombre;

            this.txtDaysCount.EditValue         = pPatientMedicament_ViewBE.DaysCount;
            this.txtPeriodicity_hours.EditValue = pPatientMedicament_ViewBE.Periodicity_hours;

            this.txtDosis.EditValue = pPatientMedicament_ViewBE.Dosis;
            if (pPatientMedicament_ViewBE.Status == (int)Health.BE.Enums.MedicamentStatus.Permanente)
            {
                this.chkPermanent.Checked = true;
            }
            else
            {
                this.chkPermanent.Checked = false;
            }

            if (pPatientMedicament_ViewBE.Status == (int)Health.BE.Enums.MedicamentStatus.Suspendido)
            {
                this.chkSuspend.Checked = true;
            }
            else
            {
                this.chkSuspend.Checked = false;
            }

            string[] arrDosis = pPatientMedicament_ViewBE.Dosis.Split(';');

            this.txtDosis.EditValue = arrDosis[0];
            if (arrDosis.Count() > 1)
            {
                this.cmdbMeasures.Text = arrDosis[1];
            }
        }
Пример #12
0
        /// <summary>
        /// Obtiene Medical event y medicamentos con full detalles.
        /// Utiliza SP: MedicalEvent_g
        /// </summary>
        /// <param name="pMedicalEventId"></param>
        /// <returns></returns>
        public static MedicalEventBE GetEvent(int pMedicalEventId)
        {

            Database wDatabase = null;
            DbCommand wCmd = null;


            MedicalEventBE wMedicalEven = null;

            wDatabase = DatabaseFactory.CreateDatabase(Common.CnnStringName);
            wCmd = wDatabase.GetStoredProcCommand("MedicalEvent_g");
            wDatabase.AddInParameter(wCmd, "MedicalEventId", System.Data.DbType.Int32, pMedicalEventId);

            IDataReader reader = wDatabase.ExecuteReader(wCmd);

           

            #region Fill MedicalEven
            while (reader.Read())
            {
                wMedicalEven = new MedicalEventBE();

                if (reader["CreatedDate"] != DBNull.Value)
                    wMedicalEven.CreatedDate = Convert.ToDateTime(reader["CreatedDate"]);
                if (reader["IdTipoConsulta"] != DBNull.Value)
                    wMedicalEven.IdTipoConsulta = Convert.ToInt32(reader["IdTipoConsulta"]);
                wMedicalEven.Motivo = reader["Motivo"].ToString().Trim();
                wMedicalEven.NombreEspesialidad = reader["NombreEspesialidad"].ToString().Trim();
                wMedicalEven.Evolucion = reader["Evolucion"].ToString().Trim();
                
                wMedicalEven.NombreApellidoProfesional = reader["Profesional"].ToString();

                wMedicalEven.InstitucionRazonSocial = reader["RazonSocial"].ToString();
                if (reader["HealthInstitutionId"] != DBNull.Value)
                    wMedicalEven.HealthInstitutionId = new Guid(reader["HealthInstitutionId"].ToString());
            }
            #endregion

            #region Fill PatientMedicament View
            reader.NextResult();
            wMedicalEven.PatientMedicaments = new PatientMedicament_ViewList();
            PatientMedicament_ViewBE wPatientMedicament_View = null;
            while (reader.Read())
            {
                wPatientMedicament_View = new PatientMedicament_ViewBE();
                wPatientMedicament_View.CreatedDate = Convert.ToDateTime(reader["CreatedDate"]);
                if (reader["DaysCount"] != DBNull.Value)
                    wPatientMedicament_View.DaysCount = Convert.ToInt16(reader["DaysCount"]);

                wPatientMedicament_View.Dosis = reader["Dosis"].ToString().Trim();
                wPatientMedicament_View.Enabled = Convert.ToBoolean(reader["Enabled"]);
                wPatientMedicament_View.Status = Convert.ToInt32(reader["Status"]);
                wPatientMedicament_View.MedicamentName = reader["MedicamentName"].ToString();
                wPatientMedicament_View.MedicamentPresentation = reader["MedicamentPresentation"].ToString();
                wPatientMedicament_View.NombreProfesional = reader["NombreProfesional"].ToString();
                if (reader["Periodicity_hours"] != DBNull.Value)
                    wPatientMedicament_View.Periodicity_hours = Convert.ToInt16(reader["Periodicity_hours"]);

                wPatientMedicament_View.NombreProfesional = reader["NombreProfesional"].ToString().Trim();
                wPatientMedicament_View.ApellidoProfesional = reader["ApellidoProfesional"].ToString().Trim();

                wMedicalEven.PatientMedicaments.Add(wPatientMedicament_View);
            }



            #endregion

            #region Fill Details
            reader.NextResult();

            wMedicalEven.MedicalEventDetail_ViewList = new MedicalEventDetail_ViewList();
            MedicalEventDetail_ViewBE wMedicalEventDetail_ViewBE = null;
            while (reader.Read())
            {
                wMedicalEventDetail_ViewBE = new MedicalEventDetail_ViewBE();
                wMedicalEventDetail_ViewBE.Id = Convert.ToInt32(reader["Id"]);
                wMedicalEventDetail_ViewBE.Code = reader["Code"].ToString().Trim();
                wMedicalEventDetail_ViewBE.DetailType = Convert.ToInt16(reader["DetailType"]);
                if (reader["RelevanceType"] != DBNull.Value)
                {
                    wMedicalEventDetail_ViewBE.RelevanceTypeName = reader["RelevanceTypeName"].ToString().Trim();
                    wMedicalEventDetail_ViewBE.RelevanceType = Convert.ToInt16(reader["RelevanceType"]);
                }
                wMedicalEventDetail_ViewBE.Desc = reader["Desc"].ToString();
                wMedicalEventDetail_ViewBE.Observations = reader["Observations"].ToString();
                
                wMedicalEven.MedicalEventDetail_ViewList.Add(wMedicalEventDetail_ViewBE);
            }

            #endregion


            reader.Dispose();

            return wMedicalEven;

        }
Пример #13
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="patientId"></param>
        /// <returns></returns>
        public static void CreateUpdatePatientMedicaments(PatientMedicament_ViewBE patientMedicament_View)
        {
            CreateUpdatePatientMedicamentReq req = new CreateUpdatePatientMedicamentReq();
            req.BusinessData = patientMedicament_View;

            req.ContextInformation.UserId = frmBase_TabForm.IndentityUserInfo.ProviderId.ToString();
            req.ContextInformation.AppId = Controller.CurrentHealthInstitution.HealthInstitutionId.ToString();
            CreateUpdatePatientMedicamentRes res = req.ExecuteService<CreateUpdatePatientMedicamentReq, CreateUpdatePatientMedicamentRes>(req);

            if (res.Error != null)
                throw Fwk.Exceptions.ExceptionHelper.ProcessException(res.Error);

        }
Пример #14
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="patientMedicament_View"></param>
        /// <param name="createdUserId"></param>
        public static void UpdatePatientMedicaments(PatientMedicament_ViewBE patientMedicament_View, Guid createdUserId)
        {
            using (Health.Back.BE.HealthEntities dc = new Health.Back.BE.HealthEntities(Common.CnnString_Entities))
            {
                PatientMedicament patientMedicament_db = dc.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(patientMedicament_View.PatientMedicamentId)).FirstOrDefault<PatientMedicament>();

                if (patientMedicament_db == null) return;

                patientMedicament_db.Status = patientMedicament_View.Status;
                
                patientMedicament_db.MedicalEventId = patientMedicament_View.MedicalEventId;
                patientMedicament_db.PatientId = patientMedicament_View.PatientId;

                patientMedicament_db.PatientMedicamentId_Parent = patientMedicament_View.PatientMedicamentId_Parent;
                patientMedicament_db.MedicamentName = patientMedicament_View.MedicamentName;
                patientMedicament_db.MedicamentPresentation = patientMedicament_View.MedicamentPresentation;
                patientMedicament_db.Dosis = patientMedicament_View.Dosis;
                patientMedicament_db.Periodicity_hours = patientMedicament_View.Periodicity_hours;
                patientMedicament_db.CreatedDate = System.DateTime.Now;
                patientMedicament_db.CreatedUserId = createdUserId;
                patientMedicament_db.Enabled = patientMedicament_View.Enabled;
                patientMedicament_db.DaysCount = patientMedicament_View.DaysCount;

                dc.SaveChanges();
            }
        }
Пример #15
0
        /// <summary>
        /// Crea un nuevo nuevo PatientMedicament a partir del que se pasa por parametros para mantener el historial
        /// al nuevo se le establece como parent el pasado por parametros 
        /// patientMedicament.PatientMedicamentId_Parent = patientMedicament.PatientMedicamentId;
        /// </summary>
        /// <param name="patientMedicament"></param>
        /// <param name="createdUserId"></param>
        public static void UpdatePatientMedicaments_histoy(PatientMedicament_ViewBE patientMedicament, Guid createdUserId)
        {
            patientMedicament.PatientMedicamentId_Parent = patientMedicament.PatientMedicamentId;
            
            AddPatientMedicaments(patientMedicament, createdUserId);

        }
Пример #16
0
        public static void AddPatientMedicaments(PatientMedicament_ViewBE patientMedicament_View, Guid createdUserId)
        {
            
            using (Health.Back.BE.HealthEntities dc = new Health.Back.BE.HealthEntities(Common.CnnString_Entities))
            {

                PatientMedicament patientMedicament_db = new PatientMedicament();

                patientMedicament_db.Status = patientMedicament_View.Status;
                
                patientMedicament_db.MedicalEventId = patientMedicament_View.MedicalEventId;
                patientMedicament_db.PatientId = patientMedicament_View.PatientId;
                if(patientMedicament_View.PatientMedicamentId_Parent >=0)
                    patientMedicament_db.PatientMedicamentId_Parent = patientMedicament_View.PatientMedicamentId_Parent;

                patientMedicament_db.MedicamentName = patientMedicament_View.MedicamentName;
                patientMedicament_db.MedicamentPresentation = patientMedicament_View.MedicamentPresentation;
                patientMedicament_db.Dosis = patientMedicament_View.Dosis;
                patientMedicament_db.Periodicity_hours = patientMedicament_View.Periodicity_hours;
                patientMedicament_db.CreatedDate = System.DateTime.Now;
                patientMedicament_db.CreatedUserId = createdUserId;
                patientMedicament_db.DaysCount = patientMedicament_View.DaysCount;
                patientMedicament_db.Enabled = true;
                dc.PatientMedicaments.AddObject(patientMedicament_db);
                dc.SaveChanges();
            }
            
        }
Пример #17
0
        /// <summary>
        /// Obtiene Medical event y medicamentos con full detalles.
        /// Utiliza SP: MedicalEvent_g
        /// </summary>
        /// <param name="pMedicalEventId"></param>
        /// <returns></returns>
        public static MedicalEventBE GetEvent(int pMedicalEventId)
        {
            Database  wDatabase = null;
            DbCommand wCmd      = null;


            MedicalEventBE wMedicalEven = null;

            wDatabase = DatabaseFactory.CreateDatabase(Common.CnnStringName);
            wCmd      = wDatabase.GetStoredProcCommand("MedicalEvent_g");
            wDatabase.AddInParameter(wCmd, "MedicalEventId", System.Data.DbType.Int32, pMedicalEventId);

            IDataReader reader = wDatabase.ExecuteReader(wCmd);



            #region Fill MedicalEven
            while (reader.Read())
            {
                wMedicalEven = new MedicalEventBE();

                if (reader["CreatedDate"] != DBNull.Value)
                {
                    wMedicalEven.CreatedDate = Convert.ToDateTime(reader["CreatedDate"]);
                }
                if (reader["IdTipoConsulta"] != DBNull.Value)
                {
                    wMedicalEven.IdTipoConsulta = Convert.ToInt32(reader["IdTipoConsulta"]);
                }
                wMedicalEven.Motivo             = reader["Motivo"].ToString().Trim();
                wMedicalEven.NombreEspesialidad = reader["NombreEspesialidad"].ToString().Trim();
                wMedicalEven.Evolucion          = reader["Evolucion"].ToString().Trim();

                wMedicalEven.NombreApellidoProfesional = reader["Profesional"].ToString();

                wMedicalEven.InstitucionRazonSocial = reader["RazonSocial"].ToString();
                if (reader["HealthInstitutionId"] != DBNull.Value)
                {
                    wMedicalEven.HealthInstitutionId = new Guid(reader["HealthInstitutionId"].ToString());
                }
            }
            #endregion

            #region Fill PatientMedicament View
            reader.NextResult();
            wMedicalEven.PatientMedicaments = new PatientMedicament_ViewList();
            PatientMedicament_ViewBE wPatientMedicament_View = null;
            while (reader.Read())
            {
                wPatientMedicament_View             = new PatientMedicament_ViewBE();
                wPatientMedicament_View.CreatedDate = Convert.ToDateTime(reader["CreatedDate"]);
                if (reader["DaysCount"] != DBNull.Value)
                {
                    wPatientMedicament_View.DaysCount = Convert.ToInt16(reader["DaysCount"]);
                }

                wPatientMedicament_View.Dosis                  = reader["Dosis"].ToString().Trim();
                wPatientMedicament_View.Enabled                = Convert.ToBoolean(reader["Enabled"]);
                wPatientMedicament_View.Status                 = Convert.ToInt32(reader["Status"]);
                wPatientMedicament_View.MedicamentName         = reader["MedicamentName"].ToString();
                wPatientMedicament_View.MedicamentPresentation = reader["MedicamentPresentation"].ToString();
                wPatientMedicament_View.NombreProfesional      = reader["NombreProfesional"].ToString();
                if (reader["Periodicity_hours"] != DBNull.Value)
                {
                    wPatientMedicament_View.Periodicity_hours = Convert.ToInt16(reader["Periodicity_hours"]);
                }

                wPatientMedicament_View.NombreProfesional   = reader["NombreProfesional"].ToString().Trim();
                wPatientMedicament_View.ApellidoProfesional = reader["ApellidoProfesional"].ToString().Trim();

                wMedicalEven.PatientMedicaments.Add(wPatientMedicament_View);
            }



            #endregion

            #region Fill Details
            reader.NextResult();

            wMedicalEven.MedicalEventDetail_ViewList = new MedicalEventDetail_ViewList();
            MedicalEventDetail_ViewBE wMedicalEventDetail_ViewBE = null;
            while (reader.Read())
            {
                wMedicalEventDetail_ViewBE            = new MedicalEventDetail_ViewBE();
                wMedicalEventDetail_ViewBE.Id         = Convert.ToInt32(reader["Id"]);
                wMedicalEventDetail_ViewBE.Code       = reader["Code"].ToString().Trim();
                wMedicalEventDetail_ViewBE.DetailType = Convert.ToInt16(reader["DetailType"]);
                if (reader["RelevanceType"] != DBNull.Value)
                {
                    wMedicalEventDetail_ViewBE.RelevanceTypeName = reader["RelevanceTypeName"].ToString().Trim();
                    wMedicalEventDetail_ViewBE.RelevanceType     = Convert.ToInt16(reader["RelevanceType"]);
                }
                wMedicalEventDetail_ViewBE.Desc         = reader["Desc"].ToString();
                wMedicalEventDetail_ViewBE.Observations = reader["Observations"].ToString();

                wMedicalEven.MedicalEventDetail_ViewList.Add(wMedicalEventDetail_ViewBE);
            }

            #endregion


            reader.Dispose();

            return(wMedicalEven);
        }
Пример #18
0
        /// <summary>
        ///
        /// </summary>
        public override void AceptChanges(bool this_will_close)
        {
            //_Evento.IsDefinitive = chkDefinitivo.Checked;
            _Evento.Motivo    = txtMotivo.Text;
            _Evento.Evolucion = txtEvolution.Text;
            _Evento.Motivo    = txtMotivo.Text;


            if (cmbTipoConsulta.EditValue != null)
            {
                if ((int)cmbTipoConsulta.EditValue != (int)CommonValuesEnum.SeleccioneUnaOpcion)
                {
                    _Evento.IdTipoConsulta = Convert.ToInt32(cmbTipoConsulta.EditValue);
                }
            }

            //No enviar los medicamentos que no sufrieron modificaciones
            var medList = _Evento.PatientMedicaments.Where(p => p.EntityState != Fwk.Bases.EntityState.Unchanged).ToList();

            _Evento.PatientMedicaments.Clear();
            _Evento.PatientMedicaments.AddRange(medList);

            #region   Mapeo de details view a DetailView_Diagnosis
            _Evento.MedicalEventDetailList.Clear();
            var medDetails = _Evento.DetailView_Diagnosis.Where(p => p.EntityState != Fwk.Bases.EntityState.Unchanged).ToList();



            foreach (MedicalEventDetail_ViewBE det_view in medDetails)
            {
                MedicalEventDetailBE det = new MedicalEventDetailBE(det_view);
                det.ActiveRelevance = true;
                _Evento.MedicalEventDetailList.Add(det);
            }
            #endregion

            #region   Mapeo de details view a DetailView_Diagnosis
            medDetails = _Evento.DetailView_MetodosComplementarios.Where(p => p.EntityState != Fwk.Bases.EntityState.Unchanged).ToList();

            foreach (MedicalEventDetail_ViewBE det_view in medDetails)
            {
                MedicalEventDetailBE det = new MedicalEventDetailBE(det_view);
                det.ActiveRelevance = true;
                _Evento.MedicalEventDetailList.Add(det);
            }
            #endregion

            try
            {
                Controller.UpdateMedicalEvent(_Evento);

                if (this_will_close == false)
                {
                    MessageBox.Show("Datos actualizados con éxito", "Atención de pacientes", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    _Evento.MedicalEventDetailList.Clear();
                    _Evento.PatientMedicaments.Clear();

                    Selected_PatientMedicament = null;

                    _Evento.PatientMedicaments = Controller.RetrivePatientMedicaments(Controller.CurrentPatient.PatientId, _Evento.MedicalEventId);


                    MedicalEventDetail_ViewList details = Controller.RetriveMedicalEventDetails(Controller.CurrentPatient.PatientId, _Evento.MedicalEventId);

                    _Evento.DetailView_Diagnosis = details.Get_Diagnosis();
                    _Evento.DetailView_MetodosComplementarios = details.Get_Metodo_Complementarios();

                    patientMedicamentViewListBindingSource.DataSource = _Evento.PatientMedicaments;
                    gridControl_Medicaments.RefreshDataSource();
                    gridView_Medicaments.RefreshData();
                    uC_EventDetailsGrid_Diagnosis.Populate(_Evento);
                    uC_EventDetailsGrid_MetComplementario.Populate(_Evento);
                    this.State = Fwk.Bases.EntityUpdateEnum.UPDATED;
                    frmPatientAtencion.PopulateAsync(this);
                }
            }
            catch (Exception ex2)
            {
                ExceptionViewer.Show(ex2);
            }
        }
Пример #19
0
 private void gridView_Medicaments_MouseDown(object sender, MouseEventArgs e)
 {
     _HitInfo = gridView_Medicaments.CalcHitInfo(new Point(e.X, e.Y));
     Selected_PatientMedicament = ((PatientMedicament_ViewBE)gridView_Medicaments.GetRow(_HitInfo.RowHandle));
 }
Пример #20
0
        /// <summary>
        /// Crea un nuevo nuevo PatientMedicament a partir del que se pasa por parametros para mantener el historial
        /// al nuevo se le establece como parent el pasado por parametros
        /// patientMedicament.PatientMedicamentId_Parent = patientMedicament.PatientMedicamentId;
        /// </summary>
        /// <param name="patientMedicament"></param>
        /// <param name="createdUserId"></param>
        public static void UpdatePatientMedicaments_histoy(PatientMedicament_ViewBE patientMedicament, Guid createdUserId)
        {
            patientMedicament.PatientMedicamentId_Parent = patientMedicament.PatientMedicamentId;

            AddPatientMedicaments(patientMedicament, createdUserId);
        }
Пример #21
0
        /// <summary>
        /// Medicaments grid
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void gridView_Medicaments_DoubleClick(object sender, EventArgs e)
        {
            if (Selected_PatientMedicament == null)
            {
                return;
            }
            using (frmQueryUpdateMedicament frm = new frmQueryUpdateMedicament())
            {
                #region seteos de formulario
                frm.currentMedicalEventId = _Evento.MedicalEventId;
                if (Selected_PatientMedicament.Enabled)
                {
                    frm.State = this.State;
                }
                else
                {
                    frm.State = Fwk.Bases.EntityUpdateEnum.NONE;
                }
                #endregion

                frm.PatientMedicament_Original = Selected_PatientMedicament;
                frm.PatientMedicamentList      = _Evento.PatientMedicaments;
                frm.Refresh();

                if (frm.ShowDialog() == DialogResult.OK)
                {
                    //Se debe obtener nuevamente dado q el PatientMedicaments que nos da la grilla pierde referencia con la coleccion _Evento.PatientMedicaments


                    ///Agrega uno nuevo en base una anterior
                    if (frm.UpdateMedicamentEnum == UpdateMedicalEventEnum.Other_MedicalEvent)
                    {
                        _Evento.PatientMedicaments.Add(frm.UpdatedPatientMedicament);

                        Selected_PatientMedicament.EntityState = Fwk.Bases.EntityState.Changed;
                        Selected_PatientMedicament.Enabled     = false;
                    }

                    //Actualiza la creada en este Evento Medico
                    if (frm.UpdateMedicamentEnum == UpdateMedicalEventEnum.Same_MedicalEvent)
                    {
                        //if (Selected_PatientMedicament.PatientMedicamentId >= 0)
                        //    Selected_PatientMedicament = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId)).FirstOrDefault();
                        //Mapeo


                        if (Selected_PatientMedicament.PatientMedicamentId >= 0)
                        {
                            Selected_PatientMedicament = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId)).FirstOrDefault();
                            Fwk.HelperFunctions.ReflectionFunctions.MapProperties <PatientMedicament_ViewBE>(frm.UpdatedPatientMedicament, ref Selected_PatientMedicament);
                            Selected_PatientMedicament.EntityState = Fwk.Bases.EntityState.Changed;
                        }
                        else
                        {
                            Fwk.HelperFunctions.ReflectionFunctions.MapProperties <PatientMedicament_ViewBE>(frm.UpdatedPatientMedicament, ref Selected_PatientMedicament);
                        }
                    }
                    patientMedicamentViewListBindingSource.DataSource = _Evento.PatientMedicaments;
                    gridControl_Medicaments.RefreshDataSource();
                    gridView_Medicaments.RefreshData();
                }
            }
        }
Пример #22
0
        void QuitMedicamentFromGridView()
        {
            if (Selected_PatientMedicament == null) return;

            Selected_PatientMedicament = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId)).FirstOrDefault();
            //Si ahun no se envio a la BD se elimina de la coleccion
            if (Selected_PatientMedicament.PatientMedicamentId < 0)

                _Evento.PatientMedicaments.Remove(Selected_PatientMedicament);
            else
            {
                Selected_PatientMedicament.EntityState = Fwk.Bases.EntityState.Deleted;
                Selected_PatientMedicament.Enabled = false;

            }

            //if (Selected_PatientMedicament.PatientMedicamentId_Parent.HasValue)
            //{
            //    var x = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId_Parent)).FirstOrDefault();
            //    if(x!=null)
            //        x.EntityState = Fwk.Bases.EntityState.Unchanged;
            //}

            patientMedicamentViewListBindingSource.DataSource = _Evento.PatientMedicaments;
            gridView_Medicaments.RefreshData();
            gridControl_Medicaments.RefreshDataSource();
        }
Пример #23
0
        /// <summary>
        /// Medicaments grid
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void gridView_Medicaments_DoubleClick(object sender, EventArgs e)
        {
            if (Selected_PatientMedicament == null) return;
            using (frmQueryUpdateMedicament frm = new frmQueryUpdateMedicament())
            {
                #region seteos de formulario
                frm.currentMedicalEventId = _Evento.MedicalEventId;
                if (Selected_PatientMedicament.Enabled)
                    frm.State = this.State;
                else
                    frm.State = Fwk.Bases.EntityUpdateEnum.NONE;
                #endregion

                frm.PatientMedicament_Original = Selected_PatientMedicament;
                frm.PatientMedicamentList = _Evento.PatientMedicaments;
                frm.Refresh();

                if (frm.ShowDialog() == DialogResult.OK)
                {
                    //Se debe obtener nuevamente dado q el PatientMedicaments que nos da la grilla pierde referencia con la coleccion _Evento.PatientMedicaments


                    ///Agrega uno nuevo en base una anterior
                    if (frm.UpdateMedicamentEnum == UpdateMedicalEventEnum.Other_MedicalEvent)
                    {
                        _Evento.PatientMedicaments.Add(frm.UpdatedPatientMedicament);

                        Selected_PatientMedicament.EntityState = Fwk.Bases.EntityState.Changed;
                        Selected_PatientMedicament.Enabled = false;
                    }

                    //Actualiza la creada en este Evento Medico
                    if (frm.UpdateMedicamentEnum == UpdateMedicalEventEnum.Same_MedicalEvent)
                    {

                        //if (Selected_PatientMedicament.PatientMedicamentId >= 0)
                        //    Selected_PatientMedicament = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId)).FirstOrDefault();
                        //Mapeo


                        if (Selected_PatientMedicament.PatientMedicamentId >= 0)
                        {
                            Selected_PatientMedicament = _Evento.PatientMedicaments.Where(p => p.PatientMedicamentId.Equals(Selected_PatientMedicament.PatientMedicamentId)).FirstOrDefault();
                            Fwk.HelperFunctions.ReflectionFunctions.MapProperties<PatientMedicament_ViewBE>(frm.UpdatedPatientMedicament, ref Selected_PatientMedicament);
                            Selected_PatientMedicament.EntityState = Fwk.Bases.EntityState.Changed;
                        }
                        else
                        {
                            Fwk.HelperFunctions.ReflectionFunctions.MapProperties<PatientMedicament_ViewBE>(frm.UpdatedPatientMedicament, ref Selected_PatientMedicament);
                        }
                    }
                    patientMedicamentViewListBindingSource.DataSource = _Evento.PatientMedicaments;
                    gridControl_Medicaments.RefreshDataSource();
                    gridView_Medicaments.RefreshData();
                }
            }
        }
Пример #24
0
        /// <summary>
        /// 
        /// </summary>
        public override void AceptChanges(bool this_will_close)
        {
            //_Evento.IsDefinitive = chkDefinitivo.Checked;
            _Evento.Motivo = txtMotivo.Text;
            _Evento.Evolucion = txtEvolution.Text;
            _Evento.Motivo = txtMotivo.Text;


            if (cmbTipoConsulta.EditValue != null)
                if ((int)cmbTipoConsulta.EditValue != (int)CommonValuesEnum.SeleccioneUnaOpcion)
                    _Evento.IdTipoConsulta = Convert.ToInt32(cmbTipoConsulta.EditValue);

            //No enviar los medicamentos que no sufrieron modificaciones
            var medList = _Evento.PatientMedicaments.Where(p => p.EntityState != Fwk.Bases.EntityState.Unchanged).ToList();
            _Evento.PatientMedicaments.Clear();
            _Evento.PatientMedicaments.AddRange(medList);

            #region   Mapeo de details view a DetailView_Diagnosis
            _Evento.MedicalEventDetailList.Clear();
            var medDetails = _Evento.DetailView_Diagnosis.Where(p => p.EntityState != Fwk.Bases.EntityState.Unchanged).ToList();
            
            

            foreach (MedicalEventDetail_ViewBE det_view in medDetails)
            {
                MedicalEventDetailBE det = new MedicalEventDetailBE(det_view);
                det.ActiveRelevance = true;
                _Evento.MedicalEventDetailList.Add(det);
            }
            #endregion

            #region   Mapeo de details view a DetailView_Diagnosis
            medDetails = _Evento.DetailView_MetodosComplementarios.Where(p => p.EntityState != Fwk.Bases.EntityState.Unchanged).ToList();

            foreach (MedicalEventDetail_ViewBE det_view in medDetails)
            {
                MedicalEventDetailBE det = new MedicalEventDetailBE(det_view);
                det.ActiveRelevance = true;
                _Evento.MedicalEventDetailList.Add(det);
            }
            #endregion

            try
            {
             

                ServiceCalls.UpdateMedicalEvent(_Evento);
      
                if (this_will_close == false)
                {
                    MessageBox.Show("Datos actualizados con éxito", "Atención de pacientes", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    _Evento.MedicalEventDetailList.Clear();
                    _Evento.PatientMedicaments.Clear();
                    
                    Selected_PatientMedicament = null;
                    
                    _Evento.PatientMedicaments = ServiceCalls.RetrivePatientMedicaments(ServiceCalls.CurrentPatient.PatientId, _Evento.MedicalEventId);


                   MedicalEventDetail_ViewList details =  ServiceCalls.RetriveMedicalEventDetails(ServiceCalls.CurrentPatient.PatientId, _Evento.MedicalEventId);

                   _Evento.DetailView_Diagnosis = details.Get_Diagnosis();
                   _Evento.DetailView_MetodosComplementarios = details.Get_Metodo_Complementarios();

                    patientMedicamentViewListBindingSource.DataSource = _Evento.PatientMedicaments;
                    gridControl_Medicaments.RefreshDataSource();
                    gridView_Medicaments.RefreshData();
                    uC_EventDetailsGrid_Diagnosis.Populate(_Evento);
                    uC_EventDetailsGrid_MetComplementario.Populate(_Evento);
                    this.State = Fwk.Bases.EntityUpdateEnum.UPDATED;
                    frmPatientAtencion.PopulateAsync(this);
                }
            }
            catch (Exception ex2)
            {
                ExceptionViewer.Show(ex2);
            }

        }