浏览代码

Merge remote-tracking branch 'origin/master'

zouxuan 3 年之前
父节点
当前提交
08d6da340a

+ 3 - 0
cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/service/impl/OmsOrderReturnApplyServiceImpl.java

@@ -77,6 +77,9 @@ public class OmsOrderReturnApplyServiceImpl implements OmsOrderReturnApplyServic
     public int updateStatus(Long id, OmsUpdateStatusParam statusParam) {
     public int updateStatus(Long id, OmsUpdateStatusParam statusParam) {
         Integer status = statusParam.getStatus();
         Integer status = statusParam.getStatus();
         OmsOrderReturnApply omsOrderReturnApply = returnApplyMapper.selectByPrimaryKey(id);
         OmsOrderReturnApply omsOrderReturnApply = returnApplyMapper.selectByPrimaryKey(id);
+        if (omsOrderReturnApply.getProductPrice().compareTo(statusParam.getReturnAmount()) <0) {
+            throw new BizException("退款金额不能大于商品金额");
+        }
         if (omsOrderReturnApply.getStatus().equals(statusParam.getStatus())) {
         if (omsOrderReturnApply.getStatus().equals(statusParam.getStatus())) {
             return 1;
             return 1;
         }
         }

+ 0 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/UserWithdrawalService.java

@@ -88,7 +88,6 @@ public interface UserWithdrawalService extends IService<UserWithdrawal> {
      */
      */
     void contractCallback(String status, String serialNo, String url, String errMsg);
     void contractCallback(String status, String serialNo, String url, String errMsg);
 
 
-    @Transactional(rollbackFor = Exception.class)
     HttpResponseResult<Boolean> batchAuth(AuthOperaReq authOperaReq, SysUser sysUser);
     HttpResponseResult<Boolean> batchAuth(AuthOperaReq authOperaReq, SysUser sysUser);
 
 
     /**
     /**

+ 0 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/ContractServiceImpl.java

@@ -189,10 +189,6 @@ public class ContractServiceImpl implements ContractService {
             return HttpResponseResult.failed("用户不存在");
             return HttpResponseResult.failed("用户不存在");
         }
         }
 
 
-        if (StringUtils.isBlank(user.getRealName()) || StringUtils.isBlank(user.getIdCardNo())) {
-            return HttpResponseResult.failed("身份信息缺失");
-        }
-
         Date date = new Date();
         Date date = new Date();
 
 
         // 合成freemarker
         // 合成freemarker

+ 7 - 6
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherServiceImpl.java

@@ -327,12 +327,13 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         } else {
         } else {
             data.setLiveing(YesOrNoEnum.NO);
             data.setLiveing(YesOrNoEnum.NO);
         }
         }
-
-        StudentStar studentStar = studentStarService.getByStudentIdAndTeacherId(studentId, teacherId);
-        if (null == studentStar) {
-            data.setIsStar(YesOrNoEnum.NO);
-        } else {
-            data.setIsStar(YesOrNoEnum.YES);
+        if(null != studentId){
+            StudentStar studentStar = studentStarService.getByStudentIdAndTeacherId(studentId, teacherId);
+            if (null == studentStar) {
+                data.setIsStar(YesOrNoEnum.NO);
+            } else {
+                data.setIsStar(YesOrNoEnum.YES);
+            }
         }
         }
         return HttpResponseResult.succeed(data);
         return HttpResponseResult.succeed(data);
     }
     }

+ 0 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalServiceImpl.java

@@ -194,7 +194,6 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
     }
     }
 
 
     @Override
     @Override
-    @Transactional(rollbackFor = Exception.class)
     public HttpResponseResult<Boolean> batchAuth(AuthOperaReq authOperaReq, SysUser sysUser) {
     public HttpResponseResult<Boolean> batchAuth(AuthOperaReq authOperaReq, SysUser sysUser) {
         List<Long> ids = Arrays.asList(StringUtil.toLongArray(StringPool.COMMA, authOperaReq.getId()));
         List<Long> ids = Arrays.asList(StringUtil.toLongArray(StringPool.COMMA, authOperaReq.getId()));
 
 

+ 3 - 3
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicAlbumMapper.xml

@@ -53,7 +53,7 @@
             </if>
             </if>
             <if test="query.albumTagIdList != null and query.albumTagIdList.size() != 0">
             <if test="query.albumTagIdList != null and query.albumTagIdList.size() != 0">
                 and
                 and
-                <foreach collection="query.albumTagIdList" separator="and" item="item">
+                <foreach collection="query.albumTagIdList"  open="(" close=")"  separator="or" item="item">
                     find_in_set(#{item},t.album_tag_)
                     find_in_set(#{item},t.album_tag_)
                 </foreach>
                 </foreach>
             </if>
             </if>
@@ -93,7 +93,7 @@
             </if>
             </if>
             <if test="query.albumTagIdList != null and query.albumTagIdList.size() != 0">
             <if test="query.albumTagIdList != null and query.albumTagIdList.size() != 0">
                 and
                 and
-                <foreach collection="query.albumTagIdList" separator="and" item="item">
+                <foreach collection="query.albumTagIdList"  open="(" close=")"  separator="or" item="item">
                     find_in_set(#{item},t.album_tag_)
                     find_in_set(#{item},t.album_tag_)
                 </foreach>
                 </foreach>
             </if>
             </if>
@@ -170,7 +170,7 @@
             </if>
             </if>
             <if test="query.albumTagIdList != null and query.albumTagIdList.size() != 0">
             <if test="query.albumTagIdList != null and query.albumTagIdList.size() != 0">
                 and
                 and
-                <foreach collection="query.albumTagIdList" separator="and" item="item">
+                <foreach collection="query.albumTagIdList" open="(" close=")" separator="or" item="item">
                     find_in_set(#{item},t.album_tag_)
                     find_in_set(#{item},t.album_tag_)
                 </foreach>
                 </foreach>
             </if>
             </if>

+ 5 - 5
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml

@@ -88,13 +88,13 @@
         </if>
         </if>
         <if test="param.musicTagIds != null and param.musicTagIds != ''">
         <if test="param.musicTagIds != null and param.musicTagIds != ''">
             and
             and
-            <foreach collection="param.musicTagIdList" separator="or" item="item">
+            <foreach collection="param.musicTagIdList" open="(" close=")" separator="or" item="item">
                 find_in_set(#{item},t.music_tag_)
                 find_in_set(#{item},t.music_tag_)
             </foreach>
             </foreach>
         </if>
         </if>
         <if test="param.subjectIds != null and param.subjectIds != ''">
         <if test="param.subjectIds != null and param.subjectIds != ''">
             and
             and
-            <foreach collection="param.subjectIdList" separator="or" item="item">
+            <foreach collection="param.subjectIdList" separator="or" item="item"  open="(" close=")" >
                 find_in_set(#{item},t.music_subject_)
                 find_in_set(#{item},t.music_subject_)
             </foreach>
             </foreach>
         </if>
         </if>
@@ -133,13 +133,13 @@
             </if>
             </if>
             <if test="param.musicTagIds != null and param.musicTagIds != ''">
             <if test="param.musicTagIds != null and param.musicTagIds != ''">
                 and
                 and
-                <foreach collection="param.musicTagIdList" separator="and" item="item">
+                <foreach collection="param.musicTagIdList" separator="or" item="item"  open="(" close=")" >
                     find_in_set(#{item},t.music_tag_)
                     find_in_set(#{item},t.music_tag_)
                 </foreach>
                 </foreach>
             </if>
             </if>
             <if test="param.subjectIds != null and param.subjectIds != ''">
             <if test="param.subjectIds != null and param.subjectIds != ''">
                 and
                 and
-                <foreach collection="param.subjectIdList" separator="and" item="item">
+                <foreach collection="param.subjectIdList" separator="or" item="item"  open="(" close=")" >
                     find_in_set(#{item},t.music_subject_)
                     find_in_set(#{item},t.music_subject_)
                 </foreach>
                 </foreach>
             </if>
             </if>
@@ -375,7 +375,7 @@
             </if>
             </if>
             <if test="param.musicTagList != null and param.musicTagList.size() != 0">
             <if test="param.musicTagList != null and param.musicTagList.size() != 0">
                 and
                 and
-                <foreach collection="param.musicTagList" separator="and" item="item">
+                <foreach collection="param.musicTagList" separator="or" item="item"  open="(" close=")" >
                     find_in_set(#{item},ms.music_tag_)
                     find_in_set(#{item},ms.music_tag_)
                 </foreach>
                 </foreach>
             </if>
             </if>

+ 307 - 0
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/WebCourseScheduleController.java

@@ -0,0 +1,307 @@
+package com.yonge.cooleshow.website.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.dto.search.MyCourseSearch;
+import com.yonge.cooleshow.biz.dal.entity.CourseCalendarEntity;
+import com.yonge.cooleshow.biz.dal.service.CourseScheduleService;
+import com.yonge.cooleshow.biz.dal.service.HolidaysFestivalsService;
+import com.yonge.cooleshow.biz.dal.vo.*;
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.http.HttpStatus;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * 老师课程表(CourseSchedule)表控制层
+ *
+ * @author hgw
+ * @since 2022-03-18 15:29:11
+ */
+@Api(tags = "老师课程表")
+@RestController
+@RequestMapping("/courseSchedule")
+public class WebCourseScheduleController extends BaseController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private CourseScheduleService courseScheduleService;
+    @Resource
+    private SysUserFeignService sysUserFeignService;
+    @Resource
+    private HolidaysFestivalsService holidaysFestivalsService;
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "classDate", dataType = "Integer", value = "年月"),
+            @ApiImplicitParam(name = "status", dataType = "String", value = "课程状态 NOT_START未开始 ING进行中 COMPLETE已完成"),
+            @ApiImplicitParam(name = "subjectId", dataType = "Long", value = "声部id"),
+            @ApiImplicitParam(name = "page", dataType = "Integer", value = "页数"),
+            @ApiImplicitParam(name = "rows", dataType = "Integer", value = "每页数量"),
+    })
+    @ApiOperation("老师端-首页-我的课程-直播课")
+    @PostMapping("/queryTeacherLiveCourse")
+    public HttpResponseResult<PageInfo<TeacherLiveCourseInfoVo>> queryTeacherLiveCourse(@RequestBody Map<String, Object> param) {
+        return succeed(courseScheduleService.queryTeacherLiveCourse(param));
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "year", dataType = "Integer", value = "年"),
+            @ApiImplicitParam(name = "month", dataType = "Integer", value = "月"),
+            @ApiImplicitParam(name = "singleCourseMinutes", dataType = "Integer", value = "单课时时长(不包含休息时间)"),
+            @ApiImplicitParam(name = "freeCourseMinutes", dataType = "Integer", value = "单课时休息时长)"),
+            @ApiImplicitParam(name = "teacherId", dataType = "Long", value = "老师id"),
+    })
+    @ApiOperation("直播课创建时的日历数据")
+    @PostMapping("/createLiveCourseCalendar")
+    public HttpResponseResult<List<CourseCalendarEntity>> createLiveCourseCalendar(@RequestBody Map<String, Object> param) {
+        return succeed(courseScheduleService.createLiveCourseCalendar(param));
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "teacherId", dataType = "Long", value = "老师id"),
+            @ApiImplicitParam(name = "studentId", dataType = "Long", value = "学生id"),
+            @ApiImplicitParam(name = "year", dataType = "Integer", value = "年"),
+            @ApiImplicitParam(name = "month", dataType = "Integer", value = "月"),
+            @ApiImplicitParam(name = "day", dataType = "Integer", value = "日"),
+    })
+    @ApiOperation("陪练课日历-用于学生购买指定老师陪练课")
+    @PostMapping("/createPracticeCourseCalendar")
+    public HttpResponseResult<List<CourseCalendarEntity>> generatePracticeCourseCalender(@RequestBody Map<String, Object> param) {
+        return succeed(courseScheduleService.createPracticeCourseCalender(param));
+    }
+
+    @ApiOperation(value = "陪练课查询",
+            notes = "老师端-首页-我的课程-陪练课\n" +
+                    "search:{\"classMonth\":\"2022-03\",\"status\":\"COMPLETE\",\"subjectId\":1}\n" +
+                    "老师端-首页-课后评价\n" +
+                    "search:{\"classMonth\":\"2022-03\",\"replied\":0,\"studentName\":\"测试王\"}\n" +
+                    "老师端-我的-我的主页\n" +
+                    "search:{\"classMonth\":\"2022-03\"}\n" +
+                    "老师端-课表\n" +
+                    "search:{\"classDate\":\"2022-03-27\"}\n" +
+                    "     search:{\"classMonth\":\"2022-03\"}\n" +
+                    "老师端-课表-陪练课\n" +
+                    "     search:{\"classDate\":\"2022-03-27\"}")
+    @PostMapping("/queryTeacherPracticeCourse")
+    public HttpResponseResult<PageInfo<MyCourseVo>> queryTeacherPracticeCourse(@RequestBody MyCourseSearch search) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        search.setTeacherId(user.getId());
+        IPage<MyCourseVo> pages = courseScheduleService.queryTeacherPracticeCourse(PageUtil.getPage(search), search);
+        return succeed(PageUtil.pageInfo(pages));
+    }
+
+    @ApiOperation("老师端-课表-日历")
+    @PostMapping("/queryCourseSchedule")
+    public HttpResponseResult<Set<String>> queryCourseSchedule(@RequestBody MyCourseSearch search) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        search.setTeacherId(user.getId());
+        return succeed(courseScheduleService.queryCourseSchedule(search));
+    }
+
+    @ApiOperation(value = "老师端-课表-日历-用户", notes = "search:{\"classDate\":\"2022-03-27\"}")
+    @PostMapping("/queryCourseUser")
+    public HttpResponseResult<Map<String, Object>> queryCourseUser(@RequestBody MyCourseSearch search) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        search.setTeacherId(user.getId());
+        return succeed(courseScheduleService.queryCourseUser(search));
+    }
+
+    @ApiOperation(value = "老师端-课表-日历-调课")
+    @PostMapping("/courseAdjust")
+    public HttpResponseResult<Object> courseAdjust(@Validated @RequestBody CourseAdjustVo adjustVo) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        courseScheduleService.courseAdjust(adjustVo, user.getId());
+        return succeed();
+    }
+
+    @ApiOperation("老师-首页-最近课程")
+    @GetMapping("/queryLiveAndVideo")
+    public HttpResponseResult<StudentHomePage> queryLiveAndVideo() {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        return succeed(courseScheduleService.queryLiveAndVideo(null, user.getId(), null));
+    }
+
+    @ApiOperation("老师端-查询房间配置")
+    @GetMapping("/selectRoomConfig")
+    public HttpResponseResult<Object> selectRoomConfig() {
+        return succeed(courseScheduleService.selectRoomConfig());
+    }
+
+    //测试未约满课老师
+    @GetMapping("/test")
+    public HttpResponseResult<Object> test(Integer amount) {
+//        courseScheduleService.scheduleTask();
+//        return succeed(courseScheduleService.getTeacherId(amount));
+//        courseScheduleService.scheduleTask();
+//        courseScheduleService.teacherSalaryTask();
+        courseScheduleService.scheduleTask();
+        return succeed();
+    }
+
+    @ApiOperation("查询琴房剩余时长、冻结时长、统计学员人数")
+    @GetMapping("/selectRemainTime")
+    public HttpResponseResult<PianoRoomTimeVo> selectRemainTime() {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        return succeed(courseScheduleService.selectRemainTime(user.getId()));
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "subjectId", dataType = "Long", value = "学员声部id"),
+            @ApiImplicitParam(name = "userName", dataType = "String", value = "学员姓名"),
+            @ApiImplicitParam(name = "courseId", dataType = "Long", value = "课程id"),
+    })
+    @ApiOperation("我的学员&课内学员")
+    @PostMapping("/selectStudent")
+    public HttpResponseResult<PageInfo<CourseStudentVo>> selectStudent(@RequestBody Map<String, Object> param) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        param.put("teacherId", user.getId());
+        return succeed(courseScheduleService.selectStudent(param));
+    }
+
+    @ApiOperation("排课")
+    @PostMapping("/arrangeCourse")
+    public HttpResponseResult<Object> arrangeCourse(@RequestBody ArrangeCourseVo arrangeCourseVo) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        courseScheduleService.arrangeCourse(arrangeCourseVo, user.getId());
+        return succeed();
+    }
+
+    @ApiOperation("根据月份查询消耗时长")
+    @GetMapping("/selectConsumeTime")
+    public HttpResponseResult<Object> selectConsumeTime(String month) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        return succeed(courseScheduleService.selectConsumeTime(month, user.getId()));
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "subjectId", dataType = "Long", value = "声部id"),
+            @ApiImplicitParam(name = "month", dataType = "String", value = "月份,yyyy-mm"),
+            @ApiImplicitParam(name = "status", dataType = "String", value = "课程状态"),
+    })
+    @ApiOperation("琴房课程列表")
+    @PostMapping("/selectCourseList")
+    public HttpResponseResult<PageInfo<CourseScheduleRecordVo>> selectCourseList(@RequestBody Map<String, Object> param) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        param.put("teacherId", user.getId());
+        return succeed(courseScheduleService.selectCourseList(param));
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "subjectId", dataType = "Long", value = "声部id"),
+            @ApiImplicitParam(name = "month", dataType = "String", value = "月份,yyyy-mm"),
+            @ApiImplicitParam(name = "status", dataType = "String", value = "课程状态"),
+    })
+    @ApiOperation("消耗时长列表")
+    @PostMapping("/selectConsumeTimeList")
+    public HttpResponseResult<PageInfo<CourseScheduleRecordVo>> selectConsumeTimeList(@RequestBody Map<String, Object> param) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        param.put("teacherId", user.getId());
+        return succeed(courseScheduleService.selectConsumeTimeList(param));
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "courseId", dataType = "Long", value = "课程id"),
+    })
+    @ApiOperation("删除课程")
+    @PostMapping("/deleteCourse")
+    public HttpResponseResult<Object> deleteCourse(@RequestBody Map<String, Object> param) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        param.put("teacherId", user.getId());
+        courseScheduleService.deleteCourse(param);
+        return succeed();
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "courseId", dataType = "Long", value = "课程id"),
+            @ApiImplicitParam(name = "startTime", dataType = "String", value = "上课时间"),
+            @ApiImplicitParam(name = "endTime", dataType = "String", value = "下课时间"),
+    })
+    @ApiOperation("调整上课时间")
+    @PostMapping("/updateCourseTime")
+    public HttpResponseResult<Object> updateCourseTime(@RequestBody Map<String, Object> param) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        param.put("teacherId", user.getId());
+        courseScheduleService.updateCourseTime(param);
+        return succeed();
+    }
+
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "studentIds", dataType = "List", value = "学生id集合"),
+            @ApiImplicitParam(name = "courseId", dataType = "Long", value = "课程id"),
+    })
+    @ApiOperation("调整上课学员")
+    @PostMapping("/updateCourseStudent")
+    public HttpResponseResult<Object> updateCourseStudent(@RequestBody Map<String, Object> param) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        param.put("teacherId", user.getId());
+        courseScheduleService.updateCourseStudent(param);
+        return succeed();
+    }
+
+    @ApiOperation("查询节假日")
+    @GetMapping("/selectHoliday")
+    public HttpResponseResult<Object> selectHoliday(Integer year) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        return succeed(holidaysFestivalsService.queryByYear(year));
+    }
+}
+

