liusheng
昨天 28446c1489c8977d634e7a39dbbc96967e22c6f1
smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -1,21 +1,27 @@
package com.smartor.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSON;
import cn.hutool.json.JSONUtil;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.entity.SysUserDept;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.AesUtils;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.http.HttpUtils;
import com.smartor.domain.*;
import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.mapper.*;
import com.smartor.service.IPatMedOuthospService;
import com.smartor.service.IServiceExternalService;
import lombok.extern.slf4j.Slf4j;
import netscape.javascript.JSObject;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -24,6 +30,8 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
@@ -1855,6 +1863,22 @@
        return true;
    }
    @Override
    public Map<String, Object> query360PatInfolwl(Long patid, SysUser sysUser) {
        PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patid);
        Map<String, String> headers = buildRequestHeaders();
        Map<String, Object> requestParams = buildRequestParams(sysUser,patArchive);
        String result = HttpUtils.sendPostByHeader("http://cfdata.nhyfy.cn/kapi/hbos-h360/open/getNoLoginUrl", new Gson().toJson(requestParams), headers);
        log.info("============result的值为:{}",result);
        Gson gson = new Gson();
        Map<String, Object> map = null;
        if (result != null) {
            map = gson.fromJson(result, new TypeToken<Map<String, Object>>() {
            }.getType());
        }
        return map;
    }
    private Boolean getType(String type, Map dataMap) {
        switch (type) {
            case "BR_DA_DangAnJL":
@@ -2031,4 +2055,35 @@
        return ageMap;
    }
    private Map<String, String> buildRequestHeaders() {
        Map<String, String> headers = new HashMap<>();
        headers.put("Content-Type", "application/json");
        headers.put("app-key", "ak-0p5Qi0J1I4AL67ztEYQL1j9v");
        return headers;
    }
    private Map<String, Object> buildRequestParams(SysUser sysUser,PatArchive patArchive) {
        Map<String, Object> requestParams = new HashMap<>();
        requestParams.put("key",  sysUser.getUserName());
        requestParams.put("windowOpen", false);
        requestParams.put("isShowHeader", false);
        requestParams.put("encode", 1);
        Map<String, Object> params = new HashMap<>();
        //病历号
        params.put("patientMainIndexNum", patArchive.getPatientno());
        params.put("sourceSystem", "pacs");
        params.put("workId", sysUser.getUserName());
        params.put("workName", sysUser.getNickName());
        params.put("hisDepName", sysUser.getDeptName());
        params.put("hisDepCode", sysUser.getDeptCode());
        params.put("hisOrgName", "南华大学附属第一医院");
        params.put("hisOrgCode", "20001001");
        params.put("hisHosName", "南华大学附属第一医院");
        params.put("hisHosCode", "30001002");
        requestParams.put("params", params);
        return requestParams;
    }
}