Commit 7411d8e5 by 涂亚平

20260717

1 parent e5dc9d86
Showing with 2927 additions and 204 deletions
This diff could not be displayed because it is too large.
...@@ -16,4 +16,13 @@ public class AliyunSmsProperties { ...@@ -16,4 +16,13 @@ public class AliyunSmsProperties {
private String accessKeyId; private String accessKeyId;
private String accessKeySecret; private String accessKeySecret;
private String cpcode;
private String excode;
private String key;
private String rcsapi;
} }
package com.subsidy.common.configure;
import org.quartz.spi.TriggerFiredBundle;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
import org.springframework.scheduling.quartz.AdaptableJobFactory;
import org.springframework.stereotype.Component;
/**
* <p>
* JobFactory实例
* </p>
*
* @author DengMin
* @since 2020/12/9
*/
@Component
public class JobFactory extends AdaptableJobFactory {
private AutowireCapableBeanFactory factory;
public JobFactory(AutowireCapableBeanFactory factory) {
this.factory = factory;
}
@Override
protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception {
Object job = super.createJobInstance(bundle);
factory.autowireBean(job);
return job;
}
}
package com.subsidy.common.configure;
import org.quartz.Scheduler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.scheduling.quartz.SchedulerFactoryBean;
import javax.sql.DataSource;
/**
* <p>
* Quartz配置
* </p>
*
* @author DengMin
* @since 2020/12/8
*/
@Configuration
public class QuartzConfig {
@Autowired
private JobFactory jobFactory;
@Autowired
private DataSource dataSource;
@Bean
public SchedulerFactoryBean schedulerFactoryBean() {
SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean();
schedulerFactoryBean.setOverwriteExistingJobs(true);
schedulerFactoryBean.setStartupDelay(60);
schedulerFactoryBean.setJobFactory(jobFactory);
schedulerFactoryBean.setOverwriteExistingJobs(true);
schedulerFactoryBean.setStartupDelay(1);
schedulerFactoryBean.setDataSource(dataSource);
schedulerFactoryBean.setConfigLocation(new ClassPathResource("/application-quartz.properties"));
return schedulerFactoryBean;
}
@Bean
public Scheduler scheduler() {
return schedulerFactoryBean().getScheduler();
}
}
package com.subsidy.common.configure; package com.subsidy.common.configure;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.builders.RequestHandlerSelectors;
...@@ -12,15 +14,25 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2; ...@@ -12,15 +14,25 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration @Configuration
@EnableSwagger2 @EnableSwagger2
public class SwaggerConfig { public class SwaggerConfig {
@Value("${spring.profiles.active:}")
private String activeProfile;
@Bean @Bean
public Docket createRestApi() { public Docket createRestApi() {
// 判断是否为生产环境
boolean isProd = "prod".equals(activeProfile);
return new Docket(DocumentationType.SWAGGER_2) return new Docket(DocumentationType.SWAGGER_2)
.enable(!isProd)
.pathMapping("/") .pathMapping("/")
.select() .select()
.apis(RequestHandlerSelectors.basePackage("com.subsidy")) .apis(RequestHandlerSelectors.basePackage("com.subsidy"))
.paths(PathSelectors.any()) .paths(PathSelectors.any())
.build().apiInfo(new ApiInfoBuilder() .build().apiInfo(new ApiInfoBuilder()
.title("顶岗实习端") .title("ecnu")
.description("接口文档规范") .description("接口文档规范")
.version("1.0") .version("1.0")
// .contact(new Contact("啊啊啊啊","www.youkehulian.com","tcp@meishu.com")) // .contact(new Contact("啊啊啊啊","www.youkehulian.com","tcp@meishu.com"))
......
package com.subsidy.common.constant;
public class OpenStatus {
public static final String DOING = "进行中";
public static final String DONE = "已结束";
public static final String TODO = "待开始";
}
...@@ -5,8 +5,10 @@ import lombok.Data; ...@@ -5,8 +5,10 @@ import lombok.Data;
@Data @Data
public class ProjectTrack { public class ProjectTrack {
public static final String COURSE_TRACK = "课程赛道"; public static final String COURSE_TRACK = "课程风采展示";
public static final String TEACH_TRACK = "教学赛道"; public static final String TEACH_TRACK = "教学技能赛道";
public static final String CONSULT_TRACK = "咨询辅导赛道";
} }
package com.subsidy.common.constant;
import lombok.Data;
@Data
public class RoleType {
public static final String TEAMLEADER = "组长";
public static final String TEAMMEMBER = "组员";
}
package com.subsidy.common.constant;
public class SMSTemplate {
/*
项目进度通知
*/
public static final String PROJECT_PROGRESS = "2760175";
/*
项目提交通知
*/
public static final String PROJECT_SUBMIT = "270159";
/*
评审邀请通知 old
*/
public static final String REVIEW_INVITATION_OLD = "2765806";
/**
*
*/
public static final String REVIEW_INVITATION_NEW = "2939771";
/*
撤销评审项目通知
*/
public static final String CANCEL_REVIEW = "229303";
}
package com.subsidy.common.constant;
import lombok.Data;
@Data
public class SubmitStatus {
public static final String DONE = "已提交";
public static final String TEMP = "暂存";
public static final String GIVEUP = "弃权";
}
...@@ -38,7 +38,7 @@ public class CollegesDictController { ...@@ -38,7 +38,7 @@ public class CollegesDictController {
@Autowired @Autowired
public CollegesDictService collegesDictService; public CollegesDictService collegesDictService;
@PostMapping(value = "/getCollegesList") @PostMapping(value = "/getCollegesListNew")
@ApiOperation("查询所有就读院校: name/院校名称 pageSize pageNum") @ApiOperation("查询所有就读院校: name/院校名称 pageSize pageNum")
public ResponseVO getCollegesList(@RequestBody GetCollegesListDTO getCollegesListDTO) { public ResponseVO getCollegesList(@RequestBody GetCollegesListDTO getCollegesListDTO) {
Page page = new Page(getCollegesListDTO.getPageNum(), getCollegesListDTO.getPageSize()); Page page = new Page(getCollegesListDTO.getPageNum(), getCollegesListDTO.getPageSize());
...@@ -48,10 +48,15 @@ public class CollegesDictController { ...@@ -48,10 +48,15 @@ public class CollegesDictController {
if (StringUtils.isNotBlank(getCollegesListDTO.getName())) { if (StringUtils.isNotBlank(getCollegesListDTO.getName())) {
queryWrapper.lambda().like(CollegesDictDO::getName, getCollegesListDTO.getName()); queryWrapper.lambda().like(CollegesDictDO::getName, getCollegesListDTO.getName());
} }
// queryWrapper.lambda().eq(CollegesDictDO::getLoginStatus,1);
return ResponseData.generateCreatedResponse(0, collegesDictService.page(page, queryWrapper)); return ResponseData.generateCreatedResponse(0, collegesDictService.page(page, queryWrapper));
} }
@PostMapping("getCollegeInfo")
@ApiOperation("返回院校基本信息 pageSize pageNum name")
public ResponseVO getCollegeInfo(@RequestBody GetCollegesListDTO getCollegesListDTO){
return ResponseData.generateCreatedResponse(0,collegesDictService.getCollegeInfo(getCollegesListDTO));
}
@PostMapping(value = "/login") @PostMapping(value = "/login")
@ApiOperation("院校端 --- 登录: account/账户, password/密码") @ApiOperation("院校端 --- 登录: account/账户, password/密码")
public ResponseVO login(@RequestBody CollegesDictDO collegesDictDO) { public ResponseVO login(@RequestBody CollegesDictDO collegesDictDO) {
...@@ -73,39 +78,28 @@ public class CollegesDictController { ...@@ -73,39 +78,28 @@ public class CollegesDictController {
return ResponseData.generateCreatedResponse(0); return ResponseData.generateCreatedResponse(0);
} }
// @PostMapping(value = "/createColleges") @PostMapping(value = "/exportCourseList")
// @ApiOperation("中心端 --- 新建院校: name/搜索名称, code/院校代码、 phone/手机号") @ApiOperation("院校端 --- 批量导出院校项目(课程风采): ids[]")
// public ResponseVO createColleges(@RequestBody CollegesDictDO collegesDictDO) {
// collegesDictService.createColleges(collegesDictDO);
// return ResponseData.generateCreatedResponse(0);
// }
//
// @PostMapping(value = "/delete")
// @ApiOperation("中心端 --- 删除院校: id/院校ID")
// public ResponseVO delete(@RequestBody CollegesDictDO collegesDictDO) {
// collegesDictService.removeById(collegesDictDO.getId());
// return ResponseData.generateCreatedResponse(0);
// }
// @PostMapping(value = "/exportCollege")
// @ApiOperation("导出院校名录")
// public ResponseVO exportCollege() {
// collegesDictService.exportCollege();
// return ResponseData.generateCreatedResponse(0);
// }
@PostMapping(value = "/exportProjectCollegeList")
@ApiOperation("院校端 --- 批量导出院校项目: ids[]")
public void exportProjectCollegeList(@RequestBody ProjectCollegeListDTO projectCollegeListDTO) { public void exportProjectCollegeList(@RequestBody ProjectCollegeListDTO projectCollegeListDTO) {
collegesDictService.exportProjectCollegeList(projectCollegeListDTO); collegesDictService.exportProjectCollegeList(projectCollegeListDTO);
} }
@PostMapping(value = "/exportTeachList")
@ApiOperation("院校端 --- 批量导出院校项目(课程风采): ids[]")
public void exportTeachList(@RequestBody ProjectCollegeListDTO projectCollegeListDTO) {
collegesDictService.exportTeachList(projectCollegeListDTO);
}
@PostMapping(value = "/exportConsultList")
@ApiOperation("院校端 --- 批量导出院校项目(课程风采): ids[]")
public void exportConsultList(@RequestBody ProjectCollegeListDTO projectCollegeListDTO) {
collegesDictService.exportConsultList(projectCollegeListDTO);
}
@PostMapping(value = "/exportSchoolProjectSummary") @PostMapping(value = "/exportSchoolProjectSummary")
@ApiOperation("院校端 --- 批量导出院校项目汇总表 collegeId") @ApiOperation("院校端 --- 批量导出院校项目汇总表 collegeId")
public void exportSchoolProjectSummary(@RequestBody ProjectDO projectDO) { public void exportSchoolProjectSummary(@RequestBody ProjectDO projectDO) {
collegesDictService.exportSchoolProjectSummary(projectDO); collegesDictService.exportSchoolProjectSummary(projectDO);
} }
} }
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.model.DrawLotGroupDictDO;
import com.subsidy.service.DrawLotGroupDictService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
/**
* <p>
* 前端控制器
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@RestController
@Api(tags = "组别")
@RequestMapping("/drawLotGroupDict")
public class DrawLotGroupDictController {
@Autowired
private DrawLotGroupDictService drawLotGroupDictService;
@PostMapping("allGroups")
@ApiOperation("所有组别 sceneId ")
public ResponseVO allGroups(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO) {
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.allGroups(drawLotGroupDictDO));
}
@PostMapping("addGroup")
@ApiOperation("新建组别 sceneId projectCnt fieldCnt teachCnt")
public ResponseVO addGroup(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.addGroup(drawLotGroupDictDO));
}
@PostMapping("updateGroup")
@ApiOperation("修改组别 id sceneId projectCnt fieldCnt teachCnt")
public ResponseVO updateGroup(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.updateGroup(drawLotGroupDictDO));
}
@PostMapping("deleteGroup")
@ApiOperation("移除组别 id")
public ResponseVO deleteGroup(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.deleteGroup(drawLotGroupDictDO));
}
@PostMapping("sceneGroups")
@ApiOperation("查看某现场的组别 sceneId")
public ResponseVO sceneGroups(@RequestBody DrawLotGroupDictDO drawLotGroupDictDO){
return ResponseData.generateCreatedResponse(0,drawLotGroupDictService.sceneGroups(drawLotGroupDictDO));
}
}
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.dto.group.AddProjectToSceneDTO;
import com.subsidy.dto.group.AllGroupItemsDTO;
import com.subsidy.dto.group.CollegeProjectsDTO;
import com.subsidy.model.DrawLotsGroupItemsDO;
import com.subsidy.service.DrawLotsGroupItemsService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
/**
* <p>
* 前端控制器
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@RestController
@Api(tags = "小组项目")
@RequestMapping("/drawLotsGroupItems")
public class DrawLotsGroupItemsController {
@Autowired
private DrawLotsGroupItemsService drawLotsGroupItemsService;
@PostMapping("allGroupItems")
@ApiOperation("查看所有小组项目 pageSize pageNum sceneId projectName college groupId")
public ResponseVO allGroupItems(@RequestBody AllGroupItemsDTO allGroupItemsDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.allGroupItems(allGroupItemsDTO));
}
@PostMapping("addProjectToScene")
@ApiOperation("添加项目到现场 sceneId groupId projectIds")
public ResponseVO addProjectToScene(@RequestBody AddProjectToSceneDTO addProjectToSceneDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.addProjectToScene(addProjectToSceneDTO));
}
@PostMapping("deleteGroupItem")
@ApiOperation("删除小组项目 id")
public ResponseVO deleteGroupItem(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.deleteGroupItem(drawLotsGroupItemsDO));
}
@PostMapping("collegeProjects")
@ApiOperation("选择院校下这一届的项目(除去已经分配的) college matchId sceneId groupId")
public ResponseVO collegeProjects(@RequestBody CollegeProjectsDTO collegeProjectsDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.collegeProjects(collegeProjectsDTO));
}
}
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.dto.group.JudgeScoreScreenDTO;
import com.subsidy.dto.group.MatchJudgesDTO;
import com.subsidy.dto.judge.AddJudgeDTO;
import com.subsidy.model.DrawLotsGroupJudgesDO;
import com.subsidy.service.DrawLotsGroupJudgesService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
/**
* <p>
* 赛组评委表 前端控制器
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@RestController
@RequestMapping("/drawLotsGroupJudges")
@Api(tags = "评委表")
public class DrawLotsGroupJudgesController {
@Autowired
private DrawLotsGroupJudgesService drawLotsGroupJudgesService;
@PostMapping("matchJudges")
@ApiOperation("某赛道的所有评委 pageSize pageNum sceneId userName expectorType roleType ")
public ResponseVO matchJudges(@RequestBody MatchJudgesDTO matchJudgesDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.matchJudges(matchJudgesDTO));
}
@PostMapping("selectJudges")
@ApiOperation("选择没有被选择过的评委 pageSize pageNum sceneId userName ")
public ResponseVO selectJudges(@RequestBody MatchJudgesDTO matchJudgesDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.selectJudges(matchJudgesDTO));
}
@PostMapping("removeJudge")
@ApiOperation("移除评委 matchJudges返回的id")
public ResponseVO removeJudge(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.removeJudge(drawLotsGroupJudgesDO));
}
@PostMapping("updateJudge")
@ApiOperation("编辑评委 id sceneId expectorType roleType groupId")
public ResponseVO updateJudge(@RequestBody AddJudgeDTO addJudgeDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.updateJudge(addJudgeDTO));
}
@PostMapping("addJudge")
@ApiOperation("新加评委 judgeIds sceneId groupId")
public ResponseVO addJudge(@RequestBody AddJudgeDTO addJudgeDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.addJudge(addJudgeDTO));
}
@PostMapping("assignJudge")
@ApiOperation("批量分配评委 ids[] sceneId expectorType roleType groupIds[]")
public ResponseVO assignJudge(@RequestBody AddJudgeDTO addJudgeDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.assignJudge(addJudgeDTO));
}
@PostMapping("judgeScoreScreen")
@ApiOperation("评委分数大屏 groupId groupNums[] ")
public ResponseVO judgeScoreScreen(@RequestBody JudgeScoreScreenDTO judgeScoreScreenDTO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.judgeScoreScreen(judgeScoreScreenDTO));
}
@PostMapping("judgeScenes")
@ApiOperation("查看老师的现场 judgeId ")
public ResponseVO judgeScenes(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.judgeScenes(drawLotsGroupJudgesDO));
}
@PostMapping("judgeGroups")
@ApiOperation("查看老师的组别 sceneId judgeId ")
public ResponseVO judgeGroups(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsGroupJudgesService.judgeGroups(drawLotsGroupJudgesDO));
}
}
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.model.DrawLotsScenesDO;
import com.subsidy.service.DrawLotsScenesService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author DengMin
* @since 2025-06-19
*/
@RestController
@RequestMapping("/drawLotsScenes")
@Api("现场赛事")
public class DrawLotsScenesController {
@Autowired
private DrawLotsScenesService drawLotsScenesService;
@PostMapping("allMatchScenes")
@ApiOperation("查看某一赛道的所有现场 matchId")
public ResponseVO allMatchScenes(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.allMatchScenes(drawLotsScenesDO));
}
@PostMapping("addMatchScene")
@ApiOperation("添加某一赛道的所有现场 matchId sceneName openStatus ")
public ResponseVO addMatchScene(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.addMatchScene(drawLotsScenesDO));
}
@PostMapping("updateMatchScene")
@ApiOperation("修改某一个赛道现场 id matchId sceneName openStatus ")
public ResponseVO updateMatchScene(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.updateMatchScene(drawLotsScenesDO));
}
@PostMapping("deleteMatchScene")
@ApiOperation("删除某一个赛道现场 id matchId sceneName projectCnt groupCnt judgeCnt rankCnt openStatus ")
public ResponseVO deleteMatchScene(@RequestBody DrawLotsScenesDO drawLotsScenesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScenesService.deleteMatchScene(drawLotsScenesDO));
}
}
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.dto.group.GroupScoresDTO;
import com.subsidy.model.DrawLotsGroupItemsDO;
import com.subsidy.model.DrawLotsGroupJudgesDO;
import com.subsidy.model.DrawLotsScoresDO;
import com.subsidy.service.DrawLotsScoresService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
/**
* <p>
* 前端控制器
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@RestController
@RequestMapping("/drawLotsScores")
@Api(tags = "评分")
public class DrawLotsScoresController {
@Autowired
private DrawLotsScoresService drawLotsScoresService;
@PostMapping("groupScores")
@ApiOperation("小组评分 sceneId ")
public ResponseVO groupScores(@RequestBody GroupScoresDTO groupScoresDTO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.groupScores(groupScoresDTO));
}
@PostMapping("exportGroupScores")
@ApiOperation("导出小组评分 sceneId ")
public void exportGroupScores(@RequestBody GroupScoresDTO groupScoresDTO){
drawLotsScoresService.exportGroupScores(groupScoresDTO);
}
@PostMapping("queryItems")
@ApiOperation("查询某评委可以看到的项目 groupId judgeId")
public ResponseVO queryItems(@RequestBody DrawLotsGroupJudgesDO drawLotsGroupJudgesDO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.queryItems(drawLotsGroupJudgesDO));
}
@PostMapping("submit")
@ApiOperation("暂存/提交 sceneId groupId judgeId projectId submitStatus :暂存/已提交 score")
public ResponseVO submit(@RequestBody DrawLotsScoresDO drawLotsScoresDO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.submit(drawLotsScoresDO));
}
@PostMapping("groupRank")
@ApiOperation("某个组别的排行 groupId")
public ResponseVO groupRank(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
return ResponseData.generateCreatedResponse(0,drawLotsScoresService.groupRank(drawLotsGroupItemsDO));
}
}
...@@ -3,6 +3,9 @@ package com.subsidy.controller; ...@@ -3,6 +3,9 @@ package com.subsidy.controller;
import com.subsidy.common.ResponseData; import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO; import com.subsidy.common.ResponseVO;
import com.subsidy.common.constant.Platform;
import com.subsidy.common.interceptor.LoginRequired;
import com.subsidy.dto.match.SelectListPageDTO;
import com.subsidy.model.MatchDictDO; import com.subsidy.model.MatchDictDO;
import com.subsidy.service.MatchDictService; import com.subsidy.service.MatchDictService;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -72,6 +75,11 @@ public class MatchDictController { ...@@ -72,6 +75,11 @@ public class MatchDictController {
return ResponseData.generateCreatedResponse(0,matchDictService.openOneMatch(matchDictDO)); return ResponseData.generateCreatedResponse(0,matchDictService.openOneMatch(matchDictDO));
} }
@PostMapping(value = "/getVocationalPage")
@ApiOperation("中心端/院校端 ---分页查询职教赛道赛事年份:pageNo、pageSize")
public ResponseVO getVocationalPage(@RequestBody SelectListPageDTO selectListPageDTO) {
return ResponseData.generateCreatedResponse(0, matchDictService.getVocationalPage(selectListPageDTO));
}
......
...@@ -29,10 +29,10 @@ import java.util.List; ...@@ -29,10 +29,10 @@ import java.util.List;
@RequestMapping("/oss") @RequestMapping("/oss")
public class OssController { public class OssController {
public static final String keyId = "LTAI5tPAH7P7WQVeowo517BE"; public static final String keyId = "LTAI5tLUBG4B6QxhHrhddc7p";
public static final String secret = "0ueqhIfdAZyw5lWlBVSLpAxTtx37RY"; public static final String secret = "eber38QGHZixTQ6bFfrd80kbg67jIP";
// @Value("${spring.profiles.active}") // @Value("${spring.profiles.active}")
......
package com.subsidy.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
/**
* <p>
* 前端控制器
* </p>
*
* @author Tuyp
* @since 2025-04-30
*/
@RestController
@Api(tags = "")
@RequestMapping("/project-consult-do")
public class ProjectConsultController {
}
...@@ -3,21 +3,18 @@ package com.subsidy.controller; ...@@ -3,21 +3,18 @@ package com.subsidy.controller;
import com.subsidy.common.ResponseData; import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO; import com.subsidy.common.ResponseVO;
import com.subsidy.common.constant.Platform;
import com.subsidy.common.interceptor.LoginRequired;
import com.subsidy.dto.project.*; import com.subsidy.dto.project.*;
import com.subsidy.model.CollegesDictDO; import com.subsidy.dto.review.ProjectReviewPageDTO;
import com.subsidy.dto.review.ProjectReviewScoreDTO;
import com.subsidy.model.ProjectDO; import com.subsidy.model.ProjectDO;
import com.subsidy.service.ProjectService; import com.subsidy.service.ProjectService;
import com.subsidy.util.ConstantUtils; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
/** /**
* <p> * <p>
...@@ -36,7 +33,7 @@ public class ProjectController { ...@@ -36,7 +33,7 @@ public class ProjectController {
private ProjectService projectService; private ProjectService projectService;
@PostMapping("createProject") @PostMapping("createProject")
@ApiOperation("基本信息--保存并继续 id matchId teacherId projectTrack 赛道:课程赛道/教学赛道 courseName courseNameEn 课程英文名称 courseCode courseType grade courseHour " + @ApiOperation("基本信息--保存并继续 id matchId teacherId projectTrack 赛道:课程展示/教学技能赛道 courseName courseNameEn 课程英文名称 courseCode courseType grade courseHour " +
" courseObject 开课对象:0:专业不限 1:限制专业 courseObjectMajor 开课对象专业 theoryHour practiseHour" + " courseObject 开课对象:0:专业不限 1:限制专业 courseObjectMajor 开课对象专业 theoryHour practiseHour" +
"score years startDate1 endDate1 startDate2 endDate2 studentTotalNum1 studentTotalNum2 vodUrl " + "score years startDate1 endDate1 startDate2 endDate2 studentTotalNum1 studentTotalNum2 vodUrl " +
" 开课单位 companyName courseUrl 课程网址" + " 开课单位 companyName courseUrl 课程网址" +
...@@ -84,6 +81,12 @@ public class ProjectController { ...@@ -84,6 +81,12 @@ public class ProjectController {
projectService.downloadPdf(projectDO); projectService.downloadPdf(projectDO);
} }
@PostMapping("downloadConsultPdf")
@ApiOperation("生成案例报告pdf")
public void downloadConsultPdf(@RequestBody ProjectDO projectDO){
projectService.downloadConsultPdf(projectDO);
}
@PostMapping(value = "/getSeedTrackProjectPage") @PostMapping(value = "/getSeedTrackProjectPage")
@ApiOperation("中心端 --- 分页查询种子赛道全部项目:matchId/赛事ID,projectGroup/职教、高教、projectSchedule/项目进度(全部项目传空字符串、校内报名、市级复赛、市级决赛), " + @ApiOperation("中心端 --- 分页查询种子赛道全部项目:matchId/赛事ID,projectGroup/职教、高教、projectSchedule/项目进度(全部项目传空字符串、校内报名、市级复赛、市级决赛), " +
"projectStatus/项目状态, itemField/领域, name/搜名称, pageNum/当前页数 、pageSize/每页显示条数 ") "projectStatus/项目状态, itemField/领域, name/搜名称, pageNum/当前页数 、pageSize/每页显示条数 ")
...@@ -187,9 +190,9 @@ public class ProjectController { ...@@ -187,9 +190,9 @@ public class ProjectController {
} }
@PostMapping("uploadVods") @PostMapping("uploadVods")
@ApiOperation("上传某个视频 id vodUrl") @ApiOperation("上传某个视频 id vodUrl vodCode")
public ResponseVO uploadVods(@RequestBody ProjectDO projectDO)throws Exception{ public ResponseVO uploadVods(@RequestBody UploadVodsDTO uploadVodsDTO)throws Exception{
return ResponseData.generateCreatedResponse(0,projectService.uploadVods(projectDO)); return ResponseData.generateCreatedResponse(0,projectService.uploadVods(uploadVodsDTO));
} }
@PostMapping("uploadVodsTimeLimit") @PostMapping("uploadVodsTimeLimit")
...@@ -197,6 +200,95 @@ public class ProjectController { ...@@ -197,6 +200,95 @@ public class ProjectController {
public ResponseVO uploadVodsTimeLimit(@RequestBody ProjectDO projectDO)throws Exception{ public ResponseVO uploadVodsTimeLimit(@RequestBody ProjectDO projectDO)throws Exception{
return ResponseData.generateCreatedResponse(0,projectService.uploadVodsTimeLimit(projectDO)); return ResponseData.generateCreatedResponse(0,projectService.uploadVodsTimeLimit(projectDO));
} }
@PostMapping(value = "/getVocationalReviewNum")
@ApiOperation("中心端 --- 职教评审列表(已评审 + 待评审)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getVocationalReviewNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalReviewNum(reviewListDTO));
}
@PostMapping(value = "/getVocationalReviewList")
@ApiOperation("中心端 --- 职教评审列表:projectGroup/组别、projectName/搜索项目或院校、 projectStatus/项目状态(市级初赛、市级复赛、市级决赛)、projectReview/评审分配状态(已分配/未分配)、" +
"pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getVocationalReviewList(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalReviewList(reviewListDTO));
}
@PostMapping(value = "/getVocationalAssignNum")
@ApiOperation("中心端 --- 职教评审分配(已分配 + 未分配)项目数量统计:matchId/赛事年份ID、projectGroup/组别(高职、中职), projectStatus/项目进度(校级申请项目、市级初赛项目、市级复赛项目、市级 决赛项目)")
public ResponseVO getVocationalAssignNum(@RequestBody ReviewListDTO reviewListDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalAssignNum(reviewListDTO));
}
@PostMapping(value = "/exportProject")
@ApiOperation("中心端 --- 评审项目导出:matchId/赛事ID")
public ResponseVO exportProject(@RequestBody ReviewListDTO reviewListDTO) {
projectService.exportProjectReview(reviewListDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "getReviewVocationalNum")
@ApiOperation("评审端 --- (职教)项目数量: matchId/赛事ID、projectGroup/项目组别、 projectSchedule/赛事状态 projectJudgeId")
public ResponseVO getReviewVocationalNum(@RequestBody ReviewVocationalNumDTO reviewVocationalNumDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getReviewVocationalNum(reviewVocationalNumDTO));
}
/* -- 评审端 -- */
@PostMapping(value = "/getVocationalProjectReviewPage")
@ApiOperation("评审端 ---职教评审项目分页查询:matchId/赛事年份ID、projectSchedule/项目进度(初赛、复赛、决赛)、status/状态(待评审, 已评审)、projectGroup/项目组别、projectName/搜索名称、pageNo/当前页数、pageSize/每页显示条数")
public ResponseVO getVocationalProjectReviewPage(@RequestBody ProjectReviewPageDTO projectReviewPageDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectReviewPage(projectReviewPageDTO));
}
@PostMapping(value = "/setScore")
@ApiOperation("评审端 ---批量预评分:reviewScore[{ id/项目ID、score/分数 }] +" +
" --- 单个预评分:id/项目ID、score/分数")
public ResponseVO setScore(@RequestBody ProjectReviewScoreDTO projectReviewScoreDTO) {
projectService.setScore(projectReviewScoreDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getVocationalProjectDetail")
@ApiOperation("中心端/院校端 --- 职教赛道项目详情:id/项目ID")
public ResponseVO getVocationalProjectDetail(@RequestBody GetVocationalProjectDetailDTO getVocationalProjectDetailDTO) {
return ResponseData.generateCreatedResponse(0, projectService.getVocationalProjectDetail(getVocationalProjectDetailDTO));
}
@PostMapping(value = "/submitted")
@ApiOperation("评审端 ---批量提交:ids:[项目ID]" +
" --- 提交评分:id/项目ID ")
public ResponseVO submitted(@RequestBody ProjectReviewScoreDTO projectReviewScoreDTO) {
projectService.submitted(projectReviewScoreDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "batchUpdateEditStatus")
@ApiOperation("中心端 --- 批量更新编辑状态:ids/项目ID(数组)、editStatus/状态(0:关闭,1:开启)")
public ResponseVO batchUpdateEditStatus(@RequestBody EditStatusDTO editStatusDTO) {
projectService.batchUpdateEditStatus(editStatusDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "updateEditStatus")
@ApiOperation("中心端 --- 更新编辑状态:id/项目ID、editStatus/状态(0:关闭,1:开启)")
public ResponseVO updateEditStatus(@RequestBody EditStatusDTO editStatusDTO) {
projectService.updateEditStatus(editStatusDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping("createTimeProject")
@ApiOperation("【时间】创建项目 timeId ")
public ResponseVO createTimeProject(@RequestBody UpdateProjectDTO updateProjectDTO)throws Exception{
return ResponseData.generateCreatedResponse(0, projectService.createTimeProject(updateProjectDTO));
}
@PostMapping("downloadTimePdf")
@ApiOperation("下载pdf id 项目id")
public void downloadTimePdf(@RequestBody ProjectDO projectDO){
projectService.downloadTimePdf(projectDO);
}
} }
......
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.common.constant.Platform;
import com.subsidy.common.interceptor.LoginRequired;
import com.subsidy.dto.administer.LoginDTO;
import com.subsidy.dto.judge.ProjectJudgePageDTO;
import com.subsidy.model.ProjectJudgeDO;
import com.subsidy.service.ProjectJudgeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
/**
* <p>
* 项目评审员 前端控制器
* </p>
*
* @author DengMin
* @since 2021-05-28
*/
@RestController
@Api(tags = "评委")
@RequestMapping("/projectJudge")
public class ProjectJudgeController {
@Autowired
private ProjectJudgeService projectJudgeService;
@PostMapping(value = "/login")
@ApiOperation("评审端 --- 登录:telephone/手机号、code/验证码")
public ResponseVO login(@RequestBody LoginDTO loginDTO) {
return ResponseData.generateCreatedResponse(0, projectJudgeService.login(loginDTO));
}
@PostMapping(value = "/passwordLogin")
@ApiOperation("评审端 --- 登录:accountName、password")
public ResponseVO passwordLogin(@RequestBody ProjectJudgeDO projectJudgeDO) {
return ResponseData.generateCreatedResponse(0, projectJudgeService.passwordLogin(projectJudgeDO));
}
@PostMapping(value = "/getProjectJudgePage")
@ApiOperation("中心端 ---评委列表:username/姓名、status/状态、pageNo/当前页数、 pageSize/每页显示条数")
public ResponseVO getProjectJudgePage(@RequestBody ProjectJudgePageDTO projectJudgePageDTO) {
return ResponseData.generateCreatedResponse(0, projectJudgeService.getProjectJudgePage(projectJudgePageDTO));
}
@PostMapping(value = "/createProjectJudge")
@ApiOperation("中心端 ---添加评委:username/姓名、accountName,password,telephone/手机号、 position/职位、unit/单位")
public ResponseVO createProjectJudge(@RequestBody ProjectJudgeDO projectJudgeDO) {
projectJudgeService.createProjectJudge(projectJudgeDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/updateProjectJudge")
@ApiOperation("中心端 ---编辑评委:id/ID、username/姓名、accountName,password,telephone/手机号、 position/职位、unit/单位, status/状态(1:启用,0:禁用)")
public ResponseVO updateProjectJudge(@RequestBody ProjectJudgeDO projectJudgeDO) {
projectJudgeService.updateProjectJudge(projectJudgeDO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/delete")
@ApiOperation("中心端 ---删除评委:id/ID")
public ResponseVO delete(@RequestBody ProjectJudgeDO projectJudgeDO) {
projectJudgeService.removeById(projectJudgeDO.getId());
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/projectJudgesAssigned")
@ApiOperation("中心端 ---已分配项目评委列表: matchId/赛事ID、projectGroup/组别、projectSchedule/进度")
public ResponseVO projectJudgesAssigned(@RequestBody ProjectJudgePageDTO projectJudgePageDTO) {
return ResponseData.generateCreatedResponse(0, projectJudgeService.projectJudgesAssigned(projectJudgePageDTO));
}
@PostMapping(value = "/downloadJudgeTemplate")
@ApiOperation("中心端 ---下载导入评委模板")
public ResponseVO downloadJudgeTemplate() {
projectJudgeService.downloadTemplate();
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/importJudge")
@ApiOperation("中心端 ---导入评委:file/文件(数据格式:Form-Data)")
public ResponseVO importJudge(MultipartFile file) {
projectJudgeService.importJudge(file);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/exportProjectJudge")
@ApiOperation("中心端 ---导出评委")
public void exportProjectJudge() {
projectJudgeService.exportProjectJudge();
}
}
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.common.constant.Platform;
import com.subsidy.common.interceptor.LoginRequired;
import com.subsidy.dto.review.CancelReviewDTO;
import com.subsidy.dto.review.ProjectReviewDTO;
import com.subsidy.dto.review.SetReviewDTO;
import com.subsidy.service.ProjectReviewService;
import com.subsidy.vo.review.SendNoticeVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 项目评审 前端控制器
* </p>
*
* @author DengMin
* @since 2021-05-18
*/
@RestController
@Api(tags = "项目评审")
@RequestMapping("/projectReview")
public class ProjectReviewController {
@Autowired
private ProjectReviewService projectReviewService;
@PostMapping(value = "/setReview")
@ApiOperation("中心端 ---分配评审:[{projectId}]/项目ID、[{judgeId}]/评委ID、smsMessage/是否发送短信通知(0:不发送,1:发送)")
public ResponseVO setReview(@RequestBody SetReviewDTO setReviewDTO) {
projectReviewService.setReview(setReviewDTO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/sendNotice")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 发送通知评审:id/评委ID, matchId/赛事ID")
public ResponseVO sendNotice(@RequestBody SendNoticeVO sendNoticeVO) {
projectReviewService.sendNotice(sendNoticeVO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/cancelReview")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 撤销分配:projectId/项目ID、[{judgeId}]/评委ID、smsMessage/是否发送短信通知(0:不发送,1:发送)")
public ResponseVO cancelReview(@RequestBody CancelReviewDTO cancelReviewVO) {
projectReviewService.cancelReview(cancelReviewVO);
return ResponseData.generateCreatedResponse(0);
}
@PostMapping(value = "/getProjectReview")
@LoginRequired({Platform.center})
@ApiOperation("中心端 --- 已分配项目评审员:projectId/项目ID")
public ResponseVO getProjectReview(@RequestBody ProjectReviewDTO projectReviewDTO) {
return ResponseData.generateCreatedResponse(0, projectReviewService.getProjectReview(projectReviewDTO));
}
}
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.common.constant.Platform;
import com.subsidy.common.interceptor.LoginRequired;
import com.subsidy.dto.period.ProjectReviewPeriodDTO;
import com.subsidy.model.ProjectReviewPeriodDO;
import com.subsidy.service.ProjectReviewPeriodService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 评审时段 前端控制器
* </p>
*
* @author DengMin
* @since 2021-06-10
*/
@RestController
@Api(tags = "评审时段")
@RequestMapping("/projectReviewPeriod")
public class ProjectReviewPeriodController {
@Autowired
private ProjectReviewPeriodService projectReviewPeriodService;
@PostMapping(value = "/getProjectReviewPeriod")
@ApiOperation("中心端(种子赛道、职教赛道) --- 查询评审时间:matchId/赛事年份ID、projectGroup/项目组别(科技创新组、红色文创组、高职、中职)、projectSchedule/项目进度(市级初赛、市级复赛、市级决赛)")
public ResponseVO getProjectReviewPeriod(@RequestBody ProjectReviewPeriodDTO projectReviewPeriodDTO) {
return ResponseData.generateCreatedResponse(0, projectReviewPeriodService.getProjectReviewPeriod(projectReviewPeriodDTO));
}
@PostMapping(value = "/updateProjectReviewPeriod")
@ApiOperation("中心端 --- 修改评审时间:id/ID、matchId/赛事ID、projectGroup/项目组别、projectSchedule/项目进度、startTime/开始时间、endTime/结束时间")
public ResponseVO updateProjectReviewPeriod(@RequestBody ProjectReviewPeriodDO projectReviewPeriodDO) {
projectReviewPeriodService.updateProjectReviewPeriod(projectReviewPeriodDO);
return ResponseData.generateCreatedResponse(0);
}
}
...@@ -4,6 +4,7 @@ package com.subsidy.controller; ...@@ -4,6 +4,7 @@ package com.subsidy.controller;
import com.subsidy.common.ResponseData; import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO; import com.subsidy.common.ResponseVO;
import com.subsidy.model.AdministerDO; import com.subsidy.model.AdministerDO;
import com.subsidy.model.SmsVerifyCodeDO;
import com.subsidy.service.SmsVerifyCodeService; import com.subsidy.service.SmsVerifyCodeService;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -36,4 +37,11 @@ public class SmsVerifyCodeController { ...@@ -36,4 +37,11 @@ public class SmsVerifyCodeController {
smsVerifyCodeService.sendAdministerLoginCode(administerDO); smsVerifyCodeService.sendAdministerLoginCode(administerDO);
return ResponseData.generateCreatedResponse(0); return ResponseData.generateCreatedResponse(0);
} }
@PostMapping(value = "/sendJudgeLoginCode")
@ApiOperation("评审端 ---登陆验证码:telephone/手机号")
public ResponseVO sendJudgeLoginCode(@RequestBody SmsVerifyCodeDO smsVerifyCodeDO) {
smsVerifyCodeService.sendJudgeLoginCode(smsVerifyCodeDO);
return ResponseData.generateCreatedResponse(0);
}
} }
package com.subsidy.controller;
import com.subsidy.common.ResponseData;
import com.subsidy.common.ResponseVO;
import com.subsidy.model.TimeTableDO;
import com.subsidy.service.TimeTableService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
/**
* <p>
* 前端控制器
* </p>
*
* @author Tuyp
* @since 2025-10-28
*/
@RestController
@Api(tags = "时间表")
@RequestMapping("/timeTable")
public class TimeTableController {
@Autowired
TimeTableService timeTableService;
@PostMapping("queryTimeTables")
@ApiOperation("查询时间表 matchId projectId 有值的话说明已经被预约过了 ")
public ResponseVO queryTimeTables(@RequestBody TimeTableDO timeTableDO){
return ResponseData.generateCreatedResponse(0,timeTableService.queryTimeTables(timeTableDO));
}
@PostMapping("updateTimeByProjectId")
@ApiOperation("修改某项目的预约时间 projectId id:选择的时间表的id ")
public ResponseVO updateTimeByProjectId(@RequestBody TimeTableDO timeTableDO){
return ResponseData.generateCreatedResponse(0,timeTableService.updateTimeByProjectId(timeTableDO));
}
@PostMapping("queryTablesDetail")
@ApiOperation("中心端查看每个时间段预约详情 matchId ")
public ResponseVO queryTablesDetail(@RequestBody TimeTableDO timeTableDO){
return ResponseData.generateCreatedResponse(0,timeTableService.queryTablesDetail(timeTableDO));
}
@PostMapping("exportQueryTablesDetail")
@ApiOperation("中心端查看每个时间段预约详情 matchId ")
public void exportQueryTablesDetail(@RequestBody TimeTableDO timeTableDO){
timeTableService.exportQueryTablesDetail(timeTableDO);
}
@PostMapping("addTimeTable")
@ApiOperation("添加时间表 matchId selectTime")
public ResponseVO addTimeTable(@RequestBody TimeTableDO timeTableDO){
return ResponseData.generateCreatedResponse(0,timeTableService.addTimeTable(timeTableDO));
}
@PostMapping("deleteTimeTableById")
@ApiOperation("删除时间 id")
public ResponseVO deleteTimeTableById(@RequestBody TimeTableDO timeTableDO){
return ResponseData.generateCreatedResponse(0,timeTableService.deleteTimeTableById(timeTableDO));
}
@PostMapping("rollbackTime")
@ApiOperation("撤销时间id ")
public ResponseVO rollbackTime(@RequestBody TimeTableDO timeTableDO){
return ResponseData.generateCreatedResponse(0,timeTableService.rollbackTime(timeTableDO));
}
}
package com.subsidy.dto.group;
import lombok.Data;
import java.util.List;
@Data
public class AddProjectToSceneDTO {
private List<Long> projectIds;
private Long groupId;
private Long sceneId;
}
package com.subsidy.dto.group;
import lombok.Data;
@Data
public class AllGroupItemsDTO {
private Long sceneId;
private String projectName;
private String college;
private Long groupId;
private Integer pageSize;
private Integer pageNum;
}
package com.subsidy.dto.group;
import lombok.Data;
@Data
public class CollegeProjectsDTO {
private Long matchId;
private Long sceneId;
private String college;
private Long groupId;
private Integer pageSize;
private Integer pageNum;
private String projectProgress;
private String projectSchedule;
}
package com.subsidy.dto.group;
import lombok.Data;
@Data
public class GroupScoresDTO {
private Long sceneId;
private String projectName;
private Long groupId;
}
package com.subsidy.dto.group;
import lombok.Data;
import java.util.List;
@Data
public class JudgeScoreScreenDTO {
private Long groupId;
private List<Integer> groupNums;
}
package com.subsidy.dto.group;
import lombok.Data;
@Data
public class MatchJudgesDTO {
private Long sceneId;
private Long matchId;
private String userName;
private String expectorType;
private String roleType;
private Integer pageSize;
private Integer pageNum;
}
package com.subsidy.dto.judge;
import lombok.Data;
import java.util.List;
@Data
public class AddJudgeDTO {
private List<Long> judgeIds;
private Long sceneId;
/**
* 专家类型
*/
private String expectorType;
/**
* 角色类型
*/
private String roleType;
/**
* 评委id
*/
private List<Long> ids;
private List<Long> groupIds;
private Long id;
}
package com.subsidy.dto.judge;
import lombok.Data;
@Data
public class ProjectJudgePageDTO {
private Long matchId;
private String projectGroup;
private String projectSchedule;
private String username;
private Integer status;
private Integer pageNo;
private Integer pageSize;
}
package com.subsidy.dto.match;
import lombok.Data;
@Data
public class SelectListPageDTO {
private Integer pageNo;
private Integer pageSize;
}
package com.subsidy.dto.period;
import lombok.Data;
@Data
public class ProjectReviewPeriodDTO {
private Long matchId;
private String projectGroup;
private String projectSchedule;
private String projectProgress;
}
package com.subsidy.dto.project;
import lombok.Data;
@Data
public class EditStatusDTO {
private Long id;
private Long[] ids;
private Integer editStatus;
private Long matchId;
private String projectGroup;
private String projectSchedule;
}
package com.subsidy.dto.project;
import com.subsidy.util.excel.ExcelColumn;
import lombok.Data;
@Data
public class ExportConsultListVO {
@ExcelColumn(col = 1, value = "届数")
private String matchName;
@ExcelColumn(col = 2, value = "课程名称")
private String projectName;
@ExcelColumn(col = 3, value = "组别")
private String projectProgress;
@ExcelColumn(col = 4, value = "参赛教师")
private String name;
@ExcelColumn(col = 5, value = "院校")
private String collegeName;
@ExcelColumn(col = 6, value = "职位")
private String position;
@ExcelColumn(col = 7, value = "职称")
private String title;
@ExcelColumn(col = 8, value = "学历")
private String education;
@ExcelColumn(col = 9, value = "专业/专长")
private String major;
@ExcelColumn(col = 10, value = "手机号")
private String telephone;
@ExcelColumn(col = 11, value = "邮箱")
private String email;
// @ExcelColumn(col = 11, value = "课程团队")
// private String teamMembers;
@ExcelColumn(col = 12, value = "项目阶段")
private String projectSchedule;
@ExcelColumn(col = 13, value = "近两年从事咨询辅导情况")
private String twoYearsConsult;
@ExcelColumn(col = 14, value = "个人所获奖励成果")
private String relateResult;
@ExcelColumn(col = 14, value = "来询者问题主诉与背景")
private String backgrouds;
@ExcelColumn(col = 15, value = "对来询者问题的分析")
private String analysis;
@ExcelColumn(col = 16, value = "咨询的过程")
private String consultProcess;
@ExcelColumn(col = 17, value = "案例反思")
private String caseReflect;
}
...@@ -36,41 +36,44 @@ public class ExportProjectDTO { ...@@ -36,41 +36,44 @@ public class ExportProjectDTO {
@ExcelColumn(col = 10, value = "手机号") @ExcelColumn(col = 10, value = "手机号")
private String telephone; private String telephone;
@ExcelColumn(col = 11, value = "课程团队") @ExcelColumn(col = 11, value = "邮箱")
private String email;
@ExcelColumn(col = 12, value = "课程团队")
private String teamMembers; private String teamMembers;
@ExcelColumn(col = 12, value = "项目阶段") @ExcelColumn(col = 13, value = "项目阶段")
private String projectSchedule; private String projectSchedule;
@ExcelColumn(col = 13, value = "课程编码(教务系统中的编码)") @ExcelColumn(col = 14, value = "课程编码(教务系统中的编码)")
private String courseCode; private String courseCode;
@ExcelColumn(col = 14, value = "课程性质") @ExcelColumn(col = 15, value = "课程性质")
private String courseType; private String courseType;
@ExcelColumn(col = 15, value = "开课年级") @ExcelColumn(col = 16, value = "开课年级")
private String grade; private String grade;
@ExcelColumn(col = 16, value = "课程总学时") @ExcelColumn(col = 17, value = "课程总学时")
private Integer courseHour; private String courseHour;
@ExcelColumn(col = 17, value = "理论课学时") // @ExcelColumn(col = 17, value = "理论课学时")
private Integer theoryHour; // private Integer theoryHour;
@ExcelColumn(col = 18, value = "实践学时") @ExcelColumn(col = 18, value = "实践学时")
private Integer practiseHour; private String practiseHour;
@ExcelColumn(col = 19, value = "学分") @ExcelColumn(col = 19, value = "学分")
private Integer score; private String score;
@ExcelColumn(col = 20, value = "授课年数") @ExcelColumn(col = 20, value = "授课年数")
private String years; private String teachHours;
@ExcelColumn(col = 21, value = "最近两轮开课时间") @ExcelColumn(col = 21, value = "最近两轮开课时间")
private String dates; private String dates;
@ExcelColumn(col = 22, value = "最近两轮学生总人数") @ExcelColumn(col = 22, value = "最近两轮学生总人数")
private Integer studentTotalNum; private String studentTotalNum;
@ExcelColumn(col = 23, value = "课程概述") @ExcelColumn(col = 23, value = "课程概述")
private String courseDesc; private String courseDesc;
......
package com.subsidy.dto.project;
import com.subsidy.util.excel.ExcelColumn;
import lombok.Data;
@Data
public class ExportTeachListVO {
@ExcelColumn(col = 1, value = "届数")
private String matchName;
@ExcelColumn(col = 2, value = "课程名称")
private String projectName;
@ExcelColumn(col = 3, value = "组别")
private String projectProgress;
@ExcelColumn(col = 4, value = "参赛教师")
private String name;
@ExcelColumn(col = 5, value = "院校")
private String collegeName;
@ExcelColumn(col = 6, value = "职位")
private String position;
@ExcelColumn(col = 7, value = "职称")
private String title;
@ExcelColumn(col = 8, value = "学历")
private String education;
@ExcelColumn(col = 9, value = "专业/专长")
private String major;
@ExcelColumn(col = 10, value = "手机号")
private String telephone;
@ExcelColumn(col = 11, value = "邮箱")
private String email;
// @ExcelColumn(col = 11, value = "课程团队")
// private String teamMembers;
@ExcelColumn(col = 12, value = "项目阶段")
private String projectSchedule;
@ExcelColumn(col = 13, value = "课程编码(教务系统中的编码)")
private String courseCode;
@ExcelColumn(col = 14, value = "课程性质")
private String courseType;
@ExcelColumn(col = 15, value = "开课年级")
private String grade;
@ExcelColumn(col = 16, value = "课程总学时")
private String courseHour;
// @ExcelColumn(col = 17, value = "理论课学时")
// private Integer theoryHour;
@ExcelColumn(col = 17, value = "实践学时")
private String practiseHour;
@ExcelColumn(col = 18, value = "学分")
private String score;
@ExcelColumn(col = 19, value = "授课年数")
private String teachHours;
@ExcelColumn(col = 20, value = "最近两轮开课时间")
private String dates;
@ExcelColumn(col = 21, value = "最近两轮学生总人数")
private String studentTotalNum;
@ExcelColumn(col = 22, value = "课程概述")
private String courseDesc;
@ExcelColumn(col = 23, value = "参赛教学设计")
private String teachComment;
}
package com.subsidy.dto.project;
import lombok.Data;
@Data
public class GetVocationalProjectDetailDTO {
private Long userId;
private Long id;
}
package com.subsidy.dto.project;
import lombok.Data;
@Data
public class MentorDTO {
private Long id;
/**
* 姓名
*/
private String teacherName;
/**
* 工作单位
*/
private String company;
/**
* 职称
*/
private String positionTitle;
/**
* 职务
*/
private String position;
/**
* 手机号
*/
private String telephone;
/**
* 身份证号
*/
private String idCard;
}
package com.subsidy.dto.project;
import com.subsidy.vo.ExcelFieldVO;
import lombok.Data;
import java.util.List;
@Data
public class ReviewListDTO {
private List<Long> id;
private List<ExcelFieldVO> fields;
private Long matchId;
private String projectGroup;
private String projectName;
private String projectReview;
private String projectStatus;
private Integer pageNo;
private Integer pageSize;
private Integer type;
private String projectAssigned;
private String projectSchedule;
private String projectProgress;
private String projectTrack;
}
package com.subsidy.dto.project;
import lombok.Data;
@Data
public class ReviewVocationalNumDTO {
private Long userId;
private Long matchId;
private String projectGroup;
private String projectStatus;
private Long projectJudgeId;
private String projectSchedule;
}
package com.subsidy.dto.project;
import lombok.Data;
@Data
public class TeamMemberDTO {
private Long id;
/**
* 姓名
*/
private String teamName;
/**
* 就读学校
*/
private String school;
/**
* 年级
*/
private String grade;
/**
* 就读专业
*/
private String major;
/**
* 性别
*/
private String sex;
/**
* 身份证号
*/
private String idCard;
/**
* 学籍号
*/
private String studentNo;
/**
* 手机号
*/
private String teamTelephone;
}
...@@ -15,6 +15,14 @@ public class UpdateProjectDTO extends ProjectDO { ...@@ -15,6 +15,14 @@ public class UpdateProjectDTO extends ProjectDO {
*/ */
private List<ProjectMembersDO> projectMembersDOS; private List<ProjectMembersDO> projectMembersDOS;
private String backgrouds;
private String analysis;
private String consultProcess;
private String caseReflect;
private String innovativePoint;
} }
package com.subsidy.dto.project; package com.subsidy.dto.project;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.subsidy.model.ProjectDO;
import lombok.Data; import lombok.Data;
@Data @Data
public class UploadVodsDTO { public class UploadVodsDTO extends ProjectDO {
private Long id;
/**
* 科目id
*/
@TableField("subject")
private String subjectId;
/**
* 视频名称
*/
private String vodName;
/**
* 视频地址
*/
private String vodUrl;
/**
* 课型
*/
private String vodType;
/**
* 视频介绍
*/
private String vodIntro;
/**
* 视频时长
*/
private Integer vodLength;
/** /**
* 视频在腾讯云上的code * 视频在腾讯云上的code
*/ */
private String vodCode; private String code;
/**
* 视频提供者
*/
@TableField("teacher_id")
private Long administerId;
/**
* 封面
*/
private String coverPage;
/**
* 0:待审核 1:已审核
*/
private String status;
/**
* 审核人
*/
private Integer checkId;
/**
* 分享状态
*/
private String shareStatus;
/**
* 审核状态 1:审核通过 3:未通过 2: 审核中
*/
private String checkStatus;
/**
* 通过/不通过原因
*/
private String reason;
} }
package com.subsidy.dto.project;
import lombok.Data;
@Data
public class VocationalProjectNum {
// /**
// * 中职复赛项目数量
// */
// private Long vocRematchNum;
// /**
// * 中职决赛项目数量
// */
// private Long vocFinalNum;
/**
* 高职复赛项目数量
*/
private Long secRematchNum;
/**
* 高职决赛项目数量
*/
private Long secFinalNum;
/**
* 高职初赛项目数量
*/
private Long secPreliminaryNUm;
/**
* 已评审项目数量
*/
private Long reviewedNum;
/**
* 待评审项目数量
*/
private Long notReviewedNum;
}
package com.subsidy.dto.projectJudge;
import com.subsidy.util.excel.ExcelColumn;
import lombok.Data;
@Data
public class ImportJudge {
@ExcelColumn(col = 1, value = "评审姓名")
private String username;
// @ExcelColumn(col = 4, value = "手机号")
private String telephone;
// @ExcelColumn(col = 5, value = "身份证号")
private String idCard;
// @ExcelColumn(col = 6, value = "开户银行名称")
private String bankName;
// @ExcelColumn(col = 7, value = "银行卡号")
private String bankCard;
@ExcelColumn(col = 2, value = "账号")
private String accountName;
@ExcelColumn(col = 3, value = "密码")
private String password;
@ExcelColumn(col = 4, value = "单位")
private String unit;
@ExcelColumn(col = 5, value = "职位/职称")
private String position;
}
package com.subsidy.dto.review;
import lombok.Data;
import java.util.List;
@Data
public class CancelReviewDTO {
private Long projectId;
private List<Long> judgeId;
private Integer smsMessage;
}
package com.subsidy.dto.review;
import lombok.Data;
@Data
public class ProjectReviewDTO {
private Long projectId;
}
package com.subsidy.dto.review;
import lombok.Data;
@Data
public class ProjectReviewPageDTO {
private Long userId;
private Long matchId;
private String projectName;
private String projectGroup;
private String projectStatus;
private String projectSchedule;
private String projectProgress;
private String status;
private Integer pageNo;
private Integer pageSize;
}
package com.subsidy.dto.review;
import lombok.Data;
import java.util.List;
@Data
public class ProjectReviewScoreDTO {
private Long userId;
private List<Long> ids;
private List<ReviewScoreDTO> reviewScore;
private Long id;
private Double score;
private String reviewOpinion;
}
package com.subsidy.dto.review;
import lombok.Data;
@Data
public class ReviewScoreDTO {
private Long id;
private Double score;
private String reviewOpinion;
}
package com.subsidy.dto.review;
import lombok.Data;
import java.util.List;
@Data
public class SetReviewDTO {
private List<Long> projectId;
private List<Long> judgeId;
private Integer smsMessage;
private Long matchId;
}
package com.subsidy.dto.review;
import lombok.Data;
import java.util.List;
@Data
public class SubmittedDTO {
private List<Long> id;
}
package com.subsidy.mapper; package com.subsidy.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.model.CollegesDictDO; import com.subsidy.model.CollegesDictDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.model.ProjectDO; import com.subsidy.model.ProjectDO;
import com.subsidy.vo.college.GetCollegeInfoVO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
...@@ -21,5 +23,6 @@ public interface CollegesDictMapper extends BaseMapper<CollegesDictDO> { ...@@ -21,5 +23,6 @@ public interface CollegesDictMapper extends BaseMapper<CollegesDictDO> {
List<ProjectDO> getPreliminaryProjectList(Long matchId, String projectSchedule,Long collegeId); List<ProjectDO> getPreliminaryProjectList(Long matchId, String projectSchedule,Long collegeId);
IPage<GetCollegeInfoVO> getCollegeInfo(IPage iPage,String name);
} }
package com.subsidy.mapper;
import com.subsidy.model.DrawLotGroupDictDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.vo.group.GroupJudgesVO;
import com.subsidy.vo.group.GroupNumsVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Repository
public interface DrawLotGroupDictMapper extends BaseMapper<DrawLotGroupDictDO> {
/**
* 组别下的成员
*/
List<GroupJudgesVO> groupJudges(Long groupId, String roleType);
/**
* 查看组别下的编号
*/
List<GroupNumsVO> groupNums(Long groupId);
}
package com.subsidy.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.model.DrawLotsGroupItemsDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.vo.group.AllGroupItemsVO;
import com.subsidy.vo.group.CollegeProjectsVO;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Repository
public interface DrawLotsGroupItemsMapper extends BaseMapper<DrawLotsGroupItemsDO> {
IPage<AllGroupItemsVO> allGroupItems(IPage page, Long sceneId, String projectName, String college,Long groupId);
/**
* 还没有坑位的项目
*/
IPage<CollegeProjectsVO> collegeProjects(IPage iPage, Long matchId,Long groupId, String college, String projectSchedule, String projectProgress);
}
package com.subsidy.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.model.DrawLotGroupDictDO;
import com.subsidy.model.DrawLotsGroupJudgesDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.model.DrawLotsScenesDO;
import com.subsidy.vo.group.MatchJudgesVO;
import com.subsidy.vo.group.ScoreScreenVO;
import com.subsidy.vo.group.SelectJudgesVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* 赛组评委表 Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Repository
public interface DrawLotsGroupJudgesMapper extends BaseMapper<DrawLotsGroupJudgesDO> {
IPage<MatchJudgesVO> matchJudges(IPage page, Long sceneId, String userName, String expectorType, String roleType);
/**
* 选择评委
*/
IPage<SelectJudgesVO> selectJudges(IPage page, Long sceneId, String userName);
List<ScoreScreenVO> judgeScoreScreen(Long groupId, Integer groupNum);
/**
* 查看老师所在的组别
*/
List<DrawLotsScenesDO> judgeScenes(Long judgeId);
/**
* 查看老师所在的组别
*/
List<DrawLotGroupDictDO> judgeGroups(Long judgeId,Long sceneId);
void clearGroup(Long judgeId);
void setGroup(Long judgeId,Long groupId);
Integer judgeCnt(Long sceneId);
}
package com.subsidy.mapper;
import com.subsidy.model.DrawLotsJudgeNumDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Repository
public interface DrawLotsJudgeNumMapper extends BaseMapper<DrawLotsJudgeNumDO> {
}
package com.subsidy.mapper;
import com.subsidy.model.DrawLotsScenesDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.vo.group.AllMatchScenesVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Repository
public interface DrawLotsScenesMapper extends BaseMapper<DrawLotsScenesDO> {
/**
* 某赛道所有现场
*/
List<AllMatchScenesVO> allMatchScenes(Long matchId, String openStatus);
}
package com.subsidy.mapper;
import com.subsidy.model.DrawLotsScoresDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.vo.group.GroupJudgeScoresVO;
import com.subsidy.vo.group.GroupRankVO;
import com.subsidy.vo.group.GroupScoresVO;
import com.subsidy.vo.group.QueryItemsVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Repository
public interface DrawLotsScoresMapper extends BaseMapper<DrawLotsScoresDO> {
/**
* 评分--项目列表
*/
List<GroupScoresVO> groupScores(Long sceneId, String projectName, Long groupId);
/**
* 评分--列表里每个角色的评分详情
*/
List<GroupJudgeScoresVO> groupJudgeScores(Long groupId, Long projectId);
/**
* 某评委的评分列表
*/
List<QueryItemsVO> queryItems(Long judgeId,Long groupId);
/**
* 排序
*/
List<GroupRankVO> groupRank(Long groupId);
}
package com.subsidy.mapper; package com.subsidy.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.subsidy.model.MatchDictDO; import com.subsidy.model.MatchDictDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.vo.match.MatchDictVO;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
...@@ -28,4 +31,7 @@ public interface MatchDictMapper extends BaseMapper<MatchDictDO> { ...@@ -28,4 +31,7 @@ public interface MatchDictMapper extends BaseMapper<MatchDictDO> {
* 开启赛事 * 开启赛事
*/ */
void openMatch(Long matchId); void openMatch(Long matchId);
IPage<MatchDictVO> getSeedTrackMatchPage(Page page, String matchType);
} }
package com.subsidy.mapper;
import com.subsidy.model.ProjectConsultDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-04-30
*/
@Repository
public interface ProjectConsultMapper extends BaseMapper<ProjectConsultDO> {
void updateConsult(Long projectId,String backgrouds,String analysis,String consultProcess,String caseReflect);
}
package com.subsidy.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.subsidy.model.ProjectJudgeDO;
import com.subsidy.vo.judge.ProjectJudgePageVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
/**
* <p>
* 项目评审员 Mapper 接口
* </p>
*
* @author DengMin
* @since 2021-05-28
*/
@Repository
public interface ProjectJudgeMapper extends BaseMapper<ProjectJudgeDO> {
IPage<ProjectJudgePageVO> getProjectJudgePage(Page page, String username, Integer status);
IPage<ProjectJudgePageVO> projectJudgesAssigned(Page page, @Param("matchId") Long matchId, @Param("projectGroup") String projectGroup, @Param("projectSchedule") String projectSchedule);
Integer projectCount(Long judgeId);
}
...@@ -6,7 +6,9 @@ import com.subsidy.model.MatchDictDO; ...@@ -6,7 +6,9 @@ import com.subsidy.model.MatchDictDO;
import com.subsidy.model.ProjectDO; import com.subsidy.model.ProjectDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.vo.college.MatchCollegeVodsVO; import com.subsidy.vo.college.MatchCollegeVodsVO;
import com.subsidy.vo.project.ProjectPageVO;
import com.subsidy.vo.project.RecentVodVO; import com.subsidy.vo.project.RecentVodVO;
import com.subsidy.vo.project.ReviewListVO;
import com.subsidy.vo.project.SeedTrackProjectPageVO; import com.subsidy.vo.project.SeedTrackProjectPageVO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
...@@ -39,4 +41,15 @@ public interface ProjectMapper extends BaseMapper<ProjectDO> { ...@@ -39,4 +41,15 @@ public interface ProjectMapper extends BaseMapper<ProjectDO> {
List<ProjectDO> getSeedTrackProjectList(Long collegeId,Long matchId, String projectGroup, @Param("projectProgress")String projectProgress,String projectTrack); List<ProjectDO> getSeedTrackProjectList(Long collegeId,Long matchId, String projectGroup, @Param("projectProgress")String projectProgress,String projectTrack);
List<RecentVodVO> recentVod(Long matchId,Long collegeId); List<RecentVodVO> recentVod(Long matchId,Long collegeId);
IPage<ReviewListVO> getReviewList(Page page, String projectName, String projectGroup, String projectReview, Long matchId, String projectStatus, String projectAssigned, String projectProgress,String projectTrack,String projectSchedule);
List<ProjectDO> getProjectReviewList(Long id, Long matchId,String projectProgress);
IPage<ProjectPageVO> getProjectReviewPage(Page page, Long judgeId, Long matchId, String projectName, String projectStatus, String projectReview, String projectGroup, String projectProgress,String projectSchedule);
void clearTimeId(Long id);
String projectUserName(Long projectId);
} }
package com.subsidy.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.model.ProjectReviewDO;
import com.subsidy.vo.judge.ProjectReviewVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* 项目评审 Mapper 接口
* </p>
*
* @author DengMin
* @since 2021-05-18
*/
@Repository
public interface ProjectReviewMapper extends BaseMapper<ProjectReviewDO> {
List<ProjectReviewVO> getList(String projectSchedule, Long projectId);
Integer selectCountByMatchId(Long judgeId, Long matchId);
Integer selectNotReviewCount(Long judgeId);
}
package com.subsidy.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.model.ProjectReviewPeriodDO;
import org.springframework.stereotype.Repository;
/**
* <p>
* 评审时段 Mapper 接口
* </p>
*
* @author DengMin
* @since 2021-06-10
*/
@Repository
public interface ProjectReviewPeriodMapper extends BaseMapper<ProjectReviewPeriodDO> {
}
package com.subsidy.mapper;
import com.subsidy.model.TimeTableDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.subsidy.vo.timetable.QueryTablesDetailVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author Tuyp
* @since 2025-10-28
*/
@Repository
public interface TimeTableMapper extends BaseMapper<TimeTableDO> {
void clearProjectId(Long id);
List<QueryTablesDetailVO> queryTablesDetail(Long matchId);
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lot_group_dict")
public class DrawLotGroupDictDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 现场id
*/
private Long sceneId;
/**
* 赛组名称
*/
private String groupName;
/**
* 赛位数量
*/
private String projectCnt;
/**
* 行业专家数量
*/
private Integer fieldCnt;
/**
* 教学专家数量
*/
private Integer teachCnt;
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_group_items")
public class DrawLotsGroupItemsDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 现场id
*/
private Long sceneId;
/**
* 项目id
*/
private Long projectId;
/**
* 赛组id
*/
private Long groupId;
/**
* 编号
*/
private Integer groupNum;
/**
* 决赛顺序
*/
private Integer orderNo;
/**
* 总分
*/
private String totalScore;
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 赛组评委表
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_group_judges")
public class DrawLotsGroupJudgesDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 赛事id
*/
private Long matchId;
/**
* 赛事年份
*/
private String matchDate;
/**
* 现场id
*/
private Long sceneId;
/**
* 组别id
*/
private Long groupId;
/**
* 编号
*/
private String groupNum;
/**
* 专家类型
*/
private String expectorType;
/**
* 评委id
*/
private Long judgeId;
/**
* 角色类型
*/
private String roleType;
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_judge_num")
public class DrawLotsJudgeNumDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private Long groupId;
private Integer groupNum;
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_scenes")
public class DrawLotsScenesDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 赛事id
*/
private Long matchId;
private String sceneName;
/**
* 现场时间
*/
private String sceneDate;
private String openStatus;
/**
* 已刷新
*/
private String rankStatus;
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("draw_lots_scores")
public class DrawLotsScoresDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private Long sceneId;
private Long groupId;
private Long judgeId;
private Long projectId;
private String score;
/**
* 1提交 0 暂存
*/
private String submitStatus;
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author Tuyp
* @since 2025-04-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("project_consult")
public class ProjectConsultDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private Long projectId;
private String backgrouds;
private String analysis;
private String consultProcess;
private String caseReflect;
}
...@@ -31,6 +31,8 @@ public class ProjectDO extends BaseModel { ...@@ -31,6 +31,8 @@ public class ProjectDO extends BaseModel {
private Long teacherId; private Long teacherId;
private Long timeId;
private String projectTrack; private String projectTrack;
private Long collegeId; private Long collegeId;
...@@ -78,7 +80,7 @@ public class ProjectDO extends BaseModel { ...@@ -78,7 +80,7 @@ public class ProjectDO extends BaseModel {
private BigDecimal courseHour; private BigDecimal courseHour;
/** /**
* 理论学时【弃用】 * 理论学时
*/ */
private String theoryHour; private String theoryHour;
...@@ -103,6 +105,11 @@ public class ProjectDO extends BaseModel { ...@@ -103,6 +105,11 @@ public class ProjectDO extends BaseModel {
/** /**
* 最近学生总人数1 * 最近学生总人数1
*/ */
private Integer studentTotalNum;
/**
* 最近学生总人数1
*/
private Integer studentTotalNum1; private Integer studentTotalNum1;
/** /**
...@@ -220,6 +227,8 @@ public class ProjectDO extends BaseModel { ...@@ -220,6 +227,8 @@ public class ProjectDO extends BaseModel {
*/ */
private String supportFile; private String supportFile;
private String twoYearsConsult;
/** /**
* 相关成果 * 相关成果
*/ */
...@@ -240,4 +249,6 @@ public class ProjectDO extends BaseModel { ...@@ -240,4 +249,6 @@ public class ProjectDO extends BaseModel {
*/ */
private String courseUrl; private String courseUrl;
private Integer editStatus;
} }
package com.subsidy.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.subsidy.util.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 项目评审员
* </p>
*
* @author DengMin
* @since 2021-05-28
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("project_judge")
public class ProjectJudgeDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 姓名
*/
private String username;
private String accountName;
private String password;
/**
* 手机号
*/
private String telephone;
/**
* 职务
*/
private String position;
/**
* 单位
*/
private String unit;
/**
* 身份证号
*/
private String idCard;
/**
* 开户行
*/
private String bankName;
/**
* 银行卡号
*/
private String bankCard;
/**
* 状态
*/
private Integer status;
private Integer passwordFree;
}
...@@ -93,5 +93,6 @@ public class ProjectMembersDO extends BaseModel { ...@@ -93,5 +93,6 @@ public class ProjectMembersDO extends BaseModel {
private String role; private String role;
private String innovativePoint;
} }
package com.subsidy.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.subsidy.util.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* <p>
* 项目评审
* </p>
*
* @author DengMin
* @since 2021-05-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("project_review")
public class ProjectReviewDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 项目ID
*/
private Long projectId;
/**
* 评委ID
*/
private Long judgeId;
/**
* 评审分数
*/
private Double reviewScore;
/**
* 评分
*/
private Double score;
/**
* 评审意见
*/
private String reviewOpinion;
/**
* 进度
*/
private String projectSchedule;
/**
* 评审时间
*/
private Date reviewTime;
/**
* 评审状态
*/
private String reviewStatus;
}
package com.subsidy.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.subsidy.util.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* <p>
* 评审时段
* </p>
*
* @author DengMin
* @since 2021-06-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("project_review_period")
public class ProjectReviewPeriodDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 赛事年份ID
*/
private Long matchId;
/**
* 项目组别
*/
private String projectGroup;
/**
* 项目进度
*/
private String projectSchedule;
/**
* 开始时间
*/
private Date startTime;
/**
* 结束时间
*/
private Date endTime;
}
package com.subsidy.model;
import com.subsidy.util.BaseModel;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
*
* </p>
*
* @author Tuyp
* @since 2025-10-28
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("time_table")
public class TimeTableDO extends BaseModel {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 赛事id
*/
private Long matchId;
/**
* 所选时间
*/
private String selectTime;
/**
* 项目id
*/
private Long projectId;
}
package com.subsidy.service; package com.subsidy.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.dto.college.GetCollegesListDTO;
import com.subsidy.dto.project.ProjectCollegeListDTO; import com.subsidy.dto.project.ProjectCollegeListDTO;
import com.subsidy.model.CollegesDictDO; import com.subsidy.model.CollegesDictDO;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.model.ProjectDO; import com.subsidy.model.ProjectDO;
import com.subsidy.vo.college.CollegesVO; import com.subsidy.vo.college.CollegesVO;
import com.subsidy.vo.college.GetCollegeInfoVO;
/** /**
* <p> * <p>
...@@ -16,6 +19,8 @@ import com.subsidy.vo.college.CollegesVO; ...@@ -16,6 +19,8 @@ import com.subsidy.vo.college.CollegesVO;
*/ */
public interface CollegesDictService extends IService<CollegesDictDO> { public interface CollegesDictService extends IService<CollegesDictDO> {
IPage<GetCollegeInfoVO> getCollegeInfo(GetCollegesListDTO getCollegesListDTO);
CollegesVO login(CollegesDictDO collegesDictDO); CollegesVO login(CollegesDictDO collegesDictDO);
void addContact(CollegesDictDO collegesDictDO); void addContact(CollegesDictDO collegesDictDO);
...@@ -26,6 +31,10 @@ public interface CollegesDictService extends IService<CollegesDictDO> { ...@@ -26,6 +31,10 @@ public interface CollegesDictService extends IService<CollegesDictDO> {
void exportProjectCollegeList(ProjectCollegeListDTO projectCollegeListDTO); void exportProjectCollegeList(ProjectCollegeListDTO projectCollegeListDTO);
void exportTeachList(ProjectCollegeListDTO projectCollegeListDTO);
void exportConsultList(ProjectCollegeListDTO projectCollegeListDTO);
void exportSchoolProjectSummary(ProjectDO projectDO); void exportSchoolProjectSummary(ProjectDO projectDO);
} }
package com.subsidy.service;
import com.subsidy.model.DrawLotGroupDictDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.vo.group.AllGroupsVO;
import com.subsidy.vo.group.SceneGroupsVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
public interface DrawLotGroupDictService extends IService<DrawLotGroupDictDO> {
List<AllGroupsVO> allGroups(DrawLotGroupDictDO drawLotGroupDictDO);
String addGroup(DrawLotGroupDictDO drawLotGroupDictDO);
String updateGroup(DrawLotGroupDictDO drawLotGroupDictDO);
String deleteGroup(DrawLotGroupDictDO drawLotGroupDictDO);
List<SceneGroupsVO> sceneGroups(DrawLotGroupDictDO drawLotGroupDictDO);
}
package com.subsidy.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.dto.group.AddProjectToSceneDTO;
import com.subsidy.dto.group.AllGroupItemsDTO;
import com.subsidy.dto.group.CollegeProjectsDTO;
import com.subsidy.model.DrawLotsGroupItemsDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.vo.group.AllGroupItemsVO;
import com.subsidy.vo.group.CollegeProjectsVO;
/**
* <p>
* 服务类
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
public interface DrawLotsGroupItemsService extends IService<DrawLotsGroupItemsDO> {
IPage<AllGroupItemsVO> allGroupItems(AllGroupItemsDTO allGroupItemsDTO);
String addProjectToScene(AddProjectToSceneDTO addProjectToSceneDTO);
String deleteGroupItem(DrawLotsGroupItemsDO drawLotsGroupItemsDO);
IPage<CollegeProjectsVO> collegeProjects(CollegeProjectsDTO collegeProjectsDTO);
}
package com.subsidy.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.dto.group.JudgeScoreScreenDTO;
import com.subsidy.dto.group.MatchJudgesDTO;
import com.subsidy.dto.judge.AddJudgeDTO;
import com.subsidy.model.DrawLotGroupDictDO;
import com.subsidy.model.DrawLotsGroupJudgesDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.model.DrawLotsScenesDO;
import com.subsidy.vo.group.JudgeScoreScreenVO;
import com.subsidy.vo.group.MatchJudgesVO;
import com.subsidy.vo.group.SelectJudgesVO;
import java.util.List;
/**
* <p>
* 赛组评委表 服务类
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
public interface DrawLotsGroupJudgesService extends IService<DrawLotsGroupJudgesDO> {
IPage<MatchJudgesVO> matchJudges(MatchJudgesDTO matchJudgesDTO);
IPage<SelectJudgesVO> selectJudges(MatchJudgesDTO matchJudgesDTO);
String removeJudge(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
String updateJudge(AddJudgeDTO addJudgeDTO);
String addJudge(AddJudgeDTO addJudgeDTO);
String assignJudge(AddJudgeDTO addJudgeDTO);
List<JudgeScoreScreenVO> judgeScoreScreen(JudgeScoreScreenDTO judgeScoreScreenDTO);
List<DrawLotsScenesDO> judgeScenes(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
List<DrawLotGroupDictDO> judgeGroups(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
}
package com.subsidy.service;
import com.subsidy.model.DrawLotsJudgeNumDO;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
public interface DrawLotsJudgeNumService extends IService<DrawLotsJudgeNumDO> {
}
package com.subsidy.service;
import com.subsidy.model.DrawLotsScenesDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.vo.group.AllMatchScenesVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
public interface DrawLotsScenesService extends IService<DrawLotsScenesDO> {
List<AllMatchScenesVO> allMatchScenes(DrawLotsScenesDO drawLotsScenesDO);
String addMatchScene(DrawLotsScenesDO drawLotsScenesDO);
String updateMatchScene(DrawLotsScenesDO drawLotsScenesDO);
String deleteMatchScene(DrawLotsScenesDO drawLotsScenesDO);
}
package com.subsidy.service;
import com.subsidy.dto.group.GroupScoresDTO;
import com.subsidy.model.DrawLotsGroupItemsDO;
import com.subsidy.model.DrawLotsGroupJudgesDO;
import com.subsidy.model.DrawLotsScoresDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.vo.group.GroupRankVO;
import com.subsidy.vo.group.GroupScoresVO;
import com.subsidy.vo.group.QueryItemsVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author Tuyp
* @since 2025-12-10
*/
public interface DrawLotsScoresService extends IService<DrawLotsScoresDO> {
List<GroupScoresVO> groupScores(GroupScoresDTO groupScoresDTO);
String submit(DrawLotsScoresDO drawLotsScoresDO);
List<QueryItemsVO> queryItems(DrawLotsGroupJudgesDO drawLotsGroupJudgesDO);
List<GroupRankVO> groupRank(DrawLotsGroupItemsDO drawLotsGroupItemsDO);
void exportGroupScores(GroupScoresDTO groupScoresDTO);
}
package com.subsidy.service; package com.subsidy.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.dto.match.SelectListPageDTO;
import com.subsidy.model.MatchDictDO; import com.subsidy.model.MatchDictDO;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
...@@ -28,4 +30,7 @@ public interface MatchDictService extends IService<MatchDictDO> { ...@@ -28,4 +30,7 @@ public interface MatchDictService extends IService<MatchDictDO> {
MatchDictDO openedMatch(); MatchDictDO openedMatch();
MatchDictDO openOneMatch(MatchDictDO matchDictDO); MatchDictDO openOneMatch(MatchDictDO matchDictDO);
IPage getVocationalPage(SelectListPageDTO selectListPageDTO);
} }
package com.subsidy.service;
import com.subsidy.model.ProjectConsultDO;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author Tuyp
* @since 2025-04-30
*/
public interface ProjectConsultService extends IService<ProjectConsultDO> {
}
package com.subsidy.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.dto.administer.LoginDTO;
import com.subsidy.dto.judge.ProjectJudgePageDTO;
import com.subsidy.model.ProjectJudgeDO;
import com.subsidy.vo.judge.JudgeInfoVO;
import com.subsidy.vo.judge.ProjectJudgePageVO;
import org.springframework.web.multipart.MultipartFile;
/**
* <p>
* 项目评审员 服务类
* </p>
*
* @author DengMin
* @since 2021-05-28
*/
public interface ProjectJudgeService extends IService<ProjectJudgeDO> {
IPage<ProjectJudgePageVO> getProjectJudgePage(ProjectJudgePageDTO projectJudgePageDTO);
void createProjectJudge(ProjectJudgeDO projectJudgeDO);
void updateProjectJudge(ProjectJudgeDO projectJudgeDO);
JudgeInfoVO login(LoginDTO loginDTO);
JudgeInfoVO passwordLogin(ProjectJudgeDO projectJudgeDO);
IPage<ProjectJudgePageVO> projectJudgesAssigned(ProjectJudgePageDTO projectJudgePageDTO);
void importJudge(MultipartFile file);
void downloadTemplate();
void exportProjectJudge();
}
package com.subsidy.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.dto.period.ProjectReviewPeriodDTO;
import com.subsidy.model.ProjectReviewPeriodDO;
import com.subsidy.vo.projectReviewPeriod.ProjectReviewPeriodVO;
/**
* <p>
* 评审时段 服务类
* </p>
*
* @author DengMin
* @since 2021-06-10
*/
public interface ProjectReviewPeriodService extends IService<ProjectReviewPeriodDO> {
ProjectReviewPeriodVO getProjectReviewPeriod(ProjectReviewPeriodDTO projectReviewPeriodDTO);
void updateProjectReviewPeriod(ProjectReviewPeriodDO projectReviewPeriodDO);
}
package com.subsidy.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.dto.review.CancelReviewDTO;
import com.subsidy.dto.review.ProjectReviewDTO;
import com.subsidy.dto.review.SetReviewDTO;
import com.subsidy.model.ProjectJudgeDO;
import com.subsidy.model.ProjectReviewDO;
import com.subsidy.vo.judge.ProjectReviewVO;
import com.subsidy.vo.review.SendNoticeVO;
import java.util.List;
/**
* <p>
* 项目评审 服务类
* </p>
*
* @author DengMin
* @since 2021-05-18
*/
public interface ProjectReviewService extends IService<ProjectReviewDO> {
void setReview(SetReviewDTO setReviewDTO);
List<ProjectReviewVO> getList(String projectSchedule, Long projectId);
void cancelReview(CancelReviewDTO cancelReviewVO);
List<ProjectJudgeDO> getProjectReview(ProjectReviewDTO projectReviewDTO);
void sendNotice(SendNoticeVO sendNoticeVO);
Integer selectCount(Long judgeId, Long matchId);
Integer selectNotReviewCount(Long judgeId);
}
...@@ -2,6 +2,8 @@ package com.subsidy.service; ...@@ -2,6 +2,8 @@ package com.subsidy.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.subsidy.dto.project.*; import com.subsidy.dto.project.*;
import com.subsidy.dto.review.ProjectReviewPageDTO;
import com.subsidy.dto.review.ProjectReviewScoreDTO;
import com.subsidy.model.CollegesDictDO; import com.subsidy.model.CollegesDictDO;
import com.subsidy.model.ProjectDO; import com.subsidy.model.ProjectDO;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
...@@ -34,6 +36,8 @@ public interface ProjectService extends IService<ProjectDO> { ...@@ -34,6 +36,8 @@ public interface ProjectService extends IService<ProjectDO> {
void downloadPdf(ProjectDO projectDO); void downloadPdf(ProjectDO projectDO);
void downloadConsultPdf(ProjectDO projectDO);
IPage getSeedTrackProjectPage(ProjectListPageDTO projectListPageDTO); IPage getSeedTrackProjectPage(ProjectListPageDTO projectListPageDTO);
void pass(ApproveDTO approveDTO); void pass(ApproveDTO approveDTO);
...@@ -64,9 +68,33 @@ public interface ProjectService extends IService<ProjectDO> { ...@@ -64,9 +68,33 @@ public interface ProjectService extends IService<ProjectDO> {
SignatureVO signature()throws Exception; SignatureVO signature()throws Exception;
String uploadVods(ProjectDO projectDO)throws Exception; String uploadVods(UploadVodsDTO uploadVodsDTO)throws Exception;
String uploadVodsTimeLimit(ProjectDO projectDO)throws Exception; String uploadVodsTimeLimit(ProjectDO projectDO)throws Exception;
VocationalReviewNumVO getVocationalReviewNum(ReviewListDTO reviewListDTO);
IPage getVocationalReviewList(ReviewListDTO reviewListDTO);
ProjectAssignNumVO getVocationalAssignNum(ReviewListDTO reviewListDTO);
void exportProjectReview(ReviewListDTO reviewListDTO);
VocationalProjectNum getReviewVocationalNum(ReviewVocationalNumDTO reviewVocationalNumDTO);
IPage getVocationalProjectReviewPage(ProjectReviewPageDTO projectReviewPageDTO);
void setScore(ProjectReviewScoreDTO projectReviewScoreDTO);
SeedTrackProjectDetailVO getVocationalProjectDetail(GetVocationalProjectDetailDTO getVocationalProjectDetailDTO);
void submitted(ProjectReviewScoreDTO projectReviewScoreDTO);
void batchUpdateEditStatus(EditStatusDTO editStatusDTO);
void updateEditStatus(EditStatusDTO editStatusDTO);
ProjectDO createTimeProject(UpdateProjectDTO updateProjectDTO)throws Exception;
void downloadTimePdf(ProjectDO projectDO);
} }
...@@ -16,5 +16,6 @@ public interface SmsVerifyCodeService extends IService<SmsVerifyCodeDO> { ...@@ -16,5 +16,6 @@ public interface SmsVerifyCodeService extends IService<SmsVerifyCodeDO> {
void sendAdministerLoginCode(AdministerDO administerDO); void sendAdministerLoginCode(AdministerDO administerDO);
void sendJudgeLoginCode(SmsVerifyCodeDO smsCodeDO);
} }
package com.subsidy.service;
import com.subsidy.model.TimeTableDO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.subsidy.vo.timetable.QueryTablesDetailVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author Tuyp
* @since 2025-10-28
*/
public interface TimeTableService extends IService<TimeTableDO> {
List<TimeTableDO> queryTimeTables(TimeTableDO timeTableDO);
String updateTimeByProjectId(TimeTableDO timeTableDO);
List<QueryTablesDetailVO> queryTablesDetail(TimeTableDO timeTableDO);
void exportQueryTablesDetail(TimeTableDO timeTableDO);
String addTimeTable(TimeTableDO timeTableDO);
String deleteTimeTableById(TimeTableDO timeTableDO);
String rollbackTime(TimeTableDO timeTableDO);
}
...@@ -15,7 +15,6 @@ import com.subsidy.mapper.AdministerMapper; ...@@ -15,7 +15,6 @@ import com.subsidy.mapper.AdministerMapper;
import com.subsidy.model.SmsVerifyCodeDO; import com.subsidy.model.SmsVerifyCodeDO;
import com.subsidy.service.AdministerService; import com.subsidy.service.AdministerService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.subsidy.service.PermissionsService;
import com.subsidy.util.JwtUtil; import com.subsidy.util.JwtUtil;
import com.subsidy.vo.administer.AdministerVO; import com.subsidy.vo.administer.AdministerVO;
import com.subsidy.vo.administer.PermissionVO; import com.subsidy.vo.administer.PermissionVO;
......
This diff could not be displayed because it is too large.
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!