Browse Source

快捷支付

zhijiezhao 2 years ago
parent
commit
3edf8f6131

+ 7 - 0
src/main/java/com/caimei365/user/controller/ClubApi.java

@@ -47,6 +47,13 @@ public class ClubApi {
         return clubService.getClubUserInfo(userId);
     }
 
+    @ApiOperation("我的银行卡")
+    @ApiImplicitParam(required = true, name = "userId", value = "用户Id")
+    @GetMapping("/banks")
+    public ResponseJson<List<BanksVo>> getUserBanks(Integer userId) {
+        return clubService.getUserBanks(userId);
+    }
+
     /**
      * 修改机构资料
      * <p>

+ 2 - 0
src/main/java/com/caimei365/user/mapper/BaseMapper.java

@@ -136,4 +136,6 @@ public interface BaseMapper {
     String getSensitiveWords(Integer checkPoint);
 
     List<String> findLabelsByLableIds(String labelIds);
+
+    Integer findBankByUserId(Integer userId);
 }

+ 2 - 0
src/main/java/com/caimei365/user/mapper/ClubMapper.java

@@ -329,4 +329,6 @@ public interface ClubMapper {
     Date findSubmitTime(Integer remarkId);
 
     Integer findLeaderIdBySp(Integer spId);
+
+    List<BanksVo> findBanks(Integer userId);
 }

+ 21 - 0
src/main/java/com/caimei365/user/model/vo/BanksVo.java

@@ -0,0 +1,21 @@
+package com.caimei365.user.model.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author zzj
+ */
+@Data
+public class BanksVo implements Serializable {
+    private static final long serialVersionUID = 1L;
+    private Integer id;
+    private String bankNumber;
+    /**
+     * 用户绑定卡类型1借记卡2信用卡
+     */
+    private Integer bankType;
+
+    private String bankName;
+}

+ 2 - 0
src/main/java/com/caimei365/user/service/ClubService.java

@@ -277,4 +277,6 @@ public interface ClubService {
     ResponseJson<List<ServiceProviderVo>> choseSales(Integer spId);
 
     ResponseJson changeSales(Integer clubId, Integer spId, Integer choseServiceId);
+
+    ResponseJson<List<BanksVo>> getUserBanks(Integer userId);
 }

+ 8 - 0
src/main/java/com/caimei365/user/service/impl/ClubServiceImpl.java

@@ -334,6 +334,8 @@ public class ClubServiceImpl implements ClubService {
         }
         map.put("vip", vipDto);
         map.put("couponNum", couponNum);
+        Integer bankCount = baseMapper.findBankByUserId(userId);
+        map.put("bankNum", bankCount);
         return ResponseJson.success(map);
     }
 
@@ -631,6 +633,12 @@ public class ClubServiceImpl implements ClubService {
         return ResponseJson.success();
     }
 
