|
|
|
@ -16,6 +16,7 @@ |
|
|
|
@refresh-change="refreshChange" |
|
|
|
@refresh-change="refreshChange" |
|
|
|
@on-load="onLoad" |
|
|
|
@on-load="onLoad" |
|
|
|
@row-update="rowUpdate" |
|
|
|
@row-update="rowUpdate" |
|
|
|
|
|
|
|
@sort-change="sortChange" |
|
|
|
> |
|
|
|
> |
|
|
|
<template #menu-left> |
|
|
|
<template #menu-left> |
|
|
|
<el-button type="primary" @click="claseOrder()">关闭订单</el-button> |
|
|
|
<el-button type="primary" @click="claseOrder()">关闭订单</el-button> |
|
|
|
@ -56,21 +57,35 @@ |
|
|
|
<template #demandDate="{ row }"> |
|
|
|
<template #demandDate="{ row }"> |
|
|
|
{{ row.demandDate ? row.demandDate.substring(0, 10) : '' }} |
|
|
|
{{ row.demandDate ? row.demandDate.substring(0, 10) : '' }} |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<template #releaseDate="{ row }"> |
|
|
|
|
|
|
|
{{ row.releaseDate ? row.releaseDate.substring(0, 10) : '' }} |
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
</avue-crud> |
|
|
|
</avue-crud> |
|
|
|
<el-dialog v-model="isEdit" width="900" title="修改"> |
|
|
|
<el-dialog v-model="isEdit" width="900" title="修改"> |
|
|
|
<el-form :model="editForm" ref="form" :rules="formRules" label-width="120"> |
|
|
|
<el-form :model="editForm" ref="form" :rules="formRules" label-width="120"> |
|
|
|
<el-row> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="计划单号" prop="ypCode"> |
|
|
|
<el-form-item label="计划单号:" prop="ypCode"> |
|
|
|
<el-input v-model="editForm.ypCode" clearable placeholder="请输入计划单号"></el-input> |
|
|
|
<el-input v-model="editForm.ypCode" clearable placeholder="请输入计划单号"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="零件号" prop="partCode"> |
|
|
|
<el-form-item label="零件号:" prop="partCode"> |
|
|
|
|
|
|
|
<jhSelect |
|
|
|
|
|
|
|
:value="editForm.partCode" |
|
|
|
|
|
|
|
@input="val => (editForm.partCode = val)" |
|
|
|
|
|
|
|
placeholder="请搜索选择" |
|
|
|
|
|
|
|
api-url="/blade-desk/dsPart/listNew" |
|
|
|
|
|
|
|
echo-api="/blade-desk/dsPart/listNew" |
|
|
|
|
|
|
|
echoParamsKey="ids" |
|
|
|
|
|
|
|
echo-method="get" |
|
|
|
|
|
|
|
api-method="get" |
|
|
|
|
|
|
|
list-key="records" |
|
|
|
|
|
|
|
total-key="total" |
|
|
|
|
|
|
|
label-key="partCode" |
|
|
|
|
|
|
|
value-key="id" |
|
|
|
|
|
|
|
search-key="partCode" |
|
|
|
|
|
|
|
:debounce-time="500" |
|
|
|
|
|
|
|
@change="(value,item)=>partCodeChange(editForm.partCode,value,item)" |
|
|
|
|
|
|
|
/> |
|
|
|
<!-- <el-select |
|
|
|
<!-- <el-select |
|
|
|
v-model="editForm.partCode" |
|
|
|
v-model="editForm.partCode" |
|
|
|
remote |
|
|
|
remote |
|
|
|
@ -92,7 +107,7 @@ |
|
|
|
</el-row> |
|
|
|
</el-row> |
|
|
|
<el-row> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="产品型号" prop="productType"> |
|
|
|
<el-form-item label="产品型号:" prop="productType"> |
|
|
|
<el-input |
|
|
|
<el-input |
|
|
|
v-model="editForm.productType" |
|
|
|
v-model="editForm.productType" |
|
|
|
disabled |
|
|
|
disabled |
|
|
|
@ -101,7 +116,7 @@ |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="产品名称" prop="partName"> |
|
|
|
<el-form-item label="产品名称:" prop="partName"> |
|
|
|
<el-input |
|
|
|
<el-input |
|
|
|
v-model="editForm.partName" |
|
|
|
v-model="editForm.partName" |
|
|
|
disabled |
|
|
|
disabled |
|
|
|
@ -112,21 +127,21 @@ |
|
|
|
</el-row> |
|
|
|
</el-row> |
|
|
|
<el-row> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="镀种" prop="plate"> |
|
|
|
<el-form-item label="镀种:" prop="plate"> |
|
|
|
<el-input |
|
|
|
<el-input |
|
|
|
v-model="editForm.plate" |
|
|
|
v-model="editForm.plate" |
|
|
|
clearable |
|
|
|
clearable |
|
|
|
disabled |
|
|
|
|
|
|
|
placeholder="请输入镀种" |
|
|
|
placeholder="请输入镀种" |
|
|
|
></el-input> |
|
|
|
></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="面积(dm²)" prop="ypArea"> |
|
|
|
<el-form-item label="面积(dm²):" prop="ypArea"> |
|
|
|
<el-input |
|
|
|
<el-input |
|
|
|
v-model="editForm.ypArea" |
|
|
|
v-model="editForm.ypArea" |
|
|
|
clearable |
|
|
|
clearable |
|
|
|
disabled |
|
|
|
|
|
|
|
placeholder="请输入面积(dm²)" |
|
|
|
placeholder="请输入面积(dm²)" |
|
|
|
></el-input> |
|
|
|
></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
@ -134,7 +149,7 @@ |
|
|
|
</el-row> |
|
|
|
</el-row> |
|
|
|
<el-row> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="生产标识" prop="productIdent"> |
|
|
|
<el-form-item label="生产标识:" prop="productIdent"> |
|
|
|
<el-select v-model="editForm.productIdent" placeholder="请选择生产标识"> |
|
|
|
<el-select v-model="editForm.productIdent" placeholder="请选择生产标识"> |
|
|
|
<el-option |
|
|
|
<el-option |
|
|
|
v-for="item in productIdentList" |
|
|
|
v-for="item in productIdentList" |
|
|
|
@ -145,8 +160,9 @@ |
|
|
|
</el-select> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="使用部门" prop="useDept"> |
|
|
|
<el-form-item label="使用部门名称:" prop="useDept"> |
|
|
|
<el-input |
|
|
|
<el-input |
|
|
|
v-model="editForm.useDept" |
|
|
|
v-model="editForm.useDept" |
|
|
|
clearable |
|
|
|
clearable |
|
|
|
@ -155,15 +171,25 @@ |
|
|
|
></el-input> |
|
|
|
></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
<el-form-item label="使用部门编码:" prop="useDept"> |
|
|
|
|
|
|
|
<el-input |
|
|
|
|
|
|
|
v-model="editForm.useDeptCode" |
|
|
|
|
|
|
|
clearable |
|
|
|
|
|
|
|
disabled |
|
|
|
|
|
|
|
placeholder="请输入使用部门" |
|
|
|
|
|
|
|
></el-input> |
|
|
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-row> |
|
|
|
<el-row> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="生产数量" prop="ypQty"> |
|
|
|
<el-form-item label="需求数量:" prop="ypQty"> |
|
|
|
<el-input v-model="editForm.ypQty" clearable placeholder="请输入生产数量"></el-input> |
|
|
|
<el-input v-model="editForm.ypQty" clearable placeholder="请输入需求数量"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="需求交期" prop="demandDate"> |
|
|
|
<el-form-item label="需求交期:" prop="demandDate"> |
|
|
|
<el-date-picker |
|
|
|
<el-date-picker |
|
|
|
style="width: 100%" |
|
|
|
style="width: 100%" |
|
|
|
type="datetime" |
|
|
|
type="datetime" |
|
|
|
@ -177,12 +203,17 @@ |
|
|
|
</el-row> |
|
|
|
</el-row> |
|
|
|
<el-row> |
|
|
|
<el-row> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="计划员" prop="planUser"> |
|
|
|
<el-form-item label="计划部门编码:" prop="planDeptCode"> |
|
|
|
<el-input v-model="editForm.planUser" clearable placeholder="请输入计划员"></el-input> |
|
|
|
<el-input v-model="editForm.planDeptCode" clearable placeholder="请输入"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="计划下达时间" prop="releaseDate"> |
|
|
|
<el-form-item label="计划员:" prop="planUser"> |
|
|
|
|
|
|
|
<el-input v-model="editForm.planUser" clearable placeholder="请输入"></el-input> |
|
|
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
</el-col> |
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
<el-form-item label="计划下达时间:" prop="releaseDate"> |
|
|
|
<el-date-picker |
|
|
|
<el-date-picker |
|
|
|
style="width: 100%" |
|
|
|
style="width: 100%" |
|
|
|
type="datetime" |
|
|
|
type="datetime" |
|
|
|
@ -196,7 +227,7 @@ |
|
|
|
</el-row> |
|
|
|
</el-row> |
|
|
|
<el-row> |
|
|
|
<el-row> |
|
|
|
<el-col :span="24"> |
|
|
|
<el-col :span="24"> |
|
|
|
<el-form-item label="备注" prop="memo"> |
|
|
|
<el-form-item label="备注:" prop="memo"> |
|
|
|
<el-input v-model="editForm.memo" type="textarea" placeholder="请输入备注"></el-input> |
|
|
|
<el-input v-model="editForm.memo" type="textarea" placeholder="请输入备注"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-col> |
|
|
|
@ -220,7 +251,9 @@ import { |
|
|
|
getPartList, |
|
|
|
getPartList, |
|
|
|
getProductionIdentificationList, |
|
|
|
getProductionIdentificationList, |
|
|
|
} from '@/api/orderManagement/exceptionOrder'; |
|
|
|
} from '@/api/orderManagement/exceptionOrder'; |
|
|
|
|
|
|
|
import jhSelect from '@/components/jh-select/index.vue'; |
|
|
|
export default { |
|
|
|
export default { |
|
|
|
|
|
|
|
components: { jhSelect }, |
|
|
|
data() { |
|
|
|
data() { |
|
|
|
return { |
|
|
|
return { |
|
|
|
editForm: {}, |
|
|
|
editForm: {}, |
|
|
|
@ -228,10 +261,11 @@ export default { |
|
|
|
ypCode: [{ required: true, message: '请输入计划单号', trigger: 'change' }], |
|
|
|
ypCode: [{ required: true, message: '请输入计划单号', trigger: 'change' }], |
|
|
|
partCode: [{ required: true, message: '请选择零件号', trigger: 'change' }], |
|
|
|
partCode: [{ required: true, message: '请选择零件号', trigger: 'change' }], |
|
|
|
productIdent: [{ required: true, message: '请选择生产标识', trigger: 'change' }], |
|
|
|
productIdent: [{ required: true, message: '请选择生产标识', trigger: 'change' }], |
|
|
|
ypQty: [{ required: true, message: '请输入生产数量', trigger: 'change' }], |
|
|
|
ypQty: [{ required: true, message: '请输入需求数量', trigger: 'change' }], |
|
|
|
demandDate: [{ required: true, message: '请选择需求交期', trigger: 'change' }], |
|
|
|
demandDate: [{ required: true, message: '请选择需求交期', trigger: 'change' }], |
|
|
|
planUser: [{ required: true, message: '请输入计划员', trigger: 'change' }], |
|
|
|
planUser: [{ required: true, message: '请输入计划员', trigger: 'change' }], |
|
|
|
releaseDate: [{ required: true, message: '请选择计划下达时间', trigger: 'change' }], |
|
|
|
releaseDate: [{ required: true, message: '请选择计划下达时间', trigger: 'change' }], |
|
|
|
|
|
|
|
planDeptCode: [{ required: true, message: '请输入计划部门编码', trigger: 'change' }], |
|
|
|
// productType:[{required: true, message: '请输入产品型号', trigger: 'blur'}] |
|
|
|
// productType:[{required: true, message: '请输入产品型号', trigger: 'blur'}] |
|
|
|
}, |
|
|
|
}, |
|
|
|
partCodeList: [], |
|
|
|
partCodeList: [], |
|
|
|
@ -303,6 +337,7 @@ export default { |
|
|
|
menuAlign: 'center', |
|
|
|
menuAlign: 'center', |
|
|
|
gridBtn: false, |
|
|
|
gridBtn: false, |
|
|
|
searchMenuPosition: 'right', |
|
|
|
searchMenuPosition: 'right', |
|
|
|
|
|
|
|
searchLabelWidth: 'auto', |
|
|
|
align: 'center', |
|
|
|
align: 'center', |
|
|
|
|
|
|
|
|
|
|
|
column: [ |
|
|
|
column: [ |
|
|
|
@ -430,6 +465,7 @@ export default { |
|
|
|
disabled: true, |
|
|
|
disabled: true, |
|
|
|
span: 12, |
|
|
|
span: 12, |
|
|
|
width: 150, |
|
|
|
width: 150, |
|
|
|
|
|
|
|
searchOrder:20, |
|
|
|
headerAlign: 'center', |
|
|
|
headerAlign: 'center', |
|
|
|
rules: [ |
|
|
|
rules: [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
@ -534,7 +570,25 @@ export default { |
|
|
|
], |
|
|
|
], |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: '使用部门', |
|
|
|
label: '使用部门编码', |
|
|
|
|
|
|
|
prop: 'useDeptCode', |
|
|
|
|
|
|
|
search: false, |
|
|
|
|
|
|
|
sortable: true, |
|
|
|
|
|
|
|
disabled: true, |
|
|
|
|
|
|
|
width: 120, |
|
|
|
|
|
|
|
span: 12, |
|
|
|
|
|
|
|
headerAlign: 'center', |
|
|
|
|
|
|
|
align: 'center', |
|
|
|
|
|
|
|
rules: [ |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
required: true, |
|
|
|
|
|
|
|
message: '请输入使用部门', |
|
|
|
|
|
|
|
trigger: 'blur', |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
], |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
label: '使用部门名称', |
|
|
|
prop: 'useDept', |
|
|
|
prop: 'useDept', |
|
|
|
search: false, |
|
|
|
search: false, |
|
|
|
sortable: true, |
|
|
|
sortable: true, |
|
|
|
@ -552,7 +606,7 @@ export default { |
|
|
|
], |
|
|
|
], |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: '生产数量', |
|
|
|
label: '需求数量', |
|
|
|
prop: 'ypQty', |
|
|
|
prop: 'ypQty', |
|
|
|
search: false, |
|
|
|
search: false, |
|
|
|
sortable: true, |
|
|
|
sortable: true, |
|
|
|
@ -563,7 +617,7 @@ export default { |
|
|
|
rules: [ |
|
|
|
rules: [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
required: true, |
|
|
|
required: true, |
|
|
|
message: '请输入生产数量', |
|
|
|
message: '请输入需求数量', |
|
|
|
trigger: 'blur', |
|
|
|
trigger: 'blur', |
|
|
|
}, |
|
|
|
}, |
|
|
|
], |
|
|
|
], |
|
|
|
@ -588,6 +642,23 @@ export default { |
|
|
|
}, |
|
|
|
}, |
|
|
|
], |
|
|
|
], |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
label: '计划部门编码', |
|
|
|
|
|
|
|
prop: 'planDeptCode', |
|
|
|
|
|
|
|
search: false, |
|
|
|
|
|
|
|
sortable: true, |
|
|
|
|
|
|
|
width: 120, |
|
|
|
|
|
|
|
span: 12, |
|
|
|
|
|
|
|
headerAlign: 'center', |
|
|
|
|
|
|
|
align: 'center', |
|
|
|
|
|
|
|
rules: [ |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
required: true, |
|
|
|
|
|
|
|
message: '请输入计划员', |
|
|
|
|
|
|
|
trigger: 'blur', |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
], |
|
|
|
|
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: '计划员', |
|
|
|
label: '计划员', |
|
|
|
prop: 'planUser', |
|
|
|
prop: 'planUser', |
|
|
|
@ -683,6 +754,17 @@ export default { |
|
|
|
sortable: true, |
|
|
|
sortable: true, |
|
|
|
span: 24, |
|
|
|
span: 24, |
|
|
|
width: 100, |
|
|
|
width: 100, |
|
|
|
|
|
|
|
type: 'select', |
|
|
|
|
|
|
|
dicData: [ |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
value: '11000', |
|
|
|
|
|
|
|
label: '未接收', |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
value: '11001', |
|
|
|
|
|
|
|
label: '已接收', |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
], |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: '接收人', |
|
|
|
label: '接收人', |
|
|
|
@ -698,7 +780,12 @@ export default { |
|
|
|
search: false, |
|
|
|
search: false, |
|
|
|
sortable: true, |
|
|
|
sortable: true, |
|
|
|
span: 24, |
|
|
|
span: 24, |
|
|
|
width: 100, |
|
|
|
width: 150, |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
label: '创建时间', |
|
|
|
|
|
|
|
prop: 'createTime', |
|
|
|
|
|
|
|
width: '140', |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: '备注', |
|
|
|
label: '备注', |
|
|
|
@ -720,6 +807,20 @@ export default { |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
methods: { |
|
|
|
methods: { |
|
|
|
|
|
|
|
sortChange({ prop, order }) { |
|
|
|
|
|
|
|
if (!prop) { |
|
|
|
|
|
|
|
// 如果取消排序,清空排序参数 |
|
|
|
|
|
|
|
this.query.orderByField = undefined; |
|
|
|
|
|
|
|
this.query.isAsc = undefined; |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
const orderByField = prop.replace(/([a-z])([A-Z0-9])/g, '$1_$2').toUpperCase(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.query.orderByField = orderByField; |
|
|
|
|
|
|
|
this.query.isAsc = order === 'ascending'?true:false; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// // 重新加载数据 |
|
|
|
|
|
|
|
this.onLoad(this.page, this.query); |
|
|
|
|
|
|
|
}, |
|
|
|
async editData(row) { |
|
|
|
async editData(row) { |
|
|
|
this.editForm = JSON.parse(JSON.stringify(row)); |
|
|
|
this.editForm = JSON.parse(JSON.stringify(row)); |
|
|
|
const partRes = await getPartList({ |
|
|
|
const partRes = await getPartList({ |
|
|
|
@ -773,9 +874,9 @@ export default { |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
changePart(val) { |
|
|
|
partCodeChange(val,value,item) { |
|
|
|
let tmp = this.partCodeList.find(item => item.partCode == val); |
|
|
|
console.log(val, value,item,9090909090) |
|
|
|
this.editForm.partName = tmp.partName; |
|
|
|
this.editForm.partName =item.partName |
|
|
|
}, |
|
|
|
}, |
|
|
|
submitEdit() { |
|
|
|
submitEdit() { |
|
|
|
this.$refs.form.validate(valid => { |
|
|
|
this.$refs.form.validate(valid => { |
|
|
|
|