apiorderquery.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace WY\app\controller;
  3. use WY\app\libs\Controller;
  4. if (!defined('WY_ROOT')) {
  5. exit;
  6. }
  7. class apiorderquery extends Controller
  8. {
  9. public function index()
  10. {
  11. $customerid = $this->req->request('customerid');
  12. $sdorderno = $this->req->request('sdorderno');
  13. $reqtime = $this->req->request('reqtime');
  14. $sign = $this->req->request('sign');
  15. if ($customerid == '' || $sdorderno == '' || $reqtime == '' || $sign == '') {
  16. echo json_encode(array('status' => 0, 'msg' => '参数不完整'));
  17. exit;
  18. }
  19. if (!($users = $this->model()->select('apikey')->from('users')->where(array('fields' => 'id=? and is_state=1', 'values' => array($customerid)))->fetchRow())) {
  20. echo json_encode(array('status' => 0, 'msg' => '商户不存在'));
  21. exit;
  22. }
  23. $signstr = 'customerid=' . $customerid . '&sdorderno=' . $sdorderno . '&reqtime=' . $reqtime . '&' . $users['apikey'];
  24. $mysign = md5($signstr);
  25. if ($sign != $mysign) {
  26. echo json_encode(array('status' => 0, 'msg' => '签名验证失败'));
  27. exit;
  28. }
  29. $fdate = time() - 60 * 60 * 24 * 3;
  30. if (!($orders = $this->model()->select()->from('orders')->where(array('fields' => 'userid=? and sdorderno=? and addtime>=?', 'values' => array($customerid, $sdorderno, $fdate)))->fetchRow())) {
  31. echo json_encode(array('status' => 0, 'msg' => '订单不存在'));
  32. exit;
  33. }
  34. if ($orders['is_state'] == '1') {
  35. echo json_encode(array('status' => 1, 'msg' => '成功订单', 'sdorderno' => $sdorderno, 'total_fee' => $orders['realmoney'], 'sdpayno' => $orders['orderid']));
  36. exit;
  37. }
  38. echo json_encode(array('status' => 0, 'msg' => '失败订单'));
  39. exit;
  40. }
  41. }
  42. ?>