private void ConfirmarRota() { bool sucesso; try { RotaDAO rotaDao = new RotaDAO(); MovimentoDAO movimentoDao = new MovimentoDAO(); MovimentoRotaDAO movimentoRotaDao = new MovimentoRotaDAO(); Rota novaRota = instanciarRota(); MovimentoRota novoMovimentoRota = new MovimentoRota(); Movimento novoMovimento = new Movimento(); using (TransactionScope scope = new TransactionScope()) { try { rotaDao.Add(novaRota); rotaDao.SaveChanges(); //instancia o movimento novoMovimento.COD_TIPO_MOVIMENTO = 1; novoMovimento.MOMENTO = novaRota.DATA_INICIO; novoMovimento.VALOR = novaRota.FUNDO; //salva o movimento movimentoDao.Add(novoMovimento); movimentoDao.SaveChanges(); //instancia movimento_rota novoMovimentoRota.COD_MOVIMENTO = novoMovimento.COD_MOVIMENTO; novoMovimentoRota.COD_ROTA = novaRota.COD_ROTA; //salva movimento_rota movimentoRotaDao.Add(novoMovimentoRota); movimentoRotaDao.SaveChanges(); sucesso = true; } catch { sucesso = false; throw new Exception("Erro ao criar rota."); } if (sucesso) { scope.Complete(); } } } catch { throw new Exception("Erro ao criar rota."); } }
public void RegistrarMovimento(decimal valor, int codTipoMovimento) { bool sucesso; Movimento movimento = new Movimento(); MovimentoRota movimentoRota = new MovimentoRota(); MovimentoDAO movimentoDao = new MovimentoDAO(); MovimentoRotaDAO movimentoRotaDao = new MovimentoRotaDAO(); using (TransactionScope scope = new TransactionScope()) { try { movimento.COD_TIPO_MOVIMENTO = codTipoMovimento; movimento.MOMENTO = DateTime.Now; movimento.VALOR = valor; movimentoDao.Add(movimento); movimentoDao.SaveChanges(); movimentoRota.COD_MOVIMENTO = movimento.COD_MOVIMENTO; movimentoRota.COD_ROTA = _rota.COD_ROTA; movimentoRotaDao.Add(movimentoRota); movimentoRotaDao.SaveChanges(); sucesso = true; } catch { sucesso = false; throw new EntityException("Erro."); } if (sucesso) { scope.Complete(); } } }
public void BaixarBoleto() { bool sucesso = false; int cod_rota = 0; if (!this._boleto.COD_SITUACAO_BOLETO.Equals(2)) { BoletoDAO _boletoDAO = new BoletoDAO(); Movimento movimento = new Movimento(); MovimentoDAO movimentoDAO = new MovimentoDAO(); MovimentoRotaDAO mRotaDAO = new MovimentoRotaDAO(); MovimentoRota movimentoRota = new MovimentoRota(); using (TransactionScope scope = new TransactionScope()) { try { cod_rota = new VendedorBO(_boleto.CONTRATO_FK.ROTA_FK.VENDEDOR_FK).buscarRotaAberta().COD_ROTA; Boleto _boletoNovo = _boletoDAO.Find(b => b.COD_BOLETO == _boleto.COD_BOLETO).First <Boleto>(); _boletoNovo.COD_SITUACAO_BOLETO = 2; _boletoNovo.DATA_PAGAMENTO = DateTime.Now; _boletoDAO.SaveChanges(); movimento.COD_TIPO_MOVIMENTO = 3; movimento.MOMENTO = _boletoNovo.DATA_PAGAMENTO; movimento.VALOR = _boletoNovo.VALOR; movimentoDAO.Add(movimento); movimentoDAO.SaveChanges(); movimentoRota.COD_MOVIMENTO = movimento.COD_MOVIMENTO; movimentoRota.COD_ROTA = cod_rota; mRotaDAO.Add(movimentoRota); mRotaDAO.SaveChanges(); sucesso = true; } catch { if (cod_rota == 0) { throw new Exception("Não há rota aberta para o vendedor: " + _boleto.CONTRATO_FK.ROTA_FK.VENDEDOR_FK.NOME); } else { throw new Exception("Não há rota aberta para o vendedor: " + _boleto.CONTRATO_FK.ROTA_FK.VENDEDOR_FK.NOME); } } if (sucesso) { scope.Complete(); } } } else { throw new Exception("Este boleto não pode ser baixado."); } }