From 837dd00afec9b64d53d0aec1e6418b27a2937164 Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期四, 25 二月 2021 07:59:22 +0800
Subject: [PATCH] fix(员工管理): 更新员工类别与保险类型字典
---
febs-common/febs-common-core/src/main/java/cc/mrbird/febs/common/core/utils/MyUtil.java | 80 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 78 insertions(+), 2 deletions(-)
diff --git a/febs-common/febs-common-core/src/main/java/cc/mrbird/febs/common/core/utils/MyUtil.java b/febs-common/febs-common-core/src/main/java/cc/mrbird/febs/common/core/utils/MyUtil.java
index aee937c..8e02eb9 100644
--- a/febs-common/febs-common-core/src/main/java/cc/mrbird/febs/common/core/utils/MyUtil.java
+++ b/febs-common/febs-common-core/src/main/java/cc/mrbird/febs/common/core/utils/MyUtil.java
@@ -6,6 +6,8 @@
import cn.hutool.core.lang.Dict;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.multipart.MultipartFile;
+import sun.misc.BASE64Decoder;
+
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -106,8 +108,8 @@
if (file.getSize() <= 0) {
throw new FebsException("上传的文件大小需要大于0kb");
}
- if (file.getSize() > 50 * 1024* 1024) {
- throw new FebsException("上传的文件大于50M");
+ if (file.getSize() > 200 * 1024* 1024) {
+ throw new FebsException("上传的文件大于200M");
}
if (!FileUtil.exist(uploadPpath)) {
FileUtil.mkdir(uploadPpath);
@@ -124,6 +126,80 @@
//上传
file.transferTo(new File(uploadPpath + newName));
return Dict.create().set("fileName",fileName).set("suffix",suffix).set("newName",newName);
+ }
+ /**
+ * 对字节数组字符串进行Base64解码并生成图片
+ */
+ public static boolean generateImage(String imgStr,String url) {
+ if (imgStr == null) {
+ // 图像数据为空
+ return false;
+ }
+ imgStr = imgStr.split(",")[1];
+ BASE64Decoder decoder = new BASE64Decoder();
+ try {
+ // Base64解码
+ byte[] b = decoder.decodeBuffer(imgStr);
+ for (int i = 0; i < b.length; ++i) {
+ // 调整异常数据
+ if (b[i] < 0) {
+ b[i] += 256;
+ }
+ }
+ // 生成jpeg图片
+ String imgFilePath = url;
+ OutputStream out = new FileOutputStream(imgFilePath);
+ out.write(b);
+ out.flush();
+ out.close();
+ return true;
+ } catch (Exception e) {
+ return false;
+ }
+ }
+
+
+ /**
+ * 将base64字符串,生成文件
+ */
+ public static File convertBase64ToFile(String fileBase64String, String filePath, String fileName) {
+
+ BufferedOutputStream bos = null;
+ FileOutputStream fos = null;
+ File file = null;
+ try {
+ File dir = new File(filePath);
+ if (!dir.exists() && dir.isDirectory()) {//判断文件目录是否存在
+ dir.mkdirs();
+ }
+
+ BASE64Decoder decoder = new BASE64Decoder();
+ byte[] bfile = decoder.decodeBuffer(fileBase64String);
+
+ file = new File(filePath + File.separator + fileName);
+ fos = new FileOutputStream(file);
+ bos = new BufferedOutputStream(fos);
+ bos.write(bfile);
+ return file;
+ } catch (Exception e) {
+ e.printStackTrace();
+ return null;
+ } finally {
+ if (bos != null) {
+ try {
+ bos.close();
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
+ }
+ if (fos != null) {
+ try {
+ fos.close();
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
+ }
+ }
}
}
--
Gitblit v1.8.0