From f6b0e262db2af5ca2e5ed76f95e746c1dd3c58e3 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 01 二月 2024 15:17:47 +0800
Subject: [PATCH] 开发业务接口
---
server/company/src/main/java/com/doumee/api/business/MemberController.java | 53 +++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 45 insertions(+), 8 deletions(-)
diff --git a/server/company/src/main/java/com/doumee/api/business/MemberController.java b/server/company/src/main/java/com/doumee/api/business/MemberController.java
index f321024..b49c83e 100644
--- a/server/company/src/main/java/com/doumee/api/business/MemberController.java
+++ b/server/company/src/main/java/com/doumee/api/business/MemberController.java
@@ -4,23 +4,30 @@
import com.doumee.core.annotation.excel.ExcelExporter;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.dto.MemberImport;
+import com.doumee.dao.business.dto.MemberQueryDTO;
import com.doumee.dao.business.model.Member;
import com.doumee.service.business.MemberService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
+import io.swagger.annotations.*;
+import org.apache.shiro.SecurityUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
import javax.servlet.http.HttpServletResponse;
+import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
* @author 姹熻箘韫�
- * @date 2024/01/15 15:07
+ * @date 2024/01/16 10:03
*/
@Api(tags = "鐢ㄥ伐淇℃伅琛�")
@RestController
@@ -67,18 +74,24 @@
return ApiResponse.success(null);
}
+
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
@RequiresPermissions("business:member:query")
- public ApiResponse<PageData<Member>> findPage (@RequestBody PageWrap<Member> pageWrap) {
- return ApiResponse.success(memberService.findPage(pageWrap));
+ public ApiResponse<PageData<Member>> findPage (@RequestBody PageWrap<MemberQueryDTO> pageWrap) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ pageWrap.getModel().setCompanyId(user.getCompanyId());
+ return ApiResponse.success(memberService.findPageForCompany(pageWrap));
}
+
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
@RequiresPermissions("business:member:exportExcel")
- public void exportExcel (@RequestBody PageWrap<Member> pageWrap, HttpServletResponse response) {
- ExcelExporter.build(Member.class).export(memberService.findPage(pageWrap).getRecords(), "鐢ㄥ伐淇℃伅琛�", response);
+ public void exportExcel (@RequestBody PageWrap<MemberQueryDTO> pageWrap, HttpServletResponse response) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ pageWrap.getModel().setCompanyId(user.getCompanyId());
+ ExcelExporter.build(Member.class).export(memberService.findPageForCompany(pageWrap).getRecords(), "鐢ㄥ伐淇℃伅琛�", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
@@ -87,4 +100,28 @@
public ApiResponse findById(@PathVariable Integer id) {
return ApiResponse.success(memberService.findById(id));
}
+
+
+ @ApiOperation("鏁版嵁鍒楄〃")
+ @PostMapping("/findListByDTO")
+ @RequiresPermissions("business:member:query")
+ public ApiResponse<List<Member>> findListByDTO (@RequestBody MemberQueryDTO memberQueryDTO) {
+ LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ if(loginUserInfo.getType().equals(Constants.ONE)){
+ memberQueryDTO.setCompanyId(loginUserInfo.getCompanyId());
+ }
+ return ApiResponse.success(memberService.findListByDTO(memberQueryDTO));
+ }
+
+
+ @ApiOperation(value = "浜哄憳淇℃伅瀵煎叆" ,notes = "淇濆崟鐢宠")
+ @PostMapping("/importExcel")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "file", value = "file", required = true, paramType = "query", dataType = "file", dataTypeClass = File.class),
+ })
+ @RequiresPermissions("business:worktype:create")
+ public ApiResponse<List<MemberImport>> importExcel (@ApiParam(value = "file") MultipartFile file) {
+ return ApiResponse.success(memberService.importBatch(file));
+ }
+
}
--
Gitblit v1.9.3