UserAddress.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. /**
  3. *
  4. * @author: xaboy<365615158@qq.com>
  5. * @day: 2017/12/25
  6. */
  7. namespace app\ebapi\model\user;
  8. use basic\ModelBasic;
  9. use traits\ModelTrait;
  10. /** 用户收货地址
  11. * Class UserAddress
  12. * @package app\ebapi\model\user
  13. */
  14. class UserAddress extends ModelBasic
  15. {
  16. use ModelTrait;
  17. protected $insert = ['add_time'];
  18. protected function setAddTimeAttr()
  19. {
  20. return time();
  21. }
  22. public static function setDefaultAddress($id,$uid)
  23. {
  24. self::beginTrans();
  25. $res1 = self::where('uid',$uid)->update(['is_default'=>0]);
  26. $res2 = self::where('id',$id)->where('uid',$uid)->update(['is_default'=>1]);
  27. $res =$res1 !== false && $res2 !== false;
  28. self::checkTrans($res);
  29. return $res;
  30. }
  31. public static function userValidAddressWhere($model=null,$prefix = '')
  32. {
  33. if($prefix) $prefix .='.';
  34. $model = self::getSelfModel($model);
  35. return $model->where("{$prefix}is_del",0);
  36. }
  37. public static function getUserValidAddressList($uid,$page=1,$limit=8,$field = '*')
  38. {
  39. return self::userValidAddressWhere()->where('uid',$uid)->order('add_time DESC')->field($field)->page((int)$page,(int)$limit)->select()->toArray()?:[];
  40. }
  41. public static function getUserDefaultAddress($uid,$field = '*')
  42. {
  43. return self::userValidAddressWhere()->where('uid',$uid)->where('is_default',1)->field($field)->find();
  44. }
  45. }