예제 #1
0
        public async Task <IActionResult> AddAsync(ViewLevelwithImage ViewLevelwithImage)
        {
            int Subjectid = 0;

            if (ModelState.IsValid)
            {
                ViewLevel model = new ViewLevel
                {
                    Contentid    = ViewLevelwithImage.Contentid,
                    LevelContent = ViewLevelwithImage.LevelContent,
                    Levelid      = ViewLevelwithImage.Levelid
                };
                if (ViewLevelwithImage.LevelidName != null)
                {
                    model.LevelidName = ViewLevelwithImage.LevelidName;
                }

                if (string.IsNullOrEmpty(ViewLevelwithImage.LevelContent))
                {
                    model.LevelContent = "Empty";
                }

                if (ViewLevelwithImage.LevelImage != null)
                {
                    using (var memoryStream = new MemoryStream())
                    {
                        await ViewLevelwithImage.LevelImage.CopyToAsync(memoryStream);

                        model.LevelImage = memoryStream.ToArray();
                    }
                }

                _viewLevel.Add(model);
                _viewLevel.Save();
                Subjectid = _content.FindById((int)model.Contentid).Subjectid;
            }

            return(RedirectToAction("contentlist", "content", new { id = Subjectid }));
        }
예제 #2
0
        public async Task <IActionResult> Delete(int id = 0)
        {
            if (id > 0)
            {
                var updateEntity = _content.FindById(id);
                updateEntity.Tombstone = DateTime.Now;

                var updateViewlevels = await _viewLevel.GetList(x => x.Contentid == id);

                if (updateViewlevels.Count > 0)
                {
                    updateViewlevels.ForEach(x => x.Tombstone = DateTime.Now);
                }
                _content.Save();
                _viewLevel.Save();
            }

            return(Json(new { result = "ok" }));
        }
예제 #3
0
        public IActionResult Remove(int id = 0)
        { //TODO : Refactoring Unit of Work
            var lessonid = 0;

            if (id > 0)
            {
                var  removeSubject        = _subject.FindById(id);
                bool viewlevelChangeState = false;
                lessonid = removeSubject.Lessonid;
                _subject.Remove(removeSubject);
                var getlist = _content.GetList(x => x.Subjectid == id).Result;
                getlist.ForEach(x =>
                {
                    var removeContent = _content.FindById(x.id);
                    _content.Remove(removeContent);
                    if (_viewLevel.GetList(v => v.Contentid == x.id).Result.Count > 0)
                    {
                        _viewLevel.GetList(v => v.Contentid == x.id).Result.ForEach(f =>
                        {
                            var removeLevel = _viewLevel.FindById(f.id);
                            _viewLevel.Remove(removeLevel);
                            viewlevelChangeState = true;
                        });
                    }
                });

                if (viewlevelChangeState)
                {
                    _viewLevel.Save();
                }
                ;

                _content.Save();
                _subject.Save();
            }

            return(RedirectToAction("subjectlist", "lesson", new { id = lessonid }));
        }