소스 검색

Merge branch 'dev' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

# Conflicts:
#	svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/wechat/WechatMenuController.java
wangzhinan 4 년 전
부모
커밋
5223429c30

+ 53 - 1
business/base-service/src/main/java/com/yihu/jw/file_upload/FileUploadService.java

@ -28,10 +28,14 @@ import org.springframework.web.multipart.MultipartFile;
import javax.activation.MimetypesFileTypeMap;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLDecoder;
import java.nio.charset.Charset;
import java.security.NoSuchAlgorithmException;
import java.util.*;
import java.util.Base64;
import java.util.HashMap;
import java.util.Map;
/**
@ -467,5 +471,53 @@ public class FileUploadService {
        return uploadVO;
    }
    /***
     *
     * 将图片转换为Base64<br>
     * 将base64编码字符串解码成img图片
     * @param imgFile
     * @return
     */
    public static String getImgStr(String imgFile){
        ByteArrayOutputStream data = new ByteArrayOutputStream();
        try {
            // 创建URL
            URL url = new URL(imgFile);
            byte[] by = new byte[1024];
            // 创建链接
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("GET");
            conn.setConnectTimeout(5000);
            InputStream is = conn.getInputStream();
            // 将内容放到内存中
            int len = -1;
            while ((len = is.read(by)) != -1) {
                data.write(by, 0, len);
            }
            is.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        // 对字节数组Base64编码
        return Base64.getEncoder().encodeToString(data.toByteArray());
    }
    public InputStream getInputStream(String downloadFilePath) throws Exception{
        InputStream inputStream = null;
        //从文件链接里获取文件流
        URL url = new URL(downloadFilePath);
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        //设置超时间为3秒
        conn.setConnectTimeout(3 * 1000);
        //防止屏蔽程序抓取而返回403错误
        conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
        //得到输入流
        inputStream = conn.getInputStream();
        return inputStream;
    }
}

+ 27 - 3
business/base-service/src/main/java/com/yihu/jw/hospital/prescription/service/entrance/YkyyEntranceService.java

