示例#1
0
        // Ham xu ly nhap kieu giao dich
        static GiaoDich.KieuGiaoDich XulyNhapKieuGD()
        {
            GiaoDich.KieuGiaoDich kieuGD = GiaoDich.KieuGiaoDich.Thu;

            // in menu cac kieu giao dich
            InMenuCacLoai("kieu giao dich", GiaoDich.ChuoiKieuGiaoDich);
            while (!Enum.TryParse(Console.ReadLine(), out kieuGD))
            {
                Console.WriteLine("Ban nhap khong dung, moi ban nhap lai : ");
            }

            return(kieuGD);
        }
示例#2
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);
        }
示例#3
0
        // Ham tinh tong (co the thu hoac chi) theo phan loai
        private void TinhTongTheoPhanLoai(List <GiaoDich> list, double[] tong, GiaoDich.KieuGiaoDich kieuGD)
        {
            foreach (GiaoDich gd in list)
            {
                switch (kieuGD)
                {
                case GiaoDich.KieuGiaoDich.Thu:
                    if (gd is Thu)
                    {
                        tong[(int)gd.LoaiGD] += Math.Abs(gd.SoLuong);
                    }
                    break;

                case GiaoDich.KieuGiaoDich.Chi:
                    if (gd is Chi)
                    {
                        tong[(int)gd.LoaiGD] += Math.Abs(gd.SoLuong);
                    }
                    break;
                }
            }
        }