예제 #1
0
        public IHttpActionResult PutStaff(int id, StaffEntry staffEntry)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var staff = db.Staff.Find(id);

            if (staff == null)
            {
                return(BadRequest());
            }

            staff.staffFirstName    = staffEntry.StaffFirstName ?? staff.staffFirstName;
            staff.staffLastName     = staffEntry.StaffLastName ?? staff.staffLastName;
            staff.staffContactEmail = staffEntry.StaffContactEmail ?? staff.staffContactEmail;
            staff.staffContactNum   = staffEntry.StaffContactNum ?? staff.staffContactNum;
            staff.staffUsername     = staffEntry.StaffUserName ?? staff.staffUsername;
            staff.staffPassword     = staffEntry.StaffPassword ?? staff.staffPassword;

            db.Entry(staff).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!StaffExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(Ok("Staff " + staff.staffFirstName + " " + staff.staffLastName + " updated successfully"));
        }
예제 #2
0
        public IHttpActionResult PostStaff(StaffEntry staff)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            int nextStaffId = (db.Staff
                               .OrderByDescending(n => n.staffId)
                               .Select(n => n.staffId)
                               .First()) + 1;

            var newStaffMember = new Staff()
            {
                staffId           = nextStaffId,
                staffFirstName    = staff.StaffFirstName,
                staffLastName     = staff.StaffLastName,
                staffContactNum   = staff.StaffContactNum,
                staffContactEmail = staff.StaffContactEmail,
                staffUsername     = staff.StaffUserName,
                staffPassword     = staff.StaffPassword,
                roleType          = staff.RoleType
            };

            db.Staff.Add(newStaffMember);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (StaffExists(newStaffMember.staffId))
                {
                    return(BadRequest("That staff id number already exists"));
                }
            }
            return(Ok("Staff member " + newStaffMember.staffFirstName + " " + newStaffMember.staffLastName + " added successfully"));
        }