public IHttpActionResult Put(OrganizationPutRequest requestData) { var response = new Infrastructure.ViewModel.Base.BaseResponse <Organization>(); var requestService = new Service.Utility.RequestDataHelper <OrganizationPutRequest>(); var checkColumnKeys = new string[3] { "id", "orgcode", "token" }; var checkDataEmpty = requestService.CheckColumnEmpty(requestData, checkColumnKeys); if (checkDataEmpty == false) { response.Message = "遺漏參數"; response.State = Infrastructure.ViewModel.Base.LogState.RequestDataError; response.Success = false; return(Content(HttpStatusCode.BadRequest, response)); } var orgService = new OrganizationService(); var responseData = orgService.UpdateOrganization(requestData); if (responseData == null) { response.Success = false; response.State = Infrastructure.ViewModel.Base.LogState.Error; response.Message = "編輯失敗"; return(Ok(response)); } response.Success = true; response.Message = "編輯成功"; response.Data = responseData; return(Ok(response)); }
public async Task WhenAsync(CreateOrganizationDto c) { var idObj = (c as ICreateOrganization).OrganizationId; var uriParameters = new OrganizationUriParameters(); uriParameters.Id = idObj; var req = new OrganizationPutRequest(uriParameters, (CreateOrganizationDto)c); var resp = await _ramlClient.Organization.Put(req); OrganizationProxyUtils.ThrowOnHttpResponseError(resp); }
/// <summary> /// 編輯組織 /// </summary> /// <param name="requestData"></param> /// <returns></returns> public Organization UpdateOrganization(OrganizationPutRequest requestData) { var tokenService = new TokenService(); var checkToken = tokenService.GetTokenInfo(requestData.Token.ToString()).Result; if (checkToken == null) { return(null); } var organizationInfo = _uow.OrganizationRepo.Get(t => t.Id == requestData.Id).FirstOrDefault(); if (organizationInfo == null) { return(null); } if (requestData.Name != null && requestData.Name != string.Empty) { organizationInfo.Name = requestData.Name; } if (requestData.ApiKey != null && requestData.ApiKey != string.Empty) { organizationInfo.APIKey = requestData.ApiKey; } if (requestData.SemesterLength.HasValue) { organizationInfo.SemesterLength = requestData.SemesterLength.Value; } organizationInfo.Updated = TimeData.Create(DateTime.UtcNow); organizationInfo.UpdateUser = checkToken.MemberId; try { _uow.SaveChanges(); return(organizationInfo); } catch (Exception ex) { return(null); throw ex; } }