示例#1
0
        public async Task <IActionResult> CreateOrUpdate([FromBody] LectureModel model)
        {
            // Generated by UModel. This code will be overwritten when you re-run code generation.
            var result = await LectureService.CreateOrUpdate(model);

            return(Ok(result));
        }
示例#2
0
        public async Task <IBaseResponse <LectureModel> > GetLecture(int lectureId, int userId)
        {
            var lectureModel   = new LectureModel();
            var currentLecture = await _applicationContext.Lectures.FirstOrDefaultAsync(lec => lec.Id == lectureId);

            if (currentLecture == null)
            {
                return new BaseResponse <LectureModel>
                       {
                           Code = HttpStatusCode.BadRequest,
                           Data = lectureModel
                       }
            }
            ;

            lectureModel = _mapper.Map <LectureModel>(currentLecture);

            var lectureTest = await _applicationContext.Tests.FirstOrDefaultAsync(test => test.LectureId == lectureId);

            lectureModel.Test = _mapper.Map <TestDataModel>(lectureTest);
            var testQuestionModels = new List <QuestionModel>();
            var testQuestions      = await _applicationContext.Questions.Where(qu => qu.TestId == lectureTest.Id).ToListAsync();

            foreach (var question in testQuestions)
            {
                var testQuestion = _mapper.Map <QuestionModel>(question);

                var questionVariants = await _applicationContext.QuestionVariants.Where(qv => qv.QuestionId == question.Id).ToListAsync();

                for (int i = 0; i < questionVariants.Count; i++)
                {
                    testQuestion.Variants.Add(questionVariants[i].Description);
                }
                testQuestion.Component = question.Component.ToString().ToLower();
                testQuestionModels.Add(testQuestion);
            }
            lectureModel.Test.Questions = testQuestionModels;

            var isLectureCompleted = await _applicationContext.CompletedUserLectures.FirstOrDefaultAsync(lec => lec.LectureId == lectureId && lec.UserId == userId);

            lectureModel.IsCompleted = isLectureCompleted != null ? true : false;

            var lectureComments = await _applicationContext.Comments.Where(com => com.LectureId == lectureModel.Id).ToListAsync();

            lectureModel.Comments = await CommonMethods.GetCommentList(lectureComments, new List <CommentModel>(), _applicationContext, _mapper, userId);

            return(new BaseResponse <LectureModel>
            {
                Code = HttpStatusCode.OK,
                Data = lectureModel
            });
        }
    }
示例#3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HomeWork"/> class.
 /// </summary>
 public HomeWork()
 {
     IsLoading = true;
     Device.BeginInvokeOnMainThread(async() =>
     {
         try
         {
             _LectureList = await LectureModel.GetLecture();
             HoweWorkLayout();
         }
         catch (Exception ex)
         {
         }
     });
 }
 public static void Insert(LectureModel lecture)
 {
     try
     {
         using (AppContext db = new AppContext())
         {
             db.LecturesSet.Add(lecture);
             db.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         throw new Exception(ex.ToString());
     }
 }
示例#5
0
        public async Task <BaseResult> CreateOrUpdate(LectureModel model)
        {
            var lecture = model.ToLecture();

            lecture = lecture.UpdateCommonInt();

            if (lecture.Id > 0)
            {
                return(await Update(lecture));
            }
            else
            {
                return(await Create(lecture));
            }
        }
示例#6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Logbook FillUp Page"/> class.
 /// </summary>
 public LogbookFillUp()
 {
     IsLoading = true;
     Device.BeginInvokeOnMainThread(async() =>
     {
         try
         {
             IsLoading    = true;
             _LectureList = await LectureModel.GetLecture();
             LogbookFillUpLayout();
         }
         catch (Exception ex)
         {
         }
     });
 }
示例#7
0
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            LectureModel lectureModel = new LectureModel();
            Lecture      lecture      = CreateLecture();

            if (!String.IsNullOrWhiteSpace(Request.QueryString["id"]))
            {
                int id = Convert.ToInt32(Request.QueryString["id"]);
                lblResult.Text = lectureModel.UpdateLecture(id, lecture);
                lblResult.Text = lectureModel.UpdateLecture(id, lecture);
            }
            else
            {
                lblResult.Text = lectureModel.InsertLecture(lecture);
            }
        }
