public async Task <ActionResult <ProfessionDB> > PostProfessionDB(ProfessionDB professionDB)
        {
            _context.Profession.Add(professionDB);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetProfessionDB", new { id = professionDB.id }, professionDB));
        }
        public async Task <IActionResult> PutProfessionDB(Guid id, ProfessionDB professionDB)
        {
            if (id != professionDB.id)
            {
                return(BadRequest());
            }

            _context.Entry(professionDB).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ProfessionDBExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Esempio n. 3
0
        /// <summary>
        /// constructor no. 1 builds a profession by its ID.
        /// </summary>
        public Profession(int profID)
        {
            DataRow prof = ProfessionDB.RetProfession(profID);

            if (prof != null)
            {
                this.ProfessionID = (int)prof["ProfessionID"];
                this.ProfName     = (string)prof["ProfName"].ToString();
                this.ProfPath     = (string)prof["ProfPath"].ToString();
            }
        }
Esempio n. 4
0
        public async Task <GroupDTO> UpdateGroupAsync(Guid id, GroupDTO groupDTO)
        {
            var grups = await _context.Group.Where(c => c.id == id)
                        .Include(c => c.ProfessionDB)
                        .Include(c => c.SpecializationDB)
                        .FirstOrDefaultAsync();

            if (grups == null || grups.id != id)
            {
                return(null);
            }

            grups.id            = grups.id;
            grups.numberOfGroup = groupDTO.numberOfGroup;
            grups.info          = groupDTO.info;
            grups.CountCadets   = groupDTO.CountCadets;

            if (groupDTO.nameOfSpecialization != grups.SpecializationDB.SpecializationCode)
            {
                SpecializationDB spec = _context.Specialization.Where(c => c.nameOfSpecialization == groupDTO.nameOfSpecialization).FirstOrDefault();
                grups.SpecializationDB = spec;
                grups.ProfessionDBid   = spec.id;
            }
            if (groupDTO.ProfessionLastName != grups.ProfessionDB.nameOfProffession)
            {
                ProfessionDB prof = _context.Profession.Where(c => c.nameOfProffession == groupDTO.ProfessionLastName).FirstOrDefault();
                grups.ProfessionDB   = prof;
                grups.ProfessionDBid = prof.id;
            }

            _context.Entry(grups).State = EntityState.Modified;
            try
            {
                await _context.SaveChangesAsync();

                return(groupDTO);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!GroupDBExists(id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }
        }
Esempio n. 5
0
        /// <summary>
        /// the method builds a profession list from a datatable(the table in the db) and returns it
        /// </summary>
        public static List <Profession> GetProfessionList()
        {
            DataTable         profTable = ProfessionDB.RetProfessionTable();
            List <Profession> profList  = new List <Profession>();

            if (profTable == null)
            {
                return(null);
            }
            foreach (DataRow row in profTable.Rows)
            {
                Profession obj = new Profession((int)row["ProfessionID"], (string)row["ProfName"].ToString(), (string)row["ProfPath"].ToString());
                profList.Add(obj);
            }
            return(profList);
        }
Esempio n. 6
0
        public async Task <GroupDTO> AddGroupAsync(GroupDTO groupDTO)
        {
            SpecializationDB spec = _context.Specialization.Where(c => c.nameOfSpecialization == groupDTO.nameOfSpecialization)
                                    .FirstOrDefault();
            ProfessionDB prof = _context.Profession.Where(c => c.nameOfProffession == groupDTO.ProfessionLastName)
                                .FirstOrDefault();

            if (spec == null || prof == null)
            {
                return(null);
            }


            GroupDB group = new GroupDB
            {
                id                 = groupDTO.id,
                info               = groupDTO.info,
                SpecializationDB   = spec,
                ProfessionDB       = prof,
                CountCadets        = groupDTO.CountCadets,
                numberOfGroup      = groupDTO.numberOfGroup,
                ProfessionDBid     = prof.id,
                SpecializationDBid = spec.id
            };

            try
            {
                _context.Group.Add(group);
                await _context.SaveChangesAsync();

                return(groupDTO);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!GroupDBExists(group.id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }
        }