Пример #1
0
 private void Form1_Load(object sender, EventArgs e)
 {
     proxy = new BankClient(new InstanceContext(new ClientCallback()
     {
         form = this
     }));
 }
        /// <summary>
        /// TODO: implement this function to meets requirements.
        /// </summary>
        /// <param name="client"></param>
        /// <returns></returns>
        public bool SaveNewClient(BankClient client)
        {
            if (client.Id > 0)
            {
                throw new DataExistsException();
            }

            try
            {
                foreach (var bankAccount in client.ClientAccounts)
                {
                    DBContext.BankAccounts.Add(bankAccount);
                }
                DBContext.BankClients.Add(client);

                var savedDBChanges = DBContext.SaveChanges();

                if (savedDBChanges > 0)
                {
                    return(true);
                }

                throw new WritingToDBException();
            }
            catch (WritingToDBException)
            {
                throw new WritingToDBException();
            }
        }
Пример #3
0
        public ObjectVersion ClientCaseRetail_Create(BankClient bankClient, BankCaseRetail CaseRetail)
        {
            ObjectVersion RetValue = new ObjectVersion();

            BankClientClass bankClientClass = new BankClientClass();

            string        PID           = bankClient.PersonalID;
            ObjectVersion objectVersion = bankClientClass.SearchClientByPersonalID(PID);

            if (objectVersion != null)
            {
                RetValue = objectVersion;
            }
            else
            {
                RetValue = bankClientClass.CreateClient(bankClient).ObjectVersion;
            }

            CaseRetail.Client = Convert.ToInt32(RetValue.DisplayID);

            BankCaseRetailClass bankCaseRetailClass = new BankCaseRetailClass();

            string mAppID = CaseRetail.ApplicationID;

            RetValue = this.CaseRetail_SearchByApplicationID(mAppID);

            if (RetValue == null)
            {
                RetValue = bankCaseRetailClass.CreateCaseRetail(CaseRetail).ObjectVersion;
            }

            return(RetValue);
        }
Пример #4
0
        private static void Main(string[] args)
        {
            Console.WriteLine("Observer Pattern");

            // Subject
            var savingsAccount = new BankAccount("Savings Account");

            // Create Concrete Observers
            var homer = new BankClient("Homer Simpson", savingsAccount);
            var marge = new BankClient("Marge Simpson", savingsAccount);

            // Attach observers
            savingsAccount.Attach(homer);
            savingsAccount.Attach(marge);

            // Lets observe the transactions
            homer.Deposit(100);
            marge.Withdraw(50);
            homer.Withdraw(51);
            marge.Deposit(-100);

            // Final value should be $350
            marge.Deposit(300);

            Console.ReadLine();
        }
Пример #5
0
        public async Task UpdateClientInfo(BankClient bankClient)
        {
            var retrievedClient = await _dataBaseContext.Clients.FirstOrDefaultAsync(client =>
                                                                                     client.Id == bankClient.Id);

            _mapper.Map(bankClient, retrievedClient);
            await _dataBaseContext.SaveChangesAsync();
        }
Пример #6
0
        static void Main(string[] args)
        {
            // hardcode (i just didnt want to think about db or any files with data =) )
            Account acc1 = Account.CreateAccount(100, "uah");  // id 1
            Account acc2 = Account.CreateAccount(5454, "uah"); //   2
            Account acc3 = Account.CreateAccount(200, "usd");  //   .
            Account acc4 = Account.CreateAccount(123, "uah");  //   .
            Account acc5 = Account.CreateAccount(1, "usd");
            Account acc6 = new Account();                      // this acc is not added to bank system initially
            Account acc7 = new Account();

            //  so we add explisitly
            BankSystem.AddAccounts(new Account[] { acc6, acc7 });

            // head od hierarchy
            // basic user with no power
            User basicUser = new User(1, "Andrii", "Koval", "login", "password");

            //bank client is able to have bank accounts
            Console.WriteLine("---------------------Creatinh Bank Client");
            BankClient client = BankClient.CreateBankClient();

            Console.WriteLine("---------------------Creatinh Bank Client");

            // a piece of hardcode (((
            client.AddAccountId(acc1.id);
            client.AddAccountId(acc3.id);
            client.AddAccountId(acc5.id);
            client.ShowInfo();

            Console.WriteLine("---------------------Creatinh Bank Exmployee");
            BankEmployee employee = BankEmployee.CreateBankEmployee();

            Console.WriteLine("---------------------Creating Bank Exmployee");

            BankSystem.AddUser(employee);
            BankSystem.AddUser(client);
            BankSystem.AddUser(basicUser);


            Console.WriteLine("\n------------------------------------All users in system");
            foreach (var user in BankSystem.Users.Values)
            {
                user.ShowInfo();
            }
            Console.WriteLine("------------------------------------All users in system\n");

            acc1.IncreaseAmount(100);
            acc3.IncreaseAmount(100);
            acc5.DecreaseAmount(50000);
            client.ShowInfo("CLIENT OVERRIDEN METHOD", "CLIENT OVERRIDEN METHOD");


            Console.WriteLine(employee.systemUsersCount);
        }
