如何在FedexRest库中设置运单的SignatureOption(DIRECT/ADULT_ONLY)
设置Fedex运单的签名选项(DIRECT/ADULT_ONLY)
你需要通过setSpecialServices方法来添加签名服务,这个库提供了SignatureOptionType枚举类,里面包含DIRECT和ADULT_ONLY这两个签名选项常量。
修改后的完整代码如下:
// 确保已引入对应的枚举类 use WhatArmy\FedexRest\Services\Ship\Enums\SignatureOptionType; $this->request ->setRecipients( (new Person) ->setPersonName($this->recipient->name) ->setPhoneNumber($this->recipient->phone_number) ->setCompanyName($this->recipient->company_name) ->withAddress( (new Address()) ->setCity($this->recipient->city) ->setStreetLines($this->recipient->address) ->setCountryCode($this->recipient->country) ->setPostalCode($this->recipient->postal_code) ) ) ->setLineItems((new Item()) ->setSequenceNumber(1) ->setItemDescription('Product 1') ->setWeight( (new Weight()) ->setValue(1) ->setUnit(WeightUnits::_KILOGRAM) ) ->setDimensions((new Dimensions()) ->setWidth(15) ->setLength(10) ->setHeight(15) ->setUnits(LinearUnits::_CENTIMETER) ) ) // 设置签名选项 ->setSpecialServices([ 'signatureOption' => SignatureOptionType::DIRECT, // 若需成人签名,替换为下面一行 // 'signatureOption' => SignatureOptionType::ADULT_ONLY ]) ->request();
补充说明:
- 签名选项属于Fedex的特殊服务范畴,因此需要通过
setSpecialServices传入关联数组来指定。 - 必须先引入
SignatureOptionType枚举类,否则会出现未定义常量的错误。 - 切换签名类型只需替换枚举常量即可,DIRECT对应直接签名,ADULT_ONLY对应仅成人签名。
内容的提问来源于stack exchange,提问作者Benzi
相关产品推荐
相关产品推荐

