Class: Bootpay::Commerce::OrderSubscriptionRequestModule

Inherits:
Object
  • Object
show all
Defined in:
lib/bootpay/commerce/order_subscription_request.rb

Overview

V1 OrderSubscription Request 조회/승인 모듈

본인 모드 (user role): project_id 없이 호출 → 본인 요청 목록/단건슈퍼바이저 모드 (supervisor role): project_id 포함 → 프로젝트 전체 + update (승인/거절)

구매자측 요청 생성 (pause/resume/termination 등) 은‘commerce.order_subscription.request_ing.*` 모듈을 사용한다.

Instance Method Summary collapse

Constructor Details

#initialize(bootpay) ⇒ OrderSubscriptionRequestModule

Returns a new instance of OrderSubscriptionRequestModule.



15
16
17
# File 'lib/bootpay/commerce/order_subscription_request.rb', line 15

def initialize(bootpay)
  @bootpay = bootpay
end

Instance Method Details

#detail(order_subscription_request_history_id, project_id: nil) ⇒ Object

요청 단건 조회 (user / supervisor 공용)



36
37
38
39
40
41
42
# File 'lib/bootpay/commerce/order_subscription_request.rb', line 36

def detail(order_subscription_request_history_id, project_id: nil)
  query_params = {}
  query_params[:project_id] = project_id if project_id

  query = build_query(query_params)
  @bootpay.get("order-subscription-requests/#{order_subscription_request_history_id}#{query}")
end

#list(params = {}) ⇒ Object

요청 목록 조회 (user / supervisor 공용)



20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/bootpay/commerce/order_subscription_request.rb', line 20

def list(params = {})
  query_params = {}
  query_params[:project_id]   = params[:project_id]   if params[:project_id]
  query_params[:page]         = params[:page]         unless params[:page].nil?
  query_params[:limit]        = params[:limit]        unless params[:limit].nil?
  query_params[:request_type] = params[:request_type] unless params[:request_type].nil?
  query_params[:status]       = params[:status]       unless params[:status].nil?
  query_params[:s_at]         = params[:s_at]         if params[:s_at]
  query_params[:e_at]         = params[:e_at]         if params[:e_at]
  query_params[:keyword]      = params[:keyword]      if params[:keyword]

  query = build_query(query_params)
  @bootpay.get("order-subscription-requests#{query}")
end

#update(params) ⇒ Object

요청 승인/거절 (supervisor 전용)

Raises:

  • (ArgumentError)


45
46
47
48
49
50
# File 'lib/bootpay/commerce/order_subscription_request.rb', line 45

def update(params)
  raise ArgumentError, 'order_subscription_request_history_id is required' unless params[:order_subscription_request_history_id]
  history_id = params[:order_subscription_request_history_id]
  body = params.reject { |k, _| k == :order_subscription_request_history_id }
  @bootpay.put("order-subscription-requests/#{history_id}", body)
end