From d8dd6f7bcfbd34c8b438968ea7e63ff156fec80f Mon Sep 17 00:00:00 2001 From: Fayyazi Date: Wed, 9 Oct 2019 13:33:18 +0330 Subject: [PATCH] update cssd --- app/Cycle.php | 2 +- app/Http/Controllers/BarCodeController.php | 12 +++- app/Http/Controllers/CycleController.php | 2 + app/Http/Controllers/ItemController.php | 1 + app/Http/Controllers/TestTypeController.php | 3 + app/Http/Requests/StoreTestTypeRequest.php | 9 ++- config/filesystems.php | 2 +- resources/js/vue/components/core/Drawer.vue | 4 +- .../js/vue/components/modal/package/Show.vue | 60 ++++++++++++++++++- resources/js/vue/config/urls.js | 3 + resources/js/vue/main.js | 2 +- resources/js/vue/router/paths.js | 4 +- resources/js/vue/views/Cycle/AddEdit.vue | 2 +- resources/js/vue/views/Cycle/List.vue | 13 ++++ resources/js/vue/views/Pack/AddEdit.vue | 4 +- resources/js/vue/views/Package/List.vue | 2 +- routes/api.php | 5 ++ 17 files changed, 116 insertions(+), 14 deletions(-) diff --git a/app/Cycle.php b/app/Cycle.php index d0400556..2126c3ca 100644 --- a/app/Cycle.php +++ b/app/Cycle.php @@ -6,7 +6,7 @@ use Illuminate\Database\Eloquent\Model; class Cycle extends Model { - public $fillable = ['name', 'date', 'user_id', 'cycle_number', 'sterilizer_id', 'note', 'verified']; + public $fillable = ['name', 'date', 'user_id', 'cycle_number', 'sterilizer_id', 'note', 'verified', 'unique_id']; public function user() { return $this->belongsTo('App\User'); diff --git a/app/Http/Controllers/BarCodeController.php b/app/Http/Controllers/BarCodeController.php index 6ea68319..5907c9b7 100644 --- a/app/Http/Controllers/BarCodeController.php +++ b/app/Http/Controllers/BarCodeController.php @@ -5,6 +5,7 @@ namespace App\Http\Controllers; use \Milon\Barcode\DNS1D; use \Milon\Barcode\DNS2D; use App\TestResult; +use App\Package; class BarCodeController extends Controller { @@ -17,7 +18,6 @@ class BarCodeController extends Controller $QRCode = DNS2D::getBarcodePNG($Number, "QRCODE"); return \MessageResponse::data(['Barcode' => 'data:image/png;base64,' .$Barcode, 'QRCode' => 'data:image/png;base64,' .$QRCode]); } - } public function generateQRcode(TestResult $TestResult) { @@ -29,4 +29,14 @@ class BarCodeController extends Controller } } + public function generatePackageBarcode($Number) + { + if($Number != "undefined") + { + $Barcode = DNS1D::getBarcodePNGUri($Number, "C128"); + $QRCode = DNS2D::getBarcodePNGUri($Number, "QRCODE"); + Package::where('unique_id', $Number)->update(['bar_code' => $Barcode, 'qr_code' => $QRCode]); + return \MessageResponse::data(['Barcode' => $Barcode, 'QRCode' => $QRCode]); + } + } } diff --git a/app/Http/Controllers/CycleController.php b/app/Http/Controllers/CycleController.php index a5e309d8..10206c48 100644 --- a/app/Http/Controllers/CycleController.php +++ b/app/Http/Controllers/CycleController.php @@ -36,8 +36,10 @@ class CycleController extends Controller } public function store(StoreCycleRequest $request) { + $UniqueID = substr(base_convert(sha1(uniqid(mt_rand())), 16, 36), 0, 10); $CycleData = [ 'name' => $request->name, + 'unique_id' => $UniqueID, 'date' => $request->date, 'sterilizer_id' => $request->sterilizer_id, 'cycle_number' => $request->cycle_number, diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php index a2c16a46..b505cfc7 100644 --- a/app/Http/Controllers/ItemController.php +++ b/app/Http/Controllers/ItemController.php @@ -23,6 +23,7 @@ class ItemController extends Controller ->when($request->has('specific') && $request->specific != '', function($query) use($request){ $query->where('specific', $request->specific); }) + ->where('user_id', auth('api')->user()->id) ->paginate(10); return \MessageResponse::data($Items); } diff --git a/app/Http/Controllers/TestTypeController.php b/app/Http/Controllers/TestTypeController.php index 8ae6494a..6509510f 100644 --- a/app/Http/Controllers/TestTypeController.php +++ b/app/Http/Controllers/TestTypeController.php @@ -410,6 +410,9 @@ class TestTypeController extends Controller if (!auth('api')->user()->can('delete', $TestType)) { return \MessageResponse::error(trans('messages.access_denied')); } + $UniqueID = substr(base_convert(sha1(uniqid(mt_rand())), 16, 36), 0, 10); + $TestType->unique_code = $TestType->unique_code.'--'.$UniqueID; + $TestType->save(); $TestType->delete(); return \MessageResponse::success(trans('messages.success')); } diff --git a/app/Http/Requests/StoreTestTypeRequest.php b/app/Http/Requests/StoreTestTypeRequest.php index e81cef3c..cb85c6cc 100644 --- a/app/Http/Requests/StoreTestTypeRequest.php +++ b/app/Http/Requests/StoreTestTypeRequest.php @@ -26,13 +26,20 @@ class StoreTestTypeRequest extends FormRequest case 'POST': { return [ 'name' => 'required|max:100|unique:test_types', - 'unique_code' => 'required|max:100|unique:test_types', + // 'unique_code' => 'required|max:100|unique:test_types', 'device_label' => 'required', '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; break; } case 'PUT': diff --git a/config/filesystems.php b/config/filesystems.php index ceca83f2..e43f3cba 100644 --- a/config/filesystems.php +++ b/config/filesystems.php @@ -51,7 +51,7 @@ return [ 'public' => [ 'driver' => 'local', 'root' => public_path('uploads'), - 'url' => env('APP_URL') . '/storage', + // 'url' => env('APP_URL') . '/storage', 'visibility' => 'public', ], diff --git a/resources/js/vue/components/core/Drawer.vue b/resources/js/vue/components/core/Drawer.vue index 9c91dc03..7f0ee50e 100644 --- a/resources/js/vue/components/core/Drawer.vue +++ b/resources/js/vue/components/core/Drawer.vue @@ -130,9 +130,9 @@ export default { role: 'Admin' }, { - to: {name: 'AllPack'}, + to: {name: 'AllLabels'}, icon: 'fas fa-inbox', - text: 'Packs' + text: 'Labels' }, { to: {name: 'AllCycle'}, diff --git a/resources/js/vue/components/modal/package/Show.vue b/resources/js/vue/components/modal/package/Show.vue index bbe2b5e1..042f8c87 100644 --- a/resources/js/vue/components/modal/package/Show.vue +++ b/resources/js/vue/components/modal/package/Show.vue @@ -1,7 +1,7 @@ @@ -79,6 +104,39 @@ export default { this.setResultModal(result.data.data); this.closeModal(); } + }, + print() { + const prtHtml = document.getElementById("printMe").innerHTML; + + // Get all stylesheets HTML + let stylesHtml = ""; + for (const node of [ + ...document.querySelectorAll('link[rel="stylesheet"], style') + ]) { + stylesHtml += node.outerHTML; + } + + // Open the print window + const WinPrint = window.open( + "", + "", + "left=0,top=0,width=800,height=900,toolbar=0,scrollbars=0,status=0" + ); + + WinPrint.document.write(` + + + ${stylesHtml} + + + ${prtHtml} + + `); + + WinPrint.document.close(); + WinPrint.focus(); + WinPrint.print(); + WinPrint.close(); } }, created() { diff --git a/resources/js/vue/config/urls.js b/resources/js/vue/config/urls.js index 102515e1..1c118173 100644 --- a/resources/js/vue/config/urls.js +++ b/resources/js/vue/config/urls.js @@ -173,6 +173,9 @@ const urls = { }, Barcode: function(code) { return `/BarCode/${code}`; + }, + packageBarcode: function(code) { + return `/Package/Barcode/${code}`; } }; export { urls }; diff --git a/resources/js/vue/main.js b/resources/js/vue/main.js index 6081f563..a6382f03 100644 --- a/resources/js/vue/main.js +++ b/resources/js/vue/main.js @@ -32,7 +32,7 @@ require('./services/global/errorHandler.service'); // If token exists set Authorizion header if (TokenService.getToken()) { ApiService.setAuthHeader(); - + // If info exists set info in Store if(TokenService.getInfo()) { let info = TokenService.getInfo(); diff --git a/resources/js/vue/router/paths.js b/resources/js/vue/router/paths.js index 05b4a1a4..b9bea239 100644 --- a/resources/js/vue/router/paths.js +++ b/resources/js/vue/router/paths.js @@ -165,8 +165,8 @@ export default [ view: 'Pack/AddEdit' }, { - path: '/packs', - name: 'AllPack', + path: '/labels', + name: 'AllLabels', view: 'Pack/List' }, { diff --git a/resources/js/vue/views/Cycle/AddEdit.vue b/resources/js/vue/views/Cycle/AddEdit.vue index faa92e7d..3ab943fb 100644 --- a/resources/js/vue/views/Cycle/AddEdit.vue +++ b/resources/js/vue/views/Cycle/AddEdit.vue @@ -68,7 +68,7 @@ item-text="name" item-value="id" v-model="formData.packs" - label="Select Packs For Cycle" + label="Select Labels For Cycle" > diff --git a/resources/js/vue/views/Cycle/List.vue b/resources/js/vue/views/Cycle/List.vue index 475d8afc..8b5ed6e1 100644 --- a/resources/js/vue/views/Cycle/List.vue +++ b/resources/js/vue/views/Cycle/List.vue @@ -109,6 +109,10 @@ fas fa-times Remove + + fas fa-barcode + Generate Barcode + @@ -204,6 +208,15 @@ export default { }); } }, + async generateBarcode(code) { + const result = await ApiService.post(urls.Barcode(code)); + if (result && result.status == 200) { + this.changeCurrentModal({ + modal: "modal-barcode-barcode", + properties: { result } + }); + } + }, async remove(testResultId) { const result = await ApiService.delete( urls.removeCycle(testResultId) diff --git a/resources/js/vue/views/Pack/AddEdit.vue b/resources/js/vue/views/Pack/AddEdit.vue index 64a84d78..91bceac3 100644 --- a/resources/js/vue/views/Pack/AddEdit.vue +++ b/resources/js/vue/views/Pack/AddEdit.vue @@ -136,7 +136,7 @@ - + keyboard_arrow_left Back @@ -209,7 +209,7 @@ export default { } if (result && result.status == 200) { - this.$router.push({ name: "AllPack" }); + this.$router.push({ name: "AllLabels" }); } } } diff --git a/resources/js/vue/views/Package/List.vue b/resources/js/vue/views/Package/List.vue index c867ac6b..e111ab52 100644 --- a/resources/js/vue/views/Package/List.vue +++ b/resources/js/vue/views/Package/List.vue @@ -188,7 +188,7 @@ export default { } }, async generateBarcode(code) { - const result = await ApiService.post(urls.Barcode(code)); + const result = await ApiService.post(urls.packageBarcode(code)); if (result && result.status == 200) { this.changeCurrentModal({ modal: "modal-barcode-barcode", diff --git a/routes/api.php b/routes/api.php index e043d08c..5e23f8fb 100644 --- a/routes/api.php +++ b/routes/api.php @@ -23,6 +23,8 @@ Route::group(['namespace' => 'Api'],function () { }); Route::middleware('auth:api')->group(function () { + + Route::get('/TestResults/ListFilterItems', 'TestResultController@listFilterItems'); Route::post('/TestResults/Verify/{TestResult}', 'TestResultController@verifyTestResult'); Route::get('TestTypes/ListNames', 'TestTypeController@listNames'); @@ -34,6 +36,7 @@ Route::middleware('auth:api')->group(function () { Route::post('/TestResults/chart', 'TestResultController@chart'); // Route::get('/TestTypes/All', 'TestTypeController@AllTestTypes'); // Route::get('/MedicalCenters/All', 'MedicalCenterController@listMedicalCenters'); + Route::post('/BarCode/{Code}', 'BarCodeController@generateBarcode'); Route::post('/TestResult/QRCode/{TestResult}', 'BarCodeController@generateQRcode'); @@ -58,6 +61,8 @@ Route::middleware('auth:api')->group(function () { Route::get('/GetPacks', 'PackController@getPacks'); Route::resource('Cycles', 'CycleController'); + + Route::post('Package/Barcode/{Code}', 'BarCodeController@generatePackageBarcode'); }); Route::get('TestResults/{id}', 'TestResultController@show');