Beispiel #1
0
        private void MainForm_Load(object sender, EventArgs e)
        {
            textBox1.Text           = "";
            comboBox1.SelectedIndex = 0;
            textBox2.Text           = "";
            textBox3.Text           = "";
            comboBox2.SelectedIndex = 0;

            if (File.Exists(limPath))
            {
                string lmt = File.ReadAllText(limPath);
                limit = int.Parse(lmt);
            }
            else
            {
                File.AppendAllText(limPath, "0");
                limit = 0;
            }



            if (File.Exists(regPath))
            {
                string[] TAB = File.ReadAllLines(regPath);
                for (int i = 0; i < TAB.Length; i++)
                {
                    string[]    tmp = TAB[i].Split('\t');
                    LoanDetails ld  = new LoanDetails();
                    ld.name         = tmp[0];
                    ld.amount       = int.Parse(tmp[1]);
                    ld.interestRate = int.Parse(tmp[2]);
                    ld.issueDate    = Convert.ToDateTime(tmp[3]);
                    ld.updateDate   = Convert.ToDateTime(tmp[4]);
                    ld.type         = tmp[5];
                    LoanHistory.Add(ld);
                    overallAmount += ld.amount;
                    //limit -= ld.amount;
                }

                for (int i = 0; i < LoanHistory.Count; i++)
                {
                    //limit += LoanHistory[i].amount;
                    overallAmount -= LoanHistory[i].amount;
                    LoanHistory[i].update(LoanHistory[i]);
                    overallAmount += LoanHistory[i].amount;
                    //limit -= LoanHistory[i].amount;
                }
                File.Delete(regPath);
                for (int i = 0; i < LoanHistory.Count; i++)
                {
                    LoanDetails ld = LoanHistory[i];
                    File.AppendAllText(regPath, ld.name + '\t' + ld.amount + '\t' + ld.interestRate + '\t' + Convert.ToString(ld.issueDate) + '\t' + Convert.ToString(ld.updateDate) + '\t' + ld.type + '\n');
                }
            }


            BtnConfirm.Enabled      = false;
            comboBox1.SelectedIndex = 0;
            string gr;

            if (limit - overallAmount >= 0)
            {
                if ((limit - overallAmount) % 100 < 10)
                {
                    gr = "0" + (limit - overallAmount) % 100;
                }
                else
                {
                    gr = "" + (limit - overallAmount) % 100;
                }
                limitLabel.Text = "Pozostały limit: " + (limit - overallAmount) / 100 + "," + gr + " PLN";
                if (overallAmount > limit)
                {
                    limitLabel.ForeColor = Color.Red;
                }
                else
                {
                    limitLabel.ForeColor = Color.Black;
                }
            }
            else
            {
                if ((limit - overallAmount) % 100 > -10)
                {
                    gr = "0" + ((limit - overallAmount) % 100) * -1;
                }
                else
                {
                    gr = "" + ((limit - overallAmount) % 100) * -1;
                }
                limitLabel.Text = "Pozostały limit: " + (limit - overallAmount) / 100 + "," + gr + " PLN";
                if (overallAmount > limit)
                {
                    limitLabel.ForeColor = Color.Red;
                }
                else
                {
                    limitLabel.ForeColor = Color.Black;
                }
            }
        }