示例#8
0
        public ContentResult CreateLecture(LectureModel newLecture)
        {
            if (ModelState.IsValid)
            {
                InsertLecture.Insert(newLecture);

                return(new ContentResult
                {
                    StatusCode = (int)HttpStatusCode.OK
                });
            }
            else
            {
                return(new ContentResult
                {
                    StatusCode = (int)HttpStatusCode.InternalServerError
                });
            }
        }
示例#9
0
        public async Task <LectureModel> CreateAsync(LectureModel model)
        {
            var lecture = new Lecture
            {
                Name    = model.Name,
                Url     = model.Url,
                Content = model.Content,
                Preview = model.Preview,
                Section = model.Section,
            };

            lectureRepository.Add(lecture);

            await dataContext.SaveChangesAsync();

            lecture = await lectureTagBinder.BindTags(lecture, model.Tags);

            return(LectureMap.Map(lecture));
        }
示例#10
0
        public ContentResult DelLecture(LectureModel lecture)
        {
            bool result = DeleteLecture.Delete(lecture);

            if (result)
            {
                return(new ContentResult
                {
                    StatusCode = (int)HttpStatusCode.OK
                });
            }
            else
            {
                return(new ContentResult
                {
                    StatusCode = (int)HttpStatusCode.BadRequest
                });
            }
        }
示例#11
0
        private void fillPage(int id)
        {
            LectureModel lectureModel = new LectureModel();
            Lecture      lecture      = lectureModel.getLecture(id);

            txtDescription.Text = lecture.Description;

            txtName.Text             = lecture.Name;
            ddlPicture.SelectedValue = lecture.Image;

            ddlPic1.SelectedValue = lecture.Image_One;
            ddlPic2.SelectedValue = lecture.Image_Two;
            ddlPic3.SelectedValue = lecture.Image_Three;
            ddlPic4.SelectedValue = lecture.Image_Four;
            ddlPic5.SelectedValue = lecture.Image_Five;
            ddlPic6.SelectedValue = lecture.Image_Six;

            txtVideo.Text = lecture.Video;
            ddlLectureType.SelectedValue = lecture.Type_ID.ToString();
        }
示例#12
0
        public async Task <LectureModel> UpdateAsync(LectureModel model)
        {
            var lecture = await lectureRepository.GetQuery().FirstOrDefaultAsync(x => x.Id == model.Id);

            if (lecture == null)
            {
                throw new ApplicationException("Объект не найден.");
            }

            lecture.Name    = model.Name;
            lecture.Preview = model.Preview;
            lecture.Url     = model.Url;
            lecture.Content = model.Content;
            lecture.Section = model.Section;

            await dataContext.SaveChangesAsync();

            lecture = await lectureTagBinder.BindTags(lecture, model.Tags);

            return(LectureMap.Map(lecture));
        }
示例#13
0
        public static bool Delete(LectureModel lecture)
        {
            try
            {
                using (AppContext db = new AppContext())
                {
                    var exist = db.LecturesSet.Where(l => l.LectureId == lecture.LectureId).FirstOrDefault();

                    if (exist != null)
                    {
                        db.Entry(exist).State = EntityState.Deleted;
                        db.SaveChanges();

                        return(true);
                    }
                }

                return(false);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.ToString());
            }
        }
示例#14
0
        public async Task <ActionResult <LectureModel> > Update(LectureModel model)
        {
            var lecture = await lectureService.UpdateAsync(model);

            return(Ok(lecture));
        }
