<p>@GetMapping(&quot;/queryCourseByCoachIDAndUserIdByDate&quot;)
public Result<Object> queryCourseByCoachIDAndUserIdByDate(Coach coach, String date, CarUser carUser, HttpServletRequest request) throws ParseException {</p>
<pre><code>//权限验证
String token = (String) request.getAttribute(&quot;claims_user&quot;);
if (token == null || &quot;&quot;.equals(token)) {
    throw new RuntimeException(&quot;权限不足!&quot;);
}

if (coach.getCoachId() == null) {
    log.info(&quot;coachId为null&quot;);
    return new Result&lt;&gt;(ResultCode.FAIL);
}

CarUser carUser2 = carUserService.queryOneCarUserById(carUser.getUserId());

//转换前端传递日期格式
Date convertedDate = RcqtUtils.getconvertedDate(date);

Map&lt;String, Object&gt; map = new HashMap&lt;&gt;();
//查询日期对应的数据
List&lt;UpdateTime&gt; updateTimeList = updateTimeService.queryUpdateTimeByDate(coach.getCoachId(), convertedDate);
List&lt;UpdateTimeDto&gt; updateTimeDtoList = new ArrayList&lt;&gt;();

for (UpdateTime updateTime : updateTimeList) {
    UpdateTimeDto updateTimeDto = new UpdateTimeDto();
    BeanUtils.copyProperties(updateTime, updateTimeDto);
    updateTimeDto.setIsOrder(false);

    List&lt;CourseInfo&gt; courseInfos = courseInfoService.queryCourseByUpdateTimeId(updateTime.getUpdateTimeId());
    List&lt;CarUser&gt; carUserList = new ArrayList&lt;&gt;();
    List&lt;CarUser&gt; currentCarUsers = new ArrayList&lt;&gt;();

    //获取约课学员
    for (CourseInfo courseInfo : courseInfos) {
        CarUser carUser1 = carUserService.queryOneCarUserById(courseInfo.getUserId());
        currentCarUsers.add(carUser1);
        if (Objects.equals(carUser.getUserId(), courseInfo.getUserId())) {
            carUserList.add(carUser1);
            updateTimeDto.setIsOrder(true);
        }
    }

    updateTimeDto.setCurrentReservation(currentCarUsers.size());
    //修改数据库
    updateTime.setCurrentReservation(currentCarUsers.size());
    int ret = updateTimeService.updateOneUpdateTimeByID(updateTime);
    if (ret &lt; 0) {
        return new Result&lt;&gt;(ResultCode.FAIL);
    }

    if (currentCarUsers.size() == updateTime.getMaxReservation()) {
        //已满
        updateTimeDto.setCourseStatus(true);
    }

    if (carUser2.getDrivingProjectType().equals(&quot;科二/科三&quot;)) {
        if (updateTimeDto.getStartReservationTime() != null &amp;&amp; updateTimeDto.getEndReservationTime() != null) {
            updateTimeDtoList.add(updateTimeDto);
        }
    } else if (updateTime.getProjectType().equals(carUser2.getDrivingProjectType())) {
        if (updateTimeDto.getStartReservationTime() != null &amp;&amp; updateTimeDto.getEndReservationTime() != null) {
            updateTimeDtoList.add(updateTimeDto);
        }
    }

    map.put(&quot;isBreakDate&quot;, updateTime.getIsBreakDate());//给前端总的休息状态
}

map.put(&quot;updateTimeList&quot;, updateTimeDtoList);

return new Result&lt;&gt;(ResultCode.SUCCESS, map);
</code></pre>
1学员通过日期查询约课安排 GetMappingqueryCourseByCoachIDAndUserIdByDate public ResultObject queryCourseByCoachIDAndUserIdByDateCoach coach String date CarUser carUser HttpServletRequest request throws Parse

原文地址: http://www.cveoy.top/t/topic/h9Fn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录