From 962f42e4bd9098e210138504759ba2bc7f69c702 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Mon, 19 Apr 2021 11:04:15 +0800
Subject: [PATCH] 1.音视频录制

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/xlfeedback/controller/XlfeedbackController.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/xlfeedback/controller/XlfeedbackController.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/xlfeedback/controller/XlfeedbackController.java
index b9c7a94..71209ee 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/xlfeedback/controller/XlfeedbackController.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/xlfeedback/controller/XlfeedbackController.java
@@ -18,6 +18,8 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.minio.MinioClient;
+import io.minio.errors.*;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -30,6 +32,9 @@
 import org.springblade.core.oss.model.BladeFile;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.jfpt.alarm.service.IAlarmService;
+import org.springblade.jfpt.avideo.entity.Avideo;
+import org.springblade.jfpt.avideo.service.IAvideoService;
 import org.springblade.jfpt.wj.entity.Wj;
 import org.springblade.jfpt.wj.service.IWjService;
 import org.springblade.jfpt.xlfeedback.entity.Xlfeedback;
@@ -38,11 +43,16 @@
 import org.springblade.jfpt.xlfeedback.wrapper.XlfeedbackWrapper;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
+import org.xmlpull.v1.XmlPullParserException;
 
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import java.io.File;
+import java.io.FileInputStream;
 import java.io.IOException;
+import java.io.InputStream;
+import java.security.InvalidKeyException;
+import java.security.NoSuchAlgorithmException;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.HashMap;
@@ -64,6 +74,8 @@
 	private final IXlfeedbackService xlfeedbackService;
 	private IWjService iWjService;
 	private MinioTemplate minioTemplate;
+	private final IAlarmService alarmService;
+	private final IAvideoService iAvideoService;
 
 	/**
 	 * 详情
@@ -232,4 +244,55 @@
 		return  R.data(link);
 
 	}
+
+	/**
+	 *
+	 * @param file
+	 */
+	@PostMapping("put-objects")
+	public R put(@RequestParam MultipartFile file) throws InvalidPortException, InvalidEndpointException, IOException, XmlPullParserException, NoSuchAlgorithmException, InvalidKeyException, InvalidArgumentException, InternalException, NoResponseException, InvalidBucketNameException, InsufficientDataException, ErrorResponseException, RegionConflictException {
+		MinioClient minioClient = new MinioClient("http://36.134.81.48:9000","adminminio","adminminio");
+		if (!minioClient.bucketExists("jfpt")) {	//是否存在名为“test”的bucket
+			minioClient.makeBucket("jfpt");
+		}
+		String fileName = file.getOriginalFilename();
+		String newName ="upload/"+UUID.randomUUID().toString().replaceAll("-", "")
+			+ fileName.substring(fileName.lastIndexOf("."));
+		InputStream inputStream = file.getInputStream();	//获取file的inputStream
+		minioClient.putObject("jfpt", newName, inputStream, "application/octet-stream");//上传
+		inputStream.close();
+		String url = minioClient.getObjectUrl("jfpt", newName);	//文件访问路径
+		return R.data(url);
+	}
+
+	/**
+	 * @param file
+	 */
+	@PostMapping("put-objecty")
+	public R puty(@RequestParam MultipartFile file,String jid) throws InvalidPortException, InvalidEndpointException, IOException, XmlPullParserException, NoSuchAlgorithmException, InvalidKeyException, InvalidArgumentException, InternalException, NoResponseException, InvalidBucketNameException, InsufficientDataException, ErrorResponseException, RegionConflictException {
+		MinioClient minioClient = new MinioClient("http://web.byisf.com:9000","adminminio","adminminio");
+		if (!minioClient.bucketExists("jfpt")) {
+			minioClient.makeBucket("jfpt");
+		}
+		String fileName = file.getOriginalFilename();
+		String newName ="upload/avoid/"+UUID.randomUUID().toString().replaceAll("-", "")
+			+ fileName.substring(fileName.lastIndexOf("."));
+		InputStream inputStream = file.getInputStream();	//获取file的inputStream
+		minioClient.putObject("jfpt", newName, inputStream, "application/octet-stream");//上传
+		inputStream.close();
+		String url = minioClient.getObjectUrl("jfpt", newName);	//文件访问路径
+		String substring = url.substring(25, url.length());
+		String urls="https://web.byisf.com/minio"+substring;
+		//alarmService.updateAaddress(urls,jid);
+		Avideo avideo = new Avideo();
+		avideo.setJid(jid);
+		avideo.setAddress(urls);
+		Date dd = new Date();
+		SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+		String time = sim.format(dd);
+		avideo.setRtime(time);
+		iAvideoService.save(avideo);
+		return R.data(urls);
+	}
+
 }

--
Gitblit v1.9.3