mirror of
https://github.com/ProxyPanel/ProxyPanel.git
synced 2026-04-11 23:19:05 +00:00
Code improve
This commit is contained in:
@@ -16,10 +16,8 @@ use App\Models\NodePing;
|
||||
use App\Models\Order;
|
||||
use App\Models\Ticket;
|
||||
use App\Models\TicketReply;
|
||||
use App\Models\UserHourlyDataFlow;
|
||||
use App\Models\UserLoginLog;
|
||||
use App\Models\UserSubscribe;
|
||||
use App\Services\UserService;
|
||||
use Auth;
|
||||
use Cache;
|
||||
use DB;
|
||||
@@ -46,25 +44,21 @@ class UserController extends Controller
|
||||
public function index()
|
||||
{
|
||||
$user = Auth::getUser();
|
||||
if (! $user) {
|
||||
return redirect()->route('login');
|
||||
}
|
||||
$totalTransfer = $user->transfer_enable;
|
||||
$usedTransfer = $user->u + $user->d;
|
||||
$unusedTransfer = $totalTransfer - $usedTransfer > 0 ? $totalTransfer - $usedTransfer : 0;
|
||||
$usedTransfer = $user->usedTraffic();
|
||||
$unusedTraffic = $totalTransfer - $usedTransfer > 0 ? $totalTransfer - $usedTransfer : 0;
|
||||
$expireTime = $user->expired_at;
|
||||
$view['remainDays'] = $expireTime < date('Y-m-d') ? -1 : Helpers::daysToNow($expireTime);
|
||||
$view['resetDays'] = $user->reset_time ? Helpers::daysToNow($user->reset_time) : 0;
|
||||
$view['unusedTransfer'] = $unusedTransfer;
|
||||
$view['unusedTraffic'] = flowAutoShow($unusedTraffic);
|
||||
$view['expireTime'] = $expireTime;
|
||||
$view['banedTime'] = $user->ban_time ? date('Y-m-d H:i:s', $user->ban_time) : 0;
|
||||
$view['unusedPercent'] = $totalTransfer > 0 ? round($unusedTransfer / $totalTransfer, 2) : 0;
|
||||
$view['noticeList'] = Article::type(2)->latest()->Paginate(1); // 公告
|
||||
$view['banedTime'] = $user->ban_time ?: 0;
|
||||
$view['unusedPercent'] = $totalTransfer > 0 ? round($unusedTraffic / $totalTransfer, 2) * 100 : 0;
|
||||
$view['announcements'] = Article::type(2)->take(5)->latest()->Paginate(1); // 公告
|
||||
//流量异常判断
|
||||
$hourlyTraffic = UserHourlyDataFlow::userRecentUsed($user->id)->sum('total');
|
||||
$view['isTrafficWarning'] = $hourlyTraffic >= (sysConfig('traffic_ban_value') * GB) ?: 0;
|
||||
$view['isTrafficWarning'] = $user->isTrafficWarning();
|
||||
//付费用户判断
|
||||
$view['not_paying_user'] = Order::uid()->active()->where('origin_amount', '>', 0)->doesntExist();
|
||||
$view['paying_user'] = $user->activePayingUser();
|
||||
$view['userLoginLog'] = UserLoginLog::whereUserId($user->id)->latest()->first(); // 近期登录日志
|
||||
$view = array_merge($view, $this->dataFlowChart($user->id));
|
||||
|
||||
@@ -87,7 +81,7 @@ class UserController extends Controller
|
||||
|
||||
$traffic = random_int((int) sysConfig('min_rand_traffic'), (int) sysConfig('max_rand_traffic')) * MB;
|
||||
|
||||
if (! (new UserService())->incrementData($traffic)) {
|
||||
if (! $user->incrementData($traffic)) {
|
||||
return Response::json(['status' => 'fail', 'message' => '签到失败,系统异常']);
|
||||
}
|
||||
|
||||
@@ -242,7 +236,7 @@ class UserController extends Controller
|
||||
$user->update(['u' => 0, 'd' => 0]);
|
||||
|
||||
// 扣余额
|
||||
(new UserService($user))->updateCredit(-$renewCost);
|
||||
$user->updateCredit(-$renewCost);
|
||||
|
||||
// 记录余额操作日志
|
||||
Helpers::addUserCreditLog($user->id, 0, $user->credit, $user->credit - $renewCost, -1 * $renewCost, '用户自行重置流量');
|
||||
@@ -253,15 +247,15 @@ class UserController extends Controller
|
||||
// 工单
|
||||
public function ticketList(Request $request)
|
||||
{
|
||||
$view['ticketList'] = Ticket::uid()->latest()->paginate(10)->appends($request->except('page'));
|
||||
|
||||
return view('user.ticketList', $view);
|
||||
return view('user.ticketList', [
|
||||
'tickets' => Auth::user()->tickets()->latest()->paginate(10)->appends($request->except('page')),
|
||||
]);
|
||||
}
|
||||
|
||||
// 订单
|
||||
public function invoices(Request $request)
|
||||
{
|
||||
$view['orderList'] = Order::uid()
|
||||
$view['orderList'] = Auth::user()->orders()
|
||||
->with(['goods', 'payment'])
|
||||
->orderByDesc('id')
|
||||
->paginate(10)
|
||||
@@ -291,7 +285,7 @@ class UserController extends Controller
|
||||
// 订单明细
|
||||
public function invoiceDetail($sn)
|
||||
{
|
||||
$view['order'] = Order::uid()->with(['goods', 'coupon', 'payment'])->whereOrderSn($sn)->firstOrFail();
|
||||
$view['order'] = Order::uid()->whereOrderSn($sn)->with(['goods', 'coupon', 'payment'])->firstOrFail();
|
||||
|
||||
return view('user.invoiceDetail', $view);
|
||||
}
|
||||
@@ -313,9 +307,8 @@ class UserController extends Controller
|
||||
$obj->title = $title;
|
||||
$obj->content = $content;
|
||||
$obj->status = 0;
|
||||
$obj->save();
|
||||
|
||||
if ($obj->id) {
|
||||
if ($obj->save()) {
|
||||
$emailTitle = '新工单提醒';
|
||||
$content = '标题:【'.$title.'】<br>用户:'.$user->email.'<br>内容:'.$content;
|
||||
|
||||
@@ -357,9 +350,8 @@ class UserController extends Controller
|
||||
$obj->ticket_id = $id;
|
||||
$obj->user_id = Auth::id();
|
||||
$obj->content = $content;
|
||||
$obj->save();
|
||||
|
||||
if ($obj->id) {
|
||||
if ($obj->save()) {
|
||||
// 重新打开工单
|
||||
$ticket->status = 0;
|
||||
$ticket->save();
|
||||
@@ -484,8 +476,8 @@ class UserController extends Controller
|
||||
}
|
||||
|
||||
$data = [
|
||||
'name' => $coupon->name,
|
||||
'type' => $coupon->type,
|
||||
'name' => $coupon->name,
|
||||
'type' => $coupon->type,
|
||||
'value' => $coupon->value,
|
||||
];
|
||||
|
||||
@@ -528,7 +520,7 @@ class UserController extends Controller
|
||||
$view['sub'] = $data;
|
||||
|
||||
//付费用户判断
|
||||
$view['not_paying_user'] = Order::uid()->active()->where('origin_amount', '>', 0)->doesntExist();
|
||||
$view['paying_user'] = Auth::user()->activePayingUser();
|
||||
//客户端安装
|
||||
$view['Shadowrocket_install'] = 'itms-services://?action=download-manifest&url='.sysConfig('website_url').'/clients/Shadowrocket.plist';
|
||||
$view['Quantumult_install'] = 'itms-services://?action=download-manifest&url='.sysConfig('website_url').'/clients/Quantumult.plist';
|
||||
@@ -608,17 +600,10 @@ class UserController extends Controller
|
||||
DB::beginTransaction();
|
||||
// 写入日志
|
||||
$user = Auth::getUser();
|
||||
Helpers::addUserCreditLog(
|
||||
$user->id,
|
||||
0,
|
||||
$user->credit,
|
||||
$user->credit + $coupon->value,
|
||||
$coupon->value,
|
||||
'用户手动充值 - [充值券:'.$request->input('coupon_sn').']'
|
||||
);
|
||||
Helpers::addUserCreditLog($user->id, 0, $user->credit, $user->credit + $coupon->value, $coupon->value, '用户手动充值 - [充值券:'.$request->input('coupon_sn').']');
|
||||
|
||||
// 余额充值
|
||||
(new UserService($user))->updateCredit($coupon->value);
|
||||
$user->updateCredit($coupon->value);
|
||||
|
||||
// 更改卡券状态
|
||||
Coupon::find($coupon->id)->update(['status' => 1]);
|
||||
|
||||
Reference in New Issue
Block a user