Commit b589f99f by 涂亚平

红旅赛道

1 parent a1470730
# Created by .ignore support plugin (hsz.mobi)
...@@ -19,6 +19,8 @@ public class ProjectType { ...@@ -19,6 +19,8 @@ public class ProjectType {
public static final String VOCATIONAL = "职教赛道"; public static final String VOCATIONAL = "职教赛道";
public static final String HONGLV = "红旅赛道";
public static final String INTERNATIONAL = "国际合作"; public static final String INTERNATIONAL = "国际合作";
/** /**
......
...@@ -10,6 +10,7 @@ import com.zhongzhi.common.utils.LoginRequired; ...@@ -10,6 +10,7 @@ import com.zhongzhi.common.utils.LoginRequired;
import com.zhongzhi.common.utils.ResponseData; import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.match.MatchDictDTO; import com.zhongzhi.dto.match.MatchDictDTO;
import com.zhongzhi.dto.match.SelectListPageDTO; import com.zhongzhi.dto.match.SelectListPageDTO;
import com.zhongzhi.dto.project.ProjectListPageDTO;
import com.zhongzhi.model.MatchDictDO; import com.zhongzhi.model.MatchDictDO;
import com.zhongzhi.service.MatchDictService; import com.zhongzhi.service.MatchDictService;
import com.zhongzhi.vo.ResponseVO; import com.zhongzhi.vo.ResponseVO;
...@@ -218,5 +219,12 @@ public class MatchDictController { ...@@ -218,5 +219,12 @@ public class MatchDictController {
return ResponseData.generateCreatedResponse(0, matchDictService.getInternationalPage(selectListPageDTO)); return ResponseData.generateCreatedResponse(0, matchDictService.getInternationalPage(selectListPageDTO));
} }
/* 职教管理端 */
@PostMapping(value = "/getHonglvlPage")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 ---分页查询职教赛道赛事年份:pageNo、pageSize")
public ResponseVO getHonglvlPage(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getHonglvlPage(selectListPageDTO));
}
} }
\ No newline at end of file
...@@ -893,4 +893,26 @@ public class ProjectController { ...@@ -893,4 +893,26 @@ public class ProjectController {
return ResponseData.generateCreatedResponse(0, projectService.attendCount(attendCountDTO)); return ResponseData.generateCreatedResponse(0, projectService.attendCount(attendCountDTO));
} }
/* -- 管理端 -- */
@PostMapping(value = "/getHonglvProjectPage")
@ApiOperation("中心端 --- 分页查询职教赛道项目管理:matchId/赛事ID,projectGroup/项目组别(高职、中职)、projectSchedule/项目进度(全部项目传空字符串、校内赛、市级初赛、市级复赛、市级决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNo/当前页数 、pageSize/每页显示条数")
public ResponseVO getHonglvProjectPage(@RequestBody ProjectListPageDTO projectListPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProjectPage(projectListPageDTO));
}
@PostMapping(value = "getHonglvProjectNum")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- (职教)项目管理数量: matchId/赛事ID、projectGroup/项目组别")
public ResponseVO getHonglvProjectNum(@RequestBody SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProjectNum(seedTrackProjectNumDTO));
}
@PostMapping(value = "/getHonglvProjectDetail")
@LoginRequired({Platform.center, Platform.school, Platform.review})
@ApiOperation("中心端/院校端 --- 职教赛道项目详情:id/项目ID")
public ResponseVO getHonglvProjectDetail(@RequestBody ProjectDO projectDO) {
return ResponseData.generateCreatedResponse(0, projectService.getHonglvProjectDetail(projectDO.getId()));
}
} }
\ No newline at end of file
...@@ -38,6 +38,8 @@ public interface MatchDictService extends IService<MatchDictDO> { ...@@ -38,6 +38,8 @@ public interface MatchDictService extends IService<MatchDictDO> {
IPage getVocationalPage(SelectListPageDTO selectListPageDTO); IPage getVocationalPage(SelectListPageDTO selectListPageDTO);
IPage getHonglvlPage(SelectListPageDTO selectListPageDTO);
IPage getVocationalPageCity(SelectListPageDTO selectListPageDTO); IPage getVocationalPageCity(SelectListPageDTO selectListPageDTO);
IPage getInternationalPage(SelectListPageDTO selectListPageDTO); IPage getInternationalPage(SelectListPageDTO selectListPageDTO);
......
...@@ -164,12 +164,16 @@ public interface ProjectService extends IService<ProjectDO> { ...@@ -164,12 +164,16 @@ public interface ProjectService extends IService<ProjectDO> {
SeedTrackProjectDetailVO getVocationalProjectDetail(Long id); SeedTrackProjectDetailVO getVocationalProjectDetail(Long id);
SeedTrackProjectDetailVO getHonglvProjectDetail(Long id);
SeedTrackProjectDetailVO getVocationalProjectDetailCity(Long id); SeedTrackProjectDetailVO getVocationalProjectDetailCity(Long id);
SeedTrackProjectDetailVO getInternationalProjectDetail(Long id); SeedTrackProjectDetailVO getInternationalProjectDetail(Long id);
IPage getVocationalProjectPage(ProjectListPageDTO projectListPageDTO); IPage getVocationalProjectPage(ProjectListPageDTO projectListPageDTO);
IPage getHonglvProjectPage(ProjectListPageDTO projectListPageDTO);
IPage getVocationalProjectPageCity(ProjectListPageDTO projectListPageDTO); IPage getVocationalProjectPageCity(ProjectListPageDTO projectListPageDTO);
IPage getInternationalProjectPage(ProjectListPageDTO projectListPageDTO); IPage getInternationalProjectPage(ProjectListPageDTO projectListPageDTO);
...@@ -186,6 +190,8 @@ public interface ProjectService extends IService<ProjectDO> { ...@@ -186,6 +190,8 @@ public interface ProjectService extends IService<ProjectDO> {
VocationalNumVO getVocationalProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO); VocationalNumVO getVocationalProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
VocationalNumVO getHonglvProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
VocationalNumVO getVocationalProjectNumCity(SeedTrackProjectNumDTO seedTrackProjectNumDTO); VocationalNumVO getVocationalProjectNumCity(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
VocationalNumVO getInternationalProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO); VocationalNumVO getInternationalProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO);
......
...@@ -254,6 +254,22 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO> ...@@ -254,6 +254,22 @@ public class MatchDictServiceImpl extends ServiceImpl<MatchDictDAO, MatchDictDO>
} }
@Override @Override
public IPage getHonglvlPage(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Page page = new Page(selectListPageDTO.getPageNo(), selectListPageDTO.getPageSize());
IPage<MatchDictVO> iPage = this.baseMapper.getSeedTrackMatchPage(page, ProjectType.HONGLV);
for (MatchDictVO record : iPage.getRecords()) {
List<MatchScheduleDO> list = matchScheduleDAO.selectList(new QueryWrapper<MatchScheduleDO>()
.lambda()
.eq(MatchScheduleDO::getMatchId, record.getId()));
record.setSchedule(list);
}
return iPage;
}
@Override
public IPage getVocationalPageCity(SelectListPageDTO selectListPageDTO) { public IPage getVocationalPageCity(SelectListPageDTO selectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db1); DbContextHolder.setDbType(DBTypeEnum.db1);
......
...@@ -408,6 +408,200 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectDAO, ProjectDO> imple ...@@ -408,6 +408,200 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectDAO, ProjectDO> imple
} }
return seedTrackProjectDetailVO; return seedTrackProjectDetailVO;
} }
@Override
public SeedTrackProjectDetailVO getHonglvProjectDetail(Long id) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Map<String, Object> map = Localstorage.getMap();
String type = (String) map.get("type");
ProjectJudgeDO projectJudge = new ProjectJudgeDO();
CollegesDictDO collegesDict = new CollegesDictDO();
if (type.equals(Platform.review)) {
projectJudge = (ProjectJudgeDO) map.get("user");
} else if (type.equals(Platform.school)) {
collegesDict = (CollegesDictDO) map.get("user");
}
SeedTrackProjectDetailVO seedTrackProjectDetailVO = new SeedTrackProjectDetailVO();
ProjectDO projectDO = this.baseMapper.selectById(id);
if (projectDO != null) {
BeanUtils.copyProperties(projectDO, seedTrackProjectDetailVO);
List<ProjectMaterialsDO> materials = projectMaterialsDAO.selectList(new QueryWrapper<ProjectMaterialsDO>()
.lambda()
.eq(ProjectMaterialsDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setMaterialsCn(materials);
List<ProjectMemberDO> list = projectMemberDAO.selectList(new QueryWrapper<ProjectMemberDO>()
.lambda()
.eq(ProjectMemberDO::getProjectId, projectDO.getId()));
List<TeamMemberDTO> teamMember = new ArrayList<>();
List<MentorDTO> mentor = new ArrayList<>();
for (ProjectMemberDO projectMemberDO : list) {
if (projectMemberDO.getType().equals(MemberType.PRINCIPAL)) {
seedTrackProjectDetailVO.setName(projectMemberDO.getName());
seedTrackProjectDetailVO.setSchool(projectMemberDO.getSchool());
seedTrackProjectDetailVO.setGrade(projectMemberDO.getGrade());
seedTrackProjectDetailVO.setMajor(projectMemberDO.getMajor());
seedTrackProjectDetailVO.setSex(projectMemberDO.getSex());
seedTrackProjectDetailVO.setIdCard(projectMemberDO.getIdCard());
if (projectMemberDO.getTelephone() == null) {
StudentDO studentDO = studentDAO.selectById(projectDO.getId());
seedTrackProjectDetailVO.setTelephone(studentDO.getTelephone());
} else {
seedTrackProjectDetailVO.setTelephone(projectMemberDO.getTelephone());
}
seedTrackProjectDetailVO.setStudentNo(projectMemberDO.getStudentNo());
seedTrackProjectDetailVO.setEmail(projectMemberDO.getEmail());
seedTrackProjectDetailVO.setFiveYears(projectMemberDO.getFiveYears());
seedTrackProjectDetailVO.setNation(projectMemberDO.getNation());
seedTrackProjectDetailVO.setIdCardType(projectMemberDO.getIdCardType());
seedTrackProjectDetailVO.setStudyCountry(projectMemberDO.getStudyCountry());
} else if (projectMemberDO.getType().equals(MemberType.TEAM_MEMBER)) {
TeamMemberDTO teamMemberDTO = new TeamMemberDTO();
teamMemberDTO.setId(projectMemberDO.getId());
teamMemberDTO.setGrade(projectMemberDO.getGrade());
teamMemberDTO.setMajor(projectMemberDO.getMajor());
teamMemberDTO.setSchool(projectMemberDO.getSchool());
teamMemberDTO.setSex(projectMemberDO.getSex());
teamMemberDTO.setStudentNo(projectMemberDO.getStudentNo());
teamMemberDTO.setTeamName(projectMemberDO.getName());
teamMemberDTO.setTeamTelephone(projectMemberDO.getTelephone());
teamMemberDTO.setIdCard(projectMemberDO.getIdCard());
teamMemberDTO.setEmail(projectMemberDO.getEmail());
teamMemberDTO.setContractMethod(projectMemberDO.getContractMethod());
teamMemberDTO.setIdCardType(projectMemberDO.getIdCardType());
teamMemberDTO.setStudyCountry(projectMemberDO.getStudyCountry());
teamMember.add(teamMemberDTO);
} else if (projectMemberDO.getType().equals(MemberType.MENTOR)) {
MentorDTO mentorDTO = new MentorDTO();
mentorDTO.setId(projectMemberDO.getId());
mentorDTO.setCompany(projectMemberDO.getCompany());
mentorDTO.setPosition(projectMemberDO.getPosition());
mentorDTO.setPositionTitle(projectMemberDO.getPositionTitle());
mentorDTO.setTeacherName(projectMemberDO.getName());
mentorDTO.setTelephone(projectMemberDO.getTelephone());
mentorDTO.setIdCard(projectMemberDO.getIdCard());
mentorDTO.setNation(projectMemberDO.getNation());
mentor.add(mentorDTO);
}
}
seedTrackProjectDetailVO.setMentor(mentor);
seedTrackProjectDetailVO.setTeamMember(teamMember);
// QueryWrapper<ProjectReviewDO> queryWrapper = new QueryWrapper();
// if (projectJudge.getId() != null) {
// queryWrapper.lambda().eq(ProjectReviewDO::getJudgeId, projectJudge.getId());
// }
// queryWrapper.lambda().eq(ProjectReviewDO::getProjectId, id);
// List<ProjectReviewDO> review = projectReviewDAO.selectList(queryWrapper);
// if (review.size() > 0) {
// List<ReMatchReviewVO> rematch = new ArrayList<>();
// List<FinalsReviewVO> finals = new ArrayList<>();
// for (ProjectReviewDO pr : review) {
// ProjectJudgeDO projectJudgeDO = projectJudgeDAO.selectById(pr.getJudgeId());
// if (pr.getProjectSchedule().equals(ProjectSchedule.SEMI_FINAL_REVIEW)) {
// ReMatchReviewVO reMatchReviewVO = new ReMatchReviewVO();
// reMatchReviewVO.setId(pr.getId());
// if (projectJudgeDO != null) {
// reMatchReviewVO.setRematchJudgeName(projectJudgeDO.getUsername());
// }
//
// if (collegesDict.getId() == null) {
// reMatchReviewVO.setRematchScore(pr.getScore());
// }
// reMatchReviewVO.setRematchTime(DateFormatUtil.format(pr.getReviewTime(), DateFormatUtil.FMT_sdf_yMd));
// rematch.add(reMatchReviewVO);
// } else {
// FinalsReviewVO finalsReviewVO = new FinalsReviewVO();
// finalsReviewVO.setId(pr.getId());
// if (projectJudgeDO != null) {
// finalsReviewVO.setFinalsJudgeName(projectJudgeDO.getUsername());
// }
//
// if (collegesDict.getId() == null) {
// finalsReviewVO.setFinalsScore(pr.getScore());
// }
// finalsReviewVO.setFinalsTime(DateFormatUtil.format(pr.getReviewTime(), DateFormatUtil.FMT_sdf_yMd));
// finals.add(finalsReviewVO);
// }
// }
// seedTrackProjectDetailVO.setRematch(rematch);
// seedTrackProjectDetailVO.setFinals(finals);
// }
//
if (projectJudge.getId() != null) {
ProjectReviewDO projectReviewDO = projectReviewDAO.selectOne(new QueryWrapper<ProjectReviewDO>()
.lambda()
.eq(ProjectReviewDO::getProjectId, id)
.eq(ProjectReviewDO::getProjectSchedule, projectDO.getProjectSchedule())
.eq(ProjectReviewDO::getJudgeId, projectJudge.getId()));
if (projectReviewDO != null) {
if (projectReviewDO.getReviewStatus().equals(ProjectReview.SUBMITTED)) {
seedTrackProjectDetailVO.setReviewStatus(ProjectReview.SUBMITTED);
}
seedTrackProjectDetailVO.setReviewScore(projectReviewDO.getReviewScore());
seedTrackProjectDetailVO.setReviewOpinion(projectReviewDO.getReviewOpinion());
}
}
// 股权结构
List<ProjectOwnershipStructureDO> ownershipStructureDOList = projectOwnershipStructureDAO.selectList(new QueryWrapper<ProjectOwnershipStructureDO>()
.lambda()
.eq(ProjectOwnershipStructureDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setOwnership(ownershipStructureDOList);
/**
* 专利
*/
List<ProjectPatentDO> patentDOList = patentMapper.selectList(new QueryWrapper<ProjectPatentDO>()
.lambda()
.eq(ProjectPatentDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setPatent(patentDOList);
/**
* 论文
*/
List<ProjectPaperDO> paperDOList = paperMapper.selectList(new QueryWrapper<ProjectPaperDO>()
.lambda()
.eq(ProjectPaperDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setPaper(paperDOList);
/**
* 奖项
*/
List<ProjectAwardDO> awardDOList = awardMapper.selectList(new QueryWrapper<ProjectAwardDO>()
.lambda()
.eq(ProjectAwardDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setAward(awardDOList);
/**
* 软件著作权
*/
List<ProjectCopyrightDO> copyrightDOList = copyrightMapper.selectList(new QueryWrapper<ProjectCopyrightDO>()
.lambda()
.eq(ProjectCopyrightDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setCopyright(copyrightDOList);
/**
* 作品著作
*/
List<ProjectWorksDO> worksDOList = worksMapper.selectList(new QueryWrapper<ProjectWorksDO>()
.lambda()
.eq(ProjectWorksDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setWorks(worksDOList);
/**
* 商标
*/
List<ProjectTrademarkDO> trademarkDOList = trademarkMapper.selectList(new QueryWrapper<ProjectTrademarkDO>()
.lambda()
.eq(ProjectTrademarkDO::getProjectId, projectDO.getId()));
seedTrackProjectDetailVO.setTrademark(trademarkDOList);
}
return seedTrackProjectDetailVO;
}
@Override @Override
public SeedTrackProjectDetailVO getVocationalProjectDetailCity(Long id) { public SeedTrackProjectDetailVO getVocationalProjectDetailCity(Long id) {
...@@ -834,6 +1028,36 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectDAO, ProjectDO> imple ...@@ -834,6 +1028,36 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectDAO, ProjectDO> imple
return iPage; return iPage;
} }
@Override
public IPage getHonglvProjectPage(ProjectListPageDTO projectListPageDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Page page = new Page(projectListPageDTO.getPageNo(), projectListPageDTO.getPageSize());
Long matchId = null;
if (projectListPageDTO.getMatchId() == null) {
MatchDictDO matchDictDO = matchDictDAO.selectOne(new QueryWrapper<MatchDictDO>()
.lambda()
.eq(MatchDictDO::getStatus, 1)
.eq(MatchDictDO::getMatchType, ProjectType.HONGLV));
if (matchDictDO != null) {
matchId = matchDictDO.getId();
}
} else {
matchId = projectListPageDTO.getMatchId();
}
IPage<SeedTrackProjectPageVO> iPage = this.baseMapper.getSeedTrackProjectPage(page, matchId, projectListPageDTO.getProjectGroup(), MemberType.PRINCIPAL, ProjectType.VOCATIONAL, null,
projectListPageDTO.getProjectSchedule(), projectListPageDTO.getProjectStatus(), projectListPageDTO.getItemField(), projectListPageDTO.getName(), projectListPageDTO.getProjectProgress(),projectListPageDTO.getThemeName());
for (SeedTrackProjectPageVO record : iPage.getRecords()) {
List<ProjectMaterialsDO> list = projectMaterialsDAO.selectList(new QueryWrapper<ProjectMaterialsDO>()
.lambda()
.eq(ProjectMaterialsDO::getProjectId, record.getId()));
record.setMaterials(list);
}
return iPage;
}
@Override @Override
public IPage getVocationalProjectPageCity(ProjectListPageDTO projectListPageDTO) { public IPage getVocationalProjectPageCity(ProjectListPageDTO projectListPageDTO) {
...@@ -1385,6 +1609,50 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectDAO, ProjectDO> imple ...@@ -1385,6 +1609,50 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectDAO, ProjectDO> imple
} }
@Override @Override
public VocationalNumVO getHonglvProjectNum(SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
DbContextHolder.setDbType(DBTypeEnum.db2);
Map<String, Object> map = Localstorage.getMap();
CollegesDictDO collegesDictDO = new CollegesDictDO();
if (map.get("type").equals(Platform.school)) {
collegesDictDO = (CollegesDictDO) map.get("user");
}
List<ProjectDO> list = new ArrayList<>();
if (map.get("type").equals(Platform.review)) {
ProjectJudgeDO projectJudgeDO = (ProjectJudgeDO) map.get("user");
list = this.baseMapper.getListByJudgeId(seedTrackProjectNumDTO.getMatchId(), seedTrackProjectNumDTO.getProjectGroup(), projectJudgeDO.getId());
} else {
list = this.baseMapper.getSeedTrackProjectList(seedTrackProjectNumDTO.getMatchId(), seedTrackProjectNumDTO.getProjectGroup(), collegesDictDO.getName(), null);
}
VocationalNumVO vocationalNumVO = new VocationalNumVO();
Integer ProjectNum = 0;
Integer registerNum = 0;
Integer rematchProjectNum = 0;
Integer finalProjectNum = 0;
if (list != null && list.size() > 0) {
for (ProjectDO projectDO : list) {
if (projectDO.getProjectSchedule().equals(ProjectSchedule.SCHOOL_REVIEW)) {
ProjectNum++;
} else if (projectDO.getProjectSchedule().equals(ProjectSchedule.REGISTER)) {
registerNum++;
} else if (projectDO.getProjectSchedule().equals(ProjectSchedule.SEMI_FINAL_REVIEW)) {
rematchProjectNum++;
} else if (projectDO.getProjectSchedule().equals(ProjectSchedule.FINAL_REVIEW)) {
finalProjectNum++;
}
}
}
vocationalNumVO.setRegisterNum(registerNum);
vocationalNumVO.setSchoolProjectNum(ProjectNum);
vocationalNumVO.setRematchNum(rematchProjectNum);
vocationalNumVO.setFinalNum(finalProjectNum);
return vocationalNumVO;
}
@Override
public VocationalNumVO getVocationalProjectNumCity(SeedTrackProjectNumDTO seedTrackProjectNumDTO) { public VocationalNumVO getVocationalProjectNumCity(SeedTrackProjectNumDTO seedTrackProjectNumDTO) {
DbContextHolder.setDbType(DBTypeEnum.db1); DbContextHolder.setDbType(DBTypeEnum.db1);
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!