91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用SpringBoot實現快遞物流查詢

發布時間:2021-10-29 11:16:54 來源:億速云 閱讀:321 作者:iii 欄目:開發技術

本篇內容介紹了“怎么用SpringBoot實現快遞物流查詢”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

快遞物流查詢

注:需要購買快遞物流查詢接口服務獲取AppCode

怎么用SpringBoot實現快遞物流查詢

工具類

其中http請求工具類自行查看demo源碼

@Slf4j
public class LogisticUtil {

    /**
     * 查詢物流信息
     *
     * @param params 提交參數
     * @return 物流信息
     * @author zhengqingya
     * @date 2021/10/23 10:48 下午
     */
    public static LogisticVO getLogisticInfo(LogisticDTO params) {
        String no = params.getNo();
        String type = params.getType();
        String appCode = params.getAppCode();

        // 請求地址
        String requestUrl = String.format("https://kdwlcxf.market.alicloudapi.com/kdwlcx?no=%s&type=%s",
                no, StringUtils.isBlank(type) ? "" : type);
        // 發起請求
        Map<String, String> headerMap = Maps.newHashMap();
        headerMap.put("Authorization", String.format("APPCODE %s", appCode));
        String resultJson = HttpUtil.getUrl(requestUrl, headerMap);
        LogisticApiResult logisticApiResult = JSON.parseObject(resultJson, LogisticApiResult.class);
        Assert.notNull(logisticApiResult, "參數異常");
        Assert.isTrue(logisticApiResult.getStatus() == 0, logisticApiResult.getMsg());
        return logisticApiResult.getResult();
    }
}

請求實體類

@Data
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("物流-查詢參數")
public class LogisticDTO {

    @ApiModelProperty(value = "快遞單號 【順豐請輸入運單號 : 收件人或寄件人手機號后四位。例如:123456789:1234】", required = true, example = "780098068058")
    private String no;

    @ApiModelProperty(value = "快遞公司代碼: 可不填自動識別,填了查詢更快【代碼見附表】", required = true, example = "zto")
    private String type;

    @ApiModelProperty(value = "appCode", required = true, example = "xxx")
    private String appCode;
}

響應實體類

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("物流-api響應結果")
public class LogisticApiResult {

    @ApiModelProperty("狀態碼")
    private Integer status;

    @ApiModelProperty("提示信息")
    private String msg;

    @ApiModelProperty("結果集")
    private LogisticVO result;

}
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("物流-響應參數")
public class LogisticVO {

    @ApiModelProperty("運單編號")
    private String number;

    @ApiModelProperty("快遞公司編碼[見附表]")
    private String type;

    @ApiModelProperty("投遞狀態 0快遞收件(攬件)1在途中 2正在派件 3已簽收 4派送失敗 5.疑難件 6.退件簽收")
    private String deliverystatus;

    @ApiModelProperty("是否本人簽收")
    private String issign;

    @ApiModelProperty("快遞公司名字")
    private String expName;

    @ApiModelProperty("快遞公司官網")
    private String expSite;

    @ApiModelProperty("快遞公司電話")
    private String expPhone;

    @ApiModelProperty("快遞員")
    private String courier;

    @ApiModelProperty("快遞員電話")
    private String courierPhone;

    @ApiModelProperty("最新軌跡的時間")
    private String updateTime;

    @ApiModelProperty("發貨到收貨耗時(截止最新軌跡)")
    private String takeTime;

    @ApiModelProperty("快遞公司logo")
    private String logo;

    @ApiModelProperty("事件軌跡集")
    private List<LogisticItem> list;

    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    @ApiModel("事件軌跡集")
    public static class LogisticItem {
        @ApiModelProperty("時間點")
        private String time;

        @ApiModelProperty("事件詳情")
        private String status;
    }
}

測試api

@Slf4j
@RestController
@RequestMapping("/test")
@Api(tags = "測試api")
public class TestController {

    @ApiOperation("查詢物流信息")
    @GetMapping("getLogistic")
    public LogisticVO getLogistic(@ModelAttribute LogisticDTO params) {
        return LogisticUtil.getLogisticInfo(params);
    }

}

接口文檔 http://127.0.0.1/doc.html

怎么用SpringBoot實現快遞物流查詢

“怎么用SpringBoot實現快遞物流查詢”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平塘县| 双柏县| 娄底市| 隆尧县| 丽江市| 民勤县| 万州区| 淄博市| 牡丹江市| 西乌珠穆沁旗| 甘孜县| 安陆市| 高尔夫| 焦作市| 竹山县| 城市| 武穴市| 乌恰县| 漳州市| 秦安县| 普兰店市| 福贡县| 民和| 巴林右旗| 鹤庆县| 岗巴县| 伊通| 库车县| 辽宁省| 集贤县| 翁牛特旗| 平湖市| 杭州市| 浦东新区| 盖州市| 土默特右旗| 阿图什市| 永川市| 崇礼县| 美姑县| 武邑县|