Beispiel #2
0
        public void update(LoanDetails loan)
        {
            if (loan.type == "0")    // w skali rocznej
            {
                while (loan.updateDate.Year < DateTime.Now.Year)
                {
                    loan.amount = loan.amount * (int)((double)(1 + loan.interestRate / 100000));
                    DateTime newDate = Convert.ToDateTime("01.01." + (loan.updateDate.Year + 1) + " 00:00:01");
                    loan.updateDate = newDate;
                }
            }
            if (loan.type == "1")   // w skali kwartalnej
            {
                while (loan.updateDate.Year != DateTime.Now.Year || (loan.updateDate.Month - 1) / 3 != (DateTime.Now.Month - 1) / 3)
                {
                    int counter = (loan.updateDate.Month - 1) / 3;
                    if (counter != 3)
                    {
                        loan.amount = loan.amount * (int)((double)(1 + loan.interestRate / 100000.0));
                        DateTime newDate = Convert.ToDateTime("01." + (counter * 3 + 1) + loan.updateDate.Year + " 00:00:01");
                        loan.updateDate = newDate;
                    }
                    else
                    {
                        loan.amount = loan.amount * (int)((double)(1 + loan.interestRate / 100000.0));
                        DateTime newDate = Convert.ToDateTime("01.01." + (loan.updateDate.Year + 1) + " 00:00:01");
                        loan.updateDate = newDate;
                    }
                }
            }
            else if (loan.type == "2")   // w skali miesięcznej
            {
                while (loan.updateDate.Year != DateTime.Now.Year || loan.updateDate.Month != DateTime.Now.Month)
                {
                    if (loan.updateDate.Month != 12)
                    {
                        loan.amount = loan.amount * (int)((double)(1 + loan.interestRate / 100000.0));
                        DateTime newDate = Convert.ToDateTime("01." + (loan.updateDate.Month + 1) + loan.updateDate.Year + " 00:00:01");
                        loan.updateDate = newDate;
                    }
                    else
                    {
                        loan.amount = loan.amount * (int)((double)(1 + loan.interestRate / 100000.0));
                        DateTime newDate = Convert.ToDateTime("01.01." + (loan.updateDate.Year + 1) + " 00:00:01");
                        loan.updateDate = newDate;
                    }
                }
            }
            else if (loan.type == "3")   // w skali dziennej
            {
                while (loan.updateDate.Year != DateTime.Now.Year || loan.updateDate.Month != DateTime.Now.Month || loan.updateDate.Day != DateTime.Now.Day)
                {
                    if (loan.updateDate.Month == 12)
                    {
                        if (loan.updateDate.Day != 31)
                        {
                            loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                            DateTime newDate = Convert.ToDateTime((loan.updateDate.Day + 1) + "." + loan.updateDate.Month + "." + loan.updateDate.Year + " 00:00:01");
                            loan.updateDate = newDate;
                        }
                        else
                        {
                            loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                            DateTime newDate = Convert.ToDateTime("01.01." + (loan.updateDate.Year + 1) + " 00:00:01");
                            loan.updateDate = newDate;
                        }
                    }

                    else if (loan.updateDate.Month == 4 || loan.updateDate.Month == 6 || loan.updateDate.Month == 9 || loan.updateDate.Month == 11)
                    {
                        if (loan.updateDate.Day != 30)
                        {
                            loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                            DateTime newDate = Convert.ToDateTime((loan.updateDate.Day + 1) + "." + loan.updateDate.Month + "." + loan.updateDate.Year + " 00:00:01");
                            loan.updateDate = newDate;
                        }
                        else
                        {
                            loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                            DateTime newDate = Convert.ToDateTime("01." + (loan.updateDate.Month + 1) + "." + loan.updateDate.Year + " 00:00:01");
                            loan.updateDate = newDate;
                        }
                    }
                    else if (loan.updateDate.Month == 2)
                    {
                        if (DateTime.IsLeapYear(loan.updateDate.Year))
                        {
                            if (loan.updateDate.Day != 29)
                            {
                                loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                                DateTime newDate = Convert.ToDateTime((loan.updateDate.Day + 1) + "." + loan.updateDate.Month + "." + loan.updateDate.Year + " 00:00:01");
                                loan.updateDate = newDate;
                            }
                            else
                            {
                                loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                                DateTime newDate = Convert.ToDateTime("01." + (loan.updateDate.Month + 1) + "." + loan.updateDate.Year + " 00:00:01");
                                loan.updateDate = newDate;
                            }
                        }
                        else
                        {
                            if (loan.updateDate.Day != 28)
                            {
                                loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                                DateTime newDate = Convert.ToDateTime((loan.updateDate.Day + 1) + "." + loan.updateDate.Month + "." + loan.updateDate.Year + " 00:00:01");
                                loan.updateDate = newDate;
                            }
                            else
                            {
                                loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                                DateTime newDate = Convert.ToDateTime("01." + (loan.updateDate.Month + 1) + "." + loan.updateDate.Year + " 00:00:01");
                                loan.updateDate = newDate;
                            }
                        }
                    }
                    else
                    {
                        if (loan.updateDate.Day != 31)
                        {
                            loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                            DateTime newDate = Convert.ToDateTime((loan.updateDate.Day + 1) + "." + loan.updateDate.Month + "." + loan.updateDate.Year + " 00:00:01");
                            loan.updateDate = newDate;
                        }
                        else
                        {
                            loan.amount = (int)(loan.amount * (double)(1 + loan.interestRate / 100000.0));
                            DateTime newDate = Convert.ToDateTime("01." + (loan.updateDate.Month + 1) + "." + loan.updateDate.Year + " 00:00:01");
                            loan.updateDate = newDate;
                        }
                    }
                }
            }
        }
