From 2a1045b15cd5cea09d464ad0de8c1827b73c5595 Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期四, 19 十二月 2024 15:01:09 +0800
Subject: [PATCH] 调整

---
 src/main/java/com/example/service/shanxiqin/xian/MeiJiHisService.java |  432 +++++++++++++++++++++++++-----------------------------
 1 files changed, 200 insertions(+), 232 deletions(-)

diff --git a/src/main/java/com/example/service/shanxiqin/xian/MeiJiHisService.java b/src/main/java/com/example/service/shanxiqin/xian/MeiJiHisService.java
index 2f44f35..edd40f9 100644
--- a/src/main/java/com/example/service/shanxiqin/xian/MeiJiHisService.java
+++ b/src/main/java/com/example/service/shanxiqin/xian/MeiJiHisService.java
@@ -2,29 +2,23 @@
 
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSON;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
 import com.example.config.ConfigValue;
-import com.example.domain.TjCustomer;
-import com.example.dto.xian.meiji.CheXiaoMzFyDto;
-import com.example.dto.xian.meiji.CreateMenZhenFyDto;
+import com.example.constant.ApiParamsConstants;
 import com.example.service.HisService;
 import com.example.service.ISysConfigService;
+import com.example.utils.FieldNameConverter;
 import com.example.utils.HttpClientUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.ApplicationContext;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 
-import java.io.FileInputStream;
-import java.io.IOException;
 import java.time.Instant;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
