/// <summary> /// 更新成員資訊 - 管理者修改 /// </summary> /// <param name="token">登入者代碼</param> /// <param name="name">欲修改姓名</param> /// <param name="email">欲修改信箱</param> /// <param name="roleName">欲修改角色</param> /// <param name="file">欲修改大頭照</param> /// <returns></returns> public Member UpdateMemberInfo(MemberManagePutRequest requestData) { try { var db = _uow.DbContext; var tokenService = new TokenService(); //取得目前DB登入 var checkUserToken = tokenService.GetTokenInfo(requestData.Token).Result; if (checkUserToken == null) { return(null); } var updaterInfo = db.Members.FirstOrDefault(t => t.Id == checkUserToken.MemberId); var memberInfo = db.Members.FirstOrDefault(t => t.OrgId == requestData.OrgId && t.Account.ToLower() == requestData.Account.ToLower()); if (memberInfo == null) { return(null); } memberInfo.Email = requestData.Email; if (requestData.Name != null && requestData.Name != string.Empty) { memberInfo.Name = requestData.Name; } if (requestData.RoleId.HasValue) { memberInfo.RoleName = requestData.RoleId.ToString(); } memberInfo.Updated = TimeData.Create(DateTime.UtcNow); memberInfo.UpdateUser = updaterInfo.Id; //if (requestData.Photo != string.Empty && requestData.Photo != null) // memberInfo.Photo = requestData.Photo; memberInfo.IsShowEmail = requestData.IsShowEmail; db.SaveChanges(); return(memberInfo); } catch (Exception ex) { return(null); throw ex; } }
public void PutTest() { var putTestValue = new MemberManagePutRequest() { Account = "unittestuser", OrgId = 2, Email = "*****@*****.**", Token = "4a01b7ed-27d7-4312-9a63-71c53a70dc81", Name = "單元測試修改帳號" }; target = new UserController(); var targetResponse = target.Put(putTestValue); Assert.IsInstanceOfType(targetResponse, typeof(OkNegotiatedContentResult <BaseResponse <Member> >)); var targetResponseData = targetResponse as OkNegotiatedContentResult <BaseResponse <Member> >; Assert.IsNotNull(targetResponseData.Content); }
public IHttpActionResult Put(MemberManagePutRequest requestData) { putResponse = new BaseResponse <Member>() { Success = false, Data = new Member(), Message = "編輯失敗" }; var checkColumnKeys = new string[3] { "account", "orgid", "email" }; //判斷是否遺漏參數 var checkEmpty = CheckEmpty(requestData, checkColumnKeys) as NegotiatedContentResult <BaseResponse <string> >; if (checkEmpty.Content.Success == false) { return(checkEmpty); } //驗證token var authToken = AuthToken(requestData.Token, Request) as NegotiatedContentResult <BaseResponse <string> >; if (authToken.Content.Success == false) { return(authToken); } requestData.Token = _token; var service = new MemberService(); var responseData = service.UpdateMemberInfo(requestData); if (responseData != null) { putResponse.Success = true; putResponse.Message = "編輯成功"; putResponse.Data = responseData; } return(Ok(putResponse)); }