|
|
@@ -1,5 +1,6 @@
|
|
|
package com.fs.course.controller;
|
|
|
|
|
|
+import com.fs.baidu.domain.BdAccount;
|
|
|
import com.fs.common.annotation.Log;
|
|
|
import com.fs.common.core.controller.BaseController;
|
|
|
import com.fs.common.core.domain.AjaxResult;
|
|
|
@@ -15,6 +16,7 @@ import com.fs.course.service.IFsUserCoursePeriodDaysService;
|
|
|
import com.fs.course.service.IFsUserCoursePeriodService;
|
|
|
import com.fs.course.service.IFsUserCourseVideoRedPackageService;
|
|
|
import com.fs.course.vo.*;
|
|
|
+import com.fs.course.vo.newfs.FsCourseAnalysisCountVO;
|
|
|
import com.fs.his.vo.OptionsVO;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
@@ -27,6 +29,7 @@ import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
@@ -231,6 +234,44 @@ public class FsUserCoursePeriodController extends BaseController {
|
|
|
return R.ok(result);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @Description: 会员营期导出课程统计
|
|
|
+ * @Param:
|
|
|
+ * @Return:
|
|
|
+ * @Author xgb
|
|
|
+ * @Date 2025/12/12 11:37
|
|
|
+ */
|
|
|
+ @PostMapping("/exportInfo")
|
|
|
+ @ApiOperation("营期统计")
|
|
|
+ public AjaxResult exportInfo(@RequestBody PeriodCountParam param) {
|
|
|
+ List<FsPeriodCountExportVO> exportList = new ArrayList<>();
|
|
|
+ PageHelper.startPage(param.getPageNum(), param.getPageSize());
|
|
|
+ List<FsPeriodCountVO> list = fsUserCoursePeriodDaysService.periodCourseCount(param);
|
|
|
+ list.forEach(item -> {
|
|
|
+ FsPeriodCountExportVO exportVO = new FsPeriodCountExportVO();
|
|
|
+ exportVO.setTitle(item.getTitle());
|
|
|
+ exportVO.setDayDate(item.getDayDate());
|
|
|
+ if(item.getCountDetailsVO() != null){
|
|
|
+ FsCourseAnalysisCountVO countDetailsVO =item.getCountDetailsVO();
|
|
|
+ exportVO.setCourseWatchTimes(countDetailsVO.getCourseWatchTimes());
|
|
|
+ exportVO.setCourseCompleteTimes(countDetailsVO.getCourseCompleteTimes());
|
|
|
+ exportVO.setCourseWatchNum(countDetailsVO.getCourseWatchNum());
|
|
|
+ exportVO.setCourseCompleteNum(countDetailsVO.getCourseCompleteNum());
|
|
|
+ exportVO.setCompleteRate(countDetailsVO.getCompleteRate()+"%");
|
|
|
+ exportVO.setAnswerTimes(countDetailsVO.getAnswerTimes());
|
|
|
+ exportVO.setAnswerNum(countDetailsVO.getAnswerNum());
|
|
|
+ exportVO.setAnswerRightNum(countDetailsVO.getAnswerRightNum());
|
|
|
+ exportVO.setAnswerRightRate(countDetailsVO.getAnswerRightRate()+"%");
|
|
|
+ exportVO.setRedPacketNum(countDetailsVO.getRedPacketNum());
|
|
|
+ exportVO.setRedPacketAmount(countDetailsVO.getRedPacketAmount());
|
|
|
+ }
|
|
|
+ exportList.add(exportVO);
|
|
|
+ });
|
|
|
+
|
|
|
+ ExcelUtil<FsPeriodCountExportVO> util = new ExcelUtil<FsPeriodCountExportVO>(FsPeriodCountExportVO.class);
|
|
|
+ return util.exportExcel(exportList, "百度账号数据");
|
|
|
+ }
|
|
|
+
|
|
|
@GetMapping("/getPeriodListLikeName")
|
|
|
public R getPeriodListLikeName(@RequestParam(required = false) String name,
|
|
|
@RequestParam(required = false) Long campId,
|