public IActionResult Post([FromBody] GuestLinksModel model) { try { var UserId = Convert.ToInt32(User.Claims.Where(a => a.Type == "UserId").Select(a => a.Value).FirstOrDefault()); model.UserId = UserId; var result = this.m_GuestLinkService.AddGustLink(model); return(new OkObjectResult(result)); } catch (Exception ex) { return(new BadRequestObjectResult(ex)); } }
/// <summary> /// Adds the gust link. /// </summary> /// <param name="Model">The model.</param> /// <returns></returns> /// <exception cref="Exception"></exception> public GuestLinksModel AddGustLink(GuestLinksModel Model) { try { if (Model.GuestLinkID <= 0) { if (string.IsNullOrEmpty(Model.LinkUrl)) { var GuestId = Guid.NewGuid().ToString("N").Substring(0, 15); var guestLink = string.Format("{0}/{1}", Application.AttachMoreWeb, GuestId); Model.LinkUrl = guestLink; Model.GuestId = GuestId; } else { Model.GuestId = Model.LinkUrl.Substring(Model.LinkUrl.IndexOf("com") + 4).ToString(); } var entity = GuestLinksMapper <GuestLinksModel, GuestLinks> .Map(Model); this.m_GuestLinkRepository.Add(entity); this.AddExpirySettings(ref entity); this.AddSecuritySettings(ref entity); Model = GuestLinksMapper <GuestLinks, GuestLinksModel> .Map(entity); return(Model); } else { var entity = GuestLinksMapper <GuestLinksModel, GuestLinks> .Map(Model); this.m_GuestLinkRepository.Edit(entity); this.AddExpirySettings(ref entity); this.AddSecuritySettings(ref entity); Model = GuestLinksMapper <GuestLinks, GuestLinksModel> .Map(entity); return(Model); } } catch (Exception ex) { var message = string.Format("{0} {1} {2}", ex.InnerException == null ? ex.Message : ex.InnerException.Message, Environment.NewLine, ex.StackTrace); throw new Exception(message); } }
/// <summary> /// Maps the request. /// </summary> /// <param name="model">The model.</param> /// <returns></returns> public static GuestLinks MapRequest(GuestLinksModel model) { var request = new GuestLinks() { LinkName = model.LinkName == null ? null : model.LinkName, LinkUrl = model.LinkUrl == null ? null : model.LinkUrl, CreationDate = DateTime.UtcNow, //ExpirationDate = model.ExpirationDate == null ? null : model.ExpirationDate, GuestId = model.GuestId == null ? null : model.GuestId, //IsAllowAddRecipient = model.IsAllowAddRecipient, //NumberUsesAllowed = model.NumberUsesAllowed, Status = model.Status, //UploadedEmails = model.UploadedEmails == null ? null : model.UploadedEmails, //UploadLimit = model.UploadLimit, //UploadLimit = model.UploadLimit, UserId = model.UserId }; return(request); }