From e29bb239dc2a5d4d0eee765d870522ad877e03e4 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期二, 07 一月 2025 20:53:16 +0800 Subject: [PATCH] 二期司机提现 --- DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/TWithdrawalController.java | 123 +++++++++++++++++ DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TWithdrawalMapper.java | 13 + DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TWithdrawalServiceImpl.java | 37 +++++ DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TWithdrawal.java | 180 +++++++++++++++++++++++++ DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITWithdrawalService.java | 35 +++++ 5 files changed, 388 insertions(+), 0 deletions(-) diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/TWithdrawalController.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/TWithdrawalController.java new file mode 100644 index 0000000..c934b9e --- /dev/null +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/TWithdrawalController.java @@ -0,0 +1,123 @@ +package com.stylefeng.guns.modular.api; + +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.baomidou.mybatisplus.plugins.Page; +import com.stylefeng.guns.core.base.controller.BaseController; +import com.stylefeng.guns.core.common.constant.factory.PageFactory; +import com.stylefeng.guns.modular.system.model.LoginLog; +import com.stylefeng.guns.modular.system.model.TWithdrawal; +import com.stylefeng.guns.modular.system.service.ICarService; +import com.stylefeng.guns.modular.system.service.IDriverService; +import com.stylefeng.guns.modular.system.service.ITWithdrawalService; +import com.stylefeng.guns.modular.system.util.ResultUtil; +import com.stylefeng.guns.modular.system.warpper.LogWarpper; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * 车辆相关控制器 + */ +@RestController +@RequestMapping("/api/withdrawal") +public class TWithdrawalController extends BaseController { + + @Autowired + private IDriverService driverService; + @Autowired + private ITWithdrawalService withdrawalService; + /** + * 司机提现 + * @return + */ + @ResponseBody + @PostMapping("/addWithdrawal") + @ApiOperation(value = "司机提现", tags = {"司机端-个人中心"}, notes = "") + @ApiImplicitParams({ + @ApiImplicitParam(value = "收款人姓名", name = "receivePaymentName", required = true, dataType = "String"), + @ApiImplicitParam(value = "收款账号", name = "receivePaymentAccount", required = true, dataType = "String"), + @ApiImplicitParam(value = "提现方式 1=支付宝 2=银行卡", name = "withdrawalType", required = true, dataType = "int"), + @ApiImplicitParam(value = "开户行", name = "openBank", required = true, dataType = "String"), + @ApiImplicitParam(value = "提现金额", name = "withdrawalMoney", required = true, dataType = "BigDecimal"), + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + public ResultUtil addWithdrawal(String receivePaymentName, String receivePaymentAccount, Integer withdrawalType, + String openBank, BigDecimal withdrawalMoney, HttpServletRequest request){ + try { + Integer uid = driverService.getUserIdFormRedis(request); + if(null == uid){ + return ResultUtil.tokenErr(); + } + withdrawalService.addWithdrawal(receivePaymentName, receivePaymentAccount, withdrawalType, openBank, withdrawalMoney, uid); + return ResultUtil.success(); + }catch (Exception e){ + e.printStackTrace(); + return ResultUtil.runErr(); + } + } + + /** + * 提现查看详情 + * @return + */ + @ResponseBody + @PostMapping("/queryDetailById") + @ApiOperation(value = "提现查看详情", tags = {"司机端-个人中心"}, notes = "") + @ApiImplicitParams({ + @ApiImplicitParam(value = "提现id", name = "id", required = true, dataType = "int"), + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + public ResultUtil queryDetailById(Integer id,HttpServletRequest request){ + try { + Integer uid = driverService.getUserIdFormRedis(request); + if(null == uid){ + return ResultUtil.tokenErr(); + } + TWithdrawal tWithdrawal = withdrawalService.selectById(id); + return ResultUtil.success(tWithdrawal); + }catch (Exception e){ + e.printStackTrace(); + return ResultUtil.runErr(); + } + } + + /** + * 提现查看分页列表 + * @return + */ + @ResponseBody + @PostMapping("/queryList") + @ApiOperation(value = "提现查看分页列表", tags = {"司机端-个人中心"}, notes = "") + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") + }) + public ResultUtil queryList(Integer pageNum,Integer size,HttpServletRequest request){ + try { + Integer uid = driverService.getUserIdFormRedis(request); + if(null == uid){ + return ResultUtil.tokenErr(); + } +// Page<TWithdrawal> page = new PageFactory<TWithdrawal>().defaultPage(); +// List<Map<String, Object>> result = withdrawalService.queryList(page, uid); +// page.setRecords((List<TWithdrawal>) new LogWarpper(result).warp()); +// return super.packForBT(page); + List<TWithdrawal> list = withdrawalService.selectList(new EntityWrapper<TWithdrawal>().eq("driverId", uid)); + return ResultUtil.success(list); + }catch (Exception e){ + e.printStackTrace(); + return ResultUtil.runErr(); + } + } + +} diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TWithdrawalMapper.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TWithdrawalMapper.java new file mode 100644 index 0000000..104a210 --- /dev/null +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TWithdrawalMapper.java @@ -0,0 +1,13 @@ +package com.stylefeng.guns.modular.system.dao; + +import com.baomidou.mybatisplus.mapper.BaseMapper; +import com.stylefeng.guns.modular.system.model.Car; +import com.stylefeng.guns.modular.system.model.TWithdrawal; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +public interface TWithdrawalMapper extends BaseMapper<TWithdrawal> { + +} diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TWithdrawal.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TWithdrawal.java new file mode 100644 index 0000000..88e7c7a --- /dev/null +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TWithdrawal.java @@ -0,0 +1,180 @@ +package com.stylefeng.guns.modular.system.model; + +import com.baomidou.mybatisplus.annotations.TableField; +import com.baomidou.mybatisplus.annotations.TableId; +import com.baomidou.mybatisplus.annotations.TableName; +import com.baomidou.mybatisplus.enums.IdType; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 提现 + */ +@TableName("t_withdrawal") +public class TWithdrawal { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @TableField("id") + private Integer id; + /** + * 司机id + */ + @TableField("driverId") + private Integer driverId; + /** + * 收款人姓名 + */ + @TableField("receivePaymentName") + private String receivePaymentName; + /** + * 收款账号 + */ + @TableField("receivePaymentAccount") + private String receivePaymentAccount; + /** + * 提现方式 1=支付宝 2=银行卡 + */ + @TableField("withdrawalType") + private Integer withdrawalType; + + + /** + * 提现金额 + */ + @TableField("withdrawalMoney") + private BigDecimal withdrawalMoney; + /** + * 提现时间 + */ + @TableField("withdrawalTime") + private Date withdrawalTime; + /** + * 提现状态 1=待处理 2=成功 3=失败 + */ + @TableField("status") + private Integer status; + + /** + * 开户行 + */ + @TableField("openBank") + private String openBank; + /** + * 备注 + */ + @TableField("remark") + private String remark; + /** + * 到帐凭证 + */ + @TableField("receiptVoucher") + private String receiptVoucher; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getDriverId() { + return driverId; + } + + public void setDriverId(Integer driverId) { + this.driverId = driverId; + } + + public String getReceivePaymentName() { + return receivePaymentName; + } + + public void setReceivePaymentName(String receivePaymentName) { + this.receivePaymentName = receivePaymentName; + } + + public String getReceivePaymentAccount() { + return receivePaymentAccount; + } + + public void setReceivePaymentAccount(String receivePaymentAccount) { + this.receivePaymentAccount = receivePaymentAccount; + } + + public Integer getWithdrawalType() { + return withdrawalType; + } + + public void setWithdrawalType(Integer withdrawalType) { + this.withdrawalType = withdrawalType; + } + + public BigDecimal getWithdrawalMoney() { + return withdrawalMoney; + } + + public void setWithdrawalMoney(BigDecimal withdrawalMoney) { + this.withdrawalMoney = withdrawalMoney; + } + + public Date getWithdrawalTime() { + return withdrawalTime; + } + + public void setWithdrawalTime(Date withdrawalTime) { + this.withdrawalTime = withdrawalTime; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public String getOpenBank() { + return openBank; + } + + public void setOpenBank(String openBank) { + this.openBank = openBank; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getReceiptVoucher() { + return receiptVoucher; + } + + public void setReceiptVoucher(String receiptVoucher) { + this.receiptVoucher = receiptVoucher; + } + + @Override + public String toString() { + return "TWithdrawal{" + + "id=" + id + + ", driverId=" + driverId + + ", receivePaymentName='" + receivePaymentName + '\'' + + ", receivePaymentAccount='" + receivePaymentAccount + '\'' + + ", withdrawalType=" + withdrawalType + + ", withdrawalMoney=" + withdrawalMoney + + ", withdrawalTime=" + withdrawalTime + + ", status=" + status + + ", openBank='" + openBank + '\'' + + ", remark='" + remark + '\'' + + ", receiptVoucher='" + receiptVoucher + '\'' + + '}'; + } +} diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITWithdrawalService.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITWithdrawalService.java new file mode 100644 index 0000000..4ff3d96 --- /dev/null +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITWithdrawalService.java @@ -0,0 +1,35 @@ +package com.stylefeng.guns.modular.system.service; + +import com.baomidou.mybatisplus.service.IService; +import com.stylefeng.guns.modular.system.model.Car; +import com.stylefeng.guns.modular.system.model.TWithdrawal; +import com.stylefeng.guns.modular.system.util.ResultUtil; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; +import java.util.Map; + +public interface ITWithdrawalService extends IService<TWithdrawal> { + + + /** + * 添加提现记录 + * @param receivePaymentName + * @param receivePaymentAccount + * @param withdrawalType + * @param openBank + * @param withdrawalMoney + * @param uid + */ + void addWithdrawal(String receivePaymentName, String receivePaymentAccount, Integer withdrawalType, String openBank, BigDecimal withdrawalMoney, Integer uid); + + /** + * 查询提现记录 + * @param pageNum + * @param size + * @param uid + * @return + */ +// List<TWithdrawal> queryList(Integer pageNum, Integer size, Integer uid); +} diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TWithdrawalServiceImpl.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TWithdrawalServiceImpl.java new file mode 100644 index 0000000..9920d02 --- /dev/null +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TWithdrawalServiceImpl.java @@ -0,0 +1,37 @@ +package com.stylefeng.guns.modular.system.service.impl; + +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.stylefeng.guns.modular.system.dao.*; +import com.stylefeng.guns.modular.system.model.*; +import com.stylefeng.guns.modular.system.service.ICarService; +import com.stylefeng.guns.modular.system.service.IDriverService; +import com.stylefeng.guns.modular.system.service.ITWithdrawalService; +import com.stylefeng.guns.modular.system.util.ResultUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + + +@Service +public class TWithdrawalServiceImpl extends ServiceImpl<TWithdrawalMapper, TWithdrawal> implements ITWithdrawalService { + + @Override + public void addWithdrawal(String receivePaymentName, String receivePaymentAccount, Integer withdrawalType, String openBank, BigDecimal withdrawalMoney, Integer uid) { + TWithdrawal tWithdrawal = new TWithdrawal(); + tWithdrawal.setDriverId(uid); + tWithdrawal.setReceivePaymentName(receivePaymentName); + tWithdrawal.setReceivePaymentAccount(receivePaymentAccount); + tWithdrawal.setWithdrawalType(withdrawalType); + tWithdrawal.setWithdrawalMoney(withdrawalMoney); + tWithdrawal.setWithdrawalTime(new Date()); + tWithdrawal.setStatus(1); + tWithdrawal.setOpenBank(openBank); + this.insert(tWithdrawal); + } +} -- Gitblit v1.7.1