|
|
package com.sztzjy.linkCommerce.controller.stu;
|
|
|
|
|
|
import cn.hutool.core.util.IdUtil;
|
|
|
import com.sztzjy.linkCommerce.annotation.AnonymousAccess;
|
|
|
import com.sztzjy.linkCommerce.entity.dto.StuWordCreateDto;
|
|
|
import com.sztzjy.linkCommerce.util.TagWordCloudService;
|
|
|
import com.sztzjy.linkCommerce.util.file.IFileUtil;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.File;
|
|
|
import java.io.IOException;
|
|
|
|
|
|
/**
|
|
|
* @author 17803
|
|
|
* @date 2024-06-17 10:29
|
|
|
*/
|
|
|
|
|
|
@Api(tags = "用户画像模型下载数据")
|
|
|
@RestController
|
|
|
@RequestMapping("api/downDataByUserPortrait")
|
|
|
public class DownloadDataController {
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
private IFileUtil iFileUtil;
|
|
|
|
|
|
@Value("${file.path}")
|
|
|
private String filePath;
|
|
|
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("RFM分析方法下载数据")
|
|
|
@GetMapping("/analysisByRfmDown")
|
|
|
@AnonymousAccess
|
|
|
public void analysisByRfmDown(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"RFM分析方法data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("帕累托分析方法下载数据")
|
|
|
@GetMapping("/analysisByPareto")
|
|
|
@AnonymousAccess
|
|
|
public void analysisByPareto(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"帕累托分析方法data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("波士顿矩阵分析图下载数据")
|
|
|
@GetMapping("/bostonMatrixAnalysisData")
|
|
|
@AnonymousAccess
|
|
|
public void bostonMatrixAnalysisData(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"波士顿矩阵分析图data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("漏斗模型分析下载数据")
|
|
|
@GetMapping("/analysisByFunnelModel")
|
|
|
@AnonymousAccess
|
|
|
public void analysisByFunnelModel(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"漏斗模型分析data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("购物篮分析下载数据")
|
|
|
@GetMapping("/analysisByShopBasket")
|
|
|
@AnonymousAccess
|
|
|
public void analysisByShopBasket(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"购物篮分析data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("复购分析下载数据")
|
|
|
@GetMapping("/analysisByRepurchase")
|
|
|
@AnonymousAccess
|
|
|
public void analysisByRepurchase(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"复购分析data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("留存分析下载数据")
|
|
|
@GetMapping("/analysisByRetention")
|
|
|
@AnonymousAccess
|
|
|
public void analysisByRetention(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"留存分析data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("用户粘性分析下载数据")
|
|
|
@GetMapping("/analysisByStickiness")
|
|
|
@AnonymousAccess
|
|
|
public void analysisByStickiness(HttpServletResponse response){
|
|
|
|
|
|
iFileUtil.download(response,"用户粘性分析data.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
//@AnonymousAccess
|
|
|
@ApiOperation("情感分析/文本挖掘词云生成")
|
|
|
@PostMapping("/wordCreateByAna")
|
|
|
@AnonymousAccess
|
|
|
public void wordCreateByAna(@RequestBody StuWordCreateDto stuWordCreateDto) throws IOException {
|
|
|
|
|
|
TagWordCloudService tagWordCloudService = new TagWordCloudService();
|
|
|
|
|
|
File file1 = new File(filePath + "/word/");
|
|
|
|
|
|
if (! file1.exists())
|
|
|
{
|
|
|
file1.mkdir();
|
|
|
}
|
|
|
|
|
|
//1成图片路径,2.图云背景图片
|
|
|
String url = filePath+"/word/" + IdUtil.simpleUUID()+"."+"png";
|
|
|
|
|
|
|
|
|
tagWordCloudService.generate(url,filePath+"/1.png",stuWordCreateDto.getContext());
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|