예제 #1
0
 private void BtnSalvar_Click(object sender, RoutedEventArgs e)
 {
     if (cboCorretor.SelectedValue != null || cboImovel.SelectedValue != null || cboLocatario.SelectedValue != null || txtDataVencimento.SelectedDate != null)
     {
         var Corretor   = CorretorDAO.BuscarPorId((int)cboCorretor.SelectedValue);
         var Imovel     = ImovelDAO.BuscarPorId((int)cboImovel.SelectedValue);
         var TipoImovel = TipoImovelDAO.BuscarPorId((int)cboImovel.SelectedValue);
         var Locatario  = LocatarioDAO.BuscarPorId((int)cboLocatario.SelectedValue);
         Contrato = new Contrato()
         {
             ComissaoCorretor = (TipoImovel.Comissao * 0.01) * Imovel.ValorAluguel,
             DataVencimento   = txtDataVencimento.SelectedDate.Value,
             CorretorId       = Corretor.Id,
             ImovelId         = Imovel.Id,
             LocatarioId      = Locatario.Id,
             ValorAluguel     = Imovel.ValorAluguel
         };
         if (Imovel.Locado != true)
         {
             if (Imovel.ValorAluguel <= Locatario.RendaDisponivel)
             {
                 if (Imovel.Cidade == Locatario.Cidade && Imovel.UF == Locatario.UF)
                 {
                     if (ContratoDAO.Cadastrar(Contrato))
                     {
                         Imovel.Locado = true;
                         ImovelDAO.Atualizar(Imovel);
                         MessageBox.Show("Contrato salvo com sucesso!", "Imob",
                                         MessageBoxButton.OK, MessageBoxImage.Information);
                     }
                     else
                     {
                         MessageBox.Show("Erro interno: contate um ADM!", "Imob",
                                         MessageBoxButton.OK, MessageBoxImage.Error);
                     }
                 }
                 else
                 {
                     MessageBox.Show("Locatario não pertence a este Estado nem Cidade!", "Imob",
                                     MessageBoxButton.OK, MessageBoxImage.Information);
                 }
             }
             else
             {
                 MessageBox.Show("Valor do aluguel excede a renda disponivel!", "Imob",
                                 MessageBoxButton.OK, MessageBoxImage.Information);
             }
         }
         else
         {
             MessageBox.Show("Imovel já está locado!", "Imob",
                             MessageBoxButton.OK, MessageBoxImage.Information);
         }
     }
     else
     {
         MessageBox.Show("Todos os campos são obrigatórios!", "Imob",
                         MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
예제 #2
0
        public IActionResult CadastrarContrato(Contrato contrato)
        {
            if (ModelState.IsValid)
            {
                var Corretor  = _corretorDAO.BuscarPorId(contrato.CorretorId);
                var Locatario = _locatarioDAO.BuscarPorId(contrato.LocatarioId);
                var Imovel    = _imovelDAO.BuscarPorId(contrato.ImovelId);
                contrato.Imovel           = Imovel;
                contrato.Corretor         = Corretor;
                contrato.Locatario        = Locatario;
                contrato.ValorAluguel     = Imovel.ValorAluguel;
                contrato.ComissaoCorretor = (Imovel.ValorAluguel / 100) * 2;

                var arquivo = _geradorDePDF.GetPdf(contrato);
                contrato.Arquivo = arquivo;
                _contratoDAO.Cadastrar(contrato);
                return(RedirectToAction("ListaContratos", "Contrato"));
            }
            ModelState.AddModelError("", "Não foi possível cadastrar contrato tente novamente!");
            return(View(contrato));
        }