wangzhinan 3 éve
szülő
commit
270e297de7

+ 2 - 0
business/base-service/src/main/java/com/yihu/jw/file_upload/FileUploadRunnable.java

@ -66,6 +66,8 @@ public class FileUploadRunnable implements Runnable {
                e.printStackTrace();
            } catch (MyException e) {
                e.printStackTrace();
            } catch (Exception e) {
                e.printStackTrace();
            }
        });
        callback.callback(photoUrl.toString());

+ 41 - 16
business/base-service/src/main/java/com/yihu/jw/file_upload/FileUploadService.java

@ -34,9 +34,7 @@ import java.net.URL;
import java.net.URLDecoder;
import java.nio.charset.Charset;
import java.security.NoSuchAlgorithmException;
import java.util.Base64;
import java.util.HashMap;
import java.util.Map;
import java.util.*;
/**
@ -63,7 +61,7 @@ public class FileUploadService {
     * @return
     * @throws Exception
     */
    public UploadVO uploadImg(InputStream inputStream, String originalFileName,long fileSize,String fastdfs_file_url) throws NoSuchAlgorithmException, IOException, MyException {
    public UploadVO uploadImg(InputStream inputStream, String originalFileName,long fileSize,String fastdfs_file_url) throws Exception {
        // 得到文件的完整名称  xxx.txt
        if( null == inputStream){
            throw new FileInputStreamEmptyException("图片文件流不可为空!");
@ -82,6 +80,10 @@ public class FileUploadService {
            throw new FileWrongFormatException("图片文件格式不正确,请上传jpg,jpeg,png等任一格式!");
        }
        if (!isFileFlag(fileType)){
            throw new FileWrongFormatException("不符合文件上传格式");
        }
        long max = 5*1024*1024;
        if(fileSize > max){
            throw new FileTooLargeSizeException("图片文件过大,请不要超过5M!");
@ -164,6 +166,9 @@ public class FileUploadService {
        //得到文件类型sentitiveLog.txt
        String fileType = originalFileName.substring(originalFileName.lastIndexOf(".") + 1).toLowerCase();
        String fileName = originalFileName.substring(0, originalFileName.lastIndexOf("."));
        if (!isFileFlag(fileType)){
            throw new FileWrongFormatException("不符合文件上传格式");
        }
        //上传到fastdfs
        ObjectNode objectNode = fastDFSHelper.upload(inputStream, fileType, "");
        //解析返回的objectNode
@ -198,13 +203,17 @@ public class FileUploadService {
        String type = fs[1];
        logger.info("uploadImg type:"+type);
        //图片常见格式:bmp,jpg,png,tif,gif,pcx,tga,exif,fpx,svg,psd,cdr,pcd,dxf,ufo,eps,ai,raw,WMF,webp
//        List img = new ArrayList(Arrays.asList("bmp", "jpg", "png", "tif", "gif", "pcx", "tga", "exif", "fpx", "svg", "psd", "cdr", "pcd", "dxf", "ufo", "eps", "ai", "raw", "WMF", "webp"));
//        if (!img.contains(type)) {
//            map.put("uploadStatus",2);//文件类型不对
//            map.put("accessoryUrl",null);//
//            return map;
//        }
        String response = request(wlyyUrl + "/upload/chat", multipartFile, null);
       /* List img = new ArrayList(Arrays.asList("bmp", "jpg", "png", "tif", "gif", "pcx", "tga", "exif", "fpx", "svg", "psd", "cdr", "pcd", "dxf", "ufo", "eps", "ai", "raw", "WMF", "webp"));
        if (!img.contains(type)) {
            map.put("uploadStatus",2);//文件类型不对
            map.put("accessoryUrl",null);//
            return map;
        }*/
       if (!isFileFlag(type)){
           throw new FileWrongFormatException("不符合文件上传格式");
       }
        String response = request(wlyyUrl + "/upload/chat", multipartFile, type);
        org.json.JSONObject rs = new org.json.JSONObject(response);
        Integer status = (Integer) rs.get("status");
        if (status == 200) {
@ -262,7 +271,7 @@ public class FileUploadService {
//            return map;
//        }
            logger.info("语音文件转换file-转换-multipartFile-成功,开始调用i健康接口上传文件");
            String response = request(wlyyUrl + "/upload/chat", multipartFile, null);
            String response = request(wlyyUrl + "/upload/chat", multipartFile, type);
            org.json.JSONObject rs = new org.json.JSONObject(response);
            Integer status = (Integer) rs.get("status");
            if (status == 200) {
@ -307,8 +316,10 @@ public class FileUploadService {
                return url;
            }
            String fileName = multipartFile.getOriginalFilename();
            String[] fs = fileName.split("\\.");
            String type = fs[1];
            logger.info("语音文件转换file-转换-multipartFile-成功,开始调用内网接口上传文件");
            String rs = request(remote_inner_url, multipartFile, null);
            String rs = request(remote_inner_url, multipartFile, type);
            logger.info(rs);
            JSONObject json = JSON.parseObject(rs);
            uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -359,8 +370,9 @@ public class FileUploadService {
                    return fileUrls;
                }
                logger.info("图片文件转换file-转换-multipartFile-成功,开始调用内网接口上传文件");
                String rs = request(remote_inner_url, multipartFile, null);
                String rs = request(remote_inner_url, multipartFile, fileContenType);
                logger.info(rs);
                JSONObject json = JSON.parseObject(rs);
                uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -422,7 +434,7 @@ public class FileUploadService {
//            return map;
//        }
            logger.info("语音文件转换file-转换-multipartFile-成功,开始调用i健康接口上传文件");
            String response = request( remoteUrl, multipartFile, null);
            String response = request( remoteUrl, multipartFile, type);
            JSONObject json = JSON.parseObject(response);
            Integer status = json.getInteger("status");
            if (status == 200) {
@ -479,7 +491,7 @@ public class FileUploadService {
//            return map;
//        }
            logger.info("图片文件转换file-转换-multipartFile-成功,开始调用i健康接口上传文件");
            String response = request(wlyyUrl + "/upload/chat", multipartFile, null);
            String response = request(wlyyUrl + "/upload/chat", multipartFile, type);
            org.json.JSONObject rs = new org.json.JSONObject(response);
            Integer status = (Integer) rs.get("status");
            if (status == 200) {
@ -506,6 +518,10 @@ public class FileUploadService {
            if (!org.springframework.util.StringUtils.isEmpty(type)) {
                builder.addTextBody("type", type); //发送类型
            }
            logger.info("type===="+type);
            if (!isFileFlag(type)){
                throw new FileWrongFormatException("不符合文件上传格式");
            }
            HttpEntity entity = builder.build();
            httpPost.setEntity(entity);
            HttpResponse response = httpClient.execute(httpPost);// 执行提交
@ -622,6 +638,7 @@ public class FileUploadService {
        fastDFSHelper.delete(groupName,fileName);
    }
    /*
     * base64上传图片心脏
     * @param jsonData,头像转化后的输入流
@ -654,5 +671,13 @@ public class FileUploadService {
        return uploadVO;
    }
    public boolean isFileFlag(String type){
        List img = new ArrayList(Arrays.asList("bmp", "jpg", "png", "tif", "gif", "pcx", "tga", "exif", "fpx", "svg", "psd", "cdr", "pcd", "dxf", "ufo", "eps", "ai", "raw", "WMF", "webp","xls","xlsx","text/plain"));
        if (!img.contains(type)) {
            return false;
        }
        return true;
    }
}

+ 1 - 1
business/base-service/src/main/java/com/yihu/jw/hospital/prescription/service/PrescriptionService.java

@ -12130,7 +12130,7 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres
            jsondate.put("targetChild",secondJobName);
            jsondate.put("target",firstJobName);
            jsondate.put("quantity",1);
            jsondate.put("idno_type",idnoType);
            jsondate.put("idnoType",idnoType);
            Map<String,Object> map = findRandomDoctor();
            net.sf.json.JSONObject rs = new JSONObject();
            if (map!=null){

+ 16 - 4
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/common/FileUploadController.java

@ -76,8 +76,11 @@ public class FileUploadController extends EnvelopRestEndpoint {
            Map<String, Object> map = fileUploadService.uploadImg(file);
            uploadVO.setFullUri(map.get("accessory").toString());
        }else if(isClose.equals("2")){
            String originalFilename = file.getOriginalFilename();
            String[] fs = originalFilename.split("\\.");
            String type = fs[1];
            //内网上传
            String rs = fileUploadService.request(remote_inner_url,file,null);
            String rs = fileUploadService.request(remote_inner_url,file,type);
            logger.info(rs);
            JSONObject json = JSON.parseObject(rs);
            uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -106,8 +109,11 @@ public class FileUploadController extends EnvelopRestEndpoint {
            Map<String, Object> map = fileUploadService.uploadImg(file);
            uploadVO.setFullUri(map.get("accessory").toString());
        }else if(isClose.equals("2")){
            String originalFilename = file.getOriginalFilename();
            String[] fs = originalFilename.split("\\.");
            String type = fs[1];
            //内网上传
            String rs = fileUploadService.request(remote_inner_url,file,null);
            String rs = fileUploadService.request(remote_inner_url,file,type);
            logger.info(rs);
            JSONObject json = JSON.parseObject(rs);
            uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -154,8 +160,11 @@ public class FileUploadController extends EnvelopRestEndpoint {
                uploadVO.setFullUri(map.get("accessory").toString());
                uploadVO.setFileName(file.getOriginalFilename());
            }else if(isClose.equals("2")){
                String originalFilename = file.getOriginalFilename();
                String[] fs = originalFilename.split("\\.");
                String type = fs[1];
                //内网上传
                String rs = fileUploadService.request(remote_inner_url,file,null);
                String rs = fileUploadService.request(remote_inner_url,file,type);
                logger.info(rs);
                JSONObject json = JSON.parseObject(rs);
                uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -221,8 +230,11 @@ public class FileUploadController extends EnvelopRestEndpoint {
                Map<String, Object> map = fileUploadService.uploadImg(multipartFile);
                uploadVO.setFullUri(map.get("accessory").toString());
            }else if(isClose.equals("2")){
                String originalFilename = multipartFile.getOriginalFilename();
                String[] fs = originalFilename.split("\\.");
                String type = fs[1];
                //内网上传
                String rs = fileUploadService.request(remote_inner_url,multipartFile,null);
                String rs = fileUploadService.request(remote_inner_url,multipartFile,type);
                logger.info(rs);
                JSONObject json = JSON.parseObject(rs);
                uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);

+ 21 - 4
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/file_upload/FileUploadEndpoint.java

@ -3,6 +3,7 @@ package com.yihu.jw.hospital.endpoint.file_upload;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.jw.exception.business.file_upload.FileWrongFormatException;
import com.yihu.jw.file_upload.FileManageService;
import com.yihu.jw.file_upload.FileUploadService;
import com.yihu.jw.restmodel.MutilFileInfo;
@ -67,8 +68,11 @@ public class FileUploadEndpoint extends EnvelopRestEndpoint {
            InputStream inputStream = file.getInputStream();
            uploadVO = fileUploadService.uploadImg(inputStream,originalFilename,file.getSize(),fastdfs_file_url);
        }else if(isClose.equals("2")){
            String originalFilename = file.getOriginalFilename();
            String[] fs = originalFilename.split("\\.");
            String type = fs[1];
            //内网上传
            String rs = fileUploadService.request(remote_inner_url,file,null);
            String rs = fileUploadService.request(remote_inner_url,file,type);
            logger.info(rs);
            JSONObject json = JSON.parseObject(rs);
            uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -91,8 +95,11 @@ public class FileUploadEndpoint extends EnvelopRestEndpoint {
            InputStream inputStream = file.getInputStream();
            uploadVO = fileUploadService.uploadAttachment(inputStream,originalFilename,file.getSize(),fastdfs_file_url);
        }else if(isClose.equals("2")){
            String originalFilename = file.getOriginalFilename();
            String[] fs = originalFilename.split("\\.");
            String type = fs[1];
            //内网上传
            String rs = fileUploadService.request(remote_inner_url,file,null);
            String rs = fileUploadService.request(remote_inner_url,file,type);
            logger.info(rs);
            JSONObject json = JSON.parseObject(rs);
            uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -111,12 +118,16 @@ public class FileUploadEndpoint extends EnvelopRestEndpoint {
                                             @ApiParam(value = "文件", required = true)
                                             @RequestParam(value = "filename", required = false) String filename) throws Exception{
        UploadVO uploadVO = new UploadVO();
        if (isClose.equalsIgnoreCase("1")){
            Map<String, Object> map = fileUploadService.uploadImg(file);
            uploadVO.setFullUri(map.get("accessory").toString());
        }else if(isClose.equals("2")){
            String originalFilename = file.getOriginalFilename();
            String[] fs = originalFilename.split("\\.");
            String type = fs[1];
            //内网上传
            String rs = fileUploadService.request(remote_inner_url,file,null);
            String rs = fileUploadService.request(remote_inner_url,file,type);
            logger.info(rs);
            JSONObject json = JSON.parseObject(rs);
            uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -159,6 +170,9 @@ public class FileUploadEndpoint extends EnvelopRestEndpoint {
        files.setChunk(chunk);
        files.setChunkTotal(chunkTotal);
        files.setFile(file);
        if (!fileUploadService.isFileFlag(objectType+"")){
            throw new FileWrongFormatException("不符合文件上传格式");
        }
        files.setObjectType(objectType);
        files.setSize(file.getSize());
        files.setTaskId(taskId);
@ -174,8 +188,11 @@ public class FileUploadEndpoint extends EnvelopRestEndpoint {
                Map<String, Object> map = fileUploadService.uploadImg(multipartFile);
                uploadVO.setFullUri(map.get("accessory").toString());
            }else if(isClose.equals("2")){
                String originalFilename = multipartFile.getOriginalFilename();
                String[] fs = originalFilename.split("\\.");
                String type = fs[1];
                //内网上传
                String rs = fileUploadService.request(remote_inner_url,multipartFile,null);
                String rs = fileUploadService.request(remote_inner_url,multipartFile,type);
                logger.info(rs);
                JSONObject json = JSON.parseObject(rs);
                uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);

+ 8 - 2
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/service/consult/QrcodeService.java

@ -245,8 +245,11 @@ public class QrcodeService {
                        uploadVO.setFullUri(map.get("accessory").toString());
                    }else if(isClose.equals("2")){
                        System.out.println("isClose"+2);
                        String originalFilename = multipartFile.getOriginalFilename();
                        String[] fs = originalFilename.split("\\.");
                        String type = fs[1];
                        //内网上传
                        String rs = fileUploadService.request(remote_inner_url,multipartFile,null);
                        String rs = fileUploadService.request(remote_inner_url,multipartFile,type);
                        System.out.println("rs"+rs);
                        com.alibaba.fastjson.JSONObject rsJson = JSON.parseObject(rs);
                        uploadVO = objectMapper.readValue(rsJson.getJSONObject("obj").toJSONString(),UploadVO.class);
@ -368,8 +371,11 @@ public class QrcodeService {
                    uploadVO.setFullUri(map.get("accessory").toString());
                }else if(isClose.equals("2")){
                    System.out.println("isClose"+2);
                    String originalFilename = multipartFile.getOriginalFilename();
                    String[] fs = originalFilename.split("\\.");
                    String type = fs[1];
                    //内网上传
                    String rs = fileUploadService.request(remote_inner_url,multipartFile,null);
                    String rs = fileUploadService.request(remote_inner_url,multipartFile,type);
                    System.out.println("rs"+rs);
                    com.alibaba.fastjson.JSONObject rsJson = JSON.parseObject(rs);
                    uploadVO = objectMapper.readValue(rsJson.getJSONObject("obj").toJSONString(),UploadVO.class);

+ 3 - 1
svr/svr-rehabilitation/src/main/java/com/yihu/rehabilitation/service/RehabilitationPlanService.java

@ -314,8 +314,10 @@ public class RehabilitationPlanService extends BaseJpaService<PatientRehabilitat
                Map<String, Object> map = fileUploadService.uploadImg(new MockMultipartFile(originalFilename,originalFilename,"", ipt));
                uploadVO.setFullUri(map.get("accessory").toString());
            }else if(isClose.equals("2")){
                String[] fs = originalFilename.split("\\.");
                String type = fs[1];
                //内网上传
                String rs = fileUploadService.request(remote_inner_url,new MockMultipartFile(originalFilename,originalFilename,"", ipt),null);
                String rs = fileUploadService.request(remote_inner_url,new MockMultipartFile(originalFilename,originalFilename,"", ipt),type);
                com.alibaba.fastjson.JSONObject json = JSON.parseObject(rs);
                uploadVO = objectMapper.readValue(json.getJSONObject("obj").toJSONString(),UploadVO.class);