/// <summary> /// Metodo para atualização dos campos da janela. /// </summary> /// <param name="id">Id do funcionario a ser recuperado.</param> /// <param name="dataBusca">Mes referente ao periodo a ser exibido.</param> public async Task RefreshWindow(string id, DateTime dataBusca) { Funcionario funcionario; try { funcionario = await ClientApi.GetEmployeeAsync(id).ConfigureAwait(true); List <BancoDeHoras> bancoDeHoras = await ClientApi.GetBankHoursFilteredAsync(funcionario, dataBusca).ConfigureAwait(true); dgBanco.ItemsSource = bancoDeHoras; } catch (HttpRequestException e) { MessageBox.Show(e.Message); } }
/// <summary> /// Evento click do botão salvar funcionario /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void BtnSalvar_Click(object sender, RoutedEventArgs e) { Funcionario funcionario; Funcionario busca = await ClientApi.GetEmployeeAsync(int.Parse(txtRegistro.Text, CultureInfo.InvariantCulture)).ConfigureAwait(true); try { funcionario = new Funcionario(int.Parse(txtRegistro.Text, CultureInfo.InvariantCulture), txtNome.Text, txtFuncao.Text, new TimeSpan(timePickerEntrada.SelectedTime.Value.Hour, timePickerEntrada.SelectedTime.Value.Minute, 0), new TimeSpan(timePickerSaida.SelectedTime.Value.Hour, timePickerSaida.SelectedTime.Value.Minute, 0), new TimeSpan(timePickerSaidaAlmoco.SelectedTime.Value.Hour, timePickerSaidaAlmoco.SelectedTime.Value.Minute, 0), new TimeSpan(timePickerRetornoAlmoco.SelectedTime.Value.Hour, timePickerRetornoAlmoco.SelectedTime.Value.Minute, 0), checkAtivo.IsChecked.Value); } catch (FormatException ex) { MessageBox.Show("Favor conferir os dados informados " + ex.Message); return; } catch (InvalidOperationException) { MessageBox.Show("Existem campos em branco"); return; } if (busca != null) { switch (MessageBox.Show("Cadastro já existente!\nDeseja Atualizar com esses dados?", "Confirmar alteração", MessageBoxButton.YesNoCancel, MessageBoxImage.Question)) { case MessageBoxResult.Yes: try { busca.HoraInicio = funcionario.HoraInicio; busca.HoraSaidaAlmoco = funcionario.HoraSaidaAlmoco; busca.HoraRetornoAlmoco = funcionario.HoraRetornoAlmoco; busca.HoraTermino = funcionario.HoraTermino; busca.Ativo = funcionario.Ativo; await ClientApi.UpdateEmployeeAsync(busca).ConfigureAwait(true); MessageBox.Show("Cadastro efetuado com sucesso."); Close(); } catch (HttpRequestException ex) { MessageBox.Show(ex.Message); return; } break; case MessageBoxResult.No: PreencherCampos(busca); break; case MessageBoxResult.Cancel: return; } } else { try { await ClientApi.CreateEmployeeAsync(funcionario).ConfigureAwait(true); } catch (HttpRequestException ex) { MessageBox.Show(ex.Message); return; } MessageBox.Show("Cadastro efetuado com sucesso."); Close(); } }