UserAddress.php 1.3 KB

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