Commit 51b2248f authored by xuxin's avatar xuxin

查看当前vps已经绑定的子用户

parent ef47d02e
...@@ -14,6 +14,7 @@ import org.springframework.validation.annotation.Validated; ...@@ -14,6 +14,7 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.security.Principal; import java.security.Principal;
import java.util.List;
/** /**
* @author xuxin * @author xuxin
...@@ -94,5 +95,19 @@ public class VpsController { ...@@ -94,5 +95,19 @@ public class VpsController {
return resultDto; return resultDto;
} }
/**
* 查看当前vps已经绑定的 子用户
*/
@GetMapping("/list/{id}")
public ResultDto getVpsList(Principal principal, @PathVariable String id) {
ResultDto resultDto = new ResultDto();
List<String> list = vpsService.queryAssignUserList(principal.getName(), id);
resultDto.setData(list);
resultDto.setStatus(0);
return resultDto;
}
} }
...@@ -3,6 +3,7 @@ package com.edgec.browserbackend.browser.dto; ...@@ -3,6 +3,7 @@ package com.edgec.browserbackend.browser.dto;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document; import org.springframework.data.mongodb.core.mapping.Document;
import java.util.List; import java.util.List;
...@@ -18,6 +19,7 @@ import java.util.List; ...@@ -18,6 +19,7 @@ import java.util.List;
@JsonIgnoreProperties(ignoreUnknown = true) @JsonIgnoreProperties(ignoreUnknown = true)
public class UserVpsDto { public class UserVpsDto {
@Id
private String userId; private String userId;
private List<String> vpsIdList; private List<String> vpsIdList;
......
...@@ -3,6 +3,8 @@ package com.edgec.browserbackend.browser.repository; ...@@ -3,6 +3,8 @@ package com.edgec.browserbackend.browser.repository;
import com.edgec.browserbackend.browser.dto.UserVpsDto; import com.edgec.browserbackend.browser.dto.UserVpsDto;
import org.springframework.data.mongodb.repository.MongoRepository; import org.springframework.data.mongodb.repository.MongoRepository;
import java.util.List;
/** /**
* @author xuxin * @author xuxin
* @date 2020/8/15 17:35 * @date 2020/8/15 17:35
...@@ -10,4 +12,6 @@ import org.springframework.data.mongodb.repository.MongoRepository; ...@@ -10,4 +12,6 @@ import org.springframework.data.mongodb.repository.MongoRepository;
*/ */
public interface UserVpsRepository extends MongoRepository<UserVpsDto, String> { public interface UserVpsRepository extends MongoRepository<UserVpsDto, String> {
List<UserVpsDto> findByUserIdLikeAndVpsIdListIn(String id, String vpsId);
} }
...@@ -6,6 +6,7 @@ import org.springframework.data.domain.Pageable; ...@@ -6,6 +6,7 @@ import org.springframework.data.domain.Pageable;
import org.springframework.data.mongodb.repository.MongoRepository; import org.springframework.data.mongodb.repository.MongoRepository;
import java.util.List; import java.util.List;
import java.util.Optional;
/** /**
* @author xuxin * @author xuxin
...@@ -18,4 +19,6 @@ public interface VpsRepository extends MongoRepository<Vps, String> { ...@@ -18,4 +19,6 @@ public interface VpsRepository extends MongoRepository<Vps, String> {
List<Vps> findByOwner1OrOwner2(String userId1, String userId2); List<Vps> findByOwner1OrOwner2(String userId1, String userId2);
Optional<Vps> findByIdAndOwner1AndOwner2(String id, String owner1, String owner2);
} }
...@@ -170,4 +170,10 @@ public class VpsServiceImpl implements VpsService { ...@@ -170,4 +170,10 @@ public class VpsServiceImpl implements VpsService {
userVpsRepository.saveAll(list); userVpsRepository.saveAll(list);
} }
@Override
public List<String> queryAssignUserList(String user, String vpsId) {
Vps vps = vpsRepository.findByIdAndOwner1AndOwner2(vpsId, user, null).orElseThrow(() -> new ClientRequestException(VpsErrorCode.VPS_NOT_EXIST));
return userVpsRepository.findByUserIdLikeAndVpsIdListIn(user, vps.getId()).stream().map(u -> u.getUserId()).collect(Collectors.toList());
}
} }
...@@ -5,6 +5,8 @@ import com.edgec.browserbackend.browser.dto.AssignVpsDto; ...@@ -5,6 +5,8 @@ import com.edgec.browserbackend.browser.dto.AssignVpsDto;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import java.util.List;
/** /**
* @author xuxin * @author xuxin
* @date 2020/8/13 11:45 * @date 2020/8/13 11:45
...@@ -22,4 +24,6 @@ public interface VpsService { ...@@ -22,4 +24,6 @@ public interface VpsService {
Page<Vps> queryPage(String user, Pageable pageable); Page<Vps> queryPage(String user, Pageable pageable);
void assignVpsList(String userId, AssignVpsDto assignVpsDto); void assignVpsList(String userId, AssignVpsDto assignVpsDto);
List<String> queryAssignUserList(String user, String vpsId);
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment