路泰机电科技体检——数据平台后端
zhaowenxuan
2024-12-19 2a1045b15cd5cea09d464ad0de8c1827b73c5595
调整
1个文件已修改
428 ■■■■ 已修改文件
src/main/java/com/example/service/shanxiqin/xian/MeiJiHisService.java 428 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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,7 +96,7 @@
        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","");
@@ -111,28 +104,28 @@
        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,270 +133,195 @@
        }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 正常;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){
@@ -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();