Compare commits
2 Commits
f6782d3728
...
b0446a7eeb
| Author | SHA1 | Date |
|---|---|---|
|
|
b0446a7eeb | 4 months ago |
|
|
22da519443 | 4 months ago |
31 changed files with 14282 additions and 13958 deletions
@ -0,0 +1,13 @@ |
||||
import request from '@/axios'; |
||||
//列表接口
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/pageAllocation', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
}, |
||||
}); |
||||
}; |
||||
@ -0,0 +1,39 @@ |
||||
import request from '@/axios'; |
||||
//列表接口
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/pageException', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
}, |
||||
}); |
||||
}; |
||||
|
||||
//批量关闭
|
||||
export const closeBatchs = ids => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/closeBatch', |
||||
method: 'post', |
||||
data: ids, |
||||
}); |
||||
}; |
||||
//批量合格校验
|
||||
export const confirmBatch = ids => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/confirmBatch', |
||||
method: 'post', |
||||
data: ids, |
||||
}); |
||||
}; |
||||
//批量合格校验
|
||||
export const edit = ids => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/update', |
||||
method: 'post', |
||||
data: ids, |
||||
}); |
||||
}; |
||||
|
||||
@ -0,0 +1,72 @@ |
||||
import request from '@/axios'; |
||||
//列表接口
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/page', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
}, |
||||
}); |
||||
}; |
||||
// 修改
|
||||
export const update = row => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/update', |
||||
method: 'post', |
||||
data: row, |
||||
}); |
||||
}; |
||||
|
||||
|
||||
// 获取详情
|
||||
export const getassayContentDeatils = (params) => { |
||||
return request({ |
||||
url: `/blade-desk/order/yieldOrder/detail`, |
||||
method: 'get', |
||||
params, |
||||
}); |
||||
}; |
||||
|
||||
//批量关闭
|
||||
export const closeBatchs = ids => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/closeBatch', |
||||
method: 'post', |
||||
data: ids, |
||||
}); |
||||
}; |
||||
|
||||
|
||||
// 优先级
|
||||
export const updatePreference = row => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldOrder/updatePreference', |
||||
method: 'post', |
||||
data: row, |
||||
}); |
||||
}; |
||||
|
||||
//下发玻璃
|
||||
export const saveGlassCake = data => { |
||||
return request({ |
||||
url: `/blade-desk/order/yieldPlan/saveGlassCake/${data.yieldPlanId}`, |
||||
method: 'post', |
||||
data: data, |
||||
}); |
||||
}; |
||||
//工艺路线
|
||||
export const getFirstProcess = id => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldPlan/getFirstProcess/'+id, |
||||
method: 'get', |
||||
|
||||
}); |
||||
}; |
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,40 @@ |
||||
import request from '@/axios'; |
||||
//列表接口
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldPlan/page', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
}, |
||||
}); |
||||
}; |
||||
// 修改
|
||||
export const update = row => { |
||||
return request({ |
||||
url: '/blade-desk/order/yieldPlan/update', |
||||
method: 'post', |
||||
data: row, |
||||
}); |
||||
}; |
||||
|
||||
|
||||
// 获取详情
|
||||
export const getassayContentDeatils = (params) => { |
||||
return request({ |
||||
url: `/blade-desk/order/yieldPlan/detail`, |
||||
method: 'get', |
||||
params, |
||||
}); |
||||
}; |
||||
|
||||
//批量关闭
|
||||
export const closeBatchs = ids => { |
||||
return request({ |
||||
url: '/blade-desk/order/plateGoodsRecord/closeBatch', |
||||
method: 'post', |
||||
data: ids, |
||||
}); |
||||
}; |
||||
@ -0,0 +1,47 @@ |
||||
import request from '@/axios'; |
||||
//列表接口
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/blade-desk/order/plateGoodsApply/page', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
}, |
||||
}); |
||||
}; |
||||
//新增
|
||||
export const add = row => { |
||||
return request({ |
||||
url: '/blade-desk/order/plateGoodsApply/save', |
||||
method: 'post', |
||||
data: row, |
||||
}); |
||||
}; |
||||
// 修改
|
||||
export const update = row => { |
||||
return request({ |
||||
url: '/blade-desk/order/plateGoodsRecord/update', |
||||
method: 'post', |
||||
data: row, |
||||
}); |
||||
}; |
||||
//批量审核
|
||||
export const confirmBatch = row => { |
||||
return request({ |
||||
url: '/blade-desk/order/plateGoodsApply/confirmBatch', |
||||
method: 'post', |
||||
data: row, |
||||
}); |
||||
}; |
||||
// 获取详情
|
||||
export const getOrderMoldPlanCaDeatils = (params) => { |
||||
return request({ |
||||
url: `/blade-desk/order/plateGoodsApply/detail`, |
||||
method: 'get', |
||||
params, |
||||
}); |
||||
}; |
||||
|
||||
|
||||
@ -0,0 +1,33 @@ |
||||
import request from '@/axios'; |
||||
//列表接口
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/blade-desk/order/assayContent/page', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
}, |
||||
}); |
||||
}; |
||||
//新增
|
||||
export const add = row => { |
||||
return request({ |
||||
url: '/blade-desk/order/assayContent/save', |
||||
method: 'post', |
||||
data: row, |
||||
}); |
||||
}; |
||||
|
||||
|
||||
// 获取详情
|
||||
export const getassayContentDeatils = (params) => { |
||||
return request({ |
||||
url: `/blade-desk/order/assayContent/detail`, |
||||
method: 'get', |
||||
params, |
||||
}); |
||||
}; |
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,194 +1,230 @@ |
||||
<template> |
||||
<el-dialog v-model="setCrewShow" :before-close="cancel" title="查看工艺路线" width="70%" @open="open" @opened="opened"> |
||||
<el-card> |
||||
<el-descriptions :column="1" size="medium" class="margin-top" border> |
||||
<el-descriptions-item label="一级工艺路线"> |
||||
|
||||
<!-- {{ craftData.primaryCraft }} -->999 |
||||
</el-descriptions-item> |
||||
</el-descriptions> |
||||
</el-card> |
||||
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud" |
||||
@row-del="rowDel" @search-change="searchChange" @search-reset="searchReset" |
||||
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange" |
||||
@refresh-change="refreshChange" @on-load="onLoad"> |
||||
</avue-crud> |
||||
</el-dialog> |
||||
<el-dialog |
||||
v-model="setCrewShow" |
||||
:before-close="cancel" |
||||
title="查看工艺路线" |
||||
width="70%" |
||||
@open="open" |
||||
@opened="opened" |
||||
> |
||||
<el-card> |
||||
<el-descriptions :column="1" size="medium" class="margin-top" border> |
||||
<el-descriptions-item label="一级工艺路线"> |
||||
<!-- {{ craftData.primaryCraft }} -->{{ primaryCraft }} |
||||
</el-descriptions-item> |
||||
</el-descriptions> |
||||
</el-card> |
||||
<avue-crud |
||||
:option="option" |
||||
:table-loading="loading" |
||||
:data="data" |
||||
v-model="form" |
||||
v-model:page="page" |
||||
ref="crud" |
||||
@row-del="rowDel" |
||||
@search-change="searchChange" |
||||
@search-reset="searchReset" |
||||
@selection-change="selectionChange" |
||||
@current-change="currentChange" |
||||
@size-change="sizeChange" |
||||
@refresh-change="refreshChange" |
||||
@on-load="onLoad" |
||||
> |
||||
</avue-crud> |
||||
</el-dialog> |
||||
</template> |
||||
<script> |
||||
import { getFirstProcess } from '@/api/orderManagement/planYieIdOrder'; |
||||
export default { |
||||
components: {}, |
||||
props: { |
||||
// 新增:接收父组件的唯一标识(如父组件名称或ID) |
||||
sourceId: { |
||||
type: String, |
||||
required: true, // 强制要求父组件传入,确保唯一性 |
||||
description: "调用当前组件的父组件标识,用于区分来源" |
||||
}, |
||||
isOpen: { |
||||
type: Boolean, |
||||
default: false |
||||
}, |
||||
rowItem: { |
||||
type: Object, |
||||
default: () => { } |
||||
} |
||||
components: {}, |
||||
props: { |
||||
// 新增:接收父组件的唯一标识(如父组件名称或ID) |
||||
sourceId: { |
||||
type: String, |
||||
required: true, // 强制要求父组件传入,确保唯一性 |
||||
description: '调用当前组件的父组件标识,用于区分来源', |
||||
}, |
||||
isOpen: { |
||||
type: Boolean, |
||||
default: false, |
||||
}, |
||||
data() { |
||||
return { |
||||
craftData: {}, |
||||
height: 350, |
||||
firseqList: [], |
||||
setCrewShow: false, |
||||
query: {}, |
||||
loading: true, |
||||
page: { |
||||
pageSize: 10, |
||||
currentPage: 1, |
||||
total: 0, |
||||
}, |
||||
option: { |
||||
tip: false, |
||||
simplePage: true, |
||||
searchShow: true, |
||||
searchMenuSpan: 6, |
||||
searchIcon: true, |
||||
searchIndex: 3, |
||||
tree: false, |
||||
border: true, |
||||
index: true, |
||||
selection: false, |
||||
viewBtn: false, |
||||
delBtn: false, |
||||
addBtn: false, |
||||
editBtnText: '修改', |
||||
labelWidth: 120, |
||||
// searchLabelWidth: 120, |
||||
menuWidth: 330, |
||||
dialogWidth: 900, |
||||
dialogClickModal: false, |
||||
searchEnter: true, |
||||
excelBtn: false, |
||||
filterBtn: false, |
||||
searchShowBtn: false, |
||||
excelBtn: false, |
||||
index: true, |
||||
showOverflowTooltip: true, |
||||
menu: false, |
||||
// refreshBtn:false, |
||||
// columnBtn:false, |
||||
// gridBtn :false, |
||||
header: false, |
||||
searchLabelPosition: 'left', |
||||
searchLabelPosition: 'left', |
||||
searchGutter: 24, |
||||
searchSpan: 6, |
||||
menuAlign: 'left', |
||||
gridBtn: false, |
||||
searchMenuPosition: 'right', |
||||
addBtnIcon: ' ', |
||||
viewBtnIcon: ' ', |
||||
delBtnIcon: ' ', |
||||
editBtnIcon: ' ', |
||||
align: 'center', |
||||
column: [ |
||||
{ |
||||
label: '零件号', |
||||
prop: 'partCode', |
||||
search: false, |
||||
width: 150, |
||||
}, |
||||
{ |
||||
label: '零件名称', |
||||
prop: 'partName', |
||||
search: false, |
||||
width: 170, |
||||
}, |
||||
{ |
||||
label: '一级工艺计划(A)号', |
||||
prop: 'firpp', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工艺计划名称', |
||||
prop: 'firppName', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工序(B)号', |
||||
prop: 'firseq', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工序名称', |
||||
prop: 'firseqName', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工序序号', |
||||
prop: 'firseqNo', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
], |
||||
}, |
||||
rowItem: { |
||||
type: Object, |
||||
default: () => {}, |
||||
}, |
||||
id: { |
||||
type: String, |
||||
}, |
||||
}, |
||||
data() { |
||||
return { |
||||
primaryCraft: null, |
||||
craftData: {}, |
||||
height: 350, |
||||
firseqList: [], |
||||
setCrewShow: false, |
||||
query: {}, |
||||
loading: true, |
||||
page: { |
||||
pageSize: 10, |
||||
currentPage: 1, |
||||
total: 0, |
||||
}, |
||||
option: { |
||||
tip: false, |
||||
simplePage: true, |
||||
searchShow: true, |
||||
searchMenuSpan: 6, |
||||
searchIcon: true, |
||||
searchIndex: 3, |
||||
tree: false, |
||||
border: true, |
||||
index: true, |
||||
selection: false, |
||||
viewBtn: false, |
||||
delBtn: false, |
||||
addBtn: false, |
||||
editBtnText: '修改', |
||||
labelWidth: 120, |
||||
// searchLabelWidth: 120, |
||||
menuWidth: 330, |
||||
dialogWidth: 900, |
||||
dialogClickModal: false, |
||||
searchEnter: true, |
||||
excelBtn: false, |
||||
filterBtn: false, |
||||
searchShowBtn: false, |
||||
excelBtn: false, |
||||
index: true, |
||||
showOverflowTooltip: true, |
||||
menu: false, |
||||
// refreshBtn:false, |
||||
// columnBtn:false, |
||||
// gridBtn :false, |
||||
header: false, |
||||
searchLabelPosition: 'left', |
||||
searchLabelPosition: 'left', |
||||
searchGutter: 24, |
||||
searchSpan: 6, |
||||
menuAlign: 'left', |
||||
gridBtn: false, |
||||
searchMenuPosition: 'right', |
||||
addBtnIcon: ' ', |
||||
viewBtnIcon: ' ', |
||||
delBtnIcon: ' ', |
||||
editBtnIcon: ' ', |
||||
align: 'center', |
||||
column: [ |
||||
{ |
||||
label: '零件号', |
||||
prop: 'partCode', |
||||
search: false, |
||||
width: 150, |
||||
}, |
||||
{ |
||||
label: '零件名称', |
||||
prop: 'partName', |
||||
search: false, |
||||
width: 170, |
||||
}, |
||||
{ |
||||
label: '一级工艺计划(A)号', |
||||
prop: 'firpp', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工艺计划名称', |
||||
prop: 'firppName', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工序(B)号', |
||||
prop: 'firseq', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工序名称', |
||||
prop: 'firseqName', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
{ |
||||
label: '一级工序序号', |
||||
prop: 'firseqNo', |
||||
search: false, |
||||
width: 180, |
||||
}, |
||||
], |
||||
}, |
||||
|
||||
data: [], |
||||
}; |
||||
data: [], |
||||
}; |
||||
}, |
||||
methods: { |
||||
async open() { |
||||
console.log(this.id) |
||||
try { |
||||
const res = await getFirstProcess(this.id ); |
||||
if (res.status === 200) { |
||||
this.primaryCraft = '一级工艺'; |
||||
this.data = res.data.records1; |
||||
} |
||||
} catch (err) { |
||||
console.log(err); |
||||
} |
||||
|
||||
if (this.sourceId === 'sinTerYieIdOrder') { |
||||
console.log('由sinTerYieIdOrder组件打开'); |
||||
// 父组件A的专属逻辑 |
||||
} |
||||
if (this.sourceId === 'planYieIdOrder') { |
||||
console.log('由planYieIdOrder父组件打开'); |
||||
// 父组件B的专属逻辑 |
||||
} |
||||
if (this.sourceId === 'plannedOrder') { |
||||
console.log('由plannedOrder111父组件打开'); |
||||
// 父组件B的专属逻辑 |
||||
} |
||||
if (this.sourceId === 'sinTerOrder') { |
||||
console.log('sinTerOrder'); |
||||
// 父组件B的专属逻辑 |
||||
} |
||||
// this.$ajax |
||||
// .get('planOrder/getCraftData/' + this.rowItem.poId) |
||||
// .then((res) => { |
||||
// if (this.$ifAjax(res)) { |
||||
// this.craftData = res.data; |
||||
// } |
||||
// }); |
||||
// this.$ajax |
||||
// .get('planOrder/getFirseqData/' + this.rowItem.partCode) |
||||
// .then((res1) => { |
||||
// if (this.$ifAjax(res1)) { |
||||
// this.firseqList = res1.data; |
||||
// } |
||||
// }); |
||||
}, |
||||
methods: { |
||||
open() { |
||||
if (this.sourceId === 'sinTerYieIdOrder') { |
||||
console.log('由sinTerYieIdOrder组件打开'); |
||||
// 父组件A的专属逻辑 |
||||
} if (this.sourceId === 'planYieIdOrder') { |
||||
console.log('由planYieIdOrder父组件打开'); |
||||
// 父组件B的专属逻辑 |
||||
} if (this.sourceId === 'plannedOrder') { |
||||
console.log('由plannedOrder111父组件打开'); |
||||
// 父组件B的专属逻辑 |
||||
} if (this.sourceId === 'sinTerOrder') { |
||||
console.log('sinTerOrder'); |
||||
// 父组件B的专属逻辑 |
||||
} |
||||
// this.$ajax |
||||
// .get('planOrder/getCraftData/' + this.rowItem.poId) |
||||
// .then((res) => { |
||||
// if (this.$ifAjax(res)) { |
||||
// this.craftData = res.data; |
||||
// } |
||||
// }); |
||||
// this.$ajax |
||||
// .get('planOrder/getFirseqData/' + this.rowItem.partCode) |
||||
// .then((res1) => { |
||||
// if (this.$ifAjax(res1)) { |
||||
// this.firseqList = res1.data; |
||||
// } |
||||
// }); |
||||
}, |
||||
cancel() { |
||||
this.setCrewShow = false; |
||||
// this.$emit('cancel', false); |
||||
// 通知父组件时可携带sourceId,方便父组件确认 |
||||
this.$emit('cancel', { |
||||
isOpen: false, |
||||
sourceId: this.sourceId |
||||
}); |
||||
}, |
||||
onLoad() { |
||||
this.loading = false |
||||
}, |
||||
cancel() { |
||||
this.setCrewShow = false; |
||||
// this.$emit('cancel', false); |
||||
// 通知父组件时可携带sourceId,方便父组件确认 |
||||
this.$emit('cancel', { |
||||
isOpen: false, |
||||
sourceId: this.sourceId, |
||||
}); |
||||
}, |
||||
mounted() { |
||||
this.setCrewShow = this.isOpen |
||||
console.log(this.isOpen, 90) |
||||
console.log(this.setCrewShow, 80) |
||||
onLoad() { |
||||
this.loading = false; |
||||
}, |
||||
} |
||||
}, |
||||
mounted() { |
||||
this.setCrewShow = this.isOpen; |
||||
console.log(this.isOpen, 90); |
||||
console.log(this.setCrewShow, 80); |
||||
}, |
||||
}; |
||||
</script> |
||||
<style lang="scss" scoped></style> |
||||
|
||||
@ -1,233 +1,269 @@ |
||||
<template> |
||||
<el-dialog title="修改" append-to-body :modelValue="openShow" width="60%" @close="closeDialog"> |
||||
<el-dialog title="修改" append-to-body :modelValue="openShow" width="60%" @close="closeDialog"> |
||||
<el-form :model="formData" :rules="rules" ref="formRules" :label-width="120"> |
||||
<el-row :gutter="24"> |
||||
<el-col :span="12"> |
||||
<el-form-item label="计划单号" prop="ypCode"> |
||||
<el-input v-model="formData.ypCode" disabled /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="生产单号" prop="yoCode"> |
||||
<el-input v-model="formData.yoCode" disabled /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="零件号" prop="partCode"> |
||||
<el-select v-model="formData.partCode" placeholder="请输入" disabled> |
||||
<el-option label="零件1" value="1" /> |
||||
<el-option label="零件12" value="2" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="批次号" prop="batchNo"> |
||||
<el-input v-model="formData.batchNo" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="流转编号" prop="roamNo"> |
||||
<el-select v-model="formData.roamNo" placeholder="请输入"> |
||||
<el-option label="B090989" value="1" /> |
||||
<el-option label="B0909889898" value="2" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="下级B号" prop="roamNo"> |
||||
<el-input v-model="formData.roamNo" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="订单类型" prop="yieldType"> |
||||
<el-select v-model="formData.yieldType" placeholder="请选择"> |
||||
<el-option :value="1" label="热表订单" /> |
||||
<el-option :value="2" label="烧结订单" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="产品型号" prop="productType"> |
||||
<el-input v-model="formData.productType" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="产品名称" prop="productName"> |
||||
<el-input v-model="formData.productName" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="工艺路线" prop="primaryCraft"> |
||||
<el-input v-model="formData.primaryCraft" disabled /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="镀种" prop="plate"> |
||||
<el-input v-model="formData.plate" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="生产标识" prop="productIdent"> |
||||
<el-select v-model="formData.productIdent" placeholder="请选择"> |
||||
<el-option :value="1" label="JI-JII" /> |
||||
<el-option :value="2" label="JIII" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="使用部门" prop="useDept"> |
||||
<el-input v-model="formData.useDept" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="数量" prop="ypQty"> |
||||
<el-input v-model="formData.ypQty" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="面积(d㎡)" prop="ypArea"> |
||||
<el-input v-model="formData.ypArea" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="需求交期" prop="demandDate"> |
||||
<el-date-picker |
||||
v-model="formData.demandDate" |
||||
placeholder="请选择" |
||||
type="datetime" |
||||
format="YYYY-MM-DD HH:mm:ss" |
||||
value-format="YYYY-MM-DD HH:mm:ss" |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="计划员" prop="planUser"> |
||||
<el-input v-model="formData.planUser" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="计划下达时间" prop="releaseDate"> |
||||
<el-date-picker |
||||
v-model="formData.releaseDate" |
||||
placeholder="请选择" |
||||
type="datetime" |
||||
format="YYYY-MM-DD HH:mm:ss" |
||||
value-format="YYYY-MM-DD HH:mm:ss" |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="24"> |
||||
<el-form-item label="备注" prop="memo"> |
||||
<el-input |
||||
v-model="formData.memo" |
||||
:rows="2" |
||||
type="textarea" |
||||
minlength="0" |
||||
maxlength="200" |
||||
show-word-limit |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
</el-row> |
||||
</el-form> |
||||
|
||||
<el-form :model="formData" :rules="rules" :label-width="120" > |
||||
<el-row :gutter="24"> |
||||
<el-col :span="12"> |
||||
<el-form-item label="计划单号" prop="poCode"> |
||||
<el-input v-model="formData.poCode" disabled /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="生产单号" prop="yoCode"> |
||||
<el-input v-model="formData.yoCode" disabled/> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="零件号" prop="partId"> |
||||
<el-select v-model="formData.partId" placeholder="请输入" disabled> |
||||
<el-option |
||||
label="零件1" |
||||
value="1" |
||||
/> |
||||
<el-option |
||||
label="零件12" |
||||
value="2" |
||||
/> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="批次号" prop="batchNo"> |
||||
<el-input v-model="formData.batchNo" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="流转编号" prop="roamNo"> |
||||
<el-select v-model="formData.roamNo" placeholder="请输入" > |
||||
<el-option |
||||
label="B090989" |
||||
value="1" |
||||
/> |
||||
<el-option |
||||
label="B0909889898" |
||||
value="2" |
||||
/> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="下级B号" prop="nextRoam"> |
||||
<el-input v-model="formData.nextRoam" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="订单类型" prop="yieldType"> |
||||
<el-select v-model="formData.yieldType" placeholder="请选择"> |
||||
<el-option :value="1" label="热表订单" /> |
||||
<el-option :value="2" label="烧结订单" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="产品型号" prop="productType"> |
||||
<el-input v-model="formData.productType" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="产品名称" prop="partName"> |
||||
<el-input v-model="formData.partName" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="工艺路线" prop="primaryCraft"> |
||||
<el-input v-model="formData.primaryCraft" disabled /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="镀种" prop="plate"> |
||||
<el-input v-model="formData.plate" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="生产标识" prop="pqId"> |
||||
<el-select v-model="formData.pqId" placeholder="请选择"> |
||||
<el-option :value="1" label="JI-JII" /> |
||||
<el-option :value="2" label="JIII" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="使用部门" prop="useDept"> |
||||
<el-input v-model="formData.useDept" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="数量" prop="poQty"> |
||||
<el-input v-model="formData.poQty" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="面积(d㎡)" prop="poArea"> |
||||
<el-input v-model="formData.poArea" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="需求交期" prop="demandDate"> |
||||
<el-date-picker |
||||
v-model="formData.demandDate" |
||||
placeholder="请选择" |
||||
type="date" |
||||
value-format="yyyy-MM-dd" |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="计划员" prop="planUser"> |
||||
<el-input v-model="formData.planUser" /> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="计划下达时间" prop="releaseDate"> |
||||
<el-date-picker |
||||
v-model="formData.releaseDate" |
||||
placeholder="请选择" |
||||
type="date" |
||||
value-format="yyyy-MM-dd" |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="24"> |
||||
<el-form-item label="备注" prop="memo"> |
||||
<el-input |
||||
v-model="formData.memo" |
||||
:rows="2" |
||||
type="textarea" |
||||
minlength="0" |
||||
maxlength="200" |
||||
show-word-limit |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
</el-row> |
||||
|
||||
</el-form> |
||||
|
||||
<template #footer> |
||||
<span class="dialog-footer"> |
||||
<el-button @click="closeDialog">取 消</el-button> |
||||
<el-button type="primary" @click="submit">确 定</el-button> |
||||
</span> |
||||
</template> |
||||
</el-dialog> |
||||
<template #footer> |
||||
<span class="dialog-footer"> |
||||
<el-button @click="closeDialog">取 消</el-button> |
||||
<el-button type="primary" @click="submit">确 定</el-button> |
||||
</span> |
||||
</template> |
||||
</el-dialog> |
||||
</template> |
||||
<script> |
||||
import { update } from '@/api/orderManagement/planYieIdOrder'; |
||||
export default { |
||||
props: { |
||||
showDialog: { |
||||
type: Boolean, |
||||
default: false |
||||
}, |
||||
moldAddMore: { |
||||
type: Boolean, |
||||
default: false |
||||
} |
||||
props: { |
||||
showDialog: { |
||||
type: Boolean, |
||||
default: false, |
||||
}, |
||||
data() { |
||||
return { |
||||
openShow: false, |
||||
tableData: [], |
||||
formData:{ |
||||
|
||||
}, |
||||
rules:{ |
||||
poCode: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
yoCode: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' }, |
||||
// { validator: checkYoCode, trigger: 'blur' }, |
||||
], |
||||
partId: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
pqId: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
useDept: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
poQty: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
demandDate: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
planUser: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
releaseDate: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
moldAddMore: { |
||||
type: Boolean, |
||||
default: false, |
||||
}, |
||||
id: { |
||||
type: String, |
||||
default: false, |
||||
}, |
||||
}, |
||||
data() { |
||||
return { |
||||
openShow: false, |
||||
tableData: [], |
||||
formData: {}, |
||||
rules: { |
||||
ypCode: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
yoCode: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' }, |
||||
// { validator: checkYoCode, trigger: 'blur' }, |
||||
], |
||||
partCode: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
productIdent: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
useDept: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
ypQty: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
demandDate: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
planUser: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
releaseDate: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
|
||||
batchNo: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
cardNo: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
roamNo: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
yieldType: [ |
||||
{ required: true, message: '请输入', trigger: 'blur' } |
||||
], |
||||
} |
||||
} |
||||
batchNo: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
cardNo: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
roamNo: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
yieldType: [{ required: true, message: '请输入', trigger: 'blur' }], |
||||
}, |
||||
}; |
||||
}, |
||||
mounted() { |
||||
this.openShow = this.showDialog; |
||||
this.formData = { |
||||
partCode: 1, |
||||
yoCode: 'WO-98978789988', |
||||
batchNo: 'Y0232511359', |
||||
businessType: -1, |
||||
businessTypeTitle: null, |
||||
cardNo: '1022413231', |
||||
craftId: null, |
||||
curStatus: 0, |
||||
curStatusTitle: '待接收', |
||||
custodian: '肖盼盼', |
||||
demandDate: '2025-11-18', |
||||
dsCraft: { craftId: 59361, craftNo: 'C000000' }, |
||||
dsPart: { partCode: '21E8-900-363-H1', partCode: 1, partName: 'M2 螺钉' }, |
||||
entrustDept: '采购与物流中心 (成件)', |
||||
failureMan: { |
||||
accountId: null, |
||||
card: null, |
||||
createTime: null, |
||||
curStatus: 1, |
||||
deleted: false, |
||||
deptName: null, |
||||
}, |
||||
failureMemo: null, |
||||
failureTime: null, |
||||
fatherVoid: null, |
||||
keyValue: 4490279, |
||||
kitPreparationMan: { |
||||
accountId: null, |
||||
card: null, |
||||
createTime: null, |
||||
curStatus: 1, |
||||
deleted: false, |
||||
deptName: null, |
||||
}, |
||||
kitPreparationTime: null, |
||||
manualIncrease: false, |
||||
memo: null, |
||||
newlevFlag: '采购', |
||||
nextRoom: null, |
||||
nextRoomName: null, |
||||
partCode: '21E8-900-363-H1', |
||||
partName: 'M2 螺钉', |
||||
pdmUrl: null, |
||||
pkDate: null, |
||||
pkUsername: null, |
||||
planUser: '申强', |
||||
plate: 'Ct.P', |
||||
ypArea: 0.0170467129, |
||||
ypCode: 'WO-N251174111', |
||||
poMemo: 'DZ', |
||||
poProdLine: 'J303', |
||||
ypQty: 22, |
||||
primaryCraft: '库 1-1 (机加)-4 (表)- 库 2', |
||||
priority: 1, |
||||
prodident: 'JII', |
||||
produceBool: false, |
||||
productType: null, |
||||
}; |
||||
}, |
||||
methods: { |
||||
closeDialog() { |
||||
this.openShow = false; |
||||
this.$emit('closeDialog'); |
||||
}, |
||||
mounted() { |
||||
this.openShow = this.showDialog |
||||
this.formData={ |
||||
"partId": 1,yoCode:"WO-98978789988","batchNo": "Y0232511359","businessType": -1,"businessTypeTitle": null,"cardNo": "1022413231","craftId": null,"curStatus": 0,"curStatusTitle": "待接收","custodian": "肖盼盼","demandDate": "2025-11-18","dsCraft": {"craftId": 59361, "craftNo": "C000000"},"dsPart": { "partCode": "21E8-900-363-H1", "partId": 1, "partName": "M2 螺钉" },"entrustDept": "采购与物流中心 (成件)","failureMan": { "accountId": null, "card": null, "createTime": null, "curStatus": 1, "deleted": false, "deptName": null },"failureMemo": null,"failureTime": null,"fatherVoid": null,"keyValue": 4490279,"kitPreparationMan": { "accountId": null, "card": null, "createTime": null, "curStatus": 1, "deleted": false, "deptName": null },"kitPreparationTime": null,"manualIncrease": false,"memo": null,"newlevFlag": "采购","nextRoom": null,"nextRoomName": null,"partCode": "21E8-900-363-H1","partName": "M2 螺钉","pdmUrl": null,"pkDate": null,"pkUsername": null,"planUser": "申强","plate": "Ct.P","poArea": 0.0170467129,"poCode": "WO-N251174111","poMemo": "DZ","poProdLine": "J303","poQty": 22,"primaryCraft": "库 1-1 (机加)-4 (表)- 库 2","priority": 1,"prodident": "JII","produceBool": false,"productType": null, |
||||
submit() { |
||||
this.$refs.formRules.validate(valid => { |
||||
if (valid) { |
||||
update(this.formData).then(res => { |
||||
console.log(res); |
||||
if(res.code===200){ |
||||
this.openShow = false; |
||||
this.$emit("closeDialog",true) |
||||
|
||||
} |
||||
}); |
||||
} |
||||
}); |
||||
}, |
||||
methods: { |
||||
closeDialog() { |
||||
this.openShow = false |
||||
this.$emit('closeDialog'); |
||||
}, |
||||
|
||||
} |
||||
} |
||||
}, |
||||
}; |
||||
</script> |
||||
<style lang="scss" scoped></style> |
||||
<style lang="scss" scoped></style> |
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,155 @@ |
||||
<template> |
||||
<el-dialog |
||||
title="详情" |
||||
append-to-body |
||||
:modelValue="addDialog" |
||||
width="90%" |
||||
@close="closeDialog" |
||||
@open="open" |
||||
> |
||||
<el-descriptions :column="4" border title="物料需求信息" :label-width="150"> |
||||
<el-descriptions-item label="作业中心">{{ |
||||
addForm.bsWorkCenter?.wcName |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="建立人员">{{ addForm.createUser }}</el-descriptions-item> |
||||
<el-descriptions-item label="建立时间">{{ addForm.createTime }}</el-descriptions-item> |
||||
|
||||
<el-descriptions-item label="物料编码">{{ addForm.goodsCode }}</el-descriptions-item> |
||||
<el-descriptions-item label="班组实际消耗(克)">{{ |
||||
addForm.teamActualConsumption |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="班组预添加(克)">{{ |
||||
addForm.teamPreAddGram |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="物料名称">{{ addForm.goodsName }}</el-descriptions-item> |
||||
<el-descriptions-item label="可使用定额(克)">{{ |
||||
addForm.usableQuotaGram |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="累计结余(克)">{{ |
||||
addForm.accumulatedBalanceGram |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="本次添加涉及单号">{{ |
||||
addForm.involveCode |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="本次剩余单号余量">{{ |
||||
addForm.involveCode |
||||
}}</el-descriptions-item> |
||||
</el-descriptions> |
||||
<el-descriptions |
||||
class="margin-top" |
||||
:column="4" |
||||
border |
||||
title="审批信息" |
||||
v-if="addForm.bsWorkCenter" |
||||
> |
||||
<template v-for="(item,index) in addForm.bsWorkCenter" :key="index"> |
||||
<el-descriptions-item label="审批人">{{ |
||||
item.approvalMan |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="审批时间">{{ |
||||
item.approvalTime |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="审批结果">{{ |
||||
item.approvalStatus |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item label="审批意见">{{ |
||||
item.approvalMemo |
||||
}}</el-descriptions-item> |
||||
</template> |
||||
</el-descriptions> |
||||
<el-descriptions class="margin-top" :column="4" border title="订单信息"> </el-descriptions> |
||||
<el-table :data="tableData"> |
||||
<el-table-column label="槽号" prop="slot" align="center"></el-table-column> |
||||
<el-table-column label="化验值" prop="testVal" align="center"></el-table-column> |
||||
<el-table-column label="申报添加金钾(克)" prop="saveGoldVal" align="center"></el-table-column> |
||||
<el-table-column |
||||
label="申报添加银钾(克)" |
||||
prop="saveSilverVal" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column label="理论值" prop="saveBoardVal" align="center"></el-table-column> |
||||
</el-table> |
||||
</el-dialog> |
||||
</template> |
||||
|
||||
<script> |
||||
|
||||
import { getassayContentDeatils } from '@/api/productionManagement/assayedContent'; |
||||
export default { |
||||
props: { |
||||
addDialog: { |
||||
type: Boolean, |
||||
default: false, |
||||
}, |
||||
id: { |
||||
type: String, |
||||
}, |
||||
}, |
||||
data() { |
||||
return { |
||||
addForm: {}, |
||||
sumAvailable: '0.0', |
||||
tableData: [], |
||||
}; |
||||
}, |
||||
mounted() {}, |
||||
methods: { |
||||
async open() { |
||||
//接口暂无 |
||||
console.log(this.id, 'zz'); |
||||
try { |
||||
const res = await getassayContentDeatils({ id: this.id }); |
||||
if (res.code == 200) { |
||||
this.detailForm = res.data.detailForm; |
||||
this.tableData = res.data.list; |
||||
} |
||||
} catch (err) { |
||||
console.log(err); |
||||
} |
||||
this.addForm = { |
||||
bsWorkCenter:[ { |
||||
wcName: '电镀作业中心A区', |
||||
approvalMan: '张三(车间主管)', |
||||
approvalTimeFirst: '2025-12-01 09:30:25', |
||||
approvalResultFirst: '通过', |
||||
approvalOpinionFirst: '物料消耗数据核对无误,预添加量在定额范围内,同意审批', |
||||
approverSecond: '李四(生产经理)', |
||||
approvalTime: '2025-12-01 14:15:40', |
||||
approvalMemo: '通过', |
||||
approvalOpinionSecond: '同意车间主管意见,按计划执行物料添加', |
||||
approvalStatus:"" |
||||
}], |
||||
createUser: '王五(统计员)', |
||||
createTime: '2025-11-30 16:20:10', |
||||
goodsCode: 'WL-DJ-001-2025', |
||||
teamActualConsumption: 1856.7, |
||||
teamPreAddGram: 2000.0, |
||||
goodsName: '氰化金钾溶液(20%)', |
||||
usableQuotaGram: 4500.5, |
||||
accumulatedBalanceGram: 987.2, |
||||
currentAddRelatedOrderNo: 'OD-202512001', |
||||
currentRemainingOrderQuota: 1560.8, |
||||
}; |
||||
this.tableData = [ |
||||
{ slot: 5, testVal: 1.85, saveGoldVal: 0.0, saveSilverVal: 850.2, saveBoardVal: 848.5 }, |
||||
{ slot: 6, testVal: 1.88, saveGoldVal: 0.0, saveSilverVal: 880.7, saveBoardVal: 879.2 }, |
||||
{ slot: 7, testVal: 1.82, saveGoldVal: 0.0, saveSilverVal: 820.4, saveBoardVal: 819.0 }, |
||||
{ slot: 8, testVal: 1.86, saveGoldVal: 0.0, saveSilverVal: 860.9, saveBoardVal: 859.3 }, |
||||
]; |
||||
}, |
||||
closeDialog() { |
||||
this.$emit('closeDialog'); |
||||
}, |
||||
}, |
||||
}; |
||||
</script> |
||||
|
||||
<style lang="scss" scoped> |
||||
.margin-top { |
||||
margin-top: 24px; |
||||
} |
||||
|
||||
:deep(.is-bordered-content) { |
||||
width: 280px; |
||||
} |
||||
</style> |
||||
@ -1,180 +1,189 @@ |
||||
<template> |
||||
<el-dialog title="需求申报" append-to-body :modelValue="showDialog" width="80%" @close="closeDialog" @open="open" fullscreen> |
||||
<el-form :inline="true" v-model="submitForm"> |
||||
<el-form-item label="银钾系数" prop="coefficient" v-if="searchForm.goodsType == 6"> |
||||
<el-input placeholder="请输入银钾系数" v-model="submitForm.coefficient"></el-input> |
||||
</el-form-item> |
||||
<el-form-item :label="labelValue + '需求量'" prop="" v-if="searchForm.goodsType == 3"> |
||||
<el-input placeholder="请输入需求量" v-model="submitForm.goodsQuantity"></el-input> |
||||
</el-form-item> |
||||
<el-form-item label="银钾需求量" prop="saveBoardVal" v-if="searchForm.goodsType == 6"> |
||||
<el-input placeholder="请输入银钾需求量" v-model="submitForm.saveBoardVal" ></el-input> |
||||
</el-form-item> |
||||
<!-- <el-form-item> |
||||
<el-dialog |
||||
title="需求申报" |
||||
append-to-body |
||||
:modelValue="showDialog" |
||||
width="80%" |
||||
@close="closeDialog" |
||||
@open="open" |
||||
fullscreen |
||||
> |
||||
<el-form :inline="true" v-model="submitForm"> |
||||
<el-form-item label="银钾系数" prop="coefficient" v-if="searchForm.goodsType == 6"> |
||||
<el-input placeholder="请输入银钾系数" v-model="submitForm.coefficient"></el-input> |
||||
</el-form-item> |
||||
<el-form-item :label="labelValue + '需求量'" prop="" v-if="searchForm.goodsType == 3"> |
||||
<el-input placeholder="请输入需求量" v-model="submitForm.goodsQuantity"></el-input> |
||||
</el-form-item> |
||||
<el-form-item label="银钾需求量" prop="saveBoardVal" v-if="searchForm.goodsType == 6"> |
||||
<el-input placeholder="请输入银钾需求量" v-model="submitForm.saveBoardVal"></el-input> |
||||
</el-form-item> |
||||
<!-- <el-form-item> |
||||
<el-button type="primary" @click="onSubmit">提 交</el-button> |
||||
</el-form-item> --> |
||||
</el-form> |
||||
<el-tag type="primary" style="width: 100%; display: block; line-height: 22px" |
||||
>选择XX个订单 合计:物料需求量:711.00克</el-tag |
||||
> |
||||
<div style="border: 1px solid #ccc; padding: 20px 0px"> |
||||
<div> |
||||
<el-form :inline="true" v-model="searchForm" label-width="90px"> |
||||
<el-form-item label="作业中心" prop="wcId"> |
||||
<el-select style="width: 182px" v-model="searchForm.wcId" placeholder="请选择作业中心"> |
||||
<el-option label="作业中心一" value="1"></el-option> |
||||
<el-option label="作业中心二" value="2"></el-option> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="物料类型" prop="goodsType"> |
||||
<el-radio-group v-model="searchForm.goodsType" @input="changeType"> |
||||
<el-radio :label="3">金钾</el-radio> |
||||
<el-radio :label="6">银钾</el-radio> |
||||
</el-radio-group> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-checkbox v-model="searchForm.checked">允许使用半月以上的数据</el-checkbox> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-button type="primary" @click="onSearch" :loading="loading">查 询</el-button> |
||||
</el-form-item> |
||||
</el-form> |
||||
<el-tag type="primary" style="width:100%;display:block;line-height:22px">选择XX个订单 合计:物料需求量:711.00克</el-tag> |
||||
<div style="border: 1px solid #ccc; padding: 20px 0px;"> |
||||
<div> |
||||
<el-form :inline="true" v-model="searchForm" label-width="90px"> |
||||
<el-form-item label="作业中心" prop="workCenter"> |
||||
<el-select style="width: 182px;" v-model="searchForm.workCenter" placeholder="请选择作业中心"> |
||||
<el-option label="作业中心一" value="1"></el-option> |
||||
<el-option label="作业中心二" value="2"></el-option> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="物料类型" prop="goodsType"> |
||||
<el-radio-group v-model="searchForm.goodsType" @input="changeType"> |
||||
<el-radio :label="3">金钾</el-radio> |
||||
<el-radio :label="6">银钾</el-radio> |
||||
</el-radio-group> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-checkbox v-model="searchForm.checked">允许使用半月以上的数据</el-checkbox> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-button type="primary" @click="onSearch">查 询</el-button> |
||||
</el-form-item> |
||||
</el-form> |
||||
|
||||
<el-table :data="tableData" @selection-change="handleSelectionChange"> |
||||
<el-table-column type="selection"></el-table-column> |
||||
<el-table-column label="计划单号" prop="pjYieldOrder.poCode" align="center"></el-table-column> |
||||
<el-table-column label="生产订单号" prop="orderWoCode" align="center"></el-table-column> |
||||
<el-table-column label="零件号" prop="pjYieldOrder.partCode" align="center"></el-table-column> |
||||
<el-table-column label="零件名称" prop="pjYieldOrder.partName" align="center"></el-table-column> |
||||
<el-table-column label="物料编码" prop="plateGoodsCode" align="center"></el-table-column> |
||||
<el-table-column label="生产标识" prop="pjYieldOrder.prodIdent" align="center"></el-table-column> |
||||
<el-table-column label="生产数量" prop="pjYieldOrder.poQty" align="center"></el-table-column> |
||||
<el-table-column label="物料需求量(克)" prop="plateSingleQuotaTotal" align="center"></el-table-column> |
||||
<el-table-column label="计划下达时间" prop="createTime" align="center"></el-table-column> |
||||
<el-table :data="tableData" @selection-change="handleSelectionChange" ref="multipleTable" :loading="loading"> |
||||
<el-table-column type="selection"></el-table-column> |
||||
<el-table-column |
||||
label="计划单号" |
||||
prop="pjYieldOrder.poCode" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column label="生产订单号" prop="orderWoCode" align="center"></el-table-column> |
||||
<el-table-column |
||||
label="零件号" |
||||
prop="pjYieldOrder.partCode" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column |
||||
label="零件名称" |
||||
prop="pjYieldOrder.partName" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column label="物料编码" prop="plateGoodsCode" align="center"></el-table-column> |
||||
<el-table-column |
||||
label="生产标识" |
||||
prop="pjYieldOrder.prodIdent" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column |
||||
label="生产数量" |
||||
prop="pjYieldOrder.poQty" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column |
||||
label="物料需求量(克)" |
||||
prop="plateSingleQuotaTotal" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column label="计划下达时间" prop="createTime" align="center"></el-table-column> |
||||
|
||||
<!-- <el-table-column label="计划生产时间" prop="createTime" align="center"></el-table-column> --> |
||||
|
||||
</el-table> |
||||
<div v-show="totalNum" |
||||
style="display: flex;justify-content: flex-end;align-items: center; margin: 20px 20px 0 0;">合计:{{ |
||||
totalNum }}</div> |
||||
</div> |
||||
<!-- <el-table-column label="计划生产时间" prop="createTime" align="center"></el-table-column> --> |
||||
</el-table> |
||||
<div |
||||
v-show="totalNum" |
||||
style=" |
||||
display: flex; |
||||
justify-content: flex-end; |
||||
align-items: center; |
||||
margin: 20px 20px 0 0; |
||||
" |
||||
> |
||||
合计:{{ totalNum }} |
||||
</div> |
||||
</div> |
||||
</div> |
||||
|
||||
<template #footer> |
||||
<span class="dialog-footer"> |
||||
<el-button @click="closeDialog">取 消</el-button> |
||||
<el-button type="primary" @click="submit">确 定</el-button> |
||||
</span> |
||||
</template> |
||||
</el-dialog> |
||||
<template #footer> |
||||
<span class="dialog-footer"> |
||||
<el-button @click="closeDialog">取 消</el-button> |
||||
<el-button type="primary" @click="submit">确 定</el-button> |
||||
</span> |
||||
</template> |
||||
</el-dialog> |
||||
</template> |
||||
|
||||
<script> |
||||
import { getListlistNoFinished } from '@/api/productionManagement/coatingMaterial'; |
||||
export default { |
||||
props: { |
||||
showDialog: { |
||||
type: Boolean, |
||||
default: false |
||||
}, |
||||
props: { |
||||
showDialog: { |
||||
type: Boolean, |
||||
default: false, |
||||
}, |
||||
}, |
||||
data() { |
||||
return { |
||||
loading: false, |
||||
submitForm: {}, |
||||
searchForm: { |
||||
goodsType: 3, |
||||
}, |
||||
labelValue: '金钾', |
||||
tableData: [], |
||||
totalNum: null, |
||||
selectionList: [], |
||||
}; |
||||
}, |
||||
mounted() {}, |
||||
methods: { |
||||
// 切换金钾/银钾类型 |
||||
changeType(val) { |
||||
console.log('val-------------'); |
||||
if (val.target.value == 3) { |
||||
this.labelValue = '金钾'; |
||||
} else { |
||||
this.labelValue = '银钾'; |
||||
} |
||||
}, |
||||
data() { |
||||
return { |
||||
submitForm: {}, |
||||
searchForm: { |
||||
goodsType:3 |
||||
}, |
||||
labelValue: '金钾', |
||||
tableData: [], |
||||
totalNum: null, |
||||
selectionList: [] |
||||
// 点击查询按钮 |
||||
async onSearch() { |
||||
this.loading = true; |
||||
try { |
||||
const params = { ...this.submitForm, ...this.query }; |
||||
const res = await getListlistNoFinished(1, 1000, params); |
||||
if (res && res.code === 200) { |
||||
this.data = res.data?.data?.records || []; |
||||
this.$refs?.multipleTable?.clearSelection(); |
||||
} else { |
||||
console.warn('查询失败:', '未知错误'); |
||||
} |
||||
} finally { |
||||
this.loading = false; |
||||
} |
||||
}, |
||||
mounted() { |
||||
|
||||
// 多选 |
||||
handleSelectionChange(val) { |
||||
this.selectionList = val; |
||||
console.log('lisy-------------', this.selectionList); |
||||
var strarr = []; |
||||
for (let i in this.selectionList) { |
||||
strarr.push(Number(this.selectionList[i]['plateSingleQuotaTotal'])); |
||||
} |
||||
var total = eval(strarr.join('+')); |
||||
this.totalNum = total; |
||||
this.submitForm.goodsQuantity = total; |
||||
}, |
||||
methods: { |
||||
// 切换金钾/银钾类型 |
||||
changeType(val) { |
||||
console.log('val-------------',) |
||||
if (val.target.value == 3) { |
||||
this.labelValue = '金钾' |
||||
} else { |
||||
this.labelValue = '银钾' |
||||
} |
||||
}, |
||||
// 点击查询按钮 |
||||
onSearch() { |
||||
this.tableData = [ |
||||
{ |
||||
pjYieldOrder: { |
||||
poCode: "WO-220245431", |
||||
partCode: "21E8-950-1378-H1", |
||||
partName: 'XXX', |
||||
prodIdent: 'JII', |
||||
poQty: 50, |
||||
}, |
||||
orderWoCode: "WO-220245431", |
||||
plateGoodsCode: 'XXXX(名称)', |
||||
createTime: "2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal: '120.00' |
||||
}, |
||||
{ |
||||
pjYieldOrder: { |
||||
poCode: "WO-220245432", |
||||
partCode: "21E8-950-1378-H1", |
||||
partName: 'XXX', |
||||
prodIdent: 'JII', |
||||
poQty: 50, |
||||
}, |
||||
orderWoCode: "WO-220245432", |
||||
plateGoodsCode: 'XXXX(名称)', |
||||
createTime: "2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal: '25.32' |
||||
}, |
||||
{ |
||||
pjYieldOrder: { |
||||
poCode: "WO-220245433", |
||||
partCode: "21E8-950-1378-H1", |
||||
partName: 'XXX', |
||||
prodIdent: 'JII', |
||||
poQty: 50, |
||||
}, |
||||
orderWoCode: "WO-220245433", |
||||
plateGoodsCode: 'XXXX(名称)', |
||||
createTime: "2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal: '100.00' |
||||
}, |
||||
{ |
||||
pjYieldOrder: { |
||||
poCode: "WO-220245434", |
||||
partCode: "21E8-950-1378-H1", |
||||
partName: 'XXX', |
||||
prodIdent: 'JII', |
||||
poQty: 50, |
||||
}, |
||||
orderWoCode: "WO-220245434", |
||||
plateGoodsCode: 'XXXX(名称)', |
||||
createTime: "2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal: '200.00' |
||||
} |
||||
] |
||||
}, |
||||
// 多选 |
||||
handleSelectionChange(val) { |
||||
this.selectionList = val; |
||||
console.log('lisy-------------', this.selectionList) |
||||
var strarr = []; |
||||
for (let i in this.selectionList) { |
||||
strarr.push(Number(this.selectionList[i]['plateSingleQuotaTotal'])) |
||||
} |
||||
var total = eval(strarr.join('+')); |
||||
this.totalNum = total |
||||
this.submitForm.goodsQuantity = total |
||||
}, |
||||
closeDialog() { |
||||
this.$emit('closeDialog'); |
||||
} |
||||
} |
||||
} |
||||
closeDialog() { |
||||
this.$emit('closeDialog'); |
||||
}, |
||||
submit() { |
||||
// this.submitForm |
||||
//this.selectionList |
||||
const form = { |
||||
data: this.submitForm, |
||||
list: this.selectionList, |
||||
}; |
||||
console.log(form); |
||||
}, |
||||
}, |
||||
}; |
||||
</script> |
||||
|
||||
<style></style> |
||||
<style></style> |
||||
|
||||
@ -1,118 +1,130 @@ |
||||
<template> |
||||
<el-dialog title="含量检测" append-to-body :modelValue="openShow" width="40%" @close="closeDialog"> |
||||
<!-- 合并为单个表单,避免ref冲突 --> |
||||
<el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" label-width="90"> |
||||
<el-row> |
||||
<el-col :span="12"> |
||||
<el-form-item label="作业中心" prop="zuoyezhongxin"> |
||||
<el-select v-model="ruleForm.zuoyezhongxin" placeholder="请选择"> |
||||
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="化验时间" prop="huayanshijian"> |
||||
<!-- 修复日期选择器v-model绑定错误 --> |
||||
<el-date-picker |
||||
v-model="ruleForm.huayanshijian" |
||||
type="date" |
||||
placeholder="请选择" |
||||
format="YYYY-MM-DD" |
||||
value-format="YYYY-MM-DD" |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
</el-row> |
||||
<el-dialog |
||||
title="含量检测" |
||||
append-to-body |
||||
:modelValue="openShow" |
||||
width="40%" |
||||
@close="closeDialog" |
||||
> |
||||
<!-- 合并为单个表单,避免ref冲突 --> |
||||
<el-form ref="ruleFormRef" :model="ruleForm" :rules="rules" label-width="90"> |
||||
<el-row> |
||||
<el-col :span="12"> |
||||
<el-form-item label="作业中心" prop="zuoyezhongxin"> |
||||
<el-select v-model="ruleForm.zuoyezhongxin" placeholder="请选择" @change="handelchange"> |
||||
<el-option |
||||
v-for="item in options" |
||||
:key="item.value" |
||||
:label="item.label" |
||||
:value="item.value" |
||||
/> |
||||
</el-select> |
||||
</el-form-item> |
||||
</el-col> |
||||
<el-col :span="12"> |
||||
<el-form-item label="化验时间" prop="huayanshijian"> |
||||
<!-- 修复日期选择器v-model绑定错误 --> |
||||
<el-date-picker |
||||
v-model="ruleForm.huayanshijian" |
||||
type="date" |
||||
placeholder="请选择" |
||||
format="YYYY-MM-DD" |
||||
value-format="YYYY-MM-DD" |
||||
@change="handelchange" |
||||
/> |
||||
</el-form-item> |
||||
</el-col> |
||||
</el-row> |
||||
|
||||
<el-table :data="ruleForm.tableData" style="width: 100%"> |
||||
<el-table-column type="index" label="序号" width="180" /> |
||||
<el-table-column prop="name" label="作业槽" width="180" /> |
||||
<el-table-column prop="address" label="测量值"> |
||||
<template #header> |
||||
<span><i style="color:red">*</i>测量值</span> |
||||
</template> |
||||
<template #default="scope"> |
||||
<!-- 将输入框放入form-item内部,避免校验时的更新冲突 --> |
||||
<el-form-item |
||||
:prop="'tableData.' + scope.$index + '.address'" |
||||
:rules="[{ required: true, message: '请输入测量值', trigger: ['blur', 'change'] }]" |
||||
> |
||||
<el-input-number |
||||
v-model="scope.row.address" |
||||
controls-position="right" |
||||
@change="handleChange" |
||||
/> |
||||
</el-form-item> |
||||
</template> |
||||
</el-table-column> |
||||
</el-table> |
||||
</el-form> |
||||
<el-table :data="ruleForm.tableData" style="width: 100%"> |
||||
<el-table-column type="index" label="序号" width="180" /> |
||||
<el-table-column prop="slot" label="作业槽" width="180" /> |
||||
<el-table-column prop="testVal" label="测量值"> |
||||
<template #header> |
||||
<span><i style="color: red">*</i>测量值</span> |
||||
</template> |
||||
<template #default="scope"> |
||||
<!-- 将输入框放入form-item内部,避免校验时的更新冲突 --> |
||||
<el-form-item |
||||
|
||||
:prop="'tableData.' + scope.$index + '.testVal'" |
||||
:rules="[{ required: true, message: '请输入测量值', trigger: ['blur', 'change'] }]" |
||||
> |
||||
<el-input-number |
||||
v-model="scope.row.testVal" |
||||
controls-position="right" |
||||
@change="handleChange" |
||||
/> |
||||
</el-form-item> |
||||
</template> |
||||
</el-table-column> |
||||
</el-table> |
||||
</el-form> |
||||
|
||||
<template #footer> |
||||
<span class="dialog-footer"> |
||||
<el-button @click="closeDialog">取 消</el-button> |
||||
<el-button type="primary" @click="submit">确 定</el-button> |
||||
</span> |
||||
</template> |
||||
</el-dialog> |
||||
<template #footer> |
||||
<span class="dialog-footer"> |
||||
<el-button @click="closeDialog">取 消</el-button> |
||||
<el-button type="primary" @click="submit">确 定</el-button> |
||||
</span> |
||||
</template> |
||||
</el-dialog> |
||||
</template> |
||||
|
||||
<script> |
||||
import { add } from '@/api/productionManagement/assayedContent'; |
||||
export default { |
||||
props: { |
||||
showDialog: { |
||||
type: Boolean, |
||||
default: false |
||||
}, |
||||
props: { |
||||
showDialog: { |
||||
type: Boolean, |
||||
default: false, |
||||
}, |
||||
data() { |
||||
return { |
||||
openShow: false, |
||||
ruleForm: { |
||||
huayanshijian: '', |
||||
zuoyezhongxin: '', |
||||
tableData: [ |
||||
{ address: null, name: '#16' }, |
||||
{ address: null, name: '#15' }, |
||||
{ address: null, name: '#14' }, |
||||
{ address: null, name: '#13' }, |
||||
{ address: null, name: '#12' } |
||||
] |
||||
}, |
||||
rules: { |
||||
huayanshijian: [ |
||||
{ required: true, message: '请选择化验时间', trigger:[ 'change', 'blur'] } |
||||
], |
||||
zuoyezhongxin: [ |
||||
{ required: true, message: '请选择作业中心', trigger: ['change', 'blur'] } |
||||
] |
||||
}, |
||||
options: [ |
||||
{ label: '作业中心一1', value: '1' }, |
||||
{ label: '作业中心二', value: '2' } |
||||
] |
||||
} |
||||
}, |
||||
data() { |
||||
return { |
||||
openShow: false, |
||||
ruleForm: { |
||||
huayanshijian: '', |
||||
zuoyezhongxin: '', |
||||
tableData: [ |
||||
{ testVal: null, slot: '#16' }, |
||||
{ testVal: null, slot: '#15' }, |
||||
], |
||||
}, |
||||
rules: { |
||||
huayanshijian: [{ required: true, message: '请选择化验时间', trigger: ['change', 'blur'] }], |
||||
zuoyezhongxin: [{ required: true, message: '请选择作业中心', trigger: ['change', 'blur'] }], |
||||
}, |
||||
options: [ |
||||
{ label: '作业中心一1', value: '1' }, |
||||
{ label: '作业中心二', value: '2' }, |
||||
], |
||||
}; |
||||
}, |
||||
mounted() { |
||||
this.openShow = this.showDialog; |
||||
}, |
||||
methods: { |
||||
//查询表格 |
||||
handelchange(){ |
||||
console.log(this.ruleForm,22222) |
||||
}, |
||||
mounted() { |
||||
this.openShow = this.showDialog |
||||
closeDialog() { |
||||
this.openShow = false; |
||||
this.$emit('closeDialog'); |
||||
}, |
||||
methods: { |
||||
closeDialog() { |
||||
this.openShow = false |
||||
this.$emit('closeDialog'); |
||||
}, |
||||
submit() { |
||||
this.$refs.ruleFormRef.validate((valid) => { |
||||
if (valid) { |
||||
console.log('提交数据:', this.ruleForm) |
||||
// 提交逻辑 |
||||
} |
||||
}) |
||||
}, |
||||
handleChange(value) { |
||||
// 避免在change事件中修改可能触发表格更新的数据 |
||||
console.log('测量值变化:', value) |
||||
async submit() { |
||||
this.$refs.ruleFormRef.validate(valid => { |
||||
if (valid) { |
||||
const res= add() |
||||
console.log('提交数据:', this.ruleForm); |
||||
// 提交逻辑 |
||||
} |
||||
} |
||||
} |
||||
</script> |
||||
}); |
||||
}, |
||||
handleChange(value) { |
||||
// 避免在change事件中修改可能触发表格更新的数据 |
||||
console.log('测量值变化:', value); |
||||
}, |
||||
}, |
||||
}; |
||||
</script> |
||||
|
||||
@ -1,131 +1,322 @@ |
||||
<template> |
||||
<el-dialog title="详情" append-to-body :modelValue="materialDialog" width="90%" @close="closeDialog" @open="open"> |
||||
<div style="height: 600px;overflow-y: auto;overflow-x:hidden ;"> |
||||
<div style="font-weight: 550;margin-bottom: 10px;">物料需求信息</div> |
||||
<el-descriptions :column="4" border :label-width="130"> |
||||
<el-descriptions-item style="width:25%" label="需求编号:">{{ detailForm.requiredCode }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="物料编号:">{{ detailForm.goodsCode }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="物料名称:">{{ detailForm.goodsName }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="相关订单数:">{{ detailForm.ordersNumber }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="物料需求量(克):">{{ detailForm.plateSingleQuotaTotal }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="物料使用量(克):">{{ detailForm.usageAmount }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="物料剩余量(克):">{{ detailForm.goodsDemandResidue }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="银钾系数:">{{ detailForm.coefficient }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="提报人:">{{ detailForm.createUser }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="提报时间:">{{ detailForm.createTime }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="需求状态:">{{ detailForm.statusTitle }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="审批意见:">{{ detailForm.approvalOpinion }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="审批人:">{{ detailForm.approvalUser }}</el-descriptions-item> |
||||
<el-descriptions-item style="width:25%" label="审批时间:">{{ detailForm.approvalTime }}</el-descriptions-item> |
||||
</el-descriptions> |
||||
<div style="margin-top:30px;padding-top: 30px;"> |
||||
<div style="font-weight: 550;margin-bottom: 10px;">关联订单</div> |
||||
<el-table :data="tableData" style="margin-top: 20px;" @selection-change="handleSelectionChange"> |
||||
<el-table-column label="计划单号" prop="pjYieldOrder.poCode" align="center"></el-table-column> |
||||
<el-table-column label="车间订单号" prop="orderWoCode" align="center"></el-table-column> |
||||
<el-table-column label="零件号" prop="pjYieldOrder.partCode" align="center"></el-table-column> |
||||
<el-table-column label="零件名称" prop="pjYieldOrder.partName" align="center"></el-table-column> |
||||
<el-table-column label="物料编码" prop="plateGoodsCode" align="center"></el-table-column> |
||||
<el-table-column label="计划下达时间" prop="createTime" align="center" width="170"></el-table-column> |
||||
<el-table-column label="生产标识" prop="pjYieldOrder.prodIdent" align="center"></el-table-column> |
||||
<el-table-column label="生产数量" prop="pjYieldOrder.poQty" align="center"></el-table-column> |
||||
<el-table-column label="物料需求量(克)" prop="plateSingleQuotaTotal" align="center"></el-table-column> |
||||
</el-table> |
||||
</div> |
||||
<el-dialog |
||||
title="详情" |
||||
append-to-body |
||||
:modelValue="materialDialog" |
||||
width="90%" |
||||
@close="closeDialog" |
||||
@open="open" |
||||
> |
||||
<div style="height: 600px; overflow-y: auto; overflow-x: hidden"> |
||||
<div style="font-weight: 550; margin-bottom: 10px">物料需求信息</div> |
||||
<el-descriptions :column="4" border :label-width="130"> |
||||
<el-descriptions-item style="width: 25%" label="需求编号:">{{ |
||||
detailForm.demandCode |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="物料编号:">{{ |
||||
detailForm.plateGoodsCode |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="物料名称:">{{ |
||||
detailForm.goodsName |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="相关订单数:">{{ |
||||
detailForm.ordersNumber |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="物料需求量(克):">{{ |
||||
detailForm.goodsDemand |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="物料使用量(克):">{{ |
||||
detailForm.usageAmount |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="物料剩余量(克):">{{ |
||||
detailForm.surplus |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="银钾系数:">{{ |
||||
detailForm.coefficient |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="上报银钾:">{{ |
||||
detailForm.silverPotassium |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="上报银钾剩余量:">{{ |
||||
detailForm.silverPotassiumResidue |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="提报人:">{{ |
||||
detailForm.createUser |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="提报时间:">{{ |
||||
detailForm.createTime |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="需求状态:">{{ |
||||
detailForm.statusTitle |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="审批意见:">{{ |
||||
detailForm.approvalMemo |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="审批人:">{{ |
||||
detailForm.approvalMan |
||||
}}</el-descriptions-item> |
||||
<el-descriptions-item style="width: 25%" label="审批时间:">{{ |
||||
detailForm.approvalTime |
||||
}}</el-descriptions-item> |
||||
</el-descriptions> |
||||
<div style="margin-top: 30px; padding-top: 30px"> |
||||
<div style="font-weight: 550; margin-bottom: 10px">关联订单</div> |
||||
<el-table |
||||
:data="tableData" |
||||
style="margin-top: 20px" |
||||
@selection-change="handleSelectionChange" |
||||
> |
||||
<el-table-column |
||||
label="计划单号" |
||||
prop="pjYieldOrder.poCode" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column label="车间订单号" prop="orderWoCode" align="center"></el-table-column> |
||||
<el-table-column |
||||
label="零件号" |
||||
prop="pjYieldOrder.partCode" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column |
||||
label="零件名称" |
||||
prop="pjYieldOrder.partName" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column label="物料编码" prop="plateGoodsCode" align="center"></el-table-column> |
||||
<el-table-column |
||||
label="计划下达时间" |
||||
prop="createTime" |
||||
align="center" |
||||
width="170" |
||||
></el-table-column> |
||||
<el-table-column |
||||
label="生产标识" |
||||
prop="pjYieldOrder.prodIdent" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column |
||||
label="生产数量" |
||||
prop="pjYieldOrder.poQty" |
||||
align="center" |
||||
></el-table-column> |
||||
<el-table-column |
||||
label="物料需求量(克)" |
||||
prop="plateSingleQuotaTotal" |
||||
align="center" |
||||
></el-table-column> |
||||
</el-table> |
||||
</div> |
||||
</div> |
||||
</el-dialog> |
||||
</el-dialog> |
||||
</template> |
||||
|
||||
<script> |
||||
import { getOrderMoldPlanCaDeatils } from '@/api/productionManagement/coatingMaterial'; |
||||
export default { |
||||
props:{ |
||||
materialDialog:{ |
||||
type: Boolean, |
||||
default: false |
||||
} |
||||
props: { |
||||
materialDialog: { |
||||
type: Boolean, |
||||
default: false, |
||||
}, |
||||
data(){ |
||||
return{ |
||||
detailForm:{}, |
||||
tableData:[] |
||||
} |
||||
id: { |
||||
type: String, |
||||
}, |
||||
mounted(){ |
||||
}, |
||||
data() { |
||||
return { |
||||
detailForm: {}, |
||||
tableData: [], |
||||
}; |
||||
}, |
||||
mounted() {}, |
||||
methods: { |
||||
async open() { |
||||
// this.detailForm = { |
||||
// // 基础主键与编码 |
||||
// id: 1, |
||||
// demandCode: 'DMD-0001', |
||||
// pgrCode: 'PGR-001', |
||||
|
||||
}, |
||||
methods:{ |
||||
open(){ |
||||
this.detailForm = { |
||||
requiredCode:"001",workCenter:1,goodsCode:'wl_001',goodsName:"物料名称",goldPotassium:20, |
||||
silverPotassium:30,coefficient:2,usageAmount:20,goodsDemandResidue:20,status:1,statusTitle:'审批通过', |
||||
ordersNumber:15,createMan:'张三',createTime:'2025-10-20 11:20:32',plateSingleQuotaTotal:'445.32', |
||||
approvalOpinion:'XXXXX',usageAmount:'200.32',goodsDemandResidue:'245.00',coefficient:0.54,createUser:"XXX", |
||||
createTime:'2023-05-17 10:50:08',approvalTime:'2023-05-22 12:21:32',approvalUser:'XXXXX' |
||||
} |
||||
this.tableData = [ |
||||
{ |
||||
pjYieldOrder:{ |
||||
poCode:"WO-220245431", |
||||
partCode:"21E8-950-1378-H1", |
||||
partName:'XXX', |
||||
prodIdent:'JII', |
||||
poQty:50, |
||||
}, |
||||
orderWoCode:"WO-220245431", |
||||
plateGoodsCode:'XXXX(名称)', |
||||
createTime:"2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal:'120.00' |
||||
}, |
||||
{ |
||||
pjYieldOrder:{ |
||||
poCode:"WO-220245432", |
||||
partCode:"21E8-950-1378-H1", |
||||
partName:'XXX', |
||||
prodIdent:'JII', |
||||
poQty:50, |
||||
}, |
||||
orderWoCode:"WO-220245432", |
||||
plateGoodsCode:'XXXX(名称)', |
||||
createTime:"2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal:'25.32' |
||||
}, |
||||
{ |
||||
pjYieldOrder:{ |
||||
poCode:"WO-220245433", |
||||
partCode:"21E8-950-1378-H1", |
||||
partName:'XXX', |
||||
prodIdent:'JII', |
||||
poQty:50, |
||||
}, |
||||
orderWoCode:"WO-220245433", |
||||
plateGoodsCode:'XXXX(名称)', |
||||
createTime:"2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal:'100.00' |
||||
}, |
||||
{ |
||||
pjYieldOrder:{ |
||||
poCode:"WO-220245434", |
||||
partCode:"21E8-950-1378-H1", |
||||
partName:'XXX', |
||||
prodIdent:'JII', |
||||
poQty:50, |
||||
}, |
||||
orderWoCode:"WO-220245434", |
||||
plateGoodsCode:'XXXX(名称)', |
||||
createTime:"2023-05-17 10:50:08", |
||||
plateSingleQuotaTotal:'200.00' |
||||
} |
||||
] |
||||
}, |
||||
closeDialog(){ |
||||
this.$emit('closeDialog'); |
||||
// // 作业中心 & 物料信息 |
||||
// wcId: 100, |
||||
// plateGoodsCode: 'PLATE-001', |
||||
// goodsBoId: 456, |
||||
// coefficientBoId: 789, |
||||
|
||||
// // 需求与剩余 |
||||
// goodsDemand: 445.32, |
||||
// declaredQuota: 200.32, |
||||
// declaredSilver: 50.0, |
||||
// declaredStatus: 2, |
||||
// surplus: 245.0, |
||||
// silverPotassiumResidue: 10.0, |
||||
|
||||
// // 银钾相关 |
||||
// silverPotassium: 30.0, |
||||
// coefficient: 0.54, |
||||
// declaredSilver: 50.0, |
||||
|
||||
// // 审批相关 |
||||
// approvalMan: 123, |
||||
// approvalUser: '审批人姓名', |
||||
// approvalTime: '2023-05-22 12:21:32', |
||||
// approvalStatus: 1, |
||||
// approvalMemo: '审批通过', |
||||
// approvalOpinion: '审批通过', |
||||
|
||||
// // 兼容旧字段(保留以免模板其他地方使用) |
||||
// requiredCode: '001', |
||||
// workCenter: 1, |
||||
// goodsCode: 'wl_001', |
||||
// goodsName: '物料名称', |
||||
// ordersNumber: 15, |
||||
// createUser: 'XXX', |
||||
// createTime: '2025-10-20 11:20:32', |
||||
// plateSingleQuotaTotal: '445.32', |
||||
// }; |
||||
// this.tableData = [ |
||||
// { |
||||
// id: 1001, |
||||
// demandCode: 'DMD-0001', |
||||
// pgrCode: 'PGR-001', |
||||
// wcId: 100, |
||||
// plateGoodsCode: 'PLATE-001', |
||||
// goodsBoId: 456, |
||||
// coefficientBoId: 789, |
||||
// goodsDemand: 120.0, |
||||
// declaredQuota: 50.0, |
||||
// declaredSilver: 10.0, |
||||
// declaredStatus: 1, |
||||
// surplus: 20.0, |
||||
// silverPotassium: 5.0, |
||||
// silverPotassiumResidue: 2.0, |
||||
// coefficient: 0.12, |
||||
// approvalMan: 123, |
||||
// approvalTime: '2023-05-18 09:00:00', |
||||
// approvalStatus: 1, |
||||
// approvalMemo: '通过', |
||||
// pjYieldOrder: { |
||||
// poCode: 'WO-220245431', |
||||
// partCode: '21E8-950-1378-H1', |
||||
// partName: 'XXX', |
||||
// prodIdent: 'JII', |
||||
// poQty: 50, |
||||
// }, |
||||
// orderWoCode: 'WO-220245431', |
||||
// createTime: '2023-05-17 10:50:08', |
||||
// plateSingleQuotaTotal: '120.00', |
||||
// }, |
||||
// { |
||||
// id: 1002, |
||||
// demandCode: 'DMD-0002', |
||||
// pgrCode: 'PGR-002', |
||||
// wcId: 101, |
||||
// plateGoodsCode: 'PLATE-002', |
||||
// goodsBoId: 457, |
||||
// coefficientBoId: 790, |
||||
// goodsDemand: 25.32, |
||||
// declaredQuota: 10.0, |
||||
// declaredSilver: 2.5, |
||||
// declaredStatus: 2, |
||||
// surplus: 5.0, |
||||
// silverPotassium: 1.2, |
||||
// silverPotassiumResidue: 0.8, |
||||
// coefficient: 0.08, |
||||
// approvalMan: 124, |
||||
// approvalTime: '2023-05-19 10:00:00', |
||||
// approvalStatus: 0, |
||||
// approvalMemo: '待审', |
||||
// pjYieldOrder: { |
||||
// poCode: 'WO-220245432', |
||||
// partCode: '21E8-950-1378-H1', |
||||
// partName: 'XXX', |
||||
// prodIdent: 'JII', |
||||
// poQty: 50, |
||||
// }, |
||||
// orderWoCode: 'WO-220245432', |
||||
// createTime: '2023-05-17 10:50:08', |
||||
// plateSingleQuotaTotal: '25.32', |
||||
// }, |
||||
// { |
||||
// id: 1003, |
||||
// demandCode: 'DMD-0003', |
||||
// pgrCode: 'PGR-003', |
||||
// wcId: 102, |
||||
// plateGoodsCode: 'PLATE-003', |
||||
// goodsBoId: 458, |
||||
// coefficientBoId: 791, |
||||
// goodsDemand: 100.0, |
||||
// declaredQuota: 40.0, |
||||
// declaredSilver: 8.0, |
||||
// declaredStatus: 1, |
||||
// surplus: 30.0, |
||||
// silverPotassium: 3.5, |
||||
// silverPotassiumResidue: 1.5, |
||||
// coefficient: 0.15, |
||||
// approvalMan: 125, |
||||
// approvalTime: '2023-05-20 11:00:00', |
||||
// approvalStatus: 1, |
||||
// approvalMemo: '通过', |
||||
// pjYieldOrder: { |
||||
// poCode: 'WO-220245433', |
||||
// partCode: '21E8-950-1378-H1', |
||||
// partName: 'XXX', |
||||
// prodIdent: 'JII', |
||||
// poQty: 50, |
||||
// }, |
||||
// orderWoCode: 'WO-220245433', |
||||
// createTime: '2023-05-17 10:50:08', |
||||
// plateSingleQuotaTotal: '100.00', |
||||
// }, |
||||
// { |
||||
// id: 1004, |
||||
// demandCode: 'DMD-0004', |
||||
// pgrCode: 'PGR-004', |
||||
// wcId: 103, |
||||
// plateGoodsCode: 'PLATE-004', |
||||
// goodsBoId: 459, |
||||
// coefficientBoId: 792, |
||||
// goodsDemand: 200.0, |
||||
// declaredQuota: 150.0, |
||||
// declaredSilver: 25.0, |
||||
// declaredStatus: 3, |
||||
// surplus: 50.0, |
||||
// silverPotassium: 6.0, |
||||
// silverPotassiumResidue: 4.0, |
||||
// coefficient: 0.2, |
||||
// approvalMan: 126, |
||||
// approvalTime: '2023-05-21 12:00:00', |
||||
// approvalStatus: 2, |
||||
// approvalMemo: '拒绝', |
||||
// pjYieldOrder: { |
||||
// poCode: 'WO-220245434', |
||||
// partCode: '21E8-950-1378-H1', |
||||
// partName: 'XXX', |
||||
// prodIdent: 'JII', |
||||
// poQty: 50, |
||||
// }, |
||||
// orderWoCode: 'WO-220245434', |
||||
// createTime: '2023-05-17 10:50:08', |
||||
// plateSingleQuotaTotal: '200.00', |
||||
// }, |
||||
// ]; |
||||
try { |
||||
const ref = await getOrderMoldPlanCaDeatils({ id: this.id }); |
||||
if (res.code == 200) { |
||||
this.detailForm = res.data.detailForm; |
||||
this.tableData = res.data.list; |
||||
} |
||||
} |
||||
} |
||||
} catch (err) {console.log(err)} |
||||
}, |
||||
closeDialog() { |
||||
this.$emit('closeDialog'); |
||||
}, |
||||
}, |
||||
}; |
||||
</script> |
||||
|
||||
<style lang="scss" scoped> |
||||
:deep(.is-bordered-content) { |
||||
width: 280px |
||||
} |
||||
</style> |
||||
width: 280px; |
||||
} |
||||
</style> |
||||
|
||||
Loading…
Reference in new issue