/// <summary> /// 更新成员信息 /// </summary> /// <param name="memberDTO">成员信息</param> /// <returns></returns> public HttpResponseMessage Put(AddMemberDTO memberDTO) { try { return(ResponseWrapper.SuccessResponse(repository.UpdateMember(memberDTO, privilege.UserEditApplication))); } catch (Exception e) { return(ResponseWrapper.ExceptionResponse(e)); } }
public Member Put(AddMemberDTO member) { var dep = new Department() { DepartmentID = member.Department }; _context.Attach(dep); var fac = new Faculty() { FacultyID = member.Faculty }; _context.Attach(fac); var job = new Job() { JobID = member.Job }; _context.Attach(job); string Img; if (member.Image != null) { Img = _imageService.SaveImg(member.Image); } else { Img = " "; } var updateMember = new Member() { ImgUrl = Img, MemberID = member.MemberID, FirstName = member.FirstName, LastName = member.LastName, BirthDate = member.BirthDate, Sex = member.Sex, Phone = member.Phone, Faculty = fac, Department = dep, Job = job, Email = member.Email, Password = member.Password, }; return(updateMember); }
/// <summary> /// 更新成员信息 /// </summary> /// <param name="memberDTO">更新的成员信息</param> /// <returns></returns> public GetMemberDTO UpdateMember(AddMemberDTO memberDTO, Func <Application, CurrentUser, bool> privilege) { using (var ctx = new AspodesDB()) { var member = ctx.Members.FirstOrDefault( m => m.ApplicationId == memberDTO.ApplicationId && m.PersonId == memberDTO.PersonId); if (member == null) { throw new NotFoundException("未找到成员信息"); } if (!privilege(member.Application, UserHelper.GetCurrentUser())) { throw new UnauthorizationException(); } member.Task = memberDTO.Task; ctx.SaveChanges(); return(Mapper.Map <GetMemberDTO>(member)); } }
public async Task <ActionResult <Member> > PutMember([FromForm] AddMemberDTO member) { var umember = User.Claims.FirstOrDefault(c => c.Type == "Id")?.Value; if (umember == null) { return(Unauthorized()); } Member Member = _memberService.Put(member); var entry = _context.Entry(Member); entry.State = EntityState.Modified; entry.Property(m => m.ImgUrl).IsModified = member.Image != null; entry.Property(m => m.Password).IsModified = member.Password != null; await _context.SaveChangesAsync(); return(NoContent()); }
public async Task <ActionResult <Member> > PostMember([FromForm] AddMemberDTO member) { Member newMember = _memberService.Post(member); _context.Member.Add(newMember); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { if (MemberExists(member.MemberID)) { return(Conflict()); } else { throw; } } return(CreatedAtAction("GetMember", new { id = member.MemberID }, newMember)); }
/// <summary> /// 添加申请书成员 /// </summary> /// <param name="memberDTO">成员信息</param> /// <returns></returns> public GetMemberDTO AddMember(AddMemberDTO memberDTO, Func <Application, CurrentUser, bool> privilege) { using (var ctx = new AspodesDB()) { var application = ctx.Applications.FirstOrDefault(a => a.ApplicationId == memberDTO.ApplicationId); if (null == application) { throw new NotFoundException(); } if (!privilege(application, UserHelper.GetCurrentUser())) { throw new UnauthorizationException(); } var old = ctx.Members.FirstOrDefault(m => m.ApplicationId == memberDTO.ApplicationId && m.PersonId == memberDTO.PersonId); if (old != null) { throw new OtherException("人员已添加"); } var member = ctx.Members.Add(Mapper.Map <Member>(memberDTO)); ctx.SaveChanges(); return(Mapper.Map <GetMemberDTO>(member)); } }