Files
bj_power/bj_power_mes/frontend/src/pages/Torque.vue
T

62 lines
2.9 KiB
Vue
Raw Normal View History

2026-08-28 15:06:01 +08:00
<template>
<el-card>
<el-form inline>
<el-form-item label="SN"><el-input v-model="query.sn" clearable style="width:170px" /></el-form-item>
<el-form-item label="工单号"><el-input v-model="query.workOrderNo" clearable style="width:170px" /></el-form-item>
<el-form-item><el-button type="primary" @click="load">查询</el-button></el-form-item>
</el-form>
<!-- 录入拧紧 -->
<el-collapse style="margin-bottom:12px">
<el-collapse-item title="扫码录入拧紧数据" name="1">
<el-form inline>
<el-form-item label="SN"><el-input v-model="torque.sn" style="width:150px" /></el-form-item>
<el-form-item label="工单号"><el-input v-model="torque.workOrderNo" style="width:150px" /></el-form-item>
<el-form-item label="工位"><el-input v-model="torque.stationNo" style="width:80px" /></el-form-item>
<el-form-item label="扭矩"><el-input-number v-model="torque.strain" :min="0" /></el-form-item>
<el-form-item label="角度"><el-input-number v-model="torque.angle" :min="0" /></el-form-item>
<el-form-item label="操作人"><el-input v-model="torque.operator" style="width:100px" /></el-form-item>
<el-form-item><el-button type="primary" @click="report">上报</el-button></el-form-item>
</el-form>
</el-collapse-item>
</el-collapse>
<el-table :data="list" border size="small">
<el-table-column prop="sn" label="SN" min-width="130" />
<el-table-column prop="workOrderNo" label="工单号" min-width="130" />
<el-table-column prop="stationNo" label="工位" width="70" />
<el-table-column prop="torque" label="扭矩(N·m)" width="100" />
<el-table-column prop="angle" label="角度(°)" width="90" />
<el-table-column prop="result" label="结果" width="80">
<template #default="{row}"><el-tag :type="row.result==='OK'?'success':'danger'">{{ row.result }}</el-tag></template>
</el-table-column>
<el-table-column prop="operator" label="操作人" width="90" />
<el-table-column prop="time" label="时间" min-width="170" />
</el-table>
</el-card>
<PageHelp :data="helpTorque" />
2026-08-28 15:06:01 +08:00
</template>
<script setup>
import { reactive, ref, onMounted } from 'vue'
import { ElMessage } from 'element-plus'
import request from '../utils/request'
import PageHelp from '../components/PageHelp.vue'
import { helpTorque } from '../help'
2026-08-28 15:06:01 +08:00
const query = reactive({ sn: '', workOrderNo: '' })
const torque = reactive({ sn: '', workOrderNo: '', stationNo: '', strain: 20, angle: 90, operator: '' })
const list = ref([])
async function load() {
list.value = (await request.get('/torque/records', { params: query })) || []
}
async function report() {
if (!torque.sn) return ElMessage.warning('请输入SN')
await request.post('/torque/report', torque)
ElMessage.success('拧紧数据已上报')
Object.assign(torque, { sn: '', workOrderNo: '', strain: 20, angle: 90 })
load()
}
onMounted(load)
</script>