diff --git a/app/Http/Controllers/CycleController.php b/app/Http/Controllers/CycleController.php index e4db037e..5014d996 100644 --- a/app/Http/Controllers/CycleController.php +++ b/app/Http/Controllers/CycleController.php @@ -35,6 +35,11 @@ class CycleController extends Controller ->when($request->has('cycle_number') && $request->cycle_number != '', function($query) use($request){ $query->where('cycle_number', $request->cycle_number); }) + ->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){ + $query->whereHas('user', function($query) use ($request) { + $query->where('medical_center_id', $request->medical_center_id); + }); + }) ->with('user')->paginate(10); return \MessageResponse::data($Cycles); } diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php index 0d69ce81..bf52547f 100644 --- a/app/Http/Controllers/ItemController.php +++ b/app/Http/Controllers/ItemController.php @@ -36,6 +36,11 @@ class ItemController extends Controller ->when($request->has('specific') && $request->specific != '', function($query) use($request){ $query->where('specific', $request->specific); }) + ->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){ + $query->whereHas('user', function($query) use ($request) { + $query->where('medical_center_id', $request->medical_center_id); + }); + }) ->paginate(10); return \MessageResponse::data($Items); } diff --git a/app/Http/Controllers/LabelController.php b/app/Http/Controllers/LabelController.php index 108326cd..9d26a93a 100644 --- a/app/Http/Controllers/LabelController.php +++ b/app/Http/Controllers/LabelController.php @@ -16,20 +16,6 @@ class LabelController extends Controller $admin_users = User::role('Admin')->get()->pluck('id')->toArray(); $admin_users[] = $user->id; - // if ($user->hasRole('Supervisor|User')) { - // $medical_center_id = $user->medical_center_id; - // } - // elseif($request->has('medical_center_id') && $request->medical_center_id != '') { - // $medical_center_id = $request->medical_center_id; - // } else { - // $medical_center_id = null; - // } - - // $medical_center_id = null; - // if($request->has('medical_center_id') && $request->medical_center_id != '') { - // $medical_center_id = $request->medical_center_id; - // } - $Labels = Label:: when($user->cant('showAll'), function($query) use ($user, $admin_users) { if ($user->hasRole('Supervisor|User')) { @@ -50,11 +36,11 @@ class LabelController extends Controller ->when($request->has('label_id') && $request->label_id != '', function($query) use($request){ $query->where('id', $request->label_id); }) - // ->when($medical_center_id, function($query) use($medical_center_id){ - // $query->whereHas('user', function($query) use($medical_center_id){ - // $query->where('medical_center_id', $medical_center_id); - // }); - // }) + ->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){ + $query->whereHas('user', function($query) use ($request) { + $query->where('medical_center_id', $request->medical_center_id); + }); + }) ->with('user', 'user.medical_center')->paginate(10); return \MessageResponse::data($Labels); } diff --git a/app/Http/Controllers/PackageController.php b/app/Http/Controllers/PackageController.php index bc2d884f..c9a0f9a2 100644 --- a/app/Http/Controllers/PackageController.php +++ b/app/Http/Controllers/PackageController.php @@ -29,8 +29,10 @@ class PackageController extends Controller ->when($request->has('package_id') && $request->package_id != '', function($query) use($request){ $query->where('id', $request->package_id); }) - ->when($request->has('unique_id') && $request->unique_id != '', function($query) use($request){ - $query->where('unique_id', $request->unique_id); + ->when($request->has('medical_center_id') && $request->medical_center_id != '', function($query) use($request){ + $query->whereHas('user', function($query) use ($request) { + $query->where('medical_center_id', $request->medical_center_id); + }); }) ->with('user')->paginate(10); return \MessageResponse::data($Packages); diff --git a/app/Http/Controllers/TestResultController.php b/app/Http/Controllers/TestResultController.php index d1581c70..0ac91c58 100644 --- a/app/Http/Controllers/TestResultController.php +++ b/app/Http/Controllers/TestResultController.php @@ -70,10 +70,6 @@ class TestResultController extends Controller ->when($request->has('device_id') && $request->device_id, function($query) use($request){ $device_label = $request->device_label ? $request->device_label : ''; if ($device_label){ - // $query->whereHas('test_type', function($query) use($request, $device_label){ - // $query->where('device_label', $device_label); - // })->where('device_id', $request->device_id); - $query->whereHas('input_values', function($query) use($request, $device_label){ $query->whereHas('input', function($query) use($request, $device_label){ $query->where('name', $device_label); @@ -82,7 +78,7 @@ class TestResultController extends Controller } else{ $query->where(function($query) use($request){ - $query->where('device_id', $request->device_id)->orWhere('id', $request->device_id); + $query->where('id', $request->device_id); }); } }) @@ -115,7 +111,7 @@ class TestResultController extends Controller $TestResult = [ 'user_id' => auth('api')->user()->id, 'cycle_number' => $request->cycle_number, - 'device_id' => $request->device_id, + // 'device_id' => $request->device_id, 'date' => $request->date, 'test_type_id' => $request->test_type_id, 'result' => $request->result, @@ -300,7 +296,7 @@ class TestResultController extends Controller $TestResultData = [ // 'autoclave_id' => $request->autoclave_id, 'cycle_number' => $request->cycle_number, - 'device_id' => $request->device_id, + // 'device_id' => $request->device_id, 'date' => $request->date, 'test_type_id' => $request->test_type_id, 'result' => $request->result, @@ -453,6 +449,7 @@ class TestResultController extends Controller { $query->where('id', $user->medical_center_id); })->select('name', 'id')->get()->toArray(); + $TestType = TestType::select('name', 'id')->get()->toArray(); return \MessageResponse::data([ 'MedicalCenters' => $MedicalCenter, diff --git a/app/Http/Controllers/TestTypeController.php b/app/Http/Controllers/TestTypeController.php index d2f7ca57..32de6359 100644 --- a/app/Http/Controllers/TestTypeController.php +++ b/app/Http/Controllers/TestTypeController.php @@ -21,47 +21,6 @@ class TestTypeController extends Controller { public function index(Request $request) { - // $testTypes = TestType::where('deleted_at','<>', null)->get(); - // try { - // $return_value = \DB::transaction(function () use ($request) { - // - // $testTypes = \DB::table('test_types')->where('deleted_at','<>', null)->get(); - // dd($testTypes); - // foreach ($testTypes as $testType) { - // $UniqueID = substr(base_convert(sha1(uniqid(mt_rand())), 16, 36), 0, 10); - // \DB::table('test_types')->where('id', $testType->id)->update(['unique_code' => $testType->unique_code.'--'.$UniqueID]); - // $test_results = TestResult::where('test_type_id', $testType->id)->get(); - // if (count($test_results)) { - // - // foreach ($test_results as $test_result) { - // // code... - // if (count($test_result->input_values)) { - // InputValue::where('test_result_id', $test_result->id)->get()->each->delete(); - // } - // if (count($test_result->TitleImage)){ - // foreach ($test_result->TitleImage as $image) { - // Storage::disk('public')->delete(static::storage_path($image->path)); - // Uploadable::where('gallery_id', $image->id)->where('uploadable_id', $test_result->id)->where('uploadable_type', get_class($test_result))->delete(); - // Gallery::where('id', $image->id)->delete(); - // } - // } - // $test_result->delete(); - // } - // - // } - // // dd($testType->id); - // $inputs = Input::with('options')->where('test_type_id', $testType->id)->get(); - // foreach ($inputs as $input) { - // $input->options()->delete(); - // $input->delete(); - // } - // \DB::table('test_types')->where('id', $testType->id)->delete(); -// } -// }); -// } catch (\Exception $e) { -// return response()->json($e->getMessage(), 441); -// } -// dd('s'); if (!auth('api')->user()->can('list', TestType::class)) { return \MessageResponse::error(trans('messages.access_denied')); } diff --git a/app/Http/Requests/StoreTestResultRequest.php b/app/Http/Requests/StoreTestResultRequest.php index a08a9826..488e59f9 100644 --- a/app/Http/Requests/StoreTestResultRequest.php +++ b/app/Http/Requests/StoreTestResultRequest.php @@ -25,7 +25,7 @@ class StoreTestResultRequest extends FormRequest switch ($this->method()) { case 'POST': { return [ - 'device_id' => 'required', + // 'device_id' => 'required', // 'cycle_number' => 'required', 'test_type_id' => 'required|numeric|exists:test_types,id', 'result' => 'required', @@ -36,7 +36,7 @@ class StoreTestResultRequest extends FormRequest case 'PATCH': { // $TestResult = $this->route('TestResult'); return [ - 'device_id' => 'required', + // 'device_id' => 'required', // 'cycle_number' => 'required', 'test_type_id' => 'required|numeric|exists:test_types,id', 'result' => 'required', diff --git a/app/Http/Requests/StoreTestTypeRequest.php b/app/Http/Requests/StoreTestTypeRequest.php index cb85c6cc..ba4d4d7c 100644 --- a/app/Http/Requests/StoreTestTypeRequest.php +++ b/app/Http/Requests/StoreTestTypeRequest.php @@ -6,7 +6,7 @@ use App\TestType; use Illuminate\Validation\Rule; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Contracts\Validation\Validator; - +use Illuminate\Http\Request; class StoreTestTypeRequest extends FormRequest { @@ -20,26 +20,29 @@ class StoreTestTypeRequest extends FormRequest } } - public function rules() + public function rules(Request $request) { switch ($this->method()) { case 'POST': { - return [ - 'name' => 'required|max:100|unique:test_types', - // 'unique_code' => 'required|max:100|unique:test_types', - 'device_label' => 'required', + $rules = [ 'info.*.name'=>'required', 'info.*.type'=>'required', 'info.*.size'=>'nullable', 'info.*.parent_id'=>'nullable|numeric|exists:inputs,id', ]; - // $rules['unique_code'] = [ - // 'required', - // Rule::unique('test_types')->where(function ($query) use ($request) { - // return $query->whereNotNull('deleted_at'); - // }) - // ]; - // return $rules; + $rules['name'] = [ + 'required', + Rule::unique('test_types')->where(function ($query) use ($request) { + return $query->whereNull('deleted_at'); + }) + ]; + $rules['unique_code'] = [ + 'required', + Rule::unique('test_types')->where(function ($query) use ($request) { + return $query->whereNull('deleted_at'); + }) + ]; + return $rules; break; } case 'PUT': @@ -48,7 +51,6 @@ class StoreTestTypeRequest extends FormRequest return [ 'name' => 'required|max:100|unique:test_types,id,'.$TestType->id, 'unique_code' => 'required|max:100|unique:test_types,id,'.$TestType->id, - 'device_label' => 'required', 'info.*.name'=>'required', 'info.*.type'=>'required', 'info.*.size'=>'nullable', diff --git a/resources/js/vue/components/core/Drawer.vue b/resources/js/vue/components/core/Drawer.vue index c91950b4..d70a174d 100644 --- a/resources/js/vue/components/core/Drawer.vue +++ b/resources/js/vue/components/core/Drawer.vue @@ -102,6 +102,11 @@ export default { icon: 'mdi-account', text: 'My Info' }, + { + to: {name: 'SubmitTestResult'}, + icon: 'fas fa-vial', + text: 'Add a Test Result' + }, { to: {name: 'AllResultTest'}, icon: 'description', diff --git a/resources/js/vue/components/modal/barcode/Barcode.vue b/resources/js/vue/components/modal/barcode/Barcode.vue index ff9fe452..debf9b23 100644 --- a/resources/js/vue/components/modal/barcode/Barcode.vue +++ b/resources/js/vue/components/modal/barcode/Barcode.vue @@ -9,7 +9,8 @@
- {{ Type+ ' ID :' + ID }} + {{ Type+ ' ID :' + ID }} + {{ Type+ ':' + ID }}
diff --git a/resources/js/vue/components/modal/testresult/Show.vue b/resources/js/vue/components/modal/testresult/Show.vue index 7f8d4163..73d299b4 100644 --- a/resources/js/vue/components/modal/testresult/Show.vue +++ b/resources/js/vue/components/modal/testresult/Show.vue @@ -8,7 +8,7 @@
- +
Result : diff --git a/resources/js/vue/views/Cycle/List.vue b/resources/js/vue/views/Cycle/List.vue index 7b197f15..18235ce2 100644 --- a/resources/js/vue/views/Cycle/List.vue +++ b/resources/js/vue/views/Cycle/List.vue @@ -30,6 +30,18 @@ color="black" > + + + + - + fas fa-search Filter @@ -174,6 +186,7 @@ export default { packages: [], currentPage: 1, lastPage: 1, + medicalCenters: [] }), created() { this.load(); @@ -196,6 +209,7 @@ export default { this.currentPage = result.data.data.current_page; this.lastPage = result.data.data.last_page; } + this.loadMedicalCenters(); }, async show(testResultId) { const result = await ApiService.get( @@ -232,6 +246,12 @@ export default { } } }, + async loadMedicalCenters() { + const result = await ApiService.get(urls.listFilterItemsTestResult); + if (result && result.status == 200) { + this.medicalCenters = result.data.data.MedicalCenters; + } + }, }, computed: { ...mapGetters("modal", ["getModalResult"]) diff --git a/resources/js/vue/views/Item/List.vue b/resources/js/vue/views/Item/List.vue index 2ae3933b..e99b4481 100644 --- a/resources/js/vue/views/Item/List.vue +++ b/resources/js/vue/views/Item/List.vue @@ -21,6 +21,18 @@ color="black" > + + + + - - - + + + + fas fa-search @@ -151,14 +155,15 @@ export default { } ], filter: { - unique_id: '', name: '', - package_id : '' + package_id : '', + medical_center_id : '' }, result: ['Pass', 'Fail'], items: [], currentPage: 1, lastPage: 1, + medicalCenters: [] }), created() { this.load(); @@ -181,6 +186,7 @@ export default { this.currentPage = result.data.data.current_page; this.lastPage = result.data.data.last_page; } + this.loadMedicalCenters(); }, async show(testResultId) { const result = await ApiService.get( @@ -216,7 +222,13 @@ export default { properties: { result } }); } - } + }, + async loadMedicalCenters() { + const result = await ApiService.get(urls.listFilterItemsTestResult); + if (result && result.status == 200) { + this.medicalCenters = result.data.data.MedicalCenters; + } + }, }, computed: { ...mapGetters("modal", ["getModalResult"]) diff --git a/resources/js/vue/views/TestResult/AddEdit.vue b/resources/js/vue/views/TestResult/AddEdit.vue index 8dbc87ec..aab83262 100644 --- a/resources/js/vue/views/TestResult/AddEdit.vue +++ b/resources/js/vue/views/TestResult/AddEdit.vue @@ -44,7 +44,7 @@

{{testTypeNameSelected}}

- +