Jelajahi Sumber

添加编辑骑手银行卡信息接口,添加删除骑手银行卡信息接口,添加根据骑手id查询银行卡信息接口,更新骑手财务中心接口,更新骑手提现接口

liu 1 tahun lalu
induk
melakukan
fc178f0057

+ 12 - 0
db/insert_241023.sql

@@ -0,0 +1,12 @@
+DROP TABLE IF EXISTS `rider_bank_card_info`;
+CREATE TABLE `rider_bank_card_info`
+(
+    `id`        bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
+    `user_id`   bigint(20) NOT NULL COMMENT '用户id',
+    `card_no`   varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '卡号',
+    `open_bank` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '开户行',
+    `real_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '户主名称',
+    `bank_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '银行名称',
+    `del_flag`  varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NOT NULL DEFAULT '0' COMMENT '删除标识;1 是 0否',
+    PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

+ 56 - 0
src/main/java/com/sqx/modules/datacentre/controller/RiderBankCardInfoController.java

@@ -0,0 +1,56 @@
+package com.sqx.modules.datacentre.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.sqx.common.utils.Result;
+import com.sqx.modules.datacentre.entity.RiderBankCardInfo;
+import com.sqx.modules.datacentre.service.RiderBankCardInfoService;
+import com.sqx.modules.shop.entity.ShopBankCardInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+@Api(tags={"骑手银行卡信息"})
+@RestController
+@RequestMapping("/rider/bank")
+public class RiderBankCardInfoController {
+
+    @Autowired
+    private RiderBankCardInfoService riderBankCardInfoService;
+
+    @ApiOperation("新增骑手银行卡信息")
+    @PostMapping("/save")
+    public Result saveCardInfo(@Valid @RequestBody RiderBankCardInfo riderBankCardInfo) {
+        return riderBankCardInfoService.saveCardInfo(riderBankCardInfo);
+    }
+
+    @ApiOperation("查询单个骑手银行卡信息")
+    @GetMapping("/getUserId")
+    public Result getUserIdCardInfo(Long userId) {
+        return riderBankCardInfoService.getUserIdCardInfo(userId);
+    }
+
+    @ApiOperation("编辑骑手银行卡信息")
+    @PostMapping("/update")
+    public Result updateCardInfo(@Valid @RequestBody RiderBankCardInfo riderBankCardInfo) {
+        Long id = riderBankCardInfo.getId();
+        if (ObjectUtils.isEmpty(id)) {
+            return riderBankCardInfoService.saveCardInfo(riderBankCardInfo);
+        }
+        riderBankCardInfoService.updateById(riderBankCardInfo);
+        return Result.success();
+    }
+
+    @ApiOperation("删除骑手银行卡信息")
+    @GetMapping("/delete")
+    public Result deleteIdCardInfo(Long id) {
+        riderBankCardInfoService.removeById(id);
+
+        return Result.success();
+    }
+
+
+
+}

+ 9 - 0
src/main/java/com/sqx/modules/datacentre/dao/RiderBankCardInfoDao.java

@@ -0,0 +1,9 @@
+package com.sqx.modules.datacentre.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sqx.modules.datacentre.entity.RiderBankCardInfo;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface RiderBankCardInfoDao extends BaseMapper<RiderBankCardInfo> {
+}

+ 62 - 0
src/main/java/com/sqx/modules/datacentre/entity/RiderBankCardInfo.java

@@ -0,0 +1,62 @@
+package com.sqx.modules.datacentre.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Pattern;
+
+@Data
+@ApiModel(value = "骑手银行卡信息",description = "")
+@TableName("rider_bank_card_info")
+public class RiderBankCardInfo {
+    /**
+     * id
+     */
+    @TableId(type = IdType.AUTO)
+    @ApiModelProperty(name = "id")
+    private Long id;
+    /**
+     * 骑手id
+     */
+    @ApiModelProperty(name = "骑手id")
+    @NotNull(message = "骑手id不能为空")
+    private Long userId;
+    /**
+     * 卡号
+     */
+    @ApiModelProperty(name = "卡号")
+    @NotBlank(message = "卡号不能为空")
+    private String cardNo;
+    /**
+     * 开户行
+     */
+    @ApiModelProperty(name = "开户行")
+    @NotBlank(message = "开户行不能为空")
+    private String openBank;
+    /**
+     * 户主名称
+     */
+    @ApiModelProperty(name = "户主名称")
+    @NotBlank(message = "户主名称不能为空")
+    private String realName;
+    /**
+     * 银行名称
+     */
+    @ApiModelProperty(name = "银行名称")
+    @NotBlank(message = "银行名称不能为空")
+    private String bankName;
+    /**
+     * 删除标识;1 是 0否
+     */
+    @TableLogic(delval = "1", value = "0")
+    @ApiModelProperty(name = "删除标识", notes = "1 是 0否")
+    @Pattern(regexp = "(0|1)", message = "删除标识只能为0或1")
+    private String delFlag;
+}

+ 11 - 0
src/main/java/com/sqx/modules/datacentre/service/RiderBankCardInfoService.java

@@ -0,0 +1,11 @@
+package com.sqx.modules.datacentre.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.sqx.common.utils.Result;
+import com.sqx.modules.datacentre.entity.RiderBankCardInfo;
+
+public interface RiderBankCardInfoService extends IService<RiderBankCardInfo> {
+    Result saveCardInfo(RiderBankCardInfo riderBankCardInfo);
+
+    Result getUserIdCardInfo(Long userId);
+}

+ 39 - 0
src/main/java/com/sqx/modules/datacentre/service/impl/RiderBankCardInfoServiceImpl.java

@@ -0,0 +1,39 @@
+package com.sqx.modules.datacentre.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.sqx.common.utils.Result;
+import com.sqx.modules.datacentre.dao.RiderBankCardInfoDao;
+import com.sqx.modules.datacentre.entity.RiderBankCardInfo;
+import com.sqx.modules.datacentre.service.RiderBankCardInfoService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class RiderBankCardInfoServiceImpl extends ServiceImpl<RiderBankCardInfoDao, RiderBankCardInfo> implements RiderBankCardInfoService {
+
+    @Override
+    public Result saveCardInfo(RiderBankCardInfo riderBankCardInfo) {
+        Long userId = riderBankCardInfo.getUserId();
+
+        LambdaQueryWrapper<RiderBankCardInfo> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(RiderBankCardInfo::getUserId,userId);
+        RiderBankCardInfo cardInfo = this.getOne(wrapper);
+        if (ObjectUtils.isNotEmpty(cardInfo)) {
+            return Result.error("该银行卡信息已存在");
+        }
+
+        this.save(riderBankCardInfo);
+
+        return Result.success();
+    }
+
+    @Override
+    public Result getUserIdCardInfo(Long userId) {
+        LambdaQueryWrapper<RiderBankCardInfo> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(RiderBankCardInfo::getUserId,userId);
+        RiderBankCardInfo riderBankCardInfo = this.getOne(wrapper);
+        return Result.success().put("data",riderBankCardInfo);
+    }
+}

+ 29 - 1
src/main/java/com/sqx/modules/pay/service/impl/CashOutServiceImpl.java

@@ -1,7 +1,9 @@
 package com.sqx.modules.pay.service.impl;
 
 import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.sqx.common.constant.RedisKey;
@@ -19,7 +21,9 @@ import com.sqx.modules.app.service.UserMoneyDetailsService;
 import com.sqx.modules.app.service.UserService;
 import com.sqx.modules.common.entity.CommonInfo;
 import com.sqx.modules.common.service.CommonInfoService;
+import com.sqx.modules.datacentre.entity.RiderBankCardInfo;
 import com.sqx.modules.datacentre.query.DataCenterQuery;
+import com.sqx.modules.datacentre.service.RiderBankCardInfoService;
 import com.sqx.modules.errand.dao.ErrandComplaintDao;
 import com.sqx.modules.errand.dao.TbIndentDao;
 import com.sqx.modules.errand.entity.ErrandComplaint;
@@ -101,7 +105,8 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
     private ShopBankCardInfoService shopBankCardInfoService;
     @Autowired
     private RedissonClient redissonClient;
-
+    @Autowired
+    private RiderBankCardInfoService riderBankCardInfoService;
 
 
     @Override
@@ -392,6 +397,17 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
 
         // 用户提现
         if (type == 1) {
+//          骑手银行卡信息
+            LambdaQueryWrapper<RiderBankCardInfo> wrapper=new LambdaQueryWrapper<>();
+            wrapper.eq(RiderBankCardInfo::getUserId,userId);
+            RiderBankCardInfo riderBankCardInfo = riderBankCardInfoService.getOne(wrapper);
+            if (ObjectUtils.isEmpty(riderBankCardInfo)) {
+                throw new SqxException("银行卡信息不存在,请联系客服人员添加");
+            }
+            cashOut.setBankRealName(riderBankCardInfo.getRealName());
+            cashOut.setOpenBank(riderBankCardInfo.getOpenBank());
+            cashOut.setBankCardNo(riderBankCardInfo.getCardNo());
+
             //用户提现手续费
             CommonInfo one1 = commonInfoService.findOne(114);
             Double value = Double.valueOf(one1.getValue());
@@ -403,6 +419,18 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
         }
         // 骑手提现
         else if(type == 3){
+//          骑手银行卡信息
+            LambdaQueryWrapper<RiderBankCardInfo> wrapper=new LambdaQueryWrapper<>();
+            wrapper.eq(RiderBankCardInfo::getUserId,userId);
+            RiderBankCardInfo riderBankCardInfo = riderBankCardInfoService.getOne(wrapper);
+            if (ObjectUtils.isEmpty(riderBankCardInfo)) {
+                throw new SqxException("银行卡信息不存在,请联系客服人员添加");
+            }
+            cashOut.setBankRealName(riderBankCardInfo.getRealName());
+            cashOut.setOpenBank(riderBankCardInfo.getOpenBank());
+            cashOut.setBankCardNo(riderBankCardInfo.getCardNo());
+
+
             //骑手提现手续费
             CommonInfo one1 = commonInfoService.findOne(114);
             Double value = Double.valueOf(one1.getValue());

+ 1 - 1
src/main/resources/mapper/pay/CashDao.xml

@@ -298,7 +298,7 @@
     </sql>
 
     <select id="selectCashOutList" resultType="com.sqx.modules.pay.vo.CashOutVO">
-        select gh.shop_name, co.*,rs.station_name as stationName
+        select gh.shop_name, co.*,rs.station_name as stationName,tu.user_name as userName
         from cash_out co
         left join goods_shop gh on gh.shop_id = co.shop_id
         left join tb_user tu on tu.user_id=co.user_id