Trace.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * =========================================================
  9. */
  10. namespace app\model\express;
  11. use app\model\BaseModel;
  12. /**
  13. * 物流配送
  14. */
  15. class Trace extends BaseModel
  16. {
  17. /**
  18. * 物流跟踪信息
  19. * @param $code
  20. */
  21. public function trace($code, $company_id, $site_id, $mobile)
  22. {
  23. // $result = array(
  24. // 'success' => true,//成功与否
  25. // 'reason' => '',//错误原因
  26. // 'status' => '1',//物流状态:0-无轨迹,1-已揽收, 2-在途中 201-到达派件城市,3-签收,4-问题件
  27. // 'status_name' => '已揽收',//物流状态名称:0-无轨迹,1-已揽收, 2-在途中 201-到达派件城市,3-签收,4-问题件,
  28. // 'shipper_code' => 'SH',//快递公司编码
  29. // 'logistic_code' => $code,//物流运单号
  30. // 'list' => array(
  31. // [
  32. // 'datetime' => '2015-03-08 01:15:00',
  33. // 'remark' => '离开广州市 发往北京市(经转)',
  34. // ]
  35. // )
  36. // );
  37. $express_company_model = new ExpressCompanyTemplate();
  38. $company_info_result = $express_company_model->getExpressCompanyTemplateInfo([['company_id', '=', $company_id]]);
  39. if (empty($company_info_result['data']))
  40. return $this->success(['success' => false, 'reason' => '物流公司信息不完整!']);
  41. $company_info_result['data']['site_id'] = $site_id;
  42. $result = event('Trace', ['code' => $code, 'express_no_data' => $company_info_result['data'], 'mobile' => $mobile], true);
  43. if (empty($result)) {
  44. $data = ['success' => false, 'reason' => '抱歉,没有启用的物流方式'];
  45. return $this->success($data);
  46. }
  47. if ($result['code'] < 0) {
  48. $data = ['success' => false, 'reason' => '抱歉,暂无物流记录'];
  49. return $this->success($data);
  50. }
  51. return $result;
  52. }
  53. }