示例#15
0
        private void fillPage()
        {
            if (!string.IsNullOrWhiteSpace(Request.QueryString["id"]))
            {
                int          id      = Convert.ToInt32(Request.QueryString["id"]);
                LectureModel model   = new LectureModel();
                Lecture      lecture = model.getLecture(id);


                //Fill page with data
                lblTitle.Text       = lecture.Name;
                lblDescription.Text = lecture.Description.ToString().Replace(Environment.NewLine, "<br />");
                imgLecture.ImageUrl = "~/images/" + lecture.Image;

                HyperLink.Text        = lecture.Video;
                HyperLink.NavigateUrl = lecture.Video;

                string str = "displayNone.png";
                if (lecture.Image_One != str)
                {
                    Image1.Visible         = true;
                    HyperLink1.NavigateUrl = "~/ImagesForLectures/" + lecture.Image_One;
                    Image1.ImageUrl        = "~/ImagesForLectures/" + lecture.Image_One;
                    Image1.Width           = 100;
                    Image1.Height          = 100;
                }
                else
                {
                    Image1.Visible = false;
                }

                if (lecture.Image_Two != str)
                {
                    Image2.Visible         = true;
                    HyperLink2.NavigateUrl = "~/ImagesForLectures/" + lecture.Image_Two;
                    Image2.ImageUrl        = "~/ImagesForLectures/" + lecture.Image_Two;
                    Image2.Height          = 100;
                    Image2.Width           = 100;
                }
                else
                {
                    Image2.Visible = false;
                }

                if (lecture.Image_Three != str)
                {
                    Image3.Visible         = true;
                    HyperLink3.NavigateUrl = "~/ImagesForLectures/" + lecture.Image_Three;
                    Image3.ImageUrl        = "~/ImagesForLectures/" + lecture.Image_Three;
                    Image3.Width           = 100;
                    Image3.Height          = 100;
                }
                else
                {
                    Image3.Visible = false;
                }

                if (lecture.Image_Four != str)
                {
                    Image4.Visible         = true;
                    HyperLink4.NavigateUrl = "~/ImagesForLectures/" + lecture.Image_Four;
                    Image4.ImageUrl        = "~/ImagesForLectures/" + lecture.Image_Four;
                    Image4.Width           = 100;
                    Image4.Height          = 100;
                }
                else
                {
                    Image4.Visible = false;
                }

                if (lecture.Image_Five != str)
                {
                    Image5.Visible         = true;
                    HyperLink5.NavigateUrl = "~/ImagesForLectures/" + lecture.Image_Five;
                    Image5.ImageUrl        = "~/ImagesForLectures/" + lecture.Image_Five;
                    Image5.Width           = 100;
                    Image5.Height          = 100;
                }
                else
                {
                    Image5.Visible = false;
                }

                if (lecture.Image_Six != str)
                {
                    Image6.Visible         = true;
                    HyperLink6.NavigateUrl = "~/ImagesForLectures/" + lecture.Image_Six;
                    Image6.ImageUrl        = "~/ImagesForLectures/" + lecture.Image_Six;
                    Image6.Height          = 100;
                    Image6.Width           = 100;
                }
                else
                {
                    Image6.Visible = false;
                }
            }
        }
示例#16
0
 private static void AddToList(MySqlDataReader dr)
 {
     try
     {
         LectureModel entity = new LectureModel();
         entity.LectureId = Convert.ToInt32(dr[LectureId]);
         entity.LectureName = Convert.ToString(dr[LectureName]);
         entity.LectureInsertedOn = Convert.ToDateTime(dr[LectureInsertedOn]);
         list.Add(entity);
     }
     catch (Exception ex)
     {
         dr.Close();
         DBInterface.DBConnection.Close();
         //TODO: Log MySQL error
         throw ex;
     }
 }
示例#17
0
 public static Lecture ToLecture(this LectureModel model)
 {
     return(model.MapTo <LectureModel, Lecture>());
 }