diff --git a/app/Http/Controllers/TestResultController.php b/app/Http/Controllers/TestResultController.php index 423f28c7..6dd0dd53 100644 --- a/app/Http/Controllers/TestResultController.php +++ b/app/Http/Controllers/TestResultController.php @@ -95,9 +95,13 @@ class TestResultController extends Controller } ///////////////////////////////////////////////////////////////////////////Inputs ///////////////////////////////////////////////////////////////////////////Image - if ($request->hasFile('img')) { + // if ($request->hasFile('img')) { + // + // $Image = $request->file('img'); + if ($request->img != null) { - $Image = $request->file('img'); + // $Image = $request->file('img'); + $Image = $request->img; $InterventionImage = Image::make($Image); $Mime = explode('/', $InterventionImage->mime()); @@ -185,6 +189,10 @@ class TestResultController extends Controller $TestResult[$input->name] = $value->value; } } + if (count($TestResult->TitleImage)) { + $TestResult['imagePath'] = $TestResult->TitleImage[0]->path; + } + return \MessageResponse::data($TestResult); } @@ -198,6 +206,7 @@ class TestResultController extends Controller public function update(StoreTestResultRequest $request, TestResult $TestResult) { + $TestResultData = [ 'user_id' => auth('api')->user()->id, 'autoclave_id' => $request->autoclave_id, @@ -243,14 +252,16 @@ class TestResultController extends Controller } } } - //////////////////////////////////////////////////////////////////Image + /////////////////////////////////////////////////////////////////////Image $image = ''; if (count($TestResult->TitleImage)) $image = $TestResult->TitleImage[0]; +// dd($request->img); + // if ($request->hasFile('img')) { + if ($request->img != null) { - if ($request->hasFile('img')) { - - $Image = $request->file('img'); + // $Image = $request->file('img'); + $Image = $request->img; $InterventionImage = Image::make($Image); $Mime = explode('/', $InterventionImage->mime()); @@ -303,7 +314,8 @@ class TestResultController extends Controller $TestResult->verified = 'Verified'; } $TestResult->save(); - return \MessageResponse::success(trans('messages.success')); + $TestResult = $TestResult->load('user.medical_center'); + return \MessageResponse::success(trans('messages.success'), null, $TestResult); } } diff --git a/app/Http/Controllers/TestTypeController.php b/app/Http/Controllers/TestTypeController.php index 002aebd2..ede5dd60 100644 --- a/app/Http/Controllers/TestTypeController.php +++ b/app/Http/Controllers/TestTypeController.php @@ -8,15 +8,24 @@ use App\TestResult; use App\Input; use App\Option; use App\Http\Requests\StoreTestTypeRequest; +use \Milon\Barcode\DNS1D; class TestTypeController extends Controller { public function index() { - $TestTypes = TestType::with('user','user.medical_center')->paginate(10); + $TestTypes = TestType::withCount('test_results')->with('user','user.medical_center')->paginate(10); return \MessageResponse::data($TestTypes); } + public function generateBarcode(TestType $TestType) + { + $Number = $TestType->unique_code; + $Barcode = DNS1D::getBarcodePNGUri($Number, "C128"); + $TestType->update(['bar_code' => $Barcode]); + return \MessageResponse::data($Barcode); + } + public function create() { // @@ -148,6 +157,9 @@ class TestTypeController extends Controller public function edit(TestType $TestType) { + if (count($TestType->test_results) > 0) { + return \MessageResponse::error(trans('messages.access_denied')); + } $Inputs = Input::with('children','options','children.options')->where('test_type_id',$TestType->id)->where('parent_id',null)->get(); $Info = []; @@ -280,6 +292,9 @@ class TestTypeController extends Controller public function update(StoreTestTypeRequest $request, TestType $TestType) { + if (count($TestType->test_results) > 0) { + return \MessageResponse::error(trans('messages.access_denied')); + } $TestTypeData = [ 'name' => $request['name'], 'unique_code' => $request['unique_code'], diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index e884226f..214181a8 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -76,8 +76,6 @@ class UserController extends Controller return \MessageResponse::data($MedicalCenter); } - - public function changeStatus(User $User) { if ($User->status == 'Active') { @@ -89,8 +87,6 @@ class UserController extends Controller return \MessageResponse::data($User); } - - public function changeRole(User $User, Request $request) { $User->syncRoles($request->roles); diff --git a/app/TestType.php b/app/TestType.php index 18d76b24..56b24645 100644 --- a/app/TestType.php +++ b/app/TestType.php @@ -8,8 +8,8 @@ use Illuminate\Database\Eloquent\SoftDeletes; class TestType extends Model { use SoftDeletes; - - public $fillable = ['name','unique_code','user_id']; + + public $fillable = ['name','unique_code','user_id','bar_code']; // protected $softDelete = true; public function user() diff --git a/public/17.js b/public/17.js index 6e692748..00481032 100644 --- a/public/17.js +++ b/public/17.js @@ -111,6 +111,11 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope // // // +// +// +// +// +// @@ -137,6 +142,10 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope sortable: false, text: "Date", value: "date" + }, { + sortable: false, + text: "Verify", + value: "verify" }, { sortable: false, text: "Action", @@ -149,8 +158,8 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope }; }, created: function created() { - if (this.$route.name == 'NotVerifyTestResult') { - this.load(1, 'NotVerified'); + if (this.$route.name == "NotVerifyTestResult") { + this.load(1, "NotVerified"); } else { this.load(); } @@ -272,9 +281,17 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope return remove; }() }), + computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_3__["mapGetters"])("modal", ["getModalResult"])), watch: { currentPage: function currentPage(page) { this.load(page); + }, + getModalResult: function getModalResult(testResult) { + for (var key in this.items) { + if (this.items.hasOwnProperty(key) && this.items[key].id == testResult.id) { + this.items[key] = testResult; + } + } } } }); @@ -492,6 +509,12 @@ var render = function() { [_vm._v(_vm._s(item.created_at))] ), _vm._v(" "), + _c( + "td", + { staticClass: "title font-weight-light" }, + [_vm._v(_vm._s(item.verified))] + ), + _vm._v(" "), _c( "td", { staticClass: "text-xs-right" }, diff --git a/public/4.js b/public/4.js index dec5feab..e544bfa2 100644 --- a/public/4.js +++ b/public/4.js @@ -13,12 +13,17 @@ __webpack_require__.r(__webpack_exports__); /* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/services */ "./resources/js/vue/services/index.js"); /* harmony import */ var _config_urls__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/config/urls */ "./resources/js/vue/config/urls.js"); +/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + // // // @@ -99,6 +104,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar // + /* harmony default export */ __webpack_exports__["default"] = ({ data: function data() { return { @@ -132,7 +138,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar created: function created() { this.getData(); }, - methods: { + methods: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_3__["mapMutations"])("modal", ["changeCurrentModal"]), { getData: function () { var _getData = _asyncToGenerator( /*#__PURE__*/ @@ -207,8 +213,46 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar } return remove; + }(), + generateBarcode: function () { + var _generateBarcode = _asyncToGenerator( + /*#__PURE__*/ + _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3(id) { + var result; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) { + while (1) { + switch (_context3.prev = _context3.next) { + case 0: + _context3.next = 2; + return _services__WEBPACK_IMPORTED_MODULE_1__["ApiService"].post(_config_urls__WEBPACK_IMPORTED_MODULE_2__["urls"].TestTypeBarcode(id)); + + case 2: + result = _context3.sent; + + if (result && result.status == 200) { + this.changeCurrentModal({ + modal: "modal-testtype-barcode", + properties: { + result: result + } + }); + } + + case 4: + case "end": + return _context3.stop(); + } + } + }, _callee3, this); + })); + + function generateBarcode(_x2) { + return _generateBarcode.apply(this, arguments); + } + + return generateBarcode; }() - }, + }), watch: { currentPage: function currentPage(page) { this.getData(page); @@ -476,7 +520,14 @@ var render = function() { _vm._v(" "), _c( "v-btn", - { attrs: { color: "orange darken-1" } }, + { + attrs: { color: "orange darken-1" }, + on: { + click: function($event) { + return _vm.generateBarcode(item.id) + } + } + }, [ _c( "v-icon", diff --git a/public/5.js b/public/5.js index 455431a6..5aa5080c 100644 --- a/public/5.js +++ b/public/5.js @@ -9,7 +9,7 @@ exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n.mapouter {\r\n text-align:right;\r\n height:100%;\r\n width:100%;\r\n position: absolute;\n}\n.gmap_canvas {\r\n overflow:hidden;\r\n background:none!important;\r\n height:100%;\r\n width:100%;\n}\r\n", ""]); +exports.push([module.i, "\n.mapouter {\n text-align:right;\n height:100%;\n width:100%;\n position: absolute;\n}\n.gmap_canvas {\n overflow:hidden;\n background:none!important;\n height:100%;\n width:100%;\n}\n", ""]); diff --git a/public/mix-manifest.json b/public/mix-manifest.json index 9e302167..998df160 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -1,3 +1,3 @@ { - "/vue/js/app.js": "/vue/js/app.js?id=62f9c870e1e8daddb78f" + "/vue/js/app.js": "/vue/js/app.js?id=c178310b501c26c1cc9e" } diff --git a/public/vue/js/app.js b/public/vue/js/app.js index b42bd19a..ebe8e216 100644 --- a/public/vue/js/app.js +++ b/public/vue/js/app.js @@ -3454,7 +3454,17 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope "use strict"; __webpack_require__.r(__webpack_exports__); -/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ "./node_modules/@babel/runtime/regenerator/index.js"); +/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__); +/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); +/* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/services */ "./resources/js/vue/services/index.js"); +/* harmony import */ var _config_urls__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/config/urls */ "./resources/js/vue/config/urls.js"); + + +function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } + +function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } + function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } @@ -3604,58 +3614,115 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope // // // -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// -// - // import { ApiService } from "@/services"; -// import { urls } from "@/config/urls"; + + /* harmony default export */ __webpack_exports__["default"] = ({ data: function data() { return {}; }, - methods: {// ...mapMutations("modal", ["closeModal", "setResultModal"]), - // async changeRole() { - // const result = await ApiService.post( - // urls.changeRoleUser(this.getModalProperties.user.id), - // this.data - // ); - // if (result && result.status == 200) { - // this.setResultModal(result.data.data); - // this.closeModal(); - // } - // } - }, + methods: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_1__["mapMutations"])("modal", ["closeModal", "setResultModal"]), { + verify: function () { + var _verify = _asyncToGenerator( + /*#__PURE__*/ + _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee(id) { + var result; + return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + _context.next = 2; + return _services__WEBPACK_IMPORTED_MODULE_2__["ApiService"].post(_config_urls__WEBPACK_IMPORTED_MODULE_3__["urls"].verifyTestResult(id)); + + case 2: + result = _context.sent; + + if (result && result.status == 200) { + this.setResultModal(result.data.data); + this.closeModal(); + } + + case 4: + case "end": + return _context.stop(); + } + } + }, _callee, this); + })); + + function verify(_x) { + return _verify.apply(this, arguments); + } + + return verify; + }() + }), created: function created() { this.data = this.getModalProperties.result.data.data; }, - computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapGetters"])("modal", ["getModalProperties"])) + computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_1__["mapGetters"])("modal", ["getModalProperties"])) +}); + +/***/ }), + +/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=script&lang=js&": +/*!*************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=script&lang=js& ***! + \*************************************************************************************************************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var vuex__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vuex */ "./node_modules/vuex/dist/vuex.esm.js"); +function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// + +/* harmony default export */ __webpack_exports__["default"] = ({ + data: function data() { + return { + image: {} + }; + }, + created: function created() { + this.image = this.getModalProperties.result.data.data; + }, + computed: _objectSpread({}, Object(vuex__WEBPACK_IMPORTED_MODULE_0__["mapGetters"])("modal", ["getModalProperties"])), + methods: { + print: function print() { + var popup = window.open(); + popup.document.write("")); + popup.focus(); + popup.print(); + } + } }); /***/ }), @@ -8585,7 +8652,7 @@ exports.push([module.i, "\n#core-toolbar a {\n text-decoration: none;\n}\n.Poin exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n#core-view {\r\n padding-bottom: 100px;\n}\r\n", ""]); +exports.push([module.i, "\n#core-view {\n padding-bottom: 100px;\n}\n", ""]); @@ -8600,7 +8667,7 @@ exports.push([module.i, "\n#core-view {\r\n padding-bottom: 100px;\n}\r\n", ""] exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n.v-offset {\r\n margin: 0 auto;\r\n max-width: calc(100% - 32px);\r\n position: relative;\n}\n.v-offset--full-width {\r\n max-width: 100%;\n}\r\n", ""]); +exports.push([module.i, "\n.v-offset {\n margin: 0 auto;\n max-width: calc(100% - 32px);\n position: relative;\n}\n.v-offset--full-width {\n max-width: 100%;\n}\n", ""]); @@ -8615,7 +8682,7 @@ exports.push([module.i, "\n.v-offset {\r\n margin: 0 auto;\r\n max-width: calc exports = module.exports = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false); // Module -exports.push([module.i, "\n.v-alert--notification {\r\n border-radius: 4px !important;\r\n border-top: none !important;\n}\r\n", ""]); +exports.push([module.i, "\n.v-alert--notification {\n border-radius: 4px !important;\n border-top: none !important;\n}\n", ""]); @@ -17516,10 +17583,10 @@ render._withStripped = true /***/ }), -/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&scoped=true&": -/*!****************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&scoped=true& ***! - \****************************************************************************************************************************************************************************************************************************************/ +/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&": +/*!****************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e& ***! + \****************************************************************************************************************************************************************************************************************************/ /*! exports provided: render, staticRenderFns */ /***/ (function(module, __webpack_exports__, __webpack_require__) { @@ -17559,7 +17626,7 @@ var render = function() { _c("v-flex", { attrs: { xs12: "", md6: "", sm6: "" } }, [ _c("div", {}, [ _c("span", { staticClass: "title" }, [ - _vm._v("Auto Clave Id : ") + _vm._v("Auto Clave Id :") ]), _vm._v(" "), _c("span", { staticClass: "headline ml-2" }, [ @@ -17574,7 +17641,7 @@ var render = function() { {}, [ _c("span", { staticClass: "title" }, [ - _vm._v("Result : ") + _vm._v("Result :") ]), _vm._v(" "), _c( @@ -17597,7 +17664,7 @@ var render = function() { {}, [ _c("span", { staticClass: "title" }, [ - _vm._v("verify : ") + _vm._v("verify :") ]), _vm._v(" "), _c( @@ -17617,7 +17684,7 @@ var render = function() { _c("v-flex", { attrs: { xs12: "", md6: "", sm6: "" } }, [ _c("div", {}, [ _c("span", { staticClass: "title" }, [ - _vm._v("Register User : ") + _vm._v("Register User :") ]), _vm._v(" "), _c("span", { staticClass: "headline ml-2" }, [ @@ -17683,14 +17750,14 @@ var render = function() { }, [ _c("span", { staticClass: "title" }, [ - _vm._v(_vm._s(keyOptions) + " : ") + _vm._v(_vm._s(keyOptions) + " :") ]), _vm._v(" "), _vm._l(optionData, function(data, dataKey) { return _c( "span", { key: dataKey, staticClass: "headline ml-2" }, - [_vm._v(_vm._s(data) + ", ")] + [_vm._v(_vm._s(data) + ",")] ) }) ], @@ -17733,7 +17800,7 @@ var render = function() { key: dataKey, staticClass: "headline ml-2" }, - [_vm._v(_vm._s(data) + ", ")] + [_vm._v(_vm._s(data) + ",")] ) }) : [ @@ -17760,6 +17827,179 @@ var render = function() { 1 ), _vm._v(" "), + _c( + "v-layout", + { + staticClass: "px-5 my-3", + attrs: { "align-left": "", "justify-left": "", wrap: "" } + }, + [ + _c("h3", { staticClass: "ml-3" }, [_vm._v("Image")]), + _vm._v(" "), + _c("v-flex", { attrs: { xs12: "" } }, [ + _c("hr", { staticClass: "v-divider theme--light" }) + ]), + _vm._v(" "), + _c( + "v-layout", + { staticClass: "ml-4", attrs: { row: "", wrap: "" } }, + [ + _c("v-flex", { attrs: { xs12: "", md6: "", sm6: "" } }, [ + _c("img", { + staticStyle: { width: "100%" }, + attrs: { src: "/" + _vm.data.imagePath } + }) + ]) + ], + 1 + ) + ], + 1 + ), + _vm._v(" "), + _c( + "v-layout", + { + attrs: { + row: "", + wrap: "", + "align-center": "", + "justify-center": "" + } + }, + [ + _vm.data.verified == "NotVerified" + ? _c( + "v-flex", + { + attrs: { xs12: "", md2: "", sm2: "" }, + on: { + click: function($event) { + return _vm.verify(_vm.data.id) + } + } + }, + [ + _c( + "v-btn", + { + staticClass: "WM-CyanBlueGradient-BG", + staticStyle: { padding: "10px 60px" } + }, + [ + _c( + "v-icon", + { staticClass: "white--text mr-2 caption" }, + [_vm._v("fas fa-check")] + ), + _vm._v(" "), + _c("span", { staticClass: "white--text" }, [ + _vm._v("Verify") + ]) + ], + 1 + ) + ], + 1 + ) + : _c( + "v-flex", + { attrs: { xs12: "", md2: "", sm2: "" } }, + [ + _c( + "v-btn", + { + staticClass: + "WM-NoShadow WM-Outline-Btn WM-Border WM-Border-Gray", + on: { + click: function($event) { + return _vm.verify(_vm.data.id) + } + } + }, + [ + _c( + "v-icon", + { staticClass: "black--text mr-2 caption" }, + [_vm._v("fas fa-check")] + ), + _vm._v(" "), + _c("span", { staticClass: "black--text" }, [ + _vm._v("UnVerify") + ]) + ], + 1 + ) + ], + 1 + ) + ], + 1 + ) + ], + 1 + ) + ], + 1 + ) +} +var staticRenderFns = [] +render._withStripped = true + + + +/***/ }), + +/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=template&id=08d65101&": +/*!*****************************************************************************************************************************************************************************************************************************!*\ + !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=template&id=08d65101& ***! + \*****************************************************************************************************************************************************************************************************************************/ +/*! exports provided: render, staticRenderFns */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; }); +var render = function() { + var _vm = this + var _h = _vm.$createElement + var _c = _vm._self._c || _h + return _c( + "v-container", + { attrs: { "grid-list-xs": "" } }, + [ + _c( + "material-card", + { attrs: { color: "black", title: "Barcode Image" } }, + [ + _c( + "v-layout", + { + staticClass: "px-5 my-3", + attrs: { "align-left": "", "justify-left": "", wrap: "" } + }, + [ + _c("h3", { staticClass: "ml-3" }, [_vm._v("Barcode Image")]), + _vm._v(" "), + _c("v-flex", { attrs: { xs12: "" } }, [ + _c("hr", { staticClass: "v-divider theme--light" }) + ]), + _vm._v(" "), + _c( + "v-layout", + { staticClass: "ml-4", attrs: { row: "", wrap: "" } }, + [ + _c("v-flex", { attrs: { xs12: "", md6: "", sm6: "" } }, [ + _c("img", { attrs: { src: _vm.image } }) + ]) + ], + 1 + ) + ], + 1 + ), + _vm._v(" "), _c( "v-layout", { @@ -17773,7 +18013,10 @@ var render = function() { [ _c( "v-flex", - { attrs: { xs12: "", md2: "", sm2: "" } }, + { + attrs: { xs12: "", md2: "", sm2: "" }, + on: { click: _vm.print } + }, [ _c( "v-btn", @@ -17785,11 +18028,11 @@ var render = function() { _c( "v-icon", { staticClass: "white--text mr-2 caption" }, - [_vm._v("fas fa-check")] + [_vm._v("fas fa-print")] ), _vm._v(" "), _c("span", { staticClass: "white--text" }, [ - _vm._v("Verify") + _vm._v("Print") ]) ], 1 @@ -61278,6 +61521,7 @@ var map = { "./modal/auth/ChangePassword.vue": "./resources/js/vue/components/modal/auth/ChangePassword.vue", "./modal/auth/VerifyCode.vue": "./resources/js/vue/components/modal/auth/VerifyCode.vue", "./modal/testresult/Show.vue": "./resources/js/vue/components/modal/testresult/Show.vue", + "./modal/testtype/Barcode.vue": "./resources/js/vue/components/modal/testtype/Barcode.vue", "./modal/user/Role.vue": "./resources/js/vue/components/modal/user/Role.vue" }; @@ -62575,7 +62819,7 @@ __webpack_require__.r(__webpack_exports__); "use strict"; __webpack_require__.r(__webpack_exports__); -/* harmony import */ var _Show_vue_vue_type_template_id_9160f06e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Show.vue?vue&type=template&id=9160f06e&scoped=true& */ "./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&scoped=true&"); +/* harmony import */ var _Show_vue_vue_type_template_id_9160f06e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Show.vue?vue&type=template&id=9160f06e& */ "./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&"); /* harmony import */ var _Show_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Show.vue?vue&type=script&lang=js& */ "./resources/js/vue/components/modal/testresult/Show.vue?vue&type=script&lang=js&"); /* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); @@ -62587,11 +62831,11 @@ __webpack_require__.r(__webpack_exports__); var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( _Show_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], - _Show_vue_vue_type_template_id_9160f06e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"], - _Show_vue_vue_type_template_id_9160f06e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], + _Show_vue_vue_type_template_id_9160f06e___WEBPACK_IMPORTED_MODULE_0__["render"], + _Show_vue_vue_type_template_id_9160f06e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], false, null, - "9160f06e", + null, null ) @@ -62617,19 +62861,88 @@ __webpack_require__.r(__webpack_exports__); /***/ }), -/***/ "./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&scoped=true&": -/*!**********************************************************************************************************!*\ - !*** ./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&scoped=true& ***! - \**********************************************************************************************************/ +/***/ "./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&": +/*!**********************************************************************************************!*\ + !*** ./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e& ***! + \**********************************************************************************************/ /*! exports provided: render, staticRenderFns */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); -/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Show_vue_vue_type_template_id_9160f06e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Show.vue?vue&type=template&id=9160f06e&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&scoped=true&"); -/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Show_vue_vue_type_template_id_9160f06e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; }); +/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Show_vue_vue_type_template_id_9160f06e___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Show.vue?vue&type=template&id=9160f06e& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testresult/Show.vue?vue&type=template&id=9160f06e&"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Show_vue_vue_type_template_id_9160f06e___WEBPACK_IMPORTED_MODULE_0__["render"]; }); -/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Show_vue_vue_type_template_id_9160f06e_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; }); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Show_vue_vue_type_template_id_9160f06e___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; }); + + + +/***/ }), + +/***/ "./resources/js/vue/components/modal/testtype/Barcode.vue": +/*!****************************************************************!*\ + !*** ./resources/js/vue/components/modal/testtype/Barcode.vue ***! + \****************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _Barcode_vue_vue_type_template_id_08d65101___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Barcode.vue?vue&type=template&id=08d65101& */ "./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=template&id=08d65101&"); +/* harmony import */ var _Barcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Barcode.vue?vue&type=script&lang=js& */ "./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=script&lang=js&"); +/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js"); + + + + + +/* normalize component */ + +var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])( + _Barcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], + _Barcode_vue_vue_type_template_id_08d65101___WEBPACK_IMPORTED_MODULE_0__["render"], + _Barcode_vue_vue_type_template_id_08d65101___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], + false, + null, + null, + null + +) + +/* hot reload */ +if (false) { var api; } +component.options.__file = "resources/js/vue/components/modal/testtype/Barcode.vue" +/* harmony default export */ __webpack_exports__["default"] = (component.exports); + +/***/ }), + +/***/ "./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=script&lang=js&": +/*!*****************************************************************************************!*\ + !*** ./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=script&lang=js& ***! + \*****************************************************************************************/ +/*! exports provided: default */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Barcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Barcode.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=script&lang=js&"); +/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Barcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); + +/***/ }), + +/***/ "./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=template&id=08d65101&": +/*!***********************************************************************************************!*\ + !*** ./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=template&id=08d65101& ***! + \***********************************************************************************************/ +/*! exports provided: render, staticRenderFns */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Barcode_vue_vue_type_template_id_08d65101___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Barcode.vue?vue&type=template&id=08d65101& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/vue/components/modal/testtype/Barcode.vue?vue&type=template&id=08d65101&"); +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Barcode_vue_vue_type_template_id_08d65101___WEBPACK_IMPORTED_MODULE_0__["render"]; }); + +/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Barcode_vue_vue_type_template_id_08d65101___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; }); @@ -62730,6 +63043,9 @@ var urls = { listTestType: function listTestType(page) { return "/TestTypes?page=" + page; }, + TestTypeBarcode: function TestTypeBarcode(id) { + return "/TestTypes/Barcode/".concat(id); + }, deleteTestType: function deleteTestType(id) { return "/TestTypes/".concat(id); }, @@ -62748,6 +63064,9 @@ var urls = { return "/TestResults?page=" + page; }, + verifyTestResult: function verifyTestResult(id) { + return "/TestResults/Verify/".concat(id); + }, editTestResult: function editTestResult(id) { return "/TestResults/".concat(id, "/edit"); }, @@ -63603,7 +63922,7 @@ var UserService = { }, auth: { username: "2", - password: "g0Km7WE818LAymknK7g7eWpdKIVYqHUytHtynUDt" + password: "vAhCu2Y4mxfjlr8uTSxpBmjn2rWPIEolnr73ETAE" } }; _context.prev = 1; @@ -63663,7 +63982,7 @@ var UserService = { }, auth: { username: "2", - password: "g0Km7WE818LAymknK7g7eWpdKIVYqHUytHtynUDt" + password: "vAhCu2Y4mxfjlr8uTSxpBmjn2rWPIEolnr73ETAE" } }; _context2.prev = 2; @@ -64911,7 +65230,7 @@ module.exports = webpackAsyncContext; /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { -module.exports = __webpack_require__(/*! E:\Shokouhi\Projects\Git\Laravel_CSSD\resources\js\vue\main.js */"./resources/js/vue/main.js"); +module.exports = __webpack_require__(/*! D:\Atom\Git\CSSD\resources\js\vue\main.js */"./resources/js/vue/main.js"); /***/ }) diff --git a/resources/js/vue/components/modal/testresult/Show.vue b/resources/js/vue/components/modal/testresult/Show.vue index d6936e55..c5f3d563 100644 --- a/resources/js/vue/components/modal/testresult/Show.vue +++ b/resources/js/vue/components/modal/testresult/Show.vue @@ -1,203 +1,169 @@ - - - diff --git a/resources/js/vue/components/modal/testtype/Barcode.vue b/resources/js/vue/components/modal/testtype/Barcode.vue new file mode 100644 index 00000000..9f92c6cb --- /dev/null +++ b/resources/js/vue/components/modal/testtype/Barcode.vue @@ -0,0 +1,47 @@ + + \ No newline at end of file diff --git a/resources/js/vue/config/urls.js b/resources/js/vue/config/urls.js index 4a5476fa..e682d9cc 100644 --- a/resources/js/vue/config/urls.js +++ b/resources/js/vue/config/urls.js @@ -14,6 +14,9 @@ const urls = { listTestType : function(page) { return "/TestTypes?page=" + page; }, + TestTypeBarcode : function(id) { + return `/TestTypes/Barcode/${id}`; + }, deleteTestType : function(id) { return `/TestTypes/${id}`; }, @@ -29,6 +32,9 @@ const urls = { } return "/TestResults?page=" + page; }, + verifyTestResult : function(id) { + return `/TestResults/Verify/${id}`; + }, editTestResult : function(id) { return `/TestResults/${id}/edit`; }, diff --git a/resources/js/vue/views/TestResult/List.vue b/resources/js/vue/views/TestResult/List.vue index 491329cd..d6dad2a0 100644 --- a/resources/js/vue/views/TestResult/List.vue +++ b/resources/js/vue/views/TestResult/List.vue @@ -46,6 +46,7 @@ {{ item.user.name }} {{ item.result }} {{ item.created_at }} + {{ item.verified }} fas fa-eye @@ -59,7 +60,11 @@ Edit - + fas fa-times Remove @@ -88,7 +93,7 @@