Project

General

Profile

Actions

追加功能 #505

open
XF JZ

v4.0: Shipping Supplier (DHL,UPS,FEDEX) - Step 2

追加功能 #505: v4.0: Shipping Supplier (DHL,UPS,FEDEX) - Step 2

Added by Xihua Fan about 1 month ago. Updated 20 days ago.

Status:
进行中
Priority:
普通
Assignee:
Target version:
IT: Easytryck (Sweden) - v4.0
Start date:
02/04/2026
Due date:
03/06/2026 (11 days late)
% Done:

10%

Estimated time:
100.00 h

Description

Background
  1. Shipping Supplier(DHL,UPS,FEDEX)第三方的打通
Task Details
  • 1. Done: DHL,UPS,FEDEX:Tracking系统
    To-Do:DHL需要采用新的json格式,并支持UTC+8等时区格式。
  • 2. DHL:制单,报关系统
  • 3. UPS的OAuth好像26年4月1号有更新,移植的需要确认一下。
    On April 1, 2026, UPS will be reducing the OAuth token lifespan from 4 hours to 1 hour.
    This means that your API integration will need to generate a new access token every hour instead of every 4 hours to ensure uninterrupted access to the UPS APIs.
    To-Do:UPS,或者DHL/FEDEX是否需要强制切换到OAuth2。
v4 coding standard:
  1. Git提交
    #xxx(redmine number): xxx(redmine title) - xxx(任意:补充内容)
      
  2. 代码规范
    2.1: 结构:Public -> Protected -> Private
    2.2: 其他代码规范同SBX
      
  3. MVCL的v3/v4物理分割
    3.1: v3/v4的代码分为两个文件,比如: order.php, order_v3.php
    3.2: system也分为两个文件,暂时只有一个user_v3
    - Note: front的$this->user在v4中会替换为$this->customer, 即v4中需要清除$this->user
    3.3: 代码中,区分v3/v4的调用,比如:new User_V3
     
  4. 前台代码
    twig, js, css (js, css尽量写在单独的css文件中)
     
  5. 后台代码
    MVCL (L:en,cn)
     
  6. 注释
    1. 类名:
      /**
       * xxx
       *
       * @copyright RedBlue-OTS 2024
       * @version v4
       *
       */
      
    2. 函数名:参数类型 + 返回值类型
          /**
           * xxx
           *
           * @param  xxx $xxx
           * @param  xxx $xxx
           * @return xxx
           */
      
Output
  • Report and Solution

Others


Related issues 1 (0 open1 closed)

Related to 追加功能 #490: v4.0: Shipping Supplier (DHL,UPS,FEDEX) - Step 1已关闭Junyi Zhang01/06/202602/28/2026

Actions

XF Updated by Xihua Fan about 1 month ago Actions #1

  • Related to 追加功能 #490: v4.0: Shipping Supplier (DHL,UPS,FEDEX) - Step 1 added

JZ Updated by Junyi Zhang about 1 month ago Actions #2

Output(2025/02/04)

