dispatch_notify.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 16/1/22
  6. * Time: 上午10:22
  7. */
  8. //tid-订单号,status-1,consign_time-发货时间,logistics_no-快递流水,logistics_company-快递公司
  9. fcgi_header("Content-Type: text/plain; charset=UTF-8");
  10. try
  11. {
  12. $order_sn = trim($_POST['tid']);
  13. $status = intval($_POST['status']);
  14. $consign_time = urldecode(trim($_POST['consign_time']));
  15. $ship_time = strtotime($consign_time);
  16. $logistics_no = trim($_POST['logistics_no']);
  17. $logistics_company = $_POST['logistics_company'];
  18. Log::record("dispatch notify value: order_sn = {$order_sn},status={$status},consign_time = {$consign_time} logistics_no = {$logistics_no} logistics_company = {$logistics_company}.",Log::DEBUG);
  19. $express = Model('express')->field('id')->where(array('e_oms_code' => $logistics_company))->select();
  20. if(empty($express) || count($express) == 0) {
  21. echo 'FAIL';
  22. return;
  23. }
  24. $shipping_express_id = $express[0]['id'];
  25. $remote_addr = $_SERVER['REMOTE_ADDR'];
  26. if(!empty($order_sn) && !empty($logistics_no))
  27. {
  28. if($status == 1)
  29. {
  30. $order = Model('order');
  31. $ret = $order->setOrderDelivery($order_sn,$shipping_express_id,$logistics_no,$ship_time);
  32. if($ret) {
  33. echo 'SUCCESS';
  34. } else {
  35. echo 'AGAIN';
  36. }
  37. }
  38. else{
  39. echo 'SUCCESS';
  40. }
  41. }
  42. else
  43. {
  44. echo 'FAIL';
  45. }
  46. }
  47. catch (WxPayException $e)
  48. {
  49. Log::record($e->errorMessage(),Log::ERR);
  50. echo 'AGAIN';
  51. }