123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297 |
- <?php
- namespace app\index\controller;
- use app\common\model\ChangePointModel;
- use app\common\model\MessageModel;
- use app\common\model\ProductConfigModel;
- use app\common\model\OrderModel;
- use app\common\model\PayCodeModel;
- use app\common\model\UserAddressModel;
- use app\common\model\UserModel;
- use app\common\service\helperService;
- use app\common\service\ServiceBaseInfo;
- use app\common\service\ServiceSmsApi;
- use think\Config;
- use think\Db;
- use think\Session;
- use think\Validate;
- class AddressInterfaces extends Base
- {
- /**
- * 获得用户的默认地址
- */
- public function getUserDefaultAddress(){
- $user_no = Session::get('user_no');
- $userAddressModel = new UserAddressModel();
- $userDefaultAddress = $userAddressModel->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);
- }
- }
|