added charge for all products 2
This commit is contained in:
@@ -371,18 +371,58 @@ class DashboardController extends Controller
|
|||||||
$daily[$dateKey]['order_count']++;
|
$daily[$dateKey]['order_count']++;
|
||||||
}
|
}
|
||||||
|
|
||||||
// مرتبسازی نزولی بر اساس تاریخ و گرد کردن گرمها
|
|
||||||
krsort($daily);
|
|
||||||
$response['daily'] = array_map(function ($row) {
|
|
||||||
$row['profit_gold'] = round($row['profit_gold'], 4);
|
|
||||||
return $row;
|
|
||||||
}, array_values($daily));
|
|
||||||
|
|
||||||
$response['profitGoldGrams'] = round($response['profitGoldGrams'], 4);
|
$response['profitGoldGrams'] = round($response['profitGoldGrams'], 4);
|
||||||
|
|
||||||
|
// سندهای تبدیل سود ریالی به طلا: از سود ریالی کم و به سود طلایی (گرم) اضافه میشود.
|
||||||
|
$conversions = ProfitConversion::whereBetween('converted_at', [$startDate, $endDate])->get();
|
||||||
|
$convertedRial = 0.0;
|
||||||
|
$convertedGram = 0.0;
|
||||||
|
|
||||||
|
foreach ($conversions as $conversion) {
|
||||||
|
$rialAmount = (float) $conversion->rial_amount;
|
||||||
|
$gramAmount = (float) $conversion->gram_amount;
|
||||||
|
$convertedRial += $rialAmount;
|
||||||
|
$convertedGram += $gramAmount;
|
||||||
|
|
||||||
|
$dateKey = $conversion->converted_at
|
||||||
|
? Carbon::parse($conversion->converted_at)->toDateString()
|
||||||
|
: null;
|
||||||
|
if (!$dateKey) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!isset($daily[$dateKey])) {
|
||||||
|
$daily[$dateKey] = [
|
||||||
|
'date' => $dateKey,
|
||||||
|
'profit_gold' => 0.0,
|
||||||
|
'profit_rial' => 0.0,
|
||||||
|
'spread_rial' => 0.0,
|
||||||
|
'order_count' => 0,
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
$daily[$dateKey]['profit_rial'] -= $rialAmount;
|
||||||
|
$daily[$dateKey]['profit_gold'] += $gramAmount;
|
||||||
|
}
|
||||||
|
|
||||||
|
$response['profitRialGross'] = $response['profitRial'];
|
||||||
|
$response['profitGoldGramsGross'] = $response['profitGoldGrams'];
|
||||||
|
$response['profitRialConverted'] = round($convertedRial, 0);
|
||||||
|
$response['profitGoldConvertedGram'] = round($convertedGram, 4);
|
||||||
|
|
||||||
|
$response['profitRial'] = round($response['profitRial'] - $convertedRial, 0);
|
||||||
|
$response['profitGoldGrams'] = round($response['profitGoldGrams'] + $convertedGram, 4);
|
||||||
$response['profitGoldValueRial'] = $lastGoldPrice > 0
|
$response['profitGoldValueRial'] = $lastGoldPrice > 0
|
||||||
? (int) floor($response['profitGoldGrams'] * $lastGoldPrice)
|
? (int) floor($response['profitGoldGrams'] * $lastGoldPrice)
|
||||||
: 0;
|
: 0;
|
||||||
|
|
||||||
|
krsort($daily);
|
||||||
|
$response['daily'] = array_map(function ($row) {
|
||||||
|
$row['profit_gold'] = round($row['profit_gold'], 4);
|
||||||
|
$row['profit_rial'] = round($row['profit_rial'], 0);
|
||||||
|
return $row;
|
||||||
|
}, array_values($daily));
|
||||||
|
|
||||||
$response['totalTradingProfit'] = $response['fullPriceSood'] + $response['fullPriceKarmozd'];
|
$response['totalTradingProfit'] = $response['fullPriceSood'] + $response['fullPriceKarmozd'];
|
||||||
$response['sumAll'] = $response['fullPriceM1'] - $response['GiftsPrise'];
|
$response['sumAll'] = $response['fullPriceM1'] - $response['GiftsPrise'];
|
||||||
return $response;
|
return $response;
|
||||||
|
|||||||
Reference in New Issue
Block a user