Пример #7
0
        static void Main(string[] args)
        {
            BankClient cl1 = new BankClient(1, "Anna", 18, "Jalal-Abad", "12345678901234");
            BankClient cl2 = new BankClient(2, "Sia", 30, "Osh", "12345671234567");
            BankClient cl3 = new BankClient(3, "Olia", 23, "Bishkek", "76543217654321");

            List <BankClient> client = new List <BankClient>();

            client.Add(cl1);
            client.Add(cl2);
            client.Add(cl3);

            var templatePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"/home/elvira/Documents/Client/Template/template.txt");
            var resultPath   = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"/home/elvira/Documents/Client/Result/result.txt");

            using (FileStream stream = File.OpenRead(templatePath))
                using (FileStream writeStream = File.OpenWrite(resultPath))
                {
                    BinaryReader reader = new BinaryReader(stream);
                    BinaryWriter writer = new BinaryWriter(writeStream);

                    byte[] buffer = new Byte[1024];
                    int    bytesRead;
                    while ((bytesRead =
                                stream.Read(buffer, 0, 1024)) > 0)
                    {
                        writeStream.Write(buffer, 0, bytesRead);
                    }
                    writeStream.Close();

                    for (int i = 0; i < client.Count; i++)
                    {
                        if (client[i].INN.Equals("12345678901234"))
                        {
                            var          lines = File.ReadLines(templatePath);
                            StreamWriter file  = new StreamWriter(resultPath);
                            foreach (var line in lines)
                            {
                                file.WriteLine(line.Replace("[Id]", client[i].id.ToString()).
                                               Replace("[Name]", client[i].Name.ToString()).
                                               Replace("[Age]", client[i].age.ToString()).
                                               Replace("[Address]", client[i].Address.ToString()).
                                               Replace("[INN]", client[i].INN.ToString()));
                            }

                            file.Close();
                            break;
                        }
                    }
                }
        }
        public PaymentService(PaymentContext paymentContext, BankClient bankClient)
        {
            _context    = paymentContext;
            _bankClient = bankClient;

            //Temporary code to be removed - adding a dummy entry to database just to check the APIs starting with GET API
            // if (_context.Payments.Count() == 0)
            // {
            //     _context.Payments.Add(new Payment(  "DummyBeneficiary","AC001","CITY001"
            //                     ,"DummyPayee","BC010", "STD002", 10000, PaymentStatus.InProgress));
            //     _context.SaveChanges();
            // }
            //END temporary code
        }
Пример #9
0
        protected static BankClient BuildBankClient()
        {
            // send auth requests to the Api stub
            var settings       = ClientBuilder.GetJsonRefitSettings();
            var authHttpClient = new HttpClient();
            var authClient     = GetRefitClient <IAuthClient>(authHttpClient, new Uri(OneTimeTestSetup.Url), settings);

            // send client requests to the integration test server but with the refit handlers in place
            var httpClient    = OneTimeTestSetup.Factory.CreateDefaultClient(ClientBuilder.GetApiHandlers(authClient));
            var paymentClient = GetRefitClient <IPaymentClient>(httpClient, BaseUri, settings);

            var bankClient = new BankClient(authClient, paymentClient);

            return(bankClient);
        }
Пример #10
0
        public void ClientModuleDBdao_IsClientTrackedByEF_Test()
        {
            BankClient client = null;

            using (var dao = CreateClientModuleDataAccess())
            {
                client = dao.GetAllClients().FirstOrDefault();
                Assert.IsTrue(dao.IsClientTrackedByEF(client));
            }

            using (var dao = CreateClientModuleDataAccess())
            {
                Assert.IsFalse(dao.IsClientTrackedByEF(client));
            }
        }
Пример #11
0
        public ObjectVersion Client_Create(BankClient bankClient)
        {
            BankClientClass bankClientClass = new BankClientClass();

            string        PID           = bankClient.PersonalID;
            ObjectVersion objectVersion = bankClientClass.SearchClientByPersonalID(PID);

            if (objectVersion != null)
            {
                return(objectVersion);
            }
            else
            {
                return(bankClientClass.CreateClient(bankClient).ObjectVersion);
            }
        }
