Ejemplo n.º 1
0
        private void AsociarPacienteFisioterapeuta(object parameter)
        {
            //golpeo l abase de datos
            int iCodigoFisioterapueta01 = SelectedKeyUno.Value.Key;
            int iCodigoFisioterapeuta02 = SelectedKeyDos.Value.Key;

            if (Mode == Mode.Add)
            {
                if (iCodigoFisioterapueta01 == -1 && -1 == iCodigoFisioterapeuta02)
                {
                    MessageBox.Show("Por favor, seleccione al menos un fisioterarpeuta para asignarlo a un paciente.", "Advertencia");
                }
                else if (iCodigoFisioterapueta01 == iCodigoFisioterapeuta02)
                {
                    MessageBox.Show("No se puede asociar dos mismos fisioterapeutas a un paciente.", "Advertencia");
                }
                else
                {
                    if (PacienteDL.AsignarFisioterapuetasPaciente(iCodigoPaciente, iCodigoFisioterapueta01, iCodigoFisioterapeuta02))
                    {
                        ListaPacientesAsociacionViewModel.Instance().ForzarListaRefresh();
                        MessageBox.Show("Paciente y fisioterapeuta(s) asociados.", "Asignación realizada");
                    }
                }
            }
            if (Mode == Mode.Edit)
            {
                if (iCodigoFisioterapueta01 == -1 && -1 == iCodigoFisioterapeuta02)
                {
                    if (MessageBoxResult.Yes == MessageBox.Show("Está desasignando fisioterapeutas al paciente.", "Advertencia", MessageBoxButton.OKCancel))
                    {
                        MessageBox.Show("Paciente y fisioterapeuta(s) desasociados.", "Advertencia");

                        if (PacienteDL.AsignarFisioterapuetasPaciente(iCodigoPaciente, -1, -1))
                        {
                            ListaPacientesAsociacionViewModel.Instance().ForzarListaRefresh();
                            MessageBox.Show("Asociación actualizada.", "Asignación realizada");
                        }
                    }
                }
                else if (iCodigoFisioterapueta01 == iCodigoFisioterapeuta02)
                {
                    MessageBox.Show("No se puede asociar el mis fisioterapeutas a un paciente.", "Advertencia");
                }
                else
                {
                    if (PacienteDL.AsignarFisioterapuetasPaciente(iCodigoPaciente, iCodigoFisioterapueta01, iCodigoFisioterapeuta02))
                    {
                        ListaPacientesAsociacionViewModel.Instance().ForzarListaRefresh();
                        MessageBox.Show("Asociación actualizada.");
                    }
                }
            }


            // update modulo fisioterapeuta
            //FisioterapeutaTestAnalisisViewModel.Instance().ForzarUpdate();
        }