diff --git a/src/views/modules/qc/FQCResultEntry.vue b/src/views/modules/qc/FQCResultEntry.vue
index a9a31a6..e276bb3 100644
--- a/src/views/modules/qc/FQCResultEntry.vue
+++ b/src/views/modules/qc/FQCResultEntry.vue
@@ -104,10 +104,9 @@
—
- 无需
- 是
+ 是
否
- —
+ 无需
this.isMustReadWorkFile(file, row))
+ },
+
saveWorkFileReadToServer(row) {
const target = this.resolveWorkFileRow(row)
if (!target || !target.inspectionNo || target.workFileRead === 'Y') {
@@ -3341,8 +3356,8 @@ export default {
})
},
- onWorkFilePreviewed() {
- if (this.currentWorkFileRow) {
+ onWorkFilePreviewed(file) {
+ if (this.currentWorkFileRow && this.isMustReadWorkFile(file, this.currentWorkFileRow)) {
this.saveWorkFileReadToServer(this.currentWorkFileRow)
}
},
@@ -3382,7 +3397,8 @@ export default {
} else {
this.fileContentList = []
}
- this.$set(this.resolveWorkFileRow(row), 'hasWorkFile', this.fileContentList.length > 0 ? 'Y' : 'N')
+ const mustReadFiles = this.getMustReadWorkFiles(this.fileContentList, row)
+ this.$set(this.resolveWorkFileRow(row), 'hasWorkFile', mustReadFiles.length > 0 ? 'Y' : 'N')
this.fileLoading = false
})
.catch(() => {
@@ -3675,28 +3691,29 @@ export default {
})
},
- // 明细记录信息查询
+ // 明细记录信息查询:无文件→无需阅读直接进;有需阅读文件且未读才拦截
detailModal(row) {
- if (row.state === '待检验' && row.workFileRead !== 'Y') {
- if (row.hasWorkFile === 'N') {
+ if (row.state !== '待检验') {
+ this.openDetailModal(row)
+ return
+ }
+ if (row.workFileRead === 'Y' || row.hasWorkFile === 'N') {
+ this.openDetailModal(row)
+ return
+ }
+ this.fetchWorkFiles(row).then(files => {
+ const target = this.resolveWorkFileRow(row)
+ const mustReadFiles = this.getMustReadWorkFiles(files, target)
+ this.$set(target, 'hasWorkFile', mustReadFiles.length > 0 ? 'Y' : 'N')
+ if (mustReadFiles.length === 0 || target.workFileRead === 'Y') {
this.openDetailModal(row)
return
}
- this.fetchWorkFiles(row).then(files => {
- const target = this.resolveWorkFileRow(row)
- this.$set(target, 'hasWorkFile', files.length > 0 ? 'Y' : 'N')
- if (files.length > 0 && target.workFileRead !== 'Y') {
- this.$message.warning('请先预览工作文件后再进行检验操作')
- this.currentWorkFileRow = target
- this.fileContentList = files
- this.fileFlag = true
- return
- }
- this.openDetailModal(row)
- })
- return
- }
- this.openDetailModal(row)
+ this.$message.warning('请先预览工作文件后再进行检验操作')
+ this.currentWorkFileRow = target
+ this.fileContentList = files
+ this.fileFlag = true
+ })
},
openDetailModal(row) {
diff --git a/src/views/modules/qc/IPQCResultEntry.vue b/src/views/modules/qc/IPQCResultEntry.vue
index 67d9c1e..a714351 100644
--- a/src/views/modules/qc/IPQCResultEntry.vue
+++ b/src/views/modules/qc/IPQCResultEntry.vue
@@ -140,10 +140,9 @@
label="是否阅读">
—
- 无需
- 是
+ 是
否
- —
+ 无需
this.isMustReadWorkFile(file, row))
+ },
+
saveWorkFileReadToServer (row) {
const target = this.resolveWorkFileRow(row)
if (!target || !target.inspectionNo || target.workFileRead === 'Y') {
@@ -3067,8 +3082,8 @@
})
},
- onWorkFilePreviewed () {
- if (this.currentWorkFileRow) {
+ onWorkFilePreviewed (file) {
+ if (this.currentWorkFileRow && this.isMustReadWorkFile(file, this.currentWorkFileRow)) {
this.saveWorkFileReadToServer(this.currentWorkFileRow)
}
},
@@ -3105,7 +3120,8 @@
} else {
this.fileContentList = []
}
- this.$set(this.resolveWorkFileRow(row), 'hasWorkFile', this.fileContentList.length > 0 ? 'Y' : 'N')
+ const mustReadFiles = this.getMustReadWorkFiles(this.fileContentList, row)
+ this.$set(this.resolveWorkFileRow(row), 'hasWorkFile', mustReadFiles.length > 0 ? 'Y' : 'N')
this.fileLoading = false
}).catch(()=>{
this.fileLoading = false
@@ -3774,28 +3790,29 @@
})
},
- // 明细记录信息查询
+ // 明细记录信息查询:无文件→无需阅读直接进;有需阅读文件且未读才拦截
detailModal (row) {
- if (row.state === '待检验' && row.workFileRead !== 'Y') {
- if (row.hasWorkFile === 'N') {
+ if (row.state !== '待检验') {
+ this.openDetailModal(row)
+ return
+ }
+ if (row.workFileRead === 'Y' || row.hasWorkFile === 'N') {
+ this.openDetailModal(row)
+ return
+ }
+ this.fetchWorkFiles(row).then(files => {
+ const target = this.resolveWorkFileRow(row)
+ const mustReadFiles = this.getMustReadWorkFiles(files, target)
+ this.$set(target, 'hasWorkFile', mustReadFiles.length > 0 ? 'Y' : 'N')
+ if (mustReadFiles.length === 0 || target.workFileRead === 'Y') {
this.openDetailModal(row)
return
}
- this.fetchWorkFiles(row).then(files => {
- const target = this.resolveWorkFileRow(row)
- this.$set(target, 'hasWorkFile', files.length > 0 ? 'Y' : 'N')
- if (files.length > 0 && target.workFileRead !== 'Y') {
- this.$message.warning('请先预览工作文件后再进行检验操作')
- this.currentWorkFileRow = target
- this.fileContentList = files
- this.fileFlag = true
- return
- }
- this.openDetailModal(row)
- })
- return
- }
- this.openDetailModal(row)
+ this.$message.warning('请先预览工作文件后再进行检验操作')
+ this.currentWorkFileRow = target
+ this.fileContentList = files
+ this.fileFlag = true
+ })
},
openDetailModal (row) {
diff --git a/src/views/modules/qc/IQCFileTable.vue b/src/views/modules/qc/IQCFileTable.vue
index 1104b2d..4193336 100644
--- a/src/views/modules/qc/IQCFileTable.vue
+++ b/src/views/modules/qc/IQCFileTable.vue
@@ -132,6 +132,7 @@ export default {
// 释放URL 对象
URL.revokeObjectURL(linkNode.href)
document.body.removeChild(linkNode)
+ this.emitFilePreviewed(row)
})
},
@@ -156,6 +157,7 @@ export default {
// 释放URL 对象
URL.revokeObjectURL(linkNode.href)
document.body.removeChild(linkNode)
+ this.emitFilePreviewed(row)
})
},
diff --git a/src/views/modules/qc/PQCResultEntry.vue b/src/views/modules/qc/PQCResultEntry.vue
index e7cbcb2..b6a9e1c 100644
--- a/src/views/modules/qc/PQCResultEntry.vue
+++ b/src/views/modules/qc/PQCResultEntry.vue
@@ -3949,6 +3949,23 @@ export default {
},
Transfer (type) {
+ if (!this.detailData.operator || this.detailData.operator === '') {
+ this.$message.warning('请选择协同人员!')
+ return
+ }
+ if (!this.detailData.responsiblePerson || this.detailData.responsiblePerson === '') {
+ this.$message.warning('请选择责任人!')
+ return
+ }
+ if (this.detailList.length > 0) {
+ for (let i = 0; i < this.detailList.length; i++) {
+ const item = this.detailList[i]
+ if (item.valueTypeDb === 'N' && (item.numberValue === '' || item.numberValue == null)) {
+ this.$message.warning('检验项目【'+ item.itemNo+'-'+ (item.itemDesc || (i + 1)) + '】实测值不能为空!')
+ return
+ }
+ }
+ }
if (type === '2') {
// if (this.detailData.inspectionResult === '' || this.detailData.inspectionResult == null) {
// this.$message.warning('请选择检验结论!')