feat(wms/coil): 添加业务目的和关联订单功能
在基础面板中添加业务目的下拉选择和关联订单开关功能,并创建两个新的视图组件分别展示这些功能。同时更新字典数据以支持业务目的选项。
This commit is contained in:
@@ -165,6 +165,22 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="业务目的" align="center" prop="businessPurpose" v-if="showBusinessPurpose" width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-select v-model="scope.row.businessPurpose" placeholder="业务目的" filterable
|
||||
@change="handleBusinessPurposeChange(scope.row)">
|
||||
<el-option v-for="item in dict.type.coil_business_purpose" :key="item.value" :value="item.value"
|
||||
:label="item.label" />
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="关联订单" align="center" prop="relatedToOrder" v-if="showRelatedToOrder" width="150">
|
||||
<template slot-scope="scope">
|
||||
<el-switch @change="handleRelatedToOrderChange(scope.row)" v-model="scope.row.isRelatedToOrder" :active-value="1" :inactive-value="0" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="发货计划" align="center" prop="nextWarehouseId" v-if="showWaybill" width="150">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.bindPlanName || '-' }}
|
||||
@@ -436,7 +452,7 @@ export default {
|
||||
AbnormalList,
|
||||
LogTable,
|
||||
},
|
||||
dicts: ['product_coil_status', 'coil_material', 'coil_itemname', 'coil_manufacturer', 'coil_quality_status', 'warehouse_sync'],
|
||||
dicts: ['product_coil_status', 'coil_material', 'coil_itemname', 'coil_manufacturer', 'coil_quality_status', 'warehouse_sync', 'coil_business_purpose'],
|
||||
props: {
|
||||
qrcode: {
|
||||
type: Boolean,
|
||||
@@ -506,6 +522,14 @@ export default {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
showBusinessPurpose: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
showRelatedToOrder: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -720,6 +744,39 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
handleBusinessPurposeChange(row) {
|
||||
if (!this.showBusinessPurpose) {
|
||||
return;
|
||||
}
|
||||
updateMaterialCoilSimple(row).then(res => {
|
||||
if (res.code === 200) {
|
||||
this.$message({
|
||||
message: '更新成功',
|
||||
type: 'success',
|
||||
});
|
||||
} else {
|
||||
this.$message({
|
||||
message: res.msg || '更新失败',
|
||||
type: 'error',
|
||||
});
|
||||
}
|
||||
})
|
||||
},
|
||||
handleRelatedToOrderChange(row) {
|
||||
updateMaterialCoilSimple(row).then(res => {
|
||||
if (res.code === 200) {
|
||||
this.$message({
|
||||
message: '更新成功',
|
||||
type: 'success',
|
||||
});
|
||||
} else {
|
||||
this.$message({
|
||||
message: res.msg || '更新失败',
|
||||
type: 'error',
|
||||
});
|
||||
}
|
||||
})
|
||||
},
|
||||
// 打印标签
|
||||
handlePrintLabel(row) {
|
||||
const item = row.itemType === 'product' ? row.product : row.rawMaterial;
|
||||
|
||||
27
klp-ui/src/views/wms/coil/views/base/businessPurpose.vue
Normal file
27
klp-ui/src/views/wms/coil/views/base/businessPurpose.vue
Normal file
@@ -0,0 +1,27 @@
|
||||
<template>
|
||||
<BasePage :qrcode="qrcode" :querys="querys" :labelType="labelType" :hideWarehouseQuery="hideWarehouseQuery"
|
||||
:hideType="hideType" :showControl="showControl" :showBusinessPurpose="showBusinessPurpose" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import BasePage from '../../panels/base.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
BasePage
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
qrcode: false,
|
||||
querys: {
|
||||
// dataType: 1,
|
||||
},
|
||||
hideWarehouseQuery: true,
|
||||
showBusinessPurpose: true,
|
||||
showControl: false,
|
||||
labelType: '2',
|
||||
hideType: false,
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
27
klp-ui/src/views/wms/coil/views/base/relatedToOrder.vue
Normal file
27
klp-ui/src/views/wms/coil/views/base/relatedToOrder.vue
Normal file
@@ -0,0 +1,27 @@
|
||||
<template>
|
||||
<BasePage :qrcode="qrcode" :querys="querys" :labelType="labelType" :hideWarehouseQuery="hideWarehouseQuery"
|
||||
:hideType="hideType" :showControl="showControl" :showRelatedToOrder="showRelatedToOrder" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import BasePage from '../../panels/base.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
BasePage
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
qrcode: false,
|
||||
querys: {
|
||||
// dataType: 1,
|
||||
},
|
||||
hideWarehouseQuery: true,
|
||||
showRelatedToOrder: true,
|
||||
showControl: false,
|
||||
labelType: '2',
|
||||
hideType: false,
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user