«

GET /api/M26/clans/{clanCode}/vouchers - Danh sách voucher của phường

  • Tags: @AUTOMATED, @TNK-12741

    Trả về lỗi 401 khi gửi request xem danh sách voucher của phường mà không gửi kèm token của chủ phường

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Request có header là
      X-Tenantm26
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers"
    • Then Trả về status code 401
  • Tags: @AUTOMATED, @TNK-12741

    Trả về lỗi 401 khi gửi request xem danh sách voucher của phường với token đã hết hạn

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Request có header là
      X-Tenantm26
    • And Token đã hết hạn
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers"
    • Then Trả về status code 401
  • Tags: @AUTOMATED, @TNK-12741

    Trả về 200 và response rỗng khi gửi request xem danh sách voucher của phường với token không phải là chủ phường

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescriptionmember
      clan_01AutoTestCall APImember1
    • And Khách hàng "member3" chưa là thành viên của phường nào
    • And Tồn tại voucher có thông tin
      codeclancustomerLimitnumberOfVoucherdiscountTypeformulaitemsorderDiscounttitledescriptionvalidFromvalidTo
      voucher01clan_0111PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 10Dành tặng chị em nhân ngày 20.102024-09-25T03:02:41.586Z2024-10-25T03:02:41.586Z
    • And Request có header là
      X-Tenantm26
    • And Có token của tài khoản "<user>"
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers"
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      []

    Examples:

    user
    member1
    member3
  • Tags: @AUTOMATED, @TNK-12741

    Trả về lỗi 400 khi gửi request xem danh sách voucher của phường mà không gửi kèm header

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers"
    • Then Trả về status code 400
    • And Response có body thỏa mãn giá trị như sau
      {
        "title": "Bad Request",
        "detail": "Required header 'X-Tenant' is not present."
      }
  • Tags: @AUTOMATED, @TNK-12741

    Trả về 200 và response rỗng khi gửi request xem danh sách voucher của phường với header không hợp lệ

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Request có header là
      X-Tenant<header>
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers"
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      []

    Examples:

    header
    linhtinh
  • Tags: @AUTOMATED, @TNK-12741

    Trả về 200 và response rỗng khi gửi request xem danh sách voucher của phường với mã phường không tồn tại

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Request có header là
      X-Tenantm26
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/not_exist/vouchers"
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      []
  • Tags: @AUTOMATED, @TNK-12741

    Trả về 200 và response rỗng khi gửi request xem danh sách voucher của phường với mã phường không phải của chủ phường

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Tài khoản "ownerclan21" đã tạo phường với thông tin
      codenamedescription
      clan_02AutoTestCall API
    • And Request có header là
      X-Tenantm26
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/${clan_02}/vouchers"
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      []
  • Tags: @AUTOMATED, @TNK-12741

    Trả về 200 và response chỉ gồm danh sách voucher của phường khi gửi request với thông tin hợp lệ

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Tài khoản "ownerclan21" đã tạo phường với thông tin
      codenamedescription
      clan_02AutoTestCall API
    • And Thời gian áp dụng voucher là "A-3, A-1, A+2"
    • And Thời gian hết hạn voucher là "A-1, A+2, A+5"
    • And Tồn tại voucher có thông tin
      codeclancustomerLimitnumberOfVoucherdiscountTypeformulaitemsorderDiscounttitledescriptionvalidFromvalidTo
      voucher01clan_0111PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 10Dành tặng chị em nhân ngày 20.10A-3A-1
      voucher02clan_0125PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 9A-1A+2
      voucher03clan_0125PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 11A+2A+5
      voucher04clan_0211PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 9A-1A+2
    • And Request có header là
      X-Tenantm26
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers"
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      [
      {
          "code": "${voucher01}",
          "title": "Siêu sale tháng 10",
          "description": "Dành tặng chị em nhân ngày 20.10",
          "validFrom": "${A-3}",
          "validTo": "${A-1}",
          "customerLimit": 1,
          "remaining": 1,
          "numberOfVoucher": 1
      },
      {
          "code": "${voucher02}",
          "title": "Siêu sale tháng 9",
          "description": null,
          "validFrom": "${A-1}",
          "validTo": "${A+2}",
          "customerLimit": 2,
          "remaining": 5,
          "numberOfVoucher": 5
      },
      {
          "code": "${voucher03}",
          "title": "Siêu sale tháng 11",
          "description": null,
          "validFrom": "${A+2}",
          "validTo": "${A+5}",
          "customerLimit": 2,
          "remaining": 5,
          "numberOfVoucher": 5
      }
      ]
    • And Response có body là một mảng không chứa phần tử có thông tin
      fieldconditionvalue
      codebằngvoucher04
  • Tags: @AUTOMATED, @TNK-12741

    Trả về response rỗng khi phường chưa có voucher nào

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Phường "clan_01" chưa có voucher nào
    • And Request có header là
      X-Tenantm26
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers"
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      []
  • Tags: @AUTOMATED, @TNK-12741

    Danh sách voucher của phường có phân trang

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Tồn tại voucher có thông tin
      codeclancustomerLimitnumberOfVoucherdiscountTypeformulaitemsorderDiscounttitledescriptionvalidFromvalidTo
      voucher01clan_0111PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 10Dành tặng chị em nhân ngày 20.102024-09-25T03:02:41.586Z2024-10-25T03:02:41.586Z
      voucher02clan_0115PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 92024-09-01T03:02:41.586Z2024-09-30T03:02:41.586Z
    • And Request có header là
      X-Tenantm26
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers" với params
      size1
    • Then Trả về status code 200
    • And Response có tồn tại header "x-page-size" với giá trị là "1"
    • And Response có tồn tại header "x-page-count" với giá trị lớn hơn "1"
  • Tags: @AUTOMATED, @TNK-12741

    Danh sách voucher của phường có thể sắp xếp theo thời gian (validFrom hoặc validTo)

    • Given Tài khoản "ownerclan20" đã tạo phường với thông tin
      codenamedescription
      clan_01AutoTestCall API
    • And Tồn tại voucher có thông tin
      codeclancustomerLimitnumberOfVoucherdiscountTypeformulaitemsorderDiscounttitledescriptionvalidFromvalidTo
      voucher01clan_0111PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 10Dành tặng chị em nhân ngày 20.102024-09-25T03:02:41.586Z2024-10-25T03:02:41.586Z
      voucher02clan_0115PERCENT10[{"fee": "shipping_fee"}]{"maxValue": 5000,"discountLimit": 1000,"orderDiscountType": "totalValue"}Siêu sale tháng 92024-09-01T03:02:41.586Z2024-09-30T03:02:41.586Z
    • And Request có header là
      X-Tenantm26
    • And Có token của tài khoản "ownerclan20"
    • When Gửi request "GET" đến "/M26/clans/${clan_01}/vouchers" với params
      sort<time>:<value>
    • Then Tôi nhận được response có HTTP Status 200
    • And Response có body là một mảng có các phần tử được sắp xếp theo
      field<time>
      direction<value>

    Examples:

    time value
    validFrom asc
    validFrom desc
    validTo asc
    validTo desc