diff --git a/package-lock.json b/package-lock.json
index 7b0b22f..7b7fdfb 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -11,7 +11,8 @@
"ant-design-vue": "^4.2.3",
"axios": "^1.7.2",
"core-js": "^3.8.3",
- "vue": "^3.2.13"
+ "vue": "^3.2.13",
+ "vue-router": "^4.4.0"
},
"devDependencies": {
"@babel/core": "^7.12.16",
@@ -3248,6 +3249,11 @@
"integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
"dev": true
},
+ "node_modules/@vue/devtools-api": {
+ "version": "6.6.3",
+ "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.3.tgz",
+ "integrity": "sha512-0MiMsFma/HqA6g3KLKn+AGpL1kgKhFWszC9U29NfpWK5LE7bjeXxySWJrOJ77hBz+TBrBQ7o4QJqbPbqbs8rJw=="
+ },
"node_modules/@vue/reactivity": {
"version": "3.4.31",
"resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.4.31.tgz",
@@ -11853,6 +11859,20 @@
"node": ">=8"
}
},
+ "node_modules/vue-router": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.4.0.tgz",
+ "integrity": "sha512-HB+t2p611aIZraV2aPSRNXf0Z/oLZFrlygJm+sZbdJaW6lcFqEDQwnzUBXn+DApw+/QzDU/I9TeWx9izEjTmsA==",
+ "dependencies": {
+ "@vue/devtools-api": "^6.5.1"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/posva"
+ },
+ "peerDependencies": {
+ "vue": "^3.2.0"
+ }
+ },
"node_modules/vue-style-loader": {
"version": "4.1.3",
"resolved": "https://registry.npmmirror.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz",
@@ -15023,6 +15043,11 @@
}
}
},
+ "@vue/devtools-api": {
+ "version": "6.6.3",
+ "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.3.tgz",
+ "integrity": "sha512-0MiMsFma/HqA6g3KLKn+AGpL1kgKhFWszC9U29NfpWK5LE7bjeXxySWJrOJ77hBz+TBrBQ7o4QJqbPbqbs8rJw=="
+ },
"@vue/reactivity": {
"version": "3.4.31",
"resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.4.31.tgz",
@@ -21328,6 +21353,14 @@
}
}
},
+ "vue-router": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.4.0.tgz",
+ "integrity": "sha512-HB+t2p611aIZraV2aPSRNXf0Z/oLZFrlygJm+sZbdJaW6lcFqEDQwnzUBXn+DApw+/QzDU/I9TeWx9izEjTmsA==",
+ "requires": {
+ "@vue/devtools-api": "^6.5.1"
+ }
+ },
"vue-style-loader": {
"version": "4.1.3",
"resolved": "https://registry.npmmirror.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz",
diff --git a/package.json b/package.json
index c053358..b9890be 100644
--- a/package.json
+++ b/package.json
@@ -11,7 +11,8 @@
"ant-design-vue": "^4.2.3",
"axios": "^1.7.2",
"core-js": "^3.8.3",
- "vue": "^3.2.13"
+ "vue": "^3.2.13",
+ "vue-router": "^4.4.0"
},
"devDependencies": {
"@babel/core": "^7.12.16",
diff --git a/src/App.vue b/src/App.vue
index b41f56b..2ff5a81 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,6 +1,26 @@
-
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/TestFeeder.vue b/src/components/TestFeeder.vue
index 1db2ef7..7eca607 100644
--- a/src/components/TestFeeder.vue
+++ b/src/components/TestFeeder.vue
@@ -1,17 +1,47 @@
+
进出料
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 刷新
+ 保存
+
+
+
+
-
-
-
-
-
-
+
设备启动归零
+
归零
+
移动试管架到入口位置
+
移动试管架到出口位置
+
移动试管架到试管架扫码位置
+
移动试管架到试管架扫码并扫码
+
试管架是否在入料位置
+
试管架是否在出料位置
+
获取移动通道的光电状态(内)
+
获取移动通道的光电状态(外)
+
扫描夹紧机构夹紧
+
扫描夹紧机构复位
+
-
-
-
-
-
-
-
-
+
@@ -68,6 +91,31 @@ const moveTubeToScanPosAndScanParams = ref(['',0]);
const moveTubeToHeighJudgmentPosParams = ref(['',0]);
const moveTubeToPreProcessPosParams = ref(['',0]);
const moveTubeToExistJudgmentPosParams = ref(['',0]);
+const serviceParams = ref({});
+
+async function actionServiceParamsReload() {
+ serviceParams.value = {};
+ message.value = '';
+ let client = ApiClient.getClient();
+ try {
+ let res = await client.call('tmp-test/get-service-params');
+ message.value = res;
+ serviceParams.value = res.data;
+ } catch ( e ) {
+ message.value = e.message
+ }
+}
+
+async function actionServiceParamsSave() {
+ message.value = '';
+ let client = ApiClient.getClient();
+ try {
+ let res = await client.call('tmp-test/update-service-params', serviceParams.value);
+ message.value = res;
+ } catch ( e ) {
+ message.value = e.message
+ }
+}
// execute service method
async function executeServiceMethod( method, params=[]) {
@@ -89,34 +137,6 @@ function actionQuickExec( action, ... params ) {
executeServiceMethod(action, params);
}
-// move to zero when device setup
-function actionMoveToZeroWhenDeviceSetup() {
- executeServiceMethod('moveToZeroWhenDeviceSetup');
-}
-
-// move to zero
-function actionMoveToZero() {
- executeServiceMethod('moveToZero');
-}
-
-// moveTubeRackToEnterPos
-function actionMoveTubeRackToEnterPos() {
- executeServiceMethod('moveTubeRackToEnterPos');
-}
-
-// moveTubeRackToExitPos
-function actionMoveTubeRackToExitPos() {
- executeServiceMethod('moveTubeRackToExitPos');
-}
-
-// moveTubeRackToScanPos
-function actionMoveTubeRackToScanPos() {
- executeServiceMethod('moveTubeRackToScanPos');
-}
-
-function actionMoveTubeRackToScanPosAndScan() {
- executeServiceMethod('moveTubeRackToScanPosAndScan');
-}
function actionMoveTubeToScanPos() {
executeServiceMethod('moveTubeToScanPos',[
diff --git a/src/main.js b/src/main.js
index f075b25..b788e77 100644
--- a/src/main.js
+++ b/src/main.js
@@ -1,8 +1,18 @@
import { createApp } from 'vue'
+import { createWebHashHistory, createRouter } from 'vue-router'
import App from './App.vue'
import Antd from 'ant-design-vue';
+import TestFeeder from './components/TestFeeder.vue';
import './style/app.css'
+const router = createRouter({
+ history: createWebHashHistory(),
+ routes : [
+ {name:'feeder', path:'/feeder', component:TestFeeder}
+ ],
+})
+
let app = createApp(App)
+app.use(router);
app.use(Antd);
app.mount('#app')