/// <summary> /// Allows the REST API to create or update a gift card /// </summary> /// <param name="parameters">Parameters passed in the URL of the REST API call. No parameters are expected at this time.</param> /// <param name="querystring">Name/value pairs from the REST API call querystring. This is not used in this method.</param> /// <param name="postdata">Serialized (JSON) version of the GiftCardDTO object</param> /// <returns>GiftCardDTO - Serialized (JSON) version of the gift card</returns> public override string PostAction(string parameters, NameValueCollection querystring, string postdata) { var errors = new List <ApiError>(); GiftCardDTO postedCard = null; try { postedCard = Json.ObjectFromJson <GiftCardDTO>(postdata); } catch (Exception ex) { return(JsonApiResponseException(ex)); } var giftCard = new GiftCard(); giftCard.FromDto(postedCard); var existing = HccApp.CatalogServices.GiftCards.Find(giftCard.GiftCardId); if (existing == null) { HccApp.CatalogServices.GiftCards.Create(giftCard); } else { HccApp.CatalogServices.GiftCards.Update(giftCard); } return(JsonApiResponse(giftCard.ToDto())); }
/// <summary> /// Allows you to populate the current gift card object using a GiftCardDTO instance /// </summary> /// <param name="dto">An instance of the gift card from the REST API</param> public void FromDto(GiftCardDTO dto) { GiftCardId = dto.GiftCardId; StoreId = dto.StoreId; LineItemId = dto.LineItemId; CardNumber = dto.CardNumber; Amount = dto.Amount; UsedAmount = dto.UsedAmount; IssueDateUtc = dto.IssueDateUtc; ExpirationDateUtc = dto.ExpirationDateUtc; RecipientEmail = dto.RecipientEmail; RecipientName = dto.RecipientName; GiftMessage = dto.GiftMessage; Enabled = dto.Enabled; }
public void IntegraGiftCard() { try { Console.WriteLine("Início do exemplo de integração de GiftCard"); GiftCardDTO objGiftCard = new GiftCardDTO(); objGiftCard.MultipleCredits = true; //Permite múltiplos créditos objGiftCard.MultipleRedemptions = true; //Permite múltiplos resgates objGiftCard.StatusId = 1; //Ativo objGiftCard.RestrictedToOwner = true; //Restringe a um CPF objGiftCard.OwnerId = "111.111.111-11"; //CPF do usuário objGiftCard.ExpiringDate = DateTime.Now.AddYears(1); objGiftCard.EmissionDate = DateTime.Now; //objGiftCard.RedemptionCode ---->> preencher e testar caso seja necessário criar o próprio RedemptionCode objGiftCard = this.vtexService.GiftCardInsertUpdate(objGiftCard); //Insere o GiftCard e retorna os campos Id e RedeptionCode preenchidos //Valores retornados preenchidos //objGiftCard.Id //objGiftCard.RedemptionCode GiftCardTransactionItemDTO objGiftCardTransactionItem = new GiftCardTransactionItemDTO(); objGiftCardTransactionItem.RedemptionCode = objGiftCard.RedeptionCode; //Vinculação da transação com o GiftCard objGiftCardTransactionItem.TransactionAction = TransactionAction.Credit; objGiftCardTransactionItem.TransactionConfirmed = true; objGiftCardTransactionItem.Value = 100; this.vtexService.GiftCardTransactionItemInsert(objGiftCardTransactionItem); //Insere o crédito de 100 reais no GiftCard } catch (Exception ex) { Console.WriteLine(ex.ToString()); } finally { Console.WriteLine("Fim do exemplo de integração de GiftCard"); Console.ReadKey(); } }
public void IntegraGiftCard() { try { Console.WriteLine("Início do exemplo de integração de GiftCard"); GiftCardDTO objGiftCard = new GiftCardDTO(); objGiftCard.MultipleCredits = true; //Permite múltiplos créditos objGiftCard.MultipleRedemptions = true; //Permite múltiplos resgates objGiftCard.StatusId = 1; //Ativo objGiftCard.RestrictedToOwner = true; //Restringe a um CPF objGiftCard.OwnerId = "111.111.111-11"; //CPF do usuário objGiftCard.ExpiringDate = DateTime.Now.AddYears(1); objGiftCard.EmissionDate = DateTime.Now; //objGiftCard.RedemptionCode ---->> preencher e testar caso seja necessário criar o próprio RedemptionCode objGiftCard = this.vtexService.GiftCardInsertUpdate(objGiftCard); //Insere o GiftCard e retorna os campos Id e RedeptionCode preenchidos //Valores retornados preenchidos //objGiftCard.Id //objGiftCard.RedemptionCode GiftCardTransactionItemDTO objGiftCardTransactionItem = new GiftCardTransactionItemDTO(); objGiftCardTransactionItem.RedemptionCode = objGiftCard.RedeptionCode; //Vinculação da transação com o GiftCard objGiftCardTransactionItem.TransactionAction = TransactionAction.Credit; objGiftCardTransactionItem.TransactionConfirmed = true; objGiftCardTransactionItem.Value = 100; this.vtexService.GiftCardTransactionItemInsert(objGiftCardTransactionItem); //Insere o crédito de 100 reais no GiftCard } catch(Exception ex) { Console.WriteLine(ex.ToString()); } finally { Console.WriteLine("Fim do exemplo de integração de GiftCard"); Console.ReadKey(); } }
public void GiftCard_CreateUpdateDelete() { //Create API Proxy. var proxy = CreateApiProxy(); var card = new GiftCardDTO { CardNumber = "GIFT0000-1111-22222", IssueDateUtc = DateTime.UtcNow, ExpirationDateUtc = DateTime.UtcNow.AddMonths(1), Amount = 100 }; //Create var create1Response = proxy.GiftCardCreate(card); CheckErrors(create1Response); //Update card = create1Response.Content; card.UsedAmount = 50; var updateResponse = proxy.GiftCardUpdate(card); CheckErrors(updateResponse); Assert.AreEqual(create1Response.Content.UsedAmount, updateResponse.Content.UsedAmount); //Find var findResponse = proxy.GiftCardFind(create1Response.Content.GiftCardId); CheckErrors(findResponse); Assert.AreEqual(updateResponse.Content.UsedAmount, findResponse.Content.UsedAmount); //Delete var delete1Response = proxy.GiftCardDelete(create1Response.Content.GiftCardId); CheckErrors(delete1Response); Assert.IsTrue(delete1Response.Content); }