xuhy
2025-06-24 b20a386a7b5905a070320e2cad116b6ae5c420c1
202506维护加盟商余额撤回
2个文件已修改
4个文件已添加
186 ■■■■■ 已修改文件
ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/FranchiseeController.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Franchisee.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/WithdrawRecord.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/WithdrawRecordMapper.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/WithdrawRecordService.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawRecordServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/FranchiseeController.java
@@ -29,6 +29,7 @@
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.wechat.pay.contrib.apache.httpclient.auth.PrivateKeySigner;
import com.wechat.pay.contrib.apache.httpclient.util.PemUtil;
import com.wechat.pay.java.core.exception.MalformedMessageException;
@@ -1060,4 +1061,47 @@
        return franchiseeService.updateBatchById(list) ? R.ok() : R.fail();
    }
    /**
     * 设置加盟商操作密码
     *
     */
    @ApiOperation(value = "设置加盟商操作密码【202506】", tags = {"后台-加盟商管理"})
    @PutMapping(value = "/setPayPassword")
    public R<String> setPayPassword(@RequestParam(value = "payPassword") String payPassword) {
        Long userid = tokenService.getLoginUser().getUserid();
        SysUser sysUser = sysUserService.getById(userid);
        if(Objects.isNull(sysUser.getFranchiseeId())){
            return R.fail("加盟商信息不存在!");
        }
        Franchisee franchisee = franchiseeService.getById(sysUser.getFranchiseeId());
        franchisee.setPayPassword(SecurityUtils.encryptPassword(payPassword));
        return franchiseeService.updateById(franchisee) ? R.ok() : R.fail();
    }
    /**
     * 设置加盟商操作密码
     *
     */
    @ApiOperation(value = "加盟商余额扣除撤回【202506】", tags = {"后台-加盟商管理"})
    @PutMapping(value = "/balanceWithdraw")
    public R<String> balanceWithdraw(@RequestParam(value = "id") Integer id,
                                     @RequestParam(value = "payPassword") String payPassword) {
        TFranchiseeBalanceChange balanceChange = balanceChangeService.getById(id);
        Franchisee franchisee = franchiseeService.getById(balanceChange.getFranchiseeId());
        if(!SecurityUtils.matchesPassword(payPassword, franchisee.getPayPassword())){
            return R.fail("密码错误!");
        }
        franchisee.setBalance(franchisee.getBalance().add(balanceChange.getAmount()));
        franchiseeService.updateById(franchisee);
        // 删除操作记录
        balanceChangeService.removeById(id);
        return R.ok();
    }
}
ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/entity/Franchisee.java
@@ -94,6 +94,9 @@
    @ApiModelProperty("余额")
    @TableField("balance")
    private BigDecimal balance;
    @ApiModelProperty("操作密码")
    @TableField("payPassword")
    private String payPassword;
    @TableField(exist = false)
    private String siteStr;
}
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/entity/WithdrawRecord.java
New file
@@ -0,0 +1,54 @@
package com.ruoyi.order.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
import java.util.Date;
/**
 * <p>
 * 用户提现流程
 * </p>
 *
 * @author hjl
 * @since 2024-07-09
 */
@Getter
@Setter
@TableName("t_withdraw_record")
@ApiModel(value = "WithdrawRecord对象", description = "用户提现流程表")
public class WithdrawRecord {
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    @ApiModelProperty("提现记录id")
    @TableField(value = "withdraw_id")
    private String withdrawId;
    @ApiModelProperty("订单id")
    @TableField("orderId")
    private String orderId;
    @ApiModelProperty("用户id")
    @TableField("userId")
    private Integer userId;
    @ApiModelProperty("类型 1=提现申请 2=平台审核 3=用户确认 4=提现成功")
    @TableField("withdrawType")
    private Integer withdrawType;
    @ApiModelProperty("创建时间")
    @TableField("createTime")
    private Date createTime;
    @ApiModelProperty("审核结果 1=通过 0=拒绝")
    @TableField("auditStatus")
    private Integer auditStatus;
}
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/WithdrawRecordMapper.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.order.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.order.entity.WithdrawDetail;
import com.ruoyi.order.entity.WithdrawRecord;
import org.apache.ibatis.annotations.Mapper;
/**
 * <p>
 * 用户提现流程记录表 Mapper 接口
 * </p>
 *
 * @author hjl
 * @since 2024-07-09
 */
@Mapper
public interface WithdrawRecordMapper extends BaseMapper<WithdrawRecord> {
}
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/WithdrawRecordService.java
New file
@@ -0,0 +1,28 @@
package com.ruoyi.order.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.order.entity.WithdrawDetail;
import com.ruoyi.order.entity.WithdrawRecord;
/**
 * <p>
 * 用户提现申请记录表 服务类
 * </p>
 *
 * @author hjl
 * @since 2024-07-09
 */
public interface WithdrawRecordService extends IService<WithdrawRecord> {
    /**
     * 保存提现申请记录
     *
     * @param withdrawId
     * @param orderId
     * @param userId
     * @param withdrawType
     * @param auditStatus
     */
    void saveWithdrawRecord(String withdrawId, String orderId, Integer userId, Integer withdrawType, Integer auditStatus);
}
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/WithdrawRecordServiceImpl.java
New file
@@ -0,0 +1,37 @@
package com.ruoyi.order.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.order.entity.WithdrawDetail;
import com.ruoyi.order.entity.WithdrawRecord;
import com.ruoyi.order.mapper.WithdrawDetailMapper;
import com.ruoyi.order.mapper.WithdrawRecordMapper;
import com.ruoyi.order.service.WithdrawDetailService;
import com.ruoyi.order.service.WithdrawRecordService;
import org.springframework.stereotype.Service;
import java.util.Date;
/**
 * <p>
 * 用户提现申请记录表 服务实现类
 * </p>
 *
 * @author hjl
 * @since 2024-07-09
 */
@Service
public class WithdrawRecordServiceImpl extends ServiceImpl<WithdrawRecordMapper, WithdrawRecord> implements WithdrawRecordService {
    @Override
    public void saveWithdrawRecord(String withdrawId, String orderId, Integer userId, Integer withdrawType, Integer auditStatus) {
        WithdrawRecord withdrawRecord = new WithdrawRecord();
        withdrawRecord.setWithdrawId(withdrawId);
        withdrawRecord.setOrderId(orderId);
        withdrawRecord.setUserId(userId);
        withdrawRecord.setWithdrawType(withdrawType);
        withdrawRecord.setAuditStatus(auditStatus);
        withdrawRecord.setCreateTime(new Date());
        this.save(withdrawRecord);
    }
}