From dd41fe7cddf5314806890a2ce1b3e7f735feefdd Mon Sep 17 00:00:00 2001 From: marcorv6 Date: Wed, 11 May 2022 00:45:13 -0500 Subject: [PATCH] avance profesor, inicio qr --- components/Login.vue | 2 + components/layouts/LogoutProfesor.vue | 6 +- components/operador/Scanner.vue | 84 +++++++++++++++ package-lock.json | 142 +++++++++++++++++++++++++- package.json | 3 +- pages/Admin/index.vue | 18 ++-- pages/Operador/index.vue | 113 ++++++++++++++++++++ pages/Profesor/index.vue | 134 ++++++++++++++++++++++++ 8 files changed, 489 insertions(+), 13 deletions(-) create mode 100644 components/operador/Scanner.vue create mode 100644 pages/Operador/index.vue create mode 100644 pages/Profesor/index.vue diff --git a/components/Login.vue b/components/Login.vue index d67ac3a..49ffaa3 100644 --- a/components/Login.vue +++ b/components/Login.vue @@ -179,6 +179,8 @@ export default { localStorage.setItem('token', info.token) localStorage.setItem('idProfesor', info.Profesor.idProfesor) + localStorage.setItem('nombre', info.Profesor.nombre) + localStorage.setItem('adscripcion', info.Profesor.adscripcion) localStorage.setItem('numeroTrabajador', info.Profesor.numeroTrabajador) this.updateIsLoading(false) this.$router.push(`/${'profesor'}`) diff --git a/components/layouts/LogoutProfesor.vue b/components/layouts/LogoutProfesor.vue index e548774..69d2415 100644 --- a/components/layouts/LogoutProfesor.vue +++ b/components/layouts/LogoutProfesor.vue @@ -23,9 +23,9 @@ + + \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index c07e747..9ca7847 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,8 @@ "nuxt-sweetalert2": "^1.0.0", "validator": "^13.6.0", "vue-barcode-reader": "^1.0.2", - "vue-json-csv": "^1.2.12" + "vue-json-csv": "^1.2.12", + "vue-qrcode-reader": "^3.1.0" }, "devDependencies": { "eslint-config-prettier": "^8.1.0", @@ -2809,6 +2810,29 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/barcode-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/barcode-detector/-/barcode-detector-1.0.0.tgz", + "integrity": "sha512-LZSyqjumoq2WmMOeQZ2BiYYAqwnTlkXgqKOTcJlathpFS6IejsdSb6aIGmoSyOCjBgFNATzLgMJ9shNfklnz6A==", + "dependencies": { + "@zxing/library": "^0.18.4", + "jsqr": "^1.3.1" + } + }, + "node_modules/barcode-detector/node_modules/@zxing/library": { + "version": "0.18.6", + "resolved": "https://registry.npmjs.org/@zxing/library/-/library-0.18.6.tgz", + "integrity": "sha512-bulZ9JHoLFd9W36pi+7e7DnEYNJhljYjZ1UTsKPOoLMU3qtC+REHITeCRNx40zTRJZx18W5TBRXt5pq2Uopjsw==", + "dependencies": { + "ts-custom-error": "^3.0.0" + }, + "engines": { + "node": ">= 10.4.0" + }, + "optionalDependencies": { + "@zxing/text-encoding": "~0.9.0" + } + }, "node_modules/base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", @@ -3347,6 +3371,11 @@ "node": ">=4" } }, + "node_modules/callforth": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/callforth/-/callforth-0.3.1.tgz", + "integrity": "sha512-Q2zPfqnwoKsb1DTVCr4lmhe49wKNBsMmNlbudjleu3/co+Nw1pOqFHYJHrW3VZ253ou9AAr+xauQR0C55NPdzA==" + }, "node_modules/callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", @@ -6755,6 +6784,11 @@ "universalify": "^2.0.0" } }, + "node_modules/jsqr": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jsqr/-/jsqr-1.4.0.tgz", + "integrity": "sha512-dxLob7q65Xg2DvstYkRpkYtmKm2sPJ9oFhrhmudT1dZvNFFTlroai3AWSpLey/w5vMcLBXRgOJsbXpdN9HzU/A==" + }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -9746,6 +9780,18 @@ "inherits": "^2.0.1" } }, + "node_modules/rtcpeerconnection-shim": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.15.tgz", + "integrity": "sha512-C6DxhXt7bssQ1nHb154lqeL0SXz5Dx4RczXZu2Aa/L1NJFnEVDxFwCBo3fqtuljhHIGceg5JKBV4XJ0gW5JKyw==", + "dependencies": { + "sdp": "^2.6.0" + }, + "engines": { + "node": ">=6.0.0", + "npm": ">=3.10.0" + } + }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -9827,6 +9873,11 @@ "resolved": "https://registry.npmjs.org/scule/-/scule-0.1.1.tgz", "integrity": "sha512-1j2RlmUNADEprCkzDaeo8w2tdum/mvQWAKdRaS2raud7IOnPaDbLSFKhcY5xXPbAFYWk4ZQ0BUnfmg0ZUcI+Pg==" }, + "node_modules/sdp": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/sdp/-/sdp-2.12.0.tgz", + "integrity": "sha512-jhXqQAQVM+8Xj5EjJGVweuEzgtGWb3tmEEpl3CLP3cStInSbVHSg0QWOGQzNq8pSID4JkpeV2mPqlMDLrm0/Vw==" + }, "node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -11374,6 +11425,18 @@ "resolved": "https://registry.npmjs.org/vue-no-ssr/-/vue-no-ssr-1.1.1.tgz", "integrity": "sha512-ZMjqRpWabMPqPc7gIrG0Nw6vRf1+itwf0Itft7LbMXs2g3Zs/NFmevjZGN1x7K3Q95GmIjWbQZTVerxiBxI+0g==" }, + "node_modules/vue-qrcode-reader": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vue-qrcode-reader/-/vue-qrcode-reader-3.1.0.tgz", + "integrity": "sha512-k2uoUjibxzdHJPfmsL1T9KVNzKPG/xIzKWMgBTXExoJlvZ5VKrBIFpP3P+rXNylfL3yw5AftE3K1yf4CoTkfkQ==", + "dependencies": { + "barcode-detector": "^1.0.0", + "callforth": "^0.3.1", + "core-js": "^3.6.5", + "vue": "^2.6.11", + "webrtc-adapter": "7.7.0" + } + }, "node_modules/vue-router": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.1.tgz", @@ -12367,6 +12430,19 @@ "node": ">= 8.0.0" } }, + "node_modules/webrtc-adapter": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-7.7.0.tgz", + "integrity": "sha512-7Bp9OBnx642oJRkom1tNAbeJjUadAq2rh5xLL9YXPw5hVyt2h4hHr5bcoPYDs1stp/mZHSPSQA34YISdnr0DBQ==", + "dependencies": { + "rtcpeerconnection-shim": "^1.2.15", + "sdp": "^2.12.0" + }, + "engines": { + "node": ">=6.0.0", + "npm": ">=3.10.0" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -15170,6 +15246,26 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "barcode-detector": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/barcode-detector/-/barcode-detector-1.0.0.tgz", + "integrity": "sha512-LZSyqjumoq2WmMOeQZ2BiYYAqwnTlkXgqKOTcJlathpFS6IejsdSb6aIGmoSyOCjBgFNATzLgMJ9shNfklnz6A==", + "requires": { + "@zxing/library": "^0.18.4", + "jsqr": "^1.3.1" + }, + "dependencies": { + "@zxing/library": { + "version": "0.18.6", + "resolved": "https://registry.npmjs.org/@zxing/library/-/library-0.18.6.tgz", + "integrity": "sha512-bulZ9JHoLFd9W36pi+7e7DnEYNJhljYjZ1UTsKPOoLMU3qtC+REHITeCRNx40zTRJZx18W5TBRXt5pq2Uopjsw==", + "requires": { + "@zxing/text-encoding": "~0.9.0", + "ts-custom-error": "^3.0.0" + } + } + } + }, "base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", @@ -15616,6 +15712,11 @@ "caller-callsite": "^2.0.0" } }, + "callforth": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/callforth/-/callforth-0.3.1.tgz", + "integrity": "sha512-Q2zPfqnwoKsb1DTVCr4lmhe49wKNBsMmNlbudjleu3/co+Nw1pOqFHYJHrW3VZ253ou9AAr+xauQR0C55NPdzA==" + }, "callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", @@ -18415,6 +18516,11 @@ "universalify": "^2.0.0" } }, + "jsqr": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jsqr/-/jsqr-1.4.0.tgz", + "integrity": "sha512-dxLob7q65Xg2DvstYkRpkYtmKm2sPJ9oFhrhmudT1dZvNFFTlroai3AWSpLey/w5vMcLBXRgOJsbXpdN9HzU/A==" + }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -20913,6 +21019,14 @@ "inherits": "^2.0.1" } }, + "rtcpeerconnection-shim": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.15.tgz", + "integrity": "sha512-C6DxhXt7bssQ1nHb154lqeL0SXz5Dx4RczXZu2Aa/L1NJFnEVDxFwCBo3fqtuljhHIGceg5JKBV4XJ0gW5JKyw==", + "requires": { + "sdp": "^2.6.0" + } + }, "run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -20987,6 +21101,11 @@ "resolved": "https://registry.npmjs.org/scule/-/scule-0.1.1.tgz", "integrity": "sha512-1j2RlmUNADEprCkzDaeo8w2tdum/mvQWAKdRaS2raud7IOnPaDbLSFKhcY5xXPbAFYWk4ZQ0BUnfmg0ZUcI+Pg==" }, + "sdp": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/sdp/-/sdp-2.12.0.tgz", + "integrity": "sha512-jhXqQAQVM+8Xj5EjJGVweuEzgtGWb3tmEEpl3CLP3cStInSbVHSg0QWOGQzNq8pSID4JkpeV2mPqlMDLrm0/Vw==" + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -22298,6 +22417,18 @@ "resolved": "https://registry.npmjs.org/vue-no-ssr/-/vue-no-ssr-1.1.1.tgz", "integrity": "sha512-ZMjqRpWabMPqPc7gIrG0Nw6vRf1+itwf0Itft7LbMXs2g3Zs/NFmevjZGN1x7K3Q95GmIjWbQZTVerxiBxI+0g==" }, + "vue-qrcode-reader": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vue-qrcode-reader/-/vue-qrcode-reader-3.1.0.tgz", + "integrity": "sha512-k2uoUjibxzdHJPfmsL1T9KVNzKPG/xIzKWMgBTXExoJlvZ5VKrBIFpP3P+rXNylfL3yw5AftE3K1yf4CoTkfkQ==", + "requires": { + "barcode-detector": "^1.0.0", + "callforth": "^0.3.1", + "core-js": "^3.6.5", + "vue": "^2.6.11", + "webrtc-adapter": "7.7.0" + } + }, "vue-router": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.1.tgz", @@ -23136,6 +23267,15 @@ "wrap-ansi": "^6.0.0" } }, + "webrtc-adapter": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-7.7.0.tgz", + "integrity": "sha512-7Bp9OBnx642oJRkom1tNAbeJjUadAq2rh5xLL9YXPw5hVyt2h4hHr5bcoPYDs1stp/mZHSPSQA34YISdnr0DBQ==", + "requires": { + "rtcpeerconnection-shim": "^1.2.15", + "sdp": "^2.12.0" + } + }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", diff --git a/package.json b/package.json index 2c1b83c..9f42263 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,8 @@ "nuxt-sweetalert2": "^1.0.0", "validator": "^13.6.0", "vue-barcode-reader": "^1.0.2", - "vue-json-csv": "^1.2.12" + "vue-json-csv": "^1.2.12", + "vue-qrcode-reader": "^3.1.0" }, "devDependencies": { "eslint-config-prettier": "^8.1.0", diff --git a/pages/Admin/index.vue b/pages/Admin/index.vue index e3177ac..f8639dc 100644 --- a/pages/Admin/index.vue +++ b/pages/Admin/index.vue @@ -12,7 +12,7 @@ drag-drop expanded > -
+

@@ -22,11 +22,6 @@

Tamaño máximo 20MB

- -

- Si al momento de elegir un archivo este no se selecciona, haga click - en cancelar en la ventana emergente e intente de nuevo. -

@@ -36,7 +31,7 @@

Descargar base de datos invitados:

-
+
import JsonCSV from 'vue-json-csv' import axios from 'axios' -import sweetalert2 from 'sweetalert2' export default { components: { @@ -155,4 +149,12 @@ export default { .full-h { height: 75vh; } +@media (max-width: 768px) { + .container { + margin: 0 15px !important; + } + .full-h { + height: 80vh; +} +} diff --git a/pages/Operador/index.vue b/pages/Operador/index.vue new file mode 100644 index 0000000..4405a0f --- /dev/null +++ b/pages/Operador/index.vue @@ -0,0 +1,113 @@ + + + + + diff --git a/pages/Profesor/index.vue b/pages/Profesor/index.vue new file mode 100644 index 0000000..ac79fab --- /dev/null +++ b/pages/Profesor/index.vue @@ -0,0 +1,134 @@ + + + + +