sige 1 year ago
parent
commit
c4670776c4
  1. 75
      src/web/src/pages/main/contents/TaskStepManagement.vue
  2. 4
      src/web/src/pages/main/contents/UserManagement.vue
  3. 2
      src/web/src/pages/main/contents/notification/TaskSampleAddTubeRackPutIn.vue
  4. 5
      src/web/src/pages/main/contents/notification/TaskSampleAddTubeRackStatusConfirm.vue
  5. 5
      src/web/src/pages/main/contents/notification/TaskSampleTakeOutTubeRack.vue
  6. 5
      src/web/src/pages/main/contents/notification/TaskStartResetErrorTubeRackPutIn.vue
  7. 5
      src/web/src/pages/main/contents/notification/TaskStartResetErrorTubeRackTakeOut.vue

75
src/web/src/pages/main/contents/TaskStepManagement.vue

@ -18,7 +18,10 @@
</div>
<!-- edit modal -->
<a-modal v-if="edit.enable" v-model:open="edit.enable" title="预设编辑" @ok="actionEditOk" ok-text="确定" cancel-text="取消">
<a-modal v-if="edit.enable" v-model:open="edit.enable" title="预设编辑" @ok="actionEditOk" ok-text="确定" cancel-text="取消"
:closable="false"
:mask-closable="false"
>
<p><a-input v-model:value="edit.data.name" placeholder="名称" /></p>
<a-row class="py-3">
<a-col :span="12">执行步骤</a-col>
@ -32,20 +35,27 @@
步骤 : {{ index + 1 }} - {{ stepNameGet(step) }}
</template>
<template #extra><delete-outlined @click="actionStepDelete($event, index)" /></template>
<a-form :label-col="{span:4}" :wrapper-col="{span:20}">
<a-form label-align="left" :label-col="{span:4}" :wrapper-col="{span:20}">
<a-form-item label="操作">
<a-radio-group v-model:value="step.action" button-style="solid">
<a-radio-button value="Heating">加热</a-radio-button>
<a-radio-button value="Pump">加酸</a-radio-button>
</a-radio-group>
</a-form-item>
<a-form-item label="目标温度" v-if="'Heating' === step.action">
<a-input-number v-model:value="step.temperature" addon-after="" />
<a-select v-model:value="step.action">
<a-select-option value="HeatingStart">加热</a-select-option>
<a-select-option value="HeatingStop">加热停止</a-select-option>
<a-select-option value="Pump">加液</a-select-option>
<a-select-option value="Shaking">摇匀</a-select-option>
<a-select-option value="Delay">延时等待</a-select-option>
<a-select-option value="TempRiseWait">升温等待</a-select-option>
<a-select-option value="TempDownWait">降温等待</a-select-option>
<a-select-option value="TempKeepDelay">恒温保持</a-select-option>
<a-select-option value="MoveToHeatingPlate">转移至加热区</a-select-option>
<a-select-option value="MoveToLiquidPlate">转移至加液区</a-select-option>
<a-select-option value="Checking">检查</a-select-option>
<a-select-option value="TakeOut">取出</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="持续时间" v-if="'Heating' === step.action">
<a-input-number v-model:value="step.duration" addon-after="分钟" />
<a-form-item label="目标温度" v-if="'HeatingStart' === step.action">
<a-input-number v-model:value="step.temperature" addon-after="" class="w-full"/>
</a-form-item>
<a-form-item label="酸液类型" v-if="'Pump' === step.action">
<a-form-item label="液类型" v-if="'Pump' === step.action">
<a-select v-model:value="step.type">
<a-select-option value="hydrochloric">盐酸</a-select-option>
<a-select-option value="nitric">硝酸</a-select-option>
@ -57,11 +67,23 @@
<a-select-option value="tartaric">酒石酸</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="加酸量" v-if="'Pump' === step.action">
<a-input-number v-model:value="step.amount" />
<a-form-item label="加液量" v-if="'Pump' === step.action">
<a-input-number v-model:value="step.amount" addon-after="ml" class="w-full"/>
</a-form-item>
<a-form-item label="次数" v-if="'Shaking' === step.action">
<a-input-number v-model:value="step.count" addon-after="" class="w-full"/>
</a-form-item>
<a-form-item label="持续时间" v-if="'Delay' === step.action">
<a-input-number v-model:value="step.duration" addon-after="分钟" class="w-full"/>
</a-form-item>
<a-form-item label="持续时间" v-if="'TempKeepDelay' === step.action">
<a-input-number v-model:value="step.duration" addon-after="分钟" class="w-full"/>
</a-form-item>
<a-form-item label="目标温度" v-if="'TempRiseWait' === step.action">
<a-input-number v-model:value="step.temperature" addon-after="" class="w-full"/>
</a-form-item>
<a-form-item label="摇匀次数" v-if="'Pump' === step.action">
<a-input-number v-model:value="step.shake" />
<a-form-item label="目标温度" v-if="'TempDownWait' === step.action">
<a-input-number v-model:value="step.temperature" addon-after="" class="w-full"/>
</a-form-item>
</a-form>
</a-collapse-panel>
@ -94,10 +116,19 @@ async function mounted() {
// step name get
function stepNameGet(step) {
let acidMap = {hydrochloric:'盐酸',nitric:'硝酸',sulfuric:'硫酸',hydrofluoric:'氢氟酸',perchloric:'高氯酸',hydrobromic:'液溴',phosphoric:'磷酸',tartaric:'酒石酸'};
if ( 'Heating' === step.action ) {
return `加热 ${step.temperature}${step.duration}分钟`;
} else if ( 'Pump' === step.action ) {
return `加酸 ${acidMap[step.type]} ${step.amount}ml 摇匀${step.shake}`;
switch ( step.action ) {
case 'HeatingStart': return `加热 ${step.temperature}`;
case 'HeatingStop': return `停止加热`;
case 'TempRiseWait' : return `等待温度上升至 ${step.temperature}`;
case 'TempDownWait' : return `等待温度下降至 ${step.temperature}`;
case 'TempKeepDelay' : return `恒温保持 ${step.duration}分钟`;
case 'Pump' : return `加液 ${acidMap[step.type]} ${step.amount}ml`;
case 'Shaking' : return `摇匀 ${step.count}`;
case 'Delay' : return `延时等待 ${step.duration}分钟`;
case 'MoveToHeatingPlate' : return `转移至加热区`;
case 'MoveToLiquidPlate' : return `转移至加液区`;
case 'TakeOut' : return `取出`;
case 'Checking' : return `检查`;
}
}
@ -124,12 +155,12 @@ function actionCreate() {
edit.value.id = null;
edit.value.data = {};
edit.value.data.name = '未命名预设';
edit.value.data.steps = [{action:'Heating',temperature:270,duration:15,type:'sulfuric',amount:1000,shake:5}];
edit.value.data.steps = [{}];
}
//
function actionStepAdd() {
edit.value.data.steps.push({action:'Heating',temperature:270,duration:15,type:'sulfuric',amount:1000,shake:5});
edit.value.data.steps.push({});
}
//

4
src/web/src/pages/main/contents/UserManagement.vue

@ -28,6 +28,8 @@
title="用户编辑"
ok-text="确定"
cancel-text="取消"
:closable="false"
:mask-closable="false"
@ok="actionEditSave"
@cancel="actionEditCancel"
>
@ -49,6 +51,8 @@
title="修改密码"
ok-text="确定"
cancel-text="取消"
:closable="false"
:mask-closable="false"
@ok="actionPasswordEditSave"
@cancel="actionPasswordEditCancel"
>

2
src/web/src/pages/main/contents/notification/TaskSampleAddTubeRackPutIn.vue

@ -4,6 +4,8 @@
title="添加样本"
ok-text="确认"
cancel-text="取消"
:closable="false"
:mask-closable="false"
@ok="actionOk"
@cancel="actionCancel"
>

5
src/web/src/pages/main/contents/notification/TaskSampleAddTubeRackStatusConfirm.vue

@ -1,5 +1,8 @@
<template>
<a-modal v-if="enable" v-model:open="enable" title="标记空位">
<a-modal v-if="enable" v-model:open="enable" title="标记空位"
:closable="false"
:mask-closable="false"
>
<div class="relative">
<div>
<img :src="imageShotData" class="w-full rounded-xl" />

5
src/web/src/pages/main/contents/notification/TaskSampleTakeOutTubeRack.vue

@ -1,6 +1,9 @@
<template>
<!-- 取出样品弹框 -->
<a-modal v-if="enable" v-model:open="enable" title="取出样本">
<a-modal v-if="enable" v-model:open="enable" title="取出样本"
:closable="false"
:mask-closable="false"
>
<p>取出样本后点击确认完成操作</p>
<template #footer>
<a-button type="primary" @click="actionOk">确定</a-button>

5
src/web/src/pages/main/contents/notification/TaskStartResetErrorTubeRackPutIn.vue

@ -1,5 +1,8 @@
<template>
<a-modal v-if="enable" v-model:open="enable" title="设备准备中...">
<a-modal v-if="enable" v-model:open="enable" title="设备准备中..."
:closable="false"
:mask-closable="false"
>
<p>请放入空试管架用于异常处理 放置完成后请点击 确定 按钮以继续</p>
<template #footer>
<a-button type="primary" @click="actionOk">确定</a-button>

5
src/web/src/pages/main/contents/notification/TaskStartResetErrorTubeRackTakeOut.vue

@ -1,5 +1,8 @@
<template>
<a-modal v-if="enable" v-model:open="enable" title="设备准备中...">
<a-modal v-if="enable" v-model:open="enable" title="设备准备中..."
:closable="false"
:mask-closable="false"
>
<p>请取出试管架 取出后后请点击 确定 按钮以继续</p>
<template #footer>
<a-button type="primary" @click="actionOk">确定</a-button>

Loading…
Cancel
Save