|
|
|
@ -548,6 +548,9 @@ |
|
|
|
<el-input v-if="detailData.submitFlag === 'Y'" v-model="detailData.inspectionRemark" disabled style="width: 293px"></el-input> |
|
|
|
<el-input v-else v-model="detailData.inspectionRemark" style="width: 293px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="' '"> |
|
|
|
<el-button type="primary" @click="openItemOperationDialog">项目操作</el-button> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item v-show="detailData.inspectionResult === '不合格'" style="margin-top: 5px"> |
|
|
|
<el-form-item :label="'处置措施'"> |
|
|
|
<el-select v-if="detailData.submitFlag === 'Y'" clearable v-model="detailData.disposalMeasures" disabled style="width: 100px"> |
|
|
|
@ -1044,6 +1047,123 @@ |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 项目操作对话框 --> |
|
|
|
<el-dialog title="检验项目操作" @close="refreshInspectionDetailList" :close-on-click-modal="false" v-drag :visible.sync="itemOperationDialogFlag" width="1100px"> |
|
|
|
<div style="font-size: 12px"> |
|
|
|
<el-form :inline="true" label-position="top"> |
|
|
|
<el-form-item :label="'项目编码'"> |
|
|
|
<el-input v-model="itemOperationQuery.itemNo" clearable style="width: 120px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="'项目名称'"> |
|
|
|
<el-input v-model="itemOperationQuery.itemDesc" clearable style="width: 200px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item :label="' '"> |
|
|
|
<el-button type="primary" @click="searchIPQCItems">查询</el-button> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</div> |
|
|
|
<el-container style="margin-top: 0px;"> |
|
|
|
<el-main style="width: 720px; padding: 1px"> |
|
|
|
<span style="font-size: 12px">可选项目:</span> |
|
|
|
<el-table |
|
|
|
height="400px" |
|
|
|
:data="availableItemList" |
|
|
|
border |
|
|
|
ref="availableItemTable" |
|
|
|
@row-click="availableItemClickRow" |
|
|
|
@selection-change="availableItemSelectionChange" |
|
|
|
highlight-current-row |
|
|
|
style="width: 100%"> |
|
|
|
<el-table-column |
|
|
|
type="selection" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
width="50"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="itemNo" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
min-width="80" |
|
|
|
label="项目编码"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="itemDesc" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
min-width="120" |
|
|
|
label="项目名称"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="defaultValue" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
min-width="100" |
|
|
|
label="标准值"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="maxValue" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
min-width="60" |
|
|
|
label="最大值"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="minValue" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
min-width="60" |
|
|
|
label="最小值"> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</el-main> |
|
|
|
<el-main style="width: 111px;padding: 1px"> |
|
|
|
<div style="margin-top: 182px;margin-left: 18px"> |
|
|
|
<el-button type="primary" @click="addInspectionItems">添加>></el-button> |
|
|
|
</div> |
|
|
|
<div style="margin-top: 15px;margin-left: 18px"> |
|
|
|
<el-button type="primary" @click="deleteInspectionItems">删除<<</el-button> |
|
|
|
</div> |
|
|
|
</el-main> |
|
|
|
<el-main style="width: 400px;padding: 1px"> |
|
|
|
<span style="font-size: 12px">已有项目:</span> |
|
|
|
<el-table |
|
|
|
height="400px" |
|
|
|
:data="selectedItemList" |
|
|
|
border |
|
|
|
ref="selectedItemTable" |
|
|
|
@row-click="selectedItemClickRow" |
|
|
|
@selection-change="selectedItemSelectionChange" |
|
|
|
highlight-current-row |
|
|
|
style="width: 100%"> |
|
|
|
<el-table-column |
|
|
|
type="selection" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
width="50"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="itemNo" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
min-width="80" |
|
|
|
label="项目编码"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="itemDesc" |
|
|
|
header-align="center" |
|
|
|
align="center" |
|
|
|
min-width="200" |
|
|
|
label="项目名称"> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</el-main> |
|
|
|
</el-container> |
|
|
|
<el-footer style="height:40px;margin-top: 20px;text-align:center"> |
|
|
|
<el-button type="primary" @click="itemOperationDialogFlag = false">关闭</el-button> |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist> |
|
|
|
|
|
|
|
<!-- 上传文件的modal --> |
|
|
|
@ -1093,7 +1213,10 @@ |
|
|
|
dataAcquisitionByItem, // 根据项目数据采集 |
|
|
|
cancelApproval2, // 取消审核 |
|
|
|
getUserRoleList, // 获取用户角色列表 |
|
|
|
getOperatorList |
|
|
|
getOperatorList, |
|
|
|
getIPQCItemList, // 获取IPQC检验项目列表 |
|
|
|
addIPQCItemDetails, // 添加IPQC检验项目 |
|
|
|
deleteIPQCItemDetails // 删除IPQC检验项目 |
|
|
|
} from "@/api/qc/qc.js" |
|
|
|
import {getTableDefaultListLanguage, getTableUserListLanguage} from "@/api/table.js" |
|
|
|
import Chooselist from '@/views/modules/common/Chooselist_eam' |
|
|
|
@ -2580,6 +2703,16 @@ |
|
|
|
acquisitionList: [], |
|
|
|
ItemObjectModelFlag: false, |
|
|
|
itemObjectList: [], |
|
|
|
// 项目操作对话框相关 |
|
|
|
itemOperationDialogFlag: false, |
|
|
|
itemOperationQuery: { |
|
|
|
itemNo: '', |
|
|
|
itemDesc: '', |
|
|
|
}, |
|
|
|
availableItemList: [], |
|
|
|
selectedItemList: [], |
|
|
|
availableItemSelections: [], |
|
|
|
selectedItemSelections: [], |
|
|
|
itemObjectColumnList: [ |
|
|
|
{ |
|
|
|
columnProp: 'itemNo', |
|
|
|
@ -4241,6 +4374,129 @@ |
|
|
|
this.authFile = !fileFlag |
|
|
|
this.authCancelCheck = !cancelCheckFlag |
|
|
|
}, |
|
|
|
|
|
|
|
// ======================== 项目操作相关方法 ======================== |
|
|
|
// 打开项目操作对话框 |
|
|
|
openItemOperationDialog() { |
|
|
|
this.itemOperationQuery = { |
|
|
|
itemNo: '', |
|
|
|
itemDesc: '', |
|
|
|
} |
|
|
|
this.searchIPQCItems() |
|
|
|
this.itemOperationDialogFlag = true |
|
|
|
}, |
|
|
|
|
|
|
|
// 查询IPQC类型的检验项目 |
|
|
|
async searchIPQCItems() { |
|
|
|
try { |
|
|
|
const {data} = await getIPQCItemList({ |
|
|
|
site: this.detailData.site, |
|
|
|
buNo: this.detailData.buNo, |
|
|
|
inspectionNo: this.detailData.inspectionNo, |
|
|
|
templateId: this.detailData.templateId, |
|
|
|
itemNo: this.itemOperationQuery.itemNo, |
|
|
|
itemDesc: this.itemOperationQuery.itemDesc, |
|
|
|
}) |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.availableItemList = data.row1 || [] |
|
|
|
this.selectedItemList = data.row2 || [] |
|
|
|
} else { |
|
|
|
this.$message.error(data.msg || '查询失败') |
|
|
|
} |
|
|
|
} catch (error) { |
|
|
|
this.$message.error('查询失败,请检查') |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
// 可选项目行点击 |
|
|
|
availableItemClickRow(row) { |
|
|
|
this.$refs.availableItemTable.toggleRowSelection(row) |
|
|
|
}, |
|
|
|
|
|
|
|
// 可选项目选择变化 |
|
|
|
availableItemSelectionChange(selection) { |
|
|
|
this.availableItemSelections = selection |
|
|
|
}, |
|
|
|
|
|
|
|
// 已有项目行点击 |
|
|
|
selectedItemClickRow(row) { |
|
|
|
this.$refs.selectedItemTable.toggleRowSelection(row) |
|
|
|
}, |
|
|
|
|
|
|
|
// 已有项目选择变化 |
|
|
|
selectedItemSelectionChange(selection) { |
|
|
|
this.selectedItemSelections = selection |
|
|
|
}, |
|
|
|
|
|
|
|
// 添加检验项目 |
|
|
|
async addInspectionItems() { |
|
|
|
if (!this.availableItemSelections || this.availableItemSelections.length === 0) { |
|
|
|
this.$message.warning('请选择可选项目!') |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
try { |
|
|
|
const {data} = await addIPQCItemDetails({ |
|
|
|
site: this.detailData.site, |
|
|
|
buNo: this.detailData.buNo, |
|
|
|
inspectionNo: this.detailData.inspectionNo, |
|
|
|
templateId: this.detailData.templateId, |
|
|
|
orderNo: this.detailData.orderNo, |
|
|
|
itemList: this.availableItemSelections, |
|
|
|
}) |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.$message.success('添加成功') |
|
|
|
this.searchIPQCItems() |
|
|
|
this.availableItemSelections = [] |
|
|
|
} else { |
|
|
|
this.$message.error(data.msg || '添加失败') |
|
|
|
} |
|
|
|
} catch (error) { |
|
|
|
this.$message.error('添加失败,请检查') |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
// 删除检验项目 |
|
|
|
async deleteInspectionItems() { |
|
|
|
if (!this.selectedItemSelections || this.selectedItemSelections.length === 0) { |
|
|
|
this.$message.warning('请选择已有项目!') |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
this.$confirm('确定删除选中的检验项目吗?删除后将同时删除该项目的子明细数据。', '提示', { |
|
|
|
confirmButtonText: '确定', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(async () => { |
|
|
|
try { |
|
|
|
const {data} = await deleteIPQCItemDetails({ |
|
|
|
site: this.detailData.site, |
|
|
|
buNo: this.detailData.buNo, |
|
|
|
inspectionNo: this.detailData.inspectionNo, |
|
|
|
templateId: this.detailData.templateId, |
|
|
|
itemList: this.selectedItemSelections, |
|
|
|
}) |
|
|
|
if (data && data.code === 0) { |
|
|
|
this.$message.success('删除成功') |
|
|
|
this.searchIPQCItems() |
|
|
|
this.selectedItemSelections = [] |
|
|
|
} else { |
|
|
|
this.$message.error(data.msg || '删除失败') |
|
|
|
} |
|
|
|
} catch (error) { |
|
|
|
this.$message.error('删除失败,请检查') |
|
|
|
} |
|
|
|
}).catch(() => { |
|
|
|
this.$message.info('已取消删除') |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
// 刷新检验明细列表 |
|
|
|
refreshInspectionDetailList() { |
|
|
|
if (this.detailInformationFlag) { |
|
|
|
this.getInspectionFormData() |
|
|
|
} |
|
|
|
}, |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|
|