StoreService.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace addons\TinyShop\services\order;
  3. use common\components\Service;
  4. use common\helpers\ArrayHelper;
  5. use common\helpers\StringHelper;
  6. use yii\web\UnprocessableEntityHttpException;
  7. use addons\TinyShop\common\models\order\Order;
  8. use addons\TinyShop\common\models\order\Store;
  9. /**
  10. * Class StoreService
  11. * @package addons\TinyShop\services\order
  12. * @author jianyan74 <751393839@qq.com>
  13. */
  14. class StoreService extends Service
  15. {
  16. /**
  17. * @param $store
  18. * @param Order $order
  19. */
  20. public function create($store, Order $order)
  21. {
  22. $model = new Store();
  23. $model = $model->loadDefaultValues();
  24. $model->attributes = ArrayHelper::toArray($store);
  25. $model->merchant_id = $order->merchant_id;
  26. $model->member_id = $order->buyer_id;
  27. $model->order_id = $order->id;
  28. $model->store_id = $store->id;
  29. $model->pickup_code = StringHelper::random(6, true);
  30. if (!$model->save()) {
  31. throw new UnprocessableEntityHttpException($this->getError($model));
  32. }
  33. return $model;
  34. }
  35. /**
  36. * @param $order_id
  37. * @return array|null|\yii\db\ActiveRecord|Order
  38. */
  39. public function findById($order_id)
  40. {
  41. return Store::find()
  42. ->where(['order_id' => $order_id])
  43. ->one();
  44. }
  45. }
粤ICP备19079148号