无关风月
2025-08-07 370d23bdd53cc6dab3cfe0949b0e3a7746dfc110
ManagementZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TPubWithdrawalController.java
@@ -1,5 +1,7 @@
package com.stylefeng.guns.modular.system.controller.general;
import com.alibaba.fastjson.JSONObject;
import com.alipay.api.AlipayApiException;
import com.baomidou.mybatisplus.plugins.Page;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.constant.factory.PageFactory;
@@ -8,12 +10,17 @@
import com.stylefeng.guns.core.util.ExcelExportUtil;
import com.stylefeng.guns.core.util.SinataUtil;
import com.stylefeng.guns.core.util.ToolUtil;
import com.stylefeng.guns.modular.system.model.TDriver;
import com.stylefeng.guns.modular.system.model.TPubWithdrawal;
import com.stylefeng.guns.modular.system.model.TSystemNotice;
import com.stylefeng.guns.modular.system.service.ITDriverService;
import com.stylefeng.guns.modular.system.service.ITPubWithdrawalService;
import com.stylefeng.guns.modular.system.service.ITSystemNoticeService;
import com.stylefeng.guns.modular.system.util.HttpRequestUtil;
import com.stylefeng.guns.modular.system.util.PushURL;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.util.alipay.AlipayUtils;
import com.stylefeng.guns.modular.system.util.alipay.UUIDUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
@@ -21,6 +28,7 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.*;
/**
@@ -40,6 +48,8 @@
    @Autowired
    private ITSystemNoticeService tSystemNoticeService;
    @Autowired
    private ITDriverService driverService;
    /**
     * 跳转到提现列表首页
@@ -115,7 +125,7 @@
     */
    @RequestMapping(value = "/immediately")
    @ResponseBody
    public Object immediately(@RequestParam Integer id,@RequestParam Integer state,@RequestParam String remark) {
    public Object immediately(@RequestParam Integer id,@RequestParam Integer state,@RequestParam String remark) throws AlipayApiException {
        TPubWithdrawal tPubWithdrawal = tPubWithdrawalService.selectById(id);
        if (SinataUtil.isNotEmpty(tPubWithdrawal)){
//            tPubWithdrawal.setState(state);  //调用接口修改状态
@@ -125,10 +135,27 @@
            Integer stateObj = 1;
            if (2 == state){   //同意提现
                stateObj = 1;
                // 支付宝提现
                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
                String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
                TDriver tDriver = driverService.selectById(tPubWithdrawal.getUserId());
                String s = AlipayUtils.aliWithdrawal(code, tPubWithdrawal.getMoney() + "", tPubWithdrawal.getCode(), tDriver.getIdCard());
                JSONObject res = JSONObject.parseObject(s);
                JSONObject alipayFundTransUniTransferResponse = res.getJSONObject("alipay_fund_trans_uni_transfer_response");
                if (alipayFundTransUniTransferResponse!=null){
                    if (alipayFundTransUniTransferResponse.getString("status").equals("Success")){
                        String string = alipayFundTransUniTransferResponse.getString("order_id");
                        tPubWithdrawal.setOrderNumber(string);
                    }else{
                        return ResultUtil.error("提现失败:"+alipayFundTransUniTransferResponse.getString("msg"));
                    }
                }
                System.err.println("支付宝提现返回信息"+s);
                tPubWithdrawal.setOutOrderNo(code);
                tPubWithdrawalService.updateById(tPubWithdrawal);
            }else if (3 == state){  //拒绝提现
                stateObj = 2;
            }
            tPubWithdrawalService.updateById(tPubWithdrawal);
//            Map<String,String> map = new HashMap<>();
//            map.put("id", String.valueOf(tPubWithdrawal.getId()));
@@ -136,7 +163,6 @@
//            String result = HttpRequestUtil.postRequest(PushURL.withdraw_auth_url, map);
//            System.out.println("提现审核接口 :【recordId="+tPubWithdrawal.getId().toString()+"】,调用接口:"+result);
            // 支付宝提现
            //增加系统消息
            TSystemNotice notice = new TSystemNotice();