puzhibing
2025-06-18 3e7932d378b607f75379b463ae4ae2f4f1ccfe12
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/miniapp/AppCourseController.java
New file
@@ -0,0 +1,90 @@
package com.ruoyi.goods.controller.miniapp;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.goods.domain.dto.XiaoeCourseQueryDto;
import com.ruoyi.goods.domain.vo.XiaoeCourseChapterVO;
import com.ruoyi.goods.domain.vo.XiaoeCourseGroupVO;
import com.ruoyi.goods.domain.vo.XiaoeCourseVO;
import com.ruoyi.goods.service.biz.XiaoeCourseService;
import com.ruoyi.system.api.service.RemoteConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
 * @author mitao
 * @date 2025/1/10
 */
@Api(tags = {"小程序海恒课程相关接口"})
@Validated
@RestController
@RequestMapping("/app/course")
@RequiredArgsConstructor
public class AppCourseController {
    private final XiaoeCourseService xiaoeCourseService;
    private final RemoteConfigService remoteConfigService;
    /**
     * 课程列表
     * @param dto
     * @return
     */
    @ApiOperation("课程列表")
    @PostMapping("/page")
    public R<Page<XiaoeCourseVO>> page(@Valid @RequestBody XiaoeCourseQueryDto dto) {
        return R.ok(xiaoeCourseService.getCoursePageList(dto,1));
    }
    /**
     * 课程章节详情
     * @param id
     * @return
     */
    @ApiOperation("课程章节详情")
    @GetMapping("/detail/{id}")
    public R<List<XiaoeCourseChapterVO>> detail(@ApiParam(name = "id",value = "课程id",required = true)@PathVariable("id") String id) {
        return R.ok(xiaoeCourseService.getCourseDetail(id));
    }
    /**
     * 获取课程分组列表
     * @return
     */
    @ApiOperation("获取课程分组列表")
    @GetMapping("/group")
    public R<List<XiaoeCourseGroupVO>> getCourseGroupList() {
        return R.ok(xiaoeCourseService.getCourseGroupList(1));
    }
    @ApiOperation("门店身份校验")
    @PostMapping("/storeIdentityVerification")
    public R storeIdentityVerification(@RequestParam("password") String password){
        String data = remoteConfigService.getStoreCurriculumPassword().getData();
        if(StringUtils.isNotEmpty(data)){
            if(password.equals(data)){
                return R.ok();
            }
        }
        return R.fail("身份校验失败");
    }
    @ApiOperation("门店身份校验展示名称")
    @PostMapping("/getStoreCurriculumName")
    public R getStoreCurriculumName(){
        String data = remoteConfigService.getStoreCurriculumName().getData();
        return R.ok(data);
    }
}