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()); } }