PRODUCING到PRODUCT状态转化bug修复,计划更改,辊缝追踪加入动态追踪,修复退火炉张力读写问题
This commit is contained in:
@@ -48,10 +48,10 @@ export function addPdo(data) {
|
|||||||
* @param {number} operid 工序ID
|
* @param {number} operid 工序ID
|
||||||
* @returns {Promise}
|
* @returns {Promise}
|
||||||
*/
|
*/
|
||||||
export function getPdo(excoilid, operid) {
|
export function getPdo(excoilid) {
|
||||||
return l2Request({
|
return l2Request({
|
||||||
method: 'get',
|
method: 'get',
|
||||||
url: `/l2-api/api/pdo/get/${excoilid}/${operid}`
|
url: `/api/pdo/get/${excoilid}`
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ export function getPdo(excoilid, operid) {
|
|||||||
export function deletePdo(excoilid, planId) {
|
export function deletePdo(excoilid, planId) {
|
||||||
return l2Request({
|
return l2Request({
|
||||||
method: 'delete',
|
method: 'delete',
|
||||||
url: `/l2-api/api/pdo/delete/${excoilid}/${planId}`
|
url: `/api/pdo/delete/${excoilid}/${planId}`
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,15 +37,17 @@
|
|||||||
|
|
||||||
|
|
||||||
<!-- 请选择报警模块 -->
|
<!-- 请选择报警模块 -->
|
||||||
<el-option label="TRACK Alarm" value="TRACK"></el-option>
|
<el-option label="TRACK" value="TRACK"></el-option>
|
||||||
<!-- 焊机报警 -->
|
<!-- 焊机报警 -->
|
||||||
<el-option label="WELDER Alarm" value="WELDER"></el-option>
|
<el-option label="WELDER" value="WELDER"></el-option>
|
||||||
<!-- 物料保存报警 -->
|
<!-- 物料保存报警 -->
|
||||||
<el-option label="MATMAP-SAVE Alarm" value="MATMAP-SAVE"></el-option>
|
<el-option label="MATMAP-SAVE" value="MATMAP-SAVE"></el-option>
|
||||||
<!-- 物料映射报警 -->
|
<!-- 物料映射报警 -->
|
||||||
<el-option label="MATMAP-TRACK Alarm" value="MATMAP-TRACK"></el-option>
|
<el-option label="MATMAP-TRACK" value="MATMAP-TRACK"></el-option>
|
||||||
<!-- 位置时间报警 -->
|
<!-- 位置时间报警 -->
|
||||||
<el-option label="POSITIME Alarm" value="POSITIME"></el-option>
|
<el-option label="POSITIME" value="POSITIME"></el-option>
|
||||||
|
|
||||||
|
<el-option label="PLAN" value="PLAN"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,8 @@ export default {
|
|||||||
props: {
|
props: {
|
||||||
enCoilID: {
|
enCoilID: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true,
|
required: false,
|
||||||
|
default: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
|
|||||||
@@ -50,22 +50,16 @@
|
|||||||
|
|
||||||
<!-- 卡片网格布局 Card Grid Layout -->
|
<!-- 卡片网格布局 Card Grid Layout -->
|
||||||
<div v-loading="tableLoading">
|
<div v-loading="tableLoading">
|
||||||
<el-table :data="tableData" style="width: 100%" border stripe @row-click="handleRowClick" highlight-current-row height="300px">
|
<el-table :data="tableData" style="width: 100%" border stripe @row-click="handleRowClick" highlight-current-row >
|
||||||
<el-table-column prop="exitMatId" label="Exit Coil ID"></el-table-column>
|
<el-table-column prop="exitMatId" label="Exit Coil ID"></el-table-column>
|
||||||
<!-- 成品卷号 -->
|
<!-- 成品卷号 -->
|
||||||
<el-table-column prop="entryMatId" label="Entry Coil ID"></el-table-column>
|
<el-table-column prop="entryMatId" label="Entry Coil ID"></el-table-column>
|
||||||
<!-- 来料卷号 -->
|
|
||||||
<el-table-column prop="planNo" label="Plan No."></el-table-column>
|
|
||||||
<!-- 计划单号 -->
|
<!-- 计划单号 -->
|
||||||
|
|
||||||
<el-table-column prop="status" label="Status"></el-table-column>
|
<el-table-column prop="status" label="Status"></el-table-column>
|
||||||
<!-- 状态 -->
|
<!-- 状态 -->
|
||||||
<el-table-column prop="steelGrade" label="Steel Grade"></el-table-column>
|
<el-table-column prop="steelGrade" label="Steel Grade"></el-table-column>
|
||||||
<!-- 钢种 -->
|
|
||||||
<el-table-column prop="prodCode" label="Product Type"></el-table-column>
|
|
||||||
<!-- 产品类型 -->
|
<!-- 产品类型 -->
|
||||||
<el-table-column prop="customer" label="Customer"></el-table-column>
|
|
||||||
<!-- 客户 -->
|
|
||||||
|
|
||||||
<el-table-column prop="entryThick" label="Entry Thickness"></el-table-column>
|
<el-table-column prop="entryThick" label="Entry Thickness"></el-table-column>
|
||||||
<!-- 入口厚度 -->
|
<!-- 入口厚度 -->
|
||||||
@@ -105,6 +99,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<Pagination
|
||||||
|
v-show="total > 0"
|
||||||
|
:total="total"
|
||||||
|
:page.sync="queryForm.pageNum"
|
||||||
|
:limit.sync="queryForm.pageSize"
|
||||||
|
@pagination="getPdoList"
|
||||||
|
/>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<pdo-summary :table-data="tableData" />
|
<pdo-summary :table-data="tableData" />
|
||||||
</div>
|
</div>
|
||||||
@@ -178,7 +180,8 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
activeTab: 'basicInfo',
|
activeTab: 'basicInfo',
|
||||||
queryForm: { coilid: '', startDate: '', endDate: '' },
|
queryForm: { coilid: '', startDate: '', endDate: '', pageNum: 1, pageSize: 30 },
|
||||||
|
total: 0,
|
||||||
printOpen: false,
|
printOpen: false,
|
||||||
certificateVisible: false, // 质保书对话框显示状态 Quality certificate dialog visibility state
|
certificateVisible: false, // 质保书对话框显示状态 Quality certificate dialog visibility state
|
||||||
tableData: [],
|
tableData: [],
|
||||||
@@ -210,7 +213,9 @@ export default {
|
|||||||
getPdoList() {
|
getPdoList() {
|
||||||
this.tableLoading = true
|
this.tableLoading = true
|
||||||
getPdoList(this.queryForm).then(res => {
|
getPdoList(this.queryForm).then(res => {
|
||||||
this.tableData = res.data.map(item => ({ ...item, deleteLoading: false }))
|
const list = Array.isArray(res?.rows) ? res.rows : []
|
||||||
|
this.tableData = list.map(item => ({ ...item, deleteLoading: false }))
|
||||||
|
this.total = typeof res?.total === 'number' ? res.total : 0
|
||||||
}).catch(err => {
|
}).catch(err => {
|
||||||
console.error(err)
|
console.error(err)
|
||||||
this.$message.error('Failed to get data') // 获取数据失败
|
this.$message.error('Failed to get data') // 获取数据失败
|
||||||
@@ -222,11 +227,14 @@ export default {
|
|||||||
// 查询(保持不变) Query (unchanged)
|
// 查询(保持不变) Query (unchanged)
|
||||||
handleQuery() {
|
handleQuery() {
|
||||||
this.btnLoading = true;
|
this.btnLoading = true;
|
||||||
|
this.queryForm.pageNum = 1;
|
||||||
this.getPdoList()
|
this.getPdoList()
|
||||||
},
|
},
|
||||||
// 重置(保持不变) Reset (unchanged)
|
// 重置(保持不变) Reset (unchanged)
|
||||||
handleReset() {
|
handleReset() {
|
||||||
this.$refs.queryForm.resetFields();
|
this.$refs.queryForm.resetFields();
|
||||||
|
this.queryForm.pageNum = 1;
|
||||||
|
this.queryForm.pageSize = 30;
|
||||||
this.getPdoList()
|
this.getPdoList()
|
||||||
},
|
},
|
||||||
// 行点击(保持不变) Row click (unchanged)
|
// 行点击(保持不变) Row click (unchanged)
|
||||||
|
|||||||
@@ -307,7 +307,7 @@ export default {
|
|||||||
tensionCel: [], // Available in rect.vue / 在 rect.vue 中可用
|
tensionCel: [], // Available in rect.vue / 在 rect.vue 中可用
|
||||||
celLengthMax: [], // Available in rect.vue / 在 rect.vue 中可用
|
celLengthMax: [], // Available in rect.vue / 在 rect.vue 中可用
|
||||||
celLengthMin: [], // Available in rect.vue / 在 rect.vue 中可用
|
celLengthMin: [], // Available in rect.vue / 在 rect.vue 中可用
|
||||||
bR4or5toBR6Tension: [], // Available in rect.vue / 在 rect.vue 中可用
|
tensionBr45Br6: [], // Available in rect.vue / 在 rect.vue 中可用
|
||||||
// Additional entry fields / 其他入口段字段
|
// Additional entry fields / 其他入口段字段
|
||||||
tensionBr1Br2: [], // Displayed / 已显示
|
tensionBr1Br2: [], // Displayed / 已显示
|
||||||
tensionBr2Br3: [] // Displayed / 已显示
|
tensionBr2Br3: [] // Displayed / 已显示
|
||||||
@@ -832,7 +832,7 @@ export default {
|
|||||||
tensionPorBr1: [], tensionPorBr2: [], stripSpeed: [],
|
tensionPorBr1: [], tensionPorBr2: [], stripSpeed: [],
|
||||||
weldStatus: [],
|
weldStatus: [],
|
||||||
celLength: [], celCapacity: [], tensionCel: [],
|
celLength: [], celCapacity: [], tensionCel: [],
|
||||||
celLengthMax: [], celLengthMin: [], bR4or5toBR6Tension: [],
|
celLengthMax: [], celLengthMin: [], tensionBr45Br6: [],
|
||||||
tensionBr1Br2: [], tensionBr2Br3: [],
|
tensionBr1Br2: [], tensionBr2Br3: [],
|
||||||
cleaningVoltage: [], cleaningCurrent: [], alkaliConcentration: [], alkaliTemperature: []
|
cleaningVoltage: [], cleaningCurrent: [], alkaliConcentration: [], alkaliTemperature: []
|
||||||
},
|
},
|
||||||
@@ -896,7 +896,7 @@ export default {
|
|||||||
tensionCel: data.appMeasureEntryMessage.tensionCel,
|
tensionCel: data.appMeasureEntryMessage.tensionCel,
|
||||||
celLengthMax: data.appMeasureEntryMessage.celLengthMax,
|
celLengthMax: data.appMeasureEntryMessage.celLengthMax,
|
||||||
celLengthMin: data.appMeasureEntryMessage.celLengthMin,
|
celLengthMin: data.appMeasureEntryMessage.celLengthMin,
|
||||||
bR4or5toBR6Tension: data.appMeasureEntryMessage.bR4or5toBR6Tension,
|
tensionBr45Br6: data.appMeasureEntryMessage.tensionBr45Br6,
|
||||||
// Additional entry fields / 其他入口段字段
|
// Additional entry fields / 其他入口段字段
|
||||||
tensionBr1Br2: data.appMeasureEntryMessage.tensionBr1Br2,
|
tensionBr1Br2: data.appMeasureEntryMessage.tensionBr1Br2,
|
||||||
tensionBr2Br3: data.appMeasureEntryMessage.tensionBr2Br3,
|
tensionBr2Br3: data.appMeasureEntryMessage.tensionBr2Br3,
|
||||||
|
|||||||
@@ -526,11 +526,11 @@ const DEVICE_META = {
|
|||||||
POR1: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['tensionPorBr1', 'stripSpeed'] },
|
POR1: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['tensionPorBr1', 'stripSpeed'] },
|
||||||
POR2: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['stripSpeed'] },
|
POR2: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['stripSpeed'] },
|
||||||
WELDER: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['weldStatus'] },
|
WELDER: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['weldStatus'] },
|
||||||
ENL1: { sectionType: 'PROCESS', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'bR4or5toBR6Tension'] },
|
ENL1: { sectionType: 'PROCESS', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'tensionBr45Br6'] },
|
||||||
ENL2: { sectionType: 'PROCESS', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'bR4or5toBR6Tension'] },
|
ENL2: { sectionType: 'PROCESS', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'tensionBr45Br6'] },
|
||||||
ENL3: { sectionType: 'PROCESS', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'bR4or5toBR6Tension'] },
|
ENL3: { sectionType: 'PROCESS', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'tensionBr45Br6'] },
|
||||||
// UI 合并显示用:入口活套(逻辑合并 ENL1/2/3)
|
// UI 合并显示用:入口活套(逻辑合并 ENL1/2/3)
|
||||||
ENL: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'bR4or5toBR6Tension'] },
|
ENL: { sectionType: 'ENTRY', sourceType: 'ENTRY', paramFields: ['celLength', 'celCapacity', 'tensionCel', 'celLengthMax', 'celLengthMin', 'tensionBr45Br6'] },
|
||||||
|
|
||||||
CLEAN: { sectionType: 'PROCESS', sourceType: 'FURNACE', paramFields: ['cleaningVoltage', 'cleaningCurrent'] },
|
CLEAN: { sectionType: 'PROCESS', sourceType: 'FURNACE', paramFields: ['cleaningVoltage', 'cleaningCurrent'] },
|
||||||
FUR1: { sectionType: 'PROCESS', sourceType: 'FURNACE', paramFields: ['phfExitStripTemp'] },
|
FUR1: { sectionType: 'PROCESS', sourceType: 'FURNACE', paramFields: ['phfExitStripTemp'] },
|
||||||
@@ -571,7 +571,7 @@ const PARAM_LABELS = {
|
|||||||
tensionCel: 'Entry Loop Tension', // 入口活套张力
|
tensionCel: 'Entry Loop Tension', // 入口活套张力
|
||||||
celLengthMax: 'Entry Loop Max Length', // 入口活套最大长度
|
celLengthMax: 'Entry Loop Max Length', // 入口活套最大长度
|
||||||
celLengthMin: 'Entry Loop Min Length', // 入口活套最小长度
|
celLengthMin: 'Entry Loop Min Length', // 入口活套最小长度
|
||||||
bR4or5toBR6Tension: 'Annealing Furnace Tension', // 退火炉张力
|
tensionBr45Br6: 'Annealing Furnace Tension', // 退火炉张力
|
||||||
tensionBr1Br2: 'Entry Loop Tension', // 入口活套张力
|
tensionBr1Br2: 'Entry Loop Tension', // 入口活套张力
|
||||||
tensionBr2Br3: 'Cleaning Section Tension', // 清洗段张力
|
tensionBr2Br3: 'Cleaning Section Tension', // 清洗段张力
|
||||||
tensionBr6toBr7Br8: 'Post-coating Cooling Tension', // 镀后冷却张力
|
tensionBr6toBr7Br8: 'Post-coating Cooling Tension', // 镀后冷却张力
|
||||||
@@ -859,7 +859,7 @@ export default {
|
|||||||
},
|
},
|
||||||
furnaceSectionMetrics() {
|
furnaceSectionMetrics() {
|
||||||
return this.buildSectionMetrics('FURNACE', [
|
return this.buildSectionMetrics('FURNACE', [
|
||||||
'bR4or5toBR6Tension',
|
'tensionBr45Br6',
|
||||||
// 'cleaningVoltage', 'cleaningCurrent',
|
// 'cleaningVoltage', 'cleaningCurrent',
|
||||||
'phfExitStripTemp', 'rtfExitStripTemp', 'jcsExitStripTemp', 'scsExitStripTemp'
|
'phfExitStripTemp', 'rtfExitStripTemp', 'jcsExitStripTemp', 'scsExitStripTemp'
|
||||||
|
|
||||||
@@ -1052,8 +1052,8 @@ export default {
|
|||||||
buildSectionMetrics(sectionType, fields) {
|
buildSectionMetrics(sectionType, fields) {
|
||||||
const sectionSource = this.getSectionSource(sectionType)
|
const sectionSource = this.getSectionSource(sectionType)
|
||||||
return fields.map(f => {
|
return fields.map(f => {
|
||||||
// bR4or5toBR6Tension 在 entry 测量对象里,但需要展示在退火炉段
|
// tensionBr45Br6 在 entry 测量对象里,但需要展示在退火炉段
|
||||||
const source = f === 'bR4or5toBR6Tension' ? this.realtimeData.entry : sectionSource
|
const source = f === 'tensionBr45Br6' ? this.realtimeData.entry : sectionSource
|
||||||
const raw = source ? this.getFieldValueWithAlias(source, f) : null
|
const raw = source ? this.getFieldValueWithAlias(source, f) : null
|
||||||
const unit = this.getFieldUnit(f)
|
const unit = this.getFieldUnit(f)
|
||||||
return {
|
return {
|
||||||
|
|||||||
Reference in New Issue
Block a user