liudl
2025-02-16 ddd9612ed7cefe12c8ea33ced0711a0b9a3feb99
Web/src/views/device/deviceMonitor/component/setting.vue
@@ -10,7 +10,7 @@
         <el-card class="box-card" shadow="hover">
            <template #header>
               <div class="card-header">
                  <div>
                     <span>工位号:</span>
                     <el-select v-model="stationValue" placeholder="请选择" filterable value-key="stationNum"
@@ -19,16 +19,30 @@
                           :value="item">
                        </el-option>
                     </el-select>
                     <el-button style="margin-left: 10px;">自动</el-button>
                     <!-- <el-button style="margin-left: 10px;">自动</el-button> -->
                  </div>
                  <div>
                     <div :class="['lineStatus', stationValue.status ? 'device-status-0' : 'device-status-1']"></div>
                     <div :class="['lineStatus', stationValue.status ? 'device-status-0' : 'device-status-1']">
                     </div>
                  </div>
               </div>
            </template>
            <div>
               <el-form label-position="left" label-width="80px">
                  <el-row :gutter="25">
                     <el-col :span="12">
                        <el-form-item label="任务号">
                           <el-input v-model="stationValue.taskNo"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="任务类型">
                           <el-select clearable="" v-model="stationValue.taskType" placeholder="请选择状态">
                              <el-option v-for="(item, index) in dl('TaskTypeEnum')" :key="index"
                                 :value="Number(item.value)" :label="`${item.name} [${item.value}] `" />
                           </el-select>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="起始工位">
                           <el-input v-model="stationValue.startLocatNo"></el-input>
@@ -49,51 +63,61 @@
                           <el-input v-model="stationValue.wcs"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="取货排">
                           <el-input ></el-input>
                           <el-input v-model="stationValue.pickRow"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="放货排">
                           <el-input ></el-input>
                           <el-input v-model="stationValue.releaseRow"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="取货列">
                           <el-input ></el-input>
                           <el-input v-model="stationValue.pickCol"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="放货列">
                           <el-input ></el-input>
                           <el-input v-model="stationValue.releaseCol"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="取货层">
                           <el-input ></el-input>
                           <el-input v-model="stationValue.pickStorey"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="放货层">
                           <el-input ></el-input>
                           <el-input v-model="stationValue.releaseStorey"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="托盘码">
                           <el-input v-model="stationValue.palletNo"></el-input>
                        </el-form-item>
                     </el-col>
                     <el-col :span="12">
                        <el-form-item label="状态">
                           <el-input :value="stationValue.status ? '在线' : '离线'" readonly></el-input>
                        </el-form-item>
                     </el-col>
                  </el-row>
               </el-form>
               <div style="text-align: center;margin: 10px;">
                  <el-button class="button" size="large">写入数据</el-button>
                  <el-button class="button" size="large" @click="write(stationValue)">写入数据</el-button>
               </div>
            </div>
            <template #footer>
            <!-- <template #footer>
               <div class="card-footer">
                  <el-button class="button" size="large">正&nbsp;&nbsp;&nbsp;&nbsp;转</el-button>
                  <el-button class="button" size="large">反&nbsp;&nbsp;&nbsp;&nbsp;转</el-button>
                  <el-button class="button" size="large">移栽上升</el-button>
                  <el-button class="button" size="large">移栽下降</el-button>
               </div>
            </template>
            </template> -->
         </el-card>
         <!-- <template #footer>
@@ -107,6 +131,9 @@
<script lang="ts" setup>
import { ref, defineModel } from 'vue';
import { writeValue } from '/@/api/wcs/wcsDevice';
import { ElMessageBox, ElMessage } from 'element-plus';
import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils';
const listStationsData = defineModel<any>("listStationsData")
const stationValue = defineModel<any>("stationValue")
@@ -122,7 +149,10 @@
//    emit('update:listStationsData', listStationsData.value);
//    emit('update:stationValue', stationValue);
// };
const write = async (row: any) => {
   await writeValue(row);
   ElMessage.success('写入成功!');
}
const isShowDialog = ref(false);
const openDialog = async (row: any) => {
@@ -181,18 +211,18 @@
}
.lineStatus {
    right: 0;
    height: 20px;
    width: 20px;
    border-radius: 50%;
    background-color: #67C23A;
   right: 0;
   height: 20px;
   width: 20px;
   border-radius: 50%;
   background-color: #67C23A;
}
.device-status-0 {
    background-color: #67C23A;
   background-color: #67C23A;
}
.device-status-1 {
    background-color: red;
   background-color: red;
}
</style>