Ejemplo n.º 1
0
        // Ham xu ly nhap thong tin cho tung giao dich
        // dung duoc cho ca xu ly sua thong tin giao dich
        // ma : = -1 - nhap mot giao dich moi
        //      != -1 - sua thong tin giao dich da co
        static GiaoDich ThemMotGDMoi(int ma)
        {
            if (ma == -1)
            {
                ma = listGD.MaChoGiaoDichMoi; // lay ma giao dich tiep theo
            }
            Console.WriteLine("Ma : {0}", ma);

            GiaoDich.KieuGiaoDich kGD = XulyNhapKieuGD(); // nhap kieu giao dich

            Console.Write("Chon tai khoan phat sinh giao dich - ");
            TaiKhoan tk = XulyChonTaiKhoan(); // chon tai khoan phat sinh giao dich

            TaiKhoan tkNhan = null;           // neu la chuyen khoan thi co tai khoan nhan

            if (kGD == GiaoDich.KieuGiaoDich.ChuyenKhoan)
            {
                Console.Write("Chon tai khoan nhan - ");
                tkNhan = XulyChonTaiKhoan(); // chon tai khoan nhan
                // cho nay chua xu ly truong hop tkChuyen va tkNhan trung nhau
            }

            ThoiGian ngaygd = XulyNhapNgayThangNam("Ngay thang"); // nhap ngay giao dich
            double   sotien = XulyNhapTien("So tien : ");         // nhap so tien giao dich

            GiaoDich.LoaiGiaoDich lGD = XulyNhapLoaiGD();         // nhap loai giao dich
            Console.Write("Ghi chu : ");
            string ghichu = Console.ReadLine();                   // nhap ghi chu

            GiaoDich gd = null;

            switch (kGD)                    // tao doi tuong phu thuoc vao kieu giao dich
            {
            case GiaoDich.KieuGiaoDich.Thu: // tao doi tuong thu
                gd = new Thu(ma, ngaygd, sotien, tk, lGD, ghichu);
                break;

            case GiaoDich.KieuGiaoDich.Chi:     // tao doi tuong chi
                gd = new Chi(ma, ngaygd, sotien, tk, lGD, ghichu);
                break;

            case GiaoDich.KieuGiaoDich.ChuyenKhoan:     // tao doi tuong chuyen khoan
                gd = new ChuyenKhoan(ma, ngaygd, sotien, tk, tkNhan, lGD, ghichu);
                break;
            }

            return(gd);
        }
Ejemplo n.º 2
0
        // THANH PHAN PUBLIC
        // Them giao dich Mo Tai khoan
        // duoc dung de tao giao dich theo thang
        public void ThemTK(TaiKhoan tk)
        {
            // tao giao dich moi voi loaiGD la MoTK
            GiaoDich gd = new Thu(MaChoGiaoDichMoi, tk.NgayMo, tk.SoTienBanDau, tk, GiaoDich.LoaiGiaoDich.MoTK);

            int index;
            GiaoDichTheoThang gdThang;

            // xem thu giao dich do thuoc thang nam nao
            if ((index = LayViTriGDThangNam(tk.NgayMo)) != -1)
            {                                // neu co thang nam do trong listThang roi thi
                listThang[index].ThemGD(gd); // va add giao dich do vao gdThang
            }
            else
            {                                        // neu chua co
                gdThang = new GiaoDichTheoThang(gd); // tao gdThang moi
                listThang.Add(gdThang);              // add gdThang voi listThang
                listThang.Sort();                    // sap xep danh sach theo ngay
            }
        }