生产管理接口联调

dev-scheduling
zhangdi 3 months ago
parent 91fd01822d
commit 9f0b77eb89
  1. 14
      src/api/productionManagement/frontTooling.js
  2. 89
      src/views/productionManagement/frontTooling.vue
  3. 318
      src/views/productionManagement/reworkOrder.vue

@ -0,0 +1,14 @@
import request from '@/axios';
//列表接口
export const getList = (current, size, params) => {
return request({
url: '/blade-desk/workOrder/page',
method: 'get',
params: {
...params,
current,
size,
},
});
};
// 准备

@ -1,10 +1,23 @@
<template>
<basic-container>
<!-- 库存汇总 -->
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud"
@row-update="rowUpdate" @row-save="rowSave" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad">
<avue-crud
:option="option"
:table-loading="loading"
:data="data"
v-model="form"
v-model:page="page"
ref="crud"
@row-update="rowUpdate"
@row-save="rowSave"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@current-change="currentChange"
@size-change="sizeChange"
@refresh-change="refreshChange"
@on-load="onLoad"
>
<template #menu-left>
<el-button type="primary" @click="handlePrepare">准备</el-button>
</template>
@ -13,6 +26,7 @@
</template>
<script>
import { getList } from "@/api/productionManagement/frontTooling";
export default {
data() {
return {
@ -65,13 +79,13 @@ export default {
excelBtn: true,
columnSort: true,
showOverflowTooltip: true,
searchLabelPosition:'left',
searchLabelPosition:'left',
searchGutter:24,
searchSpan:6,
menuAlign: 'left',
gridBtn:false,
searchMenuPosition:'right',
searchLabelPosition: 'left',
searchLabelPosition: 'left',
searchGutter: 24,
searchSpan: 6,
menuAlign: 'left',
gridBtn: false,
searchMenuPosition: 'right',
column: [
{
label: '准备状态',
@ -91,9 +105,9 @@ searchMenuPosition:'right',
dicData: [
{
value: 1,
label: '已准备'
}
]
label: '已准备',
},
],
},
{
label: '生产计划号',
@ -293,8 +307,8 @@ searchMenuPosition:'right',
prop: 'createTime',
type: 'date',
searchRange: true,
startPlaceholder:'开始时间',
endPlaceholder:"结束时间",
startPlaceholder: '开始时间',
endPlaceholder: '结束时间',
width: 200,
search: true,
sortable: true,
@ -312,8 +326,8 @@ searchMenuPosition:'right',
prop: 'demandDate',
type: 'date',
searchRange: true,
startPlaceholder:'开始时间',
endPlaceholder:"结束时间",
startPlaceholder: '开始时间',
endPlaceholder: '结束时间',
width: 200,
search: true,
sortable: true,
@ -461,28 +475,28 @@ searchMenuPosition:'right',
},
],
},
]
}
}
],
},
mounted() {
};
},
mounted() {},
methods: {
selectionChange(val) {
this.selectionList = val
this.selectionList = val;
},
handlePrepare() {
if (this.selectionList.length == 0) {
this.$message.error('请先选择数据')
return
this.$message.error('请先选择数据');
return;
}
},
currentChange(currentPage) {
this.page.currentPage = currentPage;
this.onLoad(this.page, this.query);
},
sizeChange(pageSize) {
this.page.pageSize = pageSize;
this.onLoad(this.page, this.query);
},
refreshChange() {
this.onLoad(this.page, this.query);
@ -490,7 +504,7 @@ searchMenuPosition:'right',
searchReset() {
this.query = {};
this.treeDeptId = '';
this.onLoad(this.page);
this.onLoad(this.page, this.query);
},
searchChange(params, done) {
this.query = params;
@ -502,12 +516,21 @@ searchMenuPosition:'right',
this.selectionList = [];
this.$refs.crud.toggleSelection();
},
onLoad() {
this.data = []
this.page.total = this.data.length
}
}
}
onLoad(page, params = {}) {
// this.loading = true;
// getList(
// page.currentPage,
// page.pageSize,
// Object.assign(params, this.query, { yieldType: '1' })
// ).then(res => {
// this.data = res.data.data.records;
// this.loading = false;
// this.page.total = res.data.data.total;
// this.selectionClear();
// });
},
},
};
</script>
<style></style>

