123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- package com.zhongzheng.controller.user;
- import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
- import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
- import com.zhongzheng.common.core.controller.BaseController;
- import com.zhongzheng.common.core.domain.AjaxResult;
- import com.zhongzheng.common.core.domain.model.LoginUser;
- import com.zhongzheng.common.core.page.TableDataInfo;
- import com.zhongzheng.common.exception.CustomException;
- import com.zhongzheng.common.utils.SecurityUtils;
- import com.zhongzheng.common.utils.ServletUtils;
- import com.zhongzheng.common.utils.poi.EasyPoiUtil;
- import com.zhongzheng.framework.web.service.TokenService;
- import com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo;
- import com.zhongzheng.modules.grade.service.IClassGradeUserService;
- import com.zhongzheng.modules.grade.vo.ClassPeriodStudentVo;
- import com.zhongzheng.modules.grade.vo.UserPeriodExportV2Vo;
- import com.zhongzheng.modules.order.bo.OrderQueryBo;
- import com.zhongzheng.modules.order.service.IOrderService;
- import com.zhongzheng.modules.order.vo.OrderListVo;
- import com.zhongzheng.modules.top.order.bo.TopOldOrderCustomerBo;
- import com.zhongzheng.modules.user.bo.*;
- import com.zhongzheng.modules.user.service.*;
- import com.zhongzheng.modules.user.vo.*;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import lombok.RequiredArgsConstructor;
- 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 java.util.List;
- /**
- * 用户档案Controller
- *
- * @author hjl
- * @date 2022-08-17
- */
- @Api(value = "用户档案控制器", tags = {"用户档案管理"})
- @RequiredArgsConstructor(onConstructor_ = @Autowired)
- @RestController
- @RequestMapping("/user/dangAn")
- public class DangAnController extends BaseController {
- private final IClassGradeUserService iClassGradeUserService;
- private final IOrderService iOrderService;
- private final IUserStudyRecordService iUserStudyRecordService;
- private final IUserCertificateService iUserCertificateService;
- private final IUserSubscribeService iUserSubscribeService;
- private final IUserService iUserService;
- private final TokenService tokenService;
- @ApiOperation("查询档案网课列表")
- @PreAuthorize("@ss.hasPermi('grade:user:list')")
- @GetMapping("/listVideoUserPeriod")
- public TableDataInfo<ClassPeriodStudentVo> listVideoUserPeriod(ClassGradeUserQueryBo bo) {
- startPage();
- List<ClassPeriodStudentVo> list = iClassGradeUserService.listVideoUserPeriod(bo);
- return getDataTable(list);
- }
- @ApiOperation("查询档案订单列表")
- @PreAuthorize("@ss.hasPermi('grade:user:list')")
- @GetMapping("/listOrder")
- public TableDataInfo<OrderListVo> listDangAnOrder(OrderQueryBo bo) {
- startPage();
- List<OrderListVo> list = iOrderService.selectDangAnOrderList(bo);
- return getDataTable(list);
- }
- /**
- * 查询学员商品题库学习记录
- */
- @ApiOperation("查询档案题库列表")
- @PreAuthorize("@ss.hasPermi('grade:student:list')")
- @GetMapping("/listUserExam")
- public TableDataInfo<ExamStudyRecordVo> listUserExam(UserQueryBo bo) {
- startPage();
- List<ExamStudyRecordVo> list = iUserStudyRecordService.querDangAnExamStudy(bo);
- return getDataTable(list);
- }
- @ApiOperation("学员约考记录")
- @GetMapping("/listUserSubscribe")
- public TableDataInfo<UserUsbRecordVo> getListUserSubscribe(UserUsbRecordBo bo) {
- startPage();
- List<UserUsbRecordVo> list = iClassGradeUserService.getListUserSubscribe(bo);
- return getDataTable(list);
- }
- @ApiOperation("学员考试记录")
- @GetMapping("/listUserApply")
- public TableDataInfo<UserApplyRecordVo> listUserApply(UserApplyRecordBo bo) {
- startPage();
- List<UserApplyRecordVo> list = iUserSubscribeService.listUserApply(bo);
- return getDataTable(list);
- }
- @ApiOperation("学员承诺书记录")
- @GetMapping("/listPromise")
- public TableDataInfo<UserPromiseRecordVo> listPromise(UserPromiseRecordBo bo) {
- startPage();
- List<UserPromiseRecordVo> list = iUserSubscribeService.listPromise(bo);
- return getDataTable(list);
- }
- @ApiOperation("查询档案报名列表")
- @PreAuthorize("@ss.hasPermi('grade:user:list')")
- @GetMapping("/listBKUserPeriod")
- public TableDataInfo<ClassPeriodStudentVo> listBKUserPeriod(ClassGradeUserQueryBo bo) {
- startPage();
- List<ClassPeriodStudentVo> list = iClassGradeUserService.listBKUserPeriod(bo);
- return getDataTable(list);
- }
- @ApiOperation("查询档案直播列表")
- @PreAuthorize("@ss.hasPermi('grade:student:list')")
- @GetMapping("/listUserLive")
- public TableDataInfo<ExamStudyRecordVo> listUserLive(UserQueryBo bo) {
- startPage();
- List<ExamStudyRecordVo> list = iUserStudyRecordService.querDangAnLiveStudy(bo);
- return getDataTable(list);
- }
- @ApiOperation("查询档案资料列表")
- @PreAuthorize("@ss.hasPermi('grade:student:list')")
- @GetMapping("/listUserHandouts")
- public TableDataInfo<ExamStudyRecordVo> listUserHandouts(UserQueryBo bo) {
- startPage();
- List<ExamStudyRecordVo> list = iUserStudyRecordService.querDangAnHandoutsStudy(bo);
- return getDataTable(list);
- }
- @ApiOperation("查询档案证书列表")
- @PreAuthorize("@ss.hasPermi('grade:student:list')")
- @GetMapping("/listUserCertificate")
- public TableDataInfo<UserCertificateVo> listUserCertificate(UserCertificateQueryBo bo) {
- startPage();
- List<UserCertificateVo> list = iUserCertificateService.selectList(bo);
- return getDataTable(list);
- }
- @ApiOperation("获取证书详细信息")
- @GetMapping("/certificateDetail")
- public AjaxResult<UserCertificateVo> getInfo(UserCertificateQueryBo bo) {
- return AjaxResult.success(iUserCertificateService.selectDetail(bo));
- }
- @ApiOperation("查询学员直播学习记录列表")
- @PreAuthorize("@ss.hasPermi('grade:user:list')")
- @GetMapping("/listUserStudyLiveRecord")
- public TableDataInfo<UserPeriodExportV2Vo> listUserStudyRecordV2Week(ClassGradeUserQueryBo bo) {
- startPage();
- List<UserPeriodExportV2Vo> list = iClassGradeUserService.listUserStudyRecordV2Week(bo);
- return getDataTable(list);
- }
- @ApiOperation("查询学员题库学习记录列表")
- @PreAuthorize("@ss.hasPermi('grade:user:list')")
- @GetMapping("/listUserStudyExamRecord")
- public TableDataInfo<UserPeriodExportV2Vo> listUserStudyExamRecord(ClassGradeUserQueryBo bo) {
- startPage();
- List<UserPeriodExportV2Vo> list = iClassGradeUserService.listUserStudyQuestionRecordV2Week(bo);
- return getDataTable(list);
- }
- @ApiOperation("学员资料导入更新")
- @PostMapping("/userDataImportUp")
- public AjaxResult userDataImportUp(MultipartFile file) {
- List<UserDataImportBo> customerBos = EasyPoiUtil.importExcel(file,0,1,UserDataImportBo.class);
- if (CollectionUtils.isEmpty(customerBos) || customerBos.stream().allMatch(x -> ObjectUtils.isNull(x.getUserCard()))){
- throw new CustomException("导入文件格式不正确或文件为空,请检查文件!");
- }
- iUserService.userDataImportUp(customerBos);
- return AjaxResult.success();
- }
- @ApiOperation("学员资料照片导入")
- @PostMapping("/userDataImgImport")
- public AjaxResult userDataImgImport(MultipartFile file) {
- iUserService.userDataImgImport(file);
- return AjaxResult.success();
- }
- @ApiOperation("学员资料批量下载")
- @PostMapping("/data/download")
- public AjaxResult userDataDownload(@RequestBody UserDownloadBo bo) {
- LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
- bo.setCreateSysUserId(loginUser.getUser().getUserId());
- return AjaxResult.success(iUserService.userDataDownload(bo));
- }
- @ApiOperation("学员资料下载任务")
- @GetMapping("/data/download/list")
- public AjaxResult<List<UserDownloadVo>> userDataDownloadList() {
- LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
- List<UserDownloadVo> list = iUserService.userDataDownloadList(loginUser.getUser().getUserId());
- return AjaxResult.success(list);
- }
- @ApiOperation("学员资料下载任务回调")
- @PostMapping("/data/download/up")
- public AjaxResult userDataDownloadUp(@RequestBody UserDataDownloadUpBo bo) {
- LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
- bo.setCreateSysUserId(loginUser.getUser().getUserId());
- iUserService.userDataDownloadUp(bo);
- return AjaxResult.success();
- }
- }
|