Пример #12
0
        public int Post([FromBody] BankClient client)
        {
            if (client == null)
            {
                return(0);
            }

            if (client.PrimaryAddress != null) // Need to see if there's a better way to do this.
            {
                client.PrimaryAddress = BankContext.Addresses.SingleOrDefault(x => x.IdAddress == client.PrimaryAddress.IdAddress);
            }
            BankContext.BankingClients.Add(client);
            BankContext.SaveChanges();
            BankContext.Entry(client).Reload();
            return(client.IdCustomer);
        }
Пример #13
0
        private static void MainDemo()
        {
            var acc1 = new Account(100, "uah");  // id 1
            var acc2 = new Account(5454, "uah"); //   2
            var acc3 = new Account(200, "usd");  //   .
            var acc4 = new Account(1, "usd");


            try
            {
                acc1.Activate("Bank228");
                acc2.Activate("Bank228");
                acc3.Activate("Bank228");
                acc4.Activate("WorngPass");
            }
            catch
            {
            }



            Console.WriteLine("---------------------Creating Bank Client");
            BankClient client  = BankClient.CreateBankClient();
            BankClient client2 = BankClient.CreateBankClient();

            Console.WriteLine("---------------------Creating Bank Client");


            client.AddAccountId(acc1.id);
            client.AddAccountId(acc3.id);
            client.ShowInfo();

            Console.WriteLine("---------------------Creating Bank Exmployee");
            var employee = BankEmployee.CreateBankEmployee();

            Console.WriteLine("---------------------Creating Bank Exmployee");

            User basicUser = new User("Andrii", "Koval", "login", "password");

            BankSystem.AddUser(employee);
            BankSystem.AddUser(client);
            BankSystem.AddUser(client2);
            BankSystem.AddUser(basicUser);
        }
        /// <summary>
        /// TODO: implement this function to meets requirements.
        /// </summary>
        /// <param name="client"></param>
        /// <returns></returns>
        public BankClient StartTracking(BankClient client)
        {
            var entity = DBContext.ChangeTracker.Entries <BankClient>().FirstOrDefault(x => x.Entity.Id == client.Id);

            if (entity != null)
            {
                DBContext.Entry(entity.Entity).State = EntityState.Detached;
            }

            if (client.Id > 0)
            {
                DBContext.Entry(client).State = EntityState.Added;
            }
            else if (client.Id <= 0)
            {
                DBContext.Entry(client).State = EntityState.Modified;
            }

            return(client);
        }
Пример #15
0
        public void ClientModuleDBdao_StartTrackingNew_Test()
        {
            Model.BankClient client;
            using (var dao = CreateClientModuleDataAccess())
            {
                Assert.AreEqual(3, dao.GetAllClients().Count());
                client = new BankClient()
                {
                    FirstName = "DEF"
                };

                client = dao.StartTracking(client);

                dao.DBContext.SaveChanges();
            }

            using (var dao = CreateClientModuleDataAccess())
            {
                var detached = dao.GetAllClients().Where(w => w.Id == client.Id).FirstOrDefault();
                Assert.AreEqual("DEF", detached.FirstName);
            }
        }
        public HttpResponseMessage AddClient([FromBody] BankClient newClient)
        {
            var response = new object();

            try
            {
                BankClient client = new BankClient();

                client = newClient;

                db.BankClient.Add(client);
                db.SaveChanges();

                response = new { Error = false };
                return(Request.CreateResponse(HttpStatusCode.OK, client, Configuration.Formatters.JsonFormatter));
            }
            catch (Exception)
            {
                response = new { Error = true };
                return(Request.CreateResponse(HttpStatusCode.OK, response, Configuration.Formatters.JsonFormatter));
            }
        }
Пример #17
0
        static void Main(string[] args)
        {
            BankClient bankClient = new BankClient();


            bankClient.CreatePayment("123456", 157);
            bankClient.CreatePayment("123456", 157);
            bankClient.CreatePayment("123456", 157);
            bankClient.CreatePayment("123456", 157);
            bankClient.CreatePayment("123456", 157);



            foreach (var payment in bankClient.GetPayments())
            {
                Console.WriteLine(payment.CcNumber + " : " + payment.Amount + " - " + payment.PaymentStatus);
            }



            while (true)
            {
            }
        }