DHL相关功能+对应的API
  1. 地址管理:
    - 校验地址( /address-validate
    - add/edit/remove地址
  2. 制作运单 ( /shipment )
    - 校验DHL对产品的服务能力( /products 待定:不确定是什么意思,需要问下tom)
    - DHL支持多种包裹类型的运单(待定:需要问下tom我们属于哪一种)
    - 直接预约取货(可选功能,我建议不在制作运单这一步预约)
    - 预览运单pdf + 打印:暂时没有找到DHL支持重复打印运单的功能,也许我们需要把第一次生成的pdf保存起来,方便重复打印
  3. 单独预约取货
    - 预约/更新预约信息/取消预约( /pickups
    - 已预约的列表(待定:需要问下tom,具体预约什么,是否跟箱子有关)
  4. tracking ( /tracking
  5. 报关 (待定:暂时不确定报关的流程,需要问下tom)
DHL 测试用例
  • Sample1 中国到德国 (从中国发到德国BERLIN,目的地邮编10082,包裹类快件,一个运单号下三个外包装箱)
    - 发件人的类型是公司(business),收件人的类型为个人(private)
    发现人:真实,收件人:模拟任意
    - 清关发票总价值=100美金,其中包含运费、保险费
    运费:模拟任意,产品价格:模拟任意,保险费:模拟任意(生产时不设置)
    - 需要同时创建DHL清关发票(使用发票模板COMMERCIAL_INVOICE_P_10),
    发票模板:真实(COMMERCIAL_INVOICE_P_10 欧洲用)
    - 每个Lineitems需要体现进口/出口HS编码
    Lineitems:真实
    - 启用PLT(无纸化)服务,同时需体现exportDeclaration/invoice节点下添加signatureName、signatureTitle、signatureImage这三个字段用以录入清关发票上的签名、职位(头衔)以及电子签名
    signatureName等:模拟任意
    - 启用DTP服务(发件人支付目的地税金)
    DTP服务:真实(Redblue签约账号)
    - 启用II服务(快件保险),保险价值单位必须为CNY,且申报价值=发票总价值(100USD核算的人民币价值)
    保险:模拟任意(生产时不设置)
    - 需要录入发件人在欧盟国家注册的IOSS号(税号可填写随机数字,registrationNumbers中类型需设定为SDT)
    保险:模拟任意(生产时不设置)
    - 不启用预约取件
    不启用预约:真实
    - 定制信息 :运单中显现Ref code = 外箱号
    packages.customerReferences = CTN ID (比如: 0127-SH-17)
  • Sample2 中国到美国 (中国发美国NEW YORK,目的地邮编10005,包裹类快件,一个运单号下一个外包装箱)
    - 发件人的类型是公司(business),收件人的类型为公司(business)
    发现人:真实,收件人:模拟任意
    - 清关发票总价值=900美金,不包含运费、保险费等其他费用
    运费:模拟任意,产品价格:模拟任意,保险费:模拟任意(生产时不设置)
    - exportDeclaration/lineItems节点下至少包含两个object(即至少两种商品,请自定义商品详情)
    Lineitems:真实
    - 每个Lineitems需要体现进口/出口HS编码
    Lineitems:真实
    - 每个Lineitems需要在customerReferences字段中体现MID代码
    Lineitems:真实(生产时固定设置MID代码:询问Tom)
    - 要同时创建清关发票(使用发票模板COMMERCIAL_INVOICE_L_10)
    发票模板:真实(COMMERCIAL_INVOICE_L_10美洲用)
    - 需要单独录入出口商(exporterDetails), 进口商(importerDetails),买家(buyerDetails),具体信息自定义
    exporterDetails/importerDetails/buyerDetails:模拟任意(生产时不设置)
    - 需要录入中国发件人的CR Number(海关注册编号)和USCI(统一社会信用代码)
    CR Number/USCI:模拟任意(生产时不设置)
    - 需要录入美国收件人EIS,SSN (registrationNumbers中体现)
    EIS,SSN:模拟任意(生产时不设置)
    - 不启用任何增值服务
    不启用预约:真实
    - 定制信息 :运单中显现Ref code = 外箱号
    packages.customerReferences = CTN ID (比如: 0127-SH-17)
  • Sample3 到付快件测试 (如无相关业务需求,可不提供此测试样例):从中国发到德国HAMBURG,目的地邮编20068,包裹类快件。
    没有测试:无使用场景
    - 使用国外到付账号支付快件运费
    - 发件人的类型是个人(private),收件人的类型为公司(business)
    - 每个Lineitems需要体现进口/出口HS编码
    - 不创建DHL发票,使用自己的发票模板
    - 不启用任何增值服务,其他快件信息自定义

JZ Updated by Junyi Zhang 20 days ago Actions #3

  • File 中国到德国.7z added
  • File 中国到美国.7z added
  • Due date changed from 02/28/2026 to 03/06/2026

XF Updated by Xihua Fan 19 days ago Actions #4

  • File deleted (中国到德国.7z)

XF Updated by Xihua Fan 19 days ago Actions #5

  • File deleted (中国到美国.7z)
Actions

Also available in: PDF Atom