@ -1,8 +1,20 @@
<template>
<basic-container>
<avue-crud :option="option" :table-loading="loading" :data="data" v-model:page="page" v-model="form" ref="crud"
@search-change="searchChange" @search-reset="searchReset" @selection-change="selectionChange"
@current-change="currentChange" @size-change="sizeChange" @refresh-change="refreshChange" @on-load="onLoad">
<avue-crud
:option="option"
:table-loading="loading"
:data="data"
v-model:page="page"
v-model="form"
ref="crud"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@current-change="currentChange"
@size-change="sizeChange"
@refresh-change="refreshChange"
@on-load="onLoad"
>
<template #menu="{ row }">
<!-- <el-button type="text">返工工艺</el-button> -->
<el-button type="text" @click="receiveData(row)" v-if="row.status == 0">接收</el-button>
@ -20,7 +32,7 @@ export default {
form: {},
option: {
tip: false,
height: "auto",
height: 'auto',
calcHeight: 32,
columnSort: true,
// simplePage: true,
@ -31,18 +43,18 @@ export default {
tree: false,
border: true,
index: true,
selection: true,
selection: false,
viewBtn: false,
delBtn: false,
addBtn: false,
editBtn: false,
editBtnText: "修改",
viewBtnText: "详情",
addBtnIcon: " ",
viewBtnIcon: " ",
delBtnIcon: " ",
editBtnIcon: " ",
labelWidth: "200px",
editBtnText: '修改',
viewBtnText: '详情',
addBtnIcon: ' ',
viewBtnIcon: ' ',
delBtnIcon: ' ',
editBtnIcon: ' ',
labelWidth: '200px',
dialogWidth: 600,
menuWidth: 80,
dialogClickModal: false,
@ -51,43 +63,17 @@ export default {
searchShowBtn: false,
excelBtn: true,
showOverflowTooltip: true,
align: "center",
searchLabelPosition: "left",
searchLabelPosition: "left",
align: 'center',
searchLabelPosition: 'left',
searchGutter: 24,
searchSpan: 6,
menuAlign: "left",
menuAlign: 'left',
gridBtn: false,
searchMenuPosition: "right",
searchMenuPosition: 'right',
column: [
// {
// label: "",
// prop: "searchCode",
// searchLabelWidth: 150,
// search: true,
// hide: true,
// addDisplay: false,
// viewDisplay: false,
// editDisplay: false,
// sortable: true,
// filter: true,
// addDisplay: false,
// editDisplay: false,
// viewDisplay: false,
// span: 24,
// width: 200,
// rules: [
// {
// required: true,
// message: "",
// trigger: "blur",
// },
// ],
// },
{
label: "返工单号",
prop: "redono",
searchLabelWidth: 150,
label: '返工单号',
prop: 'redono',
search: true,
sortable: true,
filter: true,
@ -96,18 +82,10 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入返工单号",
trigger: "blur",
},
],
},
{
label: "路线编号",
prop: "seqno",
searchLabelWidth: 150,
label: '路线编号',
prop: 'seqno',
search: false,
sortable: true,
filter: true,
@ -116,18 +94,10 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入路线编号",
trigger: "blur",
},
],
},
{
label: "发生单位",
prop: "usedept",
searchLabelWidth: 150,
label: '发生单位',
prop: 'usedept',
search: false,
sortable: true,
filter: true,
@ -136,38 +106,11 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入发生单位",
trigger: "blur",
},
],
},
// {
// label: "",
// prop: "prtno",
// searchLabelWidth: 150,
// search: true,
// sortable: true,
// filter: true,
// addDisplay: false,
// editDisplay: false,
// viewDisplay: false,
// span: 24,
// width: 200,
// rules: [
// {
// required: true,
// message: "",
// trigger: "blur",
// },
// ],
// },
{
label: "零件号",
prop: "prtno",
searchLabelWidth: 150,
label: '零件号',
prop: 'prtno',
search: true,
sortable: true,
filter: true,
@ -176,18 +119,10 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入物料号",
trigger: "blur",
},
],
},
{
label: "数量",
prop: "amount",
searchLabelWidth: 150,
label: '数量',
prop: 'amount',
search: false,
sortable: true,
filter: true,
@ -196,18 +131,10 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入数量",
trigger: "blur",
},
],
},
{
label: "处理意见",
prop: "detail",
searchLabelWidth: 150,
label: '处理意见',
prop: 'detail',
search: false,
sortable: true,
filter: true,
@ -216,18 +143,10 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入处理意见",
trigger: "blur",
},
],
},
{
label: "工艺路线",
prop: "deptcode",
searchLabelWidth: 150,
label: '工艺路线',
prop: 'deptcode',
search: false,
sortable: true,
filter: true,
@ -236,18 +155,10 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入工艺路线",
trigger: "blur",
},
],
},
{
label: "批次号",
prop: "splcode",
searchLabelWidth: 150,
label: '批次号',
prop: 'splcode',
search: true,
sortable: true,
filter: true,
@ -256,18 +167,10 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入批次号",
trigger: "blur",
},
],
},
{
label: "需求交期",
prop: "reqdate",
searchLabelWidth: 150,
label: '需求交期',
prop: 'reqdate',
search: false,
sortable: true,
filter: true,
@ -276,69 +179,34 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入需求日期",
trigger: "blur",
},
],
},
{
label: "接收状态",
prop: "status",
searchLabelWidth: 150,
label: '接收状态',
prop: 'status',
search: true,
sortable: true,
filter: true,
addDisplay: false,
editDisplay: false,
viewDisplay: false,
type: "select",
type: 'select',
dicData: [
{
label: "待接收",
value: "0",
label: '待接收',
value: '0',
},
{
label: "已接收",
value: "1",
label: '已接收',
value: '1',
},
],
span: 24,
width: 200,
rules: [
{
required: true,
message: "请选择接收状态",
trigger: "blur",
},
],
},
// {
// label: "",
// prop: "reqdate",
// searchLabelWidth: 150,
// search: false,
// sortable: true,
// filter: true,
// addDisplay: false,
// editDisplay: false,
// viewDisplay: false,
// span: 24,
// width: 200,
// rules: [
// {
// required: true,
// message: "",
// trigger: "blur",
// },
// ],
// },
{
label: "备注",
prop: "remark",
searchLabelWidth: 150,
label: '备注',
prop: 'remark',
search: false,
sortable: true,
filter: true,
@ -347,67 +215,39 @@ export default {
viewDisplay: false,
span: 24,
width: 200,
rules: [
{
required: true,
message: "请输入备注",
trigger: "blur",
},
],
},
],
},
};
},
mounted() { },
mounted() {},
methods: {
receiveData(row) {
this.$confirm("确定接收此工单?", "提示", {
confirmButtonText: "确认",
cancelButtonText: "取消",
type: "warning",
}).then(() => { });
this.$confirm('确定接收此工单?', '提示', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {});
},
finishData(row) {
this.$confirm("确定完成此工单?", "提示", {
confirmButtonText: "确认",
cancelButtonText: "取消",
type: "warning",
}).then(() => { });
this.$confirm('确定完成此工单?', '提示', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {});
},
onLoad() {
this.data = [
{
id: 1,
redono: "FG202512001",
seqno: "LX001001",
usedept: "生产一部",
prtno: "PJ889901",
amount: 50,
detail: "返工重新校准尺寸,确保关键尺寸公差控制在0.02mm范围内,完成后进行全检",
deptcode: "GYLX-001",
splcode: "PC202512001",
reqdate: "2025-12-25",
status: "0",
remark: "该批次零件因尺寸超差需返工,加急处理,客户12月底提货"
},
{
id: 2,
redono: "FG202512002",
seqno: "LX001002",
usedept: "生产二部",
prtno: "PJ889902",
amount: 120,
detail: "更换损坏的传动配件后重新组装,完成后进行空载/负载双测试,记录测试数据",
deptcode: "GYLX-002",
splcode: "PC202512002",
reqdate: "2025-12-30",
status: "1",
remark: "常规返工批次,无加急要求,按标准流程处理即可"
}
];
// this.loading = true;
// getList(
// page.currentPage,
// page.pageSize,
// Object.assign(params, this.query, { yieldType: '1' })
// ).then(res => {
// this.data = res.data.data.records;
// this.loading = false;
// this.page.total = res.data.data.total;
// this.selectionClear();
// });
},
},
};

Loading…
Cancel
Save