Search in sources :

Example 1 with AboutFileUtil

use of com.moxi.mogublog.picture.util.AboutFileUtil in project mogu_blog_v2 by moxi624.

the class FileServiceImpl method ckeditorUploadToolFile.

@Override
public Object ckeditorUploadToolFile(HttpServletRequest request) {
    String token = request.getParameter(SysConf.TOKEN);
    // 从Redis中获取系统配置【需要传入token】
    Map<String, String> qiNiuResultMap = feignUtil.getSystemConfigMap(token);
    SystemConfig systemConfig = feignUtil.getSystemConfigByMap(qiNiuResultMap);
    Map<String, Object> map = new HashMap<>();
    Map<String, Object> errorMap = new HashMap<>();
    // 引用自己设计的一个工具类
    AboutFileUtil af = new AboutFileUtil();
    // 转换成多部分request
    MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
    // 取得request中的所有文件名
    Iterator<String> iter = multiRequest.getFileNames();
    while (iter.hasNext()) {
        MultipartFile file = multiRequest.getFile(iter.next());
        if (file != null) {
            // 获取旧名称
            String oldName = file.getOriginalFilename();
            // 获取扩展名
            String expandedName = FileUtils.getPicExpandedName(oldName);
            // 判断是否安全文件
            if (!af.isSafe(expandedName)) {
                map.put(SysConf.UPLOADED, 0);
                errorMap.put(SysConf.MESSAGE, "请上传正确格式的文件");
                map.put(SysConf.ERROR, errorMap);
                return map;
            }
            // 对文件大小进行限制
            if (file.getSize() > (50 * 1024 * 1024)) {
                map.put(SysConf.UPLOADED, 0);
                errorMap.put(SysConf.MESSAGE, "文件大小不能超过50M");
                map.put(SysConf.ERROR, errorMap);
                return map;
            }
            // 设置图片上传服务必要的信息
            request.setAttribute(SysConf.USER_UID, SysConf.DEFAULT_UID);
            request.setAttribute(SysConf.ADMIN_UID, SysConf.DEFAULT_UID);
            request.setAttribute(SysConf.PROJECT_NAME, SysConf.BLOG);
            request.setAttribute(SysConf.SORT_NAME, SysConf.ADMIN);
            List<MultipartFile> fileData = new ArrayList<>();
            fileData.add(file);
            String result = fileService.batchUploadFile(request, fileData, systemConfig);
            Map<String, Object> resultMap = JsonUtils.jsonToMap(result);
            String code = resultMap.get(SysConf.CODE).toString();
            if (SysConf.SUCCESS.equals(code)) {
                List<HashMap<String, Object>> resultList = (List<HashMap<String, Object>>) resultMap.get(SysConf.DATA);
                if (resultList.size() > 0) {
                    Map<String, Object> picture = resultList.get(0);
                    String fileName = picture.get(SysConf.PIC_NAME).toString();
                    map.put(SysConf.UPLOADED, 1);
                    map.put(SysConf.FILE_NAME, fileName);
                    // 设置显示方式
                    if (EFilePriority.QI_NIU.equals(systemConfig.getContentPicturePriority())) {
                        String qiNiuPictureBaseUrl = systemConfig.getQiNiuPictureBaseUrl();
                        String qiNiuUrl = qiNiuPictureBaseUrl + picture.get(SysConf.QI_NIU_URL).toString();
                        map.put(SysConf.URL, qiNiuUrl);
                    } else if (EFilePriority.MINIO.equals(systemConfig.getContentPicturePriority())) {
                        String minioPictureBaseUrl = systemConfig.getMinioPictureBaseUrl();
                        // 设置图片服务根域名
                        String url = minioPictureBaseUrl + picture.get(SysConf.MINIO_URL).toString();
                        map.put(SysConf.URL, url);
                    } else {
                        String localPictureBaseUrl = systemConfig.getLocalPictureBaseUrl();
                        // 设置图片服务根域名
                        String url = localPictureBaseUrl + picture.get(SysConf.PIC_URL).toString();
                        map.put(SysConf.URL, url);
                    }
                }
                return map;
            } else {
                map.put(SysConf.UPLOADED, 0);
                errorMap.put(SysConf.MESSAGE, "上传失败");
                map.put(SysConf.ERROR, errorMap);
                return map;
            }
        }
    }
    return null;
}
Also used : SystemConfig(com.moxi.mogublog.commons.entity.SystemConfig) AboutFileUtil(com.moxi.mogublog.picture.util.AboutFileUtil) MultipartFile(org.springframework.web.multipart.MultipartFile) MultipartHttpServletRequest(org.springframework.web.multipart.MultipartHttpServletRequest)

Example 2 with AboutFileUtil

use of com.moxi.mogublog.picture.util.AboutFileUtil in project mogu_blog_v2 by moxi624.

