dialog-lot.vue 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <template>
  2. <dialog-base ref="baseDialog" title="添加新批次">
  3. <view class="list-title"><text class="label">批次号:{{form['batchNumber']}}</text></view>
  4. <view class="list-container">
  5. <view class="list-container-item uni-row">
  6. <text class="label">产品描述</text>
  7. <text class="label value">{{form['caseNumber']}}</text>
  8. </view>
  9. <view class="list-container-item uni-row">
  10. <text class="label">关联箱号</text>
  11. <text class="label value">{{form['caseNumber']}}</text>
  12. </view>
  13. <view class="list-container-item uni-row">
  14. <text class="label">当前工序</text>
  15. <text class="label value">{{form['totalWorkingHours']}}</text>
  16. </view>
  17. <view class="list-container-item uni-row" style="border-bottom: 1px solid #999999;">
  18. <text class="label">投产数量</text>
  19. <text class="label value">{{form['qualifiedQuantity']}}</text>
  20. </view>
  21. </view>
  22. <view class="list-title"><text class="label">请选择设备:</text></view>
  23. <!-- <scroll-view class="scroll-container" scroll-y> -->
  24. <view class="equipment-container uni-row ">
  25. <view v-for="(item, index) in equiments" :class="{'item':true,'selected': selectedButton === item}" :key="index" @click="selectButton(item)"><text class="label" >{{item}}</text></view>
  26. </view>
  27. <!-- </scroll-view> -->
  28. <view class="add-btn-container uni-row">
  29. <button type="primary" class="btn" style="flex: 1;">添加</button>
  30. </view>
  31. </dialog-base>
  32. </template>
  33. <script setup>
  34. import {
  35. ref,
  36. getCurrentInstance
  37. } from 'vue'
  38. const baseDialog = ref(null)
  39. const selectedButton = ref(null)
  40. const form = ref({
  41. batchNumber: "DC23727410070",
  42. caseNumber: "X12522、X522、X15522、J5211、J5112",
  43. totalWorkingHours: 135.5,
  44. qualifiedQuantity: 600,
  45. invest: 1000,
  46. previousProcess: "NC车1",
  47. currentProcess: "热处理",
  48. NextProcess: "清洗",
  49. status: 0
  50. })
  51. const equiments = ref(['009-21','009-22','009-23','009-24','009-25','009-26','009-27','009-28','009-29'])
  52. const selectButton = (data) => {
  53. selectedButton.value = data;
  54. }
  55. const open = (data) => {
  56. // console.log(dialog.value)
  57. baseDialog.value.open()
  58. }
  59. defineExpose({
  60. open
  61. })
  62. </script>
  63. <style lang="scss">
  64. .dialog-body {
  65. .list-title {
  66. margin: 40rpx 0 20rpx 0;
  67. .label {
  68. font-size: 32rpx;
  69. font-weight: bold;
  70. }
  71. }
  72. .list-container {
  73. width: 100%;
  74. display: flex;
  75. align-items: flex-start;
  76. padding: 0 4rpx;
  77. .list-container-item {
  78. width: 100%;
  79. border: 1px solid #999999;
  80. border-bottom: none;
  81. padding: 12rpx 8rpx;
  82. .label {
  83. font-size: 28rpx;
  84. color: gray;
  85. width: 144rpx;
  86. &.value {
  87. flex: 1;
  88. }
  89. }
  90. }
  91. }
  92. .equipment-container {
  93. width: 100%;
  94. height: 120rpx;
  95. flex-wrap: wrap;
  96. justify-content: flex-start;
  97. overflow: auto;
  98. .item {
  99. flex: 0 0 22%;
  100. border: 1rpx solid #aaaaaa;
  101. border-radius: 4rpx;
  102. margin:8rpx 1.2%;
  103. padding: 12rpx 0;
  104. justify-content: center;
  105. align-items: center;
  106. .label {
  107. font-size: 32rpx;
  108. }
  109. }
  110. .selected {
  111. border: 1px solid #1684fc;
  112. /* 其他选中样式 */
  113. }
  114. }
  115. .add-btn-container {
  116. margin-top: 32rpx;
  117. }
  118. }
  119. </style>