count(); } /** * 修改用户收货地址 * * @param $item * @param $userUid * @return int */ public function updateAddress($item, $userUid) { if ($item['name']) { $upData['name'] = $item['name']; } if ($item['phone']) { $upData['phone'] = $item['phone']; } if ($item['province'] && $item['city'] && $item['region']) { $upData['province'] = $item['province']; $upData['city'] = $item['city']; $upData['region'] = $item['region']; } if ($item['address']) { $upData['address'] = $item['address']; } if ($item['default_address']) { if ($item['default_address'] == 1) { $res = UserShippingAddressModel::where('user_uid', $userUid)->update(['is_default' => 2]); if (!$res) { return ''; } } $upData['is_default'] = $item['default_address']; } return UserShippingAddressModel::where(['uid' => $item['uid'], 'user_uid' => $userUid])->update($upData); } /** * 获取用户的收货地址 * * @param $userUid * @return array|mixed */ public function getUserAddress($userUid) { $data = $this->findAllBy('user_uid', $userUid, ['name', 'uid', 'phone', 'address', 'is_default', 'province', 'city', 'region']); if (empty($data)) { return []; } $res = []; foreach ($data as $val) { if ($val['is_default'] == 1) { unset($val['is_default']); $res = $val; break; } } if (empty($res)) { unset($data[0]['is_default']); $res = $data[0]; } return $res; } public function getAddressCount($userUid) { return UserShippingAddressModel::query()->where('user_uid', $userUid)->count(); } }