package com.boying.controller;
|
|
import com.boying.common.BaseController;
|
import com.boying.common.SystemConfigProperties;
|
import com.boying.entity.StudyData;
|
import com.boying.entity.StudyDir;
|
import com.boying.service.StudyDataService;
|
import com.boying.service.StudyDirService;
|
import org.apache.commons.io.FileUtils;
|
import org.apache.commons.io.FilenameUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.data.domain.Page;
|
import org.springframework.data.domain.PageRequest;
|
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Sort;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
|
import javax.servlet.http.HttpServletRequest;
|
import java.io.File;
|
import java.util.List;
|
|
@RestController
|
@RequestMapping("studyData")
|
public class StudyDataController extends BaseController {
|
|
@Autowired
|
private StudyDataService studyDataService;
|
@Autowired
|
private SystemConfigProperties systemConfigProperties;
|
@Autowired
|
private StudyDirService studyDirService;
|
|
@PostMapping("findByDirId")
|
public Object findPage(String name,int page,int pageSize,Long dirId) {
|
Pageable pageable = PageRequest.of(page-1,pageSize, Sort.Direction.DESC,"id");
|
Page<StudyData> pages = studyDataService.findPageHaveLike(pageable,1,"name",name,"dirId",dirId);
|
return success("",pages);
|
}
|
|
@PostMapping("findById")
|
public Object findById(Long id) {
|
return success("",studyDataService.findById(id));
|
}
|
|
@PostMapping("save")
|
public Object save(StudyData studyData, HttpServletRequest request) throws Exception{
|
String path = "";
|
|
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
List<MultipartFile> imgs = multipartRequest.getFiles("files");
|
for(MultipartFile imageFile:imgs){
|
if (imageFile != null) {
|
String fileExtension = FilenameUtils.getExtension(imageFile.getOriginalFilename());//获取后缀
|
if(fileExtension.equals("mp4")){
|
studyData.setFileType(1);
|
}
|
String newFileName = System.currentTimeMillis() + "." + fileExtension;//文件名称
|
path+=newFileName;
|
String newFilePath = systemConfigProperties.getUploadImgPath() + newFileName;//上传路径
|
File destFile = new File(newFilePath);
|
FileUtils.writeByteArrayToFile(destFile, imageFile.getBytes());
|
break;
|
}
|
}
|
studyData.setStudyPath(path);
|
studyDataService.save(studyData);
|
|
StudyDir studyDir = (StudyDir) studyDirService.findById(studyData.getDirId());
|
studyDir.setNum(studyDir.getNum()+1);
|
studyDirService.save(studyDir);
|
return success("保存成功");
|
}
|
|
@PostMapping("delete")
|
public Object delete(Long id) {
|
StudyData studyData = (StudyData) studyDataService.findById(id);
|
|
StudyDir studyDir = (StudyDir) studyDirService.findById(studyData.getDirId());
|
studyDir.setNum(studyDir.getNum()-1);
|
studyDirService.save(studyDir);
|
|
studyDataService.delete(id);
|
return success("删除成功");
|
}
|
|
@PostMapping("findByPage")
|
public Object findByPage(int page,int pageSize) {
|
Pageable pageable = PageRequest.of(page-1,pageSize, Sort.Direction.DESC,"id");
|
Page<StudyData> pages = studyDataService.findPage(pageable);
|
return success("",pages);
|
}
|
|
}
|