PackageController.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. namespace App\Http\Controllers\api\thirdPart\hengli;
  3. use App\Http\Controllers\api\thirdPart\weight\WeightBaseController;
  4. use App\Log;
  5. use Illuminate\Http\Request;
  6. class PackageController extends WeightBaseController
  7. {
  8. // 参数
  9. protected $weight = 'weight'; // 重量
  10. protected $length = 'length'; // 长
  11. protected $width = 'width'; // 宽
  12. protected $height = 'height'; // 高
  13. protected $code = 'code'; // 快递单号
  14. protected $weight_at = 'weight_at'; // 称重时间
  15. protected $hid = 'hid'; // 称重设备id
  16. protected $name = 'HengLi'; // 名称
  17. public function new_(Request $request)
  18. {
  19. app('LogService')->log(__METHOD__, $this->name, "上传信息:". json_encode($request->getContent()));
  20. return $this->new($request);
  21. }
  22. public function conversionRequest($request)
  23. {
  24. $params = [];
  25. $arr = $request->all();
  26. $data = array_key_first($arr);
  27. $data = explode(',',$data);
  28. foreach ($data as $key=>$value){
  29. switch ($key){
  30. case '0':
  31. $params['hid'] = $value;
  32. break;
  33. case '1':
  34. $params['code'] = $value;
  35. break;
  36. case '2':
  37. $params['weight'] = $value;
  38. break;
  39. case '3':
  40. $params['weight_at'] = $value;
  41. break;
  42. default:
  43. break;
  44. }
  45. }
  46. return $params;
  47. }
  48. public function getWeightValue($params)
  49. {
  50. $value = $this->getValue($this->weight,$params);
  51. return str_replace('_','.',$value);
  52. }
  53. // 信息返回
  54. // 返回称重成功信息
  55. public function getSuccessMessage($params, $orderPackage): array
  56. {
  57. return ['success' => true, 'message' => '称重成功'];
  58. }
  59. // 返回包裹未找到异常
  60. public function getNotFindOrderPackageMessage($params, $orderPackage): string
  61. {
  62. return json_encode(['success'=>false,'message'=>'未找打包裹信息',JSON_UNESCAPED_UNICODE]);
  63. }
  64. // 返回富勒信息未找到异常
  65. public function getNotFindOrderHeaderMessage($params, $orderPackage):string
  66. {
  67. return json_encode(['success'=>false,'message'=> '富勒信息未找到'],JSON_UNESCAPED_UNICODE);
  68. }
  69. // 返回称重下发错误
  70. public function getWeightMessage($orderPackage,$e)
  71. {
  72. return json_encode(['success'=>false,'message'=> $e->getMessage],JSON_UNESCAPED_UNICODE);
  73. }
  74. }