@ -22,6 +22,7 @@ import com.yihu.jw.entity.hospital.mapping.PatientMappingDO;
import com.yihu.jw.entity.hospital.prescription.*;
import com.yihu.jw.evaluate.score.dao.BaseEvaluateDao;
import com.yihu.jw.evaluate.score.dao.BaseEvaluateScoreDao;
import com.yihu.jw.file_upload.FileUploadService;
import com.yihu.jw.hospital.dict.YkDictIcd10Dao;
import com.yihu.jw.hospital.mapping.dao.DoctorMappingDao;
import com.yihu.jw.hospital.mapping.dao.PatientMappingDao;
@ -30,6 +31,7 @@ import com.yihu.jw.hospital.ykyy.service.YkyyService;
import com.yihu.jw.patient.dao.BasePatientDao;
import com.yihu.jw.patient.dao.BasePatientMedicareCardDao;
import com.yihu.jw.restmodel.hospital.prescription.*;
import com.yihu.jw.restmodel.iot.common.UploadVO;
import com.yihu.jw.util.common.IdCardUtil;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.util.http.HttpClientUtil;
@ -48,6 +50,7 @@ import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.io.InputStream;
import java.math.BigDecimal;
import java.util.*;
@ -136,6 +139,8 @@ public class YkyyEntranceService {
    private YkyyService ykyyService;
    @Autowired
    private PrescriptionEmrDao prescriptionEmrDao;
    @Autowired
    private FileUploadService fileUploadService;
    public List<Map<String, Object>> createSQLQuery(String sql, Map<String, Object> params, Integer page, Integer size){
@ -998,7 +1003,7 @@ public class YkyyEntranceService {
    }
    public String updateYkTDoctor()throws Exception{
    public String updateYkTDoctor(String fastdfs_file_url)throws Exception{
        List<BaseDoctorDO> baseDoctorDOS = baseDoctorDao.findByDel();
        for (BaseDoctorDO baseDoctorDO:baseDoctorDOS){
            String response="";
@ -1014,12 +1019,31 @@ public class YkyyEntranceService {
                    JSONObject jsonObject = array.getJSONObject(0);
                    DoctorMappingDO doctorMappingDO = doctorMappingDao.findByDoctor(baseDoctorDO.getId());
                    String mappingCode = jsonObject.getString("DOCTORCODE");
                    doctorMappingDO.setMappingCode(mappingCode);
                    String photo = jsonObject.getString("doctor_image");
                    if (StringUtils.isNoneBlank(photo)){
                        String name = photo.substring(photo.lastIndexOf("/"),photo.length()-1);
                        InputStream inputStream = fileUploadService.getInputStream(photo);
                        UploadVO uploadVO = new UploadVO();
                        uploadVO = fileUploadService.uploadStream(inputStream,name,fastdfs_file_url);
                        baseDoctorDO.setPhoto(uploadVO.getFullUri());
                    }
                    if (doctorMappingDO==null){
                        doctorMappingDO = new DoctorMappingDO();
                        doctorMappingDO.setMappingCode(mappingCode);
                        doctorMappingDO.setCreateTime(new Date());
                        doctorMappingDO.setDoctor(baseDoctorDO.getId());
                        doctorMappingDO.setDoctorName(baseDoctorDO.getName());
                        doctorMappingDO.setOrgCode("350211A5004");
                        doctorMappingDO.setMappingName(baseDoctorDO.getName());
                        doctorMappingDO.setOrgName("厦门大学附属厦门眼科中心");
                    }else {
                        doctorMappingDO.setMappingCode(mappingCode);
                    }
                    doctorMappingDao.save(doctorMappingDO);
                }else {
                    baseDoctorDO.setDel("0");
                    baseDoctorDao.save(baseDoctorDO);
                }
                baseDoctorDao.save(baseDoctorDO);
            }
        }
        return "success";

+ 5 - 7
gateway/ag-basic/src/main/java/com/yihu/jw/gateway/AesEncryptUtils.java

@ -1,13 +1,10 @@
package com.yihu.jw.gateway;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.codec.binary.Base64;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.spec.SecretKeySpec;
import java.util.HashMap;
import java.util.Map;
/**
 * 前后端数据传输加密工具类
@ -66,10 +63,11 @@ public class AesEncryptUtils {
 
 
    public static void main(String[] args) throws Exception {
        Map map=new HashMap<String,String>();
        map.put("hospital","350211A1002");
        map.put("dictName","consultClose");
        String content = JSONObject.toJSONString(map);
        /*Map map=new HashMap<String,String>();
        map.put("idcard","350322198812052545");
        map.put("price","1");
        map.put("type","1");*/
        String content = "{\"idcard\":\"350322198812052545\",\"price\":\"1\",\"type\":\"1\"}";
        System.out.println("加密前:" + content);
 
        String encrypt = encrypt(content, KEY);

+ 5 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/base/BaseInfoEndpoint.java

@ -19,6 +19,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@ -34,6 +35,9 @@ import java.util.List;
@Api(tags = "基础字典专用,用于各下拉框数据获取", description = "互联网医院")
public class BaseInfoEndpoint extends EnvelopRestEndpoint {
    @Value("${fastDFS.fastdfs_file_url}")
    private String fastdfs_file_url;
    @Autowired
    private BaseCityService cityService;
@ -212,7 +216,7 @@ public class BaseInfoEndpoint extends EnvelopRestEndpoint {
    @GetMapping(value = "/updateYkTDoctor")
    @ApiOperation(value = "同步眼科通医生信息", notes = "同步眼科通医生信息")
    public Envelop updateYkTDoctor() throws Exception {
        return success(ykyyEntranceService.updateYkTDoctor());
        return success(ykyyEntranceService.updateYkTDoctor(fastdfs_file_url));
    }
//    @GetMapping(value = "/test")
//    @ApiOperation(value = "test", notes = "test")