zangbin 3 vuotta sitten
vanhempi
commit
31fb945499

+ 16 - 1
lb-app/src/main/java/com/ydd/app/controller/DevelopmentApi.java

@@ -91,11 +91,26 @@ public class DevelopmentApi extends BaseController {
 
     @ApiOperation("客户列表")
     @RequestMapping(value = "/customer/list", method = RequestMethod.GET)
-
     public ResponseResult customers(@RequestParam(required = false, name = "cityName") String cityName,
                                     @RequestParam(required = false, name = "businessName") String businessName,
                                     @RequestParam(required = false, name = "contactName") String contactName) {
         startPage();
         return apiDevelopService.selectCustomerList(cityName, businessName, contactName);
     }
+
+    @ApiOperation("我的钱包")
+    @RequestMapping(value = "/my/wallet", method = RequestMethod.POST)
+    @AccessToken
+    public ResponseResult myWallet() {
+        return apiDevelopService.myWallet(getLoginId());
+    }
+
+    @ApiOperation("充值记录")
+    @RequestMapping(value = "/recharge/list")
+    @AccessToken
+    public ResponseResult rechargeList(@RequestParam(required = false, name = "startTime") String startTime,
+                                       @RequestParam(required = false, name = "endTime") String endTime) {
+        startPage();
+        return apiDevelopService.rechargeList(getLoginId(), startTime, endTime);
+    }
 }

+ 4 - 0
lb-app/src/main/java/com/ydd/app/service/ApiDevelopService.java

@@ -67,4 +67,8 @@ public interface ApiDevelopService {
      * @return
      */
     ResponseResult selectCustomerList(String cityName, String businessName, String contactName);
+
+    ResponseResult myWallet(Long loginId);
+
+    ResponseResult rechargeList(Long loginId, String startTime, String endTime);
 }

+ 34 - 0
lb-app/src/main/java/com/ydd/app/service/impl/ApiDevelopServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.lang.UUID;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.ydd.app.dto.*;
 import com.ydd.app.service.*;
+import com.ydd.app.vo.OpenMyWalletVo;
 import com.ydd.module.dto.OpenCustomerDto;
 import com.ydd.app.vo.OpenMemberInfoVo;
 import com.ydd.common.constant.Constants;
@@ -57,6 +58,11 @@ public class ApiDevelopServiceImpl implements ApiDevelopService {
 
     private final TokenService tokenService;
 
+    private final IRechargeService iRechargeService;
+    private final IRechargeOptionService iRechargeOptionService;
+
+    private final IMemberCouponService iMemberCouponService;
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public ResponseResult saveMerchant(Long loginId, DevelopMerchantDto merchantDto) {
@@ -291,6 +297,34 @@ public class ApiDevelopServiceImpl implements ApiDevelopService {
         return ResponseResult.success(new PageResult(customerVoList));
     }
 
+    @Override
+    public ResponseResult myWallet(Long loginId) {
+        Member member = iMemberService.getById(loginId);
+        if (Objects.isNull(member)) {
+            return ResponseResult.error(ResponseResultCodeEnum.REFRESH_TOKEN_INVALID);
+        }
+
+        OpenMyWalletVo vo = new OpenMyWalletVo();
+        List<RechargeOption> options = iRechargeOptionService.list(new QueryWrapper<RechargeOption>().eq("status", StatusEnum.SHOW.status).orderByDesc("sort"));
+        vo.setRechargeOptionList(options);
+        vo.setAmount(member.getAmount());
+
+        Date now = new Date();
+        int couponNum = iMemberCouponService.count(new QueryWrapper<MemberCoupon>()
+                .eq("member_id", member.getId())
+                .eq("status", MemberCouponStatusEnum.NOT_USED.status)
+                .le("valid_start_time", now)
+                .ge("valid_end_time", now));
+        vo.setCouponNum(couponNum);
+        return ResponseResult.success(vo);
+    }
+
+    @Override
+    public ResponseResult rechargeList(Long loginId, String startTime, String endTime) {
+        List<Recharge> rechargeList = iRechargeService.selectOpenRechargeList(loginId, startTime, endTime);
+        return ResponseResult.success(rechargeList);
+    }
+
     private ResponseResult memberInfoJudge(Member member, String resistMobile, String code) {
         ResponseResult result = ResponseResult.success();
 

+ 30 - 0
lb-app/src/main/java/com/ydd/app/vo/OpenMyWalletVo.java

@@ -0,0 +1,30 @@
+package com.ydd.app.vo;
+
+import com.ydd.module.domain.RechargeOption;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * Demo class
+ *
+ * @author 14027
+ * @date 2022/4/28 15:01
+ */
+@Data
+public class OpenMyWalletVo {
+
+    /** 账户余额 */
+    @ApiModelProperty(value = "账户余额(元)")
+    private BigDecimal amount;
+
+    /** 优惠卷 */
+    @ApiModelProperty(value = "优惠卷(张)")
+    private Integer couponNum;
+
+    /** 充值金额 */
+    @ApiModelProperty(value = "充值金额")
+    private List<RechargeOption> rechargeOptionList;
+}

+ 1 - 0
lb-module/src/main/java/com/ydd/module/mapper/RechargeMapper.java

@@ -19,4 +19,5 @@ public interface RechargeMapper extends BaseMapper<Recharge> {
 
     List<RechargeDto> queryRechargeList(@Param("page") Page page, @Param("params") MemberBalanceLog memberBalanceLog, @Param("memberIds") List<Integer> memberIds);
 
+    List<Recharge> selectOpenRechargeList(@Param("loginId") Long loginId, @Param("startTime") String startTime, @Param("endTime") String endTime);
 }

+ 2 - 0
lb-module/src/main/java/com/ydd/module/service/IRechargeService.java

@@ -28,4 +28,6 @@ public interface IRechargeService extends IService<Recharge> {
 
     PageResult queryRechargeList(Page page, MemberBalanceLog memberBalanceLog, SysUser user);
 
+    List<Recharge> selectOpenRechargeList(Long loginId, String startTime, String endTime);
+
 }

+ 4 - 0
lb-module/src/main/java/com/ydd/module/service/impl/RechargeServiceImpl.java

@@ -105,5 +105,9 @@ public class RechargeServiceImpl extends ServiceImpl<RechargeMapper, Recharge> i
         return new PageResult(page);
     }
 
+    @Override
+    public List<Recharge> selectOpenRechargeList(Long loginId, String startTime, String endTime) {
+        return baseMapper.selectOpenRechargeList(loginId, startTime, endTime);
+    }
 
 }

+ 17 - 0
lb-module/src/main/resources/mapper/module/rechargeMapper.xml

@@ -65,4 +65,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ORDER By mb.create_time DESC
     </select>
 
+    <select id="selectOpenRechargeList" resultType="com.ydd.module.domain.Recharge">
+        SELECT
+            id,
+            recharge_sn,
+            amount,
+            create_time,
+            payment_type
+        FROM lb_recharge
+        WHERE deleted = 0 AND member_id = #{loginId}
+        <if test="startTime != null and startTime != ''">
+            AND create_time >= #{params.startTime}
+        </if>
+        <if test="endTime != null and endTime != ''">
+            AND #{params.endTime} >= create_time
+        </if>
+    </select>
+
 </mapper>