opt:提交修改bom木箱类型功能

This commit is contained in:
DESKTOP-5DIJMF9\admin
2025-05-02 17:25:46 +08:00
parent 089193516a
commit 3f00df76cf
10 changed files with 237 additions and 6 deletions

View File

@@ -39,5 +39,12 @@ export function showDetail2(params) {
params
})
}
export function showBom2(params) {
return request({
url: 'api/bstIvtStockingivt/showBom2',
method: 'get',
params
})
}
export default { add, edit, del, showDetail, showDetail2 }
export default { add, edit, del, showDetail, showDetail2, showBom2 }

View File

@@ -31,5 +31,18 @@ export function confirmUpdate(data) {
data
})
}
export default { add, edit, del, confirmUpdate }
export function getBoxTypes(params) {
return request({
url: 'api/boxtype/getBoxTypes',
method: 'get',
params
})
}
export function confirmBox(data) {
return request({
url: 'api/boxtype/confirmBox',
method: 'post',
data
})
}
export default { add, edit, del, confirmUpdate, getBoxTypes, confirmBox }

View File

@@ -488,7 +488,11 @@
<el-table-column v-if="false" prop="workorder_id" label="分切计划标识" />
<el-table-column prop="status" label="状态" :formatter="formatStatusName" />
<el-table-column prop="order_type" label="订单类型" :formatter="formatTypeName" />
<el-table-column prop="mfg_order_name" label="订单号" min-width="140" show-overflow-tooltip />
<el-table-column prop="mfg_order_name" label="订单号" min-width="200" >
<template slot-scope="scope">
<el-link type="primary" @click="toView2(scope.$index, scope.row)">{{ scope.row.mfg_order_name }}</el-link>
</template>
</el-table-column>
<el-table-column prop="container_name" label="子卷号" min-width="140" show-overflow-tooltip />
<el-table-column prop="parent_container_name" label="母卷号" min-width="120" show-overflow-tooltip />
<el-table-column prop="ware_house" label="来源位置" :formatter="formatHouseName" width="120px" />
@@ -557,6 +561,7 @@
<!--分页组件-->
<pagination />
</div>
<tube-dialog2 :dialog-show.sync="showView2" :rowmst="mstrow" @AddChanged="querytable" />
</div>
</template>
@@ -565,8 +570,8 @@ import crudSlittingproductionplan from '@/views/wms/pdm/order/slittingplan/slitt
import CRUD, { crud, form, header, presenter } from '@crud/crud'
import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination'
import TubeDialog2 from '@/views/wms/pdm/order/slittingplan/tubeDialog2.vue'
const defaultForm = {
workorder_id: null,
@@ -619,7 +624,7 @@ const defaultForm = {
export default {
name: 'Slittingproductionplan',
dicts: ['product_area', 'order_type', 'cut_product_status', 'ware_house', 'paper_tube_or_frp', 'IS_OR_NOT'],
components: { pagination, crudOperation, rrOperation, udOperation },
components: { pagination, crudOperation, rrOperation, TubeDialog2 },
mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() {
return CRUD({
@@ -640,6 +645,8 @@ export default {
data() {
return {
permission: {},
showView2: false,
mstrow: {},
rules: {
order_type: [
{ required: true, message: '分切订单类型不能为空', trigger: 'blur' }
@@ -679,6 +686,14 @@ export default {
hand() {
this.crud.toQuery()
},
toView2(index, row) {
this.showView2 = true
this.mstrow = row
},
querytable() {
this.$refs.table.clearSelection()
this.crud.toQuery()
},
upMaterFinish() {
const _selectData = this.$refs.table.selection
const data = {

View File

@@ -0,0 +1,131 @@
<template>
<el-dialog
append-to-body
title="订单BOM信息"
:visible.sync="dialogVisible"
destroy-on-close
width="600px"
@close="close"
@open="open"
>
<el-form ref="form" style="border: 1px solid #cfe0df;margin-top: 10px;padding-top: 10px;" :inline="true" :model="form" size="mini" label-width="100px" label-suffix=":">
<el-form-item label="id" prop="id">
<label slot="label">id:</label>
<el-input v-model="form.id" disabled placeholder="系统生成" clearable style="width: 300px" />
</el-form-item>
<el-form-item label="工单号" prop="mfgOrder">
<label slot="label">工单号:</label>
<el-input v-model="form.mfgOrder" disabled clearable style="width: 300px" />
</el-form-item>
<el-form-item label="木箱编码" prop="productName">
<label slot="label">木箱编码:</label>
<el-input v-model="form.productName" disabled clearable style="width: 300px" />
</el-form-item>
<el-form-item label="木箱描述" prop="description">
<el-select
v-model="form.description"
placeholder="木箱描述"
style="width: 400px"
class="filter-item"
clearable
filterable
@change="hand"
>
<el-option
v-for="item in typelist"
:key="item.box_type"
:label="item.box_name"
:value="item.box_type"
/>
</el-select>
</el-form-item>
<el-form-item label="管芯编码" prop="carrierName">
<label slot="label">管芯编码:</label>
<el-input v-model="form.carrierName" disabled clearable style="width: 300px" />
</el-form-item>
<el-form-item label="管芯描述" prop="carrierDescription">
<label slot="label">管芯描述:</label>
<el-input v-model="form.carrierDescription" disabled clearable style="width: 300px" />
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="close"> </el-button>
<el-button type="primary" @click="submit"> </el-button>
</span>
</el-dialog>
</template>
<script>
import crudBstIvtStockingivt from '@/views/b_lms/bst/ivt/stockingivt/bstIvtStockingivt'
import crudBoxtype from '@/views/wms/basedata/st/boxType/boxtype'
import CRUD, { crud } from '@crud/crud'
export default {
name: 'TubeDialog2',
components: {},
mixins: [crud()],
props: {
dialogShow: {
type: Boolean,
default: false
},
rowmst: {
type: Object
}
},
data() {
return {
dialogVisible: false,
typelist: [],
form: {},
row: {}
}
},
watch: {
dialogShow: {
handler(newValue) {
this.dialogVisible = newValue
}
},
rowmst: {
handler(newValue) {
this.row = newValue
}
}
},
methods: {
open() {
this.queryTableDtl()
this.getBoxTypes()
},
hand(value) {
this.form.productName = value
},
close() {
this.$emit('update:dialogShow', false)
this.form = {}
this.$emit('AddChanged')
},
getBoxTypes() {
crudBoxtype.getBoxTypes().then(res => {
this.typelist = res
})
},
submit() {
crudBoxtype.confirmBox(this.form).then(res => {
this.typelist = res
this.crud.notify('保存成功!', CRUD.NOTIFICATION_TYPE.SUCCESS)
this.close()
})
},
queryTableDtl() {
crudBstIvtStockingivt.showBom2({ 'mfg_order_name': this.row.mfg_order_name }).then(res => {
this.form = res
})
}
}
}
</script>
<style scoped>
</style>