Exemple #1
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,LinkId,Details")] PUD pUD)
        {
            if (id != pUD.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(pUD);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PUDExists(pUD.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(pUD));
        }
Exemple #2
0
        public async Task <IActionResult> Create([Bind("Id,LinkId,Details")] PUD pUD)
        {
            if (ModelState.IsValid)
            {
                _context.Add(pUD);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(pUD));
        }
Exemple #3
0
        public async Task <bool> UploadPUDToDatabase(IFormFile file)
        {
            _context.Database.SetCommandTimeout(100000);

            List <PUDInfoViewModel> pudModels = this.ReadPUD(file);
            bool success = true;

            var all_puds = await _context.PUDs.Include(i => i.EduProgram).Include(i => i.Department).ToListAsync();

            var all_eduprog = await _context.EduPrograms.Include(i => i.Faculty).ToListAsync();

            var all_depart = await _context.Departments.ToListAsync();

            var all_faculty = await _context.Faculties.Include(i => i.Campus).ToListAsync();

            var all_campus = await _context.Campuses.ToListAsync();

            foreach (PUDInfoViewModel model in pudModels)
            {
                PUD pud = new PUD()
                {
                    LinkId         = model.LinkID,
                    EducationStage = model.EducationStage,
                    CourseName     = model.Name,
                    Language       = model.Language,
                    Details        = model.Details
                };

                var campus = all_campus.Find(item => item.Name == model.Campus);
                if (campus == null)
                {
                    campus = new Campus {
                        Name = model.Campus
                    };
                    _context.Add(campus);
                }

                var falulty = all_faculty.Find(item => item.Name == model.Faculty);
                if (falulty == null)
                {
                    falulty = new Faculty {
                        Name = model.Faculty, Campus = campus
                    };
                    _context.Add(falulty);
                }

                var edu_prog = all_eduprog.Find(item => item.Name == model.OP);
                if (edu_prog == null)
                {
                    edu_prog = new EduProgram {
                        Name = model.OP, Faculty = falulty
                    };
                    _context.Add(edu_prog);
                }
                pud.EduProgram = edu_prog;

                var department = all_depart.Find(item => item.Name == model.Department);
                if (department == null)
                {
                    department = new Department {
                        Name = model.Department
                    };
                    _context.Add(department);
                }
                pud.Department = department;

                var db_pud = all_puds.Find(item =>
                {
                    return(item.CourseName == pud.CourseName &&
                           item.EduProgram.Name == pud.EduProgram.Name &&
                           item.EducationStage == pud.EducationStage &&
                           item.EduProgram.Faculty.Name == pud.EduProgram.Faculty.Name &&
                           item.EduProgram.Faculty.Campus.Name == pud.EduProgram.Faculty.Campus.Name);
                });
                if (db_pud == null)
                {
                    _context.Add(pud);
                }
            }

            await _context.SaveChangesAsync();

            return(success);
        }