Browse Source

邮件发送文件类型处理

liyuan 4 months ago
parent
commit
c232551244

+ 5 - 0
blade-service-api/blade-los-api/src/main/java/org/springblade/los/business/sea/vo/GenerateMailVo.java

@@ -14,6 +14,11 @@ public class GenerateMailVo {
 	private byte[] fileContent;
 
 	/**
+	 * 文件内容
+	 */
+	private String fileContentStr;
+
+	/**
 	 * 文件名
 	 */
 	private String fileName;

+ 1 - 1
blade-service/blade-los/pom.xml

@@ -173,7 +173,7 @@
         <dependency>
             <groupId>com.echepei</groupId>
             <artifactId>common-utils</artifactId>
-            <version>1.2</version>
+            <version>1.3</version>
         </dependency>
     </dependencies>
     <repositories>

+ 7 - 1
blade-service/blade-los/src/main/java/org/springblade/los/basic/reports/service/impl/ReportsServiceImpl.java

@@ -29,6 +29,7 @@ import org.springblade.core.secure.BladeUser;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.core.tool.utils.FileUtil;
 import org.springblade.los.Util.BigDecimalUtils;
 import org.springblade.los.Util.IDeptUtils;
 import org.springblade.los.Util.MagicValues;
@@ -93,6 +94,7 @@ import java.math.BigDecimal;
 import java.math.BigInteger;
 import java.math.MathContext;
 import java.math.RoundingMode;
+import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Paths;
 import java.time.LocalDate;
@@ -6779,7 +6781,11 @@ public class ReportsServiceImpl extends ServiceImpl<ReportsMapper, Reports> impl
 		String realFileName = generateMailVo.getFileName() + "." + generateMailVo.getFileType().toLowerCase();
 		String filePath =  baseFilePath + "/" + realFileName;
 		try {
-			Files.write(Paths.get(filePath), generateMailVo.getFileContent());
+			if (Objects.nonNull(generateMailVo.getFileContent())) {
+				Files.write(Paths.get(filePath), generateMailVo.getFileContent());
+			} else {
+				FileUtil.writeToFile(new File(filePath), generateMailVo.getFileContentStr());
+			}
 		} catch (Exception e) {
 			log.error(e.toString());
 			return R.fail("文件写入失败");