the class FileServiceImpl method ckeditorUploadFile.

@Override
public Object ckeditorUploadFile(HttpServletRequest request) {
    String token = request.getParameter(SysConf.TOKEN);
    // 从Redis中获取七牛云配置文件
    Map<String, String> qiNiuResultMap = feignUtil.getSystemConfigMap(token);
    SystemConfig systemConfig = feignUtil.getSystemConfigByMap(qiNiuResultMap);
    Map<String, Object> map = new HashMap<>();
    Map<String, Object> errorMap = new HashMap<>();
    // 引用自己设计的一个工具类
    AboutFileUtil af = new AboutFileUtil();
    // 转换成多部分request
    MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request;
    // 取得request中的所有文件名
    Iterator<String> iter = multiRequest.getFileNames();
    while (iter.hasNext()) {
        MultipartFile file = multiRequest.getFile(iter.next());
        if (file != null) {
            // 获取旧名称
            String oldName = file.getOriginalFilename();
            // 获取扩展名
            String expandedName = FileUtils.getPicExpandedName(oldName);
            // 判断是否是图片
            if (!af.isPic(expandedName)) {
                map.put(SysConf.UPLOADED, 0);
                errorMap.put(SysConf.MESSAGE, "请上传正确的图片");
                map.put(SysConf.ERROR, errorMap);
                return map;
            }
            // 对图片大小进行限制
            if (file.getSize() > (10 * 1024 * 1024)) {
                map.put(SysConf.UPLOADED, 0);
                errorMap.put(SysConf.MESSAGE, "图片大小不能超过10M");
                map.put(SysConf.ERROR, errorMap);
                return map;
            }
            // 设置图片上传服务必要的信息
            request.setAttribute(SysConf.USER_UID, SysConf.DEFAULT_UID);
            request.setAttribute(SysConf.ADMIN_UID, SysConf.DEFAULT_UID);
            request.setAttribute(SysConf.PROJECT_NAME, SysConf.BLOG);
            request.setAttribute(SysConf.SORT_NAME, SysConf.ADMIN);
            List<MultipartFile> fileData = new ArrayList<>();
            fileData.add(file);
            // 批量上传图片
            String result = fileService.batchUploadFile(request, fileData, systemConfig);
            Map<String, Object> resultMap = JsonUtils.jsonToMap(result);
            String code = resultMap.get(SysConf.CODE).toString();
            if (SysConf.SUCCESS.equals(code)) {
                List<HashMap<String, Object>> resultList = (List<HashMap<String, Object>>) resultMap.get(SysConf.DATA);
                if (resultList.size() > 0) {
                    Map<String, Object> picture = resultList.get(0);
                    String fileName = picture.get(SysConf.PIC_NAME).toString();
                    map.put(SysConf.UPLOADED, 1);
                    map.put(SysConf.FILE_NAME, fileName);
                    // 设置博客详情显示方式
                    if (EFilePriority.QI_NIU.equals(systemConfig.getContentPicturePriority())) {
                        String qiNiuPictureBaseUrl = systemConfig.getQiNiuPictureBaseUrl();
                        String qiNiuUrl = picture.get(SysConf.QI_NIU_URL).toString();
                        map.put(SysConf.URL, qiNiuPictureBaseUrl + qiNiuUrl);
                    } else if (EFilePriority.MINIO.equals(systemConfig.getContentPicturePriority())) {
                        String minioPictureBaseUrl = systemConfig.getMinioPictureBaseUrl();
                        String url = minioPictureBaseUrl + picture.get(SysConf.MINIO_URL).toString();
                        map.put(SysConf.URL, url);
                    } else {
                        String localPictureBaseUrl = systemConfig.getLocalPictureBaseUrl();
                        // 设置图片服务根域名
                        String url = localPictureBaseUrl + picture.get(SysConf.PIC_URL).toString();
                        map.put(SysConf.URL, url);
                    }
                }
            } else {
                map.put(SysConf.UPLOADED, 0);
                errorMap.put(SysConf.MESSAGE, "上传失败");
                map.put(SysConf.ERROR, errorMap);
            }
        }
    }
    return map;
}
Also used : SystemConfig(com.moxi.mogublog.commons.entity.SystemConfig) AboutFileUtil(com.moxi.mogublog.picture.util.AboutFileUtil) MultipartFile(org.springframework.web.multipart.MultipartFile) MultipartHttpServletRequest(org.springframework.web.multipart.MultipartHttpServletRequest)

Aggregations

SystemConfig (com.moxi.mogublog.commons.entity.SystemConfig)2 AboutFileUtil (com.moxi.mogublog.picture.util.AboutFileUtil)2 MultipartFile (org.springframework.web.multipart.MultipartFile)2 MultipartHttpServletRequest (org.springframework.web.multipart.MultipartHttpServletRequest)2