Luca Parisio 9 mesiacov pred
rodič
commit
3a613cfda5

+ 2 - 2
app/Http/Livewire/Member.php

@@ -1566,7 +1566,7 @@ class Member extends Component
             $rate->save();
 
             // Se la data inizio pagamenti è "inizio corso" allora prendo quella come start date
-            if ($r->when_start == 'COURSE')
+            /*if ($r->when_start == 'COURSE')
                 $start = $c->date_from;
 
             // 
@@ -1581,7 +1581,7 @@ class Member extends Component
 
             if ($r->months > 1)
                 $start = date('Y-m-' . ($month_day >= 29 ? 't' : 'd'), strtotime("+" . ($r->months - 1) . " months", strtotime($start)));
-
+            */
             $go = true;
             while ($go) {
 

+ 28 - 2
app/Http/Livewire/Rate.php

@@ -26,7 +26,9 @@ class Rate extends Component
     public $course_subscription_id;
     public $price;
     public $date;
+    public $month = '';
     public $months = [];
+    public $disabled = [];
     public $couse_subscriptions = [];
     public $price_list = [];
     public $type = '';
@@ -51,8 +53,19 @@ class Rate extends Component
                 }
             }
 
+            $course_subscription_ids = [];
+            if ($c->prices != null) {
+                foreach (json_decode($c->prices) as $z) {
+                    if ($z->price > 0)
+                        $course_subscription_ids[] = $z->course_subscription_id;
+                }
+            }
+
+            $this->course_subscriptions = \App\Models\CourseSubscription::select('*')->whereIn('id', $course_subscription_ids)->where('enabled', true)->get();
+
         }
-        $this->course_subscriptions = \App\Models\CourseSubscription::select('*')->where('enabled', true)->get();
+        
+        //$this->course_subscriptions = \App\Models\CourseSubscription::select('*')->where('enabled', true)->get();
 
 
     }
