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 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 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 pages = studyDataService.findPage(pageable); return success("",pages); } }