BPO API
Following APIs are needed:
1.) getInitialData
Description
API provides Initial data for the page i.e. screenTitle, header data and search data.
Request details
- method: POST
- body:
{
  "keys": {
    "screenType": "REFUNDSCREEN",
    "buyer": "BEL",
    "tenderNum": "BPO-SLICK-2020",
    "lineNum": "13",
    "dbCompany": "BEL"
  }
}
Response
{
  "screenTitle": "",
  "navigationLabelOrder": [
    {
      "label": "Opened",
      "link": "www.google.com"
    }
  ],
  "header": {
    "data": {
      "tenderNum": "",
      "lineNum": "",
      "description": "",
      "stage": "",
      "costOpenDate": "",
      "technicalOpenDate": "",
      "preQualificationOpenDate": "",
      "estimatedCost": "",
      "emd": "",
      "tpf": "",
      "formFee": ""
    },
    "displayLabels": {  // labels to be shown
      "tenderNum": "Tender Number",
      "lineNum": "Line Number",
      "description": "Description",
      "stage": "Stage",
      "costOpenDate": "Actual Cost Open Date",
      "technicalOpenDate": "Actual Technical Open Date",
      "preQualificationOpenDate": "Actual Pre-qualification Open date",
      "estimatedCost": "Estimated Cost",
      "emd": "EMD",
      "tpf": "TPF",
      "formFee": "Form Fee"
    },
    "displayCode": "" // Example of displayCode mapped in our file is given below
  },
  "search": {
    "data": { // default value to be shown
      "vendorName": "",
      "transactionType": "",
      "paymentStatus": "",
      "action": "",
      "fromDate": "",
      "toDate": "",
      "buyer": "",
      "auctionNum": "",
      "auctionSubItem": "",
      "refNum": "",
      "utr": ""
    },
    "displayLabels": {
      "vendorName": "Vendor Name",
      "transactionType": "Transaction Type",
      "paymentStatus": "Payment Status",
      "action": "Action",
      "fromDate": "From Date",
      "toDate": "To Date",
      "buyer": "Buyer",
      "auctionNum": "NIT/Auction Number",
      "auctionSubItem": "Line/Auction Sub Item",
      "refNum": "TW Reference No",
      "utr": "PGI/NEFT UTR#"
    },
    "displayCode": ""
  },
  "sort": {
    "data": [
      {
        "id": "",
        "label": ""
      }
    ],
    "options": {
      "propId": "",
      "propLabel": ""
    }
  }
}
displayCode example
{
  "small": [],
  "medium": [],
  "large": [
    "tenderNum,lineNum",
    "costOpenDate,technicalOpenDate",
    "preQualificationOpenDate,estimatedCost",
    "emd,emf",
    "formFee"
  ]
}
2.) getSearchMasterData
Description
- API provides master data to fill search dropdowns.
- Data will be given for the keys sent in body.
Request details
- method: POST
- body:
{
  "keys": {
    "screenType": "REFUNDSCREEN",
    "buyer": "BEL",
    "tenderNum": "BPO-SLICK-2020",
    "lineNum": "13",
    "dbCompany": "BEL"
  },
  "data": ['vendorName', 'action', 'buyer']
}
Response
{
  "vendorName": {
    "data": [
      {
        "id": "",
        "label": ""
      }
    ],
    "options": {
      "propId": "id",
      "propLabel": "label"
    }
  },
  "action": {
    "data": [],
    "options": {}
  },
  "buyer": {
    "data": [],
    "options": {}
  }
}
3.) getIds
Description
- API provides all ids and other one time data.
- Ids will be given on based of search and sort object if passed in body.
Request details
- method: POST
- body:
{
  "keys": {
    "screenType": "REFUNDSCREEN",
    "buyer": "BEL",
    "tenderNum": "BPO-SLICK-2020",
    "lineNum": "13",
    "dbCompany": "BEL"
  },
  "data": {
    "sort": {
    "prop": "tenderNum",
    "order": "asc"
  },
  "search": {
    "vendorNum": "",
    "transactionType": "",
    "paymentStatus": ""
  }
  }
}
Response
{
  "idArr":[],
  "displayLabels": {
    "tenderNum": "Tender Number",
    "lineNum": "Line Number",
    "vendorName": "Vendor Name",
    "transactionType": "Type of Transaction"
  },
  "displayCode": "",
  "popupDisplayCode": "",
  "multiSelectIcons": [{
    "name": '',
    "mappedStatus": {
      "errorMessage": "",
      "statusPropName": "statusCode",
      "statusValues":[]
    },
    "tooltip": '',
    "link":"",
    "clickCode":""
  }]
}
4.) getDetailByIds
Description
- Gives data of the ids passed.
Request details
- method: POST
- body:
{
  "keys": {
    "screenType": "REFUNDSCREEN",
    "buyer": "BEL",
    "tenderNum": "BPO-SLICK-2020",
    "lineNum": "13",
    "dbCompany": "BEL"
  },
  "data": [],
  "search": {
    "vendorNum": "",
    "transactionType": "",
    "paymentStatus": ""
  }
}
Response
[{
    "id": ""
    "tenderNum": "",
    "lineNum": "",
    "vendorName": "",
    "transactionType": "",
    "actionIcons": [{
      "name": "",
      "tooltip": "",
      "link": "",
      "clickCode": ""  
    }],
    "statusCode": ""
  }]
5.) performAction
Description
- Perform actions based on code.
Request details
- method: POST
- body:
{
  "keys": {
    "screenType": "REFUNDSCREEN",
    "buyer": "BEL",
    "tenderNum": "BPO-SLICK-2020",
    "lineNum": "13",
    "dbCompany": "BEL"
  },
  "data": {
    "idArr": [],
    "clickCode": '', // ex: refund
    "remarks":''
  }
}
Response
{
  "status": "Success/Fail",
  "errorMessage": "", // If fail
  "data": [{                  // changed data
    "id": ""
    "tenderNum": "",
    "lineNum": "",
    "vendorName": "",
    "transactionType": "",
    "actionIcons": [{
      "name": "",
      "tooltip": "",
      "link": "",
      "clickCode": ""  
    }],
    "statusCode": ""
  }]
}
6.) downloadBPOExcel
Description
- To download the Excel file.
Request details
- method: POST
- body:
{
  "keys": {
    "screenType": "REFUNDSCREEN",
    "buyer": "BEL",
    "tenderNum": "BPO-SLICK-2020",
    "lineNum": "13",
    "dbCompany": "BEL"
  },
  "data": {
    "search" : {}
  }
}
Response
Downloadable Excel file
7.) getPaymentLogs
Description
- To get Payment logs ids.
Request details
- method: POST
- body:
{
  "keys": {
    "screenType": "REFUNDSCREEN",
    "buyer": "BEL",
    "tenderNum": "BPO-SLICK-2020",
    "lineNum": "13",
    "dbCompany": "BEL"
  },
  "data": {
    "refNo": '' //Payment Reference Number
  }
}
Response
{
  "idArr": []
}