MallOrderModel.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace addons\QiJuhe\common\models;
  3. use common\models\order\Order;
  4. use yii\base\Model;
  5. /**
  6. * Class MallOrderModel
  7. * @package addons\QiJuhe\common\models
  8. */
  9. class MallOrderModel extends Order
  10. {
  11. /**
  12. * 获取商城订单
  13. *
  14. * @param integer $order_id
  15. * @return Order
  16. */
  17. public static function getOrder($order_id)
  18. {
  19. $model = self::find();
  20. $model->select('id, user_id, mall_id, order_no, mobile, region_name, address, pay_status, receiver_name, order_source, remark');
  21. return $model->where(['id' => $order_id])
  22. ->with(['detail' => function($query) {
  23. $query->select('id, order_id, num, goods_attr_id, goods_id');
  24. }])
  25. ->one();
  26. }
  27. /**
  28. * 获取地址
  29. *
  30. * @return array
  31. */
  32. public function getRegion()
  33. {
  34. $region = $this->region_name;
  35. list($province, $city, $area, $town) = explode(' ', $region);
  36. $town = $town ?? $area;
  37. $address = $this->address;
  38. return compact('province', 'city', 'area', 'town', 'address');
  39. }
  40. /**
  41. * 转换成普通订单
  42. *
  43. * @return boolean
  44. */
  45. public function changeOrder()
  46. {
  47. $this->order_source = '';
  48. return $this->save();
  49. }
  50. }