新增基础信息管理、大赛管理

This commit is contained in:
xiao-fajia 2024-07-26 18:59:02 +08:00
parent 8402565665
commit b18d595d0f
33 changed files with 2491 additions and 268 deletions

View File

@ -24,6 +24,6 @@ public class BaseInfoApi extends BaseController {
*/
@GetMapping()
public AjaxResult getBaseInfo(){
return success(baseInfoService.list(new QueryWrapper<BaseInfo>().last("limit 1")));
return success(baseInfoService.getBaseInfo());
}
}

View File

@ -34,52 +34,6 @@ public class BaseInfoController extends BaseController
@Autowired
private IBaseInfoService baseInfoService;
/**
* 查询基础信息列表
*/
@PreAuthorize("@ss.hasPermi('cms:baseInfo:list')")
@GetMapping("/list")
public TableDataInfo list(BaseInfo baseInfo)
{
startPage();
List<BaseInfo> list = baseInfoService.selectBaseInfoList(baseInfo);
return getDataTable(list);
}
/**
* 导出基础信息列表
*/
@PreAuthorize("@ss.hasPermi('cms:baseInfo:export')")
@Log(title = "基础信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, BaseInfo baseInfo)
{
List<BaseInfo> list = baseInfoService.selectBaseInfoList(baseInfo);
ExcelUtil<BaseInfo> util = new ExcelUtil<BaseInfo>(BaseInfo.class);
util.exportExcel(response, list, "基础信息数据");
}
/**
* 获取基础信息详细信息
*/
@PreAuthorize("@ss.hasPermi('cms:baseInfo:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(baseInfoService.selectBaseInfoById(id));
}
/**
* 新增基础信息
*/
@PreAuthorize("@ss.hasPermi('cms:baseInfo:add')")
@Log(title = "基础信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody BaseInfo baseInfo)
{
return toAjax(baseInfoService.insertBaseInfo(baseInfo));
}
/**
* 修改基础信息
*/
@ -92,13 +46,10 @@ public class BaseInfoController extends BaseController
}
/**
* 删除基础信息
* 查询
*/
@PreAuthorize("@ss.hasPermi('cms:baseInfo:remove')")
@Log(title = "基础信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(baseInfoService.deleteBaseInfoByIds(ids));
@GetMapping()
public AjaxResult selectBaseInfo(){
return success(baseInfoService.getBaseInfo());
}
}

View File

@ -0,0 +1,104 @@
package com.ruoyi.cms.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.cms.domain.HitCompetition;
import com.ruoyi.cms.service.IHitCompetitionService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 大赛信息Controller
*
* @author 点亮信息
* @date 2024-07-26
*/
@RestController
@RequestMapping("/hit/hitCompetition")
public class HitCompetitionController extends BaseController
{
@Autowired
private IHitCompetitionService hitCompetitionService;
/**
* 查询大赛信息列表
*/
@PreAuthorize("@ss.hasPermi('hit:hitCompetition:list')")
@GetMapping("/list")
public TableDataInfo list(HitCompetition hitCompetition)
{
startPage();
List<HitCompetition> list = hitCompetitionService.selectHitCompetitionList(hitCompetition);
return getDataTable(list);
}
/**
* 导出大赛信息列表
*/
@PreAuthorize("@ss.hasPermi('hit:hitCompetition:export')")
@Log(title = "大赛信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, HitCompetition hitCompetition)
{
List<HitCompetition> list = hitCompetitionService.selectHitCompetitionList(hitCompetition);
ExcelUtil<HitCompetition> util = new ExcelUtil<HitCompetition>(HitCompetition.class);
util.exportExcel(response, list, "大赛信息数据");
}
/**
* 获取大赛信息详细信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitCompetition:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(hitCompetitionService.selectHitCompetitionById(id));
}
/**
* 新增大赛信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitCompetition:add')")
@Log(title = "大赛信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody HitCompetition hitCompetition)
{
return toAjax(hitCompetitionService.insertHitCompetition(hitCompetition));
}
/**
* 修改大赛信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitCompetition:edit')")
@Log(title = "大赛信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody HitCompetition hitCompetition)
{
return toAjax(hitCompetitionService.updateHitCompetition(hitCompetition));
}
/**
* 删除大赛信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitCompetition:remove')")
@Log(title = "大赛信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(hitCompetitionService.deleteHitCompetitionByIds(ids));
}
}

View File

@ -0,0 +1,104 @@
package com.ruoyi.cms.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.cms.domain.HitRegistrationStudentInfo;
import com.ruoyi.cms.service.IHitRegistrationStudentInfoService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 报名信息Controller
*
* @author 点亮信息
* @date 2024-07-26
*/
@RestController
@RequestMapping("/hit/hitRegistrationStudentInfo")
public class HitRegistrationStudentInfoController extends BaseController
{
@Autowired
private IHitRegistrationStudentInfoService hitRegistrationStudentInfoService;
/**
* 查询报名信息列表
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationStudentInfo:list')")
@GetMapping("/list")
public TableDataInfo list(HitRegistrationStudentInfo hitRegistrationStudentInfo)
{
startPage();
List<HitRegistrationStudentInfo> list = hitRegistrationStudentInfoService.selectHitRegistrationStudentInfoList(hitRegistrationStudentInfo);
return getDataTable(list);
}
/**
* 导出报名信息列表
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationStudentInfo:export')")
@Log(title = "报名信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, HitRegistrationStudentInfo hitRegistrationStudentInfo)
{
List<HitRegistrationStudentInfo> list = hitRegistrationStudentInfoService.selectHitRegistrationStudentInfoList(hitRegistrationStudentInfo);
ExcelUtil<HitRegistrationStudentInfo> util = new ExcelUtil<HitRegistrationStudentInfo>(HitRegistrationStudentInfo.class);
util.exportExcel(response, list, "报名信息数据");
}
/**
* 获取报名信息详细信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationStudentInfo:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(hitRegistrationStudentInfoService.selectHitRegistrationStudentInfoById(id));
}
/**
* 新增报名信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationStudentInfo:add')")
@Log(title = "报名信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody HitRegistrationStudentInfo hitRegistrationStudentInfo)
{
return toAjax(hitRegistrationStudentInfoService.insertHitRegistrationStudentInfo(hitRegistrationStudentInfo));
}
/**
* 修改报名信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationStudentInfo:edit')")
@Log(title = "报名信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody HitRegistrationStudentInfo hitRegistrationStudentInfo)
{
return toAjax(hitRegistrationStudentInfoService.updateHitRegistrationStudentInfo(hitRegistrationStudentInfo));
}
/**
* 删除报名信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationStudentInfo:remove')")
@Log(title = "报名信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(hitRegistrationStudentInfoService.deleteHitRegistrationStudentInfoByIds(ids));
}
}

View File

@ -0,0 +1,104 @@
package com.ruoyi.cms.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.cms.domain.HitRegistrationTeachInfo;
import com.ruoyi.cms.service.IHitRegistrationTeachInfoService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* 教师信息Controller
*
* @author 点亮信息
* @date 2024-07-26
*/
@RestController
@RequestMapping("/hit/hitRegistrationTeachInfo")
public class HitRegistrationTeachInfoController extends BaseController
{
@Autowired
private IHitRegistrationTeachInfoService hitRegistrationTeachInfoService;
/**
* 查询教师信息列表
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationTeachInfo:list')")
@GetMapping("/list")
public TableDataInfo list(HitRegistrationTeachInfo hitRegistrationTeachInfo)
{
startPage();
List<HitRegistrationTeachInfo> list = hitRegistrationTeachInfoService.selectHitRegistrationTeachInfoList(hitRegistrationTeachInfo);
return getDataTable(list);
}
/**
* 导出教师信息列表
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationTeachInfo:export')")
@Log(title = "教师信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, HitRegistrationTeachInfo hitRegistrationTeachInfo)
{
List<HitRegistrationTeachInfo> list = hitRegistrationTeachInfoService.selectHitRegistrationTeachInfoList(hitRegistrationTeachInfo);
ExcelUtil<HitRegistrationTeachInfo> util = new ExcelUtil<HitRegistrationTeachInfo>(HitRegistrationTeachInfo.class);
util.exportExcel(response, list, "教师信息数据");
}
/**
* 获取教师信息详细信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationTeachInfo:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(hitRegistrationTeachInfoService.selectHitRegistrationTeachInfoById(id));
}
/**
* 新增教师信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationTeachInfo:add')")
@Log(title = "教师信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody HitRegistrationTeachInfo hitRegistrationTeachInfo)
{
return toAjax(hitRegistrationTeachInfoService.insertHitRegistrationTeachInfo(hitRegistrationTeachInfo));
}
/**
* 修改教师信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationTeachInfo:edit')")
@Log(title = "教师信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody HitRegistrationTeachInfo hitRegistrationTeachInfo)
{
return toAjax(hitRegistrationTeachInfoService.updateHitRegistrationTeachInfo(hitRegistrationTeachInfo));
}
/**
* 删除教师信息
*/
@PreAuthorize("@ss.hasPermi('hit:hitRegistrationTeachInfo:remove')")
@Log(title = "教师信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(hitRegistrationTeachInfoService.deleteHitRegistrationTeachInfoByIds(ids));
}
}

View File

@ -0,0 +1,54 @@
package com.ruoyi.cms.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.util.Date;
/**
* 大赛信息对象 hit_competition
*
* @author 点亮信息
* @date 2024-07-26
*/
@Data
public class HitCompetition extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 大赛ID */
private Long id;
/** 大赛名称 */
@Excel(name = "大赛名称")
private String competitionName;
/** 大赛开始时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "大赛开始时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date cpBeginTime;
/** 大赛结束时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "大赛结束时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date cpEndTime;
/** 报名开始时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "报名开始时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date regBeginTime;
/** 报名结束时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "报名结束时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date regEndTime;
/** 大赛类型("0":团队赛,"1":个人赛,默认"0" */
@Excel(name = "大赛类型", readConverterExp = "0团队赛1个人赛默认0")
private String competitionType;
/** 逻辑删除0未删除1真删除 */
private Integer delFlag;
}

View File

@ -0,0 +1,65 @@
package com.ruoyi.cms.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import java.util.List;
/**
* 报名信息对象 hit_registration_student_info
*
* @author 点亮信息
* @date 2024-07-26
*/
@Data
public class HitRegistrationStudentInfo extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 报名信息ID */
private Long id;
/** 大赛ID */
@Excel(name = "大赛ID")
private Long competitionId;
/** 学生姓名 */
@Excel(name = "学生姓名")
private String stuName;
/** 学生性别01 */
@Excel(name = "学生性别", readConverterExp = "0=1")
private String stuGender;
/** 学生专业 */
@Excel(name = "学生专业")
private String stuMajor;
/** 学生手机号 */
@Excel(name = "学生手机号")
private String stuNumber;
/** 学校及院系名称 */
@Excel(name = "学校及院系名称")
private String schoolName;
/** 所属赛区 */
@Excel(name = "所属赛区")
private String division;
/** 团队名称(个人赛不需求,可以为空) */
@Excel(name = "团队名称", readConverterExp = "个=人赛不需求,可以为空")
private String teamName;
/** 领队教师ID集合 */
@Excel(name = "领队教师ID集合")
private List<String> leaderIds;
/** 指导老师ID集合 */
@Excel(name = "指导老师ID集合")
private List<String> guideIds;
/** 逻辑删除0未删除1真删除 */
private Integer delFlag;
}

View File

@ -0,0 +1,43 @@
package com.ruoyi.cms.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
/**
* 教师信息对象 hit_registration_teach_info
*
* @author 点亮信息
* @date 2024-07-26
*/
@Data
public class HitRegistrationTeachInfo extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 教师ID */
private Long id;
/** 教师姓名 */
@Excel(name = "教师姓名")
private String teacherName;
/** 教师职务 */
@Excel(name = "教师职务")
private String teacherJob;
/** 教师手机号 */
@Excel(name = "教师手机号")
private String teacherNumber;
/** 教师email */
@Excel(name = "教师email")
private String teacherEmail;
/** 教师所在系及专业 */
@Excel(name = "教师所在系及专业")
private String teacherSchool;
/** 逻辑删除0未删除1真删除 */
private Integer delFlag;
}

View File

@ -13,29 +13,7 @@ import com.ruoyi.cms.domain.BaseInfo;
*/
public interface BaseInfoMapper extends BaseMapper<BaseInfo>
{
/**
* 查询基础信息
*
* @param id 基础信息主键
* @return 基础信息
*/
public BaseInfo selectBaseInfoById(Long id);
/**
* 查询基础信息列表
*
* @param baseInfo 基础信息
* @return 基础信息集合
*/
public List<BaseInfo> selectBaseInfoList(BaseInfo baseInfo);
/**
* 新增基础信息
*
* @param baseInfo 基础信息
* @return 结果
*/
public int insertBaseInfo(BaseInfo baseInfo);
/**
* 修改基础信息
@ -46,18 +24,8 @@ public interface BaseInfoMapper extends BaseMapper<BaseInfo>
public int updateBaseInfo(BaseInfo baseInfo);
/**
* 删除基础信息
*
* @param id 基础信息主键
* @return 结果
* 查询
* @return
*/
public int deleteBaseInfoById(Long id);
/**
* 批量删除基础信息
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteBaseInfoByIds(Long[] ids);
public BaseInfo selectBaseInfo();
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.cms.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.cms.domain.HitCompetition;
/**
* 大赛信息Mapper接口
*
* @author 点亮信息
* @date 2024-07-26
*/
public interface HitCompetitionMapper extends BaseMapper<HitCompetition>
{
/**
* 查询大赛信息
*
* @param id 大赛信息主键
* @return 大赛信息
*/
public HitCompetition selectHitCompetitionById(Long id);
/**
* 查询大赛信息列表
*
* @param hitCompetition 大赛信息
* @return 大赛信息集合
*/
public List<HitCompetition> selectHitCompetitionList(HitCompetition hitCompetition);
/**
* 新增大赛信息
*
* @param hitCompetition 大赛信息
* @return 结果
*/
public int insertHitCompetition(HitCompetition hitCompetition);
/**
* 修改大赛信息
*
* @param hitCompetition 大赛信息
* @return 结果
*/
public int updateHitCompetition(HitCompetition hitCompetition);
/**
* 删除大赛信息
*
* @param id 大赛信息主键
* @return 结果
*/
public int deleteHitCompetitionById(Long id);
/**
* 批量删除大赛信息
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteHitCompetitionByIds(Long[] ids);
}

View File

@ -0,0 +1,64 @@
package com.ruoyi.cms.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.cms.domain.HitRegistrationStudentInfo;
import com.ruoyi.cms.domain.HitRegistrationTeachInfo;
/**
* 报名信息Mapper接口
*
* @author 点亮信息
* @date 2024-07-26
*/
public interface HitRegistrationStudentInfoMapper extends BaseMapper<HitRegistrationStudentInfo>
{
/**
* 查询报名信息
*
* @param id 报名信息主键
* @return 报名信息
*/
public HitRegistrationStudentInfo selectHitRegistrationStudentInfoById(Long id);
/**
* 查询报名信息列表
*
* @param hitRegistrationStudentInfo 报名信息
* @return 报名信息集合
*/
public List<HitRegistrationStudentInfo> selectHitRegistrationStudentInfoList(HitRegistrationStudentInfo hitRegistrationStudentInfo);
/**
* 新增报名信息
*
* @param hitRegistrationStudentInfo 报名信息
* @return 结果
*/
public int insertHitRegistrationStudentInfo(HitRegistrationStudentInfo hitRegistrationStudentInfo);
/**
* 修改报名信息
*
* @param hitRegistrationStudentInfo 报名信息
* @return 结果
*/
public int updateHitRegistrationStudentInfo(HitRegistrationStudentInfo hitRegistrationStudentInfo);
/**
* 删除报名信息
*
* @param id 报名信息主键
* @return 结果
*/
public int deleteHitRegistrationStudentInfoById(Long id);
/**
* 批量删除报名信息
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteHitRegistrationStudentInfoByIds(Long[] ids);
}

View File

@ -0,0 +1,64 @@
package com.ruoyi.cms.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.cms.domain.HitRegistrationStudentInfo;
import com.ruoyi.cms.domain.HitRegistrationTeachInfo;
/**
* 教师信息Mapper接口
*
* @author 点亮信息
* @date 2024-07-26
*/
public interface HitRegistrationTeachInfoMapper extends BaseMapper<HitRegistrationTeachInfo>
{
/**
* 查询教师信息
*
* @param id 教师信息主键
* @return 教师信息
*/
public HitRegistrationTeachInfo selectHitRegistrationTeachInfoById(Long id);
/**
* 查询教师信息列表
*
* @param hitRegistrationTeachInfo 教师信息
* @return 教师信息集合
*/
public List<HitRegistrationTeachInfo> selectHitRegistrationTeachInfoList(HitRegistrationTeachInfo hitRegistrationTeachInfo);
/**
* 新增教师信息
*
* @param hitRegistrationTeachInfo 教师信息
* @return 结果
*/
public int insertHitRegistrationTeachInfo(HitRegistrationTeachInfo hitRegistrationTeachInfo);
/**
* 修改教师信息
*
* @param hitRegistrationTeachInfo 教师信息
* @return 结果
*/
public int updateHitRegistrationTeachInfo(HitRegistrationTeachInfo hitRegistrationTeachInfo);
/**
* 删除教师信息
*
* @param id 教师信息主键
* @return 结果
*/
public int deleteHitRegistrationTeachInfoById(Long id);
/**
* 批量删除教师信息
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteHitRegistrationTeachInfoByIds(Long[] ids);
}

View File

@ -13,30 +13,6 @@ import com.ruoyi.cms.domain.BaseInfo;
*/
public interface IBaseInfoService extends IService<BaseInfo>
{
/**
* 查询基础信息
*
* @param id 基础信息主键
* @return 基础信息
*/
public BaseInfo selectBaseInfoById(Long id);
/**
* 查询基础信息列表
*
* @param baseInfo 基础信息
* @return 基础信息集合
*/
public List<BaseInfo> selectBaseInfoList(BaseInfo baseInfo);
/**
* 新增基础信息
*
* @param baseInfo 基础信息
* @return 结果
*/
public int insertBaseInfo(BaseInfo baseInfo);
/**
* 修改基础信息
*
@ -46,18 +22,8 @@ public interface IBaseInfoService extends IService<BaseInfo>
public int updateBaseInfo(BaseInfo baseInfo);
/**
* 批量删除基础信息
*
* @param ids 需要删除的基础信息主键集合
* @return 结果
* 查询
*/
public int deleteBaseInfoByIds(Long[] ids);
public BaseInfo getBaseInfo();
/**
* 删除基础信息信息
*
* @param id 基础信息主键
* @return 结果
*/
public int deleteBaseInfoById(Long id);
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.cms.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.cms.domain.HitCompetition;
/**
* 大赛信息Service接口
*
* @author 点亮信息
* @date 2024-07-26
*/
public interface IHitCompetitionService extends IService<HitCompetition>
{
/**
* 查询大赛信息
*
* @param id 大赛信息主键
* @return 大赛信息
*/
public HitCompetition selectHitCompetitionById(Long id);
/**
* 查询大赛信息列表
*
* @param hitCompetition 大赛信息
* @return 大赛信息集合
*/
public List<HitCompetition> selectHitCompetitionList(HitCompetition hitCompetition);
/**
* 新增大赛信息
*
* @param hitCompetition 大赛信息
* @return 结果
*/
public int insertHitCompetition(HitCompetition hitCompetition);
/**
* 修改大赛信息
*
* @param hitCompetition 大赛信息
* @return 结果
*/
public int updateHitCompetition(HitCompetition hitCompetition);
/**
* 批量删除大赛信息
*
* @param ids 需要删除的大赛信息主键集合
* @return 结果
*/
public int deleteHitCompetitionByIds(Long[] ids);
/**
* 删除大赛信息信息
*
* @param id 大赛信息主键
* @return 结果
*/
public int deleteHitCompetitionById(Long id);
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.cms.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.cms.domain.HitRegistrationStudentInfo;
/**
* 报名信息Service接口
*
* @author 点亮信息
* @date 2024-07-26
*/
public interface IHitRegistrationStudentInfoService extends IService<HitRegistrationStudentInfo>
{
/**
* 查询报名信息
*
* @param id 报名信息主键
* @return 报名信息
*/
public HitRegistrationStudentInfo selectHitRegistrationStudentInfoById(Long id);
/**
* 查询报名信息列表
*
* @param hitRegistrationStudentInfo 报名信息
* @return 报名信息集合
*/
public List<HitRegistrationStudentInfo> selectHitRegistrationStudentInfoList(HitRegistrationStudentInfo hitRegistrationStudentInfo);
/**
* 新增报名信息
*
* @param hitRegistrationStudentInfo 报名信息
* @return 结果
*/
public int insertHitRegistrationStudentInfo(HitRegistrationStudentInfo hitRegistrationStudentInfo);
/**
* 修改报名信息
*
* @param hitRegistrationStudentInfo 报名信息
* @return 结果
*/
public int updateHitRegistrationStudentInfo(HitRegistrationStudentInfo hitRegistrationStudentInfo);
/**
* 批量删除报名信息
*
* @param ids 需要删除的报名信息主键集合
* @return 结果
*/
public int deleteHitRegistrationStudentInfoByIds(Long[] ids);
/**
* 删除报名信息信息
*
* @param id 报名信息主键
* @return 结果
*/
public int deleteHitRegistrationStudentInfoById(Long id);
}

View File

@ -0,0 +1,63 @@
package com.ruoyi.cms.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.cms.domain.HitRegistrationTeachInfo;
/**
* 教师信息Service接口
*
* @author 点亮信息
* @date 2024-07-26
*/
public interface IHitRegistrationTeachInfoService extends IService<HitRegistrationTeachInfo>
{
/**
* 查询教师信息
*
* @param id 教师信息主键
* @return 教师信息
*/
public HitRegistrationTeachInfo selectHitRegistrationTeachInfoById(Long id);
/**
* 查询教师信息列表
*
* @param hitRegistrationTeachInfo 教师信息
* @return 教师信息集合
*/
public List<HitRegistrationTeachInfo> selectHitRegistrationTeachInfoList(HitRegistrationTeachInfo hitRegistrationTeachInfo);
/**
* 新增教师信息
*
* @param hitRegistrationTeachInfo 教师信息
* @return 结果
*/
public int insertHitRegistrationTeachInfo(HitRegistrationTeachInfo hitRegistrationTeachInfo);
/**
* 修改教师信息
*
* @param hitRegistrationTeachInfo 教师信息
* @return 结果
*/
public int updateHitRegistrationTeachInfo(HitRegistrationTeachInfo hitRegistrationTeachInfo);
/**
* 批量删除教师信息
*
* @param ids 需要删除的教师信息主键集合
* @return 结果
*/
public int deleteHitRegistrationTeachInfoByIds(Long[] ids);
/**
* 删除教师信息信息
*
* @param id 教师信息主键
* @return 结果
*/
public int deleteHitRegistrationTeachInfoById(Long id);
}

View File

@ -22,43 +22,6 @@ public class BaseInfoServiceImpl extends ServiceImpl<BaseInfoMapper, BaseInfo> i
@Autowired
private Snowflake snowflake;
/**
* 查询基础信息
*
* @param id 基础信息主键
* @return 基础信息
*/
@Override
public BaseInfo selectBaseInfoById(Long id)
{
return baseMapper.selectBaseInfoById(id);
}
/**
* 查询基础信息列表
*
* @param baseInfo 基础信息
* @return 基础信息
*/
@Override
public List<BaseInfo> selectBaseInfoList(BaseInfo baseInfo)
{
return baseMapper.selectBaseInfoList(baseInfo);
}
/**
* 新增基础信息
*
* @param baseInfo 基础信息
* @return 结果
*/
@Override
public int insertBaseInfo(BaseInfo baseInfo)
{
baseInfo.setId(snowflake.nextId());
return baseMapper.insertBaseInfo(baseInfo);
}
/**
* 修改基础信息
*
@ -72,26 +35,11 @@ public class BaseInfoServiceImpl extends ServiceImpl<BaseInfoMapper, BaseInfo> i
}
/**
* 批量删除基础信息
*
* @param ids 需要删除的基础信息主键
* @return 结果
* 查询
*/
@Override
public int deleteBaseInfoByIds(Long[] ids)
{
return baseMapper.deleteBaseInfoByIds(ids);
public BaseInfo getBaseInfo(){
return baseMapper.selectBaseInfo();
}
/**
* 删除基础信息信息
*
* @param id 基础信息主键
* @return 结果
*/
@Override
public int deleteBaseInfoById(Long id)
{
return baseMapper.deleteBaseInfoById(id);
}
}

View File

@ -0,0 +1,100 @@
package com.ruoyi.cms.service.impl;
import cn.hutool.core.lang.Snowflake;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.cms.domain.HitCompetition;
import com.ruoyi.cms.mapper.HitCompetitionMapper;
import com.ruoyi.cms.service.IHitCompetitionService;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 大赛信息Service业务层处理
*
* @author 点亮信息
* @date 2024-07-26
*/
@Service
public class HitCompetitionServiceImpl extends ServiceImpl<HitCompetitionMapper, HitCompetition> implements IHitCompetitionService
{
@Autowired
private Snowflake snowflake;
/**
* 查询大赛信息
*
* @param id 大赛信息主键
* @return 大赛信息
*/
@Override
public HitCompetition selectHitCompetitionById(Long id)
{
return baseMapper.selectHitCompetitionById(id);
}
/**
* 查询大赛信息列表
*
* @param hitCompetition 大赛信息
* @return 大赛信息
*/
@Override
public List<HitCompetition> selectHitCompetitionList(HitCompetition hitCompetition)
{
return baseMapper.selectHitCompetitionList(hitCompetition);
}
/**
* 新增大赛信息
*
* @param hitCompetition 大赛信息
* @return 结果
*/
@Override
public int insertHitCompetition(HitCompetition hitCompetition)
{
hitCompetition.setId(snowflake.nextId());
hitCompetition.setCreateTime(DateUtils.getNowDate());
return baseMapper.insertHitCompetition(hitCompetition);
}
/**
* 修改大赛信息
*
* @param hitCompetition 大赛信息
* @return 结果
*/
@Override
public int updateHitCompetition(HitCompetition hitCompetition)
{
hitCompetition.setUpdateTime(DateUtils.getNowDate());
return baseMapper.updateHitCompetition(hitCompetition);
}
/**
* 批量删除大赛信息
*
* @param ids 需要删除的大赛信息主键
* @return 结果
*/
@Override
public int deleteHitCompetitionByIds(Long[] ids)
{
return baseMapper.deleteHitCompetitionByIds(ids);
}
/**
* 删除大赛信息信息
*
* @param id 大赛信息主键
* @return 结果
*/
@Override
public int deleteHitCompetitionById(Long id)
{
return baseMapper.deleteHitCompetitionById(id);
}
}

View File

@ -0,0 +1,100 @@
package com.ruoyi.cms.service.impl;
import cn.hutool.core.lang.Snowflake;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.cms.domain.HitRegistrationStudentInfo;
import com.ruoyi.cms.mapper.HitRegistrationStudentInfoMapper;
import com.ruoyi.cms.service.IHitRegistrationStudentInfoService;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 报名信息Service业务层处理
*
* @author 点亮信息
* @date 2024-07-26
*/
@Service
public class HitRegistrationStudentInfoServiceImpl extends ServiceImpl<HitRegistrationStudentInfoMapper, HitRegistrationStudentInfo> implements IHitRegistrationStudentInfoService
{
@Autowired
private Snowflake snowflake;
/**
* 查询报名信息
*
* @param id 报名信息主键
* @return 报名信息
*/
@Override
public HitRegistrationStudentInfo selectHitRegistrationStudentInfoById(Long id)
{
return baseMapper.selectHitRegistrationStudentInfoById(id);
}
/**
* 查询报名信息列表
*
* @param hitRegistrationStudentInfo 报名信息
* @return 报名信息
*/
@Override
public List<HitRegistrationStudentInfo> selectHitRegistrationStudentInfoList(HitRegistrationStudentInfo hitRegistrationStudentInfo)
{
return baseMapper.selectHitRegistrationStudentInfoList(hitRegistrationStudentInfo);
}
/**
* 新增报名信息
*
* @param hitRegistrationStudentInfo 报名信息
* @return 结果
*/
@Override
public int insertHitRegistrationStudentInfo(HitRegistrationStudentInfo hitRegistrationStudentInfo)
{
hitRegistrationStudentInfo.setId(snowflake.nextId());
hitRegistrationStudentInfo.setCreateTime(DateUtils.getNowDate());
return baseMapper.insertHitRegistrationStudentInfo(hitRegistrationStudentInfo);
}
/**
* 修改报名信息
*
* @param hitRegistrationStudentInfo 报名信息
* @return 结果
*/
@Override
public int updateHitRegistrationStudentInfo(HitRegistrationStudentInfo hitRegistrationStudentInfo)
{
hitRegistrationStudentInfo.setUpdateTime(DateUtils.getNowDate());
return baseMapper.updateHitRegistrationStudentInfo(hitRegistrationStudentInfo);
}
/**
* 批量删除报名信息
*
* @param ids 需要删除的报名信息主键
* @return 结果
*/
@Override
public int deleteHitRegistrationStudentInfoByIds(Long[] ids)
{
return baseMapper.deleteHitRegistrationStudentInfoByIds(ids);
}
/**
* 删除报名信息信息
*
* @param id 报名信息主键
* @return 结果
*/
@Override
public int deleteHitRegistrationStudentInfoById(Long id)
{
return baseMapper.deleteHitRegistrationStudentInfoById(id);
}
}

View File

@ -0,0 +1,101 @@
package com.ruoyi.cms.service.impl;
import java.util.List;
import cn.hutool.core.lang.Snowflake;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.cms.mapper.HitRegistrationTeachInfoMapper;
import com.ruoyi.cms.domain.HitRegistrationTeachInfo;
import com.ruoyi.cms.service.IHitRegistrationTeachInfoService;
/**
* 教师信息Service业务层处理
*
* @author 点亮信息
* @date 2024-07-26
*/
@Service
public class HitRegistrationTeachInfoServiceImpl extends ServiceImpl<HitRegistrationTeachInfoMapper, HitRegistrationTeachInfo> implements IHitRegistrationTeachInfoService
{
@Autowired
private Snowflake snowflake;
/**
* 查询教师信息
*
* @param id 教师信息主键
* @return 教师信息
*/
@Override
public HitRegistrationTeachInfo selectHitRegistrationTeachInfoById(Long id)
{
return baseMapper.selectHitRegistrationTeachInfoById(id);
}
/**
* 查询教师信息列表
*
* @param hitRegistrationTeachInfo 教师信息
* @return 教师信息
*/
@Override
public List<HitRegistrationTeachInfo> selectHitRegistrationTeachInfoList(HitRegistrationTeachInfo hitRegistrationTeachInfo)
{
return baseMapper.selectHitRegistrationTeachInfoList(hitRegistrationTeachInfo);
}
/**
* 新增教师信息
*
* @param hitRegistrationTeachInfo 教师信息
* @return 结果
*/
@Override
public int insertHitRegistrationTeachInfo(HitRegistrationTeachInfo hitRegistrationTeachInfo)
{
hitRegistrationTeachInfo.setId(snowflake.nextId());
hitRegistrationTeachInfo.setCreateTime(DateUtils.getNowDate());
return baseMapper.insertHitRegistrationTeachInfo(hitRegistrationTeachInfo);
}
/**
* 修改教师信息
*
* @param hitRegistrationTeachInfo 教师信息
* @return 结果
*/
@Override
public int updateHitRegistrationTeachInfo(HitRegistrationTeachInfo hitRegistrationTeachInfo)
{
hitRegistrationTeachInfo.setUpdateTime(DateUtils.getNowDate());
return baseMapper.updateHitRegistrationTeachInfo(hitRegistrationTeachInfo);
}
/**
* 批量删除教师信息
*
* @param ids 需要删除的教师信息主键
* @return 结果
*/
@Override
public int deleteHitRegistrationTeachInfoByIds(Long[] ids)
{
return baseMapper.deleteHitRegistrationTeachInfoByIds(ids);
}
/**
* 删除教师信息信息
*
* @param id 教师信息主键
* @return 结果
*/
@Override
public int deleteHitRegistrationTeachInfoById(Long id)
{
return baseMapper.deleteHitRegistrationTeachInfoById(id);
}
}

View File

@ -19,47 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select id, web_name, contact_number, contact_email, address, web_img, record_info, copyright_info from base_info
</sql>
<select id="selectBaseInfoList" parameterType="BaseInfo" resultMap="BaseInfoResult">
<include refid="selectBaseInfoVo"/>
<where>
<if test="webName != null and webName != ''"> and web_name like concat('%', #{webName}, '%')</if>
<if test="contactNumber != null and contactNumber != ''"> and contact_number = #{contactNumber}</if>
<if test="contactEmail != null and contactEmail != ''"> and contact_email = #{contactEmail}</if>
<if test="address != null and address != ''"> and address = #{address}</if>
<if test="webImg != null and webImg != ''"> and web_img = #{webImg}</if>
<if test="recordInfo != null and recordInfo != ''"> and record_info = #{recordInfo}</if>
<if test="copyrightInfo != null and copyrightInfo != ''"> and copyright_info = #{copyrightInfo}</if>
</where>
</select>
<select id="selectBaseInfoById" parameterType="Long" resultMap="BaseInfoResult">
<include refid="selectBaseInfoVo"/>
where id = #{id}
</select>
<insert id="insertBaseInfo" parameterType="BaseInfo">
insert into base_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="webName != null and webName != ''">web_name,</if>
<if test="contactNumber != null">contact_number,</if>
<if test="contactEmail != null">contact_email,</if>
<if test="address != null">address,</if>
<if test="webImg != null">web_img,</if>
<if test="recordInfo != null">record_info,</if>
<if test="copyrightInfo != null">copyright_info,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="webName != null and webName != ''">#{webName},</if>
<if test="contactNumber != null">#{contactNumber},</if>
<if test="contactEmail != null">#{contactEmail},</if>
<if test="address != null">#{address},</if>
<if test="webImg != null">#{webImg},</if>
<if test="recordInfo != null">#{recordInfo},</if>
<if test="copyrightInfo != null">#{copyrightInfo},</if>
</trim>
</insert>
<update id="updateBaseInfo" parameterType="BaseInfo">
update base_info
@ -75,14 +35,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where id = #{id}
</update>
<delete id="deleteBaseInfoById" parameterType="Long">
delete from base_info where id = #{id}
</delete>
<delete id="deleteBaseInfoByIds" parameterType="String">
delete from base_info where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<select id="selectBaseInfo" resultType="com.ruoyi.cms.domain.BaseInfo">
<include refid="selectBaseInfoVo" />
limit 1
</select>
</mapper>

View File

@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.cms.mapper.HitCompetitionMapper">
<resultMap type="HitCompetition" id="HitCompetitionResult">
<result property="id" column="id" />
<result property="competitionName" column="competition_name" />
<result property="cpBeginTime" column="cp_begin_time" />
<result property="cpEndTime" column="cp_end_time" />
<result property="regBeginTime" column="reg_begin_time" />
<result property="regEndTime" column="reg_end_time" />
<result property="competitionType" column="competition_type" />
<result property="remark" column="remark" />
<result property="delFlag" column="del_flag" />
<result property="createTime" column="create_time" />
<result property="createBy" column="create_by" />
<result property="updateTime" column="update_time" />
<result property="updateBy" column="update_by" />
</resultMap>
<sql id="selectHitCompetitionVo">
select id, competition_name, cp_begin_time, cp_end_time, reg_begin_time, reg_end_time, competition_type, remark, del_flag, create_time, create_by, update_time, update_by from hit_competition
</sql>
<select id="selectHitCompetitionList" parameterType="HitCompetition" resultMap="HitCompetitionResult">
<include refid="selectHitCompetitionVo"/>
<where>
<if test="competitionName != null and competitionName != ''"> and competition_name like concat('%', #{competitionName}, '%')</if>
<if test="cpBeginTime != null "> and cp_begin_time >= #{cpBeginTime}</if>
<if test="cpEndTime != null "> and cp_end_time &lt;= #{cpEndTime}</if>
<if test="regBeginTime != null "> and reg_begin_time >= #{regBeginTime}</if>
<if test="regEndTime != null "> and reg_end_time &lt;= #{regEndTime}</if>
<if test="competitionType != null "> and competition_type = #{competitionType}</if>
</where>
order by create_time desc, update_time desc
</select>
<select id="selectHitCompetitionById" parameterType="Long" resultMap="HitCompetitionResult">
<include refid="selectHitCompetitionVo"/>
where id = #{id}
</select>
<insert id="insertHitCompetition" parameterType="HitCompetition">
insert into hit_competition
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="competitionName != null and competitionName != ''">competition_name,</if>
<if test="cpBeginTime != null">cp_begin_time,</if>
<if test="cpEndTime != null">cp_end_time,</if>
<if test="regBeginTime != null">reg_begin_time,</if>
<if test="regEndTime != null">reg_end_time,</if>
<if test="competitionType != null">competition_type,</if>
<if test="remark != null">remark,</if>
<if test="delFlag != null">del_flag,</if>
<if test="createTime != null">create_time,</if>
<if test="createBy != null">create_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="updateBy != null">update_by,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="competitionName != null and competitionName != ''">#{competitionName},</if>
<if test="cpBeginTime != null">#{cpBeginTime},</if>
<if test="cpEndTime != null">#{cpEndTime},</if>
<if test="regBeginTime != null">#{regBeginTime},</if>
<if test="regEndTime != null">#{regEndTime},</if>
<if test="competitionType != null">#{competitionType},</if>
<if test="remark != null">#{remark},</if>
<if test="delFlag != null">#{delFlag},</if>
<if test="createTime != null">#{createTime},</if>
<if test="createBy != null">#{createBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="updateBy != null">#{updateBy},</if>
</trim>
</insert>
<update id="updateHitCompetition" parameterType="HitCompetition">
update hit_competition
<trim prefix="SET" suffixOverrides=",">
<if test="competitionName != null and competitionName != ''">competition_name = #{competitionName},</if>
<if test="cpBeginTime != null">cp_begin_time = #{cpBeginTime},</if>
<if test="cpEndTime != null">cp_end_time = #{cpEndTime},</if>
<if test="regBeginTime != null">reg_begin_time = #{regBeginTime},</if>
<if test="regEndTime != null">reg_end_time = #{regEndTime},</if>
<if test="competitionType != null">competition_type = #{competitionType},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteHitCompetitionById" parameterType="Long">
delete from hit_competition where id = #{id}
</delete>
<delete id="deleteHitCompetitionByIds" parameterType="String">
delete from hit_competition where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@ -0,0 +1,127 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.cms.mapper.HitRegistrationStudentInfoMapper">
<resultMap type="HitRegistrationStudentInfo" id="HitRegistrationStudentInfoResult">
<result property="id" column="id" />
<result property="competitionId" column="competition_id" />
<result property="stuName" column="stu_name" />
<result property="stuGender" column="stu_gender" />
<result property="stuMajor" column="stu_major" />
<result property="stuNumber" column="stu_number" />
<result property="schoolName" column="school_name" />
<result property="division" column="division" />
<result property="teamName" column="team_name" />
<result property="leaderIds" column="leader_ids" javaType="java.util.List" typeHandler="com.ruoyi.system.handler.MysqlTypeHandler" />
<result property="guideIds" column="guide_ids" javaType="java.util.List" typeHandler="com.ruoyi.system.handler.MysqlTypeHandler" />
<result property="remark" column="remark" />
<result property="delFlag" column="del_flag" />
<result property="createTime" column="create_time" />
<result property="createBy" column="create_by" />
<result property="updateTime" column="update_time" />
<result property="updateBy" column="update_by" />
</resultMap>
<sql id="selectHitRegistrationStudentInfoVo">
select id, competition_id, stu_name, stu_gender, stu_major, stu_number, school_name, division, team_name, leader_ids, guide_ids, remark, del_flag, create_time, create_by, update_time, update_by from hit_registration_student_info
</sql>
<select id="selectHitRegistrationStudentInfoList" parameterType="HitRegistrationStudentInfo" resultMap="HitRegistrationStudentInfoResult">
<include refid="selectHitRegistrationStudentInfoVo"/>
<where>
<if test="competitionId != null "> and competition_id = #{competitionId}</if>
<if test="stuName != null and stuName != ''"> and stu_name like concat('%', #{stuName}, '%')</if>
<if test="stuGender != null "> and stu_gender = #{stuGender}</if>
<if test="stuMajor != null and stuMajor != ''"> and stu_major = #{stuMajor}</if>
<if test="stuNumber != null and stuNumber != ''"> and stu_number = #{stuNumber}</if>
<if test="schoolName != null and schoolName != ''"> and school_name like concat('%', #{schoolName}, '%')</if>
<if test="division != null and division != ''"> and division = #{division}</if>
<if test="teamName != null and teamName != ''"> and team_name like concat('%', #{teamName}, '%')</if>
<if test="leaderIds != null and leaderIds != ''"> and leader_ids = #{leaderIds}</if>
<if test="guideIds != null and guideIds != ''"> and guide_ids = #{guideIds}</if>
</where>
</select>
<select id="selectHitRegistrationStudentInfoById" parameterType="Long" resultMap="HitRegistrationStudentInfoResult">
<include refid="selectHitRegistrationStudentInfoVo"/>
where id = #{id}
</select>
<insert id="insertHitRegistrationStudentInfo" parameterType="HitRegistrationStudentInfo">
insert into hit_registration_student_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="competitionId != null">competition_id,</if>
<if test="stuName != null and stuName != ''">stu_name,</if>
<if test="stuGender != null">stu_gender,</if>
<if test="stuMajor != null and stuMajor != ''">stu_major,</if>
<if test="stuNumber != null and stuNumber != ''">stu_number,</if>
<if test="schoolName != null and schoolName != ''">school_name,</if>
<if test="division != null and division != ''">division,</if>
<if test="teamName != null">team_name,</if>
<if test="leaderIds != null">leader_ids,</if>
<if test="guideIds != null">guide_ids,</if>
<if test="remark != null">remark,</if>
<if test="delFlag != null">del_flag,</if>
<if test="createTime != null">create_time,</if>
<if test="createBy != null">create_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="updateBy != null">update_by,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="competitionId != null">#{competitionId},</if>
<if test="stuName != null and stuName != ''">#{stuName},</if>
<if test="stuGender != null">#{stuGender},</if>
<if test="stuMajor != null and stuMajor != ''">#{stuMajor},</if>
<if test="stuNumber != null and stuNumber != ''">#{stuNumber},</if>
<if test="schoolName != null and schoolName != ''">#{schoolName},</if>
<if test="division != null and division != ''">#{division},</if>
<if test="teamName != null">#{teamName},</if>
<if test="leaderIds != null">#{leaderIds,jdbcType=OTHER,typeHandler=com.ruoyi.system.handler.MysqlTypeHandler},</if>
<if test="guideIds != null">#{guideIds,jdbcType=OTHER,typeHandler=com.ruoyi.system.handler.MysqlTypeHandler},</if>
<if test="remark != null">#{remark},</if>
<if test="delFlag != null">#{delFlag},</if>
<if test="createTime != null">#{createTime},</if>
<if test="createBy != null">#{createBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="updateBy != null">#{updateBy},</if>
</trim>
</insert>
<update id="updateHitRegistrationStudentInfo" parameterType="HitRegistrationStudentInfo">
update hit_registration_student_info
<trim prefix="SET" suffixOverrides=",">
<if test="competitionId != null">competition_id = #{competitionId},</if>
<if test="stuName != null and stuName != ''">stu_name = #{stuName},</if>
<if test="stuGender != null">stu_gender = #{stuGender},</if>
<if test="stuMajor != null and stuMajor != ''">stu_major = #{stuMajor},</if>
<if test="stuNumber != null and stuNumber != ''">stu_number = #{stuNumber},</if>
<if test="schoolName != null and schoolName != ''">school_name = #{schoolName},</if>
<if test="division != null and division != ''">division = #{division},</if>
<if test="teamName != null">team_name = #{teamName},</if>
<if test="leaderIds != null">leader_ids = #{leaderIds,jdbcType=OTHER,typeHandler=com.ruoyi.system.handler.MysqlTypeHandler},</if>
<if test="guideIds != null">guide_ids = #{guideIds,jdbcType=OTHER,typeHandler=com.ruoyi.system.handler.MysqlTypeHandler},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteHitRegistrationStudentInfoById" parameterType="Long">
delete from hit_registration_student_info where id = #{id}
</delete>
<delete id="deleteHitRegistrationStudentInfoByIds" parameterType="String">
delete from hit_registration_student_info where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.cms.mapper.HitRegistrationTeachInfoMapper">
<resultMap type="HitRegistrationTeachInfo" id="HitRegistrationTeachInfoResult">
<result property="id" column="id" />
<result property="teacherName" column="teacher_name" />
<result property="teacherJob" column="teacher_job" />
<result property="teacherNumber" column="teacher_number" />
<result property="teacherEmail" column="teacher_email" />
<result property="teacherSchool" column="teacher_school" />
<result property="remark" column="remark" />
<result property="delFlag" column="del_flag" />
<result property="createTime" column="create_time" />
<result property="createBy" column="create_by" />
<result property="updateTime" column="update_time" />
<result property="updateBy" column="update_by" />
</resultMap>
<sql id="selectHitRegistrationTeachInfoVo">
select id, teacher_name, teacher_job, teacher_number, teacher_email, teacher_school, remark, del_flag, create_time, create_by, update_time, update_by from hit_registration_teach_info
</sql>
<select id="selectHitRegistrationTeachInfoList" parameterType="HitRegistrationTeachInfo" resultMap="HitRegistrationTeachInfoResult">
<include refid="selectHitRegistrationTeachInfoVo"/>
<where>
<if test="teacherName != null and teacherName != ''"> and teacher_name like concat('%', #{teacherName}, '%')</if>
<if test="teacherJob != null and teacherJob != ''"> and teacher_job = #{teacherJob}</if>
<if test="teacherNumber != null and teacherNumber != ''"> and teacher_number = #{teacherNumber}</if>
<if test="teacherEmail != null and teacherEmail != ''"> and teacher_email = #{teacherEmail}</if>
<if test="teacherSchool != null and teacherSchool != ''"> and teacher_school = #{teacherSchool}</if>
</where>
</select>
<select id="selectHitRegistrationTeachInfoById" parameterType="Long" resultMap="HitRegistrationTeachInfoResult">
<include refid="selectHitRegistrationTeachInfoVo"/>
where id = #{id}
</select>
<insert id="insertHitRegistrationTeachInfo" parameterType="HitRegistrationTeachInfo">
insert into hit_registration_teach_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="teacherName != null and teacherName != ''">teacher_name,</if>
<if test="teacherJob != null and teacherJob != ''">teacher_job,</if>
<if test="teacherNumber != null and teacherNumber != ''">teacher_number,</if>
<if test="teacherEmail != null and teacherEmail != ''">teacher_email,</if>
<if test="teacherSchool != null and teacherSchool != ''">teacher_school,</if>
<if test="remark != null">remark,</if>
<if test="delFlag != null">del_flag,</if>
<if test="createTime != null">create_time,</if>
<if test="createBy != null">create_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="updateBy != null">update_by,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="teacherName != null and teacherName != ''">#{teacherName},</if>
<if test="teacherJob != null and teacherJob != ''">#{teacherJob},</if>
<if test="teacherNumber != null and teacherNumber != ''">#{teacherNumber},</if>
<if test="teacherEmail != null and teacherEmail != ''">#{teacherEmail},</if>
<if test="teacherSchool != null and teacherSchool != ''">#{teacherSchool},</if>
<if test="remark != null">#{remark},</if>
<if test="delFlag != null">#{delFlag},</if>
<if test="createTime != null">#{createTime},</if>
<if test="createBy != null">#{createBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="updateBy != null">#{updateBy},</if>
</trim>
</insert>
<update id="updateHitRegistrationTeachInfo" parameterType="HitRegistrationTeachInfo">
update hit_registration_teach_info
<trim prefix="SET" suffixOverrides=",">
<if test="teacherName != null and teacherName != ''">teacher_name = #{teacherName},</if>
<if test="teacherJob != null and teacherJob != ''">teacher_job = #{teacherJob},</if>
<if test="teacherNumber != null and teacherNumber != ''">teacher_number = #{teacherNumber},</if>
<if test="teacherEmail != null and teacherEmail != ''">teacher_email = #{teacherEmail},</if>
<if test="teacherSchool != null and teacherSchool != ''">teacher_school = #{teacherSchool},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteHitRegistrationTeachInfoById" parameterType="Long">
delete from hit_registration_teach_info where id = #{id}
</delete>
<delete id="deleteHitRegistrationTeachInfoByIds" parameterType="String">
delete from hit_registration_teach_info where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@ -1,11 +1,10 @@
import request from '@/utils/request'
// 查询基础信息列表
export function listBaseInfo(query) {
export function selectBaseInfo(query) {
return request({
url: '/cms/baseInfo/list',
url: '/cms/baseInfo',
method: 'get',
params: query
})
}

View File

@ -16,3 +16,10 @@ export function getbanner(data) {
data
})
}
export function getBaseInfo(){
return request({
url: "/api/baseInfo",
method: "get"
})
}

View File

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询大赛信息列表
export function listHitCompetition(query) {
return request({
url: '/hit/hitCompetition/list',
method: 'get',
params: query
})
}
// 查询大赛信息详细
export function getHitCompetition(id) {
return request({
url: '/hit/hitCompetition/' + id,
method: 'get'
})
}
// 新增大赛信息
export function addHitCompetition(data) {
return request({
url: '/hit/hitCompetition',
method: 'post',
data: data
})
}
// 修改大赛信息
export function updateHitCompetition(data) {
return request({
url: '/hit/hitCompetition',
method: 'put',
data: data
})
}
// 删除大赛信息
export function delHitCompetition(id) {
return request({
url: '/hit/hitCompetition/' + id,
method: 'delete'
})
}

View File

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询报名信息列表
export function listHitRegistrationStudentInfo(query) {
return request({
url: '/hit/hitRegistrationStudentInfo/list',
method: 'get',
params: query
})
}
// 查询报名信息详细
export function getHitRegistrationStudentInfo(id) {
return request({
url: '/hit/hitRegistrationStudentInfo/' + id,
method: 'get'
})
}
// 新增报名信息
export function addHitRegistrationStudentInfo(data) {
return request({
url: '/hit/hitRegistrationStudentInfo',
method: 'post',
data: data
})
}
// 修改报名信息
export function updateHitRegistrationStudentInfo(data) {
return request({
url: '/hit/hitRegistrationStudentInfo',
method: 'put',
data: data
})
}
// 删除报名信息
export function delHitRegistrationStudentInfo(id) {
return request({
url: '/hit/hitRegistrationStudentInfo/' + id,
method: 'delete'
})
}

View File

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询教师信息列表
export function listHitRegistrationTeachInfo(query) {
return request({
url: '/hit/hitRegistrationTeachInfo/list',
method: 'get',
params: query
})
}
// 查询教师信息详细
export function getHitRegistrationTeachInfo(id) {
return request({
url: '/hit/hitRegistrationTeachInfo/' + id,
method: 'get'
})
}
// 新增教师信息
export function addHitRegistrationTeachInfo(data) {
return request({
url: '/hit/hitRegistrationTeachInfo',
method: 'post',
data: data
})
}
// 修改教师信息
export function updateHitRegistrationTeachInfo(data) {
return request({
url: '/hit/hitRegistrationTeachInfo',
method: 'put',
data: data
})
}
// 删除教师信息
export function delHitRegistrationTeachInfo(id) {
return request({
url: '/hit/hitRegistrationTeachInfo/' + id,
method: 'delete'
})
}

View File

@ -3,25 +3,25 @@
<div class="baseInfo">
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="名称" prop="webName">
<el-input v-model="form.webName" placeholder="请输入名称" />
<el-input v-model="form.webName" placeholder="请输入名称"/>
</el-form-item>
<el-form-item label="联系电话" prop="contactNumber">
<el-input v-model="form.contactNumber" placeholder="请输入联系电话" />
<el-input v-model="form.contactNumber" placeholder="请输入联系电话"/>
</el-form-item>
<el-form-item label="联系邮箱" prop="contactEmail">
<el-input v-model="form.contactEmail" placeholder="请输入联系邮箱" />
<el-input v-model="form.contactEmail" placeholder="请输入联系邮箱"/>
</el-form-item>
<el-form-item label="地址" prop="address">
<el-input v-model="form.address" placeholder="请输入地址" />
<el-input v-model="form.address" placeholder="请输入地址"/>
</el-form-item>
<el-form-item label="logo" prop="webImg">
<image-upload :limit="1" v-model="form.webImg" />
<image-upload :limit="1" v-model="form.webImg"/>
</el-form-item>
<el-form-item label="备案信息" prop="recordInfo">
<el-input v-model="form.recordInfo" placeholder="请输入备案信息" />
<el-input v-model="form.recordInfo" placeholder="请输入备案信息"/>
</el-form-item>
<el-form-item label="版权信息" prop="copyrightInfo">
<el-input v-model="form.copyrightInfo" placeholder="请输入版权信息" />
<el-input v-model="form.copyrightInfo" placeholder="请输入版权信息"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -32,36 +32,33 @@
</template>
<script>
import {updateBaseInfo, selectBaseInfo} from "@/api/cms/baseInfo"
export default {
name: "BaseInfo",
data() {
return {
return {
form: {},
rules: {
webName: [
{ required: true, message: "名称不能为空", trigger: "blur" }
{required: true, message: "名称不能为空", trigger: "blur"}
],
}
}
},
methods:{
created() {
this.getBaseInfo()
},
methods: {
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updateBaseInfo(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addBaseInfo(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
updateBaseInfo(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
}
});
},
@ -79,20 +76,28 @@ export default {
};
this.resetForm("form");
},
getBaseInfo(){
selectBaseInfo().then(res => {
this.form = res.data
this.form.webImg = process.env.VUE_APP_BASE_API + this.form.webImg
})
}
}
}
</script>
<style scoped lang="scss">
.app-container{
.app-container {
display: flex;
justify-content: center;
}
.baseInfo{
.baseInfo {
width: 40%;
margin-top: 2rem;
}
.dialog-footer{
.dialog-footer {
width: 100%;
text-align: center;
}

View File

@ -0,0 +1,433 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="大赛名称" prop="competitionName">
<el-input
v-model="queryParams.competitionName"
placeholder="请输入大赛名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="大赛类型" prop="competitionType">
<el-select
v-model="queryParams.competitionType"
placeholder="大赛类型"
clearable
style="width: 125px">
<el-option
v-for="dict in dict.type.competition_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="报名时间">
<el-date-picker
format="yyyy-MM-dd HH:mm"
:picker-options="pickerOptions"
v-model="regDate"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item label="大赛时间">
<el-date-picker
format="yyyy-MM-dd HH:mm"
:picker-options="pickerOptions"
v-model="cpDate"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['competition:competition:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['competition:competition:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['competition:competition:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['competition:competition:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="HitCompetitionList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="大赛名称" align="center" prop="competitionName" />
<el-table-column label="报名开始时间" align="center" prop="regBeginTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.regBeginTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="报名结束时间" align="center" prop="regEndTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.regEndTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="开始时间" align="center" prop="cpBeginTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.cpBeginTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="结束时间" align="center" prop="cpEndTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.cpEndTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="大赛类型" align="center" prop="competitionType">
<template slot-scope="scope">
<dict-tag :options="dict.type.competition_type" :value="scope.row.competitionType"/>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['competition:competition:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['competition:competition:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改大赛信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="大赛名称" prop="competitionName">
<el-input v-model="form.competitionName" placeholder="请输入大赛名称" />
</el-form-item>
<el-form-item label="报名时间" prop="inRegDate">
<el-date-picker
format="yyyy-MM-dd HH:mm"
:picker-options="pickerOptions"
v-model="form.inRegDate"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item label="大赛时间" prop="inCpDate">
<el-date-picker
format="yyyy-MM-dd HH:mm"
:picker-options="pickerOptions"
v-model="form.inCpDate"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item label="大赛类型" prop="competitionType">
<el-radio-group v-model="form.competitionType">
<el-radio-button label="0">团队赛</el-radio-button>
<el-radio-button label="1">个人赛</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listHitCompetition, getHitCompetition, delHitCompetition, addHitCompetition, updateHitCompetition } from "@/api/hit/competition";
export default {
name: "HitCompetition",
dicts: ['competition_type'],
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
HitCompetitionList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
competitionName: null,
cpBeginTime: null,
cpEndTime: null,
regBeginTime: null,
regEndTime: null,
competitionType: null,
},
//
form: {
},
//
rules: {
competitionName: [
{ required: true, message: "大赛名称不能为空", trigger: "blur" }
],
inCpDate: [
{ required: true, message: "大赛时间不能为空", trigger: "blur" }
],
inRegDate: [
{ required: true, message: "报名时间不能为空", trigger: "blur" }
],
competitionType: [
{ required: true, message: "大赛类型不能为空", trigger: "change" }
],
},
cpDate:[],
regDate: [],
inCpDate:[],
inRegDate: [],
pickerOptions: {
disabledDate(time) {
return time.getTime() < Date.now() - 8.64e7;
}
},
};
},
created() {
this.getList();
},
methods: {
/** 查询大赛信息列表 */
getList() {
this.loading = true;
listHitCompetition(this.queryParams).then(response => {
this.HitCompetitionList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
competitionName: null,
cpBeginTime: null,
cpEndTime: null,
regBeginTime: null,
regEndTime: null,
competitionType: "0",
remark: null,
delFlag: null,
createTime: null,
createBy: null,
updateTime: null,
updateBy: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.dateToQueryDate()
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加大赛信息";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids
getHitCompetition(id).then(response => {
this.form = response.data;
this.formDateToDate()
this.open = true;
this.title = "修改大赛信息";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.dateToFromDate()
const flag = this.judgeRegTime()
if (flag){
if (this.form.id != null) {
updateHitCompetition(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addHitCompetition(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('该操作不可逆转,是否确认删除?').then(function() {
return delHitCompetition(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('hit/hitCompetition/export', {
...this.queryParams
}, `HitCompetition_${new Date().getTime()}.xlsx`)
},
dateToQueryDate(){
if (this.cpDate !== null && this.cpDate.length !== 0){
[this.queryParams.cpBeginTime, this.queryParams.cpEndTime] = this.cpDate
this.queryParams.cpBeginTime = this.formatTimer(this.queryParams.cpBeginTime)
this.queryParams.cpEndTime = this.formatTimer(this.queryParams.cpEndTime)
}
if (this.regDate !== null && this.regDate.length !== 0){
[this.queryParams.regBeginTime, this.queryParams.regEndTime] = this.regDate
this.queryParams.regBeginTime = this.formatTimer(this.queryParams.regBeginTime)
this.queryParams.regEndTime = this.formatTimer(this.queryParams.regEndTime)
}
},
dateToFromDate(){
[this.form.cpBeginTime, this.form.cpEndTime] = this.form.inCpDate;
[this.form.regBeginTime, this.form.regEndTime] = this.form.inRegDate;
this.form.cpBeginTime = this.formatTimer(this.form.cpBeginTime)
this.form.cpEndTime = this.formatTimer(this.form.cpEndTime)
this.form.regBeginTime = this.formatTimer(this.form.regBeginTime)
this.form.regEndTime = this.formatTimer(this.form.regEndTime)
},
formDateToDate(){
this.form.inCpDate = [this.form.cpBeginTime, this.form.cpEndTime];
this.form.inRegDate = [this.form.regBeginTime, this.form.regEndTime];
},
judgeRegTime(){
if (this.form.regEndTime > this.form.cpBeginTime){
this.$modal.msgError("新增失败,报名结束时间在大赛开始时间之前")
return false
}
return true
},
formatTimer: function(value) {
let date = new Date(value);
let y = date.getFullYear();
let MM = date.getMonth() + 1;
MM = MM < 10 ? "0" + MM : MM;
let d = date.getDate();
d = d < 10 ? "0" + d : d;
let h = date.getHours();
h = h < 10 ? "0" + h : h;
let m = date.getMinutes();
m = m < 10 ? "0" + m : m;
let s = date.getSeconds();
s = s < 10 ? "0" + s : s;
return y + "-" + MM + "-" + d + " " + h + ":" + m;
}
}
};
</script>
<style scoped lang="scss">
::v-deep .el-date-editor--datetimerange.el-input, .el-date-editor--datetimerange.el-input__inner{
width: 380px;
}
</style>

View File

@ -0,0 +1,351 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="110px">
<el-form-item label="学生姓名" prop="stuName">
<el-input
v-model="queryParams.stuName"
placeholder="请输入学生姓名"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="学生性别" prop="stuGender">
<el-select
v-model="queryParams.stuGender"
placeholder="内容类型"
clearable
style="width: 125px">
<el-option
v-for="dict in dict.type.sys_user_sex"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="学生专业" prop="stuMajor">
<el-input
v-model="queryParams.stuMajor"
placeholder="请输入学生专业"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="学生手机号" prop="stuNumber">
<el-input
v-model="queryParams.stuNumber"
placeholder="请输入学生手机号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="学校及院系名称" prop="schoolName">
<el-input
v-model="queryParams.schoolName"
placeholder="请输入学校及院系名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="大赛类型" prop="">
<el-select
v-model="queryParams.competitionType"
placeholder="内容类型"
clearable
style="width: 125px">
<el-option
v-for="dict in dict.type.competition_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="所属赛区" prop="division">
<el-input
v-model="queryParams.division"
placeholder="请输入所属赛区"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="团队名称" prop="teamName">
<el-input
v-model="queryParams.teamName"
placeholder="请输入团队名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="老师名称" prop="teachName">
<el-input
v-model="queryParams.teachName"
placeholder="请输入团队名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="大赛名称" prop="competitionName">
<el-input
v-model="queryParams.competitionName"
placeholder="请输入团队名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['registrationStudentInfo:registrationStudentInfo:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['registrationStudentInfo:registrationStudentInfo:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="HitRegistrationStudentInfoList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="比赛名称" align="center" prop="competitionName" />
<el-table-column label="学生姓名" align="center" prop="stuName" />
<el-table-column label="学生性别" align="center" prop="stuGender">
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_user_sex" :value="scope.row.stuGender"/>
</template>
</el-table-column>
<el-table-column label="学生专业" align="center" prop="stuMajor" />
<el-table-column label="学生手机号" align="center" prop="stuNumber" />
<el-table-column label="学校及院系名称" align="center" prop="schoolName" />
<el-table-column label="所属赛区" align="center" prop="division" />
<el-table-column label="团队名称" align="center" prop="teamName" />
<el-table-column label="领队教师" align="center" prop="leaderIds" />
<el-table-column label="指导老师" align="center" prop="guideIds" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['registrationStudentInfo:registrationStudentInfo:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import { listHitRegistrationStudentInfo, getHitRegistrationStudentInfo, delHitRegistrationStudentInfo, addHitRegistrationStudentInfo, updateHitRegistrationStudentInfo } from "@/api/hit/registrationStudentInfo";
export default {
name: "HitRegistrationStudentInfo",
dicts: ['sys_user_sex', 'competition_type'],
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
HitRegistrationStudentInfoList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
competitionName: null,
stuName: null,
stuGender: null,
stuMajor: null,
stuNumber: null,
schoolName: null,
division: null,
teamName: null,
leaderIds: null,
guideIds: null,
teachName:null,
},
//
form: {},
//
rules: {
competitionId: [
{ required: true, message: "大赛ID不能为空", trigger: "blur" }
],
stuName: [
{ required: true, message: "学生姓名不能为空", trigger: "blur" }
],
stuGender: [
{ required: true, message: "学生性别不能为空", trigger: "blur" }
],
stuMajor: [
{ required: true, message: "学生专业不能为空", trigger: "blur" }
],
stuNumber: [
{ required: true, message: "学生手机号不能为空", trigger: "blur" }
],
schoolName: [
{ required: true, message: "学校及院系名称不能为空", trigger: "blur" }
],
division: [
{ required: true, message: "所属赛区不能为空", trigger: "blur" }
],
delFlag: [
{ required: true, message: "逻辑删除0未删除1真删除不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询报名信息列表 */
getList() {
this.loading = true;
listHitRegistrationStudentInfo(this.queryParams).then(response => {
this.HitRegistrationStudentInfoList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
competitionId: null,
stuName: null,
stuGender: null,
stuMajor: null,
stuNumber: null,
schoolName: null,
division: null,
teamName: null,
leaderIds: null,
guideIds: null,
remark: null,
delFlag: null,
createTime: null,
createBy: null,
updateTime: null,
updateBy: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加报名信息";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids
getHitRegistrationStudentInfo(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改报名信息";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updateHitRegistrationStudentInfo(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addHitRegistrationStudentInfo(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除报名信息编号为"' + ids + '"的数据项?').then(function() {
return delHitRegistrationStudentInfo(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('registrationStudentInfo/registrationStudentInfo/export', {
...this.queryParams
}, `HitRegistrationStudentInfo_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@ -4,9 +4,11 @@
<div class="tab-box">
<!-- left -->
<div class="d-s">
<div class="logo-box"></div>
<div class="logo-box">
<img :src="baseInfo.webImg" />
</div>
<div class="logo-size">
虚拟仿真实验教学中心
{{ this.baseInfo.webName }}
</div>
</div>
<!-- tab -->
@ -163,29 +165,31 @@
<div class="footer">
<div class="logo">
<div class="d-s">
<div class="logo-box"></div>
<div class="logo-box">
<img :src="baseInfo.webImg" />
</div>
<div class="logo-size">
虚拟仿真实验教学中心
{{this.baseInfo.webName}}
</div>
</div>
<div class="footer-contact">
<div class="p">
<img src="../assets/gw/tel.png" alt="">
<div class="pp">电话0000-00000000</div>
<div class="pp">电话{{this.baseInfo.contactNumber}}</div>
</div>
<div class="p">
<img src="../assets/gw/email.png" alt="">
<div class="pp">邮箱XXXXXXXXXXX@163.com</div>
<div class="pp">邮箱{{this.baseInfo.contactEmail}}</div>
</div>
<div class="p">
<img src="../assets/gw/address.png" alt="">
<div class="pp">地址黑龙江省哈尔滨市南岗区西大直街92号</div>
<div class="pp">地址{{ this.baseInfo.address }}</div>
</div>
@ -200,8 +204,8 @@
</div>
<div class="web_icp">
<div class="left">
<a href="">版权所有XXXXXX</a>
<a href="">版权所有XXXXXX</a>
<a href="">版权所有{{ this.baseInfo.copyrightInfo }}</a>
<a href="">备案信息{{ this.baseInfo.recordInfo }}</a>
</div>
<div class="right">
<div class="">返回顶部</div>
@ -217,7 +221,7 @@
<script>
import {Swiper, SwiperSlide} from "vue-awesome-swiper";
import "swiper/css/swiper.min.css";
import {getTab, getbanner} from "@/api/gw/home";
import {getTab, getbanner, getBaseInfo} from "@/api/gw/home";
export default {
components: {
@ -230,6 +234,7 @@ export default {
},
data() {
return {
baseInfo:"",
categoryQuery: {
categoryId: "",
pageNum: 1,
@ -331,6 +336,7 @@ export default {
mounted() {
//
this.tabLsit();
this.getWebBaseInfo()
},
computed: {
customswiper() {
@ -385,6 +391,12 @@ export default {
}
})
},
getWebBaseInfo() {
getBaseInfo().then(res => {
this.baseInfo = res.data
this.baseInfo.webImg = process.env.VUE_APP_BASE_API + this.baseInfo.webImg
})
}
}
}
@ -428,6 +440,10 @@ export default {
height: 50px;
background: #fff;
}
.logo-box img{
width: 50px;
height: 50px;
}
.logo-size {
font-weight: 800;