mirror of
https://github.com/crmeb/CRMEB.git
synced 2026-11-01 07:20:56 +00:00
【程序目录】微信提现到零钱优化,需要后台审核才能打款
This commit is contained in:
parent
13ed8bb200
commit
614d213678
@ -179,15 +179,44 @@ class UserExtractServices extends BaseServices
|
||||
$order_id = '';
|
||||
break;
|
||||
}
|
||||
|
||||
$insertData = ['order_id' => $order_id, 'nickname' => $nickname, 'phone' => $phone];
|
||||
|
||||
$openid = $wechatServices->getWechatOpenid($userExtract['uid'], 'wechat');
|
||||
|
||||
//自动提现到零钱
|
||||
if ($userExtract['extract_type'] == 'weixin' && sys_config('brokerage_type', 0) && $openid) {
|
||||
|
||||
/** @var StoreOrderCreateServices $services */
|
||||
$services = app()->make(StoreOrderCreateServices::class);
|
||||
$insertData['order_id'] = $services->getNewOrderId();
|
||||
|
||||
// 微信提现
|
||||
$res = WechatService::merchantPay($openid, $insertData['order_id'], $userExtract['extract_price'], '提现佣金到零钱');
|
||||
if (!$res) {
|
||||
throw new ValidateException('企业付款到零钱失败,请稍后再试');
|
||||
}
|
||||
|
||||
// 更新 提现申请记录 wechat_order_id
|
||||
$this->dao->update($id, ['wechat_order_id' => $insertData['order_id']]);
|
||||
|
||||
/** @var UserServices $userService */
|
||||
$userService = app()->make(UserServices::class);
|
||||
$user = $userService->getUserInfo($userExtract['uid']);
|
||||
|
||||
$insertData['nickname'] = $user['nickname'];
|
||||
$insertData['phone'] = $user['phone'];
|
||||
}
|
||||
|
||||
/** @var CapitalFlowServices $capitalFlowServices */
|
||||
$capitalFlowServices = app()->make(CapitalFlowServices::class);
|
||||
$capitalFlowServices->setFlow([
|
||||
'order_id' => $order_id,
|
||||
'order_id' => $insertData['order_id'],
|
||||
'uid' => $userExtract['uid'],
|
||||
'price' => bcmul('-1', $extractNumber, 2),
|
||||
'pay_type' => $userExtract['extract_type'],
|
||||
'nickname' => $nickname,
|
||||
'phone' => $phone
|
||||
'nickname' => $insertData['nickname'],
|
||||
'phone' => $insertData['phone']
|
||||
], 'extract');
|
||||
return true;
|
||||
}
|
||||
@ -336,6 +365,7 @@ class UserExtractServices extends BaseServices
|
||||
$extractBank = str_replace("\r\n", "\n", $extractBank);//防止不兼容
|
||||
$data['extractBank'] = explode("\n", is_array($extractBank) ? ($extractBank[0] ?? $extractBank) : $extractBank);
|
||||
$data['minPrice'] = sys_config('user_extract_min_price');//提现最低金额
|
||||
$data['brokerageType'] = sys_config('brokerage_type', 0);//到账方式
|
||||
return $data;
|
||||
}
|
||||
|
||||
@ -352,8 +382,10 @@ class UserExtractServices extends BaseServices
|
||||
if (!$user) {
|
||||
throw new ValidateException('数据不存在');
|
||||
}
|
||||
/** @var UserBillServices $userBill */
|
||||
$userBill = app()->make(UserBillServices::class);
|
||||
|
||||
if ($data['extract_type'] == 'weixin' && !sys_config('brokerage_type', 0) && !$data['weixin']) {
|
||||
throw new ValidateException('请输入微信账号');
|
||||
}
|
||||
|
||||
/** @var UserBrokerageServices $services */
|
||||
$services = app()->make(UserBrokerageServices::class);
|
||||
@ -412,16 +444,12 @@ class UserExtractServices extends BaseServices
|
||||
$wechatServices = app()->make(WechatUserServices::class);
|
||||
$openid = $wechatServices->getWechatOpenid($uid, 'wechat');
|
||||
if (sys_config('brokerage_type', 0) && $openid) {
|
||||
$insertData['status'] = 1;
|
||||
/** @var StoreOrderCreateServices $services */
|
||||
$services = app()->make(StoreOrderCreateServices::class);
|
||||
$insertData['wechat_order_id'] = $services->getNewOrderId();
|
||||
if ($data['money'] < 1) {
|
||||
throw new ValidateException('企业微信付款到零钱最低金额为1元');
|
||||
}
|
||||
}
|
||||
}
|
||||
$res1 = $this->transaction(function () use ($insertData, $data, $uid, $userService, $user, $mark, $openid) {
|
||||
$res1 = $this->transaction(function () use ($insertData, $data, $uid, $userService, $user, $mark) {
|
||||
if (!$res1 = $this->dao->save($insertData)) {
|
||||
throw new ValidateException('提现失败');
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user