|
|
@@ -30,6 +30,7 @@ class Record extends Component
|
|
|
public $isExporting = false;
|
|
|
public $selectedPeriod = 'OGGI';
|
|
|
public $filterCausals = null;
|
|
|
+ public $filterPaymentMethods = null;
|
|
|
public $filterMember = null;
|
|
|
public $isFiltering = false;
|
|
|
public array $recordDatas = [];
|
|
|
@@ -162,6 +163,11 @@ class Record extends Component
|
|
|
Log::info('generateExportDataAndTotals: Causal filters applied', ['causal_count' => count($causals)]);
|
|
|
}
|
|
|
|
|
|
+ if ($this->filterPaymentMethods != null && sizeof($this->filterPaymentMethods) > 0) {
|
|
|
+ $datas->whereIn('payment_method_id', $this->filterPaymentMethods);
|
|
|
+ Log::info('generateExportDataAndTotals: Payment method filters applied', ['payment_method_count' => count($this->filterPaymentMethods)]);
|
|
|
+ }
|
|
|
+
|
|
|
if ($this->filterMember != null && $this->filterMember > 0) {
|
|
|
$datas->where('member_id', $this->filterMember);
|
|
|
Log::info('generateExportDataAndTotals: Member filter applied', ['member_id' => $this->filterMember]);
|
|
|
@@ -386,6 +392,9 @@ class Record extends Component
|
|
|
}
|
|
|
$datas->whereIn('causal_id', $causals);
|
|
|
}
|
|
|
+ if ($this->filterPaymentMethods != null && sizeof($this->filterPaymentMethods) > 0) {
|
|
|
+ $datas->whereIn('payment_method_id', $this->filterPaymentMethods);
|
|
|
+ }
|
|
|
if ($this->filterMember != null && $this->filterMember > 0) {
|
|
|
$datas->where('member_id', $this->filterMember);
|
|
|
}
|
|
|
@@ -427,6 +436,7 @@ class Record extends Component
|
|
|
$this->showMonthPicker = false;
|
|
|
$this->showDayPicker = false;
|
|
|
$this->filterCausals = [];
|
|
|
+ $this->filterPaymentMethods = [];
|
|
|
$this->filterMember = null;
|
|
|
|
|
|
$today = date("Y-m-d");
|
|
|
@@ -625,6 +635,9 @@ class Record extends Component
|
|
|
}
|
|
|
$datas->whereIn('causal_id', $causals);
|
|
|
}
|
|
|
+ if ($this->filterPaymentMethods != null && sizeof($this->filterPaymentMethods) > 0) {
|
|
|
+ $datas->whereIn('payment_method_id', $this->filterPaymentMethods);
|
|
|
+ }
|
|
|
if ($this->filterMember != null && $this->filterMember > 0) {
|
|
|
$datas->where('member_id', $this->filterMember);
|
|
|
}
|
|
|
@@ -1063,6 +1076,10 @@ class Record extends Component
|
|
|
$query->whereIn('causal_id', $causals);
|
|
|
}
|
|
|
|
|
|
+ if ($this->filterPaymentMethods != null && sizeof($this->filterPaymentMethods) > 0) {
|
|
|
+ $query->whereIn('payment_method_id', $this->filterPaymentMethods);
|
|
|
+ }
|
|
|
+
|
|
|
if ($this->filterMember != null && $this->filterMember > 0) {
|
|
|
$query->where('member_id', $this->filterMember);
|
|
|
}
|
|
|
@@ -1086,6 +1103,16 @@ class Record extends Component
|
|
|
return implode(', ', $causals);
|
|
|
}
|
|
|
|
|
|
+ private function getPaymentMethodsNames($paymentMethodIds)
|
|
|
+ {
|
|
|
+ if (!is_array($paymentMethodIds)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ $payment_methods = \App\Models\PaymentMethod::whereIn('id', $paymentMethodIds)->pluck('name')->toArray();
|
|
|
+ return implode(', ', $payment_methods);
|
|
|
+ }
|
|
|
+
|
|
|
public function updatedExportFromDate()
|
|
|
{
|
|
|
$this->updateEmailSubject();
|
|
|
@@ -1136,6 +1163,7 @@ class Record extends Component
|
|
|
$filterDescriptions = [
|
|
|
'member' => $this->filterMember ? $this->getMemberName($this->filterMember) : null,
|
|
|
'causals' => $this->filterCausals ? $this->getCausalsNames($this->filterCausals) : null,
|
|
|
+ 'payment_methods' => $this->filterPaymentMethods ? $this->getPaymentMethodsNames($this->filterPaymentMethods) : null,
|
|
|
];
|
|
|
|
|
|
$paymentsArray = $this->payments->map(function ($payment) {
|
|
|
@@ -1587,7 +1615,12 @@ class Record extends Component
|
|
|
return $email;
|
|
|
}
|
|
|
|
|
|
- public function updatedSelectedDay($value)
|
|
|
+ public function updatedSelectedPeriod($value) {
|
|
|
+ $this->setPeriodDates();
|
|
|
+ $this->applyFilters();
|
|
|
+ }
|
|
|
+
|
|
|
+ public function updatedSelectedDay($value)
|
|
|
{
|
|
|
if (!empty($value)) {
|
|
|
$this->selectedPeriod = 'GIORNO_PERSONALIZZATO';
|