From 879dc8c749db895139ebb07bd4cf7700d07adffb Mon Sep 17 00:00:00 2001
From: ljx120 <10717296+ljx120@user.noreply.gitee.com>
Date: Sat, 21 Dec 2024 11:51:09 +0800
Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=9D=99=E6=80=81=E9=A1=B5?=
=?UTF-8?q?=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
package-lock.json | 144 +++++++++++++++++-
package.json | 7 +-
src/components/BarScan.vue | 189 ++++++++++++++++++++++++
src/components/HelloWorld.vue | 41 -----
src/components/TheWelcome.vue | 90 -----------
src/components/WelcomeItem.vue | 87 -----------
src/router/index.ts | 45 ++++--
src/utils/date.ts | 17 +++
src/views/AboutView.vue | 11 +-
src/views/lecher/l-quality.vue | 3 +-
src/views/whiteEmbryo/scanCode.vue | 59 ++++++++
src/views/whiteEmbryo/w-level.vue | 129 ++++++++++++++++
src/views/whiteEmbryo/w-suppliers.vue | 142 ++++++++++++++++++
src/views/whiteEmbryo/w-warehousing.vue | 157 ++++++++++++++++++++
14 files changed, 878 insertions(+), 243 deletions(-)
create mode 100644 src/components/BarScan.vue
delete mode 100644 src/components/HelloWorld.vue
delete mode 100644 src/components/TheWelcome.vue
delete mode 100644 src/components/WelcomeItem.vue
create mode 100644 src/utils/date.ts
create mode 100644 src/views/whiteEmbryo/scanCode.vue
create mode 100644 src/views/whiteEmbryo/w-level.vue
create mode 100644 src/views/whiteEmbryo/w-suppliers.vue
create mode 100644 src/views/whiteEmbryo/w-warehousing.vue
diff --git a/package-lock.json b/package-lock.json
index 42aed38..2616b41 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,9 +9,12 @@
"version": "0.0.0",
"dependencies": {
"pinia": "^2.2.6",
- "vant": "^4.9.14",
+ "vant": "^4.9.15",
"vue": "^3.5.13",
- "vue-router": "^4.4.5"
+ "vue-qrcode-reader": "^5.6.0",
+ "vue-router": "^4.4.5",
+ "vue3-qr-reader": "^1.0.0",
+ "vue3-qrcode-reader": "^0.0.1"
},
"devDependencies": {
"@tsconfig/node22": "^22.0.0",
@@ -1553,6 +1556,16 @@
"integrity": "sha512-twLQ77zevtxobBOD4ToAtVmuYrpeYUh3qh+TEp+08IWhpsrIflVHqQ1F1CiPxQGL7doCdBIOOCF+1Tm833faNg==",
"dev": true
},
+ "node_modules/@types/dom-webcodecs": {
+ "version": "0.1.13",
+ "resolved": "https://registry.npmmirror.com/@types/dom-webcodecs/-/dom-webcodecs-0.1.13.tgz",
+ "integrity": "sha512-O5hkiFIcjjszPIYyUSyvScyvrBoV3NOEEZx/pMlsu44TKzWNkLVBBxnxJz42in5n3QIolYOcBYFCPZZ0h8SkwQ=="
+ },
+ "node_modules/@types/emscripten": {
+ "version": "1.39.13",
+ "resolved": "https://registry.npmmirror.com/@types/emscripten/-/emscripten-1.39.13.tgz",
+ "integrity": "sha512-cFq+fO/isvhvmuP/+Sl4K4jtU6E23DoivtbO4r50e3odaxAiVdbfSYRDdJ4gCdxx+3aRjhphS5ZMwIH4hFy/Cw=="
+ },
"node_modules/@types/estree": {
"version": "1.0.6",
"resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.6.tgz",
@@ -2364,6 +2377,15 @@
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
"dev": true
},
+ "node_modules/barcode-detector": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmmirror.com/barcode-detector/-/barcode-detector-2.2.2.tgz",
+ "integrity": "sha512-JcSekql+EV93evfzF9zBr+Y6aRfkR+QFvgyzbwQ0dbymZXoAI9+WgT7H1E429f+3RKNncHz2CW98VQtaaKpmfQ==",
+ "dependencies": {
+ "@types/dom-webcodecs": "^0.1.11",
+ "zxing-wasm": "1.1.3"
+ }
+ },
"node_modules/birpc": {
"version": "0.2.19",
"resolved": "https://registry.npmmirror.com/birpc/-/birpc-0.2.19.tgz",
@@ -2462,6 +2484,11 @@
"node": ">=8"
}
},
+ "node_modules/callforth": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmmirror.com/callforth/-/callforth-0.3.1.tgz",
+ "integrity": "sha512-Q2zPfqnwoKsb1DTVCr4lmhe49wKNBsMmNlbudjleu3/co+Nw1pOqFHYJHrW3VZ253ou9AAr+xauQR0C55NPdzA=="
+ },
"node_modules/callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz",
@@ -2614,6 +2641,16 @@
"url": "https://github.com/sponsors/mesqueeb"
}
},
+ "node_modules/core-js": {
+ "version": "3.39.0",
+ "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.39.0.tgz",
+ "integrity": "sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g==",
+ "hasInstallScript": true,
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/core-js"
+ }
+ },
"node_modules/cross-spawn": {
"version": "7.0.6",
"resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz",
@@ -3945,6 +3982,11 @@
"graceful-fs": "^4.1.6"
}
},
+ "node_modules/jsqr": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmmirror.com/jsqr/-/jsqr-1.4.0.tgz",
+ "integrity": "sha512-dxLob7q65Xg2DvstYkRpkYtmKm2sPJ9oFhrhmudT1dZvNFFTlroai3AWSpLey/w5vMcLBXRgOJsbXpdN9HzU/A=="
+ },
"node_modules/keyv": {
"version": "4.5.4",
"resolved": "https://registry.npmmirror.com/keyv/-/keyv-4.5.4.tgz",
@@ -4719,6 +4761,23 @@
"integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==",
"dev": true
},
+ "node_modules/rtcpeerconnection-shim": {
+ "version": "1.2.15",
+ "resolved": "https://registry.npmmirror.com/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/rtcpeerconnection-shim/node_modules/sdp": {
+ "version": "2.12.0",
+ "resolved": "https://registry.npmmirror.com/sdp/-/sdp-2.12.0.tgz",
+ "integrity": "sha512-jhXqQAQVM+8Xj5EjJGVweuEzgtGWb3tmEEpl3CLP3cStInSbVHSg0QWOGQzNq8pSID4JkpeV2mPqlMDLrm0/Vw=="
+ },
"node_modules/run-applescript": {
"version": "7.0.0",
"resolved": "https://registry.npmmirror.com/run-applescript/-/run-applescript-7.0.0.tgz",
@@ -5160,6 +5219,11 @@
"node": ">=v12.22.7"
}
},
+ "node_modules/sdp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmmirror.com/sdp/-/sdp-3.2.0.tgz",
+ "integrity": "sha512-d7wDPgDV3DDiqulJjKiV2865wKsJ34YI+NDREbm+FySq6WuKOikwyNQcm+doLAZ1O6ltdO0SeKle2xMpN3Brgw=="
+ },
"node_modules/semver": {
"version": "7.6.3",
"resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz",
@@ -5711,10 +5775,9 @@
"dev": true
},
"node_modules/vant": {
- "version": "4.9.14",
- "resolved": "https://registry.npmmirror.com/vant/-/vant-4.9.14.tgz",
- "integrity": "sha512-sWov3CZ6555Mb0y4j7wjR0JIpKhPZwAIYLJT9/4p823uqSdPU96bL7VgJS75cSiATIODz4QGgZrSh6sa15jJGA==",
- "hasInstallScript": true,
+ "version": "4.9.15",
+ "resolved": "https://registry.npmmirror.com/vant/-/vant-4.9.15.tgz",
+ "integrity": "sha512-XyIAnoGu2P/dc5R2NnjIJgKwfOTTVM2FJW/8WpsZA0FUBL6Lu+KHBaAY/x3IduwbowkaCIUUPViUopI2JSjbug==",
"dependencies": {
"@vant/popperjs": "^1.3.0",
"@vant/use": "^1.6.0",
@@ -7051,6 +7114,18 @@
"url": "https://opencollective.com/eslint"
}
},
+ "node_modules/vue-qrcode-reader": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmmirror.com/vue-qrcode-reader/-/vue-qrcode-reader-5.6.0.tgz",
+ "integrity": "sha512-uvaJqMRgR/1tt7XWAqaRBQf0mo3gudu5fXqZmtoq+87lvmM4dublJ7StO6ssNO3FaJqssG72hPhXWoBoYWJIeg==",
+ "dependencies": {
+ "barcode-detector": "2.2.2",
+ "webrtc-adapter": "8.2.3"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
"node_modules/vue-router": {
"version": "4.5.0",
"resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.5.0.tgz",
@@ -7082,6 +7157,43 @@
"typescript": ">=5.0.0"
}
},
+ "node_modules/vue3-qr-reader": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/vue3-qr-reader/-/vue3-qr-reader-1.0.0.tgz",
+ "integrity": "sha512-BRgmR+lDPkNwgL6skSaEOGFg4Aup/FLYnOGFCV0knYHxfbAnliJN/+wr//iqD2G3EOBrXw4TPGNfj/5Wxl7wwQ==",
+ "dependencies": {
+ "jsqr": "^1.4.0"
+ }
+ },
+ "node_modules/vue3-qrcode-reader": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmmirror.com/vue3-qrcode-reader/-/vue3-qrcode-reader-0.0.1.tgz",
+ "integrity": "sha512-rTZRO2WiBrGRT6pYGMkySNMnEwD9sVlzl9kwPxQ4C0n7I4SXVu60eq8ZQHQTMJAbDTTkbuuW/5reSf+TYFJ5pQ==",
+ "dependencies": {
+ "callforth": "^0.3.1",
+ "core-js": "^3.6.5",
+ "vue": "^3.0.0",
+ "webrtc-adapter": "7.7.0"
+ }
+ },
+ "node_modules/vue3-qrcode-reader/node_modules/sdp": {
+ "version": "2.12.0",
+ "resolved": "https://registry.npmmirror.com/sdp/-/sdp-2.12.0.tgz",
+ "integrity": "sha512-jhXqQAQVM+8Xj5EjJGVweuEzgtGWb3tmEEpl3CLP3cStInSbVHSg0QWOGQzNq8pSID4JkpeV2mPqlMDLrm0/Vw=="
+ },
+ "node_modules/vue3-qrcode-reader/node_modules/webrtc-adapter": {
+ "version": "7.7.0",
+ "resolved": "https://registry.npmmirror.com/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/w3c-xmlserializer": {
"version": "5.0.0",
"resolved": "https://registry.npmmirror.com/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz",
@@ -7112,6 +7224,18 @@
"node": ">=12"
}
},
+ "node_modules/webrtc-adapter": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmmirror.com/webrtc-adapter/-/webrtc-adapter-8.2.3.tgz",
+ "integrity": "sha512-gnmRz++suzmvxtp3ehQts6s2JtAGPuDPjA1F3a9ckNpG1kYdYuHWYpazoAnL9FS5/B21tKlhkorbdCXat0+4xQ==",
+ "dependencies": {
+ "sdp": "^3.2.0"
+ },
+ "engines": {
+ "node": ">=6.0.0",
+ "npm": ">=3.10.0"
+ }
+ },
"node_modules/whatwg-encoding": {
"version": "3.1.1",
"resolved": "https://registry.npmmirror.com/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz",
@@ -7339,6 +7463,14 @@
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
+ },
+ "node_modules/zxing-wasm": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmmirror.com/zxing-wasm/-/zxing-wasm-1.1.3.tgz",
+ "integrity": "sha512-MYm9k/5YVs4ZOTIFwlRjfFKD0crhefgbnt1+6TEpmKUDFp3E2uwqGSKwQOd2hOIsta/7Usq4hnpNRYTLoljnfA==",
+ "dependencies": {
+ "@types/emscripten": "^1.39.10"
+ }
}
}
}
diff --git a/package.json b/package.json
index fd1a282..e79d36f 100644
--- a/package.json
+++ b/package.json
@@ -15,9 +15,12 @@
},
"dependencies": {
"pinia": "^2.2.6",
- "vant": "^4.9.14",
+ "vant": "^4.9.15",
"vue": "^3.5.13",
- "vue-router": "^4.4.5"
+ "vue-qrcode-reader": "^5.6.0",
+ "vue-router": "^4.4.5",
+ "vue3-qr-reader": "^1.0.0",
+ "vue3-qrcode-reader": "^0.0.1"
},
"devDependencies": {
"@tsconfig/node22": "^22.0.0",
diff --git a/src/components/BarScan.vue b/src/components/BarScan.vue
new file mode 100644
index 0000000..3360380
--- /dev/null
+++ b/src/components/BarScan.vue
@@ -0,0 +1,189 @@
+
+
+
+
+
+
+
diff --git a/src/components/HelloWorld.vue b/src/components/HelloWorld.vue
deleted file mode 100644
index d174cf8..0000000
--- a/src/components/HelloWorld.vue
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
{{ msg }}
-
- You’ve successfully created a project with
- Vite +
- Vue 3. What's next?
-
-
-
-
-
diff --git a/src/components/TheWelcome.vue b/src/components/TheWelcome.vue
deleted file mode 100644
index 3d4eecd..0000000
--- a/src/components/TheWelcome.vue
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
-
-
-
-
- Documentation
-
- Vue’s
- official documentation
- provides you with all information you need to get started.
-
-
-
-
-
-
- Tooling
-
- This project is served and bundled with
- Vite. The
- recommended IDE setup is
- VSCode
- +
- Volar. If
- you need to test your components and web pages, check out
- Cypress
- and
- Cypress Component Testing.
-
-
-
- More instructions are available in README.md
.
-
-
-
-
-
-
- Ecosystem
-
- Get official tools and libraries for your project:
- Pinia,
- Vue Router,
- Vue Test Utils, and
- Vue Dev Tools. If
- you need more resources, we suggest paying
- Awesome Vue
- a visit.
-
-
-
-
-
-
- Community
-
- Got stuck? Ask your question on
- Vue Land, our official
- Discord server, or
- StackOverflow. You should also subscribe to
- our mailing list
- and follow the official
- @vuejs
- twitter account for latest news in the Vue world.
-
-
-
-
-
-
- Support Vue
-
- As an independent project, Vue relies on community backing for its sustainability. You can help
- us by
- becoming a sponsor.
-
-
diff --git a/src/components/WelcomeItem.vue b/src/components/WelcomeItem.vue
deleted file mode 100644
index 6d7086a..0000000
--- a/src/components/WelcomeItem.vue
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
diff --git a/src/router/index.ts b/src/router/index.ts
index 9e37c1c..4c7892a 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -11,47 +11,66 @@ const router = createRouter({
children:[
{
path: '/process',
- name: 'process',
+ name: '工序项维护',
component: () => import('../views/maintenance/m-process.vue'),
},
{
path: '/requirements',
- name: 'requirements',
+ name: '工艺要求维护',
component: () => import('../views/maintenance/m-requirements.vue'),
},
{
path: '/factory',
- name: 'factory',
+ name: '工厂维护',
component: () => import('../views/maintenance/m-factory.vue'),
},
{
path: '/other',
- name: 'other',
+ name: '其他要求项维护',
component: () => import('../views/maintenance/m-other.vue'),
},
{
path: '/quality',
- name: 'quality',
+ name: '色胚质检项维护',
component: () => import('../views/lecher/l-quality.vue'),
},
{
path: '/flaws',
- name: 'flaws',
+ name: '色胚质检瑕疵维护',
component: () => import('../views/lecher/l-flaws.vue'),
},
{
- path: '/',
- name: 'about',
- component: () => import('../views/AboutView.vue'),
+ path: '/warehousing',
+ name: '白胚入库',
+ component: () => import('../views/whiteEmbryo/w-warehousing.vue'),
},
{
- path: '/detail',
- name: 'detail',
- component: () => import('../views/maintenance/p-details.vue'),
+ path: '/level',
+ name: '白胚等级维护',
+ component: () => import('../views/whiteEmbryo/w-level.vue'),
+ },
+ {
+ path: '/suppliers',
+ name: '供应商维护',
+ component: () => import('../views/whiteEmbryo/w-suppliers.vue'),
+ },
+ {
+ path: '/scanCode',
+ name: '扫一扫',
+ component: () => import('../views/whiteEmbryo/scanCode.vue'),
},
]
},
-
+ {
+ path: '/detail',
+ name: 'detail',
+ component: () => import('../views/maintenance/p-details.vue'),
+ },
+ {
+ path: '/',
+ name: 'about',
+ component: () => import('../views/AboutView.vue'),
+ },
{
path: "/:catchAll(.*)",
name: "404",
diff --git a/src/utils/date.ts b/src/utils/date.ts
new file mode 100644
index 0000000..4332455
--- /dev/null
+++ b/src/utils/date.ts
@@ -0,0 +1,17 @@
+export function formatDate(time:Date|string,separator='-'){
+ time=new Date(time);
+ let year=time.getFullYear(),
+ month=time.getMonth()+ 1,
+ date=time.getDate();
+ return year+separator+(month<10?'0'+month:month)+separator+(date<10?'0'+date:date);
+}
+
+//时间格式化
+export function formatTime(time:Date,separator1='-',seperator2=':'){
+ time=new Date(time);
+ let date=formatDate(time,separator1),
+ hours=time.getHours(),
+ minutes=time.getMinutes(),
+ seconds=time.getSeconds();
+ return date+' '+(hours<10?'0'+hours:hours)+seperator2+(minutes<10?'0'+minutes:minutes)+seperator2+(seconds<10?'0'+seconds:seconds);
+}
\ No newline at end of file
diff --git a/src/views/AboutView.vue b/src/views/AboutView.vue
index 7ebbb15..a4805e1 100644
--- a/src/views/AboutView.vue
+++ b/src/views/AboutView.vue
@@ -5,9 +5,14 @@ import router from '@/router'
const ListData =ref([] as any[])
onMounted(() => {
- ListData.value=[{name:'工序项维护',url:'/process'},{name:'工艺要求维护',url:'/requirements'},
- {name:'工厂维护',url:'/factory'},{name:'其他要求项维护',url:'/other'},{name:'色胚质检项维护',url:'/quality'},{name:'色胚质检瑕疵维护',url:'/flaws'}
- ]
+ const rout=router.getRoutes()
+ rout.forEach((l:any)=>{
+ if(l.name==='home'){
+ l.children.forEach((m:any)=>{
+ ListData.value.push({name:m.name,url:m.path})
+ })
+ }
+ })
})
const gotoLink = (item: any) => {
diff --git a/src/views/lecher/l-quality.vue b/src/views/lecher/l-quality.vue
index c60c0ef..a668533 100644
--- a/src/views/lecher/l-quality.vue
+++ b/src/views/lecher/l-quality.vue
@@ -1,10 +1,11 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/views/whiteEmbryo/w-level.vue b/src/views/whiteEmbryo/w-level.vue
new file mode 100644
index 0000000..d3cc80d
--- /dev/null
+++ b/src/views/whiteEmbryo/w-level.vue
@@ -0,0 +1,129 @@
+
+
+
+
+
+
+
+
+
{{item.name}}
+
{{item.id}}
+
编辑 删除
+
+
+
+
+
+
+
+
新增
+
+
+
+
+ 取消
+ 确认
+
+
+
+
+
+
diff --git a/src/views/whiteEmbryo/w-suppliers.vue b/src/views/whiteEmbryo/w-suppliers.vue
new file mode 100644
index 0000000..f0642dc
--- /dev/null
+++ b/src/views/whiteEmbryo/w-suppliers.vue
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
{{item.name}}
+
{{item.id}}
+
{{item.id}}
+
编辑 删除
+
+
+
+
+
+
+
+
新增
+
+
+
+
+
+ 启用
+ 禁用
+
+
+
+
+
+ 取消
+ 确认
+
+
+
+
+
+
diff --git a/src/views/whiteEmbryo/w-warehousing.vue b/src/views/whiteEmbryo/w-warehousing.vue
new file mode 100644
index 0000000..4b7bda7
--- /dev/null
+++ b/src/views/whiteEmbryo/w-warehousing.vue
@@ -0,0 +1,157 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 提交
+
+
+
+
+
+
+
+