正在显示
8 个修改的文件
包含
323 行增加
和
14 行删除
| @@ -16,17 +16,31 @@ use Lackoxygen\TopWarehouse\Utils\SignatureUtil; | @@ -16,17 +16,31 @@ use Lackoxygen\TopWarehouse\Utils\SignatureUtil; | ||
| 16 | 16 | ||
| 17 | class Client implements ClientInterface | 17 | class Client implements ClientInterface |
| 18 | { | 18 | { |
| 19 | + /** | ||
| 20 | + * @var RequestInterface | ||
| 21 | + */ | ||
| 19 | protected $request; | 22 | protected $request; |
| 20 | 23 | ||
| 24 | + /** | ||
| 25 | + * @var guzzleClient | ||
| 26 | + */ | ||
| 21 | protected $guzzleClient; | 27 | protected $guzzleClient; |
| 22 | 28 | ||
| 29 | + /** | ||
| 30 | + * @var array|null | ||
| 31 | + */ | ||
| 23 | protected $config; | 32 | protected $config; |
| 24 | 33 | ||
| 34 | + /** | ||
| 35 | + * Client constructor. | ||
| 36 | + * | ||
| 37 | + * @param RequestInterface $request | ||
| 38 | + */ | ||
| 25 | protected function __construct(RequestInterface $request) | 39 | protected function __construct(RequestInterface $request) |
| 26 | { | 40 | { |
| 27 | $this->request = $request(); | 41 | $this->request = $request(); |
| 28 | 42 | ||
| 29 | - $this->config = config(TopWarehouseServiceProvider::CONFIG_NAME); | 43 | + $this->config = config('top-warehouse'); |
| 30 | 44 | ||
| 31 | $clientOption = \Arr::get($this->config, 'options.client', []); | 45 | $clientOption = \Arr::get($this->config, 'options.client', []); |
| 32 | 46 | ||
| @@ -34,9 +48,11 @@ class Client implements ClientInterface | @@ -34,9 +48,11 @@ class Client implements ClientInterface | ||
| 34 | } | 48 | } |
| 35 | 49 | ||
| 36 | /** | 50 | /** |
| 37 | - * @inheritDoc | 51 | + * @param RequestInterface $request |
| 52 | + * | ||
| 53 | + * @return ClientInterface | ||
| 38 | */ | 54 | */ |
| 39 | - public static function make(RequestInterface $request): ClientInterface | 55 | + protected static function make(RequestInterface $request): ClientInterface |
| 40 | { | 56 | { |
| 41 | return new static($request); | 57 | return new static($request); |
| 42 | } | 58 | } |
| @@ -44,10 +60,17 @@ class Client implements ClientInterface | @@ -44,10 +60,17 @@ class Client implements ClientInterface | ||
| 44 | /** | 60 | /** |
| 45 | * @inheritDoc | 61 | * @inheritDoc |
| 46 | */ | 62 | */ |
| 63 | + public static function request(RequestInterface $request): ResponseInterface | ||
| 64 | + { | ||
| 65 | + return self::make($request)->send(); | ||
| 66 | + } | ||
| 67 | + | ||
| 68 | + /** | ||
| 69 | + * @inheritDoc | ||
| 70 | + */ | ||
| 47 | public function send(): ResponseInterface | 71 | public function send(): ResponseInterface |
| 48 | { | 72 | { |
| 49 | $retry = Arr::get($this->config, 'options.retry', 1); | 73 | $retry = Arr::get($this->config, 'options.retry', 1); |
| 50 | - | ||
| 51 | try { | 74 | try { |
| 52 | return retry($retry, function ($attempt) { | 75 | return retry($retry, function ($attempt) { |
| 53 | return $this->execute($attempt); | 76 | return $this->execute($attempt); |
| @@ -59,7 +82,6 @@ class Client implements ClientInterface | @@ -59,7 +82,6 @@ class Client implements ClientInterface | ||
| 59 | } | 82 | } |
| 60 | } | 83 | } |
| 61 | 84 | ||
| 62 | - | ||
| 63 | /** | 85 | /** |
| 64 | * @param $attempt | 86 | * @param $attempt |
| 65 | * | 87 | * |
| @@ -8,9 +8,9 @@ interface ClientInterface | @@ -8,9 +8,9 @@ interface ClientInterface | ||
| 8 | /** | 8 | /** |
| 9 | * @param RequestInterface $request | 9 | * @param RequestInterface $request |
| 10 | * | 10 | * |
| 11 | - * @return ClientInterface | 11 | + * @return ResponseInterface |
| 12 | */ | 12 | */ |
| 13 | - public static function make(RequestInterface $request): ClientInterface; | 13 | + public static function request(RequestInterface $request): ResponseInterface; |
| 14 | 14 | ||
| 15 | /** | 15 | /** |
| 16 | * @return ResponseInterface | 16 | * @return ResponseInterface |
| @@ -4,16 +4,39 @@ | @@ -4,16 +4,39 @@ | ||
| 4 | namespace Lackoxygen\TopWarehouse\Request\Inventory; | 4 | namespace Lackoxygen\TopWarehouse\Request\Inventory; |
| 5 | 5 | ||
| 6 | 6 | ||
| 7 | +use Lackoxygen\TopWarehouse\Constants\WarehouseCode; | ||
| 7 | use Lackoxygen\TopWarehouse\Request\Request; | 8 | use Lackoxygen\TopWarehouse\Request\Request; |
| 8 | 9 | ||
| 9 | class GetStockInventoryRequest extends Request | 10 | class GetStockInventoryRequest extends Request |
| 10 | { | 11 | { |
| 12 | + /** | ||
| 13 | + * @see WarehouseCode::TABLE_CODE | ||
| 14 | + * 仓库编码 | ||
| 15 | + * | ||
| 16 | + * @var string | ||
| 17 | + */ | ||
| 11 | public $warehouse_id; | 18 | public $warehouse_id; |
| 12 | 19 | ||
| 20 | + /** | ||
| 21 | + * | ||
| 22 | + * 商品编码,(多个以,号隔开) | ||
| 23 | + * | ||
| 24 | + * @var string | ||
| 25 | + */ | ||
| 13 | public $goods_id; | 26 | public $goods_id; |
| 14 | 27 | ||
| 28 | + /** | ||
| 29 | + *通过发布单表体ID,去匹配商品有效期规则编码,该商品会按照此有效期规则出仓 | ||
| 30 | + * | ||
| 31 | + * @var string|null | ||
| 32 | + */ | ||
| 15 | public $deliveryItemId; | 33 | public $deliveryItemId; |
| 16 | 34 | ||
| 35 | + /** | ||
| 36 | + * 代发:2 | ||
| 37 | + * | ||
| 38 | + * @var string | ||
| 39 | + */ | ||
| 17 | public $type; | 40 | public $type; |
| 18 | 41 | ||
| 19 | protected function initialize(): void | 42 | protected function initialize(): void |
| @@ -8,10 +8,25 @@ use Lackoxygen\TopWarehouse\Request\Request; | @@ -8,10 +8,25 @@ use Lackoxygen\TopWarehouse\Request\Request; | ||
| 8 | 8 | ||
| 9 | class OrderNotifyRequest extends Request | 9 | class OrderNotifyRequest extends Request |
| 10 | { | 10 | { |
| 11 | + /** | ||
| 12 | + * 订单号 | ||
| 13 | + * | ||
| 14 | + * @var string | ||
| 15 | + */ | ||
| 11 | public $order_id; | 16 | public $order_id; |
| 12 | 17 | ||
| 18 | + /** | ||
| 19 | + * 1:成功;2:失败 | ||
| 20 | + * | ||
| 21 | + * @var string | ||
| 22 | + */ | ||
| 13 | public $status; | 23 | public $status; |
| 14 | 24 | ||
| 25 | + /** | ||
| 26 | + * 如失败,则放错误信息 | ||
| 27 | + * | ||
| 28 | + * @var string | ||
| 29 | + */ | ||
| 15 | public $notes; | 30 | public $notes; |
| 16 | 31 | ||
| 17 | protected function initialize(): void | 32 | protected function initialize(): void |
| @@ -4,50 +4,303 @@ | @@ -4,50 +4,303 @@ | ||
| 4 | namespace Lackoxygen\TopWarehouse\Request\Order; | 4 | namespace Lackoxygen\TopWarehouse\Request\Order; |
| 5 | 5 | ||
| 6 | 6 | ||
| 7 | +use App\Constants\LogisticsCodeConstant; | ||
| 8 | +use Lackoxygen\TopWarehouse\Constants\CountryCode; | ||
| 9 | +use Lackoxygen\TopWarehouse\Constants\WarehouseCode; | ||
| 7 | use Lackoxygen\TopWarehouse\Request\Request; | 10 | use Lackoxygen\TopWarehouse\Request\Request; |
| 8 | 11 | ||
| 9 | class OrdersB2cAddRequest extends Request | 12 | class OrdersB2cAddRequest extends Request |
| 10 | { | 13 | { |
| 14 | + /** | ||
| 15 | + * 店铺编码 | ||
| 16 | + * | ||
| 17 | + * @var string | ||
| 18 | + */ | ||
| 11 | public $shop_id; | 19 | public $shop_id; |
| 20 | + | ||
| 21 | + /** | ||
| 22 | + * 单据类型,1:自营,2:代发 | ||
| 23 | + * | ||
| 24 | + * @var string | ||
| 25 | + */ | ||
| 12 | public $order_type; | 26 | public $order_type; |
| 27 | + | ||
| 28 | + /** | ||
| 29 | + * 订单号,不可重复 | ||
| 30 | + * | ||
| 31 | + * @var string | ||
| 32 | + */ | ||
| 13 | public $order_id; | 33 | public $order_id; |
| 34 | + | ||
| 35 | + /** | ||
| 36 | + * 订单时间,格式:yyyy-MM-dd HH:mm:ss | ||
| 37 | + * | ||
| 38 | + * @var string | ||
| 39 | + */ | ||
| 14 | public $created; | 40 | public $created; |
| 41 | + | ||
| 42 | + /** | ||
| 43 | + * 更新时间,格式:yyyy-MM-dd HH:mm:ss | ||
| 44 | + * | ||
| 45 | + * @var string | ||
| 46 | + */ | ||
| 15 | public $modified; | 47 | public $modified; |
| 48 | + | ||
| 49 | + /** | ||
| 50 | + * @see LogisticsCode::TABLE | ||
| 51 | + * 物流企业代码,具体参考码表3。如不填写,默认使用店铺设置的物流企业 | ||
| 52 | + * | ||
| 53 | + * @var string|null | ||
| 54 | + */ | ||
| 16 | public $logistics_code; | 55 | public $logistics_code; |
| 56 | + | ||
| 57 | + /** | ||
| 58 | + * 支付流水号 | ||
| 59 | + * | ||
| 60 | + * @var string | ||
| 61 | + */ | ||
| 17 | public $pay_no; | 62 | public $pay_no; |
| 63 | + | ||
| 64 | + /** | ||
| 65 | + * 支付方式 | ||
| 66 | + * | ||
| 67 | + * @var string | ||
| 68 | + */ | ||
| 18 | public $pay_mode; | 69 | public $pay_mode; |
| 70 | + | ||
| 71 | + /** | ||
| 72 | + * 支付时间,格式:yyyy-MM-dd HH:mm:ss | ||
| 73 | + * | ||
| 74 | + * @var string | ||
| 75 | + */ | ||
| 19 | public $pay_time; | 76 | public $pay_time; |
| 77 | + | ||
| 78 | + /** | ||
| 79 | + * 运单号, | ||
| 80 | + * BC业务:如不需要换单,即changeFlag字段值为0,则必须填写 | ||
| 81 | + * | ||
| 82 | + * @var string|null | ||
| 83 | + */ | ||
| 20 | public $way_bill_no; | 84 | public $way_bill_no; |
| 85 | + | ||
| 86 | + /** | ||
| 87 | + * 换单标识,1:是,0:否 | ||
| 88 | + * 如运单不需要换成国内落地配运单,则填写0; | ||
| 89 | + * 如运单需要换成国内落地配运单,则填写1 | ||
| 90 | + * | ||
| 91 | + * @var string|null | ||
| 92 | + */ | ||
| 21 | public $change_flag; | 93 | public $change_flag; |
| 94 | + | ||
| 95 | + /** | ||
| 96 | + * 订单实付总额,浮点数,double,2位小数。 | ||
| 97 | + * 货款+运费+税款-优惠金额,与支付保持一致 | ||
| 98 | + * | ||
| 99 | + * @var float | ||
| 100 | + */ | ||
| 22 | public $payment; | 101 | public $payment; |
| 102 | + | ||
| 103 | + /** | ||
| 104 | + * 运杂费,浮点数,double,2位小数。 | ||
| 105 | + * 不包含在商品价格中的运杂费,如无填0 | ||
| 106 | + * | ||
| 107 | + * @var float | ||
| 108 | + */ | ||
| 23 | public $way_frt_fee; | 109 | public $way_frt_fee; |
| 110 | + | ||
| 111 | + /** | ||
| 112 | + * 运杂费币制,参考码表5。 | ||
| 113 | + * | ||
| 114 | + * @var string | ||
| 115 | + */ | ||
| 24 | public $way_frt_fee_cy; | 116 | public $way_frt_fee_cy; |
| 117 | + | ||
| 118 | + /** | ||
| 119 | + * 保费,浮点数,double,2位小数 | ||
| 120 | + * | ||
| 121 | + * @var float | ||
| 122 | + */ | ||
| 25 | public $way_ind_fee; | 123 | public $way_ind_fee; |
| 124 | + | ||
| 125 | + /** | ||
| 126 | + * 税费,浮点数,double,2位小数 | ||
| 127 | + * | ||
| 128 | + * @var float | ||
| 129 | + */ | ||
| 26 | public $way_tax_fee; | 130 | public $way_tax_fee; |
| 131 | + | ||
| 132 | + /** | ||
| 133 | + * 优惠减免金额,使用积分、虚拟货币、代金券等非现金支付金额,无则填写"0"。浮点数,double,2位小数 | ||
| 134 | + * | ||
| 135 | + * @var float | ||
| 136 | + */ | ||
| 27 | public $discount; | 137 | public $discount; |
| 138 | + | ||
| 139 | + /** | ||
| 140 | + * @see WarehouseCode::TABLE_CODE | ||
| 141 | + * 仓库编码 | ||
| 142 | + * | ||
| 143 | + * @var string | ||
| 144 | + */ | ||
| 28 | public $warehouse_id; | 145 | public $warehouse_id; |
| 146 | + | ||
| 147 | + /** | ||
| 148 | + * @see WarehouseCode::TABLE_DECLARE | ||
| 149 | + * 具体参考码表5.1, | ||
| 150 | + * 如不填,选用店铺设置方案 | ||
| 151 | + * | ||
| 152 | + * @var string | ||
| 153 | + */ | ||
| 29 | public $declare_plan; | 154 | public $declare_plan; |
| 155 | + | ||
| 156 | + /** | ||
| 157 | + * 订购人注册号, 订购人在电商平台唯一注册号 | ||
| 158 | + * | ||
| 159 | + * @var string | ||
| 160 | + */ | ||
| 30 | public $buyer_reg_no; | 161 | public $buyer_reg_no; |
| 162 | + | ||
| 163 | + /** | ||
| 164 | + * 订购人证件类型,1:身份证,2:护照,3:军官证 | ||
| 165 | + * | ||
| 166 | + * @var string | ||
| 167 | + */ | ||
| 31 | public $buyer_indentity_type; | 168 | public $buyer_indentity_type; |
| 169 | + | ||
| 170 | + /** | ||
| 171 | + * 订购人电话号码 | ||
| 172 | + * | ||
| 173 | + * @var string | ||
| 174 | + */ | ||
| 32 | public $buyer_telephone; | 175 | public $buyer_telephone; |
| 176 | + | ||
| 177 | + /** | ||
| 178 | + * 订购人证件号(必须和支付实名认证一致) | ||
| 179 | + * | ||
| 180 | + * @var string | ||
| 181 | + */ | ||
| 33 | public $buyer_identity_card; | 182 | public $buyer_identity_card; |
| 183 | + | ||
| 184 | + /** | ||
| 185 | + * 订购人姓名(必须和实际支付人一致) | ||
| 186 | + * | ||
| 187 | + * @var string | ||
| 188 | + */ | ||
| 34 | public $buyer_name; | 189 | public $buyer_name; |
| 190 | + | ||
| 191 | + /** | ||
| 192 | + * 收货人姓名 | ||
| 193 | + * | ||
| 194 | + * @var string | ||
| 195 | + */ | ||
| 35 | public $receiver_name; | 196 | public $receiver_name; |
| 197 | + | ||
| 198 | + /** | ||
| 199 | + * 收货人证件类型,1:身份证,2:护照,3:军官证 | ||
| 200 | + * | ||
| 201 | + * @var string | ||
| 202 | + */ | ||
| 36 | public $receiver_identity_type; | 203 | public $receiver_identity_type; |
| 204 | + | ||
| 205 | + /** | ||
| 206 | + * 收货人证件号码 | ||
| 207 | + * | ||
| 208 | + * @var string | ||
| 209 | + */ | ||
| 37 | public $receiver_identity_card; | 210 | public $receiver_identity_card; |
| 211 | + | ||
| 212 | + /** | ||
| 213 | + * 收货人手机号码 | ||
| 214 | + * | ||
| 215 | + * @var string | ||
| 216 | + */ | ||
| 38 | public $receiver_mobile; | 217 | public $receiver_mobile; |
| 218 | + | ||
| 219 | + /** | ||
| 220 | + * 收货人座机号码 | ||
| 221 | + * | ||
| 222 | + * @var string|null | ||
| 223 | + */ | ||
| 39 | public $receiver_phone; | 224 | public $receiver_phone; |
| 225 | + | ||
| 226 | + /** | ||
| 227 | + * 收货人身份证正面照(图片的下载路径) | ||
| 228 | + * | ||
| 229 | + * @var string|null | ||
| 230 | + */ | ||
| 40 | public $identity_image_front; | 231 | public $identity_image_front; |
| 232 | + | ||
| 233 | + /** | ||
| 234 | + * 收货人身份证反面照(图片的下载路径) | ||
| 235 | + * | ||
| 236 | + * @var string|null | ||
| 237 | + */ | ||
| 41 | public $identity_image_back; | 238 | public $identity_image_back; |
| 239 | + | ||
| 240 | + /** | ||
| 241 | + * 国家 | ||
| 242 | + * | ||
| 243 | + * @var string | ||
| 244 | + */ | ||
| 42 | public $receiver_country; | 245 | public $receiver_country; |
| 246 | + | ||
| 247 | + /** | ||
| 248 | + * 省份 | ||
| 249 | + * | ||
| 250 | + * @var string | ||
| 251 | + */ | ||
| 43 | public $receiver_state; | 252 | public $receiver_state; |
| 253 | + /** | ||
| 254 | + * 市 | ||
| 255 | + * | ||
| 256 | + * @var string | ||
| 257 | + */ | ||
| 44 | public $receiver_city; | 258 | public $receiver_city; |
| 259 | + /** | ||
| 260 | + * 区/县 | ||
| 261 | + * | ||
| 262 | + * @var string | ||
| 263 | + */ | ||
| 45 | public $receiver_district; | 264 | public $receiver_district; |
| 265 | + /** | ||
| 266 | + * 地址 | ||
| 267 | + * | ||
| 268 | + * @var string | ||
| 269 | + */ | ||
| 46 | public $receiver_address; | 270 | public $receiver_address; |
| 271 | + /** | ||
| 272 | + * 邮编 | ||
| 273 | + * | ||
| 274 | + * @var string|null | ||
| 275 | + */ | ||
| 47 | public $receiver_zip; | 276 | public $receiver_zip; |
| 277 | + | ||
| 278 | + /** | ||
| 279 | + * @see CountryCode::TABLE | ||
| 280 | + *启运国,国别代码见码表 | ||
| 281 | + * @var string|null | ||
| 282 | + */ | ||
| 48 | public $country; | 283 | public $country; |
| 284 | + | ||
| 285 | + /** | ||
| 286 | + *备注 | ||
| 287 | + * | ||
| 288 | + * @var string|null | ||
| 289 | + */ | ||
| 49 | public $notes; | 290 | public $notes; |
| 291 | + | ||
| 292 | + /** | ||
| 293 | + *商品信息标签,可循环 | ||
| 294 | + * | ||
| 295 | + * @var string | ||
| 296 | + */ | ||
| 50 | public $order_goods; | 297 | public $order_goods; |
| 298 | + | ||
| 299 | + /** | ||
| 300 | + * 商品序号,从1 开始递增 | ||
| 301 | + * | ||
| 302 | + * @var string | ||
| 303 | + */ | ||
| 51 | public $index = []; | 304 | public $index = []; |
| 52 | 305 | ||
| 53 | 306 |
| @@ -49,7 +49,8 @@ class TopWarehouse implements TopWarehouseInterface | @@ -49,7 +49,8 @@ class TopWarehouse implements TopWarehouseInterface | ||
| 49 | if ($closure instanceof \Closure) { | 49 | if ($closure instanceof \Closure) { |
| 50 | call_user_func($closure, $request); | 50 | call_user_func($closure, $request); |
| 51 | } | 51 | } |
| 52 | - return Client::make($request)->send(); | 52 | + |
| 53 | + return Client::request($request); | ||
| 53 | } | 54 | } |
| 54 | 55 | ||
| 55 | } | 56 | } |
| @@ -7,11 +7,6 @@ use Illuminate\Support\ServiceProvider; | @@ -7,11 +7,6 @@ use Illuminate\Support\ServiceProvider; | ||
| 7 | class TopWarehouseServiceProvider extends ServiceProvider | 7 | class TopWarehouseServiceProvider extends ServiceProvider |
| 8 | { | 8 | { |
| 9 | /** | 9 | /** |
| 10 | - * @var string | ||
| 11 | - */ | ||
| 12 | - public const CONFIG_NAME = 'top-warehouse'; | ||
| 13 | - | ||
| 14 | - /** | ||
| 15 | * @var bool | 10 | * @var bool |
| 16 | */ | 11 | */ |
| 17 | protected $defer = true; | 12 | protected $defer = true; |
| @@ -22,7 +22,7 @@ class SignatureUtil | @@ -22,7 +22,7 @@ class SignatureUtil | ||
| 22 | case '': | 22 | case '': |
| 23 | break; | 23 | break; |
| 24 | case 'array': | 24 | case 'array': |
| 25 | - $value = Json::encode($item); | 25 | + $value = JsonUtil::encode($item); |
| 26 | $string .= "{$key}$value}"; | 26 | $string .= "{$key}$value}"; |
| 27 | break; | 27 | break; |
| 28 | default: | 28 | default: |
-
请 注册 或 登录 后发表评论