Revert "feat: 线上自助充值不再扣代理余额(系统直充)"

This reverts commit 0bf387f7d5.
This commit is contained in:
2026-05-24 20:55:06 +08:00
parent 0bf387f7d5
commit 24c71fa7a0
9 changed files with 106 additions and 53 deletions
@@ -73,6 +73,10 @@ trait alinPay
if (!$zdl) {
return json(['status' => 0, 'message' => '所属代理账号异常,暂不能充值']);
}
if ($zdl['money'] < $money) {
return json(['status' => 0, 'message' => '所属代理余额不足,暂不能充值']);
}
$pay_list = config('pay_list');
$pay_orderid = 'E' . date("YmdHis") . rand(100000, 999999);
$notify_url = $pay_list['alinPay']['notify_url'];
@@ -228,9 +232,9 @@ trait alinPay
'agent' => 1,
])->lock(true)->find();
if (!$zdl) {
if (!$zdl || $zdl['money'] < $order['money']) {
Db::rollback();
addLogToFile('代收结算失败:无法找到总代理 order=' . $orderNo, 'alin_callback_error', 'alin');
addLogToFile('代收结算失败:代理余额不足 order=' . $orderNo, 'alin_callback_error', 'alin');
return;
}
@@ -244,7 +248,7 @@ trait alinPay
'zdl_id' => $zdl['id'],
'zdl_username' => $zdl['username'],
'zdl_money_before' => $zdl['money'],
'zdl_money_after' => $zdl['money'],
'zdl_money_after' => $zdl['money'] - $order['money'],
'money_before' => $user['money'],
'money_after' => $user['money'] + $order['money'],
]);
@@ -268,9 +272,9 @@ trait alinPay
'controller_id' => $zdl['id'],
'controller_username' => $zdl['username'],
'controller_nickname' => $zdl['nickname'],
'controller_type' => '越南第三方充值平台充值,系统直充',
'controller_type' => '越南第三方充值平台充值,扣取总代理余分',
'controller_old_money' => $zdl['money'],
'controller_new_money' => $zdl['money'],
'controller_new_money' => $zdl['money'] - $order['money'],
'user_id' => $order['user_id'],
'user_type' => $user['agent'],
'user_agent_level' => 0,
@@ -284,8 +288,9 @@ trait alinPay
'remake' => '越南AlinPay第三方充值成功',
]);
// 4. 更新代理统计(不扣余额
// 4. 扣代理余额
Db::name('user')->where('id', $zdl['id'])->update([
'money' => $zdl['money'] - $order['money'],
'last_recharge_out' => $order['money'],
'last_recharge_out_time' => time(),
'recharge_out_count' => $zdl['recharge_out_count'] + 1,
@@ -67,6 +67,17 @@ trait ccpayPay
$data = encrypt_data(['status' => 0, 'message' => 'Tài khoản đại lý có vấn đề, không thể nạp']);
return json(['Success' => 1, 'Data' => $data]);
}
if ($zdl['money'] < $money) {
$maxAllowed = intval($zdl['money']);
$data = encrypt_data([
'status' => 0,
'code' => 'AGENT_LIMIT',
'message' => 'Hạn mức nạp mỗi lần hiện tại là ' . number_format($maxAllowed, 0, '.', ',') . ' VND. Vui lòng nhập số tiền nhỏ hơn hoặc bằng mức trên.',
'max_amount' => $maxAllowed,
]);
return json(['Success' => 1, 'Data' => $data]);
}
$pay_list = config('pay_list');
$pay_orderid = 'C' . date('YmdHis') . rand(100000, 999999);
$notify_url = $pay_list['ccpay']['notify_url'] ?? '';
@@ -320,9 +331,9 @@ trait ccpayPay
'agent' => 1,
])->lock(true)->find();
if (!$zdl) {
if (!$zdl || $zdl['money'] < $order['money']) {
Db::rollback();
addLogToFile('ccpay 结算失败: 无法找到总代理 order=' . $orderNo, 'ccpay_callback_error', 'ccpay');
addLogToFile('ccpay 结算失败: 代理余额不足 order=' . $orderNo, 'ccpay_callback_error', 'ccpay');
return;
}
@@ -337,7 +348,7 @@ trait ccpayPay
'zdl_id' => $zdl['id'],
'zdl_username' => $zdl['username'],
'zdl_money_before' => $zdl['money'],
'zdl_money_after' => $zdl['money'],
'zdl_money_after' => $zdl['money'] - $order['money'],
'money_before' => $user['money'],
'money_after' => $user['money'] + $order['money'],
]);
@@ -359,9 +370,9 @@ trait ccpayPay
'controller_id' => $zdl['id'],
'controller_username' => $zdl['username'],
'controller_nickname' => $zdl['nickname'],
'controller_type' => 'CCpay越南银行第三方充值,系统直充',
'controller_type' => 'CCpay越南银行第三方充值,扣取总代理余分',
'controller_old_money' => $zdl['money'],
'controller_new_money' => $zdl['money'],
'controller_new_money' => $zdl['money'] - $order['money'],
'user_id' => $order['user_id'],
'user_type' => $user['agent'],
'user_agent_level' => 0,
@@ -376,6 +387,7 @@ trait ccpayPay
]);
Db::name('user')->where('id', $zdl['id'])->update([
'money' => $zdl['money'] - $order['money'],
'last_recharge_out' => $order['money'],
'last_recharge_out_time' => time(),
'recharge_out_count' => $zdl['recharge_out_count'] + 1,
@@ -113,6 +113,17 @@ trait epayPay
$data = encrypt_data(['status' => 0, 'message' => 'Tài khoản đại lý có vấn đề, không thể nạp']);
return json(['Success' => 1, 'Data' => $data]);
}
if ($zdl['money'] < $money) {
$maxAllowed = intval($zdl['money']);
$data = encrypt_data([
'status' => 0,
'code' => 'AGENT_LIMIT',
'message' => 'Hạn mức nạp mỗi lần hiện tại là ' . number_format($maxAllowed, 0, '.', ',') . ' VND. Vui lòng nhập số tiền nhỏ hơn hoặc bằng mức trên.',
'max_amount' => $maxAllowed,
]);
return json(['Success' => 1, 'Data' => $data]);
}
$pay_list = config('pay_list');
$pay_orderid = 'P' . date('YmdHis') . rand(100000, 999999); // P 前缀区分 AlinPay 的 E
$notify_url = $pay_list['epay']['notify_url'] ?? '';
@@ -425,9 +436,9 @@ trait epayPay
'agent' => 1,
])->lock(true)->find();
if (!$zdl) {
if (!$zdl || $zdl['money'] < $order['money']) {
Db::rollback();
addLogToFile('epay 结算失败:无法找到总代理 order=' . $orderNo, 'epay_callback_error', 'epay');
addLogToFile('epay 结算失败:代理余额不足 order=' . $orderNo, 'epay_callback_error', 'epay');
return;
}
@@ -444,7 +455,7 @@ trait epayPay
'zdl_id' => $zdl['id'],
'zdl_username' => $zdl['username'],
'zdl_money_before' => $zdl['money'],
'zdl_money_after' => $zdl['money'],
'zdl_money_after' => $zdl['money'] - $order['money'],
'money_before' => $user['money'],
'money_after' => $user['money'] + $order['money'],
]);
@@ -468,9 +479,9 @@ trait epayPay
'controller_id' => $zdl['id'],
'controller_username' => $zdl['username'],
'controller_nickname' => $zdl['nickname'],
'controller_type' => '易支付第三方充值,系统直充',
'controller_type' => '易支付第三方充值,扣取总代理余分',
'controller_old_money' => $zdl['money'],
'controller_new_money' => $zdl['money'],
'controller_new_money' => $zdl['money'] - $order['money'],
'user_id' => $order['user_id'],
'user_type' => $user['agent'],
'user_agent_level' => 0,
@@ -484,8 +495,9 @@ trait epayPay
'remake' => '易支付第三方充值成功(' . ($data['type'] ?? '') . ')',
]);
// 4. 更新代理统计(不扣余额)
// 4. 扣代理
Db::name('user')->where('id', $zdl['id'])->update([
'money' => $zdl['money'] - $order['money'],
'last_recharge_out' => $order['money'],
'last_recharge_out_time' => time(),
'recharge_out_count' => $zdl['recharge_out_count'] + 1,
@@ -30,6 +30,9 @@ trait happyPay{
if(!$zdl){
return json(array('status' => 0, 'message' => '所属代理账号异常,暂不能充值'));
}
if($zdl['money'] < $money){
return json(array('status' => 0, 'message' => '所属代理余额不足,暂不能充值'));
}
$pay_list = config('pay_list');
if($user && $user_id > 0 && $money > 0 && $client > 0){
$pay_memberid = "API1362913582567500"; //商户CID
@@ -224,16 +227,16 @@ trait happyPay{
$zdlIdArr = explode(',',$user['agent_parent_id_path']);
$zdlId = $zdlIdArr[0];
$zdl = Db::name('user')->where(array('id' => $zdlId, 'status' => 1, 'is_delete' => 0, 'agent' => 1))->find();
if(!$zdl){
if(!$zdl || $zdl['money'] < $order['money']){
$update['status'] = 1;
$update['remake'] = '无法找到总代理,交易暂停';
$update['remake'] = '无法找到总代理,或者总代理账号余分不足,交易暂停';
Db::name('order_record')->where('id',$order['id'])->update($update);
$order_log = array();
$order_log['pay_channel_id'] = 5;
$order_log['pay_channel_name'] = 'happyPay';
$order_log['money'] = $order['money'];
$order_log['create_time'] = time();
$order_log['remake'] = "无法找到总代理,回调内容:".$serializeData;
$order_log['remake'] = "无法找到总代理,或者总代理账号余分不足,回调内容:".$serializeData;
$order_log['order_id'] = $order['id'];
Db::name('order_log')->insert($order_log);
exit('SUCCESS');//找不到总代理,回调失败
@@ -252,7 +255,7 @@ trait happyPay{
$call_back_data['zdl_id'] = $zdl['id'];
$call_back_data['zdl_username'] = $zdl['username'];
$call_back_data['zdl_money_before'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'] - $order['money'];
$call_back_data['money_before'] = $user['money'];
$call_back_data['money_after'] = $user['money'] + $order['money'];
Db::name('order_record')->where(array('id' => $order['id']))->update($call_back_data);
@@ -275,9 +278,9 @@ trait happyPay{
$recharge['controller_id'] = $zdl['id'];
$recharge['controller_username'] = $zdl['username'];
$recharge['controller_nickname'] = $zdl['nickname'];
$recharge['controller_type'] = '第三方充值平台充值,系统直充';
$recharge['controller_type'] = '第三方充值平台充值,扣取总代理余分';
$recharge['controller_old_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'] - $order['money'];
$recharge['user_id'] = $order['user_id'];
$recharge['user_type'] = $user['agent'];
$recharge['user_agent_level'] = 0;
@@ -291,6 +294,7 @@ trait happyPay{
$recharge['remake'] = '第三方充值成功';
Db::name('recharge')->insert($recharge);
$updateZdl = array();
$updateZdl['money'] = $zdl['money'] - $order['money'];
$updateZdl['last_recharge_out'] = $order['money'];
$updateZdl['last_recharge_out_time'] = time();
$updateZdl['recharge_out_count'] = $zdl['recharge_out_count'] + 1;
@@ -28,6 +28,9 @@ trait hengfuPay{
if(!$zdl){
return json(array('status' => 0, 'message' => '所属代理账号异常,暂不能充值'));
}
if($zdl['money'] < $money){
return json(array('status' => 0, 'message' => '所属代理余额不足,暂不能充值'));
}
$pay_list = config('pay_list');
if($user && $user_id > 0 && $money > 0 && $client > 0){
$sn = '1965312301';
@@ -165,17 +168,17 @@ trait hengfuPay{
$zdlIdArr = explode(',',$user['agent_parent_id_path']);
$zdlId = $zdlIdArr[0];
$zdl = Db::name('user')->where(array('id' => $zdlId, 'status' => 1, 'is_delete' => 0, 'agent' => 1))->find();
if(!$zdl){
if(!$zdl || $zdl['money'] < $order['money']){
//找不到总代理,回调失败
$update['status'] = 1;
$update['remake'] = '无法找到总代理,交易暂停';
$update['remake'] = '无法找到总代理,或者总代理账号余分不足,交易暂停';
Db::name('order_record')->where('id',$order['id'])->update($update);
$order_log = array();
$order_log['pay_channel_id'] = 6;
$order_log['pay_channel_name'] = 'hengfuPay';
$order_log['money'] = $order['money'];
$order_log['create_time'] = time();
$order_log['remake'] = "无法找到总代理,回调内容:".$serializeData;
$order_log['remake'] = "无法找到总代理,或者总代理账号余分不足,回调内容:".$serializeData;
$order_log['order_id'] = $order['id'];
Db::name('order_log')->insert($order_log);
exit('success');
@@ -191,7 +194,7 @@ trait hengfuPay{
$call_back_data['zdl_id'] = $zdl['id'];
$call_back_data['zdl_username'] = $zdl['username'];
$call_back_data['zdl_money_before'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'] - $order['money'];
$call_back_data['money_before'] = $user['money'];
$call_back_data['money_after'] = $user['money'] + $order['money'];
Db::name('order_record')->where(array('id' => $order['id']))->update($call_back_data);
@@ -214,9 +217,9 @@ trait hengfuPay{
$recharge['controller_id'] = $zdl['id'];
$recharge['controller_username'] = $zdl['username'];
$recharge['controller_nickname'] = $zdl['nickname'];
$recharge['controller_type'] = '第三方充值平台充值,系统直充';
$recharge['controller_type'] = '第三方充值平台充值,扣取总代理余分';
$recharge['controller_old_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'] - $order['money'];
$recharge['user_id'] = $order['user_id'];
$recharge['user_type'] = $user['agent'];
$recharge['user_agent_level'] = 0;
@@ -230,6 +233,7 @@ trait hengfuPay{
$recharge['remake'] = '第三方充值成功';
Db::name('recharge')->insert($recharge);
$updateZdl = array();
$updateZdl['money'] = $zdl['money'] - $order['money'];
$updateZdl['last_recharge_out'] = $order['money'];
$updateZdl['last_recharge_out_time'] = time();
$updateZdl['recharge_out_count'] = $zdl['recharge_out_count'] + 1;
@@ -36,6 +36,9 @@ trait hipPay{
if(!$zdl){
return json(array('status' => 0, 'message' => '所属代理账号异常,暂不能充值'));
}
if($zdl['money'] < $money){
return json(array('status' => 0, 'message' => '所属代理余额不足,暂不能充值'));
}
$pay_list = config('pay_list');
if($user && $user_id > 0 && $money > 0 && $client > 0){
$pay_orderid = date("YmdHis").rand(10,99); //订单号
@@ -171,16 +174,16 @@ trait hipPay{
$zdlIdArr = explode(',',$user['agent_parent_id_path']);
$zdlId = $zdlIdArr[0];
$zdl = Db::name('user')->where(array('id' => $zdlId, 'status' => 1, 'is_delete' => 0, 'agent' => 1))->find();
if(!$zdl){
if(!$zdl || $zdl['money'] < $order['money']){
$update['status'] = 1;
$update['remake'] = '无法找到总代理,交易暂停';
$update['remake'] = '无法找到总代理,或者总代理账号余分不足,交易暂停';
Db::name('order_record')->where('id',$order['id'])->update($update);
$order_log = array();
$order_log['pay_channel_id'] = 3;
$order_log['pay_channel_name'] = 'hipPay';
$order_log['money'] = $order['money'];
$order_log['create_time'] = time();
$order_log['remake'] = "无法找到总代理,回调内容:".$serializeData;
$order_log['remake'] = "无法找到总代理,或者总代理账号余分不足,回调内容:".$serializeData;
$order_log['order_id'] = $order['id'];
Db::name('order_log')->insert($order_log);
exit('OK');//找不到总代理,回调失败
@@ -197,7 +200,7 @@ trait hipPay{
$call_back_data['zdl_id'] = $zdl['id'];
$call_back_data['zdl_username'] = $zdl['username'];
$call_back_data['zdl_money_before'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'] - $order['money'];
$call_back_data['money_before'] = $user['money'];
$call_back_data['money_after'] = $user['money'] + $order['money'];
Db::name('order_record')->where(array('id' => $order['id']))->update($call_back_data);
@@ -220,9 +223,9 @@ trait hipPay{
$recharge['controller_id'] = $zdl['id'];
$recharge['controller_username'] = $zdl['username'];
$recharge['controller_nickname'] = $zdl['nickname'];
$recharge['controller_type'] = '第三方充值平台充值,系统直充';
$recharge['controller_type'] = '第三方充值平台充值,扣取总代理余分';
$recharge['controller_old_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'] - $order['money'];
$recharge['user_id'] = $order['user_id'];
$recharge['user_type'] = $user['agent'];
$recharge['user_agent_level'] = 0;
@@ -236,6 +239,7 @@ trait hipPay{
$recharge['remake'] = '第三方充值成功';
Db::name('recharge')->insert($recharge);
$updateZdl = array();
$updateZdl['money'] = $zdl['money'] - $order['money'];
$updateZdl['last_recharge_out'] = $order['money'];
$updateZdl['last_recharge_out_time'] = time();
$updateZdl['recharge_out_count'] = $zdl['recharge_out_count'] + 1;
@@ -36,6 +36,9 @@ trait oneGoPay{
if(!$zdl){
return json(array('status' => 0, 'message' => '所属代理账号异常,暂不能充值'));
}
if($zdl['money'] < $money){
return json(array('status' => 0, 'message' => '所属代理余额不足,暂不能充值'));
}
$pay_list = config('pay_list');
if($user && $user_id > 0 && $money > 0 && $client > 0){
$pay_orderid = 'E'.date("YmdHis").rand(100000,999999); //订单号
@@ -152,16 +155,16 @@ trait oneGoPay{
$zdlIdArr = explode(',',$user['agent_parent_id_path']);
$zdlId = $zdlIdArr[0];
$zdl = Db::name('user')->where(array('id' => $zdlId, 'status' => 1, 'is_delete' => 0, 'agent' => 1))->find();
if(!$zdl){
if(!$zdl || $zdl['money'] < $order['money']){
$update['status'] = 1;
$update['remake'] = '无法找到总代理,交易暂停';
$update['remake'] = '无法找到总代理,或者总代理账号余分不足,交易暂停';
Db::name('order_record')->where('id',$order['id'])->update($update);
$order_log = array();
$order_log['pay_channel_id'] = 2;
$order_log['pay_channel_name'] = 'oneGoPay';
$order_log['money'] = $order['money'];
$order_log['create_time'] = time();
$order_log['remake'] = "无法找到总代理,回调内容:".$serializePost;
$order_log['remake'] = "无法找到总代理,或者总代理账号余分不足,回调内容:".$serializePost;
$order_log['order_id'] = $order['id'];
Db::name('order_log')->insert($order_log);
exit('OK');//找不到总代理,回调失败
@@ -178,7 +181,7 @@ trait oneGoPay{
$call_back_data['zdl_id'] = $zdl['id'];
$call_back_data['zdl_username'] = $zdl['username'];
$call_back_data['zdl_money_before'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'] - $order['money'];
$call_back_data['money_before'] = $user['money'];
$call_back_data['money_after'] = $user['money'] + $order['money'];
Db::name('order_record')->where(array('id' => $order['id']))->update($call_back_data);
@@ -201,9 +204,9 @@ trait oneGoPay{
$recharge['controller_id'] = $zdl['id'];
$recharge['controller_username'] = $zdl['username'];
$recharge['controller_nickname'] = $zdl['nickname'];
$recharge['controller_type'] = '第三方充值平台充值,系统直充';
$recharge['controller_type'] = '第三方充值平台充值,扣取总代理余分';
$recharge['controller_old_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'] - $order['money'];
$recharge['user_id'] = $order['user_id'];
$recharge['user_type'] = $user['agent'];
$recharge['user_agent_level'] = 0;
@@ -217,6 +220,7 @@ trait oneGoPay{
$recharge['remake'] = '第三方充值成功';
Db::name('recharge')->insert($recharge);
$updateZdl = array();
$updateZdl['money'] = $zdl['money'] - $order['money'];
$updateZdl['last_recharge_out'] = $order['money'];
$updateZdl['last_recharge_out_time'] = time();
$updateZdl['recharge_out_count'] = $zdl['recharge_out_count'] + 1;
@@ -30,6 +30,9 @@ trait tingPay{
if(!$zdl){
return json(array('status' => 0, 'message' => '所属代理账号异常,暂不能充值'));
}
if($zdl['money'] < $money){
return json(array('status' => 0, 'message' => '所属代理余额不足,暂不能充值'));
}
$pay_list = config('pay_list');
if($user && $user_id > 0 && $money > 0 && $client > 0){
$pay_memberid = "3359"; //商户CID
@@ -176,16 +179,16 @@ trait tingPay{
$zdlIdArr = explode(',',$user['agent_parent_id_path']);
$zdlId = $zdlIdArr[0];
$zdl = Db::name('user')->where(array('id' => $zdlId, 'status' => 1, 'is_delete' => 0, 'agent' => 1))->find();
if(!$zdl){
if(!$zdl || $zdl['money'] < $order['money']){
$update['status'] = 1;
$update['remake'] = '无法找到总代理,交易暂停';
$update['remake'] = '无法找到总代理,或者总代理账号余分不足,交易暂停';
Db::name('order_record')->where('id',$order['id'])->update($update);
$order_log = array();
$order_log['pay_channel_id'] = 4;
$order_log['pay_channel_name'] = 'tingPay';
$order_log['money'] = $order['money'];
$order_log['create_time'] = time();
$order_log['remake'] = "无法找到总代理,回调内容:".$serializeData;
$order_log['remake'] = "无法找到总代理,或者总代理账号余分不足,回调内容:".$serializeData;
$order_log['order_id'] = $order['id'];
Db::name('order_log')->insert($order_log);
exit('success');//找不到总代理,回调失败
@@ -204,7 +207,7 @@ trait tingPay{
$call_back_data['zdl_id'] = $zdl['id'];
$call_back_data['zdl_username'] = $zdl['username'];
$call_back_data['zdl_money_before'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'] - $order['money'];
$call_back_data['money_before'] = $user['money'];
$call_back_data['money_after'] = $user['money'] + $order['money'];
Db::name('order_record')->where(array('id' => $order['id']))->update($call_back_data);
@@ -227,9 +230,9 @@ trait tingPay{
$recharge['controller_id'] = $zdl['id'];
$recharge['controller_username'] = $zdl['username'];
$recharge['controller_nickname'] = $zdl['nickname'];
$recharge['controller_type'] = '第三方充值平台充值,系统直充';
$recharge['controller_type'] = '第三方充值平台充值,扣取总代理余分';
$recharge['controller_old_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'] - $order['money'];
$recharge['user_id'] = $order['user_id'];
$recharge['user_type'] = $user['agent'];
$recharge['user_agent_level'] = 0;
@@ -243,6 +246,7 @@ trait tingPay{
$recharge['remake'] = '第三方充值成功';
Db::name('recharge')->insert($recharge);
$updateZdl = array();
$updateZdl['money'] = $zdl['money'] - $order['money'];
$updateZdl['last_recharge_out'] = $order['money'];
$updateZdl['last_recharge_out_time'] = time();
$updateZdl['recharge_out_count'] = $zdl['recharge_out_count'] + 1;
@@ -30,6 +30,9 @@ trait yonghengPay{
if(!$zdl){
return json(array('status' => 0, 'message' => '所属代理账号异常,暂不能充值'));
}
if($zdl['money'] < $money){
return json(array('status' => 0, 'message' => '所属代理余额不足,暂不能充值'));
}
$pay_list = config('pay_list');
if($user && $user_id > 0 && $money > 0 && $client > 0){
$pay_memberid = "11319"; //商户ID
@@ -224,16 +227,16 @@ trait yonghengPay{
$zdlIdArr = explode(',',$user['agent_parent_id_path']);
$zdlId = $zdlIdArr[0];
$zdl = Db::name('user')->where(array('id' => $zdlId, 'status' => 1, 'is_delete' => 0, 'agent' => 1))->find();
if(!$zdl){
if(!$zdl || $zdl['money'] < $order['money']){
$update['status'] = 1;
$update['remake'] = '无法找到总代理,交易暂停';
$update['remake'] = '无法找到总代理,或者总代理账号余分不足,交易暂停';
Db::name('order_record')->where('id',$order['id'])->update($update);
$order_log = array();
$order_log['pay_channel_id'] = 1;
$order_log['pay_channel_name'] = '永恒168';
$order_log['money'] = $order['money'];
$order_log['create_time'] = time();
$order_log['remake'] = "无法找到总代理,回调内容:".$serializePost;
$order_log['remake'] = "无法找到总代理,或者总代理账号余分不足,回调内容:".$serializePost;
$order_log['order_id'] = $order['id'];
Db::name('order_log')->insert($order_log);
exit('OK');//找不到总代理,回调失败
@@ -251,7 +254,7 @@ trait yonghengPay{
$call_back_data['zdl_id'] = $zdl['id'];
$call_back_data['zdl_username'] = $zdl['username'];
$call_back_data['zdl_money_before'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'];
$call_back_data['zdl_money_after'] = $zdl['money'] - $order['money'];
$call_back_data['money_before'] = $user['money'];
$call_back_data['money_after'] = $user['money'] + $order['money'];
Db::name('order_record')->where(array('id' => $order['id']))->update($call_back_data);
@@ -274,9 +277,9 @@ trait yonghengPay{
$recharge['controller_id'] = $zdl['id'];
$recharge['controller_username'] = $zdl['username'];
$recharge['controller_nickname'] = $zdl['nickname'];
$recharge['controller_type'] = '第三方充值平台充值,系统直充';
$recharge['controller_type'] = '第三方充值平台充值,扣取总代理余分';
$recharge['controller_old_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'];
$recharge['controller_new_money'] = $zdl['money'] - $order['money'];
$recharge['user_id'] = $order['user_id'];
$recharge['user_type'] = $user['agent'];
$recharge['user_agent_level'] = 0;
@@ -290,6 +293,7 @@ trait yonghengPay{
$recharge['remake'] = '第三方充值成功';
Db::name('recharge')->insert($recharge);
$updateZdl = array();
$updateZdl['money'] = $zdl['money'] - $order['money'];
$updateZdl['last_recharge_out'] = $order['money'];
$updateZdl['last_recharge_out_time'] = time();
$updateZdl['recharge_out_count'] = $zdl['recharge_out_count'] + 1;