104-master代碼回退

This commit is contained in:
nisen
2024-09-05 11:09:43 +08:00
parent 22ebe90c08
commit aa32e9136c
2 changed files with 128 additions and 144 deletions

View File

@@ -74,19 +74,19 @@ public class CoursePortalApi extends ApiBaseController{
@Resource
private ICourseService courseService;
@Resource
private ITeacherService teacherService;
@Resource
private ICourseContentService contentService;
@Resource
private ICourseSectionService sectionService;
@Resource
private ICourseTeacherService courseTeacherService;
@Autowired
private IUserGroupService userGroupService;
@@ -124,9 +124,9 @@ public class CoursePortalApi extends ApiBaseController{
Map<String,Object> list=courseService.findImages(cids);
return success(list);
}
/**
* 人气榜
* 人气榜
* */
@PostMapping("/ranking")
public JsonResponse<List<RankingDto>> Ranking(Integer type,Integer time){
@@ -152,7 +152,7 @@ public class CoursePortalApi extends ApiBaseController{
return success(rankingDtos);
}
/**
* 查询列表,数量,类型,最新,最热
* @param num
@@ -178,7 +178,7 @@ public class CoursePortalApi extends ApiBaseController{
}
dto.setDevice(device);
try {
List<Course> list=courseService.findList(num, dto);
return success(list);
}catch(Exception e) {
@@ -186,10 +186,10 @@ public class CoursePortalApi extends ApiBaseController{
return error("查询课程列表失败",e.getMessage());
}
}
@PostMapping("/pagelist-new")
public JsonResponse<PageList<Course>> findNewPage(Pagination pager,CourseQueryDto dto){
//只是查询已发布的
dto.setPublish(true);
@@ -211,9 +211,9 @@ public class CoursePortalApi extends ApiBaseController{
}
}
}
return success(coursePageList);
}
/**
@@ -224,7 +224,7 @@ public class CoursePortalApi extends ApiBaseController{
*/
@PostMapping("/pagelist")
public JsonResponse<PageList<Course>> findPage(Pagination pager,CourseQueryDto dto){
//只是查询已发布的
dto.setPublish(true);
@@ -245,11 +245,11 @@ public class CoursePortalApi extends ApiBaseController{
}
}
}
return success(coursePageList);
}
/**
* 获取详细信息
* @param id
@@ -260,19 +260,19 @@ public class CoursePortalApi extends ApiBaseController{
if(StringUtils.isBlank(id)) {
return badRequest("参数错误,未指定课程");
}
//当前对于课程不增加浏览量,课程的意义并不是看过
// if(addView==null) {
// addView=false;
// }
Map<String,Object> rs=new HashMap<String,Object>();
Course course=courseService.getAddView(id);
if(course==null || course.getDeleted()){
return badRequest("课程不存在或已被删除");
}
rs.put("course",course);
List<CourseCrowd> courseCrowdList = courseService.findCrowdByCourseId(id);
if(crowd!=null && crowd) {
rs.put("crowds",courseCrowdList);
@@ -315,7 +315,7 @@ public class CoursePortalApi extends ApiBaseController{
List<CourseContent> cclist=contentService.getByCourseId(id);
List<CourseSection> sectionlist=sectionService.getByCourseId(id);
List<CourseTeacher> teachers=courseService.findTeachersByCourseId(id);
//获取教师的介绍信息,因为一门课程 的教师不会太多,所以这里简单直接遍历查询,后续再优化
for(CourseTeacher ct : teachers) {
@@ -335,7 +335,7 @@ public class CoursePortalApi extends ApiBaseController{
}
}
}
}
rs.put("isCrowd",pass);
@@ -344,7 +344,7 @@ public class CoursePortalApi extends ApiBaseController{
rs.put("teachers",teachers);
//查询课程
return success(rs);
}
private void getTeacherInfo(String token, List<String> teacherIds) {
List<TeacherVo> teacherInfo = thirdApi.getTeacherInfo(teacherIds, token);
@@ -363,9 +363,9 @@ public class CoursePortalApi extends ApiBaseController{
}
}
//作业导出
//作业导出
@GetMapping("/export")
public JsonResponse<String> export(String courseId,String contentId,String name,Integer status) throws IOException {
public JsonResponse<String> export(String courseName,String courseId,String contentId,String name,Integer status) throws IOException {
Map<String, String>map=new HashMap<>();
List<String> userIds = studyCourseDao.findList(FieldFilters.eq("courseId", courseId)).stream().filter(Objects::nonNull).map(StudyCourse::getAid).collect(Collectors.toList());
if (userIds.isEmpty()){
@@ -404,6 +404,20 @@ public class CoursePortalApi extends ApiBaseController{
if (totalFileSize > 2L * 1024 * 1024 * 1024) {
return success("您要下载的作业过大,请分批下载或联系管理员!");
}
// String encodedFilename = URLEncoder.encode(courseName+"【作业】.zip")
// .replace("+", "%20") // 空格替换为"%20"
// .replace("%2F", "/"); // 解决斜杠问题
// StringBuilder contentDispositionValue = new StringBuilder();
// contentDispositionValue.append("attachment; filename=\"")
// .append(encodedFilename)
// .append("\"")
// .append("; filename*=utf-8''")
// .append(encodedFilename);
//
// // 设置响应类型和Content-Disposition头
// response.setContentType("application/zip");
// 创建一个临时文件用于存储ZIP文件
File tempZipFile = new File("/home/www/elearning/upload/temp.zip");
@@ -429,13 +443,10 @@ public class CoursePortalApi extends ApiBaseController{
}
// 将临时文件移动到指定位置
Path source = tempZipFile.toPath();
//生成uuid
String uuid = UUID.randomUUID().toString();
//生成uuid
String uuid = UUID.randomUUID().toString();
Path destination = Paths.get("/home/www/elearning/upload/saveZip/" + uuid + ".zip");
// 确保目标目录存在
Files.createDirectories(destination.getParent());
// 删除目标文件如果已存在
if (Files.exists(destination)) {
Files.delete(destination);
@@ -492,7 +503,7 @@ public class CoursePortalApi extends ApiBaseController{
cv.setStatus(9);
}
}
//音视频
//音视频
}else{
cv.setStatus(study.getStatus());