From 23a8235493f646b983725fa5730c410a73442857 Mon Sep 17 00:00:00 2001 From: Rei Date: Fri, 20 May 2022 15:21:36 +0900 Subject: [PATCH] fixed an issue in JNT is not working --- CHANGELOG.md | 3 +++ lib/courier/jnt.js | 28 ++++++++++++++++------------ package.json | 2 +- test/fixtures/jnt-DELIVERED-track | 2 +- 4 files changed, 21 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0e09e7c..05ce674 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +# 2.7.2 +* fixed an issue in JNT is not working + # 2.7.1 * fixed an issue in JNT is not working diff --git a/lib/courier/jnt.js b/lib/courier/jnt.js index ab91197..ebbbd3d 100644 --- a/lib/courier/jnt.js +++ b/lib/courier/jnt.js @@ -20,12 +20,13 @@ var trackingInfo = function (number) { 'X-SimplyPost-Signature': '712d5af47cd24adf54fe39ebc4ed0aea' }, body: { - method: 'app.findTrack', + method: 'order.orderTrack', data: { - billcode: number, + billCode: number, lang: 'en', source: 3 }, + version: '2.2.22', pId: 'testtesttest', pst: '712d5af47cd24adf54fe39ebc4ed0aea' } @@ -34,32 +35,32 @@ var trackingInfo = function (number) { } var parser = { - trace: function (data) { + trace: function (data, number) { var courier = { code: tracker.COURIER.JNT.CODE, name: tracker.COURIER.JNT.NAME } var result = { courier: courier, - number: data.billcode, + number: number, status: tracker.STATUS.PENDING } var checkpoints = [] for (var i = 0; i < data.details.length; i++) { var item = data.details[i] - var message = [ - item.desc - ].join(' - ') + var message = [item.scanstatus].join(' - ') var checkpoint = { courier: courier, location: item.city || item.siteName, message: message, status: tracker.STATUS.IN_TRANSIT, - time: moment(item.scantime + 'T+0800', 'YYYY-MM-DD HH:mm:ssZ').utc().format('YYYY-MM-DDTHH:mmZ') + time: moment(item.acceptTime + 'T+0800', 'YYYY-MM-DD HH:mm:ss.0Z') + .utc() + .format('YYYY-MM-DDTHH:mmZ') } - if (item.scanstatus === 'Delivered') { + if (item.scanscode === '5') { checkpoint.status = tracker.STATUS.DELIVERED } else if (item.scanstatus === 'Returned') { checkpoint.status = tracker.STATUS.RETURNED @@ -93,11 +94,14 @@ module.exports = function () { try { if (res.statusCode !== 200) { return cb(tracker.error(res.statusMessage)) - } else if (body.code !== 20000) { + } else if (body.code !== 200) { return cb(tracker.error(body.code, body.desc)) } - var result = parser.trace(JSON.parse(body.data)) - cb(result ? null : tracker.error(tracker.ERROR.INVALID_NUMBER), result) + var result = parser.trace(JSON.parse(body.data), number) + cb( + result ? null : tracker.error(tracker.ERROR.INVALID_NUMBER), + result + ) } catch (e) { cb(tracker.error(e.message)) } diff --git a/package.json b/package.json index 5c60e12..ea73111 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "delivery-tracker", - "version": "2.7.1", + "version": "2.7.2", "author": { "name": "egg", "email": "i@egg.pe.kr" diff --git a/test/fixtures/jnt-DELIVERED-track b/test/fixtures/jnt-DELIVERED-track index 5065128..2a9ab71 100644 --- a/test/fixtures/jnt-DELIVERED-track +++ b/test/fixtures/jnt-DELIVERED-track @@ -1 +1 @@ -{"code":20000,"data":"{\"billcode\":\"DELIVERED\",\"details\":[{\"scantime\":\"2021-10-28 16:52:16\",\"scantype\":\"Delivered\",\"scanscode\":\"5\",\"scanstatus\":\"Delivered\",\"desc\":\"has been received, receiver name:【Liz Te】\",\"deliveryName\":\"Sher Piolo Carig\",\"deliveryTel\":\"639275543473\",\"siteName\":\"Sta. Mesa - 1\",\"nextSite\":\"\",\"city\":\"METRO-MANILA-SAMPALOC\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"Liz Te\"},{\"scantime\":\"2021-10-28 09:46:45\",\"scantype\":\"Delivered\",\"scanscode\":\"4\",\"scanstatus\":\"On Delivery\",\"desc\":\"【Sta. Mesa - 1】sprinter【Sher Piolo Carig:639275543473】is sending,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"Sher Piolo Carig\",\"deliveryTel\":\"639275543473\",\"siteName\":\"Sta. Mesa - 1\",\"nextSite\":\"\",\"city\":\"METRO-MANILA-SAMPALOC\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-28 01:44:01\",\"scantype\":\"Departure\",\"scanscode\":\"2\",\"scanstatus\":\"Departed\",\"desc\":\"by【Sta Ana Warehouse】send package【Sta. Mesa - 1】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"Sta Ana Warehouse\",\"nextSite\":\"Sta. Mesa - 1\",\"city\":\"METRO-MANILA-SANTA-ANA\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-28 01:43:17\",\"scantype\":\"Arrival\",\"scanscode\":\"3\",\"scanstatus\":\"Arrived\",\"desc\":\"package is arrived to destination【Sta. Mesa - 1】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"Sta. Mesa - 1\",\"nextSite\":\"Sta Ana Warehouse\",\"city\":\"METRO-MANILA-SAMPALOC\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-28 01:24:27\",\"scantype\":\"Arrival\",\"scanscode\":\"3\",\"scanstatus\":\"Arrived\",\"desc\":\"package is arrived to destination【Sta Ana Warehouse】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"Sta Ana Warehouse\",\"nextSite\":\"NCR South Warehouse\",\"city\":\"METRO-MANILA-SANTA-ANA\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-27 21:13:19\",\"scantype\":\"Departure\",\"scanscode\":\"2\",\"scanstatus\":\"Departed\",\"desc\":\"by【NCR South Warehouse】send package【Sta Ana Warehouse】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"NCR South Warehouse\",\"nextSite\":\"Sta Ana Warehouse\",\"city\":\"PARANAQUE\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-27 05:11:02\",\"scantype\":\"Arrival\",\"scanscode\":\"3\",\"scanstatus\":\"Arrived\",\"desc\":\"package is arrived to destination【NCR South Warehouse】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"NCR South Warehouse\",\"nextSite\":\"Luzon Ave Warehouse\",\"city\":\"PARANAQUE\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-27 01:16:48\",\"scantype\":\"Departure\",\"scanscode\":\"2\",\"scanstatus\":\"Departed\",\"desc\":\"by【Luzon Ave Warehouse】send package【NCR South Warehouse】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"Luzon Ave Warehouse\",\"nextSite\":\"NCR South Warehouse\",\"city\":\"QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-26 19:20:30\",\"scantype\":\"Arrival\",\"scanscode\":\"3\",\"scanstatus\":\"Arrived\",\"desc\":\"package is arrived to destination【Luzon Ave Warehouse】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"Luzon Ave Warehouse\",\"nextSite\":\"MAGALLANES - 1\",\"city\":\"QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-26 16:08:08\",\"scantype\":\"Departure\",\"scanscode\":\"2\",\"scanstatus\":\"Departed\",\"desc\":\"by【MAGALLANES - 1】send package【Luzon Ave Warehouse】,Due to the implementation of community quarantine which limits transportation and mobility, delivery schedules may get affected.Thank you for your patience and understanding.\",\"deliveryName\":\"\",\"deliveryTel\":\"\",\"siteName\":\"MAGALLANES - 1\",\"nextSite\":\"Luzon Ave Warehouse\",\"city\":\"MAKATI\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"},{\"scantime\":\"2021-10-26 15:15:44\",\"scantype\":\"Picked Up\",\"scanscode\":\"1\",\"scanstatus\":\"Picked Up\",\"desc\":\"【MAGALLANES - 1】from【Nemrac Olvido:639497308493】has been Picked up\",\"deliveryName\":\"Nemrac Olvido\",\"deliveryTel\":\"639497308493\",\"siteName\":\"MAGALLANES - 1\",\"nextSite\":\"\",\"city\":\"MAKATI\",\"latitude\":\"\",\"longitude\":\"\",\"siteType\":\"\",\"signer\":\"\"}]}","desc":"查询成功","success":true,"sessionid":null,"sqlid":null} \ No newline at end of file +{"code":200,"data":"{\"statuscode\":\"5\",\"process\":\"100\",\"details\":[{\"remark\":\"\",\"acceptTime\":\"2022-05-18 14:53:03.0\",\"state\":\"CP-QC-Regalado\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"5\",\"scanstatus\":\"Your package has been Delivered\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"Michael Pilande\",\"deliveryPhone\":\"63000000000\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 12:57:29.0\",\"state\":\"CP-QC-Regalado\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"4\",\"scanstatus\":\"Your package Out for Delivery【Michael Pilande : 63000000000】For COD please prepare exact amount, Photo proof of delivery is require. Thanks!\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"Michael Pilande\",\"deliveryPhone\":\"63000000000\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 12:56:12.0\",\"state\":\"CP-QC-Regalado\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"3\",\"scanstatus\":\"Your package Arrived at QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"QUEZON-CITY\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 12:54:50.0\",\"state\":\"Metro Manila DC5G\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"2\",\"scanstatus\":\"Your package departed from QUEZON-CITY to QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"QUEZON-CITY\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 09:51:35.0\",\"state\":\"Metro Manila DC5G\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"3\",\"scanstatus\":\"Your package Arrived at QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"QUEZON-CITY\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 09:51:35.0\",\"state\":\"Metro Manila DC5G\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"\",\"scanstatus\":\"Unload\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 06:59:30.0\",\"state\":\"Metro Manila DC5B\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"\",\"scanstatus\":\"Load Truck\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 06:59:30.0\",\"state\":\"Metro Manila DC5B\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"2\",\"scanstatus\":\"Your package departed from QUEZON-CITY to QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"QUEZON-CITY\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 06:16:21.0\",\"state\":\"Metro Manila DC5B\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"3\",\"scanstatus\":\"Your package Arrived at QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"TAGUIG\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 06:16:20.0\",\"state\":\"Metro Manila DC5B\",\"city\":\"QUEZON-CITY\",\"scanscode\":\"\",\"scanstatus\":\"Unload\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 04:07:19.0\",\"state\":\"Metro ManilaDC\",\"city\":\"TAGUIG\",\"scanscode\":\"2\",\"scanstatus\":\"Your package departed from TAGUIG to QUEZON-CITY\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"QUEZON-CITY\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-18 04:07:16.0\",\"state\":\"Metro ManilaDC\",\"city\":\"TAGUIG\",\"scanscode\":\"\",\"scanstatus\":\"Load Truck\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-17 15:45:22.0\",\"state\":\"CP_MKT_Magallanes\",\"city\":\"MAKATI\",\"scanscode\":\"2\",\"scanstatus\":\"Your package departed from MAKATI to TAGUIG\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"TAGUIG\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-17 15:45:22.0\",\"state\":\"CP_MKT_Magallanes\",\"city\":\"MAKATI\",\"scanscode\":\"\",\"scanstatus\":\"Load Truck\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"\",\"deliveryPhone\":\"\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"},{\"remark\":\"\",\"acceptTime\":\"2022-05-17 14:45:36.0\",\"state\":\"CP_MKT_Magallanes\",\"city\":\"MAKATI\",\"scanscode\":\"1\",\"scanstatus\":\"Your package has been picked up by courier\",\"latitude\":\"\",\"longitude\":\"\",\"deliveryName\":\"Nemrac Olvido\",\"deliveryPhone\":\"639497308493\",\"signer\":\"\",\"siteName\":\"\",\"nextsite\":\"\"}],\"status\":\"Delivered\"}","desc":"成功","success":true} \ No newline at end of file