/// <summary> /// Maps a VisitorNotification to a VisitorNotificationResource. /// </summary> /// <param name="visitorNotification">The visitor notification.</param> /// <returns>A visitor notification</returns> public static VisitorNotificationResource ToVisitorNotificationResource(this VisitorNotification visitorNotification) { return(new VisitorNotificationResource() { Id = visitorNotification.Id, PositiveCaseId = visitorNotification.PositiveCase.Id, VisitorId = visitorNotification.Visitor.Id, SentDate = visitorNotification.SentDate }); }
/// <summary> /// Maps a VisitorNotification to VisitorNotificationModel. /// </summary> /// <param name="visitorNotification">The visitor notification model.</param> /// <returns>A visitor notification model</returns> public static VisitorNotificationModel ToVisitorNotificationModel(this VisitorNotification visitorNotification) { return(new VisitorNotificationModel() { Id = visitorNotification.Id, CreatedBy = visitorNotification.CreatedBy, CreatedOn = visitorNotification.CreatedOn, UpdatedBy = visitorNotification.UpdatedBy, UpdatedOn = visitorNotification.UpdatedOn, Visitor = visitorNotification.Visitor?.ToVisitorModel(), PositiveCase = visitorNotification.PositiveCase?.ToPositiveCaseModel(), SentDate = visitorNotification.SentDate }); }
public HttpResponseMessage Post([FromBody] VisitorEntry value) { String resp = "{\"Response\":\"Undefine\"}"; var ctx = new NestinDBEntities(); using (var dbContextTransaction = ctx.Database.BeginTransaction()) { try { Random r = new Random(); var code = 0; do { code = r.Next(1000, 9999); } while (IsCodeInUse(code.ToString())); String mobile = value.VisitorMobile; if (mobile.Length > 10) { mobile = mobile.Substring(mobile.Length - 10, mobile.Length); } if (value.VisitorId == 0) { VisitorDetail guest = new VisitorDetail(); guest.VisitorMobileNo = mobile; guest.VisitorName = value.VisitorName; guest.VisitorAddress = value.VisitorAddress; guest.SocietyId = value.SocietyId; guest.VisitorImage = value.VisitorImage; var c = ctx.VisitorDetails; c.Add(guest); ctx.SaveChanges(); value.VisitorId = guest.id; } if (value.VisitorId > 0) { ctx.VisitorRequests.Add(new VisitorRequest { VisitorId = value.VisitorId, VisitPurpose = value.VisitPurpose, StartTime = DateTime.ParseExact(value.StartTime, "yyyy-MM-ddTHH:mm:ss.SSSZ", System.Globalization.CultureInfo.InvariantCulture), EndTime = DateTime.ParseExact(value.EndTime, "yyyy-MM-ddTHH:mm:ss.SSSZ", System.Globalization.CultureInfo.InvariantCulture), SecurityCode = code.ToString(), SocietyId = value.SocietyId, ResId = value.ResID, Flat = value.FlatNumber }); } ctx.SaveChanges(); dbContextTransaction.Commit(); var strMessage = "Code for Entry in Flat : " + value.FlatNumber + " is " + code.ToString(); VisitorNotification visitorNotification = new VisitorNotification(ctx, value.HostMobile); var result = visitorNotification.NotifyVisitor(strMessage, value.VisitorMobile); resp = "{\"Response\":\"Ok\"}"; } //Exception ex catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { Log.log("api/Profile Failed to Add User : Property-" + validationError.PropertyName + " Error- " + validationError.ErrorMessage + " At " + DateTime.Now.ToString()); } } dbContextTransaction.Rollback(); resp = "{\"Response\":\"Fail\"}"; } catch (Exception ex) { Log.log("api/Profile Failed to Add User Error- " + ex.Message + " At " + DateTime.Now.ToString()); dbContextTransaction.Rollback(); resp = "{\"Response\":\"Fail\"}"; } } var response = Request.CreateResponse(HttpStatusCode.OK); response.Content = new StringContent(resp, System.Text.Encoding.UTF8, "application/json"); return(response); }