+import java.time.LocalDateTime;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 
 /**
@@ -69,20 +63,19 @@
         map.put("client_id", CLIENT_ID);
         map.put("client_secret", CLIENT_SECRET);
 //        map.put("scope",SCOP);
-        String post = sendPost (HIS_URL+"/oauth/token", map);
+        String post = sendPostTokenFormUrlencoded (HIS_URL+"/oauth/token", map);
         if (StrUtil.isBlank(post)) return null;
         return JSONUtil.parseObj(post);
     }
 
-    //寤烘。
-    public String jianDang (TjCustomer customer) {
+    @Override
+    public String jianDang(Map<String, Object> params) {
         String czy = configService.selectConfigByKey("dfhisczybm");
-
         Map<String, Object> map = new HashMap<> ();
-        map.put ("jiuZhenKh", customer.getPationId ());
+        map.put ("jiuZhenKh", params.get(ApiParamsConstants.CARD_ID));
         map.put ("kaiLeiXing","4");
-        map.put ("xingMing", customer.getCusName ());
-        Long cusSex = customer.getCusSex();
+        map.put ("xingMing", params.get(ApiParamsConstants.CUS_NAME));
+        long cusSex = Long.parseLong(map.get(ApiParamsConstants.CUS_SEX).toString());
         if(cusSex==0L){
             map.put ("xingBie","鐢�");
         }else if(cusSex==1L){
@@ -90,11 +83,11 @@
         }else {
             map.put ("xingBie","鏈煡");
         }
-        map.put ("shenFenZh", customer.getCusIdcard ());
+        map.put ("shenFenZh", ApiParamsConstants.CUS_ID_CARD);
         map.put ("danWeiBh","");
-        map.put ("chuShengRq", DateUtil.format(customer.getCusBrithday(),"yyyy-MM-dd"));
-        map.put ("lianXiDz", customer.getCusAddr());
-        map.put ("lianXiDh", customer.getCusPhone ());
+        map.put ("chuShengRq", DateUtil.format((LocalDateTime) map.get(ApiParamsConstants.CUS_BRITHDAY),"yyyy-MM-dd"));
+        map.put ("lianXiDz", map.get(ApiParamsConstants.CUS_ADDR));
+        map.put ("lianXiDh", map.get(ApiParamsConstants.CUS_PHONE));
         map.put ("feiYongLb","");
         map.put ("feiYongXz","");
         map.put ("jiLuLy","3");
@@ -103,36 +96,36 @@
         map.put ("yiBaoKh","");
         map.put ("geRenBh","");
         map.put ("yiBaoBrXx","");
-        map.put ("gongZuoDw",customer.getCompName());
+        map.put ("gongZuoDw",params.get(ApiParamsConstants.COMP_NAME));
         map.put ("canBaoXzMc","");
         map.put ("muLuBlLb","");
         map.put ("kunNanJzDj","");
         map.put ("yiLiaoLb","");
         map.put ("minZuDm","");
         map.put ("minZuMc","");
-        //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/menZhenJz/jianDang", map);
+//        鑱屼笟缂栫爜
+        return sendPostTokenFormData(HIS_URL+"/menZhenJz/jianDang", map);
     }
 
-    //楠岃瘉韬唤璇佹槸鍚﹀缓杩囨。
-    public String getBingRenXxByShengFenZheng (TjCustomer customer) {
+    @Override
+    public String getBingRenXxByShengFenZheng(Map<String, Object> params) {
         String czy = configService.selectConfigByKey("dfhisczybm");
         Map<String, Object> map = new HashMap<> ();
         map.put ("caoZuoYuan",czy);
-        map.put ("shenFenZh", customer.getCusIdcard ());
+        map.put ("shenFenZh", params.get(ApiParamsConstants.CUS_ID_CARD));
         map.put ("danWeiBh","");
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/menZhenJz/getBingRenXxByShengFenZheng", map);
+        return sendPostTokenFormData(HIS_URL+"/menZhenJz/getBingRenXxByShengFenZheng", map);
     }
 
-    //鐥呬汉鍩烘湰淇℃伅鍙樻洿
-    public String saveBingRenXx (TjCustomer customer) {
+    @Override
+    public String saveBingRenXx(Map<String, Object> params) {
         String czy = configService.selectConfigByKey("dfhisczybm");
         Map<String, Object> map = new HashMap<> ();
-        map.put ("jiuZhenKh", customer.getPationId ());
+        map.put ("jiuZhenKh", params.get(ApiParamsConstants.PATIONID));
         map.put ("kaiLeiXing","4");
-        map.put ("xingMing", customer.getCusName ());
-        Long cusSex = customer.getCusSex();
+        map.put ("xingMing", params.get(ApiParamsConstants.CUS_NAME));
+        long cusSex = Long.parseLong(map.get(ApiParamsConstants.CUS_SEX).toString());
         if(cusSex==0L){
             map.put ("xingBie","鐢�");
         }else if(cusSex==1L){
@@ -140,273 +133,198 @@
         }else {
             map.put ("xingBie","鏈煡");
         }
-        map.put ("shenFenZh", customer.getCusIdcard ());
+        map.put ("shenFenZh", params.get(ApiParamsConstants.CUS_ID_CARD));
         map.put ("danWeiBh","");
-        map.put ("chuShengRq", DateUtil.format(customer.getCusBrithday(),"yyyy-MM-dd"));
-        map.put ("lianXiDz", customer.getCusAddr());
-        map.put ("lianXiDh", customer.getCusPhone ());
+        map.put ("chuShengRq", DateUtil.format((LocalDateTime) params.get(ApiParamsConstants.CUS_BRITHDAY),"yyyy-MM-dd"));
+        map.put ("lianXiDz", params.get(ApiParamsConstants.CUS_ADDR));
+        map.put ("lianXiDh", params.get(ApiParamsConstants.CUS_PHONE));
         map.put ("feiYongLb","");
         map.put ("feiYongXz","");
         map.put ("jiLuLy","3");
         map.put ("caoZuoYuan",czy);
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/menZhenJz/saveBingRenXx", map);
+        return sendPostTokenFormData(HIS_URL+"/menZhenJz/saveBingRenXx", map);
     }
 
-    //寰呮敹璐硅垂鐢ㄦ煡璇�
-    public String getListDaiShouFei (String bingRenId, String jiuZhenKh, String yuanQuId) {
+    @Override
+    public String getListDaiShouFei(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("bingRenId",bingRenId);
-        map.put ("jiuZhenKh",jiuZhenKh);
-        map.put ("yuanQuId",yuanQuId);
+        map.put ("bingRenId",params.get(ApiParamsConstants.PATIONID));
+        map.put ("jiuZhenKh",params.get(ApiParamsConstants.CARD_ID));
+        map.put ("yuanQuId",params.get(ApiParamsConstants.YUANQU_ID));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/shouFei/getListDaiShouFei", map);
+        return sendPostTokenFormData(HIS_URL+"/shouFei/getListDaiShouFei", map);
     }
 
-
-    //鐢熸垚寰呮敹璐�/寰呴��璐� 璐圭敤
-    public String createMenZhenFy (CreateMenZhenFyDto dto) {
+    @Override
+    public String createMenZhenFy(Map<String, Object> params) {
         String czy = configService.selectConfigByKey("dfhisczybm");
         Map<String, Object> map = new HashMap<> ();
-        map.put ("bingRenId",dto.getBingRenId());
-        map.put ("jiuZhenKh",dto.getJiuZhenKh());
+        map.put ("bingRenId",params.get(ApiParamsConstants.PATIONID));
+        map.put ("jiuZhenKh",params.get(ApiParamsConstants.CARD_ID));
         map.put ("caoZuoYuan",czy);
-        map.put ("yuanQuId",dto.getYuanQuId());
-        map.put ("yingYongId",dto.getYingYongId());
-        map.put ("kaiDanKs",dto.getKaiDanKs());
-        map.put ("dengJiLsh",dto.getDengJiLsh());
-        map.put ("shouTuiBz",dto.getShouTuiBz());
-        map.put ("feiYongMxList",dto.getFeiYongMxList());
+        map.put ("yuanQuId",params.get(ApiParamsConstants.YUANQU_ID));
+        map.put ("yingYongId","870101");
+        map.put ("kaiDanKs",params.get(ApiParamsConstants.kaiDanKeShi));
+        map.put ("dengJiLsh",params.get(ApiParamsConstants.CARD_ID));
+        map.put ("shouTuiBz",params.get(ApiParamsConstants.SHOU_TUI_STATUS));
+        map.put ("feiYongMxList",params.get(ApiParamsConstants.FEI_YONG_INFO_LIST));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/shouFei/createMenZhenFy", map);
+        return sendPostTokenFormData(HIS_URL+"/shouFei/createMenZhenFy", map);
     }
 
-
-    //闂ㄨ瘖鏈敹璐硅垂鐢ㄦ挙閿�
-    public String cheXiaoMzFy (CheXiaoMzFyDto dto) {
+    @Override
+    public String cheXiaoMzFy(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("bingRenId",dto.getBingRenId());
-        map.put ("jiuZhenKh",dto.getJiuZhenKh());
-        map.put ("feiYongIdList",dto.getFeiYongIdList());
+        map.put ("bingRenId",params.get(ApiParamsConstants.PATIONID));
+        map.put ("jiuZhenKh",params.get(ApiParamsConstants.CARD_ID));
+        ArrayList<JSONObject> ids = new ArrayList<>();
+        String string = params.get(ApiParamsConstants.FEI_YONG_ID_LIST).toString();
+        String[] split = string.split(",");
+        Arrays.stream(split).forEach(i -> {
+            JSONObject object = JSONUtil.createObj();
+            object.putOpt("feiYongId",i);
+            ids.add(object);
+        });
+        map.put ("feiYongIdList",ids);
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/shouFei/cheXiaoMzFy", map);
+        return sendPostTokenFormData(HIS_URL+"/shouFei/cheXiaoMzFy", map);
     }
 
-
-    //鏀惰垂/閫�璐瑰畬鎴愰�氱煡绗笁鏂�
-    public String pushZhiFuMsg (String feiYongId, int yeWuLx ) {
+    @Override
+    public String pushZhiFuMsg(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("feiYongId",feiYongId);
-        map.put ("yeWuLx",yeWuLx);
+        map.put ("feiYongId",params.get(ApiParamsConstants.FEI_YONG_ID));
+        map.put ("yeWuLx",params.get(ApiParamsConstants.FEI_YONG_STATUS));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/shouFei/pushZhiFuMsg", map);
+        return sendPostTokenFormData(HIS_URL+"/shouFei/pushZhiFuMsg", map);
     }
 
-
-    //绉戝淇℃伅鏌ヨ
-    public String getKeShi (String yuanQuId, String keShiMc, int pageIndex, int pageSize ) {
+    @Override
+    public String getKeShi(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("yuanQuId",yuanQuId);
-        map.put ("keShiMc",keShiMc);
-        map.put ("pageIndex",pageIndex);
-        map.put ("pageSize",pageSize);
+        map.put ("yuanQuId",params.get(ApiParamsConstants.YUANQU_ID));
+        map.put ("keShiMc",params.get(ApiParamsConstants.DEPT_NAME));
+        map.put ("pageIndex",params.get(ApiParamsConstants.PAGE_INDEX));
+        map.put ("pageSize",params.get(ApiParamsConstants.PAGE_SIZE));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getKeShi", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getKeShi", map);
     }
 
-    //鍖荤敓淇℃伅鏌ヨ
-    public String getListYiShengZd (String yuanQuId, String keShiMc, int pageIndex, int pageSize ) {
+    @Override
+    public String getListYiShengZd(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("yuanQuId",yuanQuId);
-        map.put ("keShiMc",keShiMc);
+        map.put ("yuanQuId",params.get(ApiParamsConstants.YUANQU_ID));
+        map.put ("keShiMc",params.get(ApiParamsConstants.DEPT_NAME));
         map.put ("bianGengSj","");
-        map.put ("pageIndex",pageIndex);
-        map.put ("pageSize",pageSize);
+        map.put ("pageIndex",params.get(ApiParamsConstants.PAGE_INDEX));
+        map.put ("pageSize",params.get(ApiParamsConstants.PAGE_SIZE));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getListYiShengZd", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getListYiShengZd", map);
     }
 
-
-    //鑾峰彇鏀惰垂椤圭洰鍒嗛〉
-    public String getShouFeiXm (String queryString, String bianGengSj, int pageIndex, int pageSize ) {
+    @Override
+    public String getShouFeiXm(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("queryString",queryString);
-        map.put ("bianGengSj",bianGengSj);
-        map.put ("pageIndex",pageIndex);
-        map.put ("pageSize",pageSize);
+        map.put ("queryString",params.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        map.put ("bianGengSj","");
+        map.put ("pageIndex",params.get(ApiParamsConstants.PAGE_INDEX));
+        map.put ("pageSize",params.get(ApiParamsConstants.PAGE_SIZE));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getShouFeiXm", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getShouFeiXm", map);
     }
 
-
-
-    /**
-     * 绉戝淇℃伅鎺ㄩ��
-     *
-     * @param xingZhiSx   缁勭粐灞炴�� 绗竴浣�1聽琛ㄧず 鎸傚彿
-     *                    绗簩浣� 1琛ㄧず涓村簥
-     *                    绗笁浣� 1琛ㄧず妫�鏌�
-     *                    绗洓浣� 1 琛ㄧず鎵嬫湳
-     *                    绗簲浣� 1 琛ㄧず娌荤枟
-     *                    绗叚浣� 1 琛ㄧず鎶ょ悊
-     * @param queryString 妯$硦鍖归厤杈撯紛鐮�1銆佺瀹ゅ悕绉�
-     * @param zuoFeiBz    浣滃簾鏍囧織锛�0 姝e父锛�1 浣滃簾
-     * @param yuanQuId    闄㈠尯id
-     * @param keShiIds    绉戝ID闆嗗悎
-     * @param ifPlus      鏄惁鏌ヨplus灞炴��
-     * @return
-     */
-    public String getKeShiByConditions (int xingZhiSx, String queryString, int zuoFeiBz, String yuanQuId, List<String> keShiIds, int ifPlus) {
+    @Override
+    public String getKeShiByConditions(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("xingZhiSx",xingZhiSx);
-        map.put ("queryString",queryString);
-        map.put ("zuoFeiBz",zuoFeiBz);
-        map.put ("yuanQuId",yuanQuId);
-        map.put ("keShiIds",keShiIds);
-        map.put ("ifPlus",ifPlus);
+        map.put ("xingZhiSx","");
+        map.put ("queryString",params.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        map.put ("zuoFeiBz",params.get(ApiParamsConstants.DEPT_ZUOFEI_STATUS));
+        map.put ("yuanQuId",params.get(ApiParamsConstants.YUANQU_ID));
+        map.put ("keShiIds",params.get(ApiParamsConstants.DEPT_IDS));
+        map.put ("ifPlus","");
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getKeShiByConditions", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getKeShiByConditions", map);
     }
 
-
-
-    /**
-     * 鍙栨牱鏈瓧鍏�
-     *
-     * @param queryString 鏍锋湰绫诲瀷鍚嶇О(鏍锋湰鍚嶇О/鏍锋湰绫诲瀷id)
-     * @param pageIndex
-     * @param pageSize    姣忊粴鏉℃暟锛堟渶饧や笉鑳借秴杩�100锛�
-     * @return
-     */
-    public String getYangBen (String queryString, int pageIndex, int pageSize ) {
+    @Override
+    public String getYangBen(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("queryString",queryString);
-        map.put ("pageIndex",pageIndex);
-        map.put ("pageSize",pageSize);
+        map.put ("queryString",params.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        map.put ("pageIndex",params.get(ApiParamsConstants.PAGE_INDEX));
+        map.put ("pageSize",params.get(ApiParamsConstants.PAGE_SIZE));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getYangBen", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getYangBen", map);
     }
 
-
-    /**
-     * 鐥呭尯淇℃伅鎺ㄩ��
-     *
-     * @param yuanQuId  闄㈠尯Id
-     * @param keShiId   绉戝Id
-     * @param pageIndex 褰撳墠饣�
-     * @param pageSize  姣忊粴鏉℃暟锛堟渶饧や笉鑳借秴杩�100锛�
-     * @return
-     */
-    public String getListBingQuZd (String yuanQuId, String keShiId, int pageIndex, int pageSize ) {
+    @Override
+    public String getListBingQuZd(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("yuanQuId",yuanQuId);
-        map.put ("keShiId",keShiId);
-        map.put ("pageIndex",pageIndex);
-        map.put ("pageSize",pageSize);
+        map.put ("yuanQuId",params.get(ApiParamsConstants.YUANQU_ID));
+        map.put ("keShiId",params.get(ApiParamsConstants.DEPT_ID));
+        map.put ("pageIndex",params.get(ApiParamsConstants.PAGE_INDEX));
+        map.put ("pageSize",params.get(ApiParamsConstants.PAGE_SIZE));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getListBingQuZd", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getListBingQuZd", map);
     }
 
-    /**
-     * 鑱屸集淇℃伅
-     *
-     * @param bianGengSj 鍙樻洿鏃堕棿
-     * @param pageIndex  褰撳墠饣�
-     * @param pageSize   姣忊粴鏉℃暟锛堟渶饧や笉鑳借秴杩�100锛�
-     * @return
-     */
-    public String getZhiGongPage (String bianGengSj, int pageIndex, int pageSize ) {
+    @Override
+    public String getZhiGongPage(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("bianGengSj",bianGengSj);
-        map.put ("pageIndex",pageIndex);
-        map.put ("pageSize",pageSize);
+        map.put ("bianGengSj","");
+        map.put ("pageIndex",params.get(ApiParamsConstants.PAGE_INDEX));
+        map.put ("pageSize",params.get(ApiParamsConstants.PAGE_SIZE));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getZhiGongPage", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getZhiGongPage", map);
     }
 
-
-    /**
-     * 妫�鏌ラ」鐩�
-     *
-     * @param queryString
-     * @param bianGengSj
-     * @param pageIndex
-     * @param pageSize
-     * @return
-     */
-    public String getJianChaXm (String queryString, String bianGengSj, int pageIndex, int pageSize ) {
+    @Override
+    public String getJianChaXm(Map<String, Object> params) {
         Map<String, Object> map = new HashMap<> ();
-        map.put ("queryString",queryString);
-        map.put ("bianGengSj",bianGengSj);
-        map.put ("pageIndex",pageIndex);
-        map.put ("pageSize",pageSize);
+        map.put ("queryString",params.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        map.put ("bianGengSj","");
+        map.put ("pageIndex",params.get(ApiParamsConstants.PAGE_INDEX));
+        map.put ("pageSize",params.get(ApiParamsConstants.PAGE_SIZE));
         //鑱屼笟缂栫爜
-        return sendPost (HIS_URL+"/zhuShuJu/getJianChaXm", map);
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getJianChaXm", map);
     }
 
-    /**
-     * 妫�楠岄」饨帹閫�
-     *
-     * @param queryCode 鏌ヨ鐮�(椤光浆缂栫爜/鎷尖境鐮�
-     * @param page      褰撳墠饣�
-     * @param size      姣忊粴鏉℃暟锛堟渶饧や笉鑳借秴杩�100
-     * @return
-     */
-    public String getJianYanXm(String queryCode, Integer page, Integer size){
+    @Override
+    public String getJianYanXm(Map<String, Object> map) {
         HashMap<String, Object> hashMap = new HashMap<>();
-        hashMap.put("queryCode",queryCode);
-        hashMap.put("page",page);
-        hashMap.put("size",size);
-        return sendPost (HIS_URL+"/zhuShuJu/getJianYanXm", hashMap);
+        hashMap.put("queryCode",map.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        hashMap.put("page",map.get(ApiParamsConstants.PAGE_INDEX));
+        hashMap.put("size",map.get(ApiParamsConstants.PAGE_SIZE));
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getJianYanXm", hashMap);
     }
 
-    /**
-     * 妫�楠岄」饨敹璐规帹閫�
-     *
-     * @param shouFeiXmId 鏀惰垂椤光浆id
-     * @param jiaGeTx     浠锋牸浣撶郴
-     * @return
-     */
-    public String getShouFeiXmJg(String shouFeiXmId, String jiaGeTx){
+    @Override
+    public String getShouFeiXmJg(Map<String, Object> map) {
         HashMap<String, Object> hashMap = new HashMap<>();
-        hashMap.put("shouFeiXmId",shouFeiXmId);
-        hashMap.put("jiaGeTx",jiaGeTx);
-        return sendPost (HIS_URL+"/zhuShuJu/getShouFeiXmJg", hashMap);
+        hashMap.put("shouFeiXmId",map.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        hashMap.put("jiaGeTx",map.get(ApiParamsConstants.COMMON_QUERY_KEY2));
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getShouFeiXmJg", hashMap);
     }
 
-    /**
-     * 妫�楠屽鍣�
-     *
-     * @param queryString 瀹瑰櫒鍚嶇О(瀹瑰櫒鍚嶇О/杈撯紛鐮�1)
-     * @param pageIndex   褰撳墠饣�
-     * @param pageSize    姣忊粴鏉℃暟锛堟渶饧や笉鑳借秴杩�100锛�
-     * @return
-     */
-    public String getRongQi(String queryString, Integer pageIndex, Integer pageSize){
+    @Override
+    public String getRongQi(Map<String, Object> map) {
         HashMap<String, Object> hashMap = new HashMap<>();
-        hashMap.put("queryString",queryString);
-        hashMap.put("pageIndex",pageIndex);
-        hashMap.put("pageSize",pageSize);
-        return sendPost (HIS_URL+"/zhuShuJu/getRongQi", hashMap);
+        hashMap.put("queryString",map.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        hashMap.put("pageIndex",map.get(ApiParamsConstants.PAGE_INDEX));
+        hashMap.put("pageSize",map.get(ApiParamsConstants.PAGE_SIZE));
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getRongQi", hashMap);
     }
 
-    /**
-     * 妫�楠屾牱鏈�
-     *
-     * @param queryString 鏍锋湰绫诲瀷鍚嶇О(鏍锋湰鍚嶇О/鏍锋湰绫诲瀷id)
-     * @param pageIndex   褰撳墠饣�
-     * @param pageSize    姣忊粴鏉℃暟锛堟渶饧や笉鑳借秴杩�100锛�
-     * @return
-     */
-    public String getJyYangBen(String queryString, Integer pageIndex, Integer pageSize){
+    @Override
+    public String getJyYangBen(Map<String, Object> map) {
         HashMap<String, Object> hashMap = new HashMap<>();
-        hashMap.put("queryString",queryString);
-        hashMap.put("pageIndex",pageIndex);
-        hashMap.put("pageSize",pageSize);
-        return sendPost (HIS_URL+"/zhuShuJu/getYangBen", hashMap);
+        hashMap.put("queryString",map.get(ApiParamsConstants.COMMON_QUERY_KEY));
+        hashMap.put("pageIndex",map.get(ApiParamsConstants.PAGE_INDEX));
+        hashMap.put("pageSize",map.get(ApiParamsConstants.PAGE_SIZE));
+        return sendPostTokenFormData(HIS_URL+"/zhuShuJu/getYangBen", hashMap);
     }
 
-    private String sendPost(String url,Map<String, Object> hashMap){
+    private String sendPost(String url, Map<String, Object> hashMap){
         Map<Object, Object> entries = redisTemplate.opsForHash().entries("token:his:df");
         if (entries != null && !entries.isEmpty()) {
             String timeStr = entries.get("time").toString();
@@ -428,6 +346,53 @@
         }
     }
 
+    private String sendPostTokenFormUrlencoded(String url, Map<String, Object> hashMap){
+        Map<Object, Object> entries = redisTemplate.opsForHash().entries("token:his:df");
+        if (entries != null && !entries.isEmpty()) {
+            String timeStr = entries.get("time").toString();
+            String expiresInStr = entries.get("expires_in").toString();
+            long time = Long.parseLong(timeStr);
+            long expiresIn = Long.parseLong(expiresInStr);
+            Instant tokenExpirationTime = Instant.ofEpochSecond(time).plusSeconds(expiresIn);
+            Instant now = Instant.now();
+            if (now.isAfter(tokenExpirationTime)){
+                return refreshToken(url,hashMap);
+            }else {
+                String accessToken = entries.get("access_token").toString();
+                String tokenType = entries.get("token_type").toString();
+                String string = HttpClientUtils.sendPostTokenFormUrlencoded(url, hashMap, tokenType + " " + accessToken);
+                return StrUtil.isNotBlank(string) ? string : JSONUtil.createObj().toString();
+            }
+        }else {
+            return refreshToken(url, hashMap);
+        }
+    }
+
+    private String sendPostTokenFormData(String url, Map<String, Object> hashMap){
+        Map<Object, Object> entries = redisTemplate.opsForHash().entries("token:his:df");
+        if (entries != null && !entries.isEmpty()) {
+            String timeStr = entries.get("time").toString();
+            String expiresInStr = entries.get("expires_in").toString();
+            long time = Long.parseLong(timeStr);
+            long expiresIn = Long.parseLong(expiresInStr);
+            Instant tokenExpirationTime = Instant.ofEpochSecond(time).plusSeconds(expiresIn);
+            Instant now = Instant.now();
+            if (now.isAfter(tokenExpirationTime)){
+                return refreshToken(url,hashMap);
+            }else {
+                String accessToken = entries.get("access_token").toString();
+                String tokenType = entries.get("token_type").toString();
+                String string = HttpClientUtils.sendPostTokenFormData(url, hashMap, tokenType + " " + accessToken);
+                if(StrUtil.isNotBlank(string)){
+                    JSON json = FieldNameConverter.convertFieldNames(JSONUtil.parse(string));
+                    return JSONUtil.toJsonStr(json);
+                }else return JSONUtil.createObj().toString();
+            }
+        }else {
+            return refreshToken(url, hashMap);
+        }
+    }
+
     private String refreshToken(String url, Map<String, Object> hashMap) {
         JSONObject parseObj = getToken();
         if (parseObj != null) {
@@ -439,8 +404,11 @@
 
                 String accessToken = parseObj.getStr("access_token");
                 String tokenType = parseObj.getStr("token_type");
-                String string = HttpClientUtils.sendPostToken(url, hashMap, tokenType + " " + accessToken);
-                return StrUtil.isNotBlank(string) ? string : JSONUtil.createObj().toString();
+                String string = HttpClientUtils.sendPostTokenFormData(url, hashMap, tokenType + " " + accessToken);
+                if(StrUtil.isNotBlank(string)){
+                    JSON json = FieldNameConverter.convertFieldNames(JSONUtil.parse(string));
+                    return JSONUtil.toJsonStr(json);
+                } else return JSONUtil.createObj().toString();
             }
         }
         return JSONUtil.createObj().toString();

--
Gitblit v1.8.0