PayOrderModel.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace app\common\model;
  3. use think\Db;
  4. use think\Model;
  5. /**
  6. * 支付订单
  7. */
  8. class PayOrderModel extends Model
  9. {
  10. // 表名
  11. protected $name = 'pay_order';
  12. // 开启自动写入时间戳字段
  13. protected $autoWriteTimestamp = false;
  14. // 定义时间戳字段名
  15. protected $createTime = false;
  16. protected $updateTime = false;
  17. protected $deleteTime = false;
  18. /**
  19. * 老年大学活动支付回调
  20. * @param $out_trade_no
  21. * @return array
  22. */
  23. public static function university_event($out_trade_no)
  24. {
  25. if (!$info = self::where('out_trade_no',$out_trade_no)->find()){
  26. return [false,'未找到订单'];
  27. }
  28. if ($info['order_status'] == 1){
  29. return [true,'订单已支付'];
  30. }
  31. Db::startTrans();
  32. //更新订单状态
  33. if (!self::where(['id' => $info['id']])->update(['status' => 1])) {
  34. Db::rollback();
  35. return [false,'订单状态更新失败'];
  36. }
  37. if (!UniversityEventApplyModel::where('id',$info['table_id'])->update(['status' => 1,'pay_time' => time()])) {
  38. Db::rollback();
  39. return [false,'活动订单状态更新失败'];
  40. }
  41. Db::commit();
  42. return [true,'操作成功'];
  43. }
  44. }