From 5d2cfd4562f74496a5263db3451c1e78ff53aead Mon Sep 17 00:00:00 2001 From: heheng <475597332@qq.com> Date: 星期四, 27 三月 2025 08:44:16 +0800 Subject: [PATCH] 单据增加查询返回字段 --- assess-system/src/main/java/com/gkhy/assess/system/service/impl/SysCommonServiceImpl.java | 78 ++++++++++++++++++++++++++++++--------- 1 files changed, 60 insertions(+), 18 deletions(-) diff --git a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/SysCommonServiceImpl.java b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/SysCommonServiceImpl.java index 25f68bd..da2a60a 100644 --- a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/SysCommonServiceImpl.java +++ b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/SysCommonServiceImpl.java @@ -1,16 +1,20 @@ package com.gkhy.assess.system.service.impl; import cn.hutool.core.date.DateUtil; +import com.alibaba.excel.EasyExcel; import com.gkhy.assess.common.exception.ApiException; +import com.gkhy.assess.system.excel.ExpertExcelListener; +import com.gkhy.assess.system.domain.vo.SysExpertInfoExcelVO; import com.gkhy.assess.system.domain.vo.UploadObjectVO; import com.gkhy.assess.system.service.SysCommonService; import org.springframework.beans.factory.annotation.Value; +import org.springframework.core.io.ClassPathResource; +import org.springframework.core.io.Resource; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; +import sun.misc.BASE64Decoder; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; +import java.io.*; import java.util.Date; import java.util.UUID; @@ -22,6 +26,9 @@ @Override public UploadObjectVO uploadFile(MultipartFile file) { + if(file==null){ + throw new ApiException("上传文件不能为空"); + } UploadObjectVO uploadObjectVO=doUpload(file); return uploadObjectVO; } @@ -41,8 +48,20 @@ return true; } + @Override + public void importExcel() throws IOException { + ClassPathResource classPathResource = new ClassPathResource("abc.xlsx"); + InputStream inputStream = classPathResource.getInputStream(); + if(inputStream==null){ + throw new ApiException("获取文件失败"); + } + EasyExcel.read(inputStream, SysExpertInfoExcelVO.class,new ExpertExcelListener()).sheet(0).doRead(); + } + + @Override public UploadObjectVO doUpload(MultipartFile file){ - String filename=file.getOriginalFilename(); + String originName=file.getOriginalFilename(); + String filename=originName; String subfix=filename.substring(filename.lastIndexOf(".")); filename= UUID.randomUUID().toString().replace("-","")+subfix; String systemDir=System.getProperty("user.dir"); @@ -62,24 +81,47 @@ } filePath=filePath.replace("\\","/"); UploadObjectVO uploadObjectVO=new UploadObjectVO().setFilename(filename) - .setPath(filePath); + .setPath(filePath).setOriginName(originName); return uploadObjectVO; } - - public boolean checkImageType(String subfix){ - if(".jpg".equalsIgnoreCase(subfix)|| - ".jpeg".equalsIgnoreCase(subfix)|| - ".png".equalsIgnoreCase(subfix)|| - ".bmp".equalsIgnoreCase(subfix)|| - ".tif".equalsIgnoreCase(subfix)|| - ".jfif".equalsIgnoreCase(subfix)|| - ".webp".equalsIgnoreCase(subfix)|| - ".gif".equalsIgnoreCase(subfix) - ){ - return true; + @Override + public UploadObjectVO doUpload(String imageBase64) { + String originName=""; + String filename=originName; + String subfix=".png"; + filename= UUID.randomUUID().toString().replace("-","")+subfix; + String systemDir=System.getProperty("user.dir"); + String dateStr= DateUtil.format(new Date(),"yyyyMMdd"); + String filePath=uploadPath+File.separator+dateStr; + File dirFile=new File(filePath); + if(!dirFile.exists()){ + dirFile.mkdirs(); } - return false; + filePath=filePath+File.separator+filename; + BASE64Decoder decoder = new BASE64Decoder(); + try { + // Base64解码 + byte[] bytes = decoder.decodeBuffer(imageBase64); + for (int i = 0; i < bytes.length; ++i) { + if (bytes[i] < 0) {// 调整异常数据 + bytes[i] += 256; + } + } + // 生成jpeg图片 + OutputStream out = new FileOutputStream(systemDir+File.separator+filePath); + out.write(bytes); + out.flush(); + out.close(); + } catch (FileNotFoundException e) { + throw new ApiException("找不到文件"); + } catch (IOException e) { + throw new ApiException("发生错误,请联系管理员"); + } + filePath=filePath.replace("\\","/"); + UploadObjectVO uploadObjectVO=new UploadObjectVO().setFilename(filename) + .setPath(filePath).setOriginName(originName); + return uploadObjectVO; } } -- Gitblit v1.9.2