Exemplo n.º 1
0
        /// <summary>
        /// Metodo para popular os itens do comboBox
        /// </summary>

        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            if (!VerificaPreenchimento())
            {
                MessageBox.Show("Existem campos não preechidos");
                return;
            }

            TimeSpan entrada       = new TimeSpan(timePickerEntrada.SelectedTime.Value.Hour, timePickerEntrada.SelectedTime.Value.Minute, 0);
            TimeSpan saida         = new TimeSpan(timePickerSaida.SelectedTime.Value.Hour, timePickerSaida.SelectedTime.Value.Minute, 0);
            TimeSpan saidaAlmoco   = new TimeSpan(timePickerSaidaAlmoco.SelectedTime.Value.Hour, timePickerSaidaAlmoco.SelectedTime.Value.Minute, 0);
            TimeSpan retornoAlmoco = new TimeSpan(timePickerRetornoAlmoco.SelectedTime.Value.Hour, timePickerRetornoAlmoco.SelectedTime.Value.Minute, 0);

            TimeSpan totalHoraAlmoco = retornoAlmoco.Subtract(saidaAlmoco);
            TimeSpan horaTrabalho    = Func.HoraTermino.Subtract(Func.HoraInicio).Subtract(totalHoraAlmoco);

            if (Horas.Extras != (new TimeSpan(0, 0, 0)))
            {
                BancoDeHoras removerDoBancoDeHoras = new BancoDeHoras(-Horas.Extras, "Horas extras removidas por edição de horas", Horas.DataRegistro, Func.Registro);
                await ClientApi.CreateBankHoursAsync(removerDoBancoDeHoras).ConfigureAwait(true);
            }

            Horas.Entrada           = entrada;
            Horas.Saida             = saida;
            Horas.HoraSaidaAlmoco   = saidaAlmoco == new TimeSpan(0, 0, 0) ? Func.HoraSaidaAlmoco : saidaAlmoco;
            Horas.HoraRetornoAlmoco = retornoAlmoco == new TimeSpan(0, 0, 0) ? Func.HoraRetornoAlmoco : retornoAlmoco;
            Horas.CalculaExtras(horaTrabalho);

            if (Horas.Extras <= new TimeSpan(0, 10, 0) && Horas.Extras >= new TimeSpan(0, -10, 0))
            {
                Horas.Extras = new TimeSpan(0, 0, 0);
            }

            string justificativa = txtBoxJustificativa.Text;

            if (justificativa.Length < 20)
            {
                MessageBox.Show("A alteração só pode ser feita com uma justificativa de mínimo 20 caracteres.");
                return;
            }

            BancoDeHoras bancoDeHoras = new BancoDeHoras(Horas.Extras, justificativa, DateTime.Now, Func.Registro);

            try
            {
                await ClientApi.CreateBankHoursAsync(bancoDeHoras).ConfigureAwait(true);

                await ClientApi.UpdateEmployeeHoursAsync(Horas).ConfigureAwait(true);
            }
            catch (HttpRequestException ex)
            {
                MessageBox.Show(ex.Message);
            }

            Close();
        }
 private static async Task AddBancoDeHoras(BancoDeHoras banco)
 {
     try
     {
         await ClientApi.CreateBankHoursAsync(banco).ConfigureAwait(true);
     }
     catch (HttpRequestException e)
     {
         MessageBox.Show(e.Message);
     }
 }
Exemplo n.º 3
0
        public IActionResult Update(string id, BancoDeHoras BankHoursIn)
        {
            var bank = _bancoDeHorasService.Get(id);

            if (bank == null)
            {
                return(NotFound());
            }

            _bancoDeHorasService.Update(id, BankHoursIn);

            return(NoContent());
        }
Exemplo n.º 4
0
        /// <summary>
        /// Adicina horas no banco de horas
        /// </summary>
        /// <param name="bankHoursIn">Objeto banco de horas a ser adicionado</param>
        /// <returns>Retorna uma uri contendo o endereço da api do novo registro</returns>
        public static async Task <Uri> CreateBankHoursAsync(BancoDeHoras bankHoursIn)
        {
            HttpResponseMessage response = await httpClient.PostAsJsonAsync("api/bankHours/", bankHoursIn).ConfigureAwait(true);

            try
            {
                response.EnsureSuccessStatusCode();
                return(response.Headers.Location);
            }
            catch (HttpRequestException e)
            {
                Console.WriteLine(e.Message);
                throw;
            }
        }
 private async Task AddMarcacaoPonto(HorasFuncionario horas)
 {
     if (horas.Extras.Minutes != 0 || horas.Extras.Hours != 0)
     {
         BancoDeHoras bancoDeHoras = new BancoDeHoras(horas.Extras, "Horas Extras", horas.DataRegistro, Func.Registro);
         await AddBancoDeHoras(bancoDeHoras).ConfigureAwait(true);
     }
     try
     {
         await ClientApi.CreateEmployeeHoursAsync(horas).ConfigureAwait(true);
     }
     catch (HttpRequestException e)
     {
         MessageBox.Show(e.Message);
     }
 }
        private async void BtnDeletar_Click(object sender, RoutedEventArgs e)
        {
            HorasFuncionario horas = (HorasFuncionario)Listhoras.SelectedItem;

            HorasFuncionario horasFuncionario = await ClientApi.GetEmployeeHoursAsync(horas.Id).ConfigureAwait(true);

            if (MessageBox.Show("Deseja realmente deletar?", "Confirmar", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                if (horasFuncionario != null)
                {
                    if (horasFuncionario.Extras != (new TimeSpan(0, 0, 0)))
                    {
                        BancoDeHoras removerDoBancoDeHoras = new BancoDeHoras(-horasFuncionario.Extras, "Registro deletado", horasFuncionario.DataRegistro, Func.Registro);
                        await ClientApi.CreateBankHoursAsync(removerDoBancoDeHoras).ConfigureAwait(true);
                    }
                    else
                    {
                        BancoDeHoras JustificativaBancoDeHoras = new BancoDeHoras(new TimeSpan(0, 0, 0), "Registro deletado", horasFuncionario.DataRegistro, Func.Registro);
                        await ClientApi.CreateBankHoursAsync(JustificativaBancoDeHoras).ConfigureAwait(true);
                    }

                    await ClientApi.DeleteEmployeeHoursAsync(horas).ConfigureAwait(true);
                    await RefreshList(Func).ConfigureAwait(true);

                    horasFuncionario = await ClientApi.GetEmployeeHoursAsync(horas.Id).ConfigureAwait(true);

                    if (horasFuncionario == null)
                    {
                        MessageBox.Show("Registro deletado com sucesso!");
                    }
                }
                else
                {
                    MessageBox.Show("Não há registros na data selecionada!");
                }
            }
        }
 public void Update(string id, BancoDeHoras bancoDeHourasIn) => _bankHoursService.ReplaceOne(bancoDeHouras => bancoDeHourasIn.Id == id, bancoDeHourasIn);
 public void Remove(BancoDeHoras bancoDeHorasIn) => _bankHoursService.DeleteOne(bancoDeHoras => bancoDeHoras.Id == bancoDeHorasIn.Id);
        public BancoDeHoras Create(BancoDeHoras bankIn)
        {
            _bankHoursService.InsertOne(bankIn);

            return(bankIn);
        }
Exemplo n.º 10
0
        public ActionResult <BancoDeHoras> Create(BancoDeHoras bankIn)
        {
            _bancoDeHorasService.Create(bankIn);

            return(CreatedAtRoute("GetBankById", new { id = bankIn.Id.ToString() }, bankIn));
        }