Beispiel #3
0
        private void BtnConfirm_Click(object sender, EventArgs e)
        {
            if (comboBox1.SelectedIndex == 1)
            {
                double amt      = double.Parse(textBox3.Text) * 100;
                int    amount   = (int)amt;
                double intr     = double.Parse(textBox2.Text) * 1000;
                int    interest = (int)intr;
                string line     = textBox1.Text + '\t' + amount + '\t' + interest + '\t' + Convert.ToString(DateTime.Now) + '\t' + Convert.ToString(DateTime.Now) + '\t' + comboBox2.SelectedIndex + '\n';
                File.AppendAllText(regPath, line);
                overallAmount += amount;

                LoanDetails ld = new LoanDetails();
                ld.name         = textBox1.Text;
                ld.amount       = amount;
                ld.interestRate = interest;
                ld.issueDate    = DateTime.Now;
                ld.updateDate   = DateTime.Now;
                LoanHistory.Add(ld);

                string gr;
                if (limit - overallAmount >= 0)
                {
                    if ((limit - overallAmount) % 100 < 10)
                    {
                        gr = "0" + (limit - overallAmount) % 100;
                    }
                    else
                    {
                        gr = "" + (limit - overallAmount) % 100;
                    }
                    limitLabel.Text      = "Pozostały limit: " + (limit - overallAmount) / 100 + "," + gr + " PLN";
                    limitLabel.ForeColor = Color.Black;
                }
                else
                {
                    if ((limit - overallAmount) % 100 > -10)
                    {
                        gr = "0" + ((limit - overallAmount) % 100) * -1;
                    }
                    else
                    {
                        gr = "" + ((limit - overallAmount) % 100) * -1;
                    }
                    limitLabel.Text      = "Pozostały limit: " + (limit - overallAmount) / 100 + "," + gr + " PLN";
                    limitLabel.ForeColor = Color.Red;
                }



                textBox1.Text           = "";
                comboBox1.SelectedIndex = 0;
                textBox2.Text           = "";
                textBox3.Text           = "";
                comboBox2.SelectedIndex = 0;
            }
            if (comboBox1.SelectedIndex == 2)
            {
                double amt    = double.Parse(textBox3.Text) * 100;
                int    amount = (int)amt;

                for (int i = 0; i < LoanHistory.Count && amount > 0; i++)
                {
                    if (LoanHistory[i].name == textBox1.Text)
                    {
                        if (amount >= LoanHistory[i].amount)
                        {
                            amount               -= LoanHistory[i].amount;
                            overallAmount        -= LoanHistory[i].amount;
                            LoanHistory[i].amount = 0;
                        }
                        else
                        {
                            LoanHistory[i].amount -= amount;
                            overallAmount         -= amount;
                            amount = 0;
                        }
                    }
                }
                for (int i = 0; i < LoanHistory.Count; i++)
                {
                    if (LoanHistory[i].amount == 0)
                    {
                        LoanHistory.Remove(LoanHistory[i]);
                        i--;
                    }
                }

                File.Delete(regPath);
                for (int i = 0; i < LoanHistory.Count; i++)
                {
                    LoanDetails ld = LoanHistory[i];
                    File.AppendAllText(regPath, ld.name + '\t' + ld.amount + '\t' + ld.interestRate + '\t' + Convert.ToString(ld.issueDate) + '\t' + Convert.ToString(ld.updateDate) + '\t' + ld.type + '\n');
                }

                string gr;
                if (limit - overallAmount >= 0)
                {
                    if ((limit - overallAmount) % 100 < 10)
                    {
                        gr = "0" + (limit - overallAmount) % 100;
                    }
                    else
                    {
                        gr = "" + (limit - overallAmount) % 100;
                    }
                    limitLabel.Text      = "Pozostały limit: " + (limit - overallAmount) / 100 + "," + gr + " PLN";
                    limitLabel.ForeColor = Color.Black;
                }
                else
                {
                    if ((limit - overallAmount) % 100 > -10)
                    {
                        gr = "0" + ((limit - overallAmount) % 100) * -1;
                    }
                    else
                    {
                        gr = "" + ((limit - overallAmount) % 100) * -1;
                    }
                    limitLabel.Text      = "Pozostały limit: " + (limit - overallAmount) / 100 + "," + gr + " PLN";
                    limitLabel.ForeColor = Color.Red;
                }

                textBox1.Text           = "";
                comboBox1.SelectedIndex = 0;
                textBox2.Text           = "";
                textBox3.Text           = "";
                comboBox2.SelectedIndex = 0;
            }
        }