private Contrato Contratar(Contratante contratante) { Contrato _contrato = new Contrato(); ContratoDAO _contratoDAO = new ContratoDAO(); using (TransactionScope scope = new TransactionScope()) { bool sucesso = false; try { _contrato.COD_CONTRATANTE = contratante.COD_CONTRATANTE; _contrato.COD_PERIODICIDADE = ((Periodicidade)cmbPeriodicidade.SelectedItem).COD_PERIODICIDADE; _contrato.DATA_ABERTURA = DateTime.Parse(DateTime.Now.ToShortDateString()); _contrato.JUROS = decimal.Parse(txtJuros.Text.Replace('.', ',')); _contrato.PERIODO = int.Parse(txtPeriodo.Text); _contrato.VALOR = decimal.Parse(txtValor.Text.Replace('.', ',')); _contrato.COD_ROTA = (new RotaDAO().Find(r => r.COD_VENDEDOR == ((Vendedor)cmbVendedores.SelectedItem).COD_VENDEDOR && r.CONCLUIDA == false).First()).COD_ROTA; _contrato.ATIVO = true; _contratoDAO.Add(_contrato); _contratoDAO.SaveChanges(); //if (new Concepti.Factoring.Business.Classes.Rota(_contrato.rota).podeContratar()) //{ // sucesso = true; //} //else //{ // sucesso = false; // throw new Exception("Não há saldo para realizar esta contratação."); //} sucesso = true; } catch (Exception ex) { sucesso = false; throw new Exception(ex.Message); } if (sucesso) { scope.Complete(); } } return(_contrato); }
public void SalvarContrato(Contrato contrato) { try { if (contrato.COD_CONTRATO == null) { _DAO.Add(contrato); } _DAO.SaveChanges(); } catch (DbEntityValidationException dbex) { throw dbex; } catch (Exception ex) { throw ex; } }