|  |  | 
 |  |  | import com.alibaba.fastjson.JSONObject; | 
 |  |  | import com.doumee.biz.system.SystemDictDataBiz; | 
 |  |  | import com.doumee.biz.zbom.ZbomZhongTaiService; | 
 |  |  | import com.doumee.biz.zbom.model.zhongtai.ZTCatalogListRequest; | 
 |  |  | import com.doumee.biz.zbom.model.zhongtai.ZTConstants; | 
 |  |  | import com.doumee.biz.zbom.model.zhongtai.ZTContentListRequest; | 
 |  |  | import com.doumee.biz.zbom.model.zhongtai.*; | 
 |  |  | import com.doumee.biz.zbom.model.zhongtai.response.*; | 
 |  |  | import com.doumee.core.constants.ResponseStatus; | 
 |  |  | import com.doumee.core.exception.BusinessException; | 
 |  |  | import com.doumee.dao.business.IamInterfaceLogMapper; | 
 |  |  | import com.doumee.dao.business.MemberMapper; | 
 |  |  | import com.doumee.dao.business.UsersMapper; | 
 |  |  | import com.doumee.dao.web.response.ZTBaseInfoResponse; | 
 |  |  | import com.doumee.service.business.GetZhongTaiDataService; | 
 |  |  | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; | 
 |  |  | import org.apache.commons.lang3.StringUtils; | 
 |  |  | import org.apache.xpath.operations.Bool; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.stereotype.Service; | 
 |  |  |  | 
 |  |  | import java.util.ArrayList; | 
 |  |  | import java.util.List; | 
 |  |  | import java.util.Objects; | 
 |  |  |  | 
 |  |  | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private MemberMapper memberMapper; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private UsersMapper usersMapper; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private SystemDictDataBiz systemDictDataBiz; | 
 |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      *  获取父子级结构数据列表 | 
 |  |  |      * 志说装修 zb_deco 产品 product_intro 资讯product_info 全屋案例 whole_case | 
 |  |  |      * 获取父子级结构数据 | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public List<ZTCatalogInfoResponse> getZTCatalogInfoResponse(ZTCatalogListRequest ztCatalogListRequest){ | 
 |  |  |         if(Objects.isNull(ztCatalogListRequest) | 
 |  |  |                 || StringUtils.isBlank(ztCatalogListRequest.getCatalogCode())){ | 
 |  |  |             throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
 |  |  |         } | 
 |  |  |         if(ztCatalogListRequest.getCatalogCode().equals(ZTConstants.CatalogCode.ZHISHUO_ZHUANGXIU) | 
 |  |  |                 ||ztCatalogListRequest.getCatalogCode().equals(ZTConstants.CatalogCode.CHANPING) | 
 |  |  |                 ||ztCatalogListRequest.getCatalogCode().equals(ZTConstants.CatalogCode.ZIXUN) | 
 |  |  |                 ||ztCatalogListRequest.getCatalogCode().equals(ZTConstants.CatalogCode.QW_CASE)){ | 
 |  |  |             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"分类信息错误"); | 
 |  |  |         } | 
 |  |  |         List<ZTCatalogInfoResponse>  ztCatalogInfoResponseList = zbomZhongTaiService.getCatalogList(ztCatalogListRequest); | 
 |  |  |         if(CollectionUtils.isNotEmpty(ztCatalogInfoResponseList)){ | 
 |  |  |             for (ZTCatalogInfoResponse ztCatalogInfoResponse:ztCatalogInfoResponseList) { | 
 |  |  |                 ZTCatalogListRequest ztCatalogTagListRequest = new ZTCatalogListRequest(); | 
 |  |  |                 ztCatalogTagListRequest.setCatalogCode(ztCatalogInfoResponse.getCode()); | 
 |  |  |                 List<ZTTagInfoResponse> ztTagInfoResponseList = zbomZhongTaiService.getTagList(ztCatalogTagListRequest); | 
 |  |  |                 if(CollectionUtils.isNotEmpty(ztCatalogInfoResponseList)){ | 
 |  |  |                     ztCatalogInfoResponse.setChildTagList(ztTagInfoResponseList); | 
 |  |  |                 } | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         return ztCatalogInfoResponseList; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 内容 分页数据 | 
 |  |  |      * @param ztContentListRequest | 
 |  |  |      * @return | 
 |  |  |      */ | 
 |  |  |     @Override | 
 |  |  |     public ZTBasePageResponse<ZTContentListResponse> pageContentList(ZTContentListRequest ztContentListRequest){ | 
 |  |  |         if(Objects.isNull(ztContentListRequest) | 
 |  |  |             || Objects.isNull(ztContentListRequest.getPageNum()) | 
 |  |  |             || Objects.isNull(ztContentListRequest.getPageSize()) | 
 |  |  |             || StringUtils.isBlank(ztContentListRequest.getCatalogCode()) | 
 |  |  |             || StringUtils.isBlank(ztContentListRequest.getTagCodes()) | 
 |  |  |             || StringUtils.isBlank(ztContentListRequest.getQuery()) | 
 |  |  |             || StringUtils.isBlank(ztContentListRequest.getSortType()) | 
 |  |  |         ){ | 
 |  |  |             throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
 |  |  |         } | 
 |  |  |         //查询 中台 | 
 |  |  |         ZTBaseInfoResponse ztBaseInfoResponse = MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz, | 
 |  |  |                 Long.valueOf(ztContentListRequest.getUserId()),ztContentListRequest.getUserType()); | 
 |  |  |         ztContentListRequest.setToken(ztBaseInfoResponse.getToken()); | 
 |  |  |         String catalogCode = ztContentListRequest.getCatalogCode(); | 
 |  |  |         if(catalogCode.equals(ZTConstants.CatalogCode.ZHISHUO_ZHUANGXIU) | 
 |  |  |                 ||catalogCode.equals(ZTConstants.CatalogCode.CHANPING) | 
 |  |  |                 ||catalogCode.equals(ZTConstants.CatalogCode.ZIXUN) | 
 |  |  |                 ||catalogCode.equals(ZTConstants.CatalogCode.QW_CASE)){ | 
 |  |  |             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"分类信息错误"); | 
 |  |  |         } | 
 |  |  |         ZTBasePageResponse<ZTContentListResponse> response = zbomZhongTaiService.pageContentList(ztContentListRequest); | 
 |  |  |         return response; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public ZTContentInfoResponse getContentInfo(String id,String userType,Long userId){ | 
 |  |  |         //查询 中台 TOKEN | 
 |  |  |         ZTBaseInfoResponse ztBaseInfoResponse  = MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,userId,userType); | 
 |  |  |         ZTContentInfoRequest ztContentListRequest = new ZTContentInfoRequest(); | 
 |  |  |         ztContentListRequest.setToken(ztBaseInfoResponse.getToken()); | 
 |  |  |         ztContentListRequest.setUserType(ztBaseInfoResponse.getUserType()); | 
 |  |  |         ztContentListRequest.setId(id); | 
 |  |  |         ZTContentInfoResponse response = zbomZhongTaiService.getContentInfo(ztContentListRequest); | 
 |  |  |         return response; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public void collectContent(Long userId,String userType,String articleId){ | 
 |  |  |         ZTBaseInfoResponse ztBaseInfoResponse  =  MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,userId,userType); | 
 |  |  |         ZTActionDoRequest param = new ZTActionDoRequest(); | 
 |  |  |         param.setOpenId(ztBaseInfoResponse.getOpenId()); | 
 |  |  |         param.setUserType(userType); | 
 |  |  |         param.setArticleId(articleId); | 
 |  |  |         param.setToken(ztBaseInfoResponse.getToken()); | 
 |  |  |         ZTBaseResponse ztBaseResponse =  zbomZhongTaiService.collectDo(param); | 
 |  |  |         if(Objects.isNull(ztBaseResponse)){ | 
 |  |  |             throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台接口响应失败"); | 
 |  |  |         }else{ | 
 |  |  |             if(!ztBaseResponse.getSuccess()){ | 
 |  |  |                 throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台请求信息异常:"+ztBaseResponse.getMsg()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public void likeContent(Long userId,String userType,String articleId){ | 
 |  |  |         ZTBaseInfoResponse ztBaseInfoResponse  =  MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,userId,userType); | 
 |  |  |         ZTActionBatchDoRequest param = new ZTActionBatchDoRequest(); | 
 |  |  |         param.setOpenId(ztBaseInfoResponse.getOpenId()); | 
 |  |  |         param.setUserType(userType); | 
 |  |  |         param.setToken(ztBaseInfoResponse.getToken()); | 
 |  |  |         List<ZTActionDoRequest> list = new ArrayList<>(); | 
 |  |  |         ZTActionDoRequest ztActionDoRequest = new ZTActionDoRequest(); | 
 |  |  |         ztActionDoRequest.setArticleId(articleId); | 
 |  |  |         param.setList(list); | 
 |  |  |         ZTBaseResponse ztBaseResponse =  zbomZhongTaiService.likeDo(param); | 
 |  |  |         if(Objects.isNull(ztBaseResponse)){ | 
 |  |  |             throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台接口响应失败"); | 
 |  |  |         }else{ | 
 |  |  |             if(!ztBaseResponse.getSuccess()){ | 
 |  |  |                 throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台请求信息异常:"+ztBaseResponse.getMsg()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public void shareContent(Long userId,String userType,String articleId){ | 
 |  |  |         ZTBaseInfoResponse ztBaseInfoResponse  =  MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,userId,userType); | 
 |  |  |         ZTActionDoRequest param = new ZTActionDoRequest(); | 
 |  |  |         param.setArticleId(articleId); | 
 |  |  |         param.setOpenId(ztBaseInfoResponse.getOpenId()); | 
 |  |  |         param.setUserType(userType); | 
 |  |  |         param.setToken(ztBaseInfoResponse.getToken()); | 
 |  |  |         ZTBaseResponse ztBaseResponse =  zbomZhongTaiService.shareDo(param); | 
 |  |  |         if(Objects.isNull(ztBaseResponse)){ | 
 |  |  |             throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台接口响应失败"); | 
 |  |  |         }else{ | 
 |  |  |             if(!ztBaseResponse.getSuccess()){ | 
 |  |  |                 throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台请求信息异常:"+ztBaseResponse.getMsg()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public void viewContent(Long userId,String userType,String articleId){ | 
 |  |  |         ZTBaseInfoResponse ztBaseInfoResponse  =  MemberServiceImpl.getZTToken(zbomZhongTaiService,memberMapper,usersMapper,systemDictDataBiz,userId,userType); | 
 |  |  |         ZTActionDoRequest param = new ZTActionDoRequest(); | 
 |  |  |         param.setArticleId(articleId); | 
 |  |  |         param.setOpenId(ztBaseInfoResponse.getOpenId()); | 
 |  |  |         param.setUserType(userType); | 
 |  |  |         param.setToken(ztBaseInfoResponse.getToken()); | 
 |  |  |         ZTBaseResponse ztBaseResponse =  zbomZhongTaiService.viewDo(param); | 
 |  |  |         if(Objects.isNull(ztBaseResponse)){ | 
 |  |  |             throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台接口响应失败"); | 
 |  |  |         }else{ | 
 |  |  |             if(!ztBaseResponse.getSuccess()){ | 
 |  |  |                 throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"中台请求信息异常:"+ztBaseResponse.getMsg()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |