LAPTOP-R6EHHS26\86155 6 months ago
commit 2de2387373

@ -50,3 +50,11 @@ export function delMaterialGroup(id) {
method: 'delete'
});
}
export function getOriginalGroupList(query) {
return request({
url: '/quality/materialGroup/getOriginalGroupList',
method: 'get',
params: query
});
}

@ -43,9 +43,10 @@ export function delProduce(recordId) {
});
}
export function getProduceReportXJ(orderNo) {
export function getProduceReportXJ(orderNo,shiftId) {
const data = {
orderNo
orderNo,
shiftId
}
return request({
url: '/quality/qcProduceReport/getProduceReportXJ',

@ -926,10 +926,13 @@ export default {
// 线
getGroupLine().then(response => {
this.groupLineList = response.data;
this.equipmentQuery.groupLine = response.data[0].equipmentCode;
this.getEquList();
// this.equipmentQuery.groupLine = response.data[0].equipmentCode;
})
//
getEquList().then(response => {
this.equTotal = response.total;
this.queryEquipment = response.rows;
})
this.selectEqu = true;
},
//
@ -1058,7 +1061,7 @@ export default {
equipmentCode: null,
equipmentName: null,
workshopCode: null,
groupLine:this.groupLineList[0].equipmentCode,
groupLine:null,
pageNum: 1,
pageSize: 10,
};

@ -661,7 +661,7 @@ export default {
//
if (this.form.itemName == null) {
this.$message({
message: "请输入检查项",
message: "请输入检查项名称",
type: "warning"
})
return
@ -673,13 +673,20 @@ export default {
})
return
}
if (this.selectEquipmentList.length == 0) {
if (this.form.itemMethod == null) {
this.$message({
message: "请关联设备",
message: "请输入检查方法",
type: "warning"
})
return
}
// if (this.selectEquipmentList.length == 0) {
// this.$message({
// message: "",
// type: "warning"
// })
// return
// }
for (let i = 0; i < this.formStandard.length; i++) {
//
if (this.formStandard[i].standardType == 'qualitative') {

@ -971,10 +971,13 @@ export default {
// 线
getGroupLine().then(response => {
this.groupLineList = response.data;
this.equipmentQuery.groupLine = response.data[0].equipmentCode;
this.getEquList();
})
//
getEquList().then(response => {
this.equTotal = response.total;
this.queryEquipment = response.rows;
})
this.selectEqu = true;
},
//
@ -1103,7 +1106,7 @@ export default {
equipmentCode: null,
equipmentName: null,
workshopCode: null,
groupLine:this.groupLineList[0].equipmentCode,
groupLine : null,
pageNum: 1,
pageSize: 10,
};

@ -1322,8 +1322,8 @@ export default {
var statusesArray = this.statuses;
for (var i = 0; i < statusesArray.length; i++) {
if (statusesArray[i] != 'w0') {//
this.$modal.msgError("已经派发的订单不允许操作");
if (statusesArray[i] == 'w2') {
this.$modal.msgError("已经活动的订单不允许操作");
return
}
}

@ -55,9 +55,27 @@
<!-- 新增物料组窗口 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="物料组名称" prop="groupName">
<el-input v-model="form.groupName" placeholder="请输入物料组名称" />
</el-form-item>
<el-row >
<el-col :span="16">
<el-form-item label="物料组名称" prop="groupCode">
<el-input v-model="form.groupName" placeholder="请输入物料组名称"/>
</el-form-item>
</el-col>
</el-row>
<el-row >
<el-col :span="16">
<el-form-item label="物料组" prop="groupName">
<el-select v-model="form.groupCode" filterable clearable placeholder="请选择物料组">
<el-option
v-for="(item,index) in OriginalGroupList"
:key="index"
:label="item.groupName"
:value="item.groupCode">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -75,6 +93,7 @@
<script>
import {
getOriginalGroupList,
addMaterialGroup,
delMaterialGroup,
updateMaterialGroup,
@ -113,6 +132,8 @@ export default {
groupName: undefined,
//
materialGroupList: [],
//
OriginalGroupList: [],
//
nodeData: {},
//
@ -146,6 +167,7 @@ export default {
},
created() {
this.getMaterialTree();
this.getOriginalGroup();
},
methods: {
//
@ -158,6 +180,7 @@ export default {
this.form = {
id: null,
groupName: null,
groupCode: null,
attr1: null,
createBy: null,
createTime: null,
@ -171,6 +194,13 @@ export default {
};
this.resetForm("form");
},
/** 获取初始物料组 */
getOriginalGroup() {
getOriginalGroupList(this.queryParams).then((response) => {
this.OriginalGroupList = response.rows;
//this.loading = false;
});
},
/** 查询部门下拉树结构 */
getMaterialTree() {
materialTreeSelect().then((response) => {

@ -8,8 +8,8 @@
<el-row :gutter="20">
<el-col :span="24" :xs="24">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="105px" align="left">
<el-form-item label="检测项目名称">
<el-form :model="queryParams" ref="queryProjectForm" size="small" :inline="true" v-show="showSearch" label-width="105px" align="left">
<el-form-item label="检测项目名称" prop="ruleName">
<el-input
v-model="queryParams.ruleName"
placeholder="检测项目名称"
@ -19,11 +19,11 @@
/>
</el-form-item>
<el-form-item label="检测方案名称">
<el-form-item label="检测方案名称" prop="projectType">
<el-select v-model="queryParams.projectType" filterable clearable placeholder="请选择检测方案">
<el-option
v-for="item in projectTypeOptions"
:key="item.projectTypeCode"
v-for="(item,index) in projectTypeOptions"
:key="index"
:label="item.projectTypeName"
:value="item.projectTypeCode">
</el-option>
@ -66,7 +66,7 @@
</el-table-column>
<el-table-column label="测量单位" align="left" prop="unitCode" width="90"/>
<el-table-column label="抽样方案" align="left" prop="samplePlan" width="100" :show-overflow-tooltip="true"/>
<el-table-column label="合格判定" align="left" prop="judge"/ width="100">
<el-table-column label="合格判定" align="left" prop="judge" width="100" />
<el-table-column label="缺陷等级" align="left" prop="defectLevel" width="90"/>
<el-table-column label="检验方式" align="left" prop="checkMode" width="90" :show-overflow-tooltip="true"/>
<el-table-column label="检验工具" align="left" prop="checkTool" width="90"/>
@ -107,7 +107,8 @@ export default {
total: 0,
// BOM
itemList: null,
ruleName: null,
projectType:null,
//
bomCode: undefined,
defaultProps: {
@ -164,7 +165,7 @@ export default {
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.resetForm("queryProjectForm");
this.handleQuery();
},
@ -183,6 +184,8 @@ export default {
this.$emit('onSelected', this.$refs.myTable.selection);
this.showFlag = false;
this.ruleName = '';
this.projectType = '';
},
}
};

@ -183,7 +183,7 @@
</el-radio-group>
</el-col>
</el-row>
<!-- 主数据 -->
<!-- 主数据 白班-->
<el-table
v-if="refreshNewWorkerTable"
v-loading="newWorkerLoading"
@ -360,6 +360,165 @@
</el-table-column>
</el-table>
<el-table
v-if="refreshNewWorkerTableNight"
v-loading="newWorkerLoading"
class="my-print-table"
:data="form.checkInfos"
border
style="width: 100%">
<el-table-column label="id" align="center" prop="recordId" v-if="false"/>
<el-table-column label="序号" type="index" align="center" :index="indexMethod"/>
<el-table-column label="项目名称" width="155" align="left" prop="ruleName" />
<el-table-column label="时间" align="center" >
<el-table-column prop="column080090" label="20:30-21:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column080090.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column080090.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column090100" label="21:30-22:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column090100.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column090100.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column100110" label="22:30-23:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column100110.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column100110.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column110120" label="23:30-1:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column110120.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column110120.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column133143" label="1:30-2:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column133143.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column133143.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column143153" label="2:30-3:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column143153.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column143153.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column153163" label="3:30-4:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column153163.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column153163.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column163173" label="4:30-5:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column163173.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column163173.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column123133" label="5:30-6:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column123133.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column123133.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column180190" label="6:30-7:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column180190.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column180190.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
<el-table-column prop="column190200" label="7:30-8:30" width="95" align="center">
<template slot-scope="scope" >
<div v-for="(item,index) in scope.row.column190200.split(',')">
<el-image
:src="item"
style="width: 60px; height: 60px"
:fit="fit"
:preview-src-list="Array.from(scope.row.column190200.split(',')).slice(1)"
v-if="index>0"/>
<span v-else>{{item}}</span>
</div>
</template>
</el-table-column>
</el-table-column>
</el-table>
<br/>
<!-- 底部 -->
<el-row class="my-print-foot">
@ -543,6 +702,7 @@ export default {
formRef: 'form',
newWorkerLoading: false,
refreshNewWorkerTable:true,
refreshNewWorkerTableNight:true,
validateRules: [],
checkList: [],
standardNo: null,
@ -760,18 +920,32 @@ export default {
this.queryParams.recordId = recordId;
this.getCheckedProjectList();
}else {
const orderNo = row.orderNo;
getProduceReportXJ(orderNo).then(response => {
this.form = response;
//
this.form.printable = 'printForm'; //
this.form.ignore = ['no-print'];//
this.open = true;
this.title = "巡检检验报告";
this.refreshNewWorkerTable = true // refreshProTabletrue
this.newWorkerLoading = false // false
})
if(row.shiftId == '5'){
getProduceReportXJ(orderNo,row.shiftId).then(response => {
this.form = response;
//
this.form.printable = 'printForm'; //
this.form.ignore = ['no-print'];//
this.open = true;
this.title = "巡检检验报告";
this.refreshNewWorkerTable = true ;// refreshProTabletrue
this.refreshNewWorkerTableNight = false ;
this.newWorkerLoading = false ;// false
})
}else if(row.shiftId == '2'){
getProduceReportXJ(orderNo,row.shiftId).then(response => {
this.form = response;
//
this.form.printable = 'printForm'; //
this.form.ignore = ['no-print'];//
this.open = true;
this.title = "巡检检验报告";
this.refreshNewWorkerTableNight = true ;// refreshProTabletrue
this.refreshNewWorkerTable = false ;
this.newWorkerLoading = false ;// false
})
}
}
},

@ -48,11 +48,6 @@
v-hasPermi="['quality:qcIncome:edit']"
>不良数量</el-button>
</template>
</el-table-column>
<el-table-column label="不良数量" align="left" prop="defectQuality" width="120">
<template slot-scope="scope">
<el-input type="number" v-model="scope.row.defectQuality" placeholder="请输入不良数量"/>
</template>
</el-table-column>
<el-table-column label="检测值" align="center" class-name="small-padding fixed-width" v-if="this.viewStatus != '1' ">
<template slot-scope="scope">
@ -210,7 +205,6 @@ export default {
this.getDefect();
},
methods: {
getDefect(){
getDefectList(this.typeCode).then(response => {
this.defectList = response;
@ -331,6 +325,7 @@ export default {
this.defectForm.defectItems.forEach(item => {
item.belongToDetail = row.recordId;
item.belongTo = row.belongTo;
item.noOkQuality = 0;
});
getDefectValue(row.recordId).then(response => {
let values = response.rows;
@ -343,6 +338,8 @@ export default {
noOkQuality: item.noOkQuality,
}));
this.updateFlag = true;
}else{
this.updateFlag = false;
}
this.defectOpen = true;
});

@ -141,7 +141,9 @@
</el-table-column>
<el-table-column label="来料批次号" align="center" prop="incomeBatchNo" width="120"/>
<el-table-column label="订单号" align="center" prop="orderNo" width="120"/>
<el-table-column label="物料号" align="center" prop="materialCode" width="170"/>
<el-table-column label="物料号" align="center" prop="materialCode" width="170"
:formatter="productCodeFormate"
/>
<el-table-column label="物料名称" align="center" prop="materialName" width="150"/>
<el-table-column label="收货数量" align="center" prop="quality" />
<el-table-column label="不合格数量" align="center" prop="noOkQuality" width="120"/>
@ -470,6 +472,11 @@ export default {
this.handleDefectType();
},
methods: {
productCodeFormate(row, column, cellValue){
if(cellValue != null){
return cellValue.slice(7,18); //
}
},
/****/
getCheckTypes() {
getCheckTypes('material').then(response => {

@ -563,7 +563,9 @@ export default {
methods: {
//
productCodeFormate(row, column, cellValue){
return cellValue.slice(7,18); //
if(cellValue != null){
return cellValue.slice(7,18); //
}
},
/****/
//

@ -10,8 +10,8 @@
/>
</el-form-item>
<el-form-item label="检验规则属性" prop="propertyCode">
<el-select
v-model="queryParams.propertyCode"
<el-select
v-model="queryParams.propertyCode"
placeholder="请选择检验规则属性"
clearable >
<el-option
@ -139,7 +139,7 @@
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
@ -243,8 +243,8 @@
<el-input type='textarea' v-model="form.judge" placeholder="合格判定" />
</el-form-item>
</el-col>
</el-row>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
@ -281,7 +281,7 @@
<el-button @click="upload.open = false"> </el-button>
</div>
</el-dialog>
</div>
</template>
@ -340,7 +340,7 @@ export default {
//
updateSupport: 0,
//
headers: {
headers: {
Authorization: "Bearer " + getToken(),
poolName: localStorage.getItem('USER_POOL_NAME_CURRENT'),
},
@ -483,7 +483,7 @@ export default {
/** 下载模板操作 */
importTemplate() {
this.download('quality/project/importTemplate', {
}, `user_template_${new Date().getTime()}.xlsx`)
}, `check_project_template_${new Date().getTime()}.xlsx`)
},
//
handleFileUploadProgress(event, file, fileList) {

Loading…
Cancel
Save