华西海圻ELN前端工程
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123 lines
4.2 KiB

  1. <template>
  2. <div class="vortex-step">
  3. <el-form label-width="120px">
  4. <el-form-item label="混匀方式">
  5. <el-select v-model="formData.method" placeholder="请选择混匀方式">
  6. <el-option label="漩涡混匀" value="vortex"></el-option>
  7. <el-option label="摇床混匀" value="shaker"></el-option>
  8. <el-option label="磁力搅拌" value="magnetic"></el-option>
  9. <el-option label="机械搅拌" value="mechanical"></el-option>
  10. </el-select>
  11. </el-form-item>
  12. <el-form-item label="混匀时间">
  13. <el-input v-model="formData.time" placeholder="请输入时间">
  14. <el-select v-model="formData.timeUnit" slot="append" style="width: 80px;">
  15. <el-option label="s" value="s"></el-option>
  16. <el-option label="min" value="min"></el-option>
  17. <el-option label="h" value="h"></el-option>
  18. </el-select>
  19. </el-input>
  20. </el-form-item>
  21. <el-form-item label="转速设置">
  22. <el-input v-model="formData.speed" placeholder="请输入转速">
  23. <el-select v-model="formData.speedUnit" slot="append" style="width: 80px;">
  24. <el-option label="rpm" value="rpm"></el-option>
  25. <el-option label="Hz" value="Hz"></el-option>
  26. </el-select>
  27. </el-input>
  28. </el-form-item>
  29. <el-form-item label="体积范围">
  30. <el-input v-model="formData.volume" placeholder="请输入体积">
  31. <el-select v-model="formData.unit" slot="append" style="width: 80px;">
  32. <el-option label="ml" value="ml"></el-option>
  33. <el-option label="μl" value="μl"></el-option>
  34. <el-option label="l" value="l"></el-option>
  35. </el-select>
  36. </el-input>
  37. </el-form-item>
  38. <el-form-item label="温度控制">
  39. <el-input v-model="formData.temperature" placeholder="请输入温度">
  40. <el-select v-model="formData.temperatureUnit" slot="append" style="width: 60px;">
  41. <el-option label="℃" value="℃"></el-option>
  42. <el-option label="℉" value="℉"></el-option>
  43. </el-select>
  44. </el-input>
  45. </el-form-item>
  46. <el-form-item label="容器类型">
  47. <el-select v-model="formData.containerType" placeholder="请选择容器类型">
  48. <el-option label="离心管" value="centrifugeTube"></el-option>
  49. <el-option label="试管" value="testTube"></el-option>
  50. <el-option label="烧杯" value="beaker"></el-option>
  51. <el-option label="培养皿" value="petriDish"></el-option>
  52. </el-select>
  53. </el-form-item>
  54. <el-form-item label="混匀模式">
  55. <el-radio-group v-model="formData.mode">
  56. <el-radio label="continuous">连续混匀</el-radio>
  57. <el-radio label="interval">间歇混匀</el-radio>
  58. </el-radio-group>
  59. </el-form-item>
  60. <el-form-item v-if="formData.mode === 'interval'" label="间歇时间">
  61. <el-input v-model="formData.intervalTime" placeholder="请输入间歇时间">
  62. <el-select v-model="formData.intervalTimeUnit" slot="append" style="width: 80px;">
  63. <el-option label="s" value="s"></el-option>
  64. <el-option label="min" value="min"></el-option>
  65. </el-select>
  66. </el-input>
  67. </el-form-item>
  68. <el-form-item label="备注">
  69. <el-input
  70. v-model="formData.notes"
  71. type="textarea"
  72. :rows="3"
  73. placeholder="请输入备注信息"
  74. ></el-input>
  75. </el-form-item>
  76. </el-form>
  77. </div>
  78. </template>
  79. <script>
  80. export default {
  81. name: 'VortexStep',
  82. props: ['stepData'],
  83. data() {
  84. return {
  85. formData: {
  86. method: '',
  87. time: '',
  88. timeUnit: 's',
  89. speed: '',
  90. speedUnit: 'rpm',
  91. volume: '',
  92. unit: 'ml',
  93. temperature: '',
  94. temperatureUnit: '℃',
  95. containerType: '',
  96. mode: 'continuous',
  97. intervalTime: '',
  98. intervalTimeUnit: 's',
  99. notes: ''
  100. }
  101. }
  102. },
  103. created() {
  104. this.formData = { ...this.formData, ...this.stepData }
  105. },
  106. watch: {
  107. formData: {
  108. handler(newVal) {
  109. this.$emit('update', newVal)
  110. },
  111. deep: true
  112. }
  113. }
  114. }
  115. </script>