コード例 #1
0
        public override async Task <ResponseEntity> GetSingleByIdAsync(dynamic id)
        {
            try
            {
                KhoaHoc khoaHoc = await _khoaHocRepository.GetSingleByIdAsync(id);

                var khoaHocVm = _mapper.Map <ThongTinKhoaHocViewModel>(khoaHoc);

                var chuongHocs   = (await _chuongHocRepository.GetMultiByIdAsync(khoaHocVm.DanhSachChuongHoc));
                var chuongHocVms = _mapper.Map <List <ThongTinChuongHocViewModel> >(chuongHocs);

                foreach (ThongTinChuongHocViewModel chuongHoc in chuongHocVms)
                {
                    // Lấy danh sách bài học thuộc chương học ( Sử dụng danh sách id bài học lưu trong chương học)
                    var baiHocs = (await _baiHocRepository.GetMultiByIdAsync(chuongHoc.DanhSachBaiHoc));
                    List <BaiHocViewModel> baiHocVms = _mapper.Map <List <BaiHocViewModel> >(baiHocs);
                    chuongHoc.ThongTinBaiHoc = baiHocVms;
                }
                khoaHocVm.ThongTinChuongHoc = chuongHocVms;
                return(new ResponseEntity(StatusCodeConstants.OK, khoaHocVm));
            }
            catch (Exception ex)
            {
                return(new ResponseEntity(StatusCodeConstants.ERROR_SERVER, ex.Message));
            }
        }
コード例 #2
0
        public override async Task <ResponseEntity> DeleteByIdAsync(List <dynamic> listId)
        {
            try
            {
                IEnumerable <ChuongHoc> dsChuongHoc = await _chuongHocRepository.GetMultiByIdAsync(listId);

                if (await _chuongHocRepository.DeleteByIdAsync(listId) == 0)
                {
                    return(new ResponseEntity(StatusCodeConstants.BAD_REQUEST, listId, MessageConstants.DELETE_ERROR));
                }

                // Xóa id khỏi danh sách chương học của khóa học
                foreach (ChuongHoc chuongHoc in dsChuongHoc)
                {
                    KhoaHoc khoaHoc = await _khoaHocRepository.GetSingleByIdAsync(chuongHoc.MaKhoaHoc);

                    KhoaHocViewModel khoaHocVm = _mapper.Map <KhoaHocViewModel>(khoaHoc);
                    khoaHocVm.DanhSachChuongHoc.RemoveAll(x => x == chuongHoc.Id);

                    khoaHoc = _mapper.Map <KhoaHoc>(khoaHocVm);
                    if (khoaHocVm.DanhSachChuongHoc.Count == 0)
                    {
                        khoaHoc.DanhSachChuongHoc = "";
                    }
                    await _khoaHocRepository.UpdateAsync(khoaHoc.Id, khoaHoc);
                }

                return(new ResponseEntity(StatusCodeConstants.OK, listId, MessageConstants.DELETE_SUCCESS));
            }
            catch (Exception ex)
            {
                return(new ResponseEntity(StatusCodeConstants.ERROR_SERVER, ex.Message));
            }
        }
コード例 #3
0
        public async Task <ResponseEntity> GetInfoByIdAsync(dynamic id)
        {
            try
            {
                KhoaHoc khoaHoc = await _khoaHocRepository.GetSingleByIdAsync(id);

                var khoaHocVm = _mapper.Map <ThongTinKhoaHocViewModel>(khoaHoc);

                var chuongHocs   = (await _chuongHocRepository.GetMultiByIdAsync(khoaHocVm.DanhSachChuongHoc));
                var chuongHocVms = _mapper.Map <List <ThongTinChuongHocViewModel> >(chuongHocs);

                foreach (ThongTinChuongHocViewModel chuongHoc in chuongHocVms)
                {
                    // Lấy danh sách bài học thuộc chương học ( Sử dụng danh sách id bài học lưu trong chương học)
                    var baiHocs   = (await _baiHocRepository.GetMultiByIdAsync(chuongHoc.DanhSachBaiHoc));
                    var baiHocVms = _mapper.Map <List <BaiHocViewModel> >(baiHocs);
                    // SẮP XẾP BÀI HỌC
                    List <BaiHocViewModel> dsBaiHoc = new List <BaiHocViewModel>();
                    chuongHoc.DanhSachBaiHoc.ForEach(maBaiHoc =>
                    {
                        dsBaiHoc.Add(baiHocVms.FirstOrDefault(x => x.Id == maBaiHoc));
                    });
                    chuongHoc.ThongTinBaiHoc = dsBaiHoc;
                }

                // SẮP XẾP CHƯƠNG HỌC
                List <ThongTinChuongHocViewModel> dsChuongHoc = new List <ThongTinChuongHocViewModel>();
                khoaHocVm.DanhSachChuongHoc.ForEach(maChuongHoc => {
                    dsChuongHoc.Add(chuongHocVms.FirstOrDefault(x => x.Id == maChuongHoc));
                });
                khoaHocVm.ThongTinChuongHoc = dsChuongHoc;
                return(new ResponseEntity(StatusCodeConstants.OK, khoaHocVm));
            }
            catch (Exception ex)
            {
                return(new ResponseEntity(StatusCodeConstants.ERROR_SERVER, ex.Message));
            }
        }