DrawLotsGroupItemsController.java 3.35 KB
package com.zhongzhi.controller;


import com.zhongzhi.common.utils.ResponseData;
import com.zhongzhi.dto.drawlots.AddProjectToSceneDTO;
import com.zhongzhi.dto.drawlots.AllGroupItemsDTO;
import com.zhongzhi.dto.drawlots.CollegeProjectsDTO;
import com.zhongzhi.dto.drawlots.MatchProjectsDTO;
import com.zhongzhi.model.DrawLotsGroupItemsDO;
import com.zhongzhi.service.DrawLotsGroupItemsService;
import com.zhongzhi.vo.ResponseVO;
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("/drawLotsGroupItems")
@Api("小组项目")
public class DrawLotsGroupItemsController {

    @Autowired
    private DrawLotsGroupItemsService drawLotsGroupItemsService;

    @PostMapping("allGroupItems")
    @ApiOperation("查看所有小组项目  pageSize pageNum  sceneId  projectName college")
    public ResponseVO allGroupItems(@RequestBody AllGroupItemsDTO allGroupItemsDTO){
        return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.allGroupItems(allGroupItemsDTO));
    }

    @PostMapping("deleteGroupItem")
    @ApiOperation("删除小组项目  id")
    public ResponseVO deleteGroupItem(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
        return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.deleteGroupItem(drawLotsGroupItemsDO));
    }

    @PostMapping("matchProjects")
    @ApiOperation("项目名单含赛段筛选(除去这一届已经选中的)  matchId   projectSchedule")
    public ResponseVO matchProjects(@RequestBody MatchProjectsDTO matchProjectsDTO){
        return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.matchProjects(matchProjectsDTO));
    }

    @PostMapping("collegeProjects")
    @ApiOperation("选择院校下这一届的项目(除去已经分配的)  college   matchId  sceneId")
    public ResponseVO collegeProjects(@RequestBody CollegeProjectsDTO collegeProjectsDTO){
        return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.collegeProjects(collegeProjectsDTO));
    }

    @PostMapping("addProjectToScene")
    @ApiOperation("添加项目到现场  sceneId  projectIds")
    public ResponseVO addProjectToScene(@RequestBody AddProjectToSceneDTO addProjectToSceneDTO){
        return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.addProjectToScene(addProjectToSceneDTO));
    }

    @PostMapping("drawlots")
    @ApiOperation("学生--项目抽签 返回组别+编号 sceneId  projectId (映射id)")
    public ResponseVO drawlots(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
        return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.drawlots(drawLotsGroupItemsDO));
    }

    @PostMapping("groupProjectScreen")
    @ApiOperation("项目抽签大屏 sceneId")
    public ResponseVO groupProjectScreen(@RequestBody DrawLotsGroupItemsDO drawLotsGroupItemsDO){
        return ResponseData.generateCreatedResponse(0,drawLotsGroupItemsService.groupProjectScreen(drawLotsGroupItemsDO));
    }

}