diff --git a/ruoyi-admin/src/main/resources/application-druid.yml b/ruoyi-admin/src/main/resources/application-druid.yml
index 3716a2a..28f7586 100644
--- a/ruoyi-admin/src/main/resources/application-druid.yml
+++ b/ruoyi-admin/src/main/resources/application-druid.yml
@@ -81,3 +81,9 @@ sso:
password: admin123
secretKey: 4ce36bf549d64d44b6cbc48e926abb05
appId: cb00a3e26b963b25e28cae6e046f1190
+report:
+ uploadUrl: http://test.vsp.cqooc.com/open/api/v2/upload/data
+ refreshUrl: http://test.vsp.cqooc.com/open/api/v2/oauth/refresh?token=TOKEN&appid=APPID&signature=SIGNATURE
+ validateUrl: http://vsp.cqooc.com/open/api/v2/oauth/validate?username=USERNAME&password=PASSWORD&nonce=NONCE&cnonce=CNONCE&appid=APPID&signature=SIGNATURE
+ uploadAttachmentUrl: http://test.vsp.cqooc.com/open/api/v2/upload/attachment?access_token=ACCESS_TOKEN&appid=APPID&originId=ORIGINID&filename=FILENAME&title=TITLE&remarks=REMARKS
+ getReportListUrl: http://test.vsp.cqooc.com/open/api/v2/query/data?appId=APPID&accessToken=ACCESS_TOKEN&signature=SIGNATURE
diff --git a/ruoyi-biemo/pom.xml b/ruoyi-biemo/pom.xml
index 7a8ffc1..b455f69 100644
--- a/ruoyi-biemo/pom.xml
+++ b/ruoyi-biemo/pom.xml
@@ -35,10 +35,6 @@
org.springframework.boot
spring-boot-starter-data-mongodb
-
- org.springframework.boot
- spring-boot-starter-data-redis
-
cn.hutool
hutool-all
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/ReportController.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/ReportController.java
index 1569f31..514dde2 100644
--- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/ReportController.java
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/controller/ReportController.java
@@ -4,14 +4,17 @@ import com.ruoyi.biemo.business.domain.Report;
import com.ruoyi.biemo.business.service.ReportService;
import com.ruoyi.biemo.core.page.Page;
import com.ruoyi.biemo.core.page.PageFactory;
+import com.ruoyi.biemo.nlp.SentimentAnalysisUtils;
import com.ruoyi.biemo.nlp.WordVectorModelUtils;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@@ -73,8 +76,8 @@ public class ReportController
@RequestMapping
public AjaxResult add(@RequestBody Report report)
{
- reportService.insertOrUpdateReport(report);
- return AjaxResult.success();
+ //reportService.insertOrUpdateReport(report);
+ return reportService.uploadReport(report, SecurityUtils.getUsername());
}
@@ -102,4 +105,19 @@ public class ReportController
return AjaxResult.success(WordVectorModelUtils.similarCount(text1,text2));
}
+ @PostMapping("/sentiment")
+ public AjaxResult sentiment(String text){
+ return AjaxResult.success("查询成功",SentimentAnalysisUtils.analysis(text));
+ }
+
+ @PostMapping("/sentiment/import")
+ public AjaxResult sentimentImport(MultipartFile[] files,String sentimentName){
+ return AjaxResult.success("模型训练成功",SentimentAnalysisUtils.analysisImport(files,sentimentName));
+ }
+
+ @GetMapping("/sentiment/getCurrSentiments")
+ public AjaxResult getCurrSentiments(){
+ return AjaxResult.success("查询成功",SentimentAnalysisUtils.getCurrSentiments());
+ }
+
}
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/domain/Report.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/domain/Report.java
index 3bc1704..7fb2fee 100644
--- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/domain/Report.java
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/domain/Report.java
@@ -10,6 +10,8 @@ import com.ruoyi.common.core.domain.BaseEntity;
import org.springframework.data.elasticsearch.annotations.Document;
import java.io.Serializable;
+import java.util.List;
+import java.util.Map;
/**
* 报告提交对象 report
@@ -20,28 +22,41 @@ import java.io.Serializable;
@Data
@Document(indexName = "report")
@org.springframework.data.mongodb.core.mapping.Document("report")
-public class Report extends BiemoEntity
-{
- private static final long serialVersionUID = 1L;
-
- /** 主键 */
+public class Report extends BiemoEntity {
+ /**
+ * 主键
+ */
@EsId
private String id;
-
- /** 报告名称 */
- @FieldInfo(type = "string",participle = 3)
- private String name;
-
- /** 状态 */
- @FieldInfo(type = "keyword",participle = 0)
+ /**
+ * 报告名称
+ */
+ @FieldInfo(type = "string", participle = 3)
+ private String title;
+ /**
+ * 状态
+ */
+ @FieldInfo(type = "keyword", participle = 0)
private Long status;
-
- /** 报告编号 */
- @FieldInfo(type = "keyword",participle = 0)
+ /**
+ * 报告编号
+ */
+ @FieldInfo(type = "keyword", participle = 0)
private String reportNo;
-
-
-
-
+ private String accessToken;
+ private String appId;
+ private Long endTime;
+ private Map extData;
+ private String groupId;
+ private String groupMembers;
+ private String groupName;
+ private String openId;
+ private String originId;
+ private String roleInGroup;
+ private Long score;
+ private String signature;
+ private Long startTime;
+ private Long timeUsed;
+ private List steps;
}
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/domain/ReportStep.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/domain/ReportStep.java
new file mode 100644
index 0000000..cea0fd3
--- /dev/null
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/domain/ReportStep.java
@@ -0,0 +1,21 @@
+package com.ruoyi.biemo.business.domain;
+
+import lombok.Data;
+
+@Data
+public class ReportStep {
+
+ private String title;
+ private String evaluation;
+ private Long expectTime;
+ private Long maxScore;
+ private Long repeatCount;
+ private Long score;
+ private Long seq;
+ private Long startTime;
+ private Long endTime;
+ private Long timeUsed;
+ private String remarks;
+ private String scoringModel;
+
+}
diff --git a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/ReportService.java b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/ReportService.java
index e5f082d..68a34de 100644
--- a/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/ReportService.java
+++ b/ruoyi-biemo/src/main/java/com/ruoyi/biemo/business/service/ReportService.java
@@ -10,13 +10,16 @@ import com.ruoyi.biemo.business.domain.event.CategoryDeleteEvent;
import com.ruoyi.biemo.business.domain.event.CategorySaveEvent;
import com.ruoyi.biemo.business.domain.event.ReportDeleteEvent;
import com.ruoyi.biemo.business.domain.event.ReportSaveEvent;
+import com.ruoyi.biemo.core.MyConstants;
import com.ruoyi.biemo.core.page.Page;
+import com.ruoyi.biemo.core.response.MyResponseResult;
import com.ruoyi.biemo.elasticsearch.util.EsService;
import com.ruoyi.biemo.mongodb.utils.CriteriaAndWrapper;
import com.ruoyi.biemo.mongodb.utils.MongoHelper;
import com.ruoyi.biemo.utils.MyObjects;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.constant.UserConstants;
+import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.SecurityUtils;
@@ -192,6 +195,21 @@ public class ReportService extends EsService {
private String appId = "cb00a3e26b963b25e28cae6e046f1190";
@Value("${sso.secretKey}")
private String secretKey = "4ce36bf549d64d44b6cbc48e926abb05";
+
+ @Value("${report.uploadUrl}")
+ private String reportUploadUrl = "http://test.vsp.cqooc.com/open/api/v2/upload/data";
+
+ @Value("${report.refreshUrl}")
+ private String refreshUrl = "http://test.vsp.cqooc.com/open/api/v2/oauth/refresh?token=TOKEN&appid=APPID&signature=SIGNATURE";
+
+ @Value("${report.validateUrl}")
+ private String validateUrl = "http://test.vsp.cqooc.com/open/api/v2/oauth/validate?username=USERNAME&password=PASSWORD&nonce=NONCE&cnonce=CNONCE&appid=APPID&signature=SIGNATURE";
+
+ @Value("${report.uploadAttachmentUrl}")
+ private String uploadAttachmentUrl = "http://test.vsp.cqooc.com/open/api/v2/upload/attachment?access_token=ACCESS_TOKEN&appid=APPID&originId=ORIGINID&filename=FILENAME&title=TITLE&remarks=REMARKS";
+
+ @Value("${report.getReportListUrl}")
+ private String getReportListUrl = "http://test.vsp.cqooc.com/open/api/v2/query/data?appId=APPID&accessToken=ACCESS_TOKEN&signature=SIGNATURE&&originId=ORIGINID";
@Autowired
private RedisCache redisCache;
@@ -213,11 +231,17 @@ public class ReportService extends EsService {
userName = data.getString("userName");
String openId = data.getString("openId");
String accessToken = data.getString("accessToken");
+ MyResponseResult myResponseResult = new MyResponseResult();
+ myResponseResult.setAccessToken(accessToken);
+ myResponseResult.setOpenId(openId);
Long createTime = data.getLong("createTime");
Long expiresTime = data.getLong("expiresTime");
- Long expiresLong = expiresTime-createTime;
- redisCache.setCacheObject(ticket, accessToken, expiresLong.intValue(), TimeUnit.MILLISECONDS);
- //用户名不存在就新建
+ Long expiresLong = expiresTime-System.currentTimeMillis();
+ redisCache.setCacheObject(MyConstants.TOKEN_PREFIX+userName, myResponseResult, expiresLong.intValue(), TimeUnit.MILLISECONDS);
+ if(expiresLong<=0){
+ refreshToken(accessToken,userName,myResponseResult);
+ }
+ //用户名不存在就新建
SysUser sysUser = new SysUser();
if(UserConstants.UNIQUE.equals(userService.checkUserNameUnique(userName))){
sysUser.setUserName(userName);
@@ -250,6 +274,93 @@ public class ReportService extends EsService {
return null;
}
+ //验证用户信息
+
+
+ //上报实验结果
+ public AjaxResult uploadReport(Report report,String username){
+ if(report==null||StringUtils.isBlank(username)){
+ return AjaxResult.error("参数不能为空!");
+ }
+ MyResponseResult myResponseResult = redisCache.getCacheObject(MyConstants.TOKEN_PREFIX+username);
+ if(myResponseResult!=null&&myResponseResult.getAccessToken()!=null){
+ report.setAccessToken(myResponseResult.getAccessToken());
+ String signature = report.getSignature();
+ signature = Md5Utils.hash(appId+secretKey+report.getAccessToken()).toUpperCase();
+ report.setSignature(signature);
+ report.setOpenId(myResponseResult.getOpenId());
+ report.setOriginId(username);
+ RestTemplate restTemplate = new RestTemplate();
+ ResponseEntity