RC MobileFriendlyRewards 300915 0915 2

download RC MobileFriendlyRewards 300915 0915 2

of 12

Transcript of RC MobileFriendlyRewards 300915 0915 2

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    1/12

    Mobile Friendly Rewards

    Target release Mobile

    Epic

    Document status Published

    Document owner Lenny Whitehead

    Designer Aaron

    Developers Lenny, Nino, Aaron

    QA Not sure

    Goals

    Reproduce the existing functionality of RewardsCorp public website but mobile friendly

    Background and strategic fit

    Moves toward a PHP front end and .NET API / MySQL back end

    Assumptions

    JSON will be passed back and forth rather than paramater URLs

    Requirements

    # Title User Story Importance ASP.Net Page New MVP Route NewPHPpage

    Done? Tested?

    1 Existing Member Log In Registereduser logs inand isauthenticated

    Must Have Members/Login api/authentication/authenticate

    2 Forgotten Password User clicksforgottonpassword linkand gets sentan email

    Must Have Members/RetrieveMemberPassword Email from PHP

    3 New Member Signup New membersigns up byenteringdetails andcheque

    Must Have Members/AddMember api/membership/addMember

    4 My Account -> Member Details Memberviews theirstored details

    Must Have Members/MyDetails api/membership/myDetails

    5 My Account -> Edit Details Memberupdates theirstored details

    Must Have Members/EditMember api/membership/editMember

    6 My Account -> Reset Password Memberchanges theirpassword

    Must Have Members/ChangeMemberPassword api/membership/changePassword

    7 Rewards -> Account Balance Memberviews theiraccountbalance

    Must Have Members/ManageRewards api/rewards/accountBalance

    https://ignitetravel.atlassian.net/wiki/display/~lenny.whiteheadhttps://ignitetravel.atlassian.net/wiki/display/~lenny.whitehead

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    2/12

    8 Rewards -> Account History Memberviews theiraccounthistory

    Must Have Members/AccountHistory api/rewards/accountHistory

    9 Rewards -> Register Awards Memberregisters newchequerewards viaserial number

    Must Have Members/AssignRewards api/rewards/registerCheque

    10 Rewards -> Transfer Rewards Membertransfers

    reqyrds toanothermember

    Must Have Member/TransferRewards api/rewards/transferRewards

    11 Accommodat ion/SearchRegion Usersearches foravailability byregion

    Must Have Accommodation/Search api/search/regions

    12 Accommodation/SearchLocation Usersearches foravailability bylocation

    Must Have Accommodation/Search api/search/locations

    13 Accommodat ion/SearchResort Usersearches foravailability byresort

    Must Have Accommodation/Search api/search/resorts

    14 Accommoodation/SearchCountries Usersearches for

    availability bycountry

    Must Have Accommodation/Search api/search/countries

    15 Bookings/CreateBooking User to clicksbook tocreate abooking

    Must Have Bookings/CreateBooking api/booking/create

    16 Bookings/CancelBooking User elects tocancel abooking

    Must Have Bookings/CreateBooking api/booking/cancel

    17 Bookings/MakePayment User pays fora booking

    Must Have Bookings/BookingPayment.aspx api/booking/payment

    18 Voucher/PurchaseVoucher Memberpurchasesmovie or flightvouchers

    Must Have BuyVoucher api/productvoucher/orderVoucher

    19 Voucher/RetrieveVoucherUsage Member

    requests toview voucherusage

    Must Have BuyVoucher api/productvoucher/voucherUsage

    User interaction and design

    Not provided so assume free reign other than the slider

    JSON

    Below is a list of requests and responses for API calls:

    Route Request Response

    api/authentication/authenticate {

      "UserName": "Lenny",

      "PassWord": "Password",

      "PromotionAlias": "Rewards"

    }

     

    {

      "IsAuthenticated": true

    }

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    3/12

    api/membership/addMember {  "MemberId": 0,  "Title": "Mr",  "FirstName": "Lenny",  "Surname": "Whitehead",  "DateOfBirth":"2015-09-29T11:24:44.7322072+10:00",  "Address": "95 Marine Parade",  "Suburb": "Southport",  "State": "Queensland",

      "PostCode": "4215",  "Country": "Australia",  "PhoneNumber": "0435499700",  "AlternativeNumber": "",  "EmailAddress": "lenny.whitehead3@ignitetra

    ",vel.com  "UserName": "lenny_promo_29",  "Password": "password",  "CurrencyId": 1,  "SerialNumber": null,  "IsActive": true,  "IsReceiveEmail": true,  "PromotionId": 28,  "FavDest": null,  "DateCreated": null,  "CreationMethod": null

    }

    {

    "true"

    }

    Members/MyDetails {

      "MemberId": 12345,

      "PromotionAlias": "Rewards"

    }

    {  "MemberId": 123,  "Title": "Mr",  "FirstName": "Lenny",  "Surname": "Whitehead",  "DateOfBirth":"2015-09-29T11:24:44.7322072+10:00",  "Address": "95 Marine Parade",  "Suburb": "Southport",  "State": "Queensland",  "PostCode": "4215",  "Country": "Australia",  "PhoneNumber": "0435499700",  "AlternativeNumber": "",

      "EmailAddress": "[email protected]",om

      "UserName": "lenny_promo_29",  "CurrencyId": 1,  "SerialNumber": null,  "IsActive": true,  "IsReceiveEmail": true,  "PromotionId": 28,  "FavDest": null,  "DateCreated": null,  "CreationMethod": null}

    http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    4/12

    Members/EditMember {  "MemberId": 123,  "Title": "Mr",  "FirstName": "Lenny",  "Surname": "Whitehead",  "DateOfBirth":"2015-09-29T11:24:44.7322072+10:00",  "Address": "95 Marine Parade",  "Suburb": "Southport",  "State": "Queensland",

      "PostCode": "4215",  "Country": "Australia",  "PhoneNumber": "0435499700",  "AlternativeNumber": "",  "EmailAddress": "lenny.whitehead3@ignitetra

    ",vel.com  "UserName": "lenny_promo_29",  "CurrencyId": 1,  "SerialNumber": null,  "IsActive": true,  "IsReceiveEmail": true,  "PromotionId": 28,  "FavDest": null,  "DateCreated": null,  "CreationMethod": null}

    {  "MemberId": 123,  "Title": "Mr",  "FirstName": "Lenny",  "Surname": "Whitehead",  "DateOfBirth":"2015-09-29T11:24:44.7322072+10:00",  "Address": "95 Marine Parade",  "Suburb": "Southport",  "State": "Queensland",

      "PostCode": "4215",  "Country": "Australia",  "PhoneNumber": "0435499700",  "AlternativeNumber": "",  "EmailAddress": "[email protected]

    ",om  "UserName": "lenny_promo_29",  "CurrencyId": 1,  "SerialNumber": null,  "IsActive": true,  "IsReceiveEmail": true,  "PromotionId": 28,  "FavDest": null,  "DateCreated": null,  "CreationMethod": null}

    Members/ChangeMemberPassword {

      "MemberId": 12345,

      "NewPassword": "MyPas&&32"

    }

    {

    "true"

    }

    api/rewards/accountBalance {

      "MemberId": 12345,

      "PromotionAlias": "Rewards"

    }

    {

      "CurrencyDescription": "Australian Dollars",

      "DisplayRewards": true,

      "RewardType": 1,

      "ChequePromotions": {

      "Rewards.Core.EntityClasses.PromotionEntity":[

      {

      "_fieldsData": [

      [

      100,

      100

      ],

      [

      "2015-08-18T08:54:00",

      "2015-08-18T08:54:00"

      ],

      [

      2101,

      2101

      ],

      [

    http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/http://ignitetravel.com/

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    5/12

      100,

      100

      ],

      [

      "2017-08-19T14:14:00",

      "2017-08-19T14:14:00"

      ],

      [

      "2018-02-19T14:14:00",

      "2018-02-19T14:14:00"

      ],

      [

      "9058460018 ",

      "9058460018 "

      ],

      [

      34361,

      34361

      ]

      ],

      "_fieldsFlags": [

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false

      ],

      "_fieldsState": 1,

      "_fieldsIsDirty": false,

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    6/12

      "_name": "ChequeSummaryEntity",

      "_isNew": false,

      "_validator": null,

      "_objectID":"2e6929ee-dbea-465e-a6a7-03e0d40c85c5",

      "_relatedEntitySyncInfos": null,

      "_field2RelatedEntity": null,

      "_concurrencyPredicateFactoryToUse":null,

      "_dataErrorInfoError": "",

      "_dataErrorInfoErrorsPerField": null,

      "_typeDefaultValueProvider": null,

      "_authorizerToUse": null,

      "_auditorToUse": null

      }

      ]

      },

      "Total": 1451

    }

    api/rewards/accountHistory {

      "MemberId": 12345,

      "PromotionAlias": "Rewards"

    }

    {

      "MemberCurrency": "Australian Dollars",

      "DisplayRewards": true,

      "RewardType": 1,

      "ChequePromotions": null,

      "ChequeTransactionSummary": {

      "Rewards.Core.EntityClasses.PromotionEntity":[

      {

      "Summary": {

      "_fieldsData": [

      [

      500,

      500

      ],

      [

      "2015-08-19T14:04:00",

      "2015-08-19T14:04:00"

      ],

      [

      1,

      1

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    7/12

      ],

      [

      500,

      500

      ],

      [

      "2017-08-19T14:14:00",

      "2017-08-19T14:14:00"

      ],

      [

      "2018-02-19T14:14:00",

      "2018-02-19T14:14:00"

      ],

      [

      "1144214783 ",

      "1144214783 "

      ],

      [

      34361,

      34361

      ]

      ],

      "_fieldsFlags": [

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false,

      false

      ],

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    8/12

      "_fieldsState": 1,

      "_fieldsIsDirty": false,

      "_name": "ChequeSummaryEntity",

      "_isNew": false,

      "_validator": null,

      "_objectID":

    "9cf6421c-07fc-4690-bc8a-9fef7669d45f",

      "_relatedEntitySyncInfos": null,

      "_field2RelatedEntity": null,

      "_concurrencyPredicateFactoryToUse":null,

      "_dataErrorInfoError": "",

      "_dataErrorInfoErrorsPerField": null,

      "_typeDefaultValueProvider": null,

      "_authorizerToUse": null,

      "_auditorToUse": null

      },

      "Transactions": [

      {

      "Actioned": "2015-08-19T14:04:00",

      "BookingId": 0,

      "MemberName": "",

      "Assignment": false,

      "LocationExtrasOnly": false,

      "Value": 500

      }

      ]

      }

      ]

      },

      "TotalRewards": 4451,

      "RewardsExpired": 0,

      "RewardsRedeemed": 3000,

      "RewardsAvailable": 1451

    }

    api/rewards/registerCheque {

      "MemberId": 12345,

      "SerialNumber": "8787898789878"

    }

    {

    "true"

    }

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    9/12

    api/rewards/transferRewards {

      "TransferringMemberId": 12345,

      "TargetMemberId": 23322,

      "SerialNumber": "8787898789878",

      "TargetMemberSurname": "Whitehead",

      "TransferValue": 500

    }

    {

      "A message indicating the results"

    }

    api/productvoucher/orderVoucher {

      "ProductId": 123,

      "MemberId": 48872,

      "Quantity": 100,

      "CreditCardDTO": [

      {

      "CardType": "AMEX",

      "CardExpiryMonth": 4,

      "CardExpiryYear": 16,

      "CardName": "LeonardWhitehead",

      "CardNumber": "4585944447376642",

      "CardNumberSanitized":"4585XXXXXXX6642",

      "CardCCV": 123

      }

      ]

    }

     {

      "A message indicating the results"

    }

    api/productvoucher/voucherUsage {

      "MemberId": 12345,

      "ProductId": 23322,

      "Quanity": 10

    }

    {

      "SerialNumber": "162726211",

      "AmountAvailable": 100,

      "AmountToBeUsed": 20,

      "AmountRemaining": 80,

      "TotalRewardsAvailable": 100,

      "CurrencyDescription": "Australian Dollar",

      "CashPartPayment": false,

      "CashAmount": 0

      }

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    10/12

    api/booking/payment {

      "bookingid": 1,

      "advertid": 1,

      "netrateoverride": 100,

      "advertcode": "test",

      "bookingresortextras": [

      {

      "description": "testing1",

      "resortextraid": 1,

      "totalcost": 100,

      "quantity": 1

      },

      {

      "description": "testing1",

      "resortextraid": 1,

      "totalcost": 100,

      "quantity": 1

      }

      ],

      "bookinglocationextrarewards": [

      {

      "description": "testing",

      "locationextraid": 111,

      "longdescription": "testiiiiiiiiiing",

      "maxrewards": 10,

      "publishedrate": 10,

      "quantity": 2,

      "rewardstouse": 1002,

      "termscondition": "termsandcondition",

      "usefrom": "015-09-30",

      "useto": "2015-09-30",

      "youpay": 123

      }

      ]

    }

    {

      "message": "message",

      "issuccess": "false",

      "paymentid": "null"

    }

    api/booking/cancel bookingid (integer) boolean

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    11/12

    api/booking/create {  "isupdate": true,  "resortid": 1,  "locationid": 1002,  "roomtype": "room type",  "rewardstypeid": "null",  "memberid": "null",  "selectedpromotion": 0,  "selectedrateid": 0,  "checkin": "2015-12-25",

      "bookingid": "null",  "numberofnights": 2,  "adults": 2,  "children": 2,  "infants": 5,  "user": "null",  "title": "Mr.",  "givennames": "Willie",  "surname": "Wonka",  "dob": "2000-01-01",  "address": "ChocolateFactory",  "suburb": "Urbandub",  "state": "UnitedState",  "postcode": "1772",  "country": "Dressrosa",  "contactphone": "09123123123",

      "alternatephone": "32132132190",  "email": "email@ ",email.com  "notes": "thisisanote",  "specialrequest": "request",  "currency": 2,  "promotion": 1,  "advertcode": "ABC",  "advertid": 1}

    {

      "message": "message",

      "issuccess": "false",

      "seasonid": "null",

      "bookingid": 1

    }

    http://email.com/http://email.com/

  • 8/17/2019 RC MobileFriendlyRewards 300915 0915 2

    12/12

    api/accommodation/availability {

      "searchfrom": "2015-01-01",

      "resortid": 1,

      "ignoreconsultantrate": "false",

      "promotionid": 1,

      "currencyid": 1,

      "availability": [

      {

      "day": 1,

      "month": 2,

      "year": 2016,

      "resortid": 1,

      "nights": 2,

      "promotionid": 1,

      "publishedratetitle": "sample",

      "rewardtitle": "reward title",

      "yousavetitle": "yousave title",

      "resortname": "name of resort",

      "locationname": "name of location",

      "currencydescription": "currencydescription",

      "resortimage": "blah_blah.png",

      "resortcollectionimages":"",

      "rating": "rating",

      "phone": "phone",

      "unavailable": "true"

      }

      ]

    }

    {

      "searchfrom": "2015-01-01",

      "resortid": 1,

      "ignoreconsultantrate": "false",

      "promotionid": 1,

      "currencyid": 1,

      "availability": [

      {

      "day": 1,

      "month": 2,

      "year": 2016,

      "resortid": 1,

      "nights": 2,

      "promotionid": 1,

      "publishedratetitle": "sample",

      "rewardtitle": "reward title",

      "yousavetitle": "yousave title",

      "resortname": "name of resort",

      "locationname": "name of location",

      "currencydescription": "currency description",

      "resortimage": "blah_blah.png",

      "resortcollectionimages":"",

      "rating": "rating",

      "phone": "phone",

      "unavailable": "true",

      "rateavailabilities": null

      }

      ]

    }

    Not Doing

    The slider control for availabilty will not be reproduced in the mobile friendly verision