getOne(['user_no'=>$user_no,'is_default'=>1,'status'=>1]); // print_r($userDefaultAddress);exit; if(empty($userDefaultAddress)){ $data = [ 'code'=>'400', 'msg'=>'没有设置默认地址', 'data'=>[], ]; helperService::returnJson($data); } $userDefaultAddress['province'] = ServiceBaseInfo::getAddress(['level'=>1,'code'=>$userDefaultAddress['province_code']]); // print_r($userDefaultAddress['province']);exit; $userDefaultAddress['province'] = current($userDefaultAddress['province']); $userDefaultAddress['city'] = ServiceBaseInfo::getAddress(['level'=>2,'code'=>$userDefaultAddress['city_code']]); $userDefaultAddress['city'] = current($userDefaultAddress['city']); $userDefaultAddress['area'] = ServiceBaseInfo::getAddress(['level'=>3,'code'=>$userDefaultAddress['area_code']]); $userDefaultAddress['area'] = current($userDefaultAddress['area']); $data = [ 'code'=>'200', 'msg'=>'操作成功', 'data'=>$userDefaultAddress, ]; helperService::returnJson($data); } /** * 获得用户的所有地址 */ public function getUserAddress(){ $user_no = Session::get('user_no'); $userAddressModel = new UserAddressModel(); $userAddress = $userAddressModel->getMulti(['user_no'=>$user_no,'status'=>1],'is_default asc'); if(empty($userAddress)){ $data = [ 'code'=>'400', 'msg'=>'没有设置收货地址', 'data'=>[], ]; helperService::returnJson($data); } foreach ($userAddress as &$address){ $address['province'] = ServiceBaseInfo::getAddress(['level'=>1,'code'=>$address['province_code']]); $address['province'] = current($address['province']); $address['city'] = ServiceBaseInfo::getAddress(['level'=>2,'code'=>$address['city_code']]); $address['city'] = current($address['city']); $address['area'] = ServiceBaseInfo::getAddress(['level'=>3,'code'=>$address['area_code']]); $address['area'] = current($address['area']); } $data = [ 'code'=>'200', 'msg'=>'操作成功', 'data'=>$userAddress, ]; helperService::returnJson($data); } /** * 修改地址 */ public function editUserAddress(){ $params = $this->request->param(); $rule = [ ['address_id','require|number'], ]; $validate = new Validate($rule); if(!$validate->check($params)){ $data = [ 'code'=>'400', 'msg'=>$validate->getError(), 'data'=>[] ]; helperService::returnJson($data); } $userAddressModel = new UserAddressModel(); $userAddressInfo = $userAddressModel->getOne(['address_id'=>$params['address_id'],'status'=>1]); if(empty($userAddressInfo)){ $data = [ 'code'=>'400', 'msg'=>'地址信息有误', 'data'=>[] ]; helperService::returnJson($data); } $userAddressInfo['province'] = ServiceBaseInfo::getAddress(['level'=>1,'code'=>$userAddressInfo['province_code']]); $userAddressInfo['province'] = current($userAddressInfo['province']); $userAddressInfo['city'] = ServiceBaseInfo::getAddress(['level'=>2,'code'=>$userAddressInfo['city_code']]); $userAddressInfo['city'] = current($userAddressInfo['city']); $userAddressInfo['area'] = ServiceBaseInfo::getAddress(['level'=>3,'code'=>$userAddressInfo['area_code']]); $userAddressInfo['area'] = current($userAddressInfo['area']); $data = [ 'code'=>'200', 'msg'=>'success', 'data'=>$userAddressInfo ]; helperService::returnJson($data); } /** * 省市区三级联动 */ public function getAddress(){ $params = $this->request->param(); $rule = [ ['level','require|number'], ['code','number'], ]; $validate = new Validate($rule); if(!$validate->check($params)){ $data = [ 'code'=>'400', 'msg'=>$validate->getError(), 'data'=>[] ]; helperService::returnJson($data); } $arr['level'] = $params['level']; if(isset($params['code'])){ $arr['code'] = $params['code']; } $return = ServiceBaseInfo::getAddress($arr); $data = [ 'code'=>'200', 'msg'=>'success', 'data'=>$return, ]; helperService::returnJson($data); } /** * 保存用户收货地址 */ public function saveUserAddress(){ $params = $this->request->param(); $rule = [ ['consignee|收货人','require'], ['mobile|手机号','require|number|length:11'], ['province|省份','require'], ['city|城市','require'], // ['area|地区','require'], ['address|详细地址','require'], ['is_default|是否是默认地址','require|between:1,2'] ]; $validate = new Validate($rule); if(!$validate->check($params)){ $data = [ 'code'=>'400', 'msg'=>$validate->getError(), 'data'=>[] ]; helperService::returnJson($data); } $addressId = isset($params['addressId'])?$params['addressId']:''; $userAddressModel = new UserAddressModel(); $user_no = Session::get('user_no'); $insertData = [ 'user_no'=>$user_no, 'province_code'=>$params['province'], 'city_code'=>$params['city'], 'area_code'=>$params['area'], 'consignee'=>$params['consignee'], 'address'=>$params['address'], 'address_mobile'=>$params['mobile'], 'is_default'=>$params['is_default'], 'status'=>'1' ]; $checkInfo = $userAddressModel->getOne(['address_id'=>$addressId]); if($insertData['is_default'] == 1){ $userAddressModel->saveData(['is_default'=>2],['status'=>1,'user_no'=>$user_no,'is_default'=>'1']); }else{ if($checkInfo['is_default'] == 1){ $insertData['is_default'] = 1; } } $return = $userAddressModel->saveData($insertData,array_filter(['address_id'=>$addressId])); if($return === false){ $data = [ 'code'=>'400', 'msg'=>'收货地址保存失败', 'data'=>[], ]; helperService::returnJson($data); } $data = [ 'code'=>'200', 'msg'=>'保存成功', 'data'=>[], ]; helperService::returnJson($data); } /** * 删除用户的地址信息 */ public function deleteUserAddress(){ $params = $this->request->param(); $rule = [ ['address_id','require|number'], ]; $validate = new Validate($rule); if(!$validate->check($params)){ $data = [ 'code'=>'400', 'msg'=>$validate->getError(), 'data'=>[] ]; helperService::returnJson($data); } $userAddressModel = new UserAddressModel(); $return = $userAddressModel->saveData(['status'=>2],['address_id'=>$params['address_id']]); if($return === false){ $data = [ 'code'=>'400', 'msg'=>'收货地址删除失败', 'data'=>[], ]; helperService::returnJson($data); } $data = [ 'code'=>'200', 'msg'=>'收货地址删除成功', 'data'=>[], ]; helperService::returnJson($data); } /** * 保存用户的默认收货地址 */ public function saveDefaultAddress(){ $params = $this->request->param(); $rule = [ ['address_id','require|number'], ]; $validate = new Validate($rule); if(!$validate->check($params)){ $data = [ 'code'=>'400', 'msg'=>$validate->getError(), 'data'=>[] ]; helperService::returnJson($data); } $userAddressModel = new UserAddressModel(); $return = $userAddressModel->saveData(['is_default'=>1],['address_id'=>$params['address_id']]); if($return === false){ $data = [ 'code'=>'400', 'msg'=>'收货地址删除失败', 'data'=>[], ]; helperService::returnJson($data); } $data = [ 'code'=>'200', 'msg'=>'收货地址删除成功', 'data'=>[], ]; helperService::returnJson($data); } }