|  |  | 
 |  |  |        return null; | 
 |  |  |    } | 
 |  |  |     /** | 
 |  |  |      * 获取用户登陆token | 
 |  |  |      * 获取B端用户登陆token | 
 |  |  |      * @param mobile | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |    @Override | 
 |  |  |    public ZSZXCatalogResponse getZSZXCatalogs(){ | 
 |  |  |        ZSZXCatalogResponse response = new ZSZXCatalogResponse(); | 
 |  |  |        ZTCatalogListRequest param = new ZTCatalogListRequest(); | 
 |  |  |        param.setCatalogCode(ZTConstants.CatalogCode.ZHISHUO_ZHUANGXIU); | 
 |  |  |        List<ZTCatalogInfoResponse> cataList = getCatalogList(param); | 
 |  |  |         if(cataList!=null ){ | 
 |  |  |             for(ZTCatalogInfoResponse data : cataList){ | 
 |  |  |                 if(StringUtils.equals(data.getCode(), ZTConstants.CatalogCode.JIADE_ID)){ | 
 |  |  |                     response.setJdId(data); | 
 |  |  |                 }else if(StringUtils.equals(data.getCode(), ZTConstants.CatalogCode.CHUFANGSHEJI)){ | 
 |  |  |                     response.setCfsj(data); | 
 |  |  |                 }else if(StringUtils.equals(data.getCode(), ZTConstants.CatalogCode.QW_SHEJI)){ | 
 |  |  |                     response.setQwsj(data); | 
 |  |  |                 }else if(StringUtils.equals(data.getCode(), ZTConstants.CatalogCode.SHOUNASHEJI)){ | 
 |  |  |                     response.setSnsj(data); | 
 |  |  |                 } | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |        return response; | 
 |  |  |    public ZTSysuserGetTokenResponse getSysuserToken(String  mobile){ | 
 |  |  |        ZTBaseResponse<ZTSysuserGetTokenResponse> result = sendHttpRequest( | 
 |  |  |                ZTConstants.IntegerUrl.USER_MOBILE_FASTLOGIN_URL+"?mobile="+mobile, | 
 |  |  |                ZTConstants.IntegerName.USER_MOBILE_FASTLOGIN_NAME, | 
 |  |  |                null, | 
 |  |  |                null, | 
 |  |  |                "", | 
 |  |  |                new TypeReference<ZTBaseResponse<ZTSysuserGetTokenResponse>>(){}); | 
 |  |  |        if(result!=null){ | 
 |  |  |            return result.getData(); | 
 |  |  |        } | 
 |  |  |        return null; | 
 |  |  |    } | 
 |  |  |     /** | 
 |  |  |      * 获取用户登陆token | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 用户信息同步 | 
 |  |  |      * @param param | 
 |  |  | 
 |  |  |         ZTBaseResponse<ZTUserGetTokenResponse> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.USER_UPDATE_URL, | 
 |  |  |                 ZTConstants.IntegerName.USER_UPDATE_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 null, | 
 |  |  |                 null, | 
 |  |  |                 JSONObject.toJSONString(param), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTUserGetTokenResponse>>(){}); | 
 |  |  | //        if(result!=null){ | 
 |  |  | //            return result.getData(); | 
 |  |  | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public      List<ZTTagInfoResponse> getTagList(ZTCatalogListRequest param){ | 
 |  |  |     public List<ZTTagInfoResponse> getTagList(ZTCatalogListRequest param){ | 
 |  |  |         ZTBaseResponse<List<ZTTagInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.TAG_LIST_URL, | 
 |  |  |                 ZTConstants.IntegerName.TAG_LIST_NAME, | 
 |  |  | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTContentListResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  | //            TypeReference<ZTBasePageResponse<ZTContentListResponse>> typeReference = new TypeReference<ZTBasePageResponse<ZTContentListResponse>>(){}; | 
 |  |  | //            ZTBasePageResponse<ZTContentListResponse> ztBasePageResponse = JSONObject.parseObject(result.getData(), typeReference.getType()); | 
 |  |  | //            return ztBasePageResponse; | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取视频列表分页 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTZbDecoInfoResponse> pageZbDecoList(ZTContentListRequest param){ | 
 |  |  |         ZTBaseResponse<ZTBasePageResponse<ZTZbDecoInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.ZBDECO_PAGE_LIST_URL, | 
 |  |  |                 ZTConstants.IntegerName.ZBDECO_PAGE_LIST_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTZbDecoInfoResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取视频列表分页 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTVideoInfoResponse> pageVideoList(ZTContentListRequest param){ | 
 |  |  |         ZTBaseResponse<ZTBasePageResponse<ZTVideoInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.VIDEO_PAGE_LIST_URL, | 
 |  |  |                 ZTConstants.IntegerName.VIDEO_PAGE_LIST_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTVideoInfoResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取产品资讯列表分页 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTProductNewsInfoResponse> pageProductNewsList(ZTContentListRequest param){ | 
 |  |  |         ZTBaseResponse<ZTBasePageResponse<ZTProductNewsInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.PRODUCT_NEWS_PAGE_LIST_URL, | 
 |  |  |                 ZTConstants.IntegerName.PRODUCT_NEWS_PAGE_LIST_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTProductNewsInfoResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取产品列表分页 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTProductInfoResponse> pageProductList(ZTContentListRequest param){ | 
 |  |  |         ZTBaseResponse<ZTBasePageResponse<ZTProductInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.PRODUCT_PAGE_LIST_URL, | 
 |  |  |                 ZTConstants.IntegerName.PRODUCT_PAGE_LIST_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTProductInfoResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取全屋案例列表分页 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTCaseInfoResponse> pageWholecaseList(ZTContentListRequest param){ | 
 |  |  |         ZTBaseResponse<ZTBasePageResponse<ZTCaseInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.WHOLECASE_PAGE_LIST_URL, | 
 |  |  |                 ZTConstants.IntegerName.WHOLECASE_PAGE_LIST_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTCaseInfoResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取实景案例列表分页 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTRealcaseInfoResponse> pageRealcaseList(ZTContentListRequest param){ | 
 |  |  |         ZTBaseResponse<ZTBasePageResponse<ZTRealcaseInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.REALCASE_PAGE_LIST_URL, | 
 |  |  |                 ZTConstants.IntegerName.REALCASE_PAGE_LIST_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTRealcaseInfoResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取产品详情 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTProductInfoResponse getProductInfo(ZTContentInfoRequest param){ | 
 |  |  |         ZTBaseResponse<ZTProductInfoResponse> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.PRODUCT_INFO_URL, | 
 |  |  |                 ZTConstants.IntegerName.PRODUCT_INFO_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTProductInfoResponse>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取产品资讯详情 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTProductNewsInfoResponse getProductNewsInfo(ZTContentInfoRequest param){ | 
 |  |  |         ZTBaseResponse<ZTProductNewsInfoResponse> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.PRODUCT_NEWS_INFO_URL, | 
 |  |  |                 ZTConstants.IntegerName.PRODUCT_NEWS_INFO_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTProductNewsInfoResponse>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取实景资讯详情 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTRealcaseInfoResponse getRealcaseInfo(ZTContentInfoRequest param){ | 
 |  |  |         ZTBaseResponse<ZTRealcaseInfoResponse> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.REALCASE_INFO_URL, | 
 |  |  |                 ZTConstants.IntegerName.REALCASE_INFO_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTRealcaseInfoResponse>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取全屋资讯详情 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTCaseInfoResponse getWholecaseInfo(ZTContentInfoRequest param){ | 
 |  |  |         ZTBaseResponse<ZTCaseInfoResponse> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.WHOLECASE_INFO_URL, | 
 |  |  |                 ZTConstants.IntegerName.WHOLECASE_INFO_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTCaseInfoResponse>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |     /** | 
 |  |  |      * 获取内容详情 | 
 |  |  | 
 |  |  |         return  null; | 
 |  |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 轮播图列表 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public List<ZTCusCarouselImageResponse> carouselImageList(ZTContentListRequest param){ | 
 |  |  |         ZTBaseResponse<List<ZTCusCarouselImageResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.CUSTOMER_CAROUSEL_IMAGE_URL, | 
 |  |  |                 ZTConstants.IntegerName.CUSTOMER_CAROUSEL_IMAGE_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<List<ZTCusCarouselImageResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public ZTCusCarouselImageResponse carouselImageDetail(ZTDataDetailRequest param){ | 
 |  |  |         ZTBaseResponse<ZTCusCarouselImageResponse> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.CUSTOMER_CAROUSEL_IMAGE_DETAIL_URL, | 
 |  |  |                 ZTConstants.IntegerName.CUSTOMER_CAROUSEL_IMAGE_DETAIL_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTCusCarouselImageResponse>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取获取省市区集合 | 
 |  |  |      * @param param | 
 |  |  | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取获取省市区集合 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public List<ZTAreaTreeResponse> getAreaTreeList(ZTAreaListRequest param){ | 
 |  |  |        if(StringUtils.isBlank(param.getPid())){ | 
 |  |  |            param.setPid(ZTConstants.DEFAULT_PID);//默认取全部省份 | 
 |  |  |        } | 
 |  |  |         ZTBaseResponse<List<ZTAreaTreeResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.AREA_TREE_URL, | 
 |  |  |                 ZTConstants.IntegerName.AREA_TREE_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<List<ZTAreaTreeResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return  null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public   <T>   ZTBaseResponse<T> sendHttpRequest(String url,String name,String token,String userType,String param,TypeReference<ZTBaseResponse<T>> typeReference){ | 
 |  |  |         log.info("【"+name+"】================开始===="+ JSONObject.toJSONString(param)); | 
 |  |  | 
 |  |  |         int success = 0; | 
 |  |  |         try { | 
 |  |  |             Map<String,String> headers = new HashMap<>(); | 
 |  |  |             headers.put(ZTConstants.HEADER_TOKEN,token); | 
 |  |  |             if(StringUtils.equals(userType,ZTConstants.CUSTOMER)){ | 
 |  |  |                 //如果是C端客户 | 
 |  |  |                 headers.put(ZTConstants.HEADER_TOKEN,token); | 
 |  |  |             }else{ | 
 |  |  |                 //如果是B端用户 | 
 |  |  |                 headers.put(ZTConstants.HEADER_SYSUSER_TOKEN,token); | 
 |  |  |             } | 
 |  |  |             headers.put(ZTConstants.HEADER_USERTYPE,userType); | 
 |  |  |             String index = (String) redisTemplate.opsForValue().get(Constants.RedisKeys.ZBOM_ZHONGTAI_API_URL); | 
 |  |  |             res = HttpsUtil.postJsonWithHeaders(index+url,param,headers); | 
 |  |  | 
 |  |  |             log.error("【中台接口:"+name+"】================失败====:\n"+ res); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 获取我的喜欢/收藏列表 | 
 |  |  |      * @param param | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTCollectLikeInfoResponse> collectLikePage(ZTCollectLikeRequest param){ | 
 |  |  |         ZTBaseResponse<ZTBasePageResponse<ZTCollectLikeInfoResponse>> result = sendHttpRequest( | 
 |  |  |                 ZTConstants.IntegerUrl.FAVORITES_PAGE_URL, | 
 |  |  |                 ZTConstants.IntegerName.FAVORITES_NAME, | 
 |  |  |                 param.getToken(), | 
 |  |  |                 param.getUserType(), | 
 |  |  |                 JSONObject.toJSONString(param ), | 
 |  |  |                 new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTCollectLikeInfoResponse>>>(){}); | 
 |  |  |         if(result!=null){ | 
 |  |  |             return result.getData(); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  | } |