From 1be9f9fdb13f7c5cdcf29494cb72ced35cd7af10 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 16 七月 2024 22:18:04 +0800
Subject: [PATCH] 提交

---
 server/service/src/main/java/com/doumee/biz/zbom/impl/ZbomZhongTaiServiceImpl.java |  425 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 423 insertions(+), 2 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/biz/zbom/impl/ZbomZhongTaiServiceImpl.java b/server/service/src/main/java/com/doumee/biz/zbom/impl/ZbomZhongTaiServiceImpl.java
index 0ea7258..07eaea0 100644
--- a/server/service/src/main/java/com/doumee/biz/zbom/impl/ZbomZhongTaiServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/biz/zbom/impl/ZbomZhongTaiServiceImpl.java
@@ -1,9 +1,32 @@
 package com.doumee.biz.zbom.impl;
 
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.TypeReference;
 import com.doumee.biz.zbom.ZbomZhongTaiService;
+import com.doumee.biz.zbom.model.zhongtai.*;
+import com.doumee.biz.zbom.model.zhongtai.response.*;
+import com.doumee.core.haikang.model.HKConstants;
+import com.doumee.core.haikang.model.HKTools;
+import com.doumee.core.haikang.model.param.BaseResponse;
+import com.doumee.core.haikang.model.param.request.VisitAppointmentCancelRequest;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.HttpsUtil;
+import com.doumee.dao.business.CrmInterfaceLogMapper;
+import com.doumee.dao.business.InterfaceLogMapper;
 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;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * 浜哄憳淇℃伅琛⊿ervice瀹炵幇
@@ -11,10 +34,408 @@
  * @date 2023/11/30 15:33
  */
 @Service
