package com.sincere.student.service.impl; import com.github.pagehelper.PageHelper; import com.sincere.student.dto.MessageSearchDto; import com.sincere.student.dto.PointSearchDto; import com.sincere.student.dto.submit.SubmitLine; import com.sincere.student.mapper.UniversityPointMapper; import com.sincere.student.mapper.UniversitySubmitFileMapper; import com.sincere.student.model.Point; import com.sincere.student.model.SubmitFile; import com.sincere.student.service.SubmitService; import com.sincere.student.utils.Page; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; @Service public class SubmitServiceImpl implements SubmitService { @Autowired UniversityPointMapper pointMapper ; @Autowired UniversitySubmitFileMapper submitFileMapper ; @Override public Page getAdminList(MessageSearchDto dto) { Page result = new Page<>(dto.getPage(),dto.getPageSize()); PageHelper.startPage(dto.getPage(),dto.getPageSize()); List list = submitFileMapper.getList(dto) ; for(SubmitFile submitFile : list){ String fileName = submitFile.getFileUrl().substring(submitFile.getFileUrl().lastIndexOf("/")+1); submitFile.setFileName(fileName); } result.setList(list); result.setCount(submitFileMapper.getListCount(dto)); return result; } @Override public Page getAppList(PointSearchDto dto) { Page result = new Page<>(dto.getPage(),dto.getPageSize()); if(StringUtils.isNotBlank(dto.getMajorName())){ dto.setMajorName("%"+dto.getMajorName()+"%"); } if(StringUtils.isNotBlank(dto.getUniversityName())){ dto.setUniversityName("%"+dto.getUniversityName()+"%"); } PageHelper.startPage(dto.getPage(),dto.getPageSize()); result.setList(submitFileMapper.getAppList(dto)); result.setCount(submitFileMapper.getAppListCount(dto)); return result; } @Override public int create(SubmitFile submitFile) { submitFileMapper.insert(submitFile); int i = 0 ; List list = new ArrayList<>(); for(Point point :submitFile.getList()){ point.setSubmitId(submitFile.getId()); i++ ; list.add(point); if(i % 100 == 0){ pointMapper.insertBatch(list); list = new ArrayList<>(); } } if(list.size() > 0){ pointMapper.insertBatch(list); } return 1; } @Override public int delete(int id) { submitFileMapper.deleteByPrimaryKey(id); pointMapper.deleteBySubmit(id); return 1; } @Override public int update(SubmitFile submitFile) { if(StringUtils.isNotBlank(submitFile.getFileUrl())){ int i = 0 ; pointMapper.deleteBySubmit(submitFile.getId()); List list = new ArrayList<>(); for(Point point :submitFile.getList()){ point.setSubmitId(submitFile.getId()); i++ ; list.add(point); if(i % 100 == 0){ pointMapper.insertBatch(list); list = new ArrayList<>(); } } if(list.size() > 0){ pointMapper.insertBatch(list); } } return submitFileMapper.updateByPrimaryKey(submitFile); } }