SWITCH

  • case에 따라 flow를 분기할 수 있다.

  • inputValue(input 위치에서 찾은 데이터)의 row count 만큼 roof 돌며 각 아이템에 대하여 switchTerms 의 filter에 매치되는 첫번째 terms의 flowComponent를 실행하고 break

Define field

Switch

ID

Description

ID

Description

id

switch flow component id

name

이름

input

flow Component 처리 기준 데이터 위치

filter

현재 flow Component 실행여부 판단

next

다음 flow Component id (default : terms의 어느 하나도 매치되지 않을 경우 next)

 

Switch Terms (case)

ID

Description

ID

Description

id

terms id

filter

현재 terms 실행여부 판단. true이면 실행 후 break

flowComponent

flow Component id

 

switch start

  • get value of "input" position (inputValue)

  • roof inputValue

    • roof mapperTerms

      • filter (Condition of execution)

        • false : continue

        • true : go to “flowComponent”, break

next

 

sample

{ "typeId": "switch", "id": 1350532542, "name": "set payment by payMethod", "input": "pg", "filter": { "typeId": "filter", "id": null, "name": "PG 승인 여부", "type": "filter", "isNot": false, "conjunction": "and", "filterTerms": [ { "typeId": "filterTerms", "id": null, "field": "id", "isNot": false, "method": "equals", "value": "context.pg.orderId" }, { "typeId": "filterTerms", "id": null, "field": "context.pg.result", "isNot": false, "method": "equals", "value": "success" } ] }, "switchTerms": [ { "typeId": "switchTerms", "id": 1905260071, "filter": { "typeId": "filter", "id": null, "name": "신용카드 결제", "type": "filter", "isNot": false, "conjunction": "and", "filterTerms": [ { "typeId": "filterTerms", "id": null, "field": "payMethod", "isNot": false, "method": "equals", "value": "creditCard" } ] }, "flowComponent": { "typeId": "mapper", "id": 734543391, "name": "set creditCardPayment", "input": "pg", "output": "pg.creditCardPayment", "mapperTerms": [ { "id": null, "field": "cardCode", "method": "mapping", "valueType": "string", "value": "creditCardCode" }, { "id": null, "field": "name", "method": "mapping", "valueType": "string", "value": "creditCardName" }, { "id": null, "field": "cardNo", "method": "mapping", "valueType": "string", "value": "creditCardNo" }, { "id": null, "field": "appNo", "method": "mapping", "valueType": "string", "value": "approvalNo" }, { "id": null, "field": "appTime", "method": "mapping", "valueType": "string", "value": "approvalDate" }, { "id": null, "field": "quota", "method": "mapping", "valueType": "string", "value": "installment" }, { "id": null, "field": "paymentPrice", "method": "mapping", "valueType": "long", "value": "price" } ], "next": 2105442359 } }, { "typeId": "switchTerms", "id": 1567654191, "filter": { "typeId": "filter", "id": null, "name": "휴대폰 결제 ", "type": "filter", "isNot": false, "conjunction": "and", "filterTerms": [ { "typeId": "filterTerms", "id": null, "field": "payMethod", "isNot": false, "method": "equals", "value": "mobile" } ] }, "flowComponent": { "typeId": "mapper", "id": 1852146720, "name": "set mobilePayment", "input": "pg", "output": "pg.mobilePayment", "mapperTerms": [ { "id": null, "field": "paymentCompanyCode", "method": "mapping", "valueType": "string", "value": "paymentCompany" }, { "id": null, "field": "objectType", "method": "mapping", "valueType": "string", "value": "type" }, { "id": null, "field": "carrierCode", "method": "mapping", "valueType": "string", "value": "carrier" }, { "id": null, "field": "cellphone", "method": "mapping", "valueType": "string", "value": "phoneNumber" }, { "id": null, "field": "paymentPrice", "method": "mapping", "valueType": "long", "value": "price" } ], "next": 2105442359 } } ] }