Пример #1
0
        public async Task <IActionResult> ProjectCreate(ProjectCreateModel pCM)
        {
            if (ModelState.IsValid)
            {
                var fileName = Path.Combine(hostingEnvironment.WebRootPath + "/images", Path.GetFileName(pCM.FormFile.FileName));
                pCM.FormFile.CopyTo(new FileStream(fileName, FileMode.Create));

                var newProjekt = new Projekt()
                {
                    Nazwa   = pCM.projekt.Nazwa,
                    Logo    = "images/" + Path.GetFileName(pCM.FormFile.FileName),
                    IdFirma = pCM.projekt.IdFirma
                };

                _s16693context.Add(newProjekt);
                await _s16693context.SaveChangesAsync();

                var newZP = new ZespolProjekt()
                {
                    IdProjekt = newProjekt.IdProjekt,
                    IdZespol  = (int)pCM.zespol.IdZespol,
                    DataPrzypisaniaZespolu = DateTime.Now
                };

                var newPP = new ProjektPakiet()
                {
                    IdProjekt = newProjekt.IdProjekt,
                    IdPakiet  = (int)pCM.pakiet.IdPakiet,
                    DataRozpoczeciaWspolpracy = DateTime.Now
                };

                _s16693context.Add(newZP);
                _s16693context.Add(newPP);

                await _s16693context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            else if (!ModelState.IsValid)
            {
                var firma  = from e in _s16693context.Firma select e;
                var zespol = from e in _s16693context.Zespol select e;
                var pakiet = from e in _s16693context.Pakiet select e;

                pCM.zespols = await zespol.ToListAsync();

                pCM.pakiets = await pakiet.ToListAsync();

                pCM.firmas = await firma.ToListAsync();

                return(View("ProjectCreate", pCM));
            }
            return(View(pCM));
        }
Пример #2
0
        public async Task <IActionResult> ProjectEdit(ProjectEditModel pEM)
        {
            if (ModelState.IsValid)
            {
                _s16693context.Update(pEM.projekt);

                var oldZP = await _s16693context.ZespolProjekt
                            .Where(x => x.IdZespol == pEM.IdZespol && x.IdProjekt == pEM.projekt.IdProjekt && x.DataWypisaniaZespolu == null)
                            .FirstOrDefaultAsync();

                var oldPP = await _s16693context.ProjektPakiet
                            .Where(x => x.IdPakiet == pEM.IdPakiet && x.IdProjekt == pEM.projekt.IdProjekt && x.DataZakonczeniaWspolpracy == null)
                            .FirstOrDefaultAsync();

                if (oldZP.IdZespol != pEM.zespol.IdZespol)
                {
                    oldZP.DataWypisaniaZespolu = DateTime.Now;
                    _s16693context.Update(oldZP);

                    var newZP = new ZespolProjekt()
                    {
                        IdProjekt = pEM.projekt.IdProjekt,
                        IdZespol  = (int)pEM.zespol.IdZespol,
                        DataPrzypisaniaZespolu = DateTime.Now
                    };

                    _s16693context.Add(newZP);
                    await _s16693context.SaveChangesAsync();
                }

                if (oldPP.IdPakiet != pEM.pakiet.IdPakiet)
                {
                    oldPP.DataZakonczeniaWspolpracy = DateTime.Now;
                    _s16693context.Update(oldPP);

                    var newPP = new ProjektPakiet()
                    {
                        IdProjekt = pEM.projekt.IdProjekt,
                        IdPakiet  = (int)pEM.pakiet.IdPakiet,
                        DataRozpoczeciaWspolpracy = DateTime.Now
                    };

                    _s16693context.Add(newPP);
                    await _s16693context.SaveChangesAsync();
                }

                await _s16693context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            else if (!ModelState.IsValid)
            {
                var firmy   = from e in _s16693context.Firma select e;
                var zespoly = from e in _s16693context.Zespol select e;
                var pakiety = from e in _s16693context.Pakiet select e;

                var newPEM = new ProjectEditModel
                {
                    projekt  = pEM.projekt,
                    zespol   = pEM.zespol,
                    pakiet   = pEM.pakiet,
                    firmas   = await firmy.ToListAsync(),
                    zespols  = await zespoly.ToListAsync(),
                    pakiets  = await pakiety.ToListAsync(),
                    IdZespol = (int)pEM.IdZespol,
                    IdPakiet = (int)pEM.IdPakiet
                };

                return(View("ProjectEdit", newPEM));
            }
            return(View(pEM));
        }