Browse Source

2023-10-19 设备和质量修改

java8
杨奉源 2 years ago
parent
commit
9f3c3dd103
  1. 3
      src/api/qc/qc.js
  2. 3
      src/views/modules/eam/eamPropertiesModel.vue
  3. 247
      src/views/modules/qc/FAIResultEntry.vue
  4. 237
      src/views/modules/qc/FQCResultEntry.vue
  5. 231
      src/views/modules/qc/IPQCResultEntry.vue
  6. 6
      src/views/modules/qc/qcMethod.vue
  7. 2
      src/views/modules/qc/qcTemplate.vue

3
src/api/qc/qc.js

@ -129,7 +129,8 @@ export const getPartList = data => createAPI(`/pms/qc/getPartList`,'post',data)
export const saveOsInspection = data => createAPI(`/pms/qc/saveOsInspection`,'post',data)
export const getAllResourceList = data => createAPI(`/pms/qc/getAllResourceList`,'post',data)
export const getOrderNoList = data => createAPI(`/pms/qc/getOrderNoList`,'post',data)
export const queryController = data => createAPI(`/pms/qc/queryController`,'post',data)
export const queryTemplateList = data => createAPI(`/pms/qc/queryTemplateList`,'post',data)
// ===================================== IQC检验 =====================================
export const qcIQCInspectionSearch = data => createAPI(`/pms/qc/qcIQCInspectionSearch`,'post',data)

3
src/views/modules/eam/eamPropertiesModel.vue

@ -919,8 +919,7 @@
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {
}
onClose: () => {}
})
} else {
this.$alert(data.msg, '错误', {

247
src/views/modules/qc/FAIResultEntry.vue

@ -170,14 +170,6 @@
<el-input v-model="modalData.partNo" readonly style="width: 221px"></el-input>
</el-form-item>
<el-form-item label="物料名称">
<!-- <el-select v-model="modalData.partNo" placeholder="请选择" style="width: 456px">-->
<!-- <el-option-->
<!-- v-for = "i in partList"-->
<!-- :key = "i.partNo"-->
<!-- :label = "i.partDesc"-->
<!-- :value = "i.partNo">-->
<!-- </el-option>-->
<!-- </el-select>-->
<el-input v-model="modalData.partDesc" readonly style="width: 221px"></el-input>
</el-form-item>
</el-form>
@ -193,8 +185,15 @@
<el-form-item label="送检数量:" prop="rollQty" :rules="rules.rollQtyType">
<el-input v-model="modalData.rollQty" type="number" style="width: 221px"></el-input>
</el-form-item>
<el-form-item>
<span v-if="this.controlData.baseData === '控制'" slot="label" @click="queryTemplateList()"><a>检验模板</a></span>
<span v-if="this.controlData.baseData === '未控制'" slot="label">检验模板</span>
<el-input v-model="modalData.templateName" disabled style="width: 221px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="老卷号">
<el-input v-model="modalData.batchRollNo" style="width: 221px"></el-input>
<el-input v-model="modalData.batchRollNo" style="width: 456px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-left: 7px;margin-top: -5px;">
@ -227,7 +226,7 @@
<el-input v-model="detailData.partDesc" readonly style="width: 200px"></el-input>
</el-form-item>
<el-form-item :label="'送检数量'">
<el-input v-model="detailData.rollQty" readonly style="width: 80px"></el-input>
<el-input v-model="detailData.rollQty" type="number" style="width: 80px"></el-input>
</el-form-item>
<el-form-item :label="'抽样数量'">
<el-input v-model="detailData.samplingQty" readonly style="width: 80px"></el-input>
@ -324,6 +323,17 @@
<el-button type="primary" @click="subDetailModal(scope.row) ">点击输入</el-button>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="right"
min-width="80"
label="送检数量">
<template slot-scope="scope">
<el-input v-if="detailData.submitFlag == 'Y'" v-model="scope.row.rollQty" disabled type="number" style="height: 11px;padding: 0px " allow-create>;width:98%"></el-input>
<el-input v-if="detailData.submitFlag != 'Y'" v-model="scope.row.rollQty" type="number" style="height: 11px;padding: 0px " allow-create>;width:98%"></el-input>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
@ -411,6 +421,59 @@
</el-footer>
</el-dialog>
<!-- 检验模板 -->
<el-dialog title="检验模板清单" :close-on-click-modal="false" v-drag :visible.sync="templateModelFlag" width="520px">
<div class="rq">
<el-form :inline="true" label-position="top" :model="templateData">
<el-form-item :label="'模板编码'">
<el-input v-model="templateData.templateId" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'模板名称'">
<el-input v-model="templateData.templateName" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'检验类型'">
<el-select v-model="templateData.inspectionTypeNo" style="width: 100px">
<el-option label="全部" value=""></el-option>
<el-option label="IPQC首检" value="101"></el-option>
<el-option label="IPQC自检" value="102"></el-option>
<el-option label="IPQC巡检" value="103"></el-option>
<el-option label="IPQC末件检" value="104"></el-option>
<el-option label="IQC检验" value="105"></el-option>
<el-option label="FAI检验" value="106"></el-option>
<el-option label="FQC检验" value="107"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="' '">
<el-button type="primary" @click="queryTemplateList()">查询</el-button>
</el-form-item>
</el-form>
<el-table
:height="300"
:data="templateList"
ref="departmentTable"
@row-dblclick="getRowData"
border
v-loading="dataListLoading"
style="width: 100%;">
<el-table-column
v-for="(item,index) in templateDetailList" :key="index"
:sortable="item.columnSortable"
:prop="item.columnProp"
:header-align="item.headerAlign"
:show-overflow-tooltip="item.showOverflowTooltip"
:align="item.align"
:fixed="item.fixed==''?false:item.fixed"
:min-width="item.columnWidth"
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden">{{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
</el-table>
</div>
</el-dialog>
<!-- 文件清单 -->
<el-dialog title="文件清单" :close-on-click-modal="false" v-drag :visible.sync="fileFlag" width="800px">
<el-table
@ -472,6 +535,8 @@
getOperationList, //
getPartList, //
saveFAIInspection, // FAI
queryController, //
queryTemplateList, //
} from "@/api/qc/qc.js";
import Chooselist from '@/views/modules/common/Chooselist_eam';
import {getFileContentList, downLoadObjectFile} from '@/api/eam/eam_object_list.js';
@ -545,7 +610,9 @@
batchRollNo: '',
spec: '',
sku: '',
specialRequirements: ''
specialRequirements: '',
templateId: '',
templateName: ''
},
//
columnList: [
@ -831,6 +898,7 @@
disposalRemark: '',
inspectorNo: '',
inspectionRemark: '',
rollQty: '',
itemList:[],
},
detailColumnList: [
@ -1078,7 +1146,55 @@
batchAddData: {
samplingLocation: '',
samplingNumber: ''
}
},
controlData: {},
templateData: {
site: this.$store.state.user.site,
templateId: '',
templateName: '',
inspectionTypeNo: '',
inspectionTypeName: ''
},
templateList: [],
templateModelFlag: false,
templateDetailList: [
{
columnProp: 'templateId',
headerAlign: "center",
align: "center",
columnLabel: '模板编码',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
{
columnProp: 'templateName',
headerAlign: "center",
align: "center",
columnLabel: '模板名称',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
{
columnProp: 'inspectionTypeName',
headerAlign: "center",
align: "center",
columnLabel: '检验类型',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
],
}
},
mounted () {
@ -1184,6 +1300,10 @@
this.$message.warning('请填写送检数量!')
return
}
if (this.controlData.baseData === '控制' && (this.modalData.templateId == null || this.modalData.templateId === '')) {
this.$message.warning('请选择检验模板!')
return
}
if(this.modalData.flag === '1'){
saveFAIInspection(this.modalData).then(({data}) => {
if (data && data.code === 0) {
@ -1208,8 +1328,27 @@
}
},
//
queryController () {
let tempData = {
controlNo: '10004',
site: this.$store.state.user.site,
}
queryController(tempData).then(({data}) => {
if (data && data.code === 0) {
this.controlData = data.rows
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
addModal(){
//
this.queryController()
this.modalData = {
flag: '1',
site: this.$store.state.user.site,
@ -1231,7 +1370,9 @@
batchRollNo: '',
spec: '',
sku: '',
specialRequirements: ''
specialRequirements: '',
templateId: '',
templateName: ''
};
this.operationList = [];
this.resourceList = [];
@ -1240,6 +1381,28 @@
this.modalFlag = true;
},
//
queryTemplateList () {
//
queryTemplateList(this.templateData).then(({data}) => {
if (data && data.code === 0) {
this.templateList = data.rows
this.templateModelFlag = true
}else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
getRowData (row) {
this.modalData.templateId = row.templateId
this.modalData.templateName = row.templateName
this.templateModelFlag = false
},
selectFlag(){
return true;
},
@ -1423,49 +1586,36 @@
Transfer(){
if (this.detailData.inspectionResult === '' || this.detailData.inspectionResult == null) {
this.$alert('请选择检验结论!', '错误', {
confirmButtonText: '确定'
})
return false
this.$message.warning('请选择检验结论!')
return
}
if (this.detailData.inspectorNo === '' || this.detailData.inspectorNo == null) {
this.$alert('请选择检验员!', '错误', {
confirmButtonText: '确定'
})
return false
this.$message.warning('请选择检验员!')
return
}
// if (this.detailData.inspectionResult == 'Y' && (this.detailData.disposalMeasures == '' || this.detailData.disposalMeasures == '')) {
// this.$alert('', '', {
// confirmButtonText: ''
// })
// return false
// }
for (let i = 0; i < this.detailList.length; i++) {
if(this.detailList[i].itemResult === '' || this.detailList[i].itemResult == null){
// this.$alert(this.detailList[i].itemDesc+'', '', {
// confirmButtonText: ''
// })
// return false
this.detailList[i].itemResult = 'Y'
}
if(this.detailList[i].valueTypeDb === 'N') {
checkFAISubDetailValue(this.detailList[i]).then(({data}) => {
if (data.flag == 2 && this.detailList[i].itemResult === 'Y') {
this.$confirm(this.detailList[i].itemDesc + ' 中实测值不在合格范围!是否保存为合格?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.saveDetailInformation()
}).then(() => {
return false
})
}else {
this.saveDetailInformation()
}
})
}
// if(this.detailList[i].valueTypeDb === 'N') {
// checkFAISubDetailValue(this.detailList[i]).then(({data}) => {
// if (data.flag == 2 && this.detailList[i].itemResult === 'Y') {
// this.$confirm(this.detailList[i].itemDesc + ' ', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
// this.saveDetailInformation()
// }).then(() => {
// return false
// })
// }else {
// this.saveDetailInformation()
// }
// })
// }
}
this.saveDetailInformation()
this.$message({message: '操作成功', type: 'success', duration: 1500, onClose: () => {}})
},
@ -1477,6 +1627,7 @@
this.saveInformationData.inspectorNo = this.detailData.inspectorNo
this.saveInformationData.inspectionResult = this.detailData.inspectionResult
this.saveInformationData.inspectionRemark = this.detailData.inspectionRemark
this.saveInformationData.rollQty = this.detailData.rollQty
this.saveInformationData.itemList = JSON.parse(JSON.stringify(this.detailList))
saveFAIDetailedRecord(this.saveInformationData).then(({data}) => {
if (data && data.code === 0) {

237
src/views/modules/qc/FQCResultEntry.vue

@ -168,14 +168,6 @@
<el-input v-model="modalData.partNo" readonly style="width: 221px"></el-input>
</el-form-item>
<el-form-item label="物料名称">
<!-- <el-select v-model="modalData.partNo" placeholder="请选择" style="width: 456px">-->
<!-- <el-option-->
<!-- v-for = "i in partList"-->
<!-- :key = "i.partNo"-->
<!-- :label = "i.partDesc"-->
<!-- :value = "i.partNo">-->
<!-- </el-option>-->
<!-- </el-select>-->
<el-input v-model="modalData.partDesc" readonly style="width: 221px"></el-input>
</el-form-item>
</el-form>
@ -191,8 +183,15 @@
<el-form-item label="送检数量:" prop="rollQty" :rules="rules.rollQtyType">
<el-input v-model="modalData.rollQty" type="number" style="width: 221px"></el-input>
</el-form-item>
<el-form-item>
<span v-if="this.controlData.baseData === '控制'" slot="label" @click="queryTemplateList()"><a>检验模板</a></span>
<span v-if="this.controlData.baseData === '未控制'" slot="label">检验模板</span>
<el-input v-model="modalData.templateName" disabled style="width: 221px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="老卷号">
<el-input v-model="modalData.batchRollNo" style="width: 221px"></el-input>
<el-input v-model="modalData.batchRollNo" style="width: 456px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-left: 7px;margin-top: -5px;">
@ -225,7 +224,7 @@
<el-input v-model="detailData.partDesc" readonly style="width: 200px"></el-input>
</el-form-item>
<el-form-item :label="'送检数量'">
<el-input v-model="detailData.rollQty" readonly style="width: 80px"></el-input>
<el-input v-model="detailData.rollQty" type="number" style="width: 80px"></el-input>
</el-form-item>
<el-form-item :label="'抽样数量'">
<el-input v-model="detailData.samplingQty" readonly style="width: 80px"></el-input>
@ -322,6 +321,17 @@
<el-button type="primary" @click="subDetailModal(scope.row) ">点击输入</el-button>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="right"
min-width="80"
label="送检数量">
<template slot-scope="scope">
<el-input v-if="detailData.submitFlag == 'Y'" v-model="scope.row.rollQty" disabled type="number" style="height: 11px;padding: 0px " allow-create>;width:98%"></el-input>
<el-input v-if="detailData.submitFlag != 'Y'" v-model="scope.row.rollQty" type="number" style="height: 11px;padding: 0px " allow-create>;width:98%"></el-input>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
@ -409,6 +419,59 @@
</el-footer>
</el-dialog>
<!-- 检验模板 -->
<el-dialog title="检验模板清单" :close-on-click-modal="false" v-drag :visible.sync="templateModelFlag" width="520px">
<div class="rq">
<el-form :inline="true" label-position="top" :model="templateData">
<el-form-item :label="'模板编码'">
<el-input v-model="templateData.templateId" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'模板名称'">
<el-input v-model="templateData.templateName" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'检验类型'">
<el-select v-model="templateData.inspectionTypeNo" style="width: 100px">
<el-option label="全部" value=""></el-option>
<el-option label="IPQC首检" value="101"></el-option>
<el-option label="IPQC自检" value="102"></el-option>
<el-option label="IPQC巡检" value="103"></el-option>
<el-option label="IPQC末件检" value="104"></el-option>
<el-option label="IQC检验" value="105"></el-option>
<el-option label="FAI检验" value="106"></el-option>
<el-option label="FQC检验" value="107"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="' '">
<el-button type="primary" @click="queryTemplateList()">查询</el-button>
</el-form-item>
</el-form>
<el-table
:height="300"
:data="templateList"
ref="departmentTable"
@row-dblclick="getRowData"
border
v-loading="dataListLoading"
style="width: 100%;">
<el-table-column
v-for="(item,index) in templateDetailList" :key="index"
:sortable="item.columnSortable"
:prop="item.columnProp"
:header-align="item.headerAlign"
:show-overflow-tooltip="item.showOverflowTooltip"
:align="item.align"
:fixed="item.fixed==''?false:item.fixed"
:min-width="item.columnWidth"
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden">{{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
</el-table>
</div>
</el-dialog>
<!-- 文件清单 -->
<el-dialog title="文件清单" :close-on-click-modal="false" v-drag :visible.sync="fileFlag" width="800px">
<el-table
@ -470,6 +533,8 @@
getOperationList, //
getPartList, //
saveFQCInspection, // FQC
queryController, //
queryTemplateList, //
} from "@/api/qc/qc.js";
import Chooselist from '@/views/modules/common/Chooselist_eam';
import {getFileContentList, downLoadObjectFile} from '@/api/eam/eam_object_list.js';
@ -541,7 +606,9 @@
batchRollNo: '',
spec: '',
sku: '',
specialRequirements: ''
specialRequirements: '',
templateId: '',
templateName: ''
},
//
columnList: [
@ -827,6 +894,7 @@
disposalRemark: '',
inspectorNo: '',
inspectionRemark: '',
rollQty: '',
itemList:[],
},
detailColumnList: [
@ -1074,7 +1142,55 @@
batchAddData: {
samplingLocation: '',
samplingNumber: ''
}
},
controlData: {},
templateData: {
site: this.$store.state.user.site,
templateId: '',
templateName: '',
inspectionTypeNo: '',
inspectionTypeName: ''
},
templateList: [],
templateModelFlag: false,
templateDetailList: [
{
columnProp: 'templateId',
headerAlign: "center",
align: "center",
columnLabel: '模板编码',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
{
columnProp: 'templateName',
headerAlign: "center",
align: "center",
columnLabel: '模板名称',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
{
columnProp: 'inspectionTypeName',
headerAlign: "center",
align: "center",
columnLabel: '检验类型',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
],
}
},
mounted () {
@ -1180,6 +1296,10 @@
this.$message.warning('请填写送检数量!')
return
}
if (this.controlData.baseData === '控制' && (this.modalData.templateId == null || this.modalData.templateId === '')) {
this.$message.warning('请选择检验模板!')
return
}
if(this.modalData.flag === '1'){
saveFQCInspection(this.modalData).then(({data}) => {
if (data && data.code === 0) {
@ -1204,8 +1324,27 @@
}
},
//
queryController () {
let tempData = {
controlNo: '10004',
site: this.$store.state.user.site,
}
queryController(tempData).then(({data}) => {
if (data && data.code === 0) {
this.controlData = data.rows
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
addModal(){
//
this.queryController()
this.modalData = {
flag: '1',
site: this.$store.state.user.site,
@ -1227,7 +1366,9 @@
batchRollNo: '',
spec: '',
sku: '',
specialRequirements: ''
specialRequirements: '',
templateId: '',
templateName: ''
};
this.operationList = [];
this.resourceList = [];
@ -1236,6 +1377,28 @@
this.modalFlag = true;
},
//
queryTemplateList () {
//
queryTemplateList(this.templateData).then(({data}) => {
if (data && data.code === 0) {
this.templateList = data.rows
this.templateModelFlag = true
}else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
getRowData (row) {
this.modalData.templateId = row.templateId
this.modalData.templateName = row.templateName
this.templateModelFlag = false
},
selectFlag(){
return true;
},
@ -1419,39 +1582,36 @@
Transfer(){
if (this.detailData.inspectionResult === '' || this.detailData.inspectionResult == null) {
this.$alert('请选择检验结论!', '错误', {
confirmButtonText: '确定'
})
return false
this.$message.warning('请选择检验结论!')
return
}
if (this.detailData.inspectorNo === '' || this.detailData.inspectorNo == null) {
this.$alert('请选择检验员!', '错误', {
confirmButtonText: '确定'
})
return false
this.$message.warning('请选择检验员!')
return
}
for (let i = 0; i < this.detailList.length; i++) {
if(this.detailList[i].itemResult === '' || this.detailList[i].itemResult == null){
this.detailList[i].itemResult = 'Y'
}
if(this.detailList[i].valueTypeDb === 'N') {
checkFQCSubDetailValue(this.detailList[i]).then(({data}) => {
if (data.flag == 2 && this.detailList[i].itemResult === 'Y') {
this.$confirm(this.detailList[i].itemDesc + ' 中实测值不在合格范围!是否保存为合格?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.saveDetailInformation()
}).then(() => {
return false
})
}else {
this.saveDetailInformation()
}
})
}
// if(this.detailList[i].valueTypeDb === 'N') {
// checkFQCSubDetailValue(this.detailList[i]).then(({data}) => {
// if (data.flag == 2 && this.detailList[i].itemResult === 'Y') {
// this.$confirm(this.detailList[i].itemDesc + ' ', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
// this.saveDetailInformation()
// }).then(() => {
// return false
// })
// }else {
// this.saveDetailInformation()
// }
// })
// }
}
this.saveDetailInformation()
this.$message({message: '操作成功', type: 'success', duration: 1500, onClose: () => {}})
},
@ -1463,6 +1623,7 @@
this.saveInformationData.inspectorNo = this.detailData.inspectorNo
this.saveInformationData.inspectionResult = this.detailData.inspectionResult
this.saveInformationData.inspectionRemark = this.detailData.inspectionRemark
this.saveInformationData.rollQty = this.detailData.rollQty
this.saveInformationData.itemList = JSON.parse(JSON.stringify(this.detailList))
saveFQCDetailedRecord(this.saveInformationData).then(({data}) => {
if (data && data.code === 0) {

231
src/views/modules/qc/IPQCResultEntry.vue

@ -220,7 +220,12 @@
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="老卷号">
<el-input v-model="modalData.batchRollNo" style="width: 456px"></el-input>
<el-input v-model="modalData.batchRollNo" style="width: 221px"></el-input>
</el-form-item>
<el-form-item>
<span v-if="this.controlData.baseData === '控制'" slot="label" @click="queryTemplateList()"><a>检验模板</a></span>
<span v-if="this.controlData.baseData === '未控制'" slot="label">检验模板</span>
<el-input v-model="modalData.templateName" disabled style="width: 221px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="modalData" style="margin-left: 7px;margin-top: -5px;">
@ -253,7 +258,7 @@
<el-input v-model="detailData.partDesc" readonly style="width: 200px"></el-input>
</el-form-item>
<el-form-item :label="'送检数量'">
<el-input v-model="detailData.rollQty" readonly style="width: 80px"></el-input>
<el-input v-model="detailData.rollQty" type="number" style="width: 80px"></el-input>
</el-form-item>
<el-form-item :label="'抽样数量'">
<el-input v-model="detailData.samplingQty" readonly style="width: 80px"></el-input>
@ -350,6 +355,17 @@
<el-button type="primary" @click="subDetailModal(scope.row) ">点击输入</el-button>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="right"
min-width="80"
label="送检数量">
<template slot-scope="scope">
<el-input v-if="detailData.submitFlag == 'Y'" v-model="scope.row.rollQty" disabled type="number" style="height: 11px;padding: 0px " allow-create>;width:98%"></el-input>
<el-input v-if="detailData.submitFlag != 'Y'" v-model="scope.row.rollQty" type="number" style="height: 11px;padding: 0px " allow-create>;width:98%"></el-input>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
@ -368,7 +384,7 @@
min-width="75"
label="项目检验结论">
<template slot-scope="scope">
<el-select v-if="detailData.submitFlag == 'Y'" v-model="scope.row.itemResult" disabled style="height: 11px;padding: 0px" >
<el-select v-if="detailData.submitFlag == 'Y'" v-model="scope.row.itemResult" disabled style="height: 11px;padding: 0px">
<el-option label="合格" value="Y" style="color: green"></el-option>
<el-option label="不合格" value="N" style="color: red"></el-option>
</el-select>
@ -486,6 +502,59 @@
</el-footer>
</el-dialog>
<!-- 检验模板 -->
<el-dialog title="检验模板清单" :close-on-click-modal="false" v-drag :visible.sync="templateModelFlag" width="520px">
<div class="rq">
<el-form :inline="true" label-position="top" :model="templateData">
<el-form-item :label="'模板编码'">
<el-input v-model="templateData.templateId" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'模板名称'">
<el-input v-model="templateData.templateName" clearable style="width: 120px"></el-input>
</el-form-item>
<el-form-item :label="'检验类型'">
<el-select v-model="templateData.inspectionTypeNo" style="width: 100px">
<el-option label="全部" value=""></el-option>
<el-option label="IPQC首检" value="101"></el-option>
<el-option label="IPQC自检" value="102"></el-option>
<el-option label="IPQC巡检" value="103"></el-option>
<el-option label="IPQC末件检" value="104"></el-option>
<el-option label="IQC检验" value="105"></el-option>
<el-option label="FAI检验" value="106"></el-option>
<el-option label="FQC检验" value="107"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="' '">
<el-button type="primary" @click="queryTemplateList()">查询</el-button>
</el-form-item>
</el-form>
<el-table
:height="300"
:data="templateList"
ref="departmentTable"
@row-dblclick="getRowData"
border
v-loading="dataListLoading"
style="width: 100%;">
<el-table-column
v-for="(item,index) in templateDetailList" :key="index"
:sortable="item.columnSortable"
:prop="item.columnProp"
:header-align="item.headerAlign"
:show-overflow-tooltip="item.showOverflowTooltip"
:align="item.align"
:fixed="item.fixed==''?false:item.fixed"
:min-width="item.columnWidth"
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden">{{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]" style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
</el-table>
</div>
</el-dialog>
<!-- 文件清单 -->
<el-dialog title="文件清单" :close-on-click-modal="false" v-drag :visible.sync="fileFlag" width="800px">
<el-table
@ -544,7 +613,9 @@
getOperationList, //
getResourceList, //
getPartList, //
saveOsInspection, //
saveOsInspection, //
queryController, //
queryTemplateList, //
getOrderNoList //
} from "@/api/qc/qc.js";
import Chooselist from '@/views/modules/common/Chooselist_eam';
@ -630,7 +701,9 @@
batchRollNo: '',
spec: '',
sku: '',
specialRequirements: ''
specialRequirements: '',
templateId: '',
templateName: ''
},
//
columnList: [
@ -928,6 +1001,7 @@
disposalRemark: '',
inspectorNo: '',
inspectionRemark: '',
rollQty: '',
itemList:[],
},
detailColumnList: [
@ -1183,7 +1257,55 @@
batchAddData: {
samplingLocation: '',
samplingNumber: ''
}
},
controlData: {},
templateData: {
site: this.$store.state.user.site,
templateId: '',
templateName: '',
inspectionTypeNo: '',
inspectionTypeName: ''
},
templateList: [],
templateModelFlag: false,
templateDetailList: [
{
columnProp: 'templateId',
headerAlign: "center",
align: "center",
columnLabel: '模板编码',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
{
columnProp: 'templateName',
headerAlign: "center",
align: "center",
columnLabel: '模板名称',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
{
columnProp: 'inspectionTypeName',
headerAlign: "center",
align: "center",
columnLabel: '检验类型',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
},
],
// orderNoData:{
// limit: 10,
// page: 1,
@ -1443,7 +1565,26 @@
})
},
//
queryController () {
let tempData = {
controlNo: '10004',
site: this.$store.state.user.site,
}
queryController(tempData).then(({data}) => {
if (data && data.code === 0) {
this.controlData = data.rows
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
addModal(){
//
this.queryController()
this.modalData = {
flag: '1',
site: this.$store.state.user.site,
@ -1465,7 +1606,9 @@
batchRollNo: '',
spec: '',
sku: '',
specialRequirements: ''
specialRequirements: '',
templateId: '',
templateName: ''
}
this.operationList = []
this.resourceList = []
@ -1474,6 +1617,28 @@
this.modalFlag = true
},
//
queryTemplateList () {
//
queryTemplateList(this.templateData).then(({data}) => {
if (data && data.code === 0) {
this.templateList = data.rows
this.templateModelFlag = true
}else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
getRowData (row) {
this.modalData.templateId = row.templateId
this.modalData.templateName = row.templateName
this.templateModelFlag = false
},
// IPQC
saveData(){
if (this.modalData.seqNo === '' || this.modalData.seqNo == null) {
@ -1504,6 +1669,10 @@
this.$message.warning('请填写送检数量!')
return
}
if (this.controlData.baseData === '控制' && (this.modalData.templateId == null || this.modalData.templateId === '')) {
this.$message.warning('请选择检验模板!')
return
}
if(this.modalData.flag === '1'){
saveOsInspection(this.modalData).then(({data}) => {
if (data && data.code === 0) {
@ -1613,39 +1782,34 @@
Transfer(){
if (this.detailData.inspectionResult === '' || this.detailData.inspectionResult == null) {
this.$alert('请选择检验结论!', '错误', {
confirmButtonText: '确定'
})
return false
this.$message.warning('请选择检验结论!')
return
}
if (this.detailData.inspectorNo === '' || this.detailData.inspectorNo == null) {
this.$alert('请选择检验员!', '错误', {
confirmButtonText: '确定'
})
return false
this.$message.warning('请选择检验员!')
return
}
for (let i = 0; i < this.detailList.length; i++) {
if(this.detailList[i].itemResult === '' || this.detailList[i].itemResult == null){
this.detailList[i].itemResult = 'Y'
}
if(this.detailList[i].valueTypeDb === 'N') {
checkIPQCSubDetailValue(this.detailList[i]).then(({data}) => {
if (data.flag === 2 && this.detailList[i].itemResult ==='Y') {
this.$confirm(this.detailList[i].itemDesc + ' 中实测值不在合格范围!是否保存为合格?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.saveDetailInformation()
}).then(() => {
return false
})
}else {
this.saveDetailInformation()
}
})
}
// if(this.detailList[i].valueTypeDb === 'N') {
// checkIPQCSubDetailValue(this.detailList[i]).then(({data}) => {
// if (data.flag === 2 && this.detailList[i].itemResult ==='Y') {
// this.$confirm(this.detailList[i].itemDesc + ' ', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
//
// }).then(() => {
// return false
// })
// }
// })
// }
}
this.saveDetailInformation()
this.$message({message: '操作成功', type: 'success', duration: 1500, onClose: () => {}})
},
@ -1657,6 +1821,7 @@
this.saveInformationData.inspectorNo = this.detailData.inspectorNo
this.saveInformationData.inspectionResult = this.detailData.inspectionResult
this.saveInformationData.inspectionRemark = this.detailData.inspectionRemark
this.saveInformationData.rollQty = this.detailData.rollQty
this.saveInformationData.itemList = JSON.parse(JSON.stringify(this.detailList))
saveIPQCDetailedRecord(this.saveInformationData).then(({data}) => {
if (data && data.code === 0) {
@ -1956,11 +2121,9 @@
},
startDownload() {
},
finishDownload() {
},
fields() {

6
src/views/modules/qc/qcMethod.vue

@ -470,8 +470,7 @@
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {
}
onClose: () => {}
})
} else {
this.$alert(data.msg, '错误', {
@ -488,8 +487,7 @@
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {
}
onClose: () => {}
})
} else {
this.$alert(data.msg, '错误', {

2
src/views/modules/qc/qcTemplate.vue

@ -172,7 +172,7 @@
</el-form>
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="AQL:">
<el-input v-model="modalData.aql" style="width: 120px"></el-input>
<el-input v-model="modalData.aql" type="number" style="width: 120px"></el-input>
</el-form-item>
<el-form-item label="AC:">
<el-input v-model="modalData.ac" type="number" style="width: 120px"></el-input>

Loading…
Cancel
Save