public async Task <IActionResult> Post([FromBody] EmailAccountViewModel viewModel) { await AuthorizeHostAsync(EmailAccountFunctionName); var entity = viewModel.Map <EmailAccountViewModel, EmailAccount>(); await _emailAccountService.CreateAsync(entity, GetEmbeddedUser(), GetClientIP()); return(Created(string.Empty, entity.Id)); }
/// <summary> /// Convert EmailAccount Entity into EmailAccount Object /// </summary> ///<param name="model">EmailAccountViewModel</param> ///<param name="EmailAccountEntity">DataAccess.EmailAccount</param> ///<returns>EmailAccountViewModel</returns> public static EmailAccountViewModel ToViewModel( this DataAccess.EmailAccount entity, EmailAccountViewModel model) { model.SessionUserId = entity.CreatedUserId; model.Email = entity.Email; model.DisplayName = entity.DisplayName; model.Host = entity.Host; model.Port = entity.Port; model.Username = entity.Username; model.Password = entity.Password; model.EnableSsl = entity.EnableSsl; model.UseDefaultCredentials = entity.UseDefaultCredentials; return(model); }
public async Task <IActionResult> Put(string id, [FromBody] EmailAccountViewModel viewModel) { await AuthorizeHostAsync(EmailAccountFunctionName); var entity = viewModel.Map <EmailAccountViewModel, EmailAccount>(); entity.Id = id; var result = await _emailAccountService.UpdateAsync(entity, GetEmbeddedUser(), GetClientIP()); if (!result) { return(NotFound()); } return(NoContent()); }
/// <summary> /// Convert EmailAccount Object into EmailAccount Entity /// </summary> ///<param name="model">EmailAccount</param> ///<param name="EmailAccountEntity">DataAccess.EmailAccount</param> ///<returns>DataAccess.EmailAccount</returns> public static DataAccess.EmailAccount ToEntity(this EmailAccountViewModel model, DataAccess.EmailAccount entity) { if (entity.Id == 0) { entity.CreatedUserId = model.SessionUserId; } else { entity.UpdatedUserId = model.SessionUserId; entity.UpdatedTimestamp = DateTime.Now; } entity.Email = model.Email; entity.DisplayName = model.DisplayName; entity.Host = model.Host; entity.Port = model.Port; entity.Username = model.Username; entity.Password = model.Password; entity.EnableSsl = model.EnableSsl; entity.UseDefaultCredentials = model.UseDefaultCredentials; return(entity); }