StoreOrderCartInfo.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <?php
  2. namespace app\models\store;
  3. use crmeb\basic\BaseModel;
  4. use crmeb\traits\ModelTrait;
  5. /**
  6. * TODO 订单记录Model
  7. * Class StoreOrderCartInfo
  8. * @package app\models\store
  9. */
  10. class StoreOrderCartInfo extends BaseModel
  11. {
  12. /**
  13. * 模型名称
  14. * @var string
  15. */
  16. protected $name = 'store_order_cart_info';
  17. use ModelTrait;
  18. public static function setCartInfo($oid, array $cartInfo)
  19. {
  20. $group = [];
  21. foreach ($cartInfo as $cart) {
  22. $group[] = [
  23. 'oid' => $oid,
  24. 'cart_id' => $cart['id'],
  25. 'product_id' => $cart['productInfo']['id'],
  26. 'cart_info' => json_encode($cart),
  27. 'unique' => md5($cart['id'] . '' . $oid)
  28. ];
  29. }
  30. return self::setAll($group);
  31. }
  32. /**
  33. * 得到还没参加挖矿的一个订单号
  34. *
  35. * @param $uid
  36. * @return mixed
  37. */
  38. public static function getMiningOrderId($uid)
  39. {
  40. $row = self::where('so.uid', $uid)
  41. ->where('so.paid', 1)
  42. ->where('so.status', '>=', 0)
  43. ->where('so.refund_status', 0)
  44. ->where('so.is_del', 0)
  45. ->where('so.is_system_del', 0)
  46. ->where('ci.mine', 0)
  47. ->alias('ci')->join('store_order so', 'ci.oid=so.id')->field('ci.oid')->limit(1)->value('oid');
  48. return $row;
  49. }
  50. /**
  51. * 标记为已参加挖矿
  52. *
  53. * @param $orderId
  54. * @return StoreOrderCartInfo
  55. */
  56. public static function setMining($orderId, $mine = 1)
  57. {
  58. return self::where('oid', $orderId)->update(['mine' => $mine]);
  59. }
  60. }