From c173b572d2451c0ae49a327467b636ee6dbd3922 Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Mon, 12 Jan 2026 20:41:52 +0800 Subject: [PATCH] =?UTF-8?q?2026-01-12=20=E7=89=A9=E6=96=99=E6=A1=A3?= =?UTF-8?q?=E6=A1=88=E7=AE=A1=E7=90=86=E5=8A=A0=E4=B8=80=E4=B8=AA=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E3=80=90=E5=B7=A1=E6=A3=80=E7=89=B9=E6=AE=8A=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/qc/qc.js | 6 + src/views/modules/qc/qcPartAttribute.vue | 209 ++++++++++++++++++++++- 2 files changed, 214 insertions(+), 1 deletion(-) diff --git a/src/api/qc/qc.js b/src/api/qc/qc.js index 7638caf..2449168 100644 --- a/src/api/qc/qc.js +++ b/src/api/qc/qc.js @@ -85,6 +85,12 @@ export const updateDefectTracking = data => createAPI(`/pms/qc/updateDefectTrack export const getPartLabelTemplate = data => createAPI(`/pms/qc/getPartLabelTemplate`,'post',data) export const saveLabelTemplate = data => createAPI(`/pms/qc/saveLabelTemplate`,'post',data) export const deleteLabelTemplate = data => createAPI(`/pms/qc/deleteLabelTemplate`,'post',data) + +// ===================================== 巡检特殊配置 ===================================== +export const getPatrolConfigList = data => createAPI(`/pms/qc/getPatrolConfigList`,'post',data) +export const savePatrolConfig = data => createAPI(`/pms/qc/savePatrolConfig`,'post',data) +export const updatePatrolConfig = data => createAPI(`/pms/qc/updatePatrolConfig`,'post',data) +export const deletePatrolConfig = data => createAPI(`/pms/qc/deletePatrolConfig`,'post',data) export const updateLabelTemplate = data => createAPI(`/pms/qc/updateLabelTemplate`,'post',data) // ===================================== FAI检验 ===================================== diff --git a/src/views/modules/qc/qcPartAttribute.vue b/src/views/modules/qc/qcPartAttribute.vue index 93e81d1..7fa0ca6 100644 --- a/src/views/modules/qc/qcPartAttribute.vue +++ b/src/views/modules/qc/qcPartAttribute.vue @@ -284,7 +284,10 @@
-
巡检配置
+
+ 巡检配置 + 特殊巡检配置 +
@@ -311,6 +314,58 @@ + + +
+ 新增 + 删除 +
+ + + + + + + + + + + + + + + + + + + + + + + 关闭 + +
+ @@ -1235,6 +1290,10 @@ deleteLabelTemplate, // 删除标签模版设置 updateLabelTemplate, // 编辑标签模版设置 getCustomerList, // 查询客户列表 + getPatrolConfigList, // 查询巡检特殊配置列表 + savePatrolConfig, // 新增巡检特殊配置 + updatePatrolConfig, // 更新巡检特殊配置 + deletePatrolConfig, // 删除巡检特殊配置 } from "@/api/qc/qc.js" import {getTableDefaultListLanguage, getTableUserListLanguage} from "@/api/table.js" import Chooselist from '@/views/modules/common/Chooselist_eam' @@ -1291,6 +1350,11 @@ totalPage: 0, modalFlag: false, modalDisableFlag: false, + // 巡检特殊配置相关 + patrolConfigDialogFlag: false, + patrolConfigLoading: false, + patrolConfigList: [], + patrolConfigSelections: [], modalData: { site: '', bu: '', @@ -2057,6 +2121,149 @@ }, methods: { + // ================= 巡检特殊配置相关方法 ================= + // 打开巡检特殊配置对话框 + openPatrolConfigDialog() { + this.patrolConfigDialogFlag = true + this.getPatrolConfigList() + }, + + // 获取巡检特殊配置列表 + getPatrolConfigList() { + this.patrolConfigLoading = true + const params = { + site: this.modalData.site, + buNo: this.modalData.buNo, + partNo: this.modalData.partNo + } + getPatrolConfigList(params).then(({data}) => { + if (data && data.code === 0) { + this.patrolConfigList = data.rows || [] + } else { + this.$message.error(data.msg || '获取巡检配置失败') + } + this.patrolConfigLoading = false + }).catch(() => { + this.patrolConfigLoading = false + }) + }, + + // 巡检配置选择变化 + patrolConfigSelectionChange(selections) { + this.patrolConfigSelections = selections + }, + + // 巡检配置行点击 + patrolConfigRowClick(row) { + // 可以在这里添加行点击逻辑 + }, + + // 新增巡检配置 + addPatrolConfig() { + this.patrolConfigList.push({ + site: this.modalData.site, + buNo: this.modalData.buNo, + partNo: this.modalData.partNo, + operationDesc: '', + firstInspectionDuration: 0, + nextInspectionDuration: 0, + totalInspectionDuration: 0, + defaultFlag: 'N', + isNew: true + }) + }, + + // 保存单行巡检配置 + savePatrolConfigRow(row) { + if (!row.operationDesc) { + this.$message.warning('请输入工序') + return + } + const params = { + site: row.site, + buNo: row.buNo, + partNo: row.partNo, + operationDesc: row.operationDesc, + firstInspectionDuration: row.firstInspectionDuration, + nextInspectionDuration: row.nextInspectionDuration, + totalInspectionDuration: row.totalInspectionDuration, + defaultFlag: row.defaultFlag + } + if (row.isNew) { + savePatrolConfig(params).then(({data}) => { + if (data && data.code === 0) { + this.$message.success('保存成功') + this.getPatrolConfigList() + } else { + this.$message.error(data.msg || '保存失败') + } + }) + } else { + updatePatrolConfig(params).then(({data}) => { + if (data && data.code === 0) { + this.$message.success('更新成功') + this.getPatrolConfigList() + } else { + this.$message.error(data.msg || '更新失败') + } + }) + } + }, + + // 删除巡检配置 + deletePatrolConfig() { + if (this.patrolConfigSelections.length === 0) { + this.$message.warning('请选择要删除的数据') + return + } + this.$confirm('确定删除选中的配置吗?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + const deleteList = this.patrolConfigSelections.filter(item => !item.isNew) + if (deleteList.length === 0) { + // 只有新增的未保存数据,直接从列表中移除 + this.patrolConfigSelections.forEach(item => { + const index = this.patrolConfigList.indexOf(item) + if (index > -1) { + this.patrolConfigList.splice(index, 1) + } + }) + this.patrolConfigSelections = [] + return + } + const params = { + list: deleteList.map(item => ({ + site: item.site, + buNo: item.buNo, + partNo: item.partNo, + operationDesc: item.operationDesc + })) + } + deletePatrolConfig(params).then(({data}) => { + if (data && data.code === 0) { + this.$message.success('删除成功') + this.getPatrolConfigList() + } else { + this.$message.error(data.msg || '删除失败') + } + }) + }).catch(() => {}) + }, + + // 处理默认标识变化 + handleDefaultFlagChange(row) { + if (row.defaultFlag === 'Y') { + // 如果设置为默认,将其他行的默认标识设为N + this.patrolConfigList.forEach(item => { + if (item !== row) { + item.defaultFlag = 'N' + } + }) + } + }, + // 获取用户的bu getSiteAndBuByUserName () { let tempData = {