@@ -76,9 +89,17 @@ class Rate extends Component
         }
         else
         {*/
-            $this->records = \App\Models\Rate::with('member')->where('member_course_id', $this->member_course_id)->get();
+            $this->records = \App\Models\Rate::with('member')->where('member_course_id', $this->member_course_id)->orderBy('date')->get();
         //}
 
+        $this->disabled = [];
+        foreach($this->records as $r)
+        {
+            foreach (json_decode($r->months) as $m) {
+                $this->disabled[] = $m;
+            }
+        }
+
         //$this->emit('load-data-table');
 
         return view('livewire.rate');
@@ -98,12 +119,16 @@ class Rate extends Component
     public function add()
     {
 
+        
+
         $rate = new \App\Models\Rate();
         $rate->member_id = $this->member_id;
         $rate->member_course_id = $this->member_course_id;
         $rate->course_subscription_id = $this->course_subscription_id;
         $rate->price = currencyToDouble($this->price);
         $rate->date = $this->date;
+        if ($this->type == '1')
+            $this->months[] = $this->month;
         $rate->months = json_encode($this->months);
         $rate->note = '';
         $rate->status = 0;
@@ -112,6 +137,7 @@ class Rate extends Component
         $this->course_subscription_id = null;
         $this->price = 0;
         $this->date = null;
+        $this->month = '';
         $this->months = [];
 
         $this->emit('close-popup');

+ 21 - 19
resources/views/livewire/course_subscription.blade.php

@@ -84,27 +84,29 @@
                                     </select>
                                 </div>
                             </div>
-                            <div class="col-6 mt-4">
-                                <div class="form--item">
-                                    <label for="month_day" class="form-label">Giorno del mese</label>
-                                    <select class="form-control" id="month_day" wire:model="month_day">
-                                        <option value=""></option>
-                                        @for($i=1;$i<=31;$i++)
-                                            <option value="{{$i}}">{{$i}} {{$i == 31 ? ' (fine mese)' : ''}}</option>
-                                        @endfor
-                                    </select>
+                            @if(false)
+                                <div class="col-6 mt-4">
+                                    <div class="form--item">
+                                        <label for="month_day" class="form-label">Giorno del mese</label>
+                                        <select class="form-control" id="month_day" wire:model="month_day">
+                                            <option value=""></option>
+                                            @for($i=1;$i<=31;$i++)
+                                                <option value="{{$i}}">{{$i}} {{$i == 31 ? ' (fine mese)' : ''}}</option>
+                                            @endfor
+                                        </select>
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="col-6 mt-4">
-                                <div class="form--item">
-                                    <label for="when_start" class="form-label">Data inizio conteggio</label>
-                                    <select class="form-control" id="when_start" wire:model="when_start">
-                                        <option value=""></option>
-                                        <option value="COURSE">Data inizio corso</option>
-                                        <option value="MEMBER">Data iscrizione corso</option>
-                                    </select>
+                                <div class="col-6 mt-4">
+                                    <div class="form--item">
+                                        <label for="when_start" class="form-label">Data inizio conteggio</label>
+                                        <select class="form-control" id="when_start" wire:model="when_start">
+                                            <option value=""></option>
+                                            <option value="COURSE">Data inizio corso</option>
+                                            <option value="MEMBER">Data iscrizione corso</option>
+                                        </select>
+                                    </div>
                                 </div>
-                            </div>
+                            @endif
                             <div class="col mt-4">
                                 <div class="form--item">
                                     <label for="enabled" class="form-label">Abilitato</label>

+ 7 - 1
resources/views/livewire/member.blade.php

@@ -1271,7 +1271,13 @@
 
                                                 </tbody>
                                             </table>
-                                            <button class="btn--ui primary"wire:click.prevent="addCourse()" style="max-width:200px">Aggiungi</button>
+
+                                            @if($dataId > 0)
+                                                @if ($active["status"] == 1 || $active["status"] == 2)
+                                                    <button class="btn--ui primary"wire:click.prevent="addCourse()" style="max-width:200px">Aggiungi</button>
+                                                @endif
+                                            @endif
+
                                         @else
 
                                             <div class="form--wrapper">

+ 65 - 68
resources/views/livewire/rate.blade.php

@@ -150,82 +150,79 @@
     <div  wire:ignore.self class="modal" id="rateModal" tabindex="-1" aria-labelledby="rateModalLabel" aria-hidden="true">
         <div class="modal-dialog">
             <div class="modal-content">
-            <div class="modal-header">
-                <h5 class="modal-title" id="rateModalLabel">Inserimento nuova rata</h5>
-                <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
-            </div>
-            <div class="modal-body">
-                <div class="row">
-                    <div class="col-md-6">
-                        <label for="course_subscription_id" class="form-label">Abbonamento</label>
-                        <select id="course_subscription_id" class="form-select  @error('course_subscription_id') is-invalid @enderror" aria-label="Abbonamento" wire:model="course_subscription_id">
-                            <option value="">
-                            @foreach($course_subscriptions as $t)
-                                <option value="{{$t["id"]}}">{{$t["name"]}}
-                            @endforeach
-                        </select>
-                    </div>
-                    <div class="col-md-6">
-                        <label for="price" class="form-label">Prezzo</label>
-                        <input class="form-control" type="text" id="price" placeholder="Costo" wire:model="price" onkeyup="onlyNumberAmount(this)">
-                    </div>
+                <div class="modal-header">
+                    <h5 class="modal-title" id="rateModalLabel">Inserimento nuova rata</h5>
+                    <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
                 </div>
-                <div class="row mt-2">
-                    <div class="col-md-6">
-                        <label for="date" class="form-label">Scadenza</label>
-                        <input class="form-control @error('date') is-invalid @enderror" type="date" id="date" placeholder="Email" wire:model="date">
-                    </div>
-                    @if($type == '1')
+                <div class="modal-body">
+                    <div class="row">
                         <div class="col-md-6">
-                            <label for="date" class="form-label">Mesi</label>
-                            <select class="form-control" id="months"  wire:model="months">
-                                <option value="9">Settembre</option>
-                                <option value="10">Ottobre</option>
-                                <option value="11">Novembre</option>
-                                <option value="12">Dicembre</option>
-                                <option value="1">Gennaio</option>
-                                <option value="2">Febbraio</option>
-                                <option value="3">Marzo</option>
-                                <option value="4">Aprile</option>
-                                <option value="5">Maggio</option>
-                                <option value="6">Giugno</option>
-                                <option value="7">Luglio</option>
-                                <option value="8">Agosto</option>
+                            <label for="course_subscription_id" class="form-label">Abbonamento</label>
+                            <select id="course_subscription_id" class="form-select  @error('course_subscription_id') is-invalid @enderror" aria-label="Abbonamento" wire:model="course_subscription_id">
+                                <option value="">
+                                @foreach($course_subscriptions as $t)
+                                    <option value="{{$t["id"]}}">{{$t["name"]}}
+                                @endforeach
                             </select>
                         </div>
-                    @endif
-                <div>
-                @if($type > 1)
+                        <div class="col-md-6">
+                            <label for="price" class="form-label">Prezzo</label>
+                            <input class="form-control" type="text" id="price" placeholder="Costo" wire:model="price" onkeyup="onlyNumberAmount(this)">
+                        </div>
+                    </div>
                     <div class="row mt-2">
-                        <div class="col-md-12">
-                            <label for="months" class="form-label">Seleziona {{$type}} Mesi</label><br>
-                            <div class="row">
-                                <div class="col-3"><input type="checkbox"  value="9" class="chkMonth">&nbsp;Settembre</div>
-                                <div class="col-3"><input type="checkbox"  value="10" class="chkMonth">&nbsp;Ottobre</div>
-                                <div class="col-3"><input type="checkbox"  value="11" class="chkMonth">&nbsp;Novembre</div>
-                                <div class="col-3"><input type="checkbox"  value="12" class="chkMonth">&nbsp;Dicembre</div>
-                            </div>
-                            <div class="row">
-                                <div class="col-3"><input type="checkbox"  value="1" class="chkMonth">&nbsp;Gennaio</div>
-                                <div class="col-3"><input type="checkbox"  value="2" class="chkMonth">&nbsp;Febbraio</div>
-                                <div class="col-3"><input type="checkbox"  value="3" class="chkMonth">&nbsp;Marzo</div>
-                                <div class="col-3"><input type="checkbox"  value="4" class="chkMonth">&nbsp;Aprile</div>
+                        <div class="col-md-6">
+                            <label for="date" class="form-label">Scadenza</label>
+                            <input class="form-control @error('date') is-invalid @enderror" type="date" id="date" placeholder="Email" wire:model="date">
+                        </div>
+                        @if($type == '1')
+                            <div class="col-md-6">
+                                <label for="date" class="form-label">Mesi</label>
+                                <select class="form-control" id="month"  wire:model="month">
+                                    <option value=""></option>
+                                    @if(!in_array(9, $disabled))<option value="9">Settembre</option>@endif
+                                    @if(!in_array(10, $disabled))<option value="10">Ottobre</option>@endif
+                                    @if(!in_array(11, $disabled))<option value="11">Novembre</option>@endif
+                                    @if(!in_array(12, $disabled))<option value="12">Dicembre</option>@endif
+                                    @if(!in_array(1, $disabled))<option value="1">Gennaio</option>@endif
+                                    @if(!in_array(2, $disabled))<option value="2">Febbraio</option>@endif
+                                    @if(!in_array(3, $disabled))<option value="3">Marzo</option>@endif
+                                    @if(!in_array(4, $disabled))<option value="4">Aprile</option>@endif
+                                    @if(!in_array(5, $disabled))<option value="5">Maggio</option>@endif
+                                    @if(!in_array(6, $disabled))<option value="6">Giugno</option>@endif
+                                    @if(!in_array(7, $disabled))<option value="7">Luglio</option>@endif
+                                    @if(!in_array(8, $disabled))<option value="8">Agosto</option>@endif
+                                </select>
                             </div>
-                            <div class="row">
-                                <div class="col-3"><input type="checkbox"  value="5" class="chkMonth">&nbsp;Maggio</div>
-                                <div class="col-3"><input type="checkbox"  value="6" class="chkMonth">&nbsp;Giugno</div>
-                                <div class="col-3"><input type="checkbox"  value="7" class="chkMonth">&nbsp;Luglio</div>
-                                <div class="col-3"><input type="checkbox"  value="8" class="chkMonth">&nbsp;Agosto </div>                      
+                        @endif
+                    </div>
+                    @if($type > 1)
+                        <div class="row mt-2">
+                            <div class="col-md-12">
+                                <label for="months" class="form-label">Seleziona i Mesi</label><br>
+                                <div class="row">
+                                    @if(!in_array(9, $disabled))<div class="col-3"><input type="checkbox"  value="9" class="chkMonth">&nbsp;Settembre</div>@endif
+                                    @if(!in_array(10, $disabled))<div class="col-3"><input type="checkbox"  value="10" class="chkMonth">&nbsp;Ottobre</div>@endif
+                                    @if(!in_array(11, $disabled))<div class="col-3"><input type="checkbox"  value="11" class="chkMonth">&nbsp;Novembre</div>@endif
+                                    @if(!in_array(12, $disabled))<div class="col-3"><input type="checkbox"  value="12" class="chkMonth">&nbsp;Dicembre</div>@endif
+                                    @if(!in_array(1, $disabled))<div class="col-3"><input type="checkbox"  value="1" class="chkMonth">&nbsp;Gennaio</div>@endif
+                                    @if(!in_array(2, $disabled))<div class="col-3"><input type="checkbox"  value="2" class="chkMonth">&nbsp;Febbraio</div>@endif
+                                    @if(!in_array(3, $disabled))<div class="col-3"><input type="checkbox"  value="3" class="chkMonth">&nbsp;Marzo</div>@endif
+                                    @if(!in_array(4, $disabled))<div class="col-3"><input type="checkbox"  value="4" class="chkMonth">&nbsp;Aprile</div>@endif
+                                    @if(!in_array(5, $disabled))<div class="col-3"><input type="checkbox"  value="5" class="chkMonth">&nbsp;Maggio</div>@endif
+                                    @if(!in_array(6, $disabled))<div class="col-3"><input type="checkbox"  value="6" class="chkMonth">&nbsp;Giugno</div>@endif
+                                    @if(!in_array(7, $disabled))<div class="col-3"><input type="checkbox"  value="7" class="chkMonth">&nbsp;Luglio</div>@endif
+                                    @if(!in_array(8, $disabled))<div class="col-3"><input type="checkbox"  value="8" class="chkMonth">&nbsp;Agosto </div>@endif                 
+                                </div>
                             </div>
                         </div>
-                    </div>
-                @endif
-                
-            </div>
-            <div class="modal-footer mt-2">
-                <button class="btn--ui lightGrey" onclick="annulla()">annulla</a>
-                <button type="button" class="btn--ui btn-primary" wire:click.prevent="add()">Inserisci</button>
-            </div>
+                    @endif
+                    
+                </div>
+                <div class="modal-footer mt-2">
+                    <button class="btn--ui lightGrey" onclick="annulla()">annulla</a>
+                    <button type="button" class="btn--ui btn-primary" wire:click.prevent="add()">Inserisci</button>
+                </div>
             </div>
         </div>
     </div>