jiangping
2024-07-18 f52c9ecaa576145ecb097e2335b5f12acddec93b
server/service/src/main/java/com/doumee/biz/zbom/impl/ZbomZhongTaiServiceImpl.java
@@ -16,6 +16,7 @@
import com.doumee.dao.business.MemberMapper;
import com.doumee.dao.business.model.CrmInterfaceLog;
import com.doumee.dao.business.model.InterfaceLog;
import com.doumee.dao.web.response.ZSZXCatalogResponse;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -52,11 +53,56 @@
               ZTConstants.IntegerName.USER_GET_TOKEN_NAME,
               param.getToken(),
               param.getUserType(),
               JSONObject.toJSONString(param ));
               JSONObject.toJSONString(param ),
               new TypeReference<ZTBaseResponse<ZTUserGetTokenResponse>>(){});
       if(result!=null){
           return result.getData();
       }
       return null;
   }
    /**
     * 获取B端用户登陆token
     * @param mobile
     * @return
     */
   @Override
   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
     */
   @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;
   }
    /**
     * 用户信息同步
@@ -64,17 +110,18 @@
     * @return
     */
    @Override
    public ZTUserGetTokenResponse userUpdateInfo(ZTUserInfoUpdateRequest param){
    public ZTBaseResponse userUpdateInfo(ZTUserInfoUpdateRequest param){
        ZTBaseResponse<ZTUserGetTokenResponse> result = sendHttpRequest(
                ZTConstants.IntegerUrl.USER_UPDATE_URL,
                ZTConstants.IntegerName.USER_UPDATE_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
        if(result!=null){
            return result.getData();
        }
        return null;
                null,
                null,
                JSONObject.toJSONString(param),
                new TypeReference<ZTBaseResponse<ZTUserGetTokenResponse>>(){});
//        if(result!=null){
//            return result.getData();
//        }
        return result;
    }
    /**
     * 注销用户
@@ -88,7 +135,8 @@
                ZTConstants.IntegerName.USER_LOGOUT_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<Object>>(){});
        if(result!=null ){
            return true;
        }
@@ -102,12 +150,14 @@
     */
    @Override
    public  List<ZTCatalogInfoResponse> getCatalogList(ZTCatalogListRequest param){
        ZTBaseResponse<List<ZTCatalogInfoResponse>> result = sendHttpRequest(
       ZTBaseResponse<List<ZTCatalogInfoResponse>> result = sendHttpRequest(
                ZTConstants.IntegerUrl.CATALOG_LIST_URL,
                ZTConstants.IntegerName.CATALOG_LIST_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
        new TypeReference<ZTBaseResponse<List<ZTCatalogInfoResponse>>>(){});
        if(result!=null){
            return result.getData();
        }
@@ -119,13 +169,14 @@
     * @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,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<List<ZTTagInfoResponse>>>(){});
        if(result!=null){
            return result.getData();
        }
@@ -144,11 +195,205 @@
                ZTConstants.IntegerName.CONTENT_LIST_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                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;
    }
    /**
     * 获取内容详情
@@ -158,11 +403,12 @@
    @Override
    public ZTContentInfoResponse getContentInfo(ZTContentInfoRequest param){
        ZTBaseResponse<ZTContentInfoResponse> result = sendHttpRequest(
                ZTConstants.IntegerUrl.CONTENT_INFO_URL+ param.getArticleId(),
                ZTConstants.IntegerUrl.CONTENT_INFO_URL+ param.getId(),
                ZTConstants.IntegerName.CONTENT_INFO_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<ZTContentInfoResponse>>(){});
        if(result!=null){
            return result.getData();
        }
@@ -174,17 +420,16 @@
     * @return
     */
    @Override
    public boolean collectDo(ZTActionDoRequest param){
    public ZTBaseResponse collectDo(ZTActionDoRequest param){
        ZTBaseResponse result = sendHttpRequest(
                ZTConstants.IntegerUrl.COLLECT_DO_URL,
                ZTConstants.IntegerName.COLLECT_DO_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
        if(result!=null ){
            return true;
        }
        return false;
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<Object>>(){});
        return result;
    }
    /**
     * 内容喜欢
@@ -192,17 +437,16 @@
     * @return
     */
    @Override
    public  boolean likeDo(ZTActionBatchDoRequest param){
    public  ZTBaseResponse likeDo(ZTActionBatchDoRequest param){
        ZTBaseResponse result = sendHttpRequest(
                ZTConstants.IntegerUrl.LIKE_DO_URL,
                ZTConstants.IntegerName.LIKE_DO_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
        if(result!=null ){
            return true;
        }
        return false;
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<Object>>(){});
        return result;
    }
    /**
     * 内容分享
@@ -210,17 +454,15 @@
     * @return
     */
    @Override
    public boolean shareDo(ZTActionDoRequest param){
    public ZTBaseResponse shareDo(ZTActionDoRequest param){
        ZTBaseResponse result = sendHttpRequest(
                ZTConstants.IntegerUrl.SHARE_DO_URL,
                ZTConstants.IntegerName.SHARE_DO_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
        if(result!=null ){
            return true;
        }
        return false;
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<Object>>(){});
        return result;
    }
    /**
     * 内容浏览
@@ -228,13 +470,30 @@
     * @return
     */
    @Override
    public boolean viewDo(ZTActionDoRequest param){
    public ZTBaseResponse viewDo(ZTActionDoRequest param){
        ZTBaseResponse result = sendHttpRequest(
                ZTConstants.IntegerUrl.VIEW_DO_URL,
                ZTConstants.IntegerName.VIEW_DO_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<Object>>(){});
        return result;
    }
    /**
     * 用户绑定客户喜欢清单,可绑定多个内容
     * @param param
     * @return
     */
    @Override
    public boolean bindCustomerFavorites(ZTBindCusFavoriteDoRequest param){
        ZTBaseResponse result = sendHttpRequest(
                ZTConstants.IntegerUrl.BIND_CUSTOMER_FAVORITES_URL,
                ZTConstants.IntegerName.BIND_CUSTOMER_FAVORITES_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<Object>>(){});
        if(result!=null ){
            return true;
        }
@@ -246,13 +505,52 @@
     * @return
     */
    @Override
    public ZTBasePageResponse<ZTContentListResponse> pageCollectList(ZTContentListRequest param){
        ZTBaseResponse< ZTBasePageResponse<ZTContentListResponse>> result = sendHttpRequest(
    public ZTBasePageResponse<ZTCollectInfoResponse> pageCollectList(ZTContentListRequest param){
        ZTBaseResponse< ZTBasePageResponse<ZTCollectInfoResponse>> result = sendHttpRequest(
                ZTConstants.IntegerUrl.COLLECT_LIST_URL,
                ZTConstants.IntegerName.COLLECT_LIST_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTCollectInfoResponse>>>(){});
        if(result!=null){
            return result.getData();
        }
        return  null;
    }
    /**
     * 获取我的收藏列表分页
     * @param param
     * @return
     */
    @Override
    public  ZTBasePageResponse<ZTBehaviorInfoResponse> pageBehavoirList(ZTContentListRequest param){
        ZTBaseResponse< ZTBasePageResponse<ZTBehaviorInfoResponse>> result = sendHttpRequest(
                ZTConstants.IntegerUrl.BEHAVIOR_LIST_URL,
                ZTConstants.IntegerName.BEHAVIOR_LIST_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTBehaviorInfoResponse>>>(){});
        if(result!=null){
            return result.getData();
        }
        return  null;
    }
    /**
     * 获取客户喜欢
     * @param param
     * @return
     */
    @Override
    public ZTBasePageResponse<ZTCusFavoritesInfoResponse> pageCusFavoriteList(ZTContentListRequest param){
        ZTBaseResponse< ZTBasePageResponse<ZTCusFavoritesInfoResponse>> result = sendHttpRequest(
                ZTConstants.IntegerUrl.CUSTOMER_FAVORITES_LIST_URL,
                ZTConstants.IntegerName.CUSTOMER_FAVORITES_LIST_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTCusFavoritesInfoResponse>>>(){});
        if(result!=null){
            return result.getData();
        }
@@ -271,13 +569,53 @@
                ZTConstants.IntegerName.LIKE_LIST_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTContentListResponse>>>(){});
        if(result!=null){
            return result.getData();
        }
        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
@@ -293,27 +631,52 @@
                ZTConstants.IntegerName.AREA_LIST_NAME,
                param.getToken(),
                param.getUserType(),
                JSONObject.toJSONString(param ));
                JSONObject.toJSONString(param ),
                new TypeReference<ZTBaseResponse<List<ZTAreaInfoResponse>>>(){});
        if(result!=null){
            return result.getData();
        }
        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){
    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));
        String res = null;
        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);
            TypeReference typeReference =
                    new TypeReference<ZTBaseResponse<T>>(){};
            ZTBaseResponse<T>  result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,name);
            if(Constants.equalsInteger(result.getCode(),ZTConstants.CODE_SUCCESS)){