Пример #18
0
        static void Main(string[] args)
        {
            var acc1 = new Account(100, "uah");  // id 1
            var acc2 = new Account(5454, "uah"); //   2
            var acc3 = new Account(200, "usd");  //   .
            var acc4 = new Account(1, "usd");

            acc1.Activate("Bank228");
            acc2.Activate("Bank228");
            acc3.Activate("Bank228");

            acc4.Activate("WorngPass");

            // head od hierarchy
            // basic user with no power
            User basicUser = new User("Andrii", "Koval", "login", "password");

            //bank client is able to have bank accounts
            Console.WriteLine("---------------------Creating Bank Client");
            BankClient client = BankClient.CreateBankClient();

            Console.WriteLine("---------------------Creating Bank Client");

            // a piece of hardcode (((
            client.AddAccountId(acc1.id);
            client.AddAccountId(acc3.id);
            client.ShowInfo();

            Console.WriteLine("---------------------Creating Bank Exmployee");
            var employee = BankEmployee.CreateBankEmployee();

            Console.WriteLine("---------------------Creating Bank Exmployee");

            BankSystem.AddUser(employee);
            BankSystem.AddUser(client);
            BankSystem.AddUser(basicUser);

            employee.ShowPossibleSystemActions();
            client.ShowPossibleSystemActions();


            Console.WriteLine("\n------------------------------------All users in system");
            foreach (var user in BankSystem.Users.Values)
            {
                user.ShowInfo();
            }
            Console.WriteLine("------------------------------------All users in system\n");

            acc1.IncreaseAmount(100);
            acc3.IncreaseAmount(100);
            acc4.DecreaseAmount(550000);
            client.ShowInfo("CLIENT OVERRIDEN METHOD", "CLIENT OVERRIDEN METHOD");
            try
            {
                Console.WriteLine(employee.SystemUsersCount);
            }
            catch (EmployeeAccessException exp)
            {
                Console.WriteLine("Error");
                Console.WriteLine(exp.args.Message);
            }

            try
            {
                employee.TakeCredit(45);
            }
            catch (EmployeeAccessException exp)
            {
                Console.WriteLine(exp.Message);
            }

            try
            {
                employee.ExchangeMoney(45, 5, 545);
            }
            catch (EmployeeAccessException exp)
            {
                Console.WriteLine(exp.Message);
            }
        }
Пример #19
0
        public async Task AddClientToDatabase(BankClient bankClient)
        {
            await _dataBaseContext.AddAsync(bankClient);

            await _dataBaseContext.SaveChangesAsync();
        }
Пример #20
0
 public void OneTimeSetUp()
 {
     InitDokladApi();
     _client = DokladApi.BankClient;
 }
Пример #21
0
 public void BeforeEachTest()
 {
     bankClient = BuildBankClient();
 }
Пример #22
0
        static void Main(string[] args)
        {
            var acc1 = new Account(100, "uah");  // id 1
            var acc2 = new Account(5454, "uah"); //   2
            var acc3 = new Account(200, "usd");  //   .
            var acc4 = new Account(1, "usd");

            acc1.Activate("Bank228");
            acc2.Activate("Bank228");
            acc3.Activate("Bank228");
            acc4.Activate("WorngPass");


            Console.WriteLine("---------------------Creating Bank Client");
            BankClient client  = BankClient.CreateBankClient();
            BankClient client2 = BankClient.CreateBankClient();

            Console.WriteLine("---------------------Creating Bank Client");


            client.AddAccountId(acc1.id);
            client.AddAccountId(acc3.id);
            client.ShowInfo();

            Console.WriteLine("---------------------Creating Bank Exmployee");
            var employee = BankEmployee.CreateBankEmployee();

            Console.WriteLine("---------------------Creating Bank Exmployee");

            User basicUser = new User("Andrii", "Koval", "login", "password");

            BankSystem.AddUser(employee);
            BankSystem.AddUser(client);  //1
            BankSystem.AddUser(client2); //2
            BankSystem.AddUser(basicUser);

            User user2 = new User("Bodia", "bogdan", "log", "pass");
            User user3 = new User("3", "3", "3", "3");

            User[] IComparableDemoArray = new User[] {
                basicUser,
                user3,
                user2
            };

            Array.Sort(IComparableDemoArray);
            Console.WriteLine("Sorting demo");
            foreach (User user in IComparableDemoArray)
            {
                user.ShowInfo();
            }
            Console.WriteLine("Sorting demo");


            // var foundUser = BankSystem.Users["a"];
            // if (foundUser != null)
            //     Console.WriteLine(foundUser.FullName);


            //extension
            Console.WriteLine(BankSystem.Users.GetBankClientsCount());

            SerializationDemoXML();
            SerializationDemoJSON();

            var obj = new CustomGeneric <BankEmployee>(employee);

            obj.getAllPossibilities();
        }
        /// <summary>
        /// TODO: implement this function to meets requirements.
        /// </summary>
        /// <param name="client"></param>
        /// <returns></returns>
        public bool IsClientTrackedByEF(BankClient client)
        {
            var entity = DBContext.ChangeTracker.Entries <BankClient>().FirstOrDefault(x => x.Entity.Id == client.Id);

            return(entity != null);
        }