Commit 47c81d0e authored by liuyang's avatar liuyang

fixed bug

parent fda0b871
...@@ -12,9 +12,11 @@ import com.qkdata.biz.sys.service.SysUserService; ...@@ -12,9 +12,11 @@ import com.qkdata.biz.sys.service.SysUserService;
import com.qkdata.biz.web.service.UserCenterService; import com.qkdata.biz.web.service.UserCenterService;
import com.qkdata.biz.web.vo.*; import com.qkdata.biz.web.vo.*;
import com.qkdata.common.annotation.SysLog; import com.qkdata.common.annotation.SysLog;
import com.qkdata.common.base.exception.BusinessException;
import com.qkdata.common.base.model.PageResult; import com.qkdata.common.base.model.PageResult;
import com.qkdata.common.base.model.Result; import com.qkdata.common.base.model.Result;
import com.qkdata.common.util.UserContext; import com.qkdata.common.util.UserContext;
import com.sun.org.apache.xpath.internal.operations.Bool;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.Logical; import org.apache.shiro.authz.annotation.Logical;
...@@ -97,7 +99,7 @@ public class UserCenterController { ...@@ -97,7 +99,7 @@ public class UserCenterController {
@SysLog("获取视频播放凭证") @SysLog("获取视频播放凭证")
public Result<GetVideoPlayAuthResponse> getCoursePlayVideoUrl(@RequestParam Long courseId, @RequestParam Long chaperId){ public Result<GetVideoPlayAuthResponse> getCoursePlayVideoUrl(@RequestParam Long courseId, @RequestParam Long chaperId){
//验证权限 //验证权限
userCenterService.checkCoursePlayPerm(courseId,chaperId); userCenterService.checkCoursePlayPerm(courseId);
GetVideoPlayAuthResponse response = courseService.getVideoPlayAuth(courseId,chaperId); GetVideoPlayAuthResponse response = courseService.getVideoPlayAuth(courseId,chaperId);
return Result.succeed(response); return Result.succeed(response);
...@@ -146,4 +148,17 @@ public class UserCenterController { ...@@ -146,4 +148,17 @@ public class UserCenterController {
CourseConsumeRecordModel model = courseConsumeRecordService.findUserCourseRecordLast(UserContext.getUserId(),courseId); CourseConsumeRecordModel model = courseConsumeRecordService.findUserCourseRecordLast(UserContext.getUserId(),courseId);
return Result.succeed(model); return Result.succeed(model);
} }
@ApiOperation("查询用户是否已购买该课程")
@GetMapping("/user/course/checkPerm")
@RequiresRoles(value = {BizConstants.ROLE_USER,BizConstants.ROLE_ENTERPRISE_ADMIN},logical = Logical.OR)
@SysLog("查询用户是否已购买该课程")
public Result<Boolean> checkPerm(@RequestParam Long courseId){
Boolean flag = true;
try {
userCenterService.checkCoursePlayPerm(courseId);
}catch (BusinessException e){
flag = false;
}
return Result.succeed(flag);
}
} }
...@@ -44,9 +44,8 @@ public class UserCenterService { ...@@ -44,9 +44,8 @@ public class UserCenterService {
* 课程收费模式为会员费免,当前用户是否已购买会员,并且在有效期中 * 课程收费模式为会员费免,当前用户是否已购买会员,并且在有效期中
* 课程收费模式为付费点播,当前用户是否已购买该课程,并且在效期中 * 课程收费模式为付费点播,当前用户是否已购买该课程,并且在效期中
* @param courseId * @param courseId
* @param chaperId
*/ */
public void checkCoursePlayPerm(Long courseId, Long chaperId) { public void checkCoursePlayPerm(Long courseId) {
String username = UserContext.getUser().getUsername(); String username = UserContext.getUser().getUsername();
Long userId = UserContext.getUserId(); Long userId = UserContext.getUserId();
FullUserInfo userInfo = sysUserService.findFullUserInfo(username); FullUserInfo userInfo = sysUserService.findFullUserInfo(username);
......
...@@ -22,7 +22,11 @@ public class LocalDateTimeDeserializer extends JsonDeserializer<LocalDateTime> { ...@@ -22,7 +22,11 @@ public class LocalDateTimeDeserializer extends JsonDeserializer<LocalDateTime> {
@Override @Override
public LocalDateTime deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { public LocalDateTime deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException {
try { try {
if (null != p.getValueAsString() && !"".equals(p.getValueAsString())){
return Instant.ofEpochMilli(p.getLongValue()).atZone(ZoneId.systemDefault()).toLocalDateTime(); return Instant.ofEpochMilli(p.getLongValue()).atZone(ZoneId.systemDefault()).toLocalDateTime();
}else {
return null;
}
} catch (Exception e) { } catch (Exception e) {
log.warn("时间转换异常", e); log.warn("时间转换异常", e);
return null; return null;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment