«

PATCH /M26/draft-orders/with-last-mile - Cập nhật đơn nháp

***Mô tả ngắn: 1. Bộ cấu hình chính sách được áp dụng cho nhóm khách hàng có quy định về dịch vụ nội địa và dịch vụ quốc tế như sau: - Dịch vụ nội địa là những dịch vụ được gắn thẻ domestic bằng true. Ví dụ như dịch vụ: domestic_shipping - Dịch vụ quốc tế là những dịch vụ được gắn thẻ domestic bằng false. Ví dụ như dịch vụ: inspection_advance, standard_shipping, standard_shipping_6m, special_bubble_wrapping, special_packaging 2. Đơn nháp có địa chỉ giao là Việt Nam thì có thể sử dụng dịch vụ nội địa hoặc dịch vụ quốc tế 3. Vẫn cập nhật đơn nháp thành công với body gửi lên có: - Dịch vụ chỉ nhân viên được phép chọn - Dịch vụ nội địa (domestic = true) với đơn có địa chỉ giao là Trung Quốc

*** Header: X-Tenant :{string}

*** Request Body: [ { "code"*: "string", "remark": "string", "services": [ "string" ], "depositOnDemand": 0, "depositRateCode": "string", // Mã tỷ lệ đặt cọc "addressId": "string", "couponCode": "string" } ]

    • Given Dịch vụ áp dụng biểu phí "Bieu_phi_ap_dung_ngay_09_03_2024"
    • And Tồn tại nhóm khách hàng có thông tin
      Mã nhómTỉ lệ cọcBộ cấu hình chính sách
      sabomall50Bieu_phi_ap_dung_ngay_09_03_2024
    • And Khách hàng "pamiuoi" đang thuộc nhóm khách hàng "sabomall"
    • And Tài khoản "pamiuoi" đã có danh sách địa chỉ nhận hàng
      addressIdcountryprovincecitydistrictwarddefault
      address_01Việt NamThành phố Hà NộiQuận Hà ĐôngPhường Yên Nghĩatrue
      address_02Việt NamThành phố Hà NộiQuận Thanh XuânPhường Khương Đình
      address_03中国大陆广东省广州市黄埔区云埔街道
    • And Khách hàng "pamiuoi" đang áp dụng bộ biểu phí có thông tin dịch vụ
      service_codeonlyStaffdomestic
      domestic_shippingfalsetrue
      inspection_advancefalsefalse
      standard_shippingtruefalse
      standard_shipping_6mtruefalse
      special_bubble_wrappingtruefalse
      special_packagingtruefalse
    • And Tồn tại coupon với thông tin
      codevalid_fromvalid_toapply_scopesdiscount_typeformulacustomer_limitlimitfee_itemconfigremaining
      coupon_01AA+10["ORDER"]PERCENT1025[{"fee": "domestic_shipping", "maxValue": "5000"}]{"single": true}5
    • And Hệ thống đang hỗ trợ tỷ lệ đặt cọc có thông tin
      depositOnDemanddepositRateCode
      45rate45
      70rate70
      100rate100
  • Tags: @AUTOMATED

    Có thể cập nhật coupon, ghi chú cho người bán trên đơn nháp khi gửi lên request với thông tin hợp lệ

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeremarkcouponCodeaddressIdservicesdepositOnDemand
      draft_01merchant_01product_01skuId_01skusId_01111<remark><couponCode>address_01domestic_shipping100
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            <content>
        }
      ]
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      {
        "orderViews": [
            {
                "code": "${draft_01}",
                <content>
            }
        ]
      }

    Examples:

    remark couponCode content
    Đây là ghi chú cho người bán "remark": null
    "couponCode":"${coupon_01}" "couponCode": null
    "remark":"Đây là ghi chú cho người bán"
    "couponCode":"${coupon_01}"
  • Tags: @AUTOMATED, @TNK-5902

    Trả về status code 200 khi gửi lên request update cùng lúc nhiều đơn nháp với các thông tin hợp lệ

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeminQuantityaddressIdservicesdepositOnDemand
      draft_01merchant_01product_01skuId_01skusId_011111address_01inspection_advance<depositRate>
      draft_02merchant_02product_02skuId_02skusId_021111address_01domestic_shipping<depositRate>
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            <content_01>
        },
        {
            "code": "${draft_02}",
            "services": ["inspection_advance"],
            <content_02>
        }
      ]
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      {
        "orderViews": [
            {
                "code": "${draft_01}",
                <content_01>
            },
            {
                "code": "${draft_02}",
                <content_02>
            }
        ]
      }

    Examples:

    depositRate content_01 content_02
    100 "depositOnDemand": 50 "depositOnDemand": 100
    100 "depositRateCode": "${rate45}", "depositOnDemand": 45 "depositRateCode": "${rate70}", "depositOnDemand": 70
    70 "depositRateCode": "${rate45}" "addressId":"${address_01}", "depositRateCode": "${rate45}"
    70 "depositRateCode": "${rate100}" "addressId":"${address_01}", "depositRateCode": "${rate45}"
    45 "addressId":"${address_02}" "addressId":"${address_01}", "services": ["inspection_advance"]
    100 "couponCode":"${coupon_01}" "addressId":"${address_01}", "depositOnDemand": 50, "remark":"Đây là ghi chú cho người bán"
    100 "remark":"Đây là ghi chú cho người bán" "addressId":"${address_01}", "couponCode":"${coupon_01}"
  • Tags: @AUTOMATED, @TNK-5902

    Trả về status code 400 khi gửi lên request update cùng lúc nhiều đơn nháp trong đó có thông tin của 1 đơn nháp không hợp lệ

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
      draft_02merchant_02product_02skuId_02skusId_02111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            <content>
        },
        {
            "code": "${draft_02}",
            "services": ["domestic_shipping"],
            <contentError>
        }
      ]
    • Then Trả về status code 400
    • And Response có body chứa nội dung
      keyvalue
      title<value>

    Examples:

    content contentError value
    "remark":"Đây là ghi chú cho người bán" "addressId":"${address_03}", "services": ["inspection_advance"] order_service_not_domestic
    "addressId":"${address_02}" "depositOnDemand": "text" Bad Request
    "couponCode":"${coupon_01}" "services": ["not_exist"] order_service_not_found
    "couponCode":"${coupon_01}" "addressId": "not_exist" addressId_not_found
    "remark":"Đây là ghi chú cho người bán" "couponCode": "not_exist" coupon_not_found
    "remark":"Đây là ghi chú cho người bán" "addressId": "" addressId_not_found
    "depositOnDemand": 50 "depositOnDemand": 0 deposit_on_demand_invalid
    "depositOnDemand": 100 "depositOnDemand": 75 deposit_on_demand_invalid
    "couponCode":"${coupon_01}" "addressId":"${address_03}", "depositOnDemand": 50 deposit_on_demand_invalid
  • Tags: @AUTOMATED, @TNK-5902

    Trả về lỗi 400 khi gửi lên request cập nhật tỷ lệ đặt cọc cho đơn nháp khác với body chỉ gửi depositOnDemand khác 100% và 50%

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            "depositOnDemand": <depositOnDemand>
        }
      ]
    • Then Trả về status code 400
    • And Response có body chứa nội dung
      keyvalue
      titledeposit_on_demand_invalid

    Examples:

    depositOnDemand
    0
    75
  • Tags: @AUTOMATED

    Trả về status 200 và không update tỷ lệ cọc nếu gửi depositOnDemand = null

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            "depositOnDemand": null
        }
      ]
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      {
        "orderViews": [
            {
                "code": "${draft_01}",
                "depositOnDemand": 100
            }
        ]
      }
  • Tags: @AUTOMATED, @TNK-5902

    Trả status 404 khi gửi request cập nhật tỷ lệ cọc của đơn nháp với depositRateCode không thuộc cấu hình tỷ giá hệ thống cho phép

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            "depositOnDemand": 45,
            "depositRateCode": "rate80"
        }
      ]
    • Then Trả về status code 404
    • And Response có body chứa nội dung
      keyvalue
      titledeposit_rate_invalid
  • Tags: @AUTOMATED, @TNK-5902

    Khi đơn nháp có địa chỉ giao hàng là Trung quốc, trả về lỗi 400 khi gửi request cập nhật tỷ lệ cọc với body gửi tỷ lệ đặt cọc khác 100%

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_03100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            "depositOnDemand": <depositOnDemand>,
            "depositRateCode": "<depositRateCode>"
        }
      ]
    • Then Trả về status code 400
    • And Response có body chứa nội dung
      keyvalue
      titledeposit_on_demand_invalid

    Examples:

    depositOnDemand depositRateCode
    45 ${rate45}
    70 ${rate70}
  • Tags: @AUTOMATED

    Cập nhật đơn nháp thành công với mọi dịch vụ mà KH được phép chọn trên hệ thống khi đơn nháp có địa chỉ giao hàng là địa chỉ Việt Nam

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            <content>
        }
      ]
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      {
        "orderViews": [
            {
                "code": "${draft_01}",
                <content>
            }
        ]
      }

    Examples:

    content
    "services": ["domestic_shipping"]
    "services": ["inspection_advance"]
    "services": ["domestic_shipping", "inspection_advance"]
  • Tags: @AUTOMATED

    Cập nhật đơn nháp thành công khi gửi lên request với dịch vụ nội địa và KH được phép chọn khi đơn nháp có địa chỉ giao hàng là địa chỉ Trung Quốc

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_03100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"]
        }
      ]
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
        {
          "orderViews": [
              {
                  "code": "${draft_01}",
                  "services": ["domestic_shipping"]
              }
          ]
        }
  • Tags: @AUTOMATED, @TNK-5902

    Cập nhật đơn nháp thất bại khi gửi lên request với token không hợp lệ

    • Given Có token hết hạn
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "depositRateCode": "${rate45}",
            "services": ["domestic_shipping"],
            "addressId": "${address_02}",
            "couponCode": "${coupon_01}",
            "remark": "Đây là ghi chú cho người bán"
        }
      ]
    • Then Trả về status code 401
  • Tags: @AUTOMATED, @TNK-5902

    Cập nhật đơn nháp thất bại khi gửi lên request không có token

    • Given Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "depositRateCode": "${rate45}",
            "services": ["domestic_shipping"],
            "addressId": "${address_02}",
            "couponCode":"${coupon_01}",
            "remark": "Đây là ghi chú cho người bán"
        }
      ]
    • Then Trả về status code 401
  • Tags: @AUTOMATED, @TNK-5902

    Cập nhật đơn nháp thất bại khi gửi lên request với thông tin tenant không hợp lệ

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenant<tenant>
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "depositRateCode": "${rate45}",
            "services": ["domestic_shipping"],
            "addressId": "${address_02}",
            "couponCode":"${coupon_01}",
            "remark": "Đây là ghi chú cho người bán"
        }
      ]
    • Then Trả về status code 400

    Examples:

    tenant
    tenantBatKy
  • Tags: @AUTOMATED, @TNK-5902

    Cập nhật đơn nháp thất bại khi gửi lên request không có thông tin x-tenant

    • Given Có token của tài khoản "pamiuoi"
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "depositRateCode": "${rate45}",
            "services": ["domestic_shipping"],
            "addressId": "${address_02}",
            "couponCode":"${coupon_01}",
            "remark": "Đây là ghi chú cho người bán"
        }
      ]
    • Then Trả về status code 400
  • Tags: @AUTOMATED, @TNK-5902

    Cập nhật đơn nháp thất bại khi gửi lên đơn nháp không tồn tại

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Khách hàng không tồn tại đơn nháp với id "draft_01"
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "depositRateCode": "${rate45}",
            "services": ["domestic_shipping"],
            "addressId": "${address_02}",
            "couponCode":"${coupon_01}",
            "remark": "Đây là ghi chú cho người bán"
        }
      ]
    • Then Trả về status code 400
    • And Response có body chứa nội dung
      keyvalue
      titledraft_order_size
  • Tags: @AUTOMATED

    Cập nhật đơn nháp thất bại ghi gửi lên request với body không hợp lệ

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            <content>
        }
      ]
    • Then Trả về status code 400
    • And Response có body chứa nội dung
      keyvalue
      title<error>

    Examples:

    content error
    "depositOnDemand": "text" Bad Request
    "services": ["not_exist"] order_service_not_found
    "addressId": "not_exist" addressId_not_found
    "couponCode": "not_exist" coupon_not_found
    "addressId": "" addressId_not_found
  • Tags: @AUTOMATED, @TNK-5902

    Trả status 200 và không cập nhật tỷ lệ cọc khi gửi lên depositRateCode null

    • Given Có token của tài khoản "pamiuoi"
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservices
      draft_01merchant_01product_01skuId_01skusId_01111address_01100domestic_shipping
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            "depositRateCode" : <depositRateCode>
        }
      ]
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
      {
        "orderViews": [
            {
                "code": "${draft_01}",
                "depositOnDemand": 100
            }
        ]
      }

    Examples:

    depositRateCode
    null

    Tags: @TNK-11440

    Examples:

    depositRateCode
    ""
  • Tags: @AUTOMATED, @TNK-4681

    Khi thay đổi địa chỉ nhận hàng của đơn nháp, phí vận chuyển nội địa (VCNĐ) Việt Nam tạm tính được cập nhật tương ứng

    • Given Có token của tài khoản "pamiuoi"
    • And Hệ thống tồn tại bộ cấu hình phí VCLM "Cấu hình phí VCLM" đang được áp dụng với thông tin
      Khu vựcCân nặng (kg)Đơn giá (CNY)Phí niêm yết (Ngoài khoảng niêm yết sẽ tính phí theo mốc)
      Quận Hoàn Kiếm, Thành phố Hà Nội, Việt NamTừ 0 - 33.75
      Quận Hoàn Kiếm, Thành phố Hà Nội, Việt NamTrên 3 - 54.65
      Quận Hoàn Kiếm, Thành phố Hà Nội, Việt NamTrên 5 - 106.35
      Quận Hoàn Kiếm, Thành phố Hà Nội, Việt NamTrên 10 - 1511.3
      Quận Hoàn Kiếm, Thành phố Hà Nội, Việt NamTrên 15 - 2013.9
      Quận Hoàn Kiếm, Thành phố Hà Nội, Việt NamTrên 20 - 2516.2
      Quận Hoàn Kiếm, Thành phố Hà Nội, Việt NamTrên 25 - 999999990.35
      Tỉnh Bắc Giang, Việt NamTừ 0 - 36.05
      Tỉnh Bắc Giang, Việt NamTrên 3 - 58.35
      Tỉnh Bắc Giang, Việt NamTrên 5 - 1012
      Tỉnh Bắc Giang, Việt NamTrên 10 - 1524.5
      Tỉnh Bắc Giang, Việt NamTrên 15 - 2032.5
      Tỉnh Bắc Giang, Việt NamTrên 20 - 2540.5
      Tỉnh Bắc Giang, Việt NamTrên 25 - 999999991.2
    • And Tài khoản "pamiuoi" đã có danh sách địa chỉ nhận hàng
      addressIdcountryprovincecitydistrictwarddefault
      VN_01Việt NamThành phố Hà NộiQuận Hoàn KiếmPhường Chương Dươngtrue
      VN_02Việt NamTỉnh Bắc GiangHuyện Lục NamXã Trường Giang
      VN_03Việt NamThành phố Hà NộiQuận Hà ĐôngPhường Văn Quán
    • And Request có header là
      X-Tenantm26
    • And Tài khoản "pamiuoi" đã có danh sách đơn nháp với sản phẩm thuộc marketplace "1688" có thông tin
      draftCodemerchantIdproductIdskuIdskusIdquantityorder_quantitybatchSizeaddressIddepositOnDemandservicesweight
      draft_01merchant_01product_01skuId_01skusId_01<quantity>1<quantity><addressId_before>100domestic_shipping<weight>
    • When Gửi request "GET" đến "/M26/draft-orders/with-last-mile?orderCodes=${draft_01}"
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
          {
            "orderViews": [
              {
                  "vietnamDomesticShippingFee": <vietnamDomesticShippingFee_before>
              }
            ]
          }
    • When Gửi request "PATCH" đến "/M26/draft-orders/with-last-mile" với body
      [
        {
            "code": "${draft_01}",
            "services": ["domestic_shipping"],
            "addressId": "<addressId_after>"
        }
      ]
    • Then Trả về status code 200
    • And Response có body thỏa mãn giá trị như sau
        {
          "orderViews": [
              {
                  "vietnamDomesticShippingFee": <vietnamDomesticShippingFee_after>
              }
          ]
        }

    Examples:

    quantity weight addressId_before vietnamDomesticShippingFee_before addressId_after vietnamDomesticShippingFee_after
    1 0 VN_01 null ${VN_02} null
    1 3 VN_01 3.75 ${VN_02} 6.05
    1 3.01 VN_01 4.65 ${VN_02} 8.35
    1 25.1 VN_01 16.55 ${VN_02} 41.7
    2 0 VN_01 null ${VN_02} null
    2 3 VN_01 6.35 ${VN_02} 12
    4 3.01 VN_01 11.3 ${VN_02} 24.5
    1 0 VN_01 null ${VN_03} null
    1 3 VN_01 3.75 ${VN_03} null
    1 3.01 VN_01 4.65 ${VN_03} null
    1 25.1 VN_01 16.55 ${VN_03} null
    2 0 VN_01 null ${VN_03} null
    2 3 VN_01 6.35 ${VN_03} null
    4 3.01 VN_01 11.3 ${VN_03} null
    1 0 VN_03 null ${VN_02} null
    1 3 VN_03 null ${VN_02} 6.05
    1 3.01 VN_03 null ${VN_02} 8.35
    1 25.1 VN_03 null ${VN_02} 41.7
    2 0 VN_03 null ${VN_02} null
    2 3 VN_03 null ${VN_02} 12
    4 3.01 VN_03 null ${VN_02} 24.5