Roberto Santini пре 3 година
родитељ
комит
7735d7f95b

+ 30
- 13
app/Http/Controllers/IssueController.php Прегледај датотеку

@@ -135,6 +135,27 @@ class IssueController extends Controller
135 135
   }
136 136
 
137 137
   public function firma_rapporto(Request $request){
138
+
139
+    // Controllo orari e durata intervento
140
+    try{
141
+      $inizio = Carbon::createFromFormat('H:i', $request->ora_inizio);
142
+      $fine = Carbon::createFromFormat('H:i', $request->ora_fine);
143
+      $durata = $fine->diffInMinutes($inizio);
144
+      $orePausa = floatval($request->ore_pausa);
145
+      if($orePausa > 0){
146
+        $minutiPausa = 60*$orePausa;
147
+        $durata -= $minutiPausa;
148
+      }
149
+
150
+      if($durata <= 0){
151
+        return back()->withErrors(['msg' => 'La durata complessiva dell\'intervento non deve essere minore di 0. Controlla orario di inizio, fine e pausa']);
152
+      }
153
+    }catch(\Exception $e){
154
+      return back()->withErrors(['msg' => 'Orari non validi']);
155
+    }
156
+
157
+
158
+
138 159
     $redmineUser = session('redmine_user');
139 160
     $user = User::where('redmine_id', $redmineUser->id)->first();
140 161
 
@@ -151,9 +172,6 @@ class IssueController extends Controller
151 172
     // Cliente
152 173
     $cliente = $issue->project->name;
153 174
 
154
-    $inizio = Carbon::createFromFormat('H:i', $request->ora_inizio);
155
-    $fine = Carbon::createFromFormat('H:i', $request->ora_fine);
156
-    $durata = $fine->diffInMinutes($inizio);
157 175
     $dataIntervento = Carbon::createFromFormat('d/m/Y', $request->spent_on);
158 176
 
159 177
     // Array dei tecnici presenti
@@ -276,14 +294,6 @@ class IssueController extends Controller
276 294
     // Elimino le firme
277 295
     Storage::disk('temp')->delete([$sign_path_cliente]);
278 296
 
279
-    $timeEntry = [
280
-      'issue_id' => $request->issue_id,
281
-      'spent_on' => $dataIntervento->toDateString(),
282
-      'hours' => $durata.'m',
283
-      'comments' => $request->note,
284
-      'activity_id' => $request->activity_id
285
-    ];
286
-
287 297
     // Aggiorno lo issue
288 298
     $response = Http::acceptJson()->put("https://".$redmineUser->api_key."@".session('azienda')->redmine_url.'/issues/'.$request->issue_id.'.xml', [
289 299
       'issue' => [
@@ -291,13 +301,13 @@ class IssueController extends Controller
291 301
         'status_id' => $request->status_id,
292 302
         'uploads' => $uploads
293 303
       ],
294
-      // 'time_entry' => $timeEntry,
295 304
       'helpdesk' => [
296 305
         'is_send_mail' => 1
297 306
       ],
298 307
     ]);
299 308
 
300 309
     $response->throw(function ($response, $e) {
310
+      dd($e);
301 311
       Session::flash('flash_message', "Errore nell'update dell'issue");
302 312
       return redirect()->route('home');
303 313
     });
@@ -331,7 +341,14 @@ class IssueController extends Controller
331 341
             'hours' => $request->ore_viaggio,
332 342
             'comments' => '',
333 343
             'activity_id' => Config::getValue(Config::ATTIVITA_VIAGGIO),
334
-            'user_id' => $key
344
+            'user_id' => $key,
345
+            'custom_fields' => [
346
+              [
347
+                'id' => 5,
348
+                'value' => 'Viaggio' // Campo Custom fatturare
349
+              ]
350
+            ]
351
+
335 352
           ]
336 353
         ]);
337 354
 

+ 1
- 1
resources/views/components/auth-validation-errors.blade.php Прегледај датотеку

@@ -3,7 +3,7 @@
3 3
 @if ($errors->any())
4 4
     <div {{ $attributes }}>
5 5
         <div class="font-medium text-red-600">
6
-            {{ __('Whoops! Something went wrong.') }}
6
+            {{ __('Rivedi i dati inseriti.') }}
7 7
         </div>
8 8
 
9 9
         <ul class="mt-3 list-disc list-inside text-sm text-red-600">

+ 6
- 0
resources/views/issue/firma.blade.php Прегледај датотеку

@@ -51,6 +51,7 @@ use App\Models\Config;
51 51
         <div class="card-header"><i class="fas fa-info"></i> Dettagli intervento</div>
52 52
         <div class="card-body">
53 53
 
54
+          <x-auth-validation-errors class="mb-4" :errors="$errors" />
54 55
 
55 56
           <div class="form-row">
56 57
             <div class="form-group col-md">
@@ -95,6 +96,11 @@ use App\Models\Config;
95 96
               {!! Form::text('ora_fine', Carbon::now()->addMinutes(15)->format('H:i'), ['class' => 'form-control']) !!}
96 97
             </div>
97 98
 
99
+            <div class="form-group col-md">
100
+              {!! Form::label('ore_pausa', 'Ore pausa') !!}
101
+              {!! Form::number('ore_pausa', 0, ['class' => 'form-control', 'step' => '0,01']) !!}
102
+            </div>
103
+
98 104
             <div class="form-group col-md" id="div_button_ore_viaggio">
99 105
               <button class="btn btn-primary" onclick="imputa_ore_viaggio()" type="button">Imputa ore viaggio</button>
100 106
             </div>

Loading…
Откажи
Сачувај