From b87c5549fe471167882192944db3f2d6b729476c Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Fri, 15 Mar 2024 14:13:55 +0800
Subject: [PATCH] 抽奖

---
 src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java |  152 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 149 insertions(+), 3 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
index dbd1b5e..a91e89a 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -4,11 +4,22 @@
 import cc.mrbird.febs.common.controller.BaseController;
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.utils.AppContants;
+import cc.mrbird.febs.common.utils.excl.ExcelSheetPO;
+import cc.mrbird.febs.common.utils.excl.ExcelUtil;
+import cc.mrbird.febs.common.utils.excl.ExcelVersion;
+import cc.mrbird.febs.common.utils.excl.ResponseHeadUtil;
 import cc.mrbird.febs.mall.dto.*;
 import cc.mrbird.febs.mall.entity.*;
+import cc.mrbird.febs.mall.mapper.MallMemberMapper;
+import cc.mrbird.febs.mall.mapper.MallMemberWalletMapper;
 import cc.mrbird.febs.mall.service.IAdminMallMemberService;
 import cc.mrbird.febs.mall.service.IApiMallMemberService;
 import cc.mrbird.febs.mall.vo.AdminAgentLevelOptionTreeVo;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.ibatis.annotations.Param;
@@ -16,8 +27,15 @@
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import javax.validation.constraints.NotNull;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.URLEncoder;
+import java.text.DecimalFormat;
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -29,6 +47,8 @@
 public class AdminMallMemberController extends BaseController {
 
     private final IAdminMallMemberService mallMemberService;
+    private final MallMemberWalletMapper mallMemberWalletMapper;
+    private final MallMemberMapper mallMemberMapper;
     private final IApiMallMemberService apiMallMemberService;
 
     /**
@@ -79,6 +99,54 @@
     @ControllerEndpoint(operation = "会员列表---开启", exceptionMessage = "开启失败")
     public FebsResponse openAccount(@NotNull(message = "{required}") @PathVariable Long id) {
         return mallMemberService.openAccount(id);
+    }
+
+    /**
+     * 会员列表---禁止
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("outsideWithYes/{id}")
+    @ControllerEndpoint(operation = "会员列表---禁止", exceptionMessage = "禁止失败")
+    public FebsResponse outsideWithYes(@NotNull(message = "{required}") @PathVariable Long id) {
+        return mallMemberService.outsideWithType(id,1);
+    }
+
+    /**
+     * 会员列表---开启
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("outsideWithNo/{id}")
+    @ControllerEndpoint(operation = "会员列表---开启", exceptionMessage = "开启失败")
+    public FebsResponse outsideWithNo(@NotNull(message = "{required}") @PathVariable Long id) {
+        return mallMemberService.outsideWithType(id,2);
+    }
+
+    /**
+     * 会员列表---禁止
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("insideWithYes/{id}")
+    @ControllerEndpoint(operation = "会员列表---禁止", exceptionMessage = "禁止失败")
+    public FebsResponse insideWithYes(@NotNull(message = "{required}") @PathVariable Long id) {
+        return mallMemberService.insideWithType(id,1);
+    }
+
+    /**
+     * 会员列表---开启
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("insideWithNo/{id}")
+    @ControllerEndpoint(operation = "会员列表---开启", exceptionMessage = "开启失败")
+    public FebsResponse insideWithNo(@NotNull(message = "{required}") @PathVariable Long id) {
+        return mallMemberService.insideWithType(id,2);
     }
 
     @GetMapping("changeIdentityYes/{type}/{id}")
@@ -171,6 +239,39 @@
     @ControllerEndpoint(operation = "会员提现-同意", exceptionMessage = "操作失败")
     public FebsResponse chargeAgree(@NotNull(message = "{required}") @PathVariable Long id) {
         return mallMemberService.chargeAgree(id);
+    }
+
+    /**
+     * 会员提现-同意
+     */
+    @PostMapping("chargeAgreeWithType")
+    @ControllerEndpoint(operation = " 会员提现-同意", exceptionMessage = "操作失败")
+    public FebsResponse chargeAgreeWithType(@Valid MallMemberWithdraw mallMemberWithdraw) {
+        return mallMemberService.chargeAgreeWithType(mallMemberWithdraw);
+    }
+
+    /**
+     * 会员提现-查看结果
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("searchInfo/{id}")
+    @ControllerEndpoint(operation = "会员提现-查看结果", exceptionMessage = "操作失败")
+    public FebsResponse searchInfo(@NotNull(message = "{required}") @PathVariable Long id) {
+        return mallMemberService.searchInfo(id);
+    }
+
+    /**
+     * 会员提现-账户余额
+     *
+     * @param id
+     * @return
+     */
+    @GetMapping("accountInfo/{id}")
+    @ControllerEndpoint(operation = "会员提现-账户余额", exceptionMessage = "操作失败")
+    public FebsResponse accountInfo(@NotNull(message = "{required}") @PathVariable Long id) {
+        return mallMemberService.accountInfo(id);
     }
 
     /**
@@ -376,10 +477,8 @@
     public FebsResponse memberAdd(MallMember member) {
         RegisterDto registerDto = new RegisterDto();
         registerDto.setAccount(member.getAccount());
-        registerDto.setRegistType("admin");
         registerDto.setPassword("a123456");
-        registerDto.setInviteId(member.getInviteId());
-        registerDto.setName(member.getName());
+        registerDto.setCode(AppContants.PUBLIC_CODE);
         apiMallMemberService.register(registerDto);
         return new FebsResponse().success();
     }
@@ -434,4 +533,51 @@
         return new FebsResponse().success().data(dataTable);
     }
 
+    @GetMapping("exportMember")
+    @ControllerEndpoint(operation = "会员列表", exceptionMessage = "导出失败")
+    public FebsResponse exportMemberList(MallMember mallMember, HttpServletResponse response) throws IOException {
+
+        List<ExcelSheetPO> res = new ArrayList<>();
+        ExcelSheetPO orderSheet = new ExcelSheetPO();
+        String title = "会员列表";
+        orderSheet.setSheetName(title);
+        orderSheet.setTitle(title);
+        String[] header = {"登录账户", "手机号码", "名称", "余额", "现金积分", "贡献点", "补贴额度", "凭证", "凭证现金"};
+        orderSheet.setHeaders(header);
+
+        QueryRequest request = new QueryRequest();
+        request.setPageNum(1);
+        request.setPageSize(9999);
+        List<MallMember> dataList = mallMemberMapper.selectList(null);
+        List<List<Object>> list = new ArrayList<>();
+        if (dataList.size() > 0) {
+            for (MallMember item : dataList) {
+                List<Object> temp = new ArrayList<>();
+                temp.add(item.getAccountLogin());
+                temp.add(item.getPhone());
+                temp.add(item.getName());
+
+                Long memberId = item.getId();
+                MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId);
+                if(ObjectUtil.isNotNull(mallMemberWallet)){
+                    temp.add(mallMemberWallet.getBalance());
+                    temp.add(mallMemberWallet.getPrizeScore());
+                    temp.add(mallMemberWallet.getStar());
+                    temp.add(mallMemberWallet.getTotalScore());
+                    temp.add(mallMemberWallet.getVoucherCnt());
+                    temp.add(mallMemberWallet.getVoucherAmount());
+                }
+                list.add(temp);
+            }
+        }
+        orderSheet.setDataList(list);
+        res.add(orderSheet);
+        response = ResponseHeadUtil.setExcelHead(response);
+        response.setHeader("Content-Disposition",
+                "attachment;filename=" + URLEncoder.encode(title + DateUtil.format(new Date(), "yyyyMMDDHHmmss") + ".xlsx".trim(), "UTF-8"));
+        OutputStream os = response.getOutputStream();
+        ExcelUtil.createWorkbookAtOutStream(ExcelVersion.V2007, res, os, true);
+        return null;
+    }
+
 }

--
Gitblit v1.9.1