Beispiel #1
0
        public static String Proceseaza(double sum, ContDTO source)
        {
            AG_ROOT_Cont sursa  = new AG_ROOT_Cont(new Modele.Generic.IBAN(source.iban), new Client(new PlainText(source.client), new PlainText("nu conteaza")), new Suma(source.Sold));
            AG_ROOT_Cont result = sursa.DepuneBani(new Suma(sum));


            //Pregateste rezultatul tranzactiei ca raspuns inapoi catre MVC

            //obtine tranzactia sursei
            TranzactieDTO tranzDTO = new TranzactieDTO();

            tranzDTO.partenerTranzactie = result.IstoricTranzactii.getTranzactii.First().PartenerTranzactie.getIBAN;
            tranzDTO.suma = result.IstoricTranzactii.getTranzactii.First().Suma.getSuma;
            tranzDTO.data = DateTime.Today.ToString();
            if (result.IstoricTranzactii.getTranzactii.First().Tip.Equals(TipTranzactie.Depunere))
            {
                tranzDTO.tipTranz = "depunere";
            }

            //obtine datele contului modificat
            ContDTO updatedAccount = new ContDTO();

            updatedAccount.client = result.DateClient.Nume.Text;
            updatedAccount.iban   = result.IBAN.getIBAN;
            updatedAccount.Sold   = result.Sold.getSuma;
            return(new SerializedResultDTO(updatedAccount, tranzDTO).Serialize());
        }
Beispiel #2
0
        public void DepuneBani()
        {
            //clientul are 100 de lei in cont
            var cont = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100));

            cont.DepuneBani(new Suma(50));          //depune 50
            Assert.Equal(150.0, cont.Sold.getSuma); //verifica ca s-au depus
        }
Beispiel #3
0
        public void NuPermiteTranzactiiPesteSoldulCurent()
        {
            //clientul 1 are 100 de lei in cont
            var cont1 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100));
            //clientul 2 are 30 de lei in cont
            var cont2 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372892"), new Client(new PlainText("Vasile"), new PlainText("timisoara")), new Suma(30));

            List <AG_ROOT_Cont> conturi;
            //din contul 2 vrem sa transferam 50 lei in contul 1
            var ex = Assert.Throws <InsufficientFundsException>(() => conturi = (new AG_ROOT_Cont()).TransferBaniIntreDouaConturi(new Suma(50.0), cont2, cont1));
        }
Beispiel #4
0
        public void TransferaBani()
        {
            //clientul 1 are 100 de lei in cont
            var cont1 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100));
            //clientul 2 are 500 de lei in cont
            var cont2 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372892"), new Client(new PlainText("Vasile"), new PlainText("timisoara")), new Suma(500));

            //din contul 2 transferam 50 lei in contul 1
            List <AG_ROOT_Cont> conturi = (new AG_ROOT_Cont()).TransferBaniIntreDouaConturi(new Suma(50.0), cont2, cont1);

            Assert.Equal(150, conturi[1].Sold.getSuma);
            Assert.Equal(450, conturi[0].Sold.getSuma);
        }
