Exemple #1
0
        public async Task <Tuple <int, int> > Create(HocKyNamHocCreateRequest request)
        {
            //Học kỳ mặc định là 1
            //Học kỳ tạo mới = Học kì cuối cùng của năm đó + 1
            int soThuTu_HocKy            = 1;
            var sttCuoiCung_HocKy_CuaNam = _context.HocKy_NamHocs
                                           .Where(x => x.NamHoc == request.NamHoc)
                                           .Select(x => x.HocKy)
                                           .ToArray()
                                           .LastOrDefault();

            soThuTu_HocKy += sttCuoiCung_HocKy_CuaNam;

            if (soThuTu_HocKy > 3)
            {
                throw new QuanLySinhVien_Exceptions("Học kỳ không thể lớn hơn 3");
            }

            var hocKyNamHoc = new HocKy_NamHoc()
            {
                HocKy       = soThuTu_HocKy,
                NamHoc      = request.NamHoc,
                NgayBatDau  = request.NgayBatDau,
                NgayKetThuc = request.NgayKetThuc
            };

            _context.HocKy_NamHocs.Add(hocKyNamHoc);
            await _context.SaveChangesAsync();

            //Tạo dữ liệu tuple để trả về 2 giá trị
            return(Tuple.Create(hocKyNamHoc.HocKy, hocKyNamHoc.NamHoc));
        }
        public List <HocKy_NamHoc> GetAllHocKy_NamHoc()
        {
            OpenConnection();

            List <HocKy_NamHoc> listHocKy_NamHoc = new List <HocKy_NamHoc>();

            SqlCommand com = new SqlCommand();

            com.CommandType = CommandType.Text;
            com.CommandText = "Select * from HOCKY_NAMHOC";
            com.Connection  = conn;

            SqlDataReader reader = com.ExecuteReader();

            while (reader.Read())
            {
                string maHK = reader.GetString(0);
                string maNH = reader.GetString(1);

                HocKy_NamHoc Hocky_namhoc = new HocKy_NamHoc(maHK, maNH);
                listHocKy_NamHoc.Add(Hocky_namhoc);
            }

            reader.Close();
            CloseConnection();
            return(listHocKy_NamHoc);
        }