瀏覽代碼

下载邀请

licailing 4 年之前
父節點
當前提交
89dcd56394

+ 31 - 0
src/main/java/com/izouma/nineth/dto/InvitePhoneDTO.java

@@ -0,0 +1,31 @@
+package com.izouma.nineth.dto;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.izouma.nineth.domain.User;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.beans.BeanUtils;
+
+import java.time.LocalDateTime;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class InvitePhoneDTO {
+    @ExcelProperty(value = "昵称")
+    private String nickName;
+
+    @ExcelProperty(value = "手机号")
+    private String phone;
+
+    @ExcelProperty("注册时间")
+    private LocalDateTime createdAt;
+
+    @ExcelProperty("邀请人")
+    private String invitorName;
+
+    public InvitePhoneDTO(User user) {
+        BeanUtils.copyProperties(user, this);
+    }
+}

+ 11 - 4
src/main/java/com/izouma/nineth/web/UserController.java

@@ -2,10 +2,7 @@ package com.izouma.nineth.web;
 
 import com.huifu.adapay.core.exception.BaseAdaPayException;
 import com.izouma.nineth.domain.User;
-import com.izouma.nineth.dto.PageQuery;
-import com.izouma.nineth.dto.UserBankCard;
-import com.izouma.nineth.dto.UserDTO;
-import com.izouma.nineth.dto.UserRegister;
+import com.izouma.nineth.dto.*;
 import com.izouma.nineth.enums.AuthorityName;
 import com.izouma.nineth.exception.BusinessException;
 import com.izouma.nineth.repo.UserBankCardRepo;
@@ -231,6 +228,16 @@ public class UserController extends BaseController {
     public Map<String, Object> batchRegister(@RequestParam String phones, @RequestParam String defaultPassword) {
         return userService.batchRegister(phones, defaultPassword);
     }
+
+    @PreAuthorize("hasAnyRole('ADMIN')")
+    @PostMapping("/exportInvite")
+    @ResponseBody
+    public void exportInvite(HttpServletResponse response, @RequestBody PageQuery pageQuery) throws IOException {
+        List<InvitePhoneDTO> data = userService.all(pageQuery)
+                .map(InvitePhoneDTO::new)
+                .getContent();
+        ExcelUtils.export(response, data);
+    }
 }