LockUserService.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace addons\Happiness\common\service;
  3. use addons\Happiness\common\models\HappinessLockUser;
  4. use addons\Happiness\common\models\HappinessStore;
  5. use addons\Happiness\common\service\BaseService;
  6. use common\enums\StatusEnum;
  7. class LockUserService extends BaseService
  8. {
  9. //用户第一次下单锁定店铺
  10. public function lockUser($order_no,$user_id,$store_id,$mall_id)
  11. {
  12. //先查看有没有订单
  13. $has=HappinessLockUser::find()->where(['user_id'=>$user_id,'status'=>StatusEnum::ENABLED,'mall_id'=>$mall_id])
  14. ->asArray()
  15. ->one();
  16. if(!empty($has))
  17. {
  18. return true;
  19. }
  20. //不可以锁定店主自己
  21. $store=HappinessStore::find()->where(['id'=>$store_id,'status'=>StatusEnum::ENABLED,'mall_id'=>$mall_id])->asArray()->one();
  22. if($store['user_id']==$user_id)
  23. {
  24. return true;
  25. }
  26. $data=[
  27. 'order_no'=>$order_no,
  28. 'user_id'=>$user_id,
  29. 'store_id'=>$store_id,
  30. 'mall_id'=>$mall_id,
  31. ];
  32. $res=HappinessLockUser::setData($data);
  33. if($res===false)
  34. {
  35. $this->error=HappinessLockUser::setStaticError();
  36. return false;
  37. }
  38. }
  39. public function getLockStoreUser($user_id,$mall_id)
  40. {
  41. $lock_user=HappinessLockUser::find()->where(['user_id'=>$user_id,'status'=>StatusEnum::ENABLED,'mall_id'=>$mall_id])->asArray()
  42. ->one();
  43. if(!empty($lock_user))
  44. {
  45. $store_user=HappinessStore::find()->where(['id'=>$lock_user['store_id'],'status'=>StatusEnum::ENABLED,'mall_id'=>$mall_id])
  46. ->asArray()->one();
  47. if(!empty($store_user))
  48. {
  49. return $store_user['user_id'];
  50. }
  51. }
  52. return false;
  53. }
  54. }