+ 29 - 4
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/open/OpenTeacherController.java

@@ -1,19 +1,29 @@
 package com.yonge.cooleshow.website.controller.open;
 package com.yonge.cooleshow.website.controller.open;
 
 
+import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.entity.TeacherStyleVideo;
+import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
 import com.yonge.cooleshow.biz.dal.service.TeacherService;
 import com.yonge.cooleshow.biz.dal.service.TeacherService;
-import com.yonge.cooleshow.biz.dal.vo.TeacherVo;
+import com.yonge.cooleshow.biz.dal.vo.TeacherHomeVo;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import io.swagger.annotations.*;
 import io.swagger.annotations.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
+import java.util.List;
+import java.util.stream.Collectors;
+
 @RestController
 @RestController
 @RequestMapping("/open/teacher")
 @RequestMapping("/open/teacher")
 @Api(value = "开放老师接口", tags = "开放老师接口")
 @Api(value = "开放老师接口", tags = "开放老师接口")
 public class OpenTeacherController extends BaseController {
 public class OpenTeacherController extends BaseController {
     @Autowired
     @Autowired
     private TeacherService teacherService;
     private TeacherService teacherService;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
 
 
     /**
     /**
      * 查询单条
      * 查询单条
@@ -23,8 +33,23 @@ public class OpenTeacherController extends BaseController {
     @ApiImplicitParams({
     @ApiImplicitParams({
             @ApiImplicitParam(name = "id", value = "id", paramType = "path", dataType = "long", required = true),
             @ApiImplicitParam(name = "id", value = "id", paramType = "path", dataType = "long", required = true),
     })
     })
-    public HttpResponseResult<TeacherVo> detail(@PathVariable("id") Long userId) {
-        TeacherVo detail = teacherService.detail(userId);
-        return succeed(detail);
+    public HttpResponseResult<TeacherHomeVo> detail(@PathVariable("id") Long userId) {
+        if (null == userId) {
+            return failed("缺少老师ID");
+        }
+        SysUser user = sysUserFeignService.queryUserInfo();
+        HttpResponseResult<TeacherHomeVo> res;
+        if (user == null || null == user.getId()) {
+            res = teacherService.queryTeacherHome(null, userId);
+        } else {
+            res = teacherService.queryTeacherHome(user.getId(), userId);
+        }
+        //学生端过滤只看审核通过的
+        if (null != res.getData() && !CollectionUtils.isEmpty(res.getData().getStyleVideo())) {
+            List<TeacherStyleVideo> styleVideo = res.getData().getStyleVideo();
+            List<TeacherStyleVideo> collect = styleVideo.stream().filter(o -> AuthStatusEnum.PASS.equals(o.getAuthStatus())).collect(Collectors.toList());
+            res.getData().setStyleVideo(collect);
+        }
+        return res;
     }
     }
 }
 }