Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
张松
2024-12-30 13:15:07 +08:00
10 changed files with 64 additions and 91 deletions

View File

@@ -1,14 +1,10 @@
package com.sqx; package com.sqx;
import com.sqx.modules.pay.wuyou.WuyouPay;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching; import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.EnableScheduling;
import java.util.Map;
/** /**
* @author GYJ * @author GYJ
*/ */
@@ -18,25 +14,7 @@ import java.util.Map;
public class SqxApplication { public class SqxApplication {
public static void main(String[] args) { public static void main(String[] args) {
ConfigurableApplicationContext context = SpringApplication.run(SqxApplication.class, args); SpringApplication.run(SqxApplication.class, args);
context.getEnvironment().getPropertySources().forEach(source -> {
if (source.getName().contains("application-dev.yml") || source.getName().contains("application-prod.yml")) {
if (source.getSource() instanceof Map) {
((Map<String, Object>) source.getSource()).forEach((key, value) -> {
System.out.println(key + ": " + value);
if ("pay.orderNotifyUrl".equals(key)) {
WuyouPay.setNotifyUrl(value.toString());
}
if ("pay.extractNotifyUrl".equals(key)) {
WuyouPay.setExtractNotifyUrl(value.toString());
}
if ("pay.h5BaseUrl".equals(key)) {
WuyouPay.setH5BaseUrl(value.toString());
}
});
}
}
});
System.out.println("(♥◠‿◠)ノ゙ 短剧系统启动成功 ლ(´ڡ`ლ)゙ \n"+ System.out.println("(♥◠‿◠)ノ゙ 短剧系统启动成功 ლ(´ڡ`ლ)゙ \n"+
" _ \n" + " _ \n" +
" | | \n" + " | | \n" +

View File

@@ -47,7 +47,6 @@ public class AppCommonController {
" 20后台管理平台域名配置\n" + " 20后台管理平台域名配置\n" +
" 22拼多多优惠券地址") " 22拼多多优惠券地址")
@ResponseBody @ResponseBody
@Login
public Result getCommonList(@PathVariable Integer type) { public Result getCommonList(@PathVariable Integer type) {
return commonService.findByType(type); return commonService.findByType(type);
} }

View File

@@ -53,9 +53,8 @@ public class DiscSpinningServiceImpl extends ServiceImpl<DiscSpinningDao, DiscSp
private final UserService userService; private final UserService userService;
private final CashOutService cashOutService; private final CashOutService cashOutService;
private final RedisUtils redisUtils; private final RedisUtils redisUtils;
private final WuyouPay wuyouPay;
@Autowired private final PlatformTransactionManager transactionManager;
private PlatformTransactionManager transactionManager;
@Autowired @Autowired
@@ -63,7 +62,9 @@ public class DiscSpinningServiceImpl extends ServiceImpl<DiscSpinningDao, DiscSp
UserMoneyDetailsService userMoneyDetailsService, CashOutService cashOutService, UserMoneyDetailsService userMoneyDetailsService, CashOutService cashOutService,
DiscSpinningRecordService recordService, DiscSpinningRecordService recordService,
UserMoneyService userMoneyService, UserService userService, UserMoneyService userMoneyService, UserService userService,
RedisUtils redisUtils RedisUtils redisUtils,
WuyouPay wuyouPay,
PlatformTransactionManager transactionManager
) { ) {
this.commonRepository = commonRepository; this.commonRepository = commonRepository;
this.recordService = recordService; this.recordService = recordService;
@@ -72,6 +73,8 @@ public class DiscSpinningServiceImpl extends ServiceImpl<DiscSpinningDao, DiscSp
this.userService = userService; this.userService = userService;
this.cashOutService = cashOutService; this.cashOutService = cashOutService;
this.redisUtils = redisUtils; this.redisUtils = redisUtils;
this.wuyouPay = wuyouPay;
this.transactionManager = transactionManager;
} }
@Override @Override
@@ -128,11 +131,11 @@ public class DiscSpinningServiceImpl extends ServiceImpl<DiscSpinningDao, DiscSp
//最高提现金额 //最高提现金额
CommonInfo one2 = commonRepository.findOne(910); CommonInfo one2 = commonRepository.findOne(910);
if (one2 == null || money <= Double.parseDouble(one2.getValue())) { if (one2 == null || money <= Double.parseDouble(one2.getValue())) {
if (WuyouPay.checkCanCash(userInfo.getUserId(), WithdrawTypeEnum.RED_ENVELOPE, BigDecimal.valueOf(money))) { if (wuyouPay.checkCanCash(userInfo.getUserId(), WithdrawTypeEnum.RED_ENVELOPE, BigDecimal.valueOf(money))) {
cashOut.setStatus(4); cashOut.setStatus(4);
String outOrderNo = AliPayOrderUtil.createOrderId(); String outOrderNo = AliPayOrderUtil.createOrderId();
cashOut.setOrderNumber(outOrderNo); cashOut.setOrderNumber(outOrderNo);
BaseResp baseResp = WuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName()); BaseResp baseResp = wuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName());
if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))) { if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))) {
UserMoneyDetails userMoneyDetails = new UserMoneyDetails( UserMoneyDetails userMoneyDetails = new UserMoneyDetails(
userInfo.getUserId(), null, null, title, 4, 2, 1, userInfo.getUserId(), null, null, title, 4, 2, 1,
@@ -254,6 +257,7 @@ public class DiscSpinningServiceImpl extends ServiceImpl<DiscSpinningDao, DiscSp
return record; return record;
} }
@Override
public void receive1(DiscSpinningRecord receive) { public void receive1(DiscSpinningRecord receive) {
if (recordService.countDraw(receive.getUserId()) > 10) { if (recordService.countDraw(receive.getUserId()) > 10) {
return; return;

View File

@@ -27,6 +27,8 @@ public class CashOutTask implements ITask {
private UserMoneyService userMoneyService; private UserMoneyService userMoneyService;
@Resource @Resource
private UserMoneyDetailsService userMoneyDetailsService; private UserMoneyDetailsService userMoneyDetailsService;
@Resource
private WuyouPay wuyouPay;
private Logger logger = LoggerFactory.getLogger(getClass()); private Logger logger = LoggerFactory.getLogger(getClass());
@@ -35,12 +37,12 @@ public class CashOutTask implements ITask {
logger.info("提现开始"); logger.info("提现开始");
List<CashOut> cashOuts = cashOutDao.selectYesterday(); List<CashOut> cashOuts = cashOutDao.selectYesterday();
for (CashOut cashOut : cashOuts) { for (CashOut cashOut : cashOuts) {
if (WuyouPay.checkCanCash(cashOut.getUserId(), WithdrawTypeEnum.RED_ENVELOPE, new BigDecimal(cashOut.getMoney()))) { if (wuyouPay.checkCanCash(cashOut.getUserId(), WithdrawTypeEnum.RED_ENVELOPE, new BigDecimal(cashOut.getMoney()))) {
cashOut.setState(4); cashOut.setState(4);
String outOrderNo = AliPayOrderUtil.createOrderId(); String outOrderNo = AliPayOrderUtil.createOrderId();
cashOut.setOrderNumber(outOrderNo); cashOut.setOrderNumber(outOrderNo);
BaseResp baseResp = WuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName()); BaseResp baseResp = wuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName());
if (baseResp.getStatus() != null && baseResp.getStatus().equals(2)) { if (baseResp.getStatus() != null && baseResp.getStatus().equals(2)) {
cashOut.setState(1); cashOut.setState(1);
} else { } else {

View File

@@ -32,6 +32,8 @@ public class CashOutTask2 implements ITask {
private UserMoneyService userMoneyService; private UserMoneyService userMoneyService;
@Resource @Resource
private UserMoneyDetailsService userMoneyDetailsService; private UserMoneyDetailsService userMoneyDetailsService;
@Resource
private WuyouPay wuyouPay;
private Logger logger = LoggerFactory.getLogger(getClass()); private Logger logger = LoggerFactory.getLogger(getClass());
@@ -47,11 +49,11 @@ public class CashOutTask2 implements ITask {
.lt("create_at", params + " 23:59:59")); .lt("create_at", params + " 23:59:59"));
System.out.println(cashOuts.size()); System.out.println(cashOuts.size());
for (CashOut cashOut : cashOuts) { for (CashOut cashOut : cashOuts) {
if (WuyouPay.checkCanCash(cashOut.getUserId(), WithdrawTypeEnum.RED_ENVELOPE, new BigDecimal(cashOut.getMoney()))) { if (wuyouPay.checkCanCash(cashOut.getUserId(), WithdrawTypeEnum.RED_ENVELOPE, new BigDecimal(cashOut.getMoney()))) {
cashOut.setState(4); cashOut.setState(4);
String outOrderNo = AliPayOrderUtil.createOrderId(); String outOrderNo = AliPayOrderUtil.createOrderId();
cashOut.setOrderNumber(outOrderNo); cashOut.setOrderNumber(outOrderNo);
BaseResp baseResp = WuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName()); BaseResp baseResp = wuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName());
if (baseResp.getStatus() != null && baseResp.getStatus().equals(2)) { if (baseResp.getStatus() != null && baseResp.getStatus().equals(2)) {
cashOut.setState(1); cashOut.setState(1);
} else { } else {

View File

@@ -2,8 +2,6 @@ package com.sqx.modules.job.task;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.sqx.modules.app.service.UserMoneyDetailsService;
import com.sqx.modules.app.service.UserMoneyService;
import com.sqx.modules.pay.dao.CashOutDao; import com.sqx.modules.pay.dao.CashOutDao;
import com.sqx.modules.pay.entity.CashOut; import com.sqx.modules.pay.entity.CashOut;
import com.sqx.modules.pay.wuyou.BaseResp; import com.sqx.modules.pay.wuyou.BaseResp;
@@ -21,9 +19,7 @@ public class TempCashOutTask implements ITask {
@Resource @Resource
private CashOutDao cashOutDao; private CashOutDao cashOutDao;
@Resource @Resource
private UserMoneyService userMoneyService; private WuyouPay wuyouPay;
@Resource
private UserMoneyDetailsService userMoneyDetailsService;
private Logger logger = LoggerFactory.getLogger(getClass()); private Logger logger = LoggerFactory.getLogger(getClass());
@@ -32,7 +28,7 @@ public class TempCashOutTask implements ITask {
logger.info("提现开始"); logger.info("提现开始");
List<CashOut> cashOuts = cashOutDao.selectTemp(); List<CashOut> cashOuts = cashOutDao.selectTemp();
for (CashOut cashOut : cashOuts) { for (CashOut cashOut : cashOuts) {
BaseResp baseResp = WuyouPay.queryExtractOrder(cashOut.getOrderNumber(), cashOut.getMoney()); BaseResp baseResp = wuyouPay.queryExtractOrder(cashOut.getOrderNumber(), cashOut.getMoney());
logger.info("baseResp{} ", JSONUtil.toJsonStr(baseResp)); logger.info("baseResp{} ", JSONUtil.toJsonStr(baseResp));
if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))){ if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))){
logger.info("success{} ", cashOut.getOrderNumber()); logger.info("success{} ", cashOut.getOrderNumber());

View File

@@ -65,6 +65,8 @@ public class TempOrdersTask implements ITask {
private InviteDao inviteDao; private InviteDao inviteDao;
@Resource @Resource
private CompletAwardService completAwardService; private CompletAwardService completAwardService;
@Resource
private WuyouPay wuyouPay;
private Logger logger = LoggerFactory.getLogger(getClass()); private Logger logger = LoggerFactory.getLogger(getClass());
@@ -92,7 +94,7 @@ public class TempOrdersTask implements ITask {
continue; continue;
} }
try { try {
BaseResp baseResp = WuyouPay.queryOrder(payDetails.getTradeNo(), order.getPayMoney().toString(), "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1 Edg/131.0.0.0"); BaseResp baseResp = wuyouPay.queryOrder(payDetails.getTradeNo(), order.getPayMoney().toString(), "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1 Edg/131.0.0.0");
logger.info("baseResp{} ", JSONUtil.toJsonStr(baseResp)); logger.info("baseResp{} ", JSONUtil.toJsonStr(baseResp));
if (baseResp.getCode() == null || baseResp.getCode() != 200) { if (baseResp.getCode() == null || baseResp.getCode() != 200) {
continue; continue;
@@ -119,10 +121,6 @@ public class TempOrdersTask implements ITask {
logger.info("订单表数据处理完毕"); logger.info("订单表数据处理完毕");
} }
public static void main(String[] args) {
WuyouPay.queryOrder("1000001323859732", "0.5", "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1 Edg/131.0.0.0");
}
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
private void updateOrderStatus(PayDetails payDetails, Orders order) { private void updateOrderStatus(PayDetails payDetails, Orders order) {

View File

@@ -71,13 +71,12 @@ public class WuyouController {
private final CashOutDao cashOutDao; private final CashOutDao cashOutDao;
private final CompletAwardService completAwardService; private final CompletAwardService completAwardService;
private final SysUserService sysUserService; private final SysUserService sysUserService;
private final ApplicationContext applicationContext; private final WuyouPay wuyouPay;
ScheduledExecutorService scheduledExecutorService = Executors.newScheduledThreadPool(5);
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
WuyouController(OrdersService ordersService, PayDetailsDao payDetailsDao, UserService userService, InviteService inviteService, CashOutDao cashOutDao, WuyouController(OrdersService ordersService, PayDetailsDao payDetailsDao, UserService userService, InviteService inviteService, CashOutDao cashOutDao,
UserMoneyService userMoneyService, UserMoneyDetailsService userMoneyDetailsService, CommonInfoService commonRepository, UserMoneyService userMoneyService, UserMoneyDetailsService userMoneyDetailsService, CommonInfoService commonRepository,
InviteDao inviteDao, CompletAwardService completAwardService, SysUserService sysUserService, ApplicationContext applicationContext) { InviteDao inviteDao, CompletAwardService completAwardService, SysUserService sysUserService, WuyouPay wuyouPay) {
this.ordersService = ordersService; this.ordersService = ordersService;
this.payDetailsDao = payDetailsDao; this.payDetailsDao = payDetailsDao;
this.userService = userService; this.userService = userService;
@@ -89,7 +88,7 @@ public class WuyouController {
this.inviteDao = inviteDao; this.inviteDao = inviteDao;
this.completAwardService = completAwardService; this.completAwardService = completAwardService;
this.sysUserService = sysUserService; this.sysUserService = sysUserService;
this.applicationContext = applicationContext; this.wuyouPay = wuyouPay;
} }
@Debounce(interval = 1000, value = "#orderId") @Debounce(interval = 1000, value = "#orderId")
@@ -130,7 +129,7 @@ public class WuyouController {
return Result.success().put("data", data); return Result.success().put("data", data);
} }
BaseResp baseResp = WuyouPay.payOrder(payDetails.getTradeNo(), order.getPayMoney().toString(), BaseResp baseResp = wuyouPay.payOrder(payDetails.getTradeNo(), order.getPayMoney().toString(),
request.getHeader("User-Agent"), String.format("%d-%d", order.getCourseId(), order.getCourseDetailsId()), request.getHeader("User-Agent"), String.format("%d-%d", order.getCourseId(), order.getCourseDetailsId()),
payType); payType);
if (baseResp.getCode() == null) { if (baseResp.getCode() == null) {
@@ -160,7 +159,7 @@ public class WuyouController {
return Result.success().put("data", 1); return Result.success().put("data", 1);
} }
BaseResp baseResp = WuyouPay.queryOrder(payDetails.getTradeNo(), order.getPayMoney().toString(), request.getHeader("User-Agent")); BaseResp baseResp = wuyouPay.queryOrder(payDetails.getTradeNo(), order.getPayMoney().toString(), request.getHeader("User-Agent"));
if (baseResp.getCode() == null || baseResp.getCode() != 200) { if (baseResp.getCode() == null || baseResp.getCode() != 200) {
return Result.success().put("data", 0); return Result.success().put("data", 0);
} }

View File

@@ -100,6 +100,9 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
@Autowired @Autowired
private UserDao userDao; private UserDao userDao;
@Autowired
private WuyouPay wuyouPay;
@Override @Override
public PageUtils selectCashOutList(Integer page, Integer limit, CashOut cashOut) { public PageUtils selectCashOutList(Integer page, Integer limit, CashOut cashOut) {
return new PageUtils(baseMapper.selectCashOutPage(new Page<>(page, limit), cashOut)); return new PageUtils(baseMapper.selectCashOutPage(new Page<>(page, limit), cashOut));
@@ -503,9 +506,9 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
return Result.success("可提现余额不足!"); return Result.success("可提现余额不足!");
} }
if (WuyouPay.checkCanCash(userId, WithdrawTypeEnum.MANUAL, new BigDecimal(money.toString()))) { if (wuyouPay.checkCanCash(userId, WithdrawTypeEnum.MANUAL, new BigDecimal(money.toString()))) {
cashOut.setStatus(4); cashOut.setStatus(4);
BaseResp baseResp = WuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName()); BaseResp baseResp = wuyouPay.extractOrder(outOrderNo, cashOut.getMoney(), cashOut.getZhifubao(), cashOut.getZhifubaoName());
if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))) { if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))) {
userMoneyDetails.setContent("成功提现:" + money); userMoneyDetails.setContent("成功提现:" + money);
cashOut.setState(1); cashOut.setState(1);
@@ -590,7 +593,7 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
entity.setOrderNumber(outOrderNo); entity.setOrderNumber(outOrderNo);
} }
// 执行提现操作 // 执行提现操作
BaseResp baseResp = WuyouPay.extractOrder(entity.getOrderNumber(), entity.getMoney(), entity.getZhifubao(), entity.getZhifubaoName()); BaseResp baseResp = wuyouPay.extractOrder(entity.getOrderNumber(), entity.getMoney(), entity.getZhifubao(), entity.getZhifubaoName());
if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))) { if (baseResp.getStatus() != null && (baseResp.getStatus().equals(2) || baseResp.getStatus().equals(10000))) {
entity.setState(1); entity.setState(1);
} else if (StringUtils.isNotBlank(baseResp.getErrorMsg())) { } else if (StringUtils.isNotBlank(baseResp.getErrorMsg())) {

View File

@@ -10,7 +10,8 @@ import com.sqx.modules.pay.dao.CashOutDao;
import com.sqx.modules.pay.entity.WithdrawTypeEnum; import com.sqx.modules.pay.entity.WithdrawTypeEnum;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.HashMap; import java.util.HashMap;
@@ -19,48 +20,39 @@ import java.util.Map;
/** /**
* @author GYJ * @author GYJ
*/ */
@Component @Service
public class WuyouPay { public class WuyouPay {
static String NOTIFY_URL = ""; @Value("${pay.orderNotifyUrl}")
static String EXTRACT_NOTIFY_URL = ""; private String notifyUrl = "";
static String H5_BASE_URL = ""; @Value("${pay.extractNotifyUrl}")
private String extractNotifyUrl = "";
@Value("${pay.h5BaseUrl}")
private String h5BaseUrl = "";
private static CashOutDao cashOutDao; private final CashOutDao cashOutDao;
private static CommonInfoService commonInfoService; private final CommonInfoService commonInfoService;
private static final Logger logger = LoggerFactory.getLogger(WuyouPay.class); private static final Logger logger = LoggerFactory.getLogger(WuyouPay.class);
public WuyouPay(CashOutDao cashOutDao, CommonInfoService commonInfoService) { public WuyouPay(CashOutDao cashOutDao, CommonInfoService commonInfoService) {
WuyouPay.cashOutDao = cashOutDao; this.cashOutDao = cashOutDao;
WuyouPay.commonInfoService = commonInfoService; this.commonInfoService = commonInfoService;
} }
public static void setNotifyUrl(String notifyUrl) { public BaseResp payOrder(String orderNo, String amount, String userAgent, String allId, String payType) {
NOTIFY_URL = notifyUrl;
}
public static void setExtractNotifyUrl(String extractNotifyUrl) {
EXTRACT_NOTIFY_URL = extractNotifyUrl;
}
public static void setH5BaseUrl(String h5BaseUrl) {
H5_BASE_URL = h5BaseUrl;
}
public static BaseResp payOrder(String orderNo, String amount, String userAgent, String allId, String payType) {
Map<String, Object> params = getBaseParams(); Map<String, Object> params = getBaseParams();
params.put("type", "6001"); params.put("type", "6001");
params.put("is_code", "1"); params.put("is_code", "1");
params.put("out_trade_no", orderNo); params.put("out_trade_no", orderNo);
params.put("total", amount); params.put("total", amount);
params.put("notify_url", NOTIFY_URL); params.put("notify_url", notifyUrl);
String sign = Encrypt.getParamsSign(params); String sign = Encrypt.getParamsSign(params);
params.put("sign", sign); params.put("sign", sign);
if ("h5".equals(payType)) { if ("h5".equals(payType)) {
params.put("return_url", H5_BASE_URL + allId); params.put("return_url", h5BaseUrl + allId);
} }
// https://dj-h5.hnsiyao.cn/me/detail/detail?allId=1230-98688 // https://dj-h5.hnsiyao.cn/me/detail/detail?allId=1230-98688
@@ -70,7 +62,7 @@ public class WuyouPay {
return JSONObject.parseObject(body, BaseResp.class); return JSONObject.parseObject(body, BaseResp.class);
} }
public static BaseResp queryOrder(String orderNo, String amount, String userAgent) { public BaseResp queryOrder(String orderNo, String amount, String userAgent) {
Map<String, Object> params = getBaseParams(); Map<String, Object> params = getBaseParams();
params.put("out_trade_no", orderNo); params.put("out_trade_no", orderNo);
params.put("total", amount); params.put("total", amount);
@@ -82,10 +74,10 @@ public class WuyouPay {
return JSONObject.parseObject(body, BaseResp.class); return JSONObject.parseObject(body, BaseResp.class);
} }
public static boolean checkCanCash(long userId, WithdrawTypeEnum type, BigDecimal money) { public boolean checkCanCash(long userId, WithdrawTypeEnum type, BigDecimal money) {
if (WithdrawTypeEnum.MANUAL.equals(type)) { if (WithdrawTypeEnum.MANUAL.equals(type)) {
// 查询当日体现次数 // 查询当日体现次数
Integer successCashCount = cashOutDao.selectTodayCashCount(userId, 1, DateUtil.today()+ " 00:00:00"); Integer successCashCount = cashOutDao.selectTodayCashCount(userId, 1, DateUtil.today() + " 00:00:00");
CommonInfo cashLimit = commonInfoService.findOne(922); CommonInfo cashLimit = commonInfoService.findOne(922);
if (cashLimit == null || StrUtil.isBlank(cashLimit.getValue())) { if (cashLimit == null || StrUtil.isBlank(cashLimit.getValue())) {
logger.warn("提现必要参数未配置,请联系管理员"); logger.warn("提现必要参数未配置,请联系管理员");
@@ -102,7 +94,7 @@ public class WuyouPay {
return true; return true;
} }
public static boolean checkCanCashByLimit(BigDecimal money) { public boolean checkCanCashByLimit(BigDecimal money) {
CommonInfo info = commonInfoService.findOne(923); CommonInfo info = commonInfoService.findOne(923);
if (info == null || StrUtil.isBlank(info.getValue())) { if (info == null || StrUtil.isBlank(info.getValue())) {
logger.warn("未配置提现限制,请联系管理员配置"); logger.warn("未配置提现限制,请联系管理员配置");
@@ -114,11 +106,11 @@ public class WuyouPay {
/** /**
* 提现 * 提现
*
* @param account 支付宝账号 * @param account 支付宝账号
* @param userName 支付宝名称 * @param userName 支付宝名称
* @return
*/ */
public static BaseResp extractOrder(String outOrderNo, String amount, String account, String userName) { public BaseResp extractOrder(String outOrderNo, String amount, String account, String userName) {
Map<String, Object> params = getBaseParams(); Map<String, Object> params = getBaseParams();
params.put("out_trade_no", outOrderNo); params.put("out_trade_no", outOrderNo);
@@ -129,7 +121,7 @@ public class WuyouPay {
params.put("bank_branch", "1"); params.put("bank_branch", "1");
params.put("province", "1"); params.put("province", "1");
params.put("city", "1"); params.put("city", "1");
params.put("notify_url", EXTRACT_NOTIFY_URL); params.put("notify_url", extractNotifyUrl);
String sign = Encrypt.getParamsSign(params); String sign = Encrypt.getParamsSign(params);
params.put("sign", sign); params.put("sign", sign);
@@ -141,7 +133,7 @@ public class WuyouPay {
return JSONObject.parseObject(body, BaseResp.class); return JSONObject.parseObject(body, BaseResp.class);
} }
public static BaseResp queryExtractOrder(String outOrderNo, String amount) { public BaseResp queryExtractOrder(String outOrderNo, String amount) {
Map<String, Object> params = getBaseParams(); Map<String, Object> params = getBaseParams();
params.put("out_trade_no", outOrderNo); params.put("out_trade_no", outOrderNo);
params.put("total", amount); params.put("total", amount);
@@ -153,7 +145,7 @@ public class WuyouPay {
return JSONObject.parseObject(body, BaseResp.class); return JSONObject.parseObject(body, BaseResp.class);
} }
private static Map<String, Object> getBaseParams() { private Map<String, Object> getBaseParams() {
Map<String, Object> params = new HashMap<>(); Map<String, Object> params = new HashMap<>();
params.put("mch_id", Constants.MERCHANT_ID); params.put("mch_id", Constants.MERCHANT_ID);
params.put("timestamp", System.currentTimeMillis() / 1000); params.put("timestamp", System.currentTimeMillis() / 1000);
@@ -161,7 +153,7 @@ public class WuyouPay {
return params; return params;
} }
private static String request(String url, Map<String, Object> params, String userAgent) { private String request(String url, Map<String, Object> params, String userAgent) {
String body = HttpRequest.post(url) String body = HttpRequest.post(url)
.header("Content-Type", "application/x-www-form-urlencoded") .header("Content-Type", "application/x-www-form-urlencoded")
.header("User-Agent", userAgent) .header("User-Agent", userAgent)
@@ -181,6 +173,6 @@ public class WuyouPay {
// extractOrder("20221118123456793", "1", "1157756119@qq.com", "巩奕杰"); // extractOrder("20221118123456793", "1", "1157756119@qq.com", "巩奕杰");
// queryExtractOrder("20221118123456793", "1"); // queryExtractOrder("20221118123456793", "1");
System.out.println(DateUtil.today()+ " 00:00:00"); System.out.println(DateUtil.today() + " 00:00:00");
} }
} }