feat(team): 添加集体编辑功能
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -42,10 +42,16 @@ public class MartialTeamController extends BladeController {
|
|||||||
@Operation(summary = "保存", description = "新增或修改集体")
|
@Operation(summary = "保存", description = "新增或修改集体")
|
||||||
public R<Boolean> submit(@RequestBody TeamSubmitDTO dto) {
|
public R<Boolean> submit(@RequestBody TeamSubmitDTO dto) {
|
||||||
MartialTeam team = new MartialTeam();
|
MartialTeam team = new MartialTeam();
|
||||||
|
team.setId(dto.getId());
|
||||||
team.setTeamName(dto.getTeamName());
|
team.setTeamName(dto.getTeamName());
|
||||||
team.setRemark(dto.getRemark());
|
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);
|
return R.data(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,9 @@ import java.util.List;
|
|||||||
@Schema(description = "集体提交DTO")
|
@Schema(description = "集体提交DTO")
|
||||||
public class TeamSubmitDTO {
|
public class TeamSubmitDTO {
|
||||||
|
|
||||||
|
@Schema(description = "集体ID(更新时必填)")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
@Schema(description = "集体名称")
|
@Schema(description = "集体名称")
|
||||||
private String teamName;
|
private String teamName;
|
||||||
|
|
||||||
|
|||||||
@@ -14,6 +14,11 @@ public interface IMartialTeamService extends IService<MartialTeam> {
|
|||||||
*/
|
*/
|
||||||
boolean saveTeamWithMembers(MartialTeam team, List<Long> memberIds);
|
boolean saveTeamWithMembers(MartialTeam team, List<Long> memberIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update team with members
|
||||||
|
*/
|
||||||
|
boolean updateTeamWithMembers(MartialTeam team, List<Long> memberIds);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get team list with member count
|
* Get team list with member count
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -53,6 +53,36 @@ public class MartialTeamServiceImpl extends ServiceImpl<MartialTeamMapper, Marti
|
|||||||
return saved;
|
return saved;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public boolean updateTeamWithMembers(MartialTeam team, List<Long> memberIds) {
|
||||||
|
team.setMemberCount(memberIds != null ? memberIds.size() : 0);
|
||||||
|
team.setUpdateUser(AuthUtil.getUserId());
|
||||||
|
boolean updated = this.updateById(team);
|
||||||
|
|
||||||
|
if (updated) {
|
||||||
|
// Delete old members
|
||||||
|
LambdaQueryWrapper<MartialTeamMember> 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
|
@Override
|
||||||
public IPage<MartialTeamVO> getTeamList(Long createUser, Integer current, Integer size) {
|
public IPage<MartialTeamVO> getTeamList(Long createUser, Integer current, Integer size) {
|
||||||
LambdaQueryWrapper<MartialTeam> wrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<MartialTeam> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
|||||||
Reference in New Issue
Block a user