diff --git a/modules/ai/pom.xml b/modules/ai/pom.xml index 449a9d81f0..036b4e9886 100644 --- a/modules/ai/pom.xml +++ b/modules/ai/pom.xml @@ -152,7 +152,6 @@ - diff --git a/modules/core/src/main/java/com/bytedesk/core/base/BaseRestController.java b/modules/core/src/main/java/com/bytedesk/core/base/BaseRestController.java index 117b4ff56c..7e198bae1f 100644 --- a/modules/core/src/main/java/com/bytedesk/core/base/BaseRestController.java +++ b/modules/core/src/main/java/com/bytedesk/core/base/BaseRestController.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-05-10 12:16:43 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2024-12-05 10:30:41 + * @LastEditTime: 2025-03-03 23:07:28 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -18,6 +18,8 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; +import jakarta.servlet.http.HttpServletResponse; + /** * @author jackning 270580156@qq.com */ @@ -66,4 +68,13 @@ public abstract class BaseRestController { @PostMapping("/delete") abstract public ResponseEntity delete(@RequestBody T request); + /** + * export + * + * @param request role + * @return json + */ + @GetMapping("/export") + abstract public Object export(T request, HttpServletResponse response); + } \ No newline at end of file diff --git a/modules/core/src/main/java/com/bytedesk/core/tag/TagExcel.java b/modules/core/src/main/java/com/bytedesk/core/tag/TagExcel.java new file mode 100644 index 0000000000..7552247bc6 --- /dev/null +++ b/modules/core/src/main/java/com/bytedesk/core/tag/TagExcel.java @@ -0,0 +1,32 @@ +/* + * @Author: jackning 270580156@qq.com + * @Date: 2024-08-01 06:18:10 + * @LastEditors: jackning 270580156@qq.com + * @LastEditTime: 2025-03-03 23:09:02 + * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk + * Please be aware of the BSL license restrictions before installing Bytedesk IM – + * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. + * Business Source License 1.1: https://github.com/Bytedesk/bytedesk/blob/main/LICENSE + * contact: 270580156@qq.com + * 联系:270580156@qq.com + * Copyright (c) 2024 by bytedesk.com, All Rights Reserved. + */ +package com.bytedesk.core.tag; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; + +import lombok.Data; + +// https://github.com/alibaba/easyexcel +// https://easyexcel.opensource.alibaba.com/docs/current/ +@Data +public class TagExcel { + + @ExcelProperty(index = 0, value = "Name") + @ColumnWidth(20) + private String name; + + + +} diff --git a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentEventListener.java b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentEventListener.java index ac14a178ee..9bb3c971b6 100644 --- a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentEventListener.java +++ b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentEventListener.java @@ -30,7 +30,7 @@ import lombok.extern.slf4j.Slf4j; @AllArgsConstructor public class DepartmentEventListener { - private final DepartmentService departmentService; + private final DepartmentRestService departmentService; private final UidUtils uidUtils; diff --git a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentInitializer.java b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentInitializer.java index 1a45119348..03a0573287 100644 --- a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentInitializer.java +++ b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentInitializer.java @@ -23,7 +23,7 @@ import lombok.AllArgsConstructor; @AllArgsConstructor public class DepartmentInitializer implements SmartInitializingSingleton { - private final DepartmentService departmentService; + private final DepartmentRestService departmentService; private final DepartmentRepository departmentRepository; diff --git a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentController.java b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentRestController.java similarity index 86% rename from modules/team/src/main/java/com/bytedesk/team/department/DepartmentController.java rename to modules/team/src/main/java/com/bytedesk/team/department/DepartmentRestController.java index 3c1dedb8e8..69627f0363 100644 --- a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentController.java +++ b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentRestController.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-01-29 16:20:17 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2024-11-07 10:33:03 + * @LastEditTime: 2025-03-03 23:08:10 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -25,6 +25,7 @@ import com.bytedesk.core.base.BaseRestController; import com.bytedesk.core.utils.JsonResult; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; @@ -32,9 +33,9 @@ import lombok.RequiredArgsConstructor; @RequiredArgsConstructor @RequestMapping("/api/v1/department") @Tag(name = "department - 部门", description = "department apis") -public class DepartmentController extends BaseRestController { +public class DepartmentRestController extends BaseRestController { - private final DepartmentService departmentService; + private final DepartmentRestService departmentService; @Override public ResponseEntity queryByOrg(DepartmentRequest request) { @@ -77,5 +78,11 @@ public class DepartmentController extends BaseRestController return ResponseEntity.ok().body(JsonResult.success("delete dep success")); } + @Override + public Object export(DepartmentRequest request, HttpServletResponse response) { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'export'"); + } + } diff --git a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentService.java b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentRestService.java similarity index 97% rename from modules/team/src/main/java/com/bytedesk/team/department/DepartmentService.java rename to modules/team/src/main/java/com/bytedesk/team/department/DepartmentRestService.java index 29d3fa1f70..79c2bef245 100644 --- a/modules/team/src/main/java/com/bytedesk/team/department/DepartmentService.java +++ b/modules/team/src/main/java/com/bytedesk/team/department/DepartmentRestService.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-01-29 16:20:17 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2024-11-07 11:45:20 + * @LastEditTime: 2025-03-03 23:08:22 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -36,7 +36,7 @@ import lombok.extern.slf4j.Slf4j; @Slf4j @Service @AllArgsConstructor -public class DepartmentService extends BaseRestService { +public class DepartmentRestService extends BaseRestService { private final ModelMapper modelMapper; diff --git a/modules/team/src/main/java/com/bytedesk/team/group/GroupRestController.java b/modules/team/src/main/java/com/bytedesk/team/group/GroupRestController.java index 5b4c329562..36bfaed714 100644 --- a/modules/team/src/main/java/com/bytedesk/team/group/GroupRestController.java +++ b/modules/team/src/main/java/com/bytedesk/team/group/GroupRestController.java @@ -2,7 +2,7 @@ * @Author: jackning 270580156@qq.com * @Date: 2024-01-29 16:20:17 * @LastEditors: jackning 270580156@qq.com - * @LastEditTime: 2025-03-03 18:37:23 + * @LastEditTime: 2025-03-03 23:07:48 * @Description: bytedesk.com https://github.com/Bytedesk/bytedesk * Please be aware of the BSL license restrictions before installing Bytedesk IM – * selling, reselling, or hosting Bytedesk IM as a service is a breach of the terms and automatically terminates your rights under the license. @@ -136,9 +136,8 @@ public class GroupRestController extends BaseRestController { return ResponseEntity.ok(JsonResult.success()); } - @ActionAnnotation(title = "group", action = "export", description = "export group") - @GetMapping("/export") + @Override public Object export(GroupRequest request, HttpServletResponse response) { // query data to export Page groupPage = groupService.queryByOrg(request); diff --git a/modules/team/src/main/java/com/bytedesk/team/member/MemberEventListener.java b/modules/team/src/main/java/com/bytedesk/team/member/MemberEventListener.java index a108335811..718ef2cab3 100644 --- a/modules/team/src/main/java/com/bytedesk/team/member/MemberEventListener.java +++ b/modules/team/src/main/java/com/bytedesk/team/member/MemberEventListener.java @@ -42,7 +42,7 @@ import com.bytedesk.core.upload.UploadTypeEnum; import com.bytedesk.core.upload.event.UploadCreateEvent; import com.bytedesk.team.department.DepartmentConsts; import com.bytedesk.team.department.DepartmentEntity; -import com.bytedesk.team.department.DepartmentService; +import com.bytedesk.team.department.DepartmentRestService; import com.bytedesk.team.member.event.MemberCreateEvent; import com.bytedesk.team.member.event.MemberUpdateEvent; @@ -57,7 +57,7 @@ public class MemberEventListener { private final ModelMapper modelMapper; - private final DepartmentService departmentService; + private final DepartmentRestService departmentService; private final UidUtils uidUtils; diff --git a/modules/team/src/test/java/com/bytedesk/team/DepartmentControllerTests.java b/modules/team/src/test/java/com/bytedesk/team/DepartmentControllerTests.java index 64d6afe905..a4a13d81c0 100644 --- a/modules/team/src/test/java/com/bytedesk/team/DepartmentControllerTests.java +++ b/modules/team/src/test/java/com/bytedesk/team/DepartmentControllerTests.java @@ -13,8 +13,8 @@ */ package com.bytedesk.team; -import com.bytedesk.team.department.DepartmentController; -import com.bytedesk.team.department.DepartmentService; +import com.bytedesk.team.department.DepartmentRestController; +import com.bytedesk.team.department.DepartmentRestService; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -27,10 +27,10 @@ import org.mockito.MockitoAnnotations; public class DepartmentControllerTests { @InjectMocks - private DepartmentController departmentController; + private DepartmentRestController departmentController; @Mock - private DepartmentService departmentService; + private DepartmentRestService departmentService; @BeforeEach public void setUp() {