Example #1
0
        public bool AlterarTaxas(int[] canalEventosIDs, int[] canaisIDs, int eventoID, int taxa, decimal taxaMin, decimal taxaMax, int comissao, decimal comissaoMin, decimal comissaoMax)
        {
            try
            {
                bool ok = true;

                bd.IniciarTransacao();

                for (int i = 0; i < canalEventosIDs.Length; i++)
                {
                    int canalEventoID = canalEventosIDs[i];
                    int canalID       = canaisIDs[i];

                    CanalEvento.Limpar();
                    CanalEvento.Control.ID             = canalEventoID;
                    CanalEvento.CanalID.Valor          = canalID;
                    CanalEvento.EventoID.Valor         = eventoID;
                    CanalEvento.TaxaConveniencia.Valor = taxa;
                    CanalEvento.TaxaMinima.Valor       = taxaMin;
                    CanalEvento.TaxaMaxima.Valor       = taxaMax;
                    CanalEvento.TaxaComissao.Valor     = comissao;
                    CanalEvento.ComissaoMinima.Valor   = comissaoMin;
                    CanalEvento.ComissaoMaxima.Valor   = comissaoMax;

                    ok &= CanalEvento.Atualizar(bd);

                    if (!ok)
                    {
                        throw new CanalPacoteException("Não conseguiu atualizar canal " + canalID + " e evento " + eventoID);
                    }
                }

                bd.FinalizarTransacao();

                return(ok);
            }
            catch (Exception ex)
            {
                bd.DesfazerTransacao();
                throw ex;
            }
            finally
            {
                bd.Fechar();
            }
        }