From f080128a5a30c5cf4aab9ed628162319d84aed93 Mon Sep 17 00:00:00 2001 From: wuyibo <771227828@qq.com> Date: Sat, 12 Nov 2022 21:34:36 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=9B=E4=BC=9A=E8=87=AA=E5=8A=A8=E6=8E=92?= =?UTF-8?q?=E7=8F=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/constant/CacheConstants.java | 5 + .../CompetitionTeamGroupController.java | 10 +- .../system/domain/vo/BegerArrangementVo.java | 16 + .../mapper/CompetitionTeamVsTeamMapper.java | 7 + .../service/ICompetitionTeamGroupService.java | 3 + .../impl/CompetitionTeamGroupServiceImpl.java | 93 +++++- .../system/utils/BegerSingleCycleUtil.java | 281 ++++++++++++++++++ .../system/CompetitionTeamVsTeamMapper.xml | 20 ++ .../src/api/system/competitionTeamGroup.js | 9 + .../src/views/system/competitionSet/index.vue | 14 +- 10 files changed, 451 insertions(+), 7 deletions(-) create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/BegerArrangementVo.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/utils/BegerSingleCycleUtil.java diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheConstants.java index 38e556b0..20971d35 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheConstants.java @@ -51,4 +51,9 @@ public class CacheConstants * 登录账户密码错误次数 redis key */ public static final String PWD_ERR_CNT_KEY = "pwd_err_cnt:"; + + /** + * 存放赛程循环赛的锁的key + */ + public static final String ARRANGE_TEAM_GROUP_SCHEDULE="arrange:team:group:schedule:"; } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionTeamGroupController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionTeamGroupController.java index 6876cb97..ad6b84ad 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionTeamGroupController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionTeamGroupController.java @@ -1,8 +1,8 @@ package com.ruoyi.system.controller; import java.util.List; -import java.io.IOException; import javax.servlet.http.HttpServletResponse; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -91,7 +91,13 @@ public class CompetitionTeamGroupController extends BaseController { return toAjax(competitionTeamGroupService.updateCompetitionTeamGroup(competitionTeamGroup)); } - + @RequiresPermissions("system:competitionTeamGroup:arrangeTeamGroupSchedule") + @Log(title = "赛会中-一键编排分组内的球队的单组循环赛赛程", businessType = BusinessType.OTHER) + @PostMapping("/arrangeTeamGroupSchedule") + public AjaxResult arrangeTeamGroupSchedule(@RequestBody CompetitionTeamGroup competitionTeamGroup) + { + return toAjax(competitionTeamGroupService.arrangeTeamGroupSchedule(competitionTeamGroup)); + } /** * 删除赛会中-分组 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/BegerArrangementVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/BegerArrangementVo.java new file mode 100644 index 00000000..912614b3 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/BegerArrangementVo.java @@ -0,0 +1,16 @@ +package com.ruoyi.system.domain.vo; +import com.ruoyi.system.domain.CompetitionTeamVsTeam; +import lombok.Getter; +import lombok.Setter; + +import java.util.List; + +/** + * 循环赛实体类 + */ +@Setter +@Getter +public class BegerArrangementVo { + private Integer round; + private List vsTeamList; +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionTeamVsTeamMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionTeamVsTeamMapper.java index fd347b06..0f637465 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionTeamVsTeamMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionTeamVsTeamMapper.java @@ -59,4 +59,11 @@ public interface CompetitionTeamVsTeamMapper * @return 结果 */ public int deleteCompetitionTeamVsTeamByIds(Long[] ids); + /** + * 批量删除赛会中-球队VS球队关系 + * + * @param teamVsTeam 需要删除的数据条件 + * @return 结果 + */ + public int updateCompetitionTeamVsTeamByCondition(CompetitionTeamVsTeam teamVsTeam); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionTeamGroupService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionTeamGroupService.java index 3205dff4..84e6e57e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionTeamGroupService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionTeamGroupService.java @@ -1,6 +1,7 @@ package com.ruoyi.system.service; import java.util.List; + import com.ruoyi.system.domain.CompetitionTeamGroup; /** @@ -58,4 +59,6 @@ public interface ICompetitionTeamGroupService * @return 结果 */ public int deleteCompetitionTeamGroupById(Long id); + //赛会中-一键编排分组内的球队的单组循环赛赛程 + public Boolean arrangeTeamGroupSchedule(CompetitionTeamGroup competitionTeamGroup); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionTeamGroupServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionTeamGroupServiceImpl.java index 3914cf01..69f25dbf 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionTeamGroupServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionTeamGroupServiceImpl.java @@ -1,11 +1,29 @@ package com.ruoyi.system.service.impl; -import java.util.List; +import java.util.*; +import java.util.concurrent.TimeUnit; + +import com.ruoyi.common.core.constant.CacheConstants; +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.redis.service.RedisService; +import com.ruoyi.system.domain.Competition; +import com.ruoyi.system.domain.CompetitionOfTeam; +import com.ruoyi.system.domain.CompetitionTeamVsTeam; +import com.ruoyi.system.domain.vo.BegerArrangementVo; +import com.ruoyi.system.domain.vo.CompetitionOfTeamVo; +import com.ruoyi.system.domain.vo.CompetitionTeamVsTeamVo; +import com.ruoyi.system.mapper.CompetitionMapper; +import com.ruoyi.system.mapper.CompetitionOfTeamMapper; +import com.ruoyi.system.mapper.CompetitionTeamVsTeamMapper; +import com.ruoyi.system.utils.BegerSingleCycleUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.system.mapper.CompetitionTeamGroupMapper; import com.ruoyi.system.domain.CompetitionTeamGroup; import com.ruoyi.system.service.ICompetitionTeamGroupService; +import org.springframework.util.StringUtils; + +import javax.annotation.Resource; /** * 赛会中-分组Service业务层处理 @@ -16,9 +34,16 @@ import com.ruoyi.system.service.ICompetitionTeamGroupService; @Service public class CompetitionTeamGroupServiceImpl implements ICompetitionTeamGroupService { - @Autowired + @Resource private CompetitionTeamGroupMapper competitionTeamGroupMapper; - + @Resource + private RedisService redisService; + @Resource + private CompetitionMapper competitionMapper; + @Resource + private CompetitionOfTeamMapper competitionOfTeamMapper; + @Resource + private CompetitionTeamVsTeamMapper competitionTeamVsTeamMapper; /** * 查询赛会中-分组 * @@ -90,4 +115,66 @@ public class CompetitionTeamGroupServiceImpl implements ICompetitionTeamGroupSer { return competitionTeamGroupMapper.deleteCompetitionTeamGroupById(id); } + + @Override + public Boolean arrangeTeamGroupSchedule(CompetitionTeamGroup competitionTeamGroup) { + //todo 加锁防止重复的点编排赛程 + Object isLock = redisService.getCacheObject(CacheConstants.ARRANGE_TEAM_GROUP_SCHEDULE + competitionTeamGroup.getId()); + if(!StringUtils.isEmpty(isLock)){ + throw new ServiceException("系统正在努力的对当前分组的球队进行赛程编排,请稍等片刻"); + }else { + Boolean bool =false; + CompetitionTeamGroup teamGroup = competitionTeamGroupMapper.selectCompetitionTeamGroupById(competitionTeamGroup.getId()); + if(teamGroup.getIsCycle().intValue()==1){ + throw new ServiceException("当前分组中的球队已经编排过了。无需重复操作"); + } + //获取比赛时间 + Competition competition = competitionMapper.selectCompetitionById(teamGroup.getCompetitionId()); + Date competitionBeginTime = competition.getCompetitionBeginTime(); + Calendar calendar = new GregorianCalendar(); + calendar.setTime(competitionBeginTime); + calendar.add(Calendar.DATE,1); //把日期往后增加一天,整数 往后推,负数往前移动 + //按报名优先级来排序 + CompetitionOfTeam ofTeam = new CompetitionOfTeam(); + ofTeam.setCompetitionId(teamGroup.getCompetitionId()); + ofTeam.setCompetitionGroup(teamGroup.getCompetitionGroup()); + ofTeam.setIsDeleted(0L); + List groupTeamList = competitionOfTeamMapper.selectCompetitionOfTeamList(ofTeam); + //todo 对球队做循环赛算法 + if(groupTeamList.size()>0) { + List allList = new ArrayList<>(); + List vsListVo = BegerSingleCycleUtil.begerSingleCycle(groupTeamList); + for (BegerArrangementVo vo:vsListVo){ + List vsTeams = vo.getVsTeamList(); + calendar.add(Calendar.DATE,1); + for(CompetitionTeamVsTeam teamVsTeam:vsTeams){ + teamVsTeam.setCompetitionTime(calendar.getTime()); + competitionTeamVsTeamMapper.insertCompetitionTeamVsTeam(teamVsTeam); + } + allList.addAll(vsTeams); + } + //System.out.println(JSON.toJSONString(allList)); + if(allList.size()>0) { + //todo 如果status = 1 表示 分组内的赛程重新编排,需要删除原来的 + if(!StringUtils.isEmpty(competitionTeamGroup.getStatus())){ + if(competitionTeamGroup.getStatus().intValue() == 1 ){ + CompetitionTeamVsTeam competitionTeamVsTeam = new CompetitionTeamVsTeam(); + competitionTeamVsTeam.setCompetitionId(teamGroup.getCompetitionId()); + competitionTeamVsTeam.setCompetitionGroup(teamGroup.getCompetitionGroup()); + competitionTeamVsTeam.setVsType("循环赛"); + competitionTeamVsTeamMapper.updateCompetitionTeamVsTeamByCondition(competitionTeamVsTeam); + } + } + } + CompetitionTeamGroup teamGroup2 = new CompetitionTeamGroup(); + teamGroup2.setId(teamGroup.getId()); + teamGroup2.setIsCycle(1L); + competitionTeamGroupMapper.updateCompetitionTeamGroup(teamGroup2); + }else { + throw new ServiceException("当前分组中暂无球队数据"); + } + redisService.setCacheObject(CacheConstants.ARRANGE_TEAM_GROUP_SCHEDULE+competitionTeamGroup.getId(),true,10L, TimeUnit.SECONDS); + } + return Boolean.TRUE; + } } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/utils/BegerSingleCycleUtil.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/utils/BegerSingleCycleUtil.java new file mode 100644 index 00000000..13321024 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/utils/BegerSingleCycleUtil.java @@ -0,0 +1,281 @@ +package com.ruoyi.system.utils; + +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.system.domain.CompetitionOfTeam; +import com.ruoyi.system.domain.CompetitionTeamVsTeam; +import com.ruoyi.system.domain.vo.BegerArrangementVo; +import com.ruoyi.system.domain.vo.CompetitionOfTeamVo; +import org.springframework.util.StringUtils; + +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * 单循环比赛的"贝格尔"编排法 工具类 + */ +public class BegerSingleCycleUtil { + /** + * 单循环比赛的"贝格尔"编排法 + */ + public void begerSingleCycle1(int team_Num){ + // int team_Num;//队伍的数量 + int team_Arr[];//队伍数组 + int team_temp[]; + boolean empty=false;//是否有轮空 + int jump;//调动幅度 + int round;//比赛轮数 + int flag;//标志,队伍的最大的,或者0,其他队伍在移动的时候,如果碰到他,将跳过 + int tempNum,tempNum1;//队伍在迭代时候保存临时变量的东西 + //--------------------初始化一些数据 + // Scanner cin = new Scanner(System.in); + System.out.print("输入队伍的数量: "+team_Num); + + // team_Num = cin.nextInt(); + if(team_Num%2 != 0)//队伍个数为奇数时 + { + empty = true; + team_Num++; + } + round = team_Num-1; + jump = ((team_Num+1)/2)-1; + team_Arr = new int[team_Num]; + team_temp = new int[team_Num]; + for(int i = 0;i< team_Num;i++){ + team_Arr[i] = i+1; + } + if(empty) + { + team_Arr[team_Num-1]=0; + } + flag = team_Num-1; + //---------------------开始计算了-------------- + for(int j = 0;j< round;j++) + { + System.out.println("第"+(j+1)+"轮:"); + for(int m = 0;m< team_Num/2;m++) + { + System.out.println(team_Arr[m]+"----"+team_Arr[team_Num-m-1]); + } + for(int g = 0;g< team_Num;g++) + { + team_temp[g] = team_Arr[g]; + } + if(flag != 0 ) + { + tempNum = team_Arr[flag];//temp 一开始总是记录0队或者最大队伍 + flag = 0;//flag 跳动 + tempNum1 = team_Arr[flag]; + team_Arr[flag] = tempNum; + + } + else + { + tempNum =team_Arr[flag];//temp 一开始总是记录0队或者最大队伍 + tempNum1 = team_Arr[team_Num-1]; + flag = team_Num-1;//flag 跳动 + team_Arr[flag]= team_temp[flag] = tempNum; + team_Arr[0]=team_temp[0] = tempNum1; + + } + for(int k = 0;k< team_Num-1;k++)//走动 + { + int t = k; + + if(t >= team_Num) + t = t - team_Num; + int z = t; + + for(int u = 0;u< jump;u++) + { + t++; + if(t == team_Num) + t = t - team_Num; + if(t == flag) + t++; + if(t == team_Num) + t = t-team_Num; + } + + team_Arr[t] = team_temp[z];// + } + } + } + /** + * 单循环比赛的"贝格尔"编排法 + */ + public static List begerSingleCycle(List teamList){ + + Date date = new Date(); + //获取批次号 + String batchNumber = new SimpleDateFormat("yyyyMMddHHmmss").format(date); + + //遍历一遍方map 里面 + Map teamMap = new HashMap(); + Integer numbers = 0; + for (CompetitionOfTeamVo t:teamList) { + numbers++; + //System.out.println(numbers); + teamMap.put(numbers,t); + } + List begerArrangementVos = new ArrayList<>(); + // int team_Num;//队伍的数量 + int team_Arr[];//队伍数组 + int team_temp[]; + boolean empty=false;//是否有轮空 + int jump;//调动幅度 + int round;//比赛轮数 + int flag;//标志,队伍的最大的,或者0,其他队伍在移动的时候,如果碰到他,将跳过 + int tempNum,tempNum1;//队伍在迭代时候保存临时变量的东西 + //--------------------初始化一些数据 + // Scanner cin = new Scanner(System.in); + // System.out.print("输入队伍的数量: "+teamList.size()); + + + int team_Num = teamList.size(); + // team_Num = cin.nextInt(); + if(team_Num %2 != 0)//队伍个数为奇数时 + { + empty = true; + team_Num++; + } + round = team_Num-1; + jump = ((team_Num+1)/2)-1; + team_Arr = new int[team_Num]; + team_temp = new int[team_Num]; + for(int i = 0;i< team_Num;i++){ + team_Arr[i] = i+1; + } + if(empty) + { + team_Arr[team_Num-1]=0; + } + flag = team_Num-1; + //---------------------开始计算了-------------- + for(int j = 0;j< round;j++) + { + BegerArrangementVo vo = new BegerArrangementVo(); + vo.setRound(j+1); + System.out.println("第"+(j+1)+"轮:"); + List vsTeamList = new ArrayList<>(); + for(int m = 0;m< team_Num/2;m++) + { + CompetitionTeamVsTeam vs = new CompetitionTeamVsTeam(); + System.out.println(team_Arr[m]+"----"+team_Arr[team_Num-m-1]); + int mainIdx = team_Arr[m]; + int guestIdx = team_Arr[team_Num-m-1]; + //todo "0" 表示 轮空;不计入赛程 + if(mainIdx>0&&guestIdx>0) { + CompetitionOfTeam mainTeam = teamMap.get(mainIdx); + CompetitionOfTeam guestTeam = teamMap.get(guestIdx); + if (StringUtils.isEmpty(mainTeam)) { + throw new ServiceException("球队分组数据的序号{}有误,匹配失败", mainIdx); + } + if (StringUtils.isEmpty(guestTeam)) { + throw new ServiceException("球队分组数据的序号{}有误,匹配失败", guestIdx); + } + //设置球队值 + vs.setMainTeamName(mainTeam.getTeamName()); + vs.setMainTeamId(mainTeam.getTeamId()); + + vs.setGuestTeamId(guestTeam.getTeamId()); + vs.setGuestTeamName(guestTeam.getTeamName()); + + vs.setVsType("循环赛"); + vs.setCompetitionId(mainTeam.getCompetitionId()); + vs.setCompetitionGroup(mainTeam.getCompetitionGroup()); + vs.setBatchNumber(batchNumber); + vsTeamList.add(vs); + } + } + vo.setVsTeamList(vsTeamList); + + begerArrangementVos.add(vo); + + for(int g = 0;g< team_Num;g++) + { + team_temp[g] = team_Arr[g]; + } + if(flag != 0 ) + { + tempNum = team_Arr[flag];//temp 一开始总是记录0队或者最大队伍 + flag = 0;//flag 跳动 + tempNum1 = team_Arr[flag]; + team_Arr[flag] = tempNum; + + } + else + { + tempNum =team_Arr[flag];//temp 一开始总是记录0队或者最大队伍 + tempNum1 = team_Arr[team_Num-1]; + flag = team_Num-1;//flag 跳动 + team_Arr[flag]= team_temp[flag] = tempNum; + team_Arr[0]=team_temp[0] = tempNum1; + + } + for(int k = 0;k< team_Num-1;k++)//走动 + { + int t = k; + + if(t >= team_Num) + t = t - team_Num; + int z = t; + + for(int u = 0;u< jump;u++) + { + t++; + if(t == team_Num) + t = t - team_Num; + if(t == flag) + t++; + if(t == team_Num) + t = t-team_Num; + } + + team_Arr[t] = team_temp[z];// + } + } + return begerArrangementVos; + } + /** + * 简化后的方法 + * @param team_Num + */ + public void begerSimplifySingleCycle(int team_Num){ + int n,m; + System.out.print("输入队伍的数量: "+team_Num); + n= team_Num; + if(n%2==0) m=n; + else m=n+1; + int a=1,b=1,index=1,loop=0; + for(int i=1; i<=(m-1)*(m/2); i++) + { + if(a>=m) a=1; + if(index>m/2) index=1; + if(index==1){ + loop++; + if(i==1){ + b=m; + }else{ + b=a; + } + System.out.println("第"+loop+"轮");; + if(((i-1)/(m/2))%2==0){ + System.out.println(a+"--"+m); + }else{ + System.out.println(m+"--"+a); + } + }else if(index>1 && index<=m/2){ + if(b>1) b--; + else b=m-1; + System.out.println(a+"--"+b); + } + index++; + a++; + } + } + public static void main(String args[]){ + BegerSingleCycleUtil util= new BegerSingleCycleUtil(); + // util.begerSingleCycle(4); + // util.begerSimplifySingleCycle(4); + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionTeamVsTeamMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionTeamVsTeamMapper.xml index 8a845e4d..f7fcb041 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionTeamVsTeamMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionTeamVsTeamMapper.xml @@ -144,6 +144,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where id = #{id} + + update competition_team_vs_team set is_deleted = 1 + + and competition_id = #{competitionId} + and main_team_id = #{mainTeamId} + and main_team_name like concat('%', #{mainTeamName}, '%') + and guest_team_id = #{guestTeamId} + and guest_team_name like concat('%', #{guestTeamName}, '%') + and competition_time = #{competitionTime} + and building_id = #{buildingId} + and building_name like concat('%', #{buildingName}, '%') + and competition_address = #{competitionAddress} + and competition_group = #{competitionGroup} + and status = #{status} + and last_updated_time = #{lastUpdatedTime} + and vs_type = #{vsType} + and batch_number = #{batchNumber} + + delete from competition_team_vs_team where id = #{id} @@ -155,4 +174,5 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id} + \ No newline at end of file diff --git a/ruoyi-ui/src/api/system/competitionTeamGroup.js b/ruoyi-ui/src/api/system/competitionTeamGroup.js index 7a677bfd..52d35fd8 100644 --- a/ruoyi-ui/src/api/system/competitionTeamGroup.js +++ b/ruoyi-ui/src/api/system/competitionTeamGroup.js @@ -25,6 +25,15 @@ export function addCompetitionTeamGroup(data) { data: data }) } +// 赛会中-分组下一键自动排循环赛 +export function arrangeTeamGroupSchedule(data) { + return request({ + url: '/system/competitionTeamGroup/arrangeTeamGroupSchedule', + method: 'post', + data: data + }) +} + // 修改赛会中-分组 export function updateCompetitionTeamGroup(data) { diff --git a/ruoyi-ui/src/views/system/competitionSet/index.vue b/ruoyi-ui/src/views/system/competitionSet/index.vue index 7f443538..df3db8ba 100644 --- a/ruoyi-ui/src/views/system/competitionSet/index.vue +++ b/ruoyi-ui/src/views/system/competitionSet/index.vue @@ -57,6 +57,11 @@ max-height="800" v-loading="loading" :data="competitionOfTeamList" @selection-change="handleSelectionChange"> + + + @@ -148,6 +153,11 @@ + + + @@ -417,7 +427,7 @@ import { listCompetition, getCompetition, delCompetition, addCompetition, updateCompetition } from "@/api/system/competition"; import { listCompetitionOfTeam, batchEditById, intoTeamGroup, removeTeamGroup, updateCompetitionOfTeam } from "@/api/system/competitionOfTeam"; import { listCompetitionMembers, getCompetitionMembers, delCompetitionMembers, addCompetitionMembers, updateCompetitionMembers } from "@/api/system/competitionMembers"; -import { listCompetitionTeamGroup, getCompetitionTeamGroup, delCompetitionTeamGroup, addCompetitionTeamGroup, updateCompetitionTeamGroup } from "@/api/system/competitionTeamGroup"; +import { listCompetitionTeamGroup, arrangeTeamGroupSchedule, delCompetitionTeamGroup, addCompetitionTeamGroup, updateCompetitionTeamGroup } from "@/api/system/competitionTeamGroup"; import { listCompetitionTeamVsTeam, getCompetitionTeamVsTeam, delCompetitionTeamVsTeam, addCompetitionTeamVsTeam, updateCompetitionTeamVsTeam } from "@/api/system/competitionTeamVsTeam"; import { listWxBuilding, getWxBuilding, delWxBuilding, addWxBuilding, updateWxBuilding } from "@/api/system/WxBuilding"; @@ -740,7 +750,7 @@ export default { this.vsTitle = "新增赛程" }, handleMindTeamVsTeam(){ - + /*arrangeTeamGroupSchedule({})*/ }, changeMainTeamName(val){ let obj={}