|
@@ -7,9 +7,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
-import com.sqx.common.constant.MyConstant;
|
|
|
|
|
import com.sqx.common.constant.RedisKey;
|
|
import com.sqx.common.constant.RedisKey;
|
|
|
import com.sqx.common.exception.SqxException;
|
|
import com.sqx.common.exception.SqxException;
|
|
|
|
|
+import com.sqx.common.utils.Constant;
|
|
|
import com.sqx.common.utils.PageUtils;
|
|
import com.sqx.common.utils.PageUtils;
|
|
|
import com.sqx.common.utils.Result;
|
|
import com.sqx.common.utils.Result;
|
|
|
import com.sqx.modules.app.dao.UserCashOutDao;
|
|
import com.sqx.modules.app.dao.UserCashOutDao;
|
|
@@ -614,25 +614,26 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
|
|
|
lock.lock();
|
|
lock.lock();
|
|
|
try {
|
|
try {
|
|
|
CashOut cashOut = getById(cashId);
|
|
CashOut cashOut = getById(cashId);
|
|
|
|
|
+
|
|
|
// 前置准备
|
|
// 前置准备
|
|
|
String mchId = prepareBeforeConfirmCashOut(cashOut);
|
|
String mchId = prepareBeforeConfirmCashOut(cashOut);
|
|
|
|
|
|
|
|
- // 1 支付宝 2 小程序 3公众号 4 微信app 5银行卡 6rht分账
|
|
|
|
|
- Integer classify = cashOut.getClassify();
|
|
|
|
|
- if (classify == 5) {
|
|
|
|
|
- // 银行卡为手动转账,不需要做任何事情
|
|
|
|
|
- } else if (classify == 6) {
|
|
|
|
|
|
|
+ // 判断是否启用新支付
|
|
|
|
|
+ String value = commonInfoService.findOne(433).getValue();
|
|
|
|
|
+ if (StrUtil.equals(value, Constant.YES)){
|
|
|
if (StrUtil.isBlank(mchId)) {
|
|
if (StrUtil.isBlank(mchId)) {
|
|
|
throw new SqxException("当前用户/店铺未设置商户号");
|
|
throw new SqxException("当前用户/店铺未设置商户号");
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ // 自动分账
|
|
|
newPayService.wechatSplitBill(cashOut.getOrderNumber(), mchId, new BigDecimal(cashOut.getMoney()));
|
|
newPayService.wechatSplitBill(cashOut.getOrderNumber(), mchId, new BigDecimal(cashOut.getMoney()));
|
|
|
} else {
|
|
} else {
|
|
|
- throw new SqxException("不支持的提现方式");
|
|
|
|
|
|
|
+ // 未启用新支付,则表示银行卡手动转账,这里不需要做任何事情
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ // 修改提现申请状态
|
|
|
cashOut.setState(1);
|
|
cashOut.setState(1);
|
|
|
cashOut.setOutAt(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
|
|
cashOut.setOutAt(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
|
|
|
-
|
|
|
|
|
updateById(cashOut);
|
|
updateById(cashOut);
|
|
|
} finally {
|
|
} finally {
|
|
|
lock.unlock();
|
|
lock.unlock();
|
|
@@ -657,16 +658,17 @@ public class CashOutServiceImpl extends ServiceImpl<CashOutDao, CashOut> impleme
|
|
|
// 1用户提现 2商户提现 3骑手提现
|
|
// 1用户提现 2商户提现 3骑手提现
|
|
|
Integer cashOutType = cashOut.getType();
|
|
Integer cashOutType = cashOut.getType();
|
|
|
|
|
|
|
|
- String mchId = null;
|
|
|
|
|
|
|
+ String mchId;
|
|
|
if (cashOutType == 2) {
|
|
if (cashOutType == 2) {
|
|
|
- // TODO 骑手商户号
|
|
|
|
|
|
|
+ RiderBankCardInfo riderBankCardInfo = riderBankCardInfoService.getByUserId(userEntity.getUserId());
|
|
|
|
|
+ mchId = riderBankCardInfo.getMchId();
|
|
|
} else if (cashOutType == 3) {
|
|
} else if (cashOutType == 3) {
|
|
|
// 店铺商户号
|
|
// 店铺商户号
|
|
|
Long adminUserId = userEntity.getAdminUserId();
|
|
Long adminUserId = userEntity.getAdminUserId();
|
|
|
GoodsShop goodsShop = goodsShopService.getByAdminUserId(adminUserId);
|
|
GoodsShop goodsShop = goodsShopService.getByAdminUserId(adminUserId);
|
|
|
mchId = goodsShop.getMchId();
|
|
mchId = goodsShop.getMchId();
|
|
|
} else {
|
|
} else {
|
|
|
- throw new SqxException("暂不支持用户提现");
|
|
|
|
|
|
|
+ throw new SqxException("暂不支持用户类型提现");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
return mchId;
|
|
return mchId;
|