private int AddDispensary(DispensaryModel dispensary, Dispensary entity) { foreach (string zip in dispensary.ApprovalZipCodes.Split(',')) { string trimmedZip = zip.Trim(); if (!String.IsNullOrEmpty(trimmedZip)) { entity.ApprovalZipCodes.Add(HGContext.ZipCodes.Add(new ZipCode() { Code = trimmedZip })); } } foreach (string zip in dispensary.DeliveryZipCodes.Split(',')) { string trimmedZip = zip.Trim(); if (!String.IsNullOrEmpty(trimmedZip)) { entity.DeliveryZipCodes.Add(HGContext.ZipCodes.Add(new ZipCode() { Code = trimmedZip })); } } HGContext.Dispensaries.Add(entity); var id = HGContext.SaveChanges(); return(id); }
// POST: api/Dispensaries public HttpResponseMessage Post([FromBody] DispensaryModel dispensary) { try { var entity = Mapper.Map <Dispensary>(dispensary); var id = AddDispensary(dispensary, entity); return(Request.CreateResponse(HGContext.Dispensaries.FirstOrDefault(x => x.Id == id))); } catch (Exception e) { _logger.Error("Dispensaries.Post", e); return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, e)); } }
public HttpResponseMessage InsertDispensaryFromPending([FromBody] DispensaryModel dispensary) { try { var entity = Mapper.Map <Dispensary>(dispensary); entity.Slug = entity.LeaflySlug; var user = UserManager.FindByEmail(User.Identity.Name); entity.UserId = user.Id; var id = AddDispensary(dispensary, entity); return(Request.CreateResponse(HGContext.Dispensaries.FirstOrDefault(x => x.Id == id))); } catch (Exception e) { _logger.Error("Dispensaries.Post", e); return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, e)); } }
public ViewResult Details([FromUri][Required] int id) { //DispensaryModel model; using (var context = new HGContext()) { DispensaryModel disp = context.Dispensaries .AsNoTracking().Where(d => !d.IsDeleted && d.Id == id).Select(d => new DispensaryModel() { Address = new AddressModel() { FormattedAddress = d.Address.FormattedAddress }, Description = d.Description, EmailAddress = d.EmailAddress, Name = d.Name, PhoneNumber = d.PhoneNumber, Type = d.Type }) .FirstOrDefault(); return(View(disp)); } }
public async Task <HttpResponseMessage> Update([FromBody] DispensaryModel dispensary) { try { var entity = await HGContext.Dispensaries.FirstOrDefaultAsync(x => x.Id == dispensary.Id); entity.Name = dispensary.Name; entity.Slug = dispensary.Name; entity.Type = dispensary.Type; entity.PhoneNumber = dispensary.PhoneNumber; entity.LeaflySlug = dispensary.LeaflySlug ?? dispensary.Name; entity.Description = dispensary.Description; entity.HoursOfOperation = Mapper.Map <string>(dispensary.HoursOfOperation); entity.HoursAndInfo = dispensary.HoursAndInfo; entity.EmailAddress = dispensary.EmailAddress; entity.HasDelivery = dispensary.HasDelivery; entity.HasPickup = dispensary.HasPickup; entity.HasStorefront = dispensary.HasStorefront; entity.IsCaregiver = dispensary.IsCaregiver; entity.IsPrivate = dispensary.IsPrivate; if (dispensary.Address != null && (!string.IsNullOrEmpty(dispensary.Address.Zip) || !string.IsNullOrEmpty(dispensary.Address.City) || !string.IsNullOrEmpty(dispensary.Address.State))) { if (entity.Address == null) { entity.Address = new Address(); } entity.Address.Address1 = dispensary.Address.Address1; entity.Address.Address2 = dispensary.Address.Address2; entity.Address.City = dispensary.Address.City; entity.Address.State = dispensary.Address.State; entity.Address.Zip = dispensary.Address.Zip; entity.Address.Name = dispensary.Name; entity.Address.Latitude = dispensary.Address.Latitude; entity.Address.Longitude = dispensary.Address.Longitude; entity.Address.FormattedAddress = dispensary.Address.FormattedAddress; } HGContext.ZipCodes.RemoveRange(entity.ApprovalZipCodes); if (dispensary.ApprovalZipCodes != null) { foreach (string zip in dispensary.ApprovalZipCodes.Split(',')) { string trimmedZip = zip.Trim(); if (!String.IsNullOrEmpty(trimmedZip)) { entity.ApprovalZipCodes.Add(HGContext.ZipCodes.Add(new ZipCode() { Code = trimmedZip })); } } } HGContext.ZipCodes.RemoveRange(entity.DeliveryZipCodes); if (dispensary.DeliveryZipCodes != null) { foreach (string zip in dispensary.DeliveryZipCodes.Split(',')) { string trimmedZip = zip.Trim(); if (!String.IsNullOrEmpty(trimmedZip)) { entity.DeliveryZipCodes.Add(HGContext.ZipCodes.Add(new ZipCode() { Code = trimmedZip })); } } } var id = await HGContext.SaveChangesAsync(); if (id > 0) { return(Request.CreateResponse(HttpStatusCode.OK)); } else { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Unable to save dispensary")); } } catch (Exception e) { _logger.Error("Dispensaries.Post", e); return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, e)); } }
private int AddDispensary(DispensaryModel dispensary, Dispensary entity) { if (dispensary.ApprovalZipCodes != null && dispensary.ApprovalZipCodes.Any()) { foreach (string zip in dispensary.ApprovalZipCodes.Split(',')) { string trimmedZip = zip.Trim(); if (!String.IsNullOrEmpty(trimmedZip)) entity.ApprovalZipCodes.Add(HGContext.ZipCodes.Add(new ZipCode() { Code = trimmedZip })); } } if (dispensary.DeliveryZipCodes != null && dispensary.DeliveryZipCodes.Any()) { foreach (string zip in dispensary.DeliveryZipCodes.Split(',')) { string trimmedZip = zip.Trim(); if (!String.IsNullOrEmpty(trimmedZip)) entity.DeliveryZipCodes.Add(HGContext.ZipCodes.Add(new ZipCode() { Code = trimmedZip })); } } HGContext.Dispensaries.Add(entity); var id = HGContext.SaveChanges(); return id; }