diff --git a/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta b/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta index 6add40a..5ddd320 100644 Binary files a/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta and b/minio_data/.minio.sys/buckets/.bloomcycle.bin/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta b/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta index c65b93f..a1fdf62 100644 Binary files a/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta and b/minio_data/.minio.sys/buckets/.usage-cache.bin.bkp/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta b/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta index 9938647..762b396 100644 Binary files a/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta and b/minio_data/.minio.sys/buckets/.usage-cache.bin/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/.usage.json/xl.meta b/minio_data/.minio.sys/buckets/.usage.json/xl.meta index 870dbfd..ba2f4f5 100644 Binary files a/minio_data/.minio.sys/buckets/.usage.json/xl.meta and b/minio_data/.minio.sys/buckets/.usage.json/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta index 6519017..d55a08d 100644 Binary files a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta and b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin.bkp/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta index 730103d..ab97096 100644 Binary files a/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta and b/minio_data/.minio.sys/buckets/000000-assets/.usage-cache.bin/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta index ab17669..a71a90c 100644 Binary files a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta and b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin.bkp/xl.meta differ diff --git a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta index 14a35d9..b41effe 100644 Binary files a/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta and b/minio_data/.minio.sys/buckets/assets/.usage-cache.bin/xl.meta differ diff --git a/src/main/java/org/springblade/modules/martial/controller/MartialTeamController.java b/src/main/java/org/springblade/modules/martial/controller/MartialTeamController.java index a019301..9a41dca 100644 --- a/src/main/java/org/springblade/modules/martial/controller/MartialTeamController.java +++ b/src/main/java/org/springblade/modules/martial/controller/MartialTeamController.java @@ -42,10 +42,16 @@ public class MartialTeamController extends BladeController { @Operation(summary = "保存", description = "新增或修改集体") public R submit(@RequestBody TeamSubmitDTO dto) { MartialTeam team = new MartialTeam(); + team.setId(dto.getId()); team.setTeamName(dto.getTeamName()); team.setRemark(dto.getRemark()); - boolean result = teamService.saveTeamWithMembers(team, dto.getMemberIds()); + boolean result; + if (dto.getId() != null) { + result = teamService.updateTeamWithMembers(team, dto.getMemberIds()); + } else { + result = teamService.saveTeamWithMembers(team, dto.getMemberIds()); + } return R.data(result); } diff --git a/src/main/java/org/springblade/modules/martial/pojo/dto/TeamSubmitDTO.java b/src/main/java/org/springblade/modules/martial/pojo/dto/TeamSubmitDTO.java index 71273ec..a40f76e 100644 --- a/src/main/java/org/springblade/modules/martial/pojo/dto/TeamSubmitDTO.java +++ b/src/main/java/org/springblade/modules/martial/pojo/dto/TeamSubmitDTO.java @@ -9,6 +9,9 @@ import java.util.List; @Schema(description = "集体提交DTO") public class TeamSubmitDTO { + @Schema(description = "集体ID(更新时必填)") + private Long id; + @Schema(description = "集体名称") private String teamName; diff --git a/src/main/java/org/springblade/modules/martial/service/IMartialTeamService.java b/src/main/java/org/springblade/modules/martial/service/IMartialTeamService.java index b1a6562..aaf9fbe 100644 --- a/src/main/java/org/springblade/modules/martial/service/IMartialTeamService.java +++ b/src/main/java/org/springblade/modules/martial/service/IMartialTeamService.java @@ -14,6 +14,11 @@ public interface IMartialTeamService extends IService { */ boolean saveTeamWithMembers(MartialTeam team, List memberIds); + /** + * Update team with members + */ + boolean updateTeamWithMembers(MartialTeam team, List memberIds); + /** * Get team list with member count */ diff --git a/src/main/java/org/springblade/modules/martial/service/impl/MartialTeamServiceImpl.java b/src/main/java/org/springblade/modules/martial/service/impl/MartialTeamServiceImpl.java index 06c64e4..920e704 100644 --- a/src/main/java/org/springblade/modules/martial/service/impl/MartialTeamServiceImpl.java +++ b/src/main/java/org/springblade/modules/martial/service/impl/MartialTeamServiceImpl.java @@ -53,6 +53,36 @@ public class MartialTeamServiceImpl extends ServiceImpl memberIds) { + team.setMemberCount(memberIds != null ? memberIds.size() : 0); + team.setUpdateUser(AuthUtil.getUserId()); + boolean updated = this.updateById(team); + + if (updated) { + // Delete old members + LambdaQueryWrapper deleteWrapper = new LambdaQueryWrapper<>(); + deleteWrapper.eq(MartialTeamMember::getTeamId, team.getId()); + teamMemberMapper.delete(deleteWrapper); + + // Insert new members + if (memberIds != null && !memberIds.isEmpty()) { + for (Long athleteId : memberIds) { + MartialTeamMember member = new MartialTeamMember(); + member.setTeamId(team.getId()); + member.setAthleteId(athleteId); + member.setCreateTime(LocalDateTime.now()); + member.setIsDeleted(0); + member.setTenantId("000000"); + teamMemberMapper.insert(member); + } + } + } + + return updated; + } + @Override public IPage getTeamList(Long createUser, Integer current, Integer size) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();