From 7a0f0c2268077c13891c552b6f96e60ed66a3e59 Mon Sep 17 00:00:00 2001 From: wuyibo <771227828@qq.com> Date: Fri, 11 Nov 2022 11:20:14 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B5=9B=E4=BC=9A=E9=80=89=E6=8B=A9=E7=90=83?= =?UTF-8?q?=E9=98=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CompetitionOfTeamController.java | 14 +- .../system/domain/vo/CompetitionOfTeamVo.java | 16 ++ .../mapper/CompetitionOfTeamMapper.java | 3 +- .../service/ICompetitionOfTeamService.java | 10 +- .../impl/CompetitionOfTeamServiceImpl.java | 13 +- .../mapper/system/CompetitionOfTeamMapper.xml | 42 +++-- .../src/views/system/competitionSet/index.vue | 153 +++++++++++++++++- 7 files changed, 219 insertions(+), 32 deletions(-) create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CompetitionOfTeamVo.java diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionOfTeamController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionOfTeamController.java index 11c17719..f3a30e6c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionOfTeamController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CompetitionOfTeamController.java @@ -3,6 +3,8 @@ package com.ruoyi.system.controller; import java.util.List; import java.io.IOException; import javax.servlet.http.HttpServletResponse; + +import com.ruoyi.system.domain.vo.CompetitionOfTeamVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -40,10 +42,10 @@ public class CompetitionOfTeamController extends BaseController */ @RequiresPermissions("system:competitionOfTeam:list") @GetMapping("/list") - public TableDataInfo list(CompetitionOfTeam competitionOfTeam) + public TableDataInfo list(CompetitionOfTeamVo competitionOfTeam) { startPage(); - List list = competitionOfTeamService.selectCompetitionOfTeamList(competitionOfTeam); + List list = competitionOfTeamService.selectCompetitionOfTeamList(competitionOfTeam); return getDataTable(list); } @@ -91,7 +93,13 @@ public class CompetitionOfTeamController extends BaseController { return toAjax(competitionOfTeamService.updateCompetitionOfTeam(competitionOfTeam)); } - + @RequiresPermissions("system:competitionOfTeam:batchEditById") + @Log(title = "赛会中-参赛队伍", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult batchEditById(@RequestBody List list) + { + return toAjax(competitionOfTeamService.batchUpdateCompetitionOfTeam(list)); + } /** * 删除赛会中-参赛队伍 */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CompetitionOfTeamVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CompetitionOfTeamVo.java new file mode 100644 index 00000000..12cf4348 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/CompetitionOfTeamVo.java @@ -0,0 +1,16 @@ +package com.ruoyi.system.domain.vo; + +import com.ruoyi.system.domain.CompetitionOfTeam; +import lombok.Data; + +/** + * @author 吴一博 + * @date 2022年11月11日 11:12 + * @Description + */ +@Data +public class CompetitionOfTeamVo extends CompetitionOfTeam { + /** 球队logo */ + private String teamLogo; + private String defaultPicture; +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionOfTeamMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionOfTeamMapper.java index e9001463..47dafe9e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionOfTeamMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CompetitionOfTeamMapper.java @@ -2,6 +2,7 @@ package com.ruoyi.system.mapper; import java.util.List; import com.ruoyi.system.domain.CompetitionOfTeam; +import com.ruoyi.system.domain.vo.CompetitionOfTeamVo; /** * 赛会中-参赛队伍Mapper接口 @@ -25,7 +26,7 @@ public interface CompetitionOfTeamMapper * @param competitionOfTeam 赛会中-参赛队伍 * @return 赛会中-参赛队伍集合 */ - public List selectCompetitionOfTeamList(CompetitionOfTeam competitionOfTeam); + public List selectCompetitionOfTeamList(CompetitionOfTeam competitionOfTeam); /** * 新增赛会中-参赛队伍 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionOfTeamService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionOfTeamService.java index 86039186..f7902633 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionOfTeamService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICompetitionOfTeamService.java @@ -2,6 +2,7 @@ package com.ruoyi.system.service; import java.util.List; import com.ruoyi.system.domain.CompetitionOfTeam; +import com.ruoyi.system.domain.vo.CompetitionOfTeamVo; /** * 赛会中-参赛队伍Service接口 @@ -25,7 +26,7 @@ public interface ICompetitionOfTeamService * @param competitionOfTeam 赛会中-参赛队伍 * @return 赛会中-参赛队伍集合 */ - public List selectCompetitionOfTeamList(CompetitionOfTeam competitionOfTeam); + public List selectCompetitionOfTeamList(CompetitionOfTeam competitionOfTeam); /** * 新增赛会中-参赛队伍 @@ -42,6 +43,13 @@ public interface ICompetitionOfTeamService * @return 结果 */ public int updateCompetitionOfTeam(CompetitionOfTeam competitionOfTeam); + /** + * 修改赛会中-参赛队伍 + * + * @param list 赛会中-参赛队伍 + * @return 结果 + */ + public int batchUpdateCompetitionOfTeam(List list); /** * 批量删除赛会中-参赛队伍 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionOfTeamServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionOfTeamServiceImpl.java index fc83e2eb..9c1641ca 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionOfTeamServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CompetitionOfTeamServiceImpl.java @@ -1,6 +1,8 @@ package com.ruoyi.system.service.impl; import java.util.List; + +import com.ruoyi.system.domain.vo.CompetitionOfTeamVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.system.mapper.CompetitionOfTeamMapper; @@ -38,7 +40,7 @@ public class CompetitionOfTeamServiceImpl implements ICompetitionOfTeamService * @return 赛会中-参赛队伍 */ @Override - public List selectCompetitionOfTeamList(CompetitionOfTeam competitionOfTeam) + public List selectCompetitionOfTeamList(CompetitionOfTeam competitionOfTeam) { return competitionOfTeamMapper.selectCompetitionOfTeamList(competitionOfTeam); } @@ -67,6 +69,15 @@ public class CompetitionOfTeamServiceImpl implements ICompetitionOfTeamService return competitionOfTeamMapper.updateCompetitionOfTeam(competitionOfTeam); } + @Override + public int batchUpdateCompetitionOfTeam(List list) { + for (int i = 0; i < list.size(); i++) { + CompetitionOfTeam team = list.get(i); + competitionOfTeamMapper.updateCompetitionOfTeam(team); + } + return 1; + } + /** * 批量删除赛会中-参赛队伍 * diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionOfTeamMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionOfTeamMapper.xml index 6120fa77..81b8bcff 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionOfTeamMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CompetitionOfTeamMapper.xml @@ -26,32 +26,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, competition_id, team_id, team_name, competition_group, created_time, status, last_updated_time, created_by, modified_by, is_deleted, remark, contacts, contacts_tel, contacts_area_code, serial_number from competition_of_team - - - - + + insert into competition_of_team diff --git a/ruoyi-ui/src/views/system/competitionSet/index.vue b/ruoyi-ui/src/views/system/competitionSet/index.vue index 48380fa3..00322f91 100644 --- a/ruoyi-ui/src/views/system/competitionSet/index.vue +++ b/ruoyi-ui/src/views/system/competitionSet/index.vue @@ -117,7 +117,7 @@ type="primary" plain icon="el-icon-plus" - @click="handleAdd" + @click="handleAddGroup" v-hasPermi="['system:competition:add']" >新增分组 @@ -132,7 +132,7 @@ @@ -140,7 +140,7 @@ 分组球队-{{currentGroupRow.competitionGroup}}组 - 新增球队 + 新增球队 @@ -215,6 +215,52 @@ + + + + + + 组 + + 取 消 + 确 定 + + + + + + + + + + + + + + + 取 消 + 确 定 + + @@ -223,7 +269,6 @@ import { listCompetition, getCompetition, delCompetition, addCompetition, update import { listCompetitionOfTeam, getCompetitionOfTeam, delCompetitionOfTeam, addCompetitionOfTeam, 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"; - export default { name: "CompetitionSet", dicts: ['competition_status'], @@ -243,10 +288,16 @@ export default { competitionTeamGroupList:[], //已经分组的球队数据 alreadyGroupTeamList: [], + selectTeamList:[], // 弹出层标题 title: "", // 是否显示弹出层 open: false, + groupNumbers:[], + addGroupCode:"", + addGroupDialogVisible:false, + addTeamDialogVisible:false, + teamMultipleSelection:[], // 查询参数 }; }, @@ -273,6 +324,100 @@ export default { this.loading = false; }); }, + //点击新增分组按钮 + handleAddGroup(){ + //循环获取0-25的组的数据值 + for (let i = 0; i < 26; i++) { + let groupList = {"value":String.fromCharCode(65+i),"label":String.fromCharCode(65+i)} + this.groupNumbers[i] = groupList; + } + this.addGroupDialogVisible=true; + }, + //新增分组保存 + addGroupIsOk(){ + if(this.addGroupCode) { + addCompetitionTeamGroup({ + "status": 1, + "competitionId": this.competitionObj.id, + "competitionGroup": this.addGroupCode + }).then(response => { + this.$message({ + message: '恭喜你,新增分组成功', + type: 'success' + }); + this.addGroupDialogVisible=false; + listCompetitionTeamGroup({"pageNum": 1, "pageSize": 1000,"competitionId":this.competitionObj.id}).then(response => { + this.competitionTeamGroupList = response.rows; + this.competitionTeamGroupList.push({"competitionGroup":"未分","id":null}) + }); + }); + }else { + this.$message({ + showClose: true, + message: '请选择分组值', + type: 'warning' + }); + } + }, + //删除分组 + delGroup(row){ + console.info(row) + listCompetitionOfTeam({"pageNum": 1, "pageSize": 1000,"competitionId":this.competitionObj.id,"competitionGroup":row.competitionGroup}).then(response => { + if(response.rows.length>0){ + this.$message({ + showClose: true, + message: '当前分组下已有球队数据,请删除分组下的球队数据后再做删除分组操作', + type: 'warning' + }); + }else { + const id = row.id; + this.$modal.confirm('是否确认删除赛会中分组数据为"' + row.competitionGroup + '"的数据?').then(function() { + return delCompetitionTeamGroup(id); + }).then(() => { + listCompetitionTeamGroup({"pageNum": 1, "pageSize": 1000,"competitionId":this.competitionObj.id}).then(response => { + this.competitionTeamGroupList = response.rows; + this.competitionTeamGroupList.push({"competitionGroup":"未分","id":null}) + }); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + } + }); + }, + addTeamDialog(row){ + console.info(row) + this.addTeamDialogVisible = true + listCompetitionOfTeam({"pageNum": 1, "pageSize": 1000,"competitionId":this.competitionObj.id}).then(response => { + let newArr = response.rows.filter(item => !item.competitionGroup); + this.selectTeamList = newArr; + }); + }, + handleSelectionTeamChange(val){ + for (let i = 0;i { + + }); + } + }, // 取消按钮 cancel() { this.open = false;