diff --git a/itbaima-monitor-server/src/main/java/com/example/controller/MonitorController.java b/itbaima-monitor-server/src/main/java/com/example/controller/MonitorController.java index 5a34464..7eaa6f1 100644 --- a/itbaima-monitor-server/src/main/java/com/example/controller/MonitorController.java +++ b/itbaima-monitor-server/src/main/java/com/example/controller/MonitorController.java @@ -6,6 +6,7 @@ import com.example.entity.vo.request.RenameNodeVO; import com.example.entity.vo.request.RuntimeDetailVO; import com.example.entity.vo.response.ClientDetailsVO; import com.example.entity.vo.response.ClientPreviewVO; +import com.example.entity.vo.response.ClientSimpleVO; import com.example.entity.vo.response.RuntimeHistoryVO; import com.example.service.ClientService; import jakarta.annotation.Resource; @@ -26,6 +27,11 @@ public class MonitorController { return RestBean.success(service.listClients()); } + @GetMapping("/simple-list") + public RestBean> simpleClientList() { + return RestBean.success(service.listSimpleList()); + } + @PostMapping("/rename") public RestBean renameClient(@RequestBody @Valid RenameClientVO vo) { service.renameClient(vo); diff --git a/itbaima-monitor-server/src/main/java/com/example/entity/vo/response/ClientSimpleVO.java b/itbaima-monitor-server/src/main/java/com/example/entity/vo/response/ClientSimpleVO.java new file mode 100644 index 0000000..6cbbd45 --- /dev/null +++ b/itbaima-monitor-server/src/main/java/com/example/entity/vo/response/ClientSimpleVO.java @@ -0,0 +1,13 @@ +package com.example.entity.vo.response; + +import lombok.Data; + +@Data +public class ClientSimpleVO { + int id; + String name; + String location; + String osName; + String osVersion; + String ip; +} diff --git a/itbaima-monitor-server/src/main/java/com/example/service/ClientService.java b/itbaima-monitor-server/src/main/java/com/example/service/ClientService.java index ade9bb7..3874af9 100644 --- a/itbaima-monitor-server/src/main/java/com/example/service/ClientService.java +++ b/itbaima-monitor-server/src/main/java/com/example/service/ClientService.java @@ -8,6 +8,7 @@ import com.example.entity.vo.request.RenameNodeVO; import com.example.entity.vo.request.RuntimeDetailVO; import com.example.entity.vo.response.ClientDetailsVO; import com.example.entity.vo.response.ClientPreviewVO; +import com.example.entity.vo.response.ClientSimpleVO; import com.example.entity.vo.response.RuntimeHistoryVO; import java.util.List; @@ -20,6 +21,7 @@ public interface ClientService extends IService { void updateClientDetail(ClientDetailVO vo, Client client); void updateRuntimeDetail(RuntimeDetailVO vo, Client client); List listClients(); + List listSimpleList(); void renameClient(RenameClientVO vo); void renameNode(RenameNodeVO vo); ClientDetailsVO clientDetails(int clientId); diff --git a/itbaima-monitor-server/src/main/java/com/example/service/impl/ClientServiceImpl.java b/itbaima-monitor-server/src/main/java/com/example/service/impl/ClientServiceImpl.java index 7cabef6..4ac1942 100644 --- a/itbaima-monitor-server/src/main/java/com/example/service/impl/ClientServiceImpl.java +++ b/itbaima-monitor-server/src/main/java/com/example/service/impl/ClientServiceImpl.java @@ -10,6 +10,7 @@ import com.example.entity.vo.request.RenameNodeVO; import com.example.entity.vo.request.RuntimeDetailVO; import com.example.entity.vo.response.ClientDetailsVO; import com.example.entity.vo.response.ClientPreviewVO; +import com.example.entity.vo.response.ClientSimpleVO; import com.example.entity.vo.response.RuntimeHistoryVO; import com.example.mapper.ClientDetailMapper; import com.example.mapper.ClientMapper; @@ -108,6 +109,15 @@ public class ClientServiceImpl extends ServiceImpl impleme }).toList(); } + @Override + public List listSimpleList() { + return clientIdCache.values().stream().map(client -> { + ClientSimpleVO vo = client.asViewObject(ClientSimpleVO.class); + BeanUtils.copyProperties(detailMapper.selectById(vo.getId()), vo); + return vo; + }).toList(); + } + @Override public void renameClient(RenameClientVO vo) { this.update(Wrappers.update().eq("id", vo.getId()).set("name", vo.getName())); diff --git a/itbaima-monitor-web/src/component/CreateSubAccount.vue b/itbaima-monitor-web/src/component/CreateSubAccount.vue new file mode 100644 index 0000000..b8fe941 --- /dev/null +++ b/itbaima-monitor-web/src/component/CreateSubAccount.vue @@ -0,0 +1,154 @@ + + + + + diff --git a/itbaima-monitor-web/src/views/main/Security.vue b/itbaima-monitor-web/src/views/main/Security.vue index 9eb41df..e99dfd3 100644 --- a/itbaima-monitor-web/src/views/main/Security.vue +++ b/itbaima-monitor-web/src/views/main/Security.vue @@ -1,9 +1,10 @@ @@ -105,4 +147,24 @@ function resetPassword() { color: dodgerblue; } } + +.account-card { + border-radius: 5px; + background-color: var(--el-bg-color-page); + padding: 10px; + display: flex; + align-items: center; + text-align: left; + margin: 10px 0; +} + +:deep(.el-drawer) { + margin: 10px; + height: calc(100% - 20px); + border-radius: 10px; +} + +:deep(.el-drawer__body) { + padding: 0; +}