检验分配升级

master
zhaoxiaolin 3 months ago
parent 1821d792b1
commit 8872f5a12f

@ -96,4 +96,10 @@ export function getBomList(query) {
});
}
// 删除生产报工物料消耗
export function deleteConsume(workorderCode) {
return request({
url: '/mes/reportWorkConsume/deleteConsume/' + workorderCode,
method: 'delete'
});
}

@ -85,3 +85,18 @@ export function delFile(id) {
method: 'delete'
});
}
// 查询检验节点维护详细
export function listBelongToStandars() {
return request({
url: '/quality/checkType/listBelongToStandars',
method: 'get'
});
}
// 查询检验节点维护详细
export function listBelongToLines() {
return request({
url: '/quality/checkType/listBelongToLines',
method: 'get'
});
}

@ -91,3 +91,12 @@ export function deleteByMaterialCode(data) {
data: data
});
}
// 修改用户物料关联
export function updateBelongTo(data) {
return request({
url: '/quality/material/updateBelongTo',
method: 'put',
data: data
});
}

@ -518,7 +518,7 @@
</el-tabs>
<div slot="footer" class="dialog-footer">
<el-button type="warning" @click="clearConsume" >一键清理</el-button>
<el-button type="primary" @click="cancel" v-if="optType == 'view'"></el-button>
<el-button :disabled="loading" type="primary" @click="submitConsume" v-else> </el-button>
<el-button @click="cancel"> </el-button>
@ -704,7 +704,7 @@ import {
submitConsumePS,
submitReportInfo,
getBomList,
getAllLevelConsumeList,
getAllLevelConsumeList,deleteConsume
} from "@/api/mes/reportWorkConsume";
import ReportWorkConsume from "./reportWorkConsume.vue";
import ItemSelectUser from "./selectUser.vue";
@ -1434,9 +1434,7 @@ export default {
});
this.mergedArray = newPConsumeRows;
this.pConsumeRows = newPConsumeRows;
console.log("过滤后:", this.pConsumeRows);
}
console.log(this.pConsumeRows, selection, "wwwwww");
},
// all(zxl)
allConsumeSelection(selection, row) {
@ -1490,6 +1488,16 @@ export default {
this.loading = false; // loading
});
},
/**清理重复报工损耗**/
clearConsume(){
const workorderCode = this.selectRow[0].workorderCode;
this.$modal.confirm('是否确认清理工单号"' + workorderCode + '"的数据项?').then(function() {
return deleteConsume(workorderCode);
}).then(() => {
this.$modal.msgSuccess("清理成功");
this.cancel();
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download(

@ -154,34 +154,40 @@
<!-- 用户绑定 -->
<el-dialog :title="titleUserBind" :visible.sync="openUserBind" width="800px">
<el-table v-loading="userloading" :data="userList" ref="userBindTable" >
<el-table-column label="序号" align="center" type="index" width="50" />
<el-table-column label="员工编号" align="center" prop="userCode" />
<el-table-column label="姓名" align="center" prop="userName" />
<el-table-column label="来料类别" align="center" prop="attr1" >
<template slot-scope="scope">
<el-table v-loading="userloading" :data="userList" ref="userBindTable" >
<el-table-column label="序号" align="center" type="index" width="50" />
<el-table-column label="员工编号" align="center" prop="userCode" />
<el-table-column label="姓名" align="center" prop="userName" />
<el-table-column label="来料类别" align="center" prop="attr1" >
<template slot-scope="scope">
<dict-tag
:options="dict.type.order_type_ll"
:value="scope.row.attr1"
/>
</template>
</el-table-column>
<el-table-column fixed="right" align="center" label="操作" width="100">
<template slot-scope="scope">
<el-button
size="small"
type="danger"
plain
@click="deleteUser(scope.row)"
>
移除</el-button>
</template>
</el-table-column>
</el-table>
<div class="button-container">
<el-button size="mini" type="primary" @click="addUser()" >新增员工</el-button>
</div>
<div slot="footer" class="dialog-footer">
</el-table-column>
<el-table-column label="所属线体/标准" align="center" prop="attr2" >
<template slot-scope="scope">
<el-select v-model="scope.row.attr2" placeholder="请选择" clearable @change="selectBelongTo(scope.row)">
<el-option
v-for="item in belongToOptions"
:key="item.typeCode"
:label="item.typeName"
:value="item.typeCode"
></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column fixed="right" align="center" label="操作" width="100">
<template slot-scope="scope">
<el-button size="small" type="danger" plain @click="deleteUser(scope.row)"></el-button>
</template>
</el-table-column>
</el-table>
<div class="button-container">
<el-button size="mini" type="primary" @click="addUser()" >新增员工</el-button>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleClose" > </el-button>
</div>
</el-dialog>
@ -193,8 +199,10 @@
</template>
<script>
import { listCheckType, getCheckType, delCheckType, addCheckType, updateCheckType } from "@/api/quality/checkType";
import{ getSelectedUsers, addUserBind, deleteByMaterialCode} from "@/api/quality/userbind";
import { listCheckType, getCheckType, delCheckType, addCheckType, updateCheckType,
listBelongToStandars,listBelongToLines
} from "@/api/quality/checkType";
import{ getSelectedUsers, addUserBind, deleteByMaterialCode,updateBelongTo} from "@/api/quality/userbind";
import ItemSelectUser from "./selectUser.vue";
import ItemConfFile from "./confFile.vue";
export default {
@ -214,19 +222,22 @@ export default {
multiple: true,
//
showSearch: true,
openUserBind: false,
materialCode: "",
materialName: "",
attr1: "",
openUserBind: false,
materialCode: "",
materialName: "",
attr1: "",
//
total: 0,
//
checkTypeList: [],
userList: [],
userRows: [],
userList: [],
userRows: [],
belongToOptions:[],
belongToStandars:[],
belongToLines:[],
//
title: "",
titleUserBind: "",
titleUserBind: "",
//
open: false,
//
@ -240,7 +251,7 @@ export default {
attr1: null,
factoryCode: null,
},
getUserParams: {
getUserParams: {
pageNum: 1,
pageSize: 10,
userCode: null,
@ -261,6 +272,8 @@ export default {
},
created() {
this.getList();
this.getBelongToLinesList();
this.getBelongToStandars()
},
methods: {
/** 查询检验节点维护列表 */
@ -272,6 +285,19 @@ export default {
this.loading = false;
});
},
/** 查询所属线体选择列表 */
getBelongToLinesList() {
listBelongToLines().then(response => {
this.belongToLines = response;
});
},
/** 查询所属标准选择列表 */
getBelongToStandars() {
listBelongToStandars().then(response => {
this.belongToStandars = response;
});
},
//
cancel() {
this.open = false;
@ -363,103 +389,121 @@ export default {
...this.queryParams
}, `checkType_${new Date().getTime()}.xlsx`)
},
/** 人员绑定按钮操作页面 */
handleBind(row){
//this.reset();
this.userloading = true;
//使
this.materialCode = row.orderCode;
this.materialName = row.checkName;
this.attr1 = row.attr1;
/** 人员绑定按钮操作页面 */
handleBind(row){
//this.reset();
this.userloading = true;
//使
this.materialCode = row.orderCode;
this.materialName = row.checkName;
this.attr1 = row.attr1;
this.getUserParams.materialCode = row.orderCode;
if(row.orderCode == 'checkTypeSC'|| row.orderCode == 'checkTypeSCXJ' ||
row.orderCode=='checkTypeCPPC' || row.orderCode=='checkTypeCP'){
this.belongToOptions = this.belongToLines;
}else if(row.orderCode == 'checkTypeLL'){
this.belongToOptions = this.belongToStandars;
}
console.log("======"+this.belongToOptions)
//
getSelectedUsers(this.getUserParams).then(response => {
this.userList = response.rows;
this.openUserBind = true;
this.titleUserBind = "人员绑定详情";
this.userloading = false;
this.userloading = false;
});
},
getSelectUserList() {
this.userloading = true;
//this.getUserParams.materialCode = orderCode;
getSelectedUsers(this.getUserParams).then(response => {
this.userList = response.rows;
this.userloading = false;
});
},
userSelection(selection) {
const allRows = this.userRows.concat(selection)
this.userRows = allRows.reduce((acc, cur) => {
const hasDuplicate = acc.some(item => item.materialCode === cur.materialCode);
if (!hasDuplicate) {
acc.push(cur);
}
return acc;
}, []);
},
//
handleClose() {
this.openUserBind = false;
},
//
addUser() {
this.$refs.itemSelectUser.showFlag = true;
this.$refs.itemSelectUser.getList();
},
//
},
getSelectUserList() {
this.userloading = true;
//this.getUserParams.materialCode = orderCode;
getSelectedUsers(this.getUserParams).then(response => {
this.userList = response.rows;
this.userloading = false;
});
},
userSelection(selection) {
const allRows = this.userRows.concat(selection)
this.userRows = allRows.reduce((acc, cur) => {
const hasDuplicate = acc.some(item => item.materialCode === cur.materialCode);
if (!hasDuplicate) {
acc.push(cur);
}
return acc;
}, []);
},
//
handleClose() {
this.openUserBind = false;
},
//
addUser() {
this.$refs.itemSelectUser.showFlag = true;
this.$refs.itemSelectUser.getList();
},
//
onSelectUser(obj) {
let data = {
materialCode: this.materialCode,
materialName: this.materialName,
attr1List: [],
userCodes: [],
userNames: [],
materialCode: this.materialCode,
materialName: this.materialName,
attr1List: [],
userCodes: [],
userNames: [],
}
obj.forEach((item, index) => {
data.userCodes.push(item.userCode);
data.userNames.push(item.userName);
data.attr1List.push(item.attr1);
});
addUserBind(data).then(response => {
if(response.code === 200) {
this.$modal.msgSuccess("人员绑定成功");
}else{
this.$modal.msgError(response.msg);
}
this.getSelectUserList();
});
},
deleteUser(row) {
const userCode = row.userCode;
const userName = row.userName;
const data = {
materialCode: this.materialCode,
userCode: userCode,
userName: userName,
}
this.$modal.confirm('是否确认删除用户名为"' + userName + '"的数据项?').then(function() {
return deleteByMaterialCode(data);
}).then(response => {
obj.forEach((item, index) => {
data.userCodes.push(item.userCode);
data.userNames.push(item.userName);
data.attr1List.push(item.attr1);
});
addUserBind(data).then(response => {
if(response.code === 200) {
this.$modal.msgSuccess("删除成功");
}else{
this.$modal.msgError(response.msg);
this.$modal.msgSuccess("人员绑定成功");
}else{
this.$modal.msgError(response.msg);
}
this.getSelectUserList();
});
},
deleteUser(row) {
const userCode = row.userCode;
const userName = row.userName;
const data = {
materialCode: this.materialCode,
userCode: userCode,
userName: userName,
}
this.getSelectUserList();
}).catch(() => {});
},
this.$modal.confirm('是否确认删除用户名为"' + userName + '"的数据项?').then(function() {
return deleteByMaterialCode(data);
}).then(response => {
if(response.code === 200) {
this.$modal.msgSuccess("删除成功");
}else{
this.$modal.msgError(response.msg);
}
this.getSelectUserList();
}).catch(() => {});
},
//
handleFile(row) {
this.checkType = row.orderCode;
this.checkType = row.orderCode;
this.$refs.itemConfFile.initFunc(this.checkType);
this.$refs.itemConfFile.showFlag = true;
this.$refs.itemConfFile.getList();
},
//
selectBelongTo(row){
const data = {
id: row.id,
attr2: row.attr2,
}
updateBelongTo(data).then(response => {
this.$modal.msgSuccess("分配成功");
});
}
}
};
</script>

@ -34,11 +34,12 @@
<el-table v-loading="loading" :data="hourProList" :span-method="objectSpanMethod" border>
<el-table-column label="序号" type="index" align="center" :index="indexMethod" fixed/>
<el-table-column label="白坯名称" align="center" prop="materialName" min-width="100" fixed/>
<el-table-column label="日期" align="center" prop="dataType" min-width="100" fixed/>
<template v-for="(column, index) in showTitles">
<el-table-column align="center" min-width="120" :prop="column.id" :key="column.id" :label="column.titleName"/>
</template>
</el-table>
<el-table-column label="日期" align="center" prop="dataType" min-width="100" fixed/>
<template v-for="(column, index) in showTitles">
<el-table-column align="center" min-width="120" :prop="column.id" :key="column.id" :label="column.titleName"/>
</template>
<el-table-column label="累计" align="center" prop="rowSum" min-width="100"/>
</el-table>
</el-tab-pane>
<el-tab-pane label="图表" name="second">
<div id="echartss" style="width:1200px;height:450px;"></div>

@ -38,6 +38,7 @@
<template v-for="(column, index) in showTitles">
<el-table-column align="center" min-width="120" :prop="column.id" :key="column.id" :label="column.titleName"/>
</template>
<el-table-column label="累计" align="center" prop="rowSum" min-width="100"/>
</el-table>
</el-tab-pane>
<el-tab-pane label="图表" name="second">

Loading…
Cancel
Save