+@Slf4j
 public class ZbomZhongTaiServiceImpl implements ZbomZhongTaiService {
-
     @Autowired
-    private MemberMapper memberMapper;
+    private InterfaceLogMapper interfaceLogMapper;
+    @Autowired
+    private RedisTemplate<String, Object> redisTemplate;
+
+    /**
+     * 鑾峰彇鐢ㄦ埛鐧婚檰token
+     * @param param
+     * @return
+     */
+   @Override
+   public ZTUserGetTokenResponse getUserToken(ZTUserGetTokenRequest param){
+       ZTBaseResponse<ZTUserGetTokenResponse> result = sendHttpRequest(
+               ZTConstants.IntegerUrl.USER_GET_TOKEN_URL,
+               ZTConstants.IntegerName.USER_GET_TOKEN_NAME,
+               param.getToken(),
+               param.getUserType(),
+               JSONObject.toJSONString(param ),
+               new TypeReference<ZTBaseResponse<ZTUserGetTokenResponse>>(){});
+       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;
+   }
+    /**
+     * 鐢ㄦ埛淇℃伅鍚屾
+     * @param param
+     * @return
+     */
+    @Override
+    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 ),
+                new TypeReference<ZTBaseResponse<ZTUserGetTokenResponse>>(){});
+//        if(result!=null){
+//            return result.getData();
+//        }
+        return result;
+    }
+    /**
+     * 娉ㄩ攢鐢ㄦ埛
+     * @param param
+     * @return
+     */
+    @Override
+    public boolean userLogout(ZTBaseRequst param){
+        ZTBaseResponse result = sendHttpRequest(
+                ZTConstants.IntegerUrl.USER_LOGOUT_URL,
+                ZTConstants.IntegerName.USER_LOGOUT_NAME,
+                param.getToken(),
+                param.getUserType(),
+                JSONObject.toJSONString(param ),
+                new TypeReference<ZTBaseResponse<Object>>(){});
+        if(result!=null ){
+            return true;
+        }
+        return false;
+    }
+
+    /**
+     * 鑾峰彇鍒嗙被鍜屽垎绫讳笅鐨勬爣绛�
+     * @param param
+     * @return
+     */
+    @Override
+    public  List<ZTCatalogInfoResponse> getCatalogList(ZTCatalogListRequest param){
+
+       ZTBaseResponse<List<ZTCatalogInfoResponse>> result = sendHttpRequest(
+                ZTConstants.IntegerUrl.CATALOG_LIST_URL,
+                ZTConstants.IntegerName.CATALOG_LIST_NAME,
+                param.getToken(),
+                param.getUserType(),
+                JSONObject.toJSONString(param ),
+        new TypeReference<ZTBaseResponse<List<ZTCatalogInfoResponse>>>(){});
+        if(result!=null){
+            return result.getData();
+        }
+        return null;
+    }
+    /**
+     * 鑾峰彇鍒嗙被鍜屽垎绫讳笅鐨勬爣绛�
+     * @param param
+     * @return
+     */
+    @Override
+    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 ),
+                new TypeReference<ZTBaseResponse<List<ZTTagInfoResponse>>>(){});
+        if(result!=null){
+            return result.getData();
+        }
+        return null;
+    }
+
+    /**
+     * 鑾峰彇鍐呭鍒楄〃鍒嗛〉
+     * @param param
+     * @return
+     */
+    @Override
+    public ZTBasePageResponse<ZTContentListResponse> pageContentList(ZTContentListRequest param){
+        ZTBaseResponse<ZTBasePageResponse<ZTContentListResponse>> result = sendHttpRequest(
+                ZTConstants.IntegerUrl.CONTENT_LIST_URL,
+                ZTConstants.IntegerName.CONTENT_LIST_NAME,
+                param.getToken(),
+                param.getUserType(),
+                JSONObject.toJSONString(param ),
+                new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTContentListResponse>>>(){});
+        if(result!=null){
+            return result.getData();
+        }
+        return null;
+    }
+    /**
+     * 鑾峰彇鍐呭璇︽儏
+     * @param param
+     * @return
+     */
+    @Override
+    public ZTContentInfoResponse getContentInfo(ZTContentInfoRequest param){
+        ZTBaseResponse<ZTContentInfoResponse> result = sendHttpRequest(
+                ZTConstants.IntegerUrl.CONTENT_INFO_URL+ param.getId(),
+                ZTConstants.IntegerName.CONTENT_INFO_NAME,
+                param.getToken(),
+                param.getUserType(),
+                JSONObject.toJSONString(param ),
+                new TypeReference<ZTBaseResponse<ZTContentInfoResponse>>(){});
+        if(result!=null){
+            return result.getData();
+        }
+        return  null;
+    }
+    /**
+     * 鍐呭鏀惰棌
+     * @param param
+     * @return
+     */
+    @Override
+    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 ),
+                new TypeReference<ZTBaseResponse<Object>>(){});
+
+        return result;
+    }
+    /**
+     * 鍐呭鍠滄
+     * @param param
+     * @return
+     */
+    @Override
+    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 ),
+                new TypeReference<ZTBaseResponse<Object>>(){});
+
+        return result;
+    }
+    /**
+     * 鍐呭鍒嗕韩
+     * @param param
+     * @return
+     */
+    @Override
+    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 ),
+                new TypeReference<ZTBaseResponse<Object>>(){});
+        return result;
+    }
+    /**
+     * 鍐呭娴忚
+     * @param param
+     * @return
+     */
+    @Override
+    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 ),
+                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;
+        }
+        return false;
+    }
+    /**
+     * 鑾峰彇鎴戠殑鏀惰棌鍒楄〃鍒嗛〉
+     * @param param
+     * @return
+     */
+    @Override
+    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 ),
+                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();
+        }
+        return  null;
+    }
+    /**
+     * 鑾峰彇鎴戠殑鍠滄鍒楄〃鍒嗛〉
+     * @param param
+     * @return
+     */
+    @Override
+    public ZTBasePageResponse<ZTContentListResponse> pageLikeList(ZTContentListRequest param){
+
+        ZTBaseResponse< ZTBasePageResponse<ZTContentListResponse>> result = sendHttpRequest(
+                ZTConstants.IntegerUrl.LIKE_LIST_URL,
+                ZTConstants.IntegerName.LIKE_LIST_NAME,
+                param.getToken(),
+                param.getUserType(),
+                JSONObject.toJSONString(param ),
+                new TypeReference<ZTBaseResponse<ZTBasePageResponse<ZTContentListResponse>>>(){});
+        if(result!=null){
+            return result.getData();
+        }
+        return  null;
+
+    }
+    /**
+     * 鑾峰彇鑾峰彇鐪佸競鍖洪泦鍚�
+     * @param param
+     * @return
+     */
+    @Override
+    public List<ZTAreaInfoResponse> getAreaList(ZTAreaListRequest param){
+       if(StringUtils.isBlank(param.getPid())){
+           param.setPid(ZTConstants.DEFAULT_PID);//榛樿鍙栧叏閮ㄧ渷浠�
+       }
+        ZTBaseResponse<List<ZTAreaInfoResponse>> result = sendHttpRequest(
+                ZTConstants.IntegerUrl.AREA_LIST_URL,
+                ZTConstants.IntegerName.AREA_LIST_NAME,
+                param.getToken(),
+                param.getUserType(),
+                JSONObject.toJSONString(param ),
+                new TypeReference<ZTBaseResponse<List<ZTAreaInfoResponse>>>(){});
+        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));
+        String res = null;
+        int success = 0;
+        try {
+            Map<String,String> headers = new HashMap<>();
+            headers.put(ZTConstants.HEADER_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);
+            ZTBaseResponse<T>  result = JSONObject.parseObject(res, typeReference.getType());
+            logResult(result,name);
+            if(Constants.equalsInteger(result.getCode(),ZTConstants.CODE_SUCCESS)){
+                return  result;
+            }else{
+                success =1;
+            }
+        }catch (Exception e){
+            success = 1;
+            log.error("銆�"+name+"銆�================澶辫触===="+ JSONObject.toJSONString(param));
+        }finally {
+            saveInterfaceLog(url,name,param,success,res);
+        }
+        return  null;
+    }
+    public  void  saveInterfaceLog(String url,String name,String  param,Integer success,String respone){
+        if(interfaceLogMapper ==null){
+            return;
+        }
+        InterfaceLog log = new InterfaceLog();
+        log.setCreateDate(new Date());
+        log.setUrl(url);
+        log.setEditDate(log.getCreateDate());
+        log.setPlat(Constants.ZERO);
+        log.setName(name);
+        log.setIsdeleted(Constants.ZERO);
+        log.setRequest(param);
+        log.setType(Constants.ONE);
+        log.setSuccess(success);
+        log.setRepose(respone);
+        interfaceLogMapper.insert(log);
+    }
+    private static void logResult(ZTBaseResponse res,String name) {
+        if(Constants.equalsInteger(res.getCode(),ZTConstants.CODE_SUCCESS)){
+            log.info("銆愪腑鍙版帴鍙o細"+name+"銆�================鎴愬姛====\n"+res);
+        }else{
+            log.error("銆愪腑鍙版帴鍙o細"+name+"銆�================澶辫触====锛歕n"+ res);
+        }
+    }
 }

--
Gitblit v1.9.3