Commit d43301a1 by Phạm Văn Đoan

cập nhật xử lý BXH tháng

parent fe3d44bd
......@@ -220,67 +220,71 @@ class CalculateReportCommand extends Command
}
break;
case 'monthly':
// Chỉ thực hiện nếu là ngày 21 hàng tháng, phải thực hiện trước 21h
if (date('d') == 21) {
// Chỉ thực hiện nếu là ngày 21 hàng tháng, phải thực hiện từ 5h->21h
if (date('d') == 21 && date('H') >= 5) {
// Ghi log xem có gọi không
Crontjob::create(['message' => 'CalculateReportCommand is called (' . $type . ')']);
// Check xem đã insert vào reports_views_monthly chưa
// Check xem đã insert vào report_views_monthly_new chưa
$check = MonthlyReport::where('month', date('m'))
->where('year', date('Y'))
->count();
if($check >= 100){
echo "\n - Báo cáo đã được tổng hợp trước đó.";
return false;
}
$monthly_data = MonthlyReportView::select('*')->take(100)->get()->toArray();
if (count($monthly_data) > 0) {
$monthly_report = [];
foreach ($monthly_data as $key => $monthly) {
$monthly_report[$key]['month'] = date('m');
$monthly_report[$key]['year'] = date('Y');
$monthly_report[$key]['track_id'] = $monthly['track_id'];
$monthly_report[$key]['views_zing'] = $monthly['month_zing'];
$monthly_report[$key]['views_nct'] = $monthly['month_nct'];
$monthly_report[$key]['views_keeng'] = $monthly['month_keeng'];
echo "\n - BXH Tháng đã được tổng hợp trước đó.";
} else {
$monthly_data = MonthlyReportView::select('*')->take(100)->get()->toArray();
if (count($monthly_data) > 0 && $monthly_data[0]['total_point'] > 0) {
echo "\n - Bắt đầu xử lý BXH Tháng...";
$monthly_report = [];
foreach ($monthly_data as $key => $monthly) {
$monthly_report[$key]['month'] = date('m');
$monthly_report[$key]['year'] = date('Y');
$monthly_report[$key]['track_id'] = $monthly['track_id'];
$monthly_report[$key]['views_zing'] = $monthly['month_zing'];
$monthly_report[$key]['views_nct'] = $monthly['month_nct'];
$monthly_report[$key]['views_keeng'] = $monthly['month_keeng'];
$monthly_report[$key]['point_zing'] = $monthly['point_zing'];
$monthly_report[$key]['point_nct'] = $monthly['point_nct'];
$monthly_report[$key]['point_keeng'] = $monthly['point_keeng'];
$monthly_report[$key]['total_point'] = $monthly['total_point'];
$monthly_report[$key]['order'] = $key + 1;
$monthly_report[$key]['created_at'] = Carbon::now();
$monthly_report[$key]['updated_at'] = Carbon::now();
}
$monthly_report[$key]['point_zing'] = $monthly['point_zing'];
$monthly_report[$key]['point_nct'] = $monthly['point_nct'];
$monthly_report[$key]['point_keeng'] = $monthly['point_keeng'];
if (count($monthly_report) > 0) {
DB::table(Constants::TABLE_REPORT_VIEWS_MONTHLY_NEW)->insert($monthly_report);
}
$monthly_report[$key]['total_point'] = $monthly['total_point'];
$monthly_report[$key]['order'] = $key + 1;
// Check xem đã insert chưa
$check_again = MonthlyReport::where('month', date('m'))
->where('year', date('Y'))
->count();
$monthly_report[$key]['created_at'] = Carbon::now();
$monthly_report[$key]['updated_at'] = Carbon::now();
}
if (count($monthly_report) > 0) {
DB::table(Constants::TABLE_REPORTS_VIEWS_MONTHLY)->insert($monthly_report);
}
// Check xem đã insert chưa
$check_again = MonthlyReport::where('month', date('m'))
->where('year', date('Y'))
->count();
if ($check_again >= 100) {
echo "\n - Đã lưu dữ liệu báo cáo và bắt đầu reset lượt nghe tháng.";
// Reset số lượt nghe tháng về 0 trong bảng crawler_listens
DB::table(Constants::TABLE_CRAWLER_LISTENS)->update([
'month_zing' => 0,
'month_nct' => 0,
'month_nhacvn' => 0,
'month_keeng' => 0
]);
echo "\n - Đã reset lượt nghe tháng.";
if ($check_again >= 100) {
echo "\n - Đã lưu dữ liệu BXH Tháng và bắt đầu Reset lượt nghe tháng.";
// Reset số lượt nghe tháng về 0 trong bảng crawler_listens
DB::table(Constants::TABLE_CRAWLER_LISTENS)->update([
'month_zing' => 0,
'month_nct' => 0,
'month_nhacvn' => 0,
'month_keeng' => 0
]);
echo "\n - Đã reset lượt nghe tháng.";
}
}
}
} else {
echo "\n - Ngày thực hiện báo cáo tháng phải là ngày 21.";
return false;
echo "\n - Ngày thực hiện BXH Tháng phải là ngày 21.";
}
break;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment