爵位接口提交-购买爵位
This commit is contained in:
@@ -109,4 +109,92 @@ class Nobility extends Model
|
|||||||
}
|
}
|
||||||
return ['code' => 1, 'msg' => '成功', 'data' => $return];
|
return ['code' => 1, 'msg' => '成功', 'data' => $return];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//购买爵位
|
||||||
|
public static function buyNobility($user_id,$lid){
|
||||||
|
$nobility_info = db::name('vs_nobility')
|
||||||
|
->field('lid,name,pay_price,pay_coin')
|
||||||
|
->where('delete_time', 0)
|
||||||
|
->where('lid', $lid)
|
||||||
|
->find();
|
||||||
|
if (!$nobility_info) {
|
||||||
|
return ['code' => 0, 'msg' => '爵位不存在'];
|
||||||
|
}
|
||||||
|
$user_info = db::name('user')
|
||||||
|
->field('id,nickname,avatar')
|
||||||
|
->where('delete_time', 0)
|
||||||
|
->where('id', $user_id)
|
||||||
|
->find();
|
||||||
|
if (!$user_info) {
|
||||||
|
return ['code' => 0, 'msg' => '用户不存在'];
|
||||||
|
}
|
||||||
|
$user_nobility_info = db::name('vs_user_nobility')
|
||||||
|
->field('id,user_id,lid,end_time')
|
||||||
|
->where('delete_time', 0)
|
||||||
|
->where('user_id', $user_id)
|
||||||
|
->find();
|
||||||
|
if ($user_nobility_info) { //已购买过 续费
|
||||||
|
if($user_nobility_info['lid'] == $lid){//续费
|
||||||
|
$is_renew = 1;
|
||||||
|
if($user_nobility_info['end_time'] > time()){
|
||||||
|
$old_end_time = $user_nobility_info['end_time'];
|
||||||
|
}else{
|
||||||
|
$old_end_time = time();
|
||||||
|
}
|
||||||
|
$end_time = $old_end_time + $nobility_info['day'] * 86400;
|
||||||
|
$data = [
|
||||||
|
'end_time' => $end_time,
|
||||||
|
'updatetime' => time(),
|
||||||
|
];
|
||||||
|
$re = db::name('vs_user_nobility')->where('id', $user_nobility_info['id'])->update($data);
|
||||||
|
if (!$re) {
|
||||||
|
return ['code' => 0, 'msg' => '失败'];
|
||||||
|
}
|
||||||
|
|
||||||
|
}else{ //升级
|
||||||
|
$is_renew = 2;
|
||||||
|
if($user_nobility_info['end_time'] > time()){
|
||||||
|
$old_end_time = $user_nobility_info['end_time'];
|
||||||
|
}else{
|
||||||
|
$old_end_time = time();
|
||||||
|
}
|
||||||
|
$end_time = $old_end_time + $nobility_info['day'] * 86400;
|
||||||
|
$data = [
|
||||||
|
'lid' => $lid,
|
||||||
|
'user_id' => $user_id,
|
||||||
|
'end_time' => $end_time,
|
||||||
|
'createtime' => time(),
|
||||||
|
];
|
||||||
|
db::name('vs_user_nobility')->where('id', $user_nobility_info['id'])->update(['delete_time'=>time()]);
|
||||||
|
$re = db::name('vs_user_nobility')->insert($data);
|
||||||
|
if (!$re) {
|
||||||
|
return ['code' => 0, 'msg' => '失败'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else{ //未购买 新购
|
||||||
|
$is_renew = 0;
|
||||||
|
$end_time = time() + $nobility_info['day'] * 86400;
|
||||||
|
$data = [
|
||||||
|
'user_id' => $user_id,
|
||||||
|
'lid' => $lid,
|
||||||
|
'end_time' => $end_time,
|
||||||
|
'createtime' => time(),
|
||||||
|
];
|
||||||
|
$re = db::name('vs_user_nobility')->insert($data);
|
||||||
|
if (!$re) {
|
||||||
|
return ['code' => 0, 'msg' => '失败'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//记录日志
|
||||||
|
$log_data = [
|
||||||
|
'user_id' => $user_id,
|
||||||
|
'lid' => $lid,
|
||||||
|
'day' => $nobility_info['day'],
|
||||||
|
'end_time' => $end_time,
|
||||||
|
'is_renew' => $is_renew,
|
||||||
|
'createtime' => time(),
|
||||||
|
];
|
||||||
|
db::name('vs_user_nobility_log')->insert($log_data);
|
||||||
|
return ['code' => 1, 'msg' => '成功'];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user