+    @Override
+    public ResponseJson<List<BanksVo>> getUserBanks(Integer userId) {
+        List<BanksVo> banks = clubMapper.findBanks(userId);
+        return null;
+    }
+
     @Override
     public ResponseJson<PaginationVo<RemarkVo>> associated(Integer manager, Integer serviceProviderId, Integer reportId, String keyWord, String startAddTime,
                                                            String endAddTime,

+ 64 - 34
src/main/resources/mapper/BaseMapper.xml

@@ -2,45 +2,59 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.caimei365.user.mapper.BaseMapper">
     <update id="updatePasswordByUserId">
-        update user set password = #{password}
+        update user
+        set password = #{password}
         where userID = #{userId}
     </update>
     <update id="updateMobileByUserId">
-        update user set bindMobile = #{mobile}
+        update user
+        set bindMobile = #{mobile}
         where userID = #{userId}
     </update>
     <update id="updateShopMobileByShopId">
-        update shop set contractMobile = #{mobile}
+        update shop
+        set contractMobile = #{mobile}
         where shopID = #{shopId}
     </update>
     <update id="updateClubMobileByClubId">
-        update club set contractMobile = #{mobile}
+        update club
+        set contractMobile = #{mobile}
         where clubID = #{clubId}
     </update>
     <select id="getUserIdByEmail" resultType="java.lang.Integer">
-        select userID from user
-        where email = #{email} and userIdentity in (1,2,3,4)
+        select userID
+        from user
+        where email = #{email}
+          and userIdentity in (1, 2, 3, 4)
         limit 1
     </select>
     <select id="getUserIdByUserId" resultType="java.lang.Integer">
-        select userID from user
-        where userID = #{userId} and userIdentity in (1,2,3,4)
+        select userID
+        from user
+        where userID = #{userId}
+          and userIdentity in (1, 2, 3, 4)
         limit 1
     </select>
     <select id="getUserIdByMobile" resultType="java.lang.Integer">
-        SELECT u.userID FROM USER u
-            LEFT JOIN cm_mall_operation_user cu ON cu.userID = u.userID
-        WHERE u.bindMobile = #{mobile} and u.userIdentity in (1,2,3,4)
+        SELECT u.userID
+        FROM USER u
+                 LEFT JOIN cm_mall_operation_user cu ON cu.userID = u.userID
+        WHERE u.bindMobile = #{mobile}
+          and u.userIdentity in (1, 2, 3, 4)
         UNION
-        SELECT u.userID FROM USER u
-            LEFT JOIN cm_mall_operation_user cu ON cu.userID = u.userID
-        WHERE cu.mobile = #{mobile} AND cu.delFlag != 1
-          AND u.userIdentity IN (1,2,3,4)
+        SELECT u.userID
+        FROM USER u
+                 LEFT JOIN cm_mall_operation_user cu ON cu.userID = u.userID
+        WHERE cu.mobile = #{mobile}
+          AND cu.delFlag != 1
+          AND u.userIdentity IN (1, 2, 3, 4)
         LIMIT 1
     </select>
     <select id="getOperationUserIdByMobile" resultType="java.lang.Integer">
-        select userID from cm_mall_operation_user
-        where mobile = #{mobile} and delFlag = '0'
+        select userID
+        from cm_mall_operation_user
+        where mobile = #{mobile}
+          and delFlag = '0'
         limit 1
     </select>
     <select id="getClubStatusByUserId" resultType="java.lang.Integer">
@@ -54,29 +68,34 @@
         where userID = #{userId}
     </select>
     <select id="getOperationIdByMobile" resultType="java.lang.Integer">
-        select id from cm_mall_operation_user
-        where mobile = #{mobile} and delFlag = '0'
+        select id
+        from cm_mall_operation_user
+        where mobile = #{mobile}
+          and delFlag = '0'
         limit 1
     </select>
     <select id="getProvince" resultType="com.caimei365.user.model.vo.ProvinceVo">
         select provinceID as provinceId, name, validFlag, deliveryFee, freeMinTotalPrice
-        from province where provinceID = #{provinceId}
+        from province
+        where provinceID = #{provinceId}
     </select>
     <select id="getCity" resultType="com.caimei365.user.model.vo.CityVo">
         select cityID as cityId, provinceID as provinceId, name, validFlag
-        from city where cityID = #{cityId}
+        from city
+        where cityID = #{cityId}
     </select>
     <select id="getTown" resultType="com.caimei365.user.model.vo.TownVo">
         select townID as townId, cityID as cityId, name, zip, telZip, validFlag
-        from town where townID = #{townID}
+        from town
+        where townID = #{townID}
     </select>
     <select id="getUserByUserId" resultType="com.caimei365.user.model.vo.UserVo">
-        select  userID as userId,
-                registerUserTypeID as registerUserTypeId,
-                source,
-                clubID as clubId,
-                shopID as shopId,
-               serviceProviderID as serviceProviderId,
+        select userID             as userId,
+               registerUserTypeID as registerUserTypeId,
+               source,
+               clubID             as clubId,
+               shopID             as shopId,
+               serviceProviderID  as serviceProviderId,
                name,
                userName,
                email,
@@ -92,7 +111,7 @@
                auditStatus,
                agreeFlag,
                registerTime,
-               registerIP as registerIp,
+               registerIP         as registerIp,
                guideFlag,
                validFlag,
                userBeans,
@@ -102,10 +121,15 @@
         where userID = #{userId}
     </select>
     <select id="getUserNameByUserId" resultType="java.lang.String">
-        select userName from user where userID = #{userId}
+        select userName
+        from user
+        where userID = #{userId}
     </select>
     <select id="getAfterSalesPhone" resultType="java.lang.String">
-        select contactNumber from cm_mall_organize where id = 0 and delFlag = '0'
+        select contactNumber
+        from cm_mall_organize
+        where id = 0
+          and delFlag = '0'
     </select>
     <select id="getSensitiveWords" resultType="java.lang.String">
         select words
@@ -119,8 +143,14 @@
     <select id="findLabelsByLableIds" resultType="java.lang.String">
         select keyword
         from cm_user_search_frequency
-        where trueStatus=1
-        and delStatus=1
-        and id in (#{labelIds})
+        where trueStatus = 1
+          and delStatus = 1
+          and id in (#{labelIds})
+    </select>
+    <select id="findBankByUserId" resultType="java.lang.Integer">
+        SELECT COUNT(id)
+        FROM cm_quickpay_info
+        WHERE userId = #{userId}
+          and delflag = 0
     </select>
 </mapper>

+ 8 - 1
src/main/resources/mapper/ClubMapper.xml

@@ -157,7 +157,7 @@
                provinceID                as proviceId,
                cityID                    as cityId,
                townID                    as townId,
-               ifnull(address,'暂无')     as address,
+               ifnull(address, '暂无')     as address,
                headpic                   as shopPhoto,
                businessLicenseImage      as businessLicense,
                socialCreditCode,
@@ -962,4 +962,11 @@
         LEFT JOIN cm_serviceteam_group csg ON csr.id=csg.teamId
         WHERE csg.serviceId = #{spId}
     </select>
+    <select id="findBanks" resultType="com.caimei365.user.model.vo.BanksVo">
+        SELECT DISTINCT id, bankNumber, bankType, cqb.bankName
+        FROM cm_quickpay_info cqi
+        LEFT JOIN cm_quickpay_bankcode cqb ON cqi.quickPayBankCode = cqb.bankCode
+        where cqi.userId = #{userId}
+        and cqi.delFlag = 0
+    </select>
 </mapper>