CrestRoad/laravel/app/Http/Controllers/PocSpirometryController.php

114 lines
3.4 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\PocSpirometry;
use Illuminate\Http\Request;
class PocSpirometryController extends Controller
{
public function __construct()
{
}
public function login(Request $request)
{
return view('pocspirometry.login');
}
public function pocuserlogin(Request $request)
{
$mobile_number = $request->input('mobile_number');
$password = $request->input('password');
$data = PocSpirometry::where(['mobile_number' => $mobile_number, 'password' => $password])->get();
if (empty($data[0])) {
return redirect()->route('poclogin')->with('error', 'User Not Found');
}
session(['user_info' => $data[0]]);
return redirect()->route('pocpatient');
}
public function doctorconsent(Request $request)
{
return view('pocspirometry.consent');
}
public function doctorconsentsubmit(Request $request)
{
$data = $request->all();
unset($data['_token']);
session(['user_consent' => $data]);
return redirect()->route('pocregister');
}
public function register(Request $request)
{
$user_consent = $request->session()->get('user_consent');
if (
isset($user_consent) &&
count($user_consent) == 7
) {
if (
$user_consent['confirm'] == 'on' &&
$user_consent['voluntary'] == 'on' &&
$user_consent['dataAccess'] == 'on' &&
$user_consent['identityNotRevealed'] == 'on' &&
$user_consent['noRestriction'] == 'on' &&
$user_consent['monitoring'] == 'on' &&
$user_consent['agreeStudy'] == 'on'
) {
return view('pocspirometry.register');
}
}
return redirect()->route('doctorconsent');
}
public function submituser(Request $request)
{
$fields = $request->only([
'name_of_doctor',
'mobile_number',
'password',
'city_town',
'qualification',
'specialization',
'type_of_practice',
'years_of_practice',
'no_of_patients_seen_in_opd',
'respiratory_symptoms_percentage',
'diagnosis_basis',
'spirometry_done_from_where',
'what_prevented_you_to_buy_spirometer',
]);
$fields['type_of_practice'] = implode(',', $request->input('type_of_practice'));
$fields['spirometry_done_from_where'] = $request->input('spirometry_done_from_where') != '' ? implode(',', $request->input('spirometry_done_from_where')) : '';
$fields['what_prevented_you_to_buy_spirometer'] = implode(',', $request->input('what_prevented_you_to_buy_spirometer'));
$existingRecord = PocSpirometry::where('mobile_number', $request->input('mobile_number'))->first();
if ($existingRecord) {
$data = PocSpirometry::where('mobile_number', $request->input('mobile_number'))->update($fields);
} else {
$data = PocSpirometry::create($fields);
session(['user_info' => $data]);
}
return redirect()->route('pocpatient');
}
public function getpocuser(Request $request, $id)
{
$userdata = PocSpirometry::find($id);
return view('pocspirometry.register', compact('userdata'));
}
}