Beispiel #5
0
        public static String Proceseaza(double sum, ContDTO source, ContDTO destination)
        {
            AG_ROOT_Cont sursa   = new AG_ROOT_Cont(new Modele.Generic.IBAN(source.iban), new Client(new PlainText(source.client), new PlainText("nu conteaza")), new Suma(source.Sold));
            AG_ROOT_Cont dest    = new AG_ROOT_Cont(new Modele.Generic.IBAN(destination.iban), new Client(new PlainText(destination.client), new PlainText("nu conteaza")), new Suma(destination.Sold));
            AG_ROOT_Cont vehicle = new AG_ROOT_Cont();
            //cere modelului sa efectueze tranzactia
            List <AG_ROOT_Cont> result = vehicle.TransferBaniIntreDouaConturi(new Suma(sum), sursa, dest);



            //Pregateste rezultatul tranzactiei ca raspuns inapoi catre MVC

            //obtine tranzactia efectuata de sursa
            TranzactieDTO tranzDTOScr = new TranzactieDTO();

            tranzDTOScr.partenerTranzactie = result.First().IstoricTranzactii.getTranzactii.First().PartenerTranzactie.getIBAN;
            tranzDTOScr.suma = result.First().IstoricTranzactii.getTranzactii.First().Suma.getSuma;
            tranzDTOScr.data = DateTime.Today.ToString();
            if (result.First().IstoricTranzactii.getTranzactii.First().Tip.Equals(TipTranzactie.Transfer))
            {
                tranzDTOScr.tipTranz = "transfer";
            }

            //obtine tranzactia efectuata la destinatar
            TranzactieDTO tranzDTODest = new TranzactieDTO();

            tranzDTODest.partenerTranzactie = result[1].IstoricTranzactii.getTranzactii.First().PartenerTranzactie.getIBAN;
            tranzDTODest.suma = result[1].IstoricTranzactii.getTranzactii.First().Suma.getSuma;
            tranzDTODest.data = DateTime.Today.ToString();
            if (result[1].IstoricTranzactii.getTranzactii.First().Tip == TipTranzactie.Transfer)
            {
                tranzDTODest.tipTranz = "transfer";
            }

            //obtine datele conturilor modifcate
            ContDTO updatedAccountSrc = new ContDTO();

            updatedAccountSrc.client = result[0].DateClient.Nume.Text;
            updatedAccountSrc.iban   = result[0].IBAN.getIBAN;
            updatedAccountSrc.Sold   = result[0].Sold.getSuma;

            ContDTO updatedAccountDest = new ContDTO();

            updatedAccountDest.client = result[1].DateClient.Nume.Text;
            updatedAccountDest.iban   = result[1].IBAN.getIBAN;
            updatedAccountDest.Sold   = result[1].Sold.getSuma;
            return(new SerializedResultDTO(updatedAccountSrc, updatedAccountDest, tranzDTOScr, tranzDTODest).Serialize());
        }
Beispiel #6
0
        public void VerificaIstoricTranzactii()
        {
            //clientul 1 are 100 de lei in cont
            var cont1 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372891"), new Client(new PlainText("Ion"), new PlainText("timisoara")), new Suma(100));
            //clientul 2 are 500 de lei in cont
            var cont2 = new AG_ROOT_Cont(new IBAN("RO22BACX6548206443372892"), new Client(new PlainText("Vasile"), new PlainText("timisoara")), new Suma(500));

            //din contul 2 transferam 50 lei in contul 1
            List <AG_ROOT_Cont> conturi = (new AG_ROOT_Cont()).TransferBaniIntreDouaConturi(new Suma(50.0), cont2, cont1);

            //verifica destinatarul
            Assert.Equal(TipTranzactie.Transfer, conturi[1].IstoricTranzactii.getTranzactii[0].Tip);
            Assert.Equal(cont2.IBAN.getIBAN, conturi[1].IstoricTranzactii.getTranzactii[0].PartenerTranzactie.getIBAN);
            Assert.Equal(50, conturi[1].IstoricTranzactii.getTranzactii[0].Suma.getSuma);

            //verifica sursa
            Assert.Equal(TipTranzactie.Transfer, conturi[0].IstoricTranzactii.getTranzactii[0].Tip);
            Assert.Equal(cont1.IBAN.getIBAN, conturi[0].IstoricTranzactii.getTranzactii[0].PartenerTranzactie.getIBAN);
            Assert.Equal(50, conturi[0].IstoricTranzactii.getTranzactii[0].Suma.getSuma);
        }
Beispiel #7
0
 public void NuAcceptaIBANIncorect()
 {
     AG_ROOT_Cont cont;
     var          ex = Assert.Throws <IBANFormatNotOKException>(() => cont = new AG_ROOT_Cont(new IBAN("123"), new Client(new PlainText("Ion"), new PlainText("timisoara"))));
 }