充值
This commit is contained in:
@@ -57,7 +57,7 @@ class Invited extends Model
|
||||
}
|
||||
|
||||
//下级充值推荐人收益计算
|
||||
public function invited_reward($sub_user_id,$money){
|
||||
public function invited_reward($sub_user_id,$money,$invited_user_id){
|
||||
//查询下级用户充值总金额
|
||||
$sub_user_all_money = db::name('vs_user_recharge')
|
||||
->where('user_id', $sub_user_id)
|
||||
@@ -65,34 +65,17 @@ class Invited extends Model
|
||||
if($sub_user_all_money > 1000){
|
||||
return ['code' => 1, 'msg' => "下级充值金额大于1000元不需返利", 'data' => null];
|
||||
}
|
||||
//查询上级
|
||||
$invited_user_id = $this->where('sub_user_id', $sub_user_id)->value('user_id');
|
||||
if(!$invited_user_id){
|
||||
return ['code' => 0, 'msg' => "未绑定上级用户", 'data' => null];
|
||||
}
|
||||
|
||||
$invited_draw_conf = get_system_config_value('invited_draw');//分成比例
|
||||
$invited_draw = $invited_draw_conf / 100;
|
||||
$invited_draw_money = $money * $invited_draw;
|
||||
$invited_draw_money = $invited_draw_money / intval(get_system_config_value('rmb_coin_ratio')); //金币换算成钻石
|
||||
//修改用户资金
|
||||
$reslut = model('common/UserWallet')->change_user_money($invited_user_id, $invited_draw_money, model('common/UserWallet')::MONEYTYPEARNINGS, model('common/UserWallet')::OPERATION_INVITE_REBATE, '邀请用户充值返利');
|
||||
if($reslut['code'] == 1){
|
||||
//记录日志
|
||||
$data = [];
|
||||
$data['user_id'] = $invited_user_id;
|
||||
$data['sub_user_id'] = $sub_user_id;
|
||||
$data['coin'] = $money;
|
||||
$data['earnings'] = $invited_draw_money;
|
||||
$data['proportion'] = $invited_draw_conf;
|
||||
$data['createtime'] = time();
|
||||
$data['updatetime'] = time();
|
||||
$res = Db::name('vs_user_invited_income_log')->insert($data);
|
||||
if ($res) {
|
||||
return ['code' => 1, 'msg' => "操作成功", 'data' => null];
|
||||
}
|
||||
}else{
|
||||
return ['code' => $reslut['code'], 'msg' => $reslut['code'], 'data' => null];
|
||||
//增加余额并记录日志
|
||||
$wallet_update = model('api/UserWallet')->change_user_cion_log($invited_user_id,$invited_draw_money,0,6,'邀请用户充值返利');
|
||||
if(!$wallet_update){
|
||||
return ['code' => 0, 'msg' => "邀请给上级返利失败", 'data' => null];
|
||||
}
|
||||
return ['code' => 1, 'msg' => "操作成功", 'data' => null];
|
||||
}
|
||||
|
||||
//账单明细
|
||||
|
||||
@@ -1156,23 +1156,19 @@ function handelCharge($where,$data){
|
||||
}else{//充值
|
||||
db::startTrans();
|
||||
try{
|
||||
$userModel = db::name('user_wallet')->where('user_id',$orderModel['user_id'])->find();
|
||||
$userModel = db::name('user_wallet_coin')->where('user_id',$orderModel['user_id'])->find();
|
||||
if(!$userModel){
|
||||
return 0;
|
||||
}
|
||||
|
||||
//每天任意充值金额
|
||||
model('DailyTasks')->tasks_complete($orderModel['user_id'],4);
|
||||
|
||||
//增加余额
|
||||
$res = db::name('user_wallet')->where('user_id',$orderModel['user_id'])->update([
|
||||
'coin' => $userModel['coin'] + $orderModel['coin'],
|
||||
'updatetime' => time()
|
||||
]);
|
||||
if(!$res){
|
||||
db::rollback();
|
||||
return 0;
|
||||
}
|
||||
|
||||
//增加余额并记录日志
|
||||
$wallet_update = model('api/UserWallet')->change_user_cion_log($orderModel['user_id'],$orderModel['coin'],0,2,'充值');
|
||||
if(!$wallet_update){
|
||||
Db::rollback();
|
||||
return 0;
|
||||
}
|
||||
|
||||
//修改订单状态
|
||||
$res1 = db::name('vs_user_recharge')->where($where)->update([
|
||||
'pay_status' => 2,
|
||||
@@ -1184,38 +1180,23 @@ function handelCharge($where,$data){
|
||||
db::rollback();
|
||||
return 0;
|
||||
}
|
||||
//查询是否首充
|
||||
$is_first_charge = db::name('vs_user_money_log')->where('user_id',$orderModel['user_id'])->where('change_type',2)->where('money_type',1)->where(['createtime'=>['>=',"1760666400"]])->count();
|
||||
//添加充值记录
|
||||
$res2 = db::name('vs_user_money_log')->insert([
|
||||
'user_id' => $orderModel['user_id'],
|
||||
'change_type' => 2,
|
||||
'money_type' => 1,
|
||||
'change_value' => $orderModel['coin'],
|
||||
'from_id' => $orderModel['rid'],
|
||||
'remarks' => '充值',
|
||||
'createtime' => time()
|
||||
]);
|
||||
if(!$res2){
|
||||
db::rollback();
|
||||
return 0;
|
||||
}
|
||||
|
||||
//给上级返佣
|
||||
//获取上级
|
||||
//给上级返佣 //获取上级
|
||||
$invited_user_id = db::name('vs_user_invited')->where('sub_user_id', $orderModel['user_id'])->value('user_id');
|
||||
if($invited_user_id){
|
||||
$re3 = model('Invited')->invited_reward($orderModel['user_id'],$orderModel['coin']);
|
||||
$re3 = model('api/Invited')->invited_reward($orderModel['user_id'],$orderModel['coin'],$invited_user_id);
|
||||
if($re3['code'] != 1){
|
||||
db::rollback();
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
db::commit();
|
||||
//充值任务
|
||||
model('api/Tasks')->tasks_complete($orderModel['user_id'],12);
|
||||
db::commit();
|
||||
|
||||
//活动
|
||||
//查询是否首充
|
||||
$is_first_charge = db::name('vs_user_recharge')
|
||||
->where(['user_id' => $orderModel['user_id'],'pay_status' => 2])
|
||||
->count();
|
||||
//首充
|
||||
if($is_first_charge == 0){
|
||||
model('Activities')->first_charge_gift_send($orderModel['user_id'],$orderModel['money']);
|
||||
@@ -1235,12 +1216,12 @@ function handelCharge($where,$data){
|
||||
//新人好礼
|
||||
model('Activities')->new_charge_gift_send($orderModel['user_id'],$orderModel['money']);
|
||||
}
|
||||
|
||||
return 1;
|
||||
} catch (\Exception $e){
|
||||
db::rollback();
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -31,8 +31,8 @@ class AliPay
|
||||
$this->appId = $configs['alipay_app_id'];
|
||||
$this->rsaPrivateKey = $configs['alipay_private_key'];
|
||||
$this->alipayPublicKey = $configs['alipay_public_key'];
|
||||
// $this->notifyUrl = $configs['web_site']."/api/Payment/notify_ali";
|
||||
$this->notifyUrl = "http://vespa.qxyushen.top/api/Payment/notify_ali";
|
||||
$this->notifyUrl = $configs['web_site']."/api/Payment/notify_ali";
|
||||
// $this->notifyUrl = "http://vespa.qxyushen.top/api/Payment/notify_ali";
|
||||
|
||||
$aliPayPath = EXTEND_PATH.'/AliPayV2/alipay-sdk/aopV2/';
|
||||
require_once $aliPayPath . 'AopCertClient.php';
|
||||
|
||||
@@ -41,8 +41,8 @@ class WxPay
|
||||
$data ["out_trade_no"] = $d['order_sn'];
|
||||
$data ["total_fee"] = $total_fee;
|
||||
$data ["spbill_create_ip"] = $ip;
|
||||
// $data ["notify_url"] = get_system_config_value("web_site")."/api/Payment/notify_wx";
|
||||
$data ["notify_url"] = "http://vespa.qxyushen.top/api/Payment/notify_wx";
|
||||
$data ["notify_url"] = get_system_config_value("web_site")."/api/Payment/notify_wx";
|
||||
// $data ["notify_url"] = "http://vespa.qxyushen.top/api/Payment/notify_wx";
|
||||
$data ["trade_type"] = "APP";
|
||||
|
||||
$s = $this->getSign($data);
|
||||
|
||||
Reference in New Issue
Block a user