feat:模具组-详情-添加压网记录

main
黄伟杰 7 days ago
parent c742219141
commit f970ef7daf

@ -2730,6 +2730,7 @@
tabInspection: 'Inspection Records',
tabRepair: 'Repair Records',
tabMaintain: 'Maintenance Records',
pressureNetRecord: 'Pressure Net Record',
tabInstall: 'Installation Records',
tabDrawings: 'Drawings',
tabOperationManual: 'Operation Manual',
@ -2781,6 +2782,10 @@
createTime: 'Operation Time',
noInstallRecords: 'No installation records',
noRecords: 'No data',
moldBrandName: 'Mold Group Name',
subMoldName: 'Sub Mold Name',
pressureNetTime: 'Pressure Net Time',
placeholderPressureNetTime: 'Please select pressure net time',
pending: 'Pending',
pass: 'Pass',
fail: 'Fail',

@ -2209,6 +2209,7 @@
tabInspection: '点检记录',
tabRepair: '维修记录',
tabMaintain: '保养记录',
pressureNetRecord: '压网记录',
tabInstall: '安装记录',
tabDrawings: '图纸',
tabOperationManual: '操作手册',
@ -2265,6 +2266,10 @@
createTime: '操作时间',
noInstallRecords: '暂无安装记录',
noRecords: '暂无数据',
moldBrandName: '模具组名称',
subMoldName: '子模具名称',
pressureNetTime: '压网时间',
placeholderPressureNetTime: '请选择压网时间',
// 检测结果
pending: '待检测',
pass: '通过',

@ -252,6 +252,22 @@
class="device-ledger-history-item-label">{{ t('MoldManagement.MoldBrandDetail.maintainTime') }}</span><span
class="device-ledger-history-item-value">{{
String(formatHistoryTime(item.taskTime)).split(' ')[0] }}</span></div>
<div class="device-ledger-history-item-row device-ledger-history-item-row--images"><span
class="device-ledger-history-item-label">{{ t('MoldManagement.MoldBrandDetail.images') }}</span><span
class="device-ledger-history-item-value">
<div v-if="parseImages(item.images).length" class="device-ledger-repair-images">
<el-image
v-for="image in parseImages(item.images)"
:key="image"
:src="image"
:preview-src-list="parseImages(item.images)"
preview-teleported
fit="cover"
class="device-ledger-repair-image"
/>
</div>
<div v-else class="device-ledger-repair-image-placeholder">-</div>
</span></div>
<div class="device-ledger-history-item-row"><span
class="device-ledger-history-item-label">{{ t('MoldManagement.MoldBrandDetail.remark') }}</span><span
class="device-ledger-history-item-value">{{ item.remark ?? '-' }}</span></div>
@ -263,6 +279,44 @@
</el-steps>
</div>
</el-tab-pane>
<el-tab-pane :label="t('MoldManagement.MoldBrandDetail.pressureNetRecord')" name="pressureNet">
<div v-loading="pressureNetLoading">
<el-form :inline="true" class="device-ledger-tab-toolbar">
<el-form-item :label="t('MoldManagement.MoldBrandDetail.pressureNetTime')">
<el-date-picker
v-model="pressureNetTime"
type="daterange"
value-format="YYYY-MM-DD HH:mm:ss"
:start-placeholder="t('MoldManagement.MoldBrandDetail.startTime')"
:end-placeholder="t('MoldManagement.MoldBrandDetail.endTime')"
:range-separator="t('MoldManagement.MoldBrandDetail.to')"
:unlink-panels="true"
style="width: 340px"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" plain @click="handleQueryPressureNet">{{ t('MoldManagement.MoldBrandDetail.query') }}</el-button>
<el-button @click="handleResetPressureNet">{{ t('MoldManagement.MoldBrandDetail.reset') }}</el-button>
</el-form-item>
</el-form>
<el-table :data="pressureNetRecordList" :stripe="true" :show-overflow-tooltip="true">
<el-table-column :label="t('MoldManagement.MoldBrandDetail.moldBrandName')" prop="moldBrandName" min-width="140" />
<el-table-column :label="t('MoldManagement.MoldBrandDetail.subMoldName')" prop="moldName" min-width="120" />
<el-table-column :label="t('MoldManagement.MoldBrandDetail.pressureNetTime')" prop="pressureNetTime" min-width="160">
<template #default="scope">{{ formatHistoryTime(scope.row.pressureNetTime) }}</template>
</el-table-column>
<el-table-column :label="t('MoldManagement.MoldBrandDetail.createTime')" prop="createTime" min-width="160">
<template #default="scope">{{ formatHistoryTime(scope.row.createTime) }}</template>
</el-table-column>
<el-table-column :label="t('MoldManagement.MoldBrandDetail.remark')" prop="remark" min-width="160">
<template #default="scope">{{ scope.row.remark || '-' }}</template>
</el-table-column>
</el-table>
<el-empty v-if="!pressureNetRecordList.length" :description="t('MoldManagement.MoldBrandDetail.noRecords')" />
<Pagination :total="pressureNetTotal" v-model:page="pressureNetPageNo" v-model:limit="pressureNetPageSize"
@pagination="fetchPressureNetRecords" />
</div>
</el-tab-pane>
<el-tab-pane :label="t('MoldManagement.MoldBrandDetail.tabInstall')" name="install">
<div v-loading="installLoading">
<el-form :inline="true" class="device-ledger-tab-toolbar">
@ -374,10 +428,15 @@ const maintainHistory = ref<any[]>([])
const repairList = ref<any[]>([])
const repairQueryCode = ref<string | undefined>()
const repairQueryStatus = ref<string | undefined>()
const pressureNetRecordList = ref<any[]>([])
const installRecords = ref<any[]>([])
const installTotal = ref(0)
const installPageNo = ref(1)
const installPageSize = ref(10)
const pressureNetTotal = ref(0)
const pressureNetPageNo = ref(1)
const pressureNetPageSize = ref(10)
const pressureNetTime = ref<string[] | undefined>()
const installMoldId = ref<number | undefined>()
const installRemark = ref<string | undefined>()
const installDateRange = ref<string[] | undefined>()
@ -393,6 +452,7 @@ const repairExportLoading = ref(false)
const inspectionLoading = ref(false)
const repairLoading = ref(false)
const maintainLoading = ref(false)
const pressureNetLoading = ref(false)
const installLoading = ref(false)
const imageList = computed(() => parseImages(detailData.value?.images))
@ -727,6 +787,38 @@ const fetchRepairHistory = async () => {
}
}
const fetchPressureNetRecords = async () => {
if (!brandId.value) return
pressureNetLoading.value = true
try {
const params: any = {
pageNo: pressureNetPageNo.value,
pageSize: pressureNetPageSize.value,
moldBrandId: brandId.value
}
if (pressureNetTime.value && pressureNetTime.value.length === 2) {
params['pressureNetTime[0]'] = pressureNetTime.value[0]
params['pressureNetTime[1]'] = pressureNetTime.value[1]
}
const data = await MoldBrandApi.getPressureNetRecordPage(params)
pressureNetRecordList.value = data?.list ?? []
pressureNetTotal.value = data?.total ?? 0
} finally {
pressureNetLoading.value = false
}
}
const handleQueryPressureNet = () => {
pressureNetPageNo.value = 1
fetchPressureNetRecords()
}
const handleResetPressureNet = () => {
pressureNetTime.value = undefined
pressureNetPageNo.value = 1
fetchPressureNetRecords()
}
const fetchInstallRecords = async () => {
if (!brandId.value) return
installLoading.value = true
@ -836,6 +928,9 @@ const loadTabData = async (tab: string) => {
await getChildMolds()
fetchMaintainHistory()
break
case 'pressureNet':
fetchPressureNetRecords()
break
case 'install':
await getChildMolds()
fetchInstallRecords()

Loading…
Cancel
Save