ScanPayClass.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. namespace bizHd\order\classes;
  3. use biz\goods\classes\GoodsClass;
  4. use biz\goods\models\Goods;
  5. use biz\shop\classes\ShopCapitalClass;
  6. use biz\shop\classes\ShopClass;
  7. use biz\shop\classes\ShopExtClass;
  8. use biz\stat\classes\StatOrderCountClass;
  9. use biz\stock\classes\GoodsStockRecordClass;
  10. use bizGhs\order\classes\CheckOrderClass;
  11. use bizGhs\product\classes\ProductClass;
  12. use bizGhs\stock\classes\StockRecordClass;
  13. use bizHd\custom\classes\CustomClass;
  14. use bizHd\item\classes\ItemClass;
  15. use bizHd\merchant\classes\SjClass;
  16. use bizHd\refund\classes\HdRefundClass;
  17. use bizHd\shop\classes\MainClass;
  18. use bizHd\shop\classes\ShopMoneyChangeClass;
  19. use bizHd\user\classes\UserClass;
  20. use bizHd\work\classes\WorkClass;
  21. use common\components\dict;
  22. use common\components\imgUtil;
  23. use common\components\miniUtil;
  24. use common\components\noticeUtil;
  25. use common\components\orderSn;
  26. use common\components\printUtil;
  27. use common\components\stringUtil;
  28. use common\components\util;
  29. use Yii;
  30. use bizHd\base\classes\BaseClass;
  31. use common\components\lakala\Lakala;
  32. class ScanPayClass extends BaseClass
  33. {
  34. public static $baseFile = '\bizHd\order\models\ScanPay';
  35. public static function getPayList($where)
  36. {
  37. return self::getList('*', $where, 'addTime DESC,id DESC');
  38. }
  39. public static function addOrder($data)
  40. {
  41. $mainId = $data['mainId'] ?? 0;
  42. $shopId = $data['shopId'] ?? 0;
  43. $hdId = $data['hdId'] ?? 0;
  44. $customId = $data['customId'] ?? 0;
  45. $snData = ['mainId' => $mainId, 'shopId' => $shopId, 'hdId' => $hdId, 'customId' => $customId];
  46. $data['orderSn'] = orderSn::getScanPaySn($snData);
  47. return self::add($data, true);
  48. }
  49. public static function thirdPay($payWay, $orderSn, $totalFee, $attach, $transactionId)
  50. {
  51. $order = self::getByCondition(['orderSn' => $orderSn], true);
  52. if (empty($order)) {
  53. noticeUtil::push('扫码付款成功,支付回调,单号:' . $orderSn . ' 金额:' . $totalFee . ' 回调id:' . $transactionId . ' 附件:' . $attach . ',没有找到单号', '15280215347');
  54. $msg = "没有找到零售订单 orderSn:{$orderSn}";
  55. Yii::info($msg);
  56. util::fail($msg);
  57. }
  58. if ($order->actPrice != $totalFee) {
  59. noticeUtil::push("扫码付款成功,支付回调错误,订单金额与回调通知金额不一致 orderSn:{$orderSn} {$order->actPrice} {$totalFee} 附件:{$attach}", '15280215347');
  60. $msg = "零售订单金额与回调通知金额不一致 orderSn:{$orderSn} {$order->actPrice} {$totalFee}";
  61. Yii::info($msg);
  62. util::fail($msg);
  63. }
  64. $id = $order->id;
  65. $order = self::getLockById($id);
  66. $date = date("Y-m-d H:i:s");
  67. $order->payStatus = 1;
  68. $order->status = 2;
  69. $order->payTime = $date;
  70. $order->returnCode = $transactionId;
  71. $order->save();
  72. self::payAfter($order, $payWay);
  73. }
  74. public static function payAfter($order, $payWay)
  75. {
  76. }
  77. }