2 changed files with 104 additions and 55 deletions
-
62src/web/src/pages/main/contents/OperationTubeRackPreset.vue
-
29src/web/src/pages/main/contents/OperationTubeRacks.vue
@ -0,0 +1,62 @@ |
|||
<template> |
|||
<a-button class="ml-1" |
|||
style="background: transparent;border: solid 1px #becfe7;color: #7c92b1;" |
|||
@click="actionModalShow" |
|||
><PlayCircleOutlined /></a-button> |
|||
|
|||
<!-- 执行预设 --> |
|||
<a-modal v-if="enable" v-model:visible="enable" |
|||
title="执行预设" |
|||
ok-text="确认" |
|||
cancel-text="取消" |
|||
@ok="actionPresetSetupOk" |
|||
@cancel="actionCancel" |
|||
> |
|||
<a-form :label-col="{span:4}" :wrapper-col="{span:20}" label-align="left" class="py-5"> |
|||
<a-form-item label="预设"> |
|||
<a-select v-model:value="presetId"> |
|||
<a-select-option v-for="preset in presetList" |
|||
:key="preset.id" |
|||
:value="preset.id" |
|||
>{{ preset.name }}</a-select-option> |
|||
</a-select> |
|||
</a-form-item> |
|||
</a-form> |
|||
</a-modal> |
|||
</template> |
|||
<script setup> |
|||
import ApiClient from '@/utils/ApiClient'; |
|||
import { ref } from 'vue'; |
|||
/** @var {Object} */ |
|||
const props = defineProps({ |
|||
activeSlot: Object, |
|||
}); |
|||
/** @var {Boolean} */ |
|||
const enable = ref(false); |
|||
/** @var {Array} */ |
|||
const presetList = ref([]); |
|||
/** @var {Number} */ |
|||
const presetId = ref(null); |
|||
|
|||
// display modal |
|||
async function actionModalShow() { |
|||
let client = ApiClient.getClient(); |
|||
presetList.value = await client.digestionPresetList(); |
|||
enable.value = true; |
|||
} |
|||
|
|||
// 预设执行取消 |
|||
async function actionCancel() { |
|||
enable.value = false; |
|||
} |
|||
|
|||
// 预设执行确认 |
|||
async function actionPresetSetupOk() { |
|||
enable.value = false; |
|||
let client = ApiClient.getClient(); |
|||
await client.taskAppend('Digestion',{ |
|||
slotIndex : props.activeSlot.index * 1, |
|||
id : presetId.value * 1 |
|||
}); |
|||
} |
|||
</script> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue