Commit 66587bed by zhangtw

入库页字典配置

parent 5a9423a2
...@@ -247,7 +247,7 @@ import WarehouseSelector from "@/views/compononents/WarehouseSelector.vue" ...@@ -247,7 +247,7 @@ import WarehouseSelector from "@/views/compononents/WarehouseSelector.vue"
import LocationSelector from "@/views/compononents/LocationSelector.vue" import LocationSelector from "@/views/compononents/LocationSelector.vue"
export default { export default {
name: "Inbound", name: "InboundDetails",
dicts: ['label_color'], dicts: ['label_color'],
filters: { filters: {
dictFilter(value, dictType) { dictFilter(value, dictType) {
...@@ -351,7 +351,7 @@ export default { ...@@ -351,7 +351,7 @@ export default {
} }
}, },
mounted(){ mounted(){
console.log("标签颜色字典数据:", this.dict.type.label_color); // console.log("标签颜色字典数据:", this.dict.type.label_color);
}, },
created() { created() {
this.getList() this.getList()
...@@ -377,7 +377,7 @@ export default { ...@@ -377,7 +377,7 @@ export default {
/** 查询入库列表 */ /** 查询入库列表 */
getList() { getList() {
this.loading = true this.loading = true
console.log(this.queryParams)
inbound_details(this.queryParams).then(response => { inbound_details(this.queryParams).then(response => {
this.inboundList = response.rows this.inboundList = response.rows
this.total = response.total this.total = response.total
...@@ -464,7 +464,6 @@ export default { ...@@ -464,7 +464,6 @@ export default {
this.queryLocationName = null this.queryLocationName = null
this.queryParams.locationId = null this.queryParams.locationId = null
this.handleQuery() this.handleQuery()
console.log('selected warehouse', warehouse);
}, },
/** 清空仓库选择 */ /** 清空仓库选择 */
clearQueryWarehouse() { clearQueryWarehouse() {
...@@ -578,7 +577,6 @@ export default { ...@@ -578,7 +577,6 @@ export default {
// 捕获取消确认/接口失败的异常 // 捕获取消确认/接口失败的异常
if (error !== 'cancel') { if (error !== 'cancel') {
this.$message.error('确认入库失败:' + (error.msg || '网络异常')); this.$message.error('确认入库失败:' + (error.msg || '网络异常'));
console.log(error)
} }
} }
}, },
......
...@@ -88,10 +88,10 @@ ...@@ -88,10 +88,10 @@
<el-form-item label="入库类型" prop="orderTypeId"> <el-form-item label="入库类型" prop="orderTypeId">
<el-select v-model="queryParams.orderTypeId" placeholder="请选择入库类型" clearable> <el-select v-model="queryParams.orderTypeId" placeholder="请选择入库类型" clearable>
<el-option <el-option
v-for="item in inBoundTypeOptions" v-for="dict in dict.type.inbound_type"
:key="item.orderTypeId" :key="dict.value"
:label="item.orderTypeName" :label="dict.label"
:value="item.orderTypeId" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -117,20 +117,20 @@ ...@@ -117,20 +117,20 @@
<el-form-item label="入库单状态" prop="orderStatus"> <el-form-item label="入库单状态" prop="orderStatus">
<el-select v-model="queryParams.orderStatus" placeholder="请选择入库单状态" clearable> <el-select v-model="queryParams.orderStatus" placeholder="请选择入库单状态" clearable>
<el-option <el-option
v-for="item in inBoundStatusOptions" v-for="dict in dict.type.inbound_status"
:key="item.orderStatus" :key="dict.value"
:label="item.orderStatusName" :label="dict.label"
:value="item.orderStatus" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="订单类型" prop="orderType"> <el-form-item label="订单类型" prop="orderType">
<el-select v-model="queryParams.orderType" placeholder="请选择订单类型" clearable> <el-select v-model="queryParams.orderType" placeholder="请选择订单类型" clearable>
<el-option <el-option
v-for="item in orderTypeOptions" v-for="dict in dict.type.order_type"
:key="item.orderType" :key="dict.value"
:label="item.orderTypeName" :label="dict.label"
:value="item.orderType" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -151,16 +151,20 @@ ...@@ -151,16 +151,20 @@
<el-table-column label="货主" align="center" prop="ownerName" width="200"/> <el-table-column label="货主" align="center" prop="ownerName" width="200"/>
<el-table-column label="入库类型" align="center" prop="orderTypeId" :show-overflow-tooltip="true" width="200"> <el-table-column label="入库类型" align="center" prop="orderTypeId" :show-overflow-tooltip="true" width="200">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag type="success" size="small"> <el-tag
{{ getInBoundTypeName(scope.row.orderTypeId) }} :type="getDictListClass('inbound_type',scope.row.orderTypeId)"
size="small">
{{ getDictLabel('inbound_type',scope.row.orderTypeId) }}
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="订单类型" align="center" prop="orderType" :show-overflow-tooltip="true" width="200"> <el-table-column label="订单类型" align="center" prop="orderType" :show-overflow-tooltip="true" width="200">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag type="success" size="small"> <el-tag
{{ getOrderTypeName(scope.row.orderType) }} :type="getDictListClass('order_type',scope.row.orderTypeId)"
size="small">
{{ getDictLabel('order_type',scope.row.orderTypeId) }}
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
...@@ -168,8 +172,8 @@ ...@@ -168,8 +172,8 @@
<el-table-column label="入库单状态" align="center" prop="orderStatus" width="200"> <el-table-column label="入库单状态" align="center" prop="orderStatus" width="200">
<!-- 状态显示 --> <!-- 状态显示 -->
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag :type="getStatusType(scope.row.orderStatus)" size="small" width="200"> <el-tag :type="getDictListClass('inbound_status',scope.row.orderStatus+'')" size="small" width="200">
{{ getStatusName(scope.row.orderStatus) }} {{ getDictLabel('inbound_status',scope.row.orderStatus+"") }}
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
...@@ -248,10 +252,10 @@ ...@@ -248,10 +252,10 @@
<el-form-item label="入库类型" prop="orderTypeId"> <el-form-item label="入库类型" prop="orderTypeId">
<el-select v-model="form.orderTypeId" placeholder="请选择入库类型" clearable> <el-select v-model="form.orderTypeId" placeholder="请选择入库类型" clearable>
<el-option <el-option
v-for="item in inBoundTypeOptions" v-for="dict in dict.type.inbound_type"
:key="item.orderTypeId" :key="dict.value"
:label="item.orderTypeName" :label="dict.label"
:value="item.orderTypeId" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -291,18 +295,18 @@ ...@@ -291,18 +295,18 @@
<el-form-item label="订单类型" prop="orderType"> <el-form-item label="订单类型" prop="orderType">
<el-select v-model="form.orderType" placeholder="请选择订单类型" clearable> <el-select v-model="form.orderType" placeholder="请选择订单类型" clearable>
<el-option <el-option
v-for="item in orderTypeOptions" v-for="dict in dict.type.order_type"
:key="item.orderType" :key="dict.value"
:label="item.orderTypeName" :label="dict.label"
:value="item.orderType" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-divider content-position="center">入库其他信息</el-divider> <!-- <el-divider content-position="center">入库其他信息</el-divider> -->
<el-row :gutter="24"> <!-- <el-row :gutter="24">
<el-col :span="12"> <el-col :span="12">
<div class="form-col"> <div class="form-col">
<el-form-item label="计划量" prop="totalPlannedQuantity"> <el-form-item label="计划量" prop="totalPlannedQuantity">
...@@ -311,9 +315,9 @@ ...@@ -311,9 +315,9 @@
<el-form-item label="总件数" prop="totalPackages"> <el-form-item label="总件数" prop="totalPackages">
<el-input v-model="form.totalPackages" placeholder="请输入总件数" /> <el-input v-model="form.totalPackages" placeholder="请输入总件数" />
</el-form-item> </el-form-item>
<!-- <el-form-item label="仓库ID" prop="warehouseId"> <el-form-item label="仓库ID" prop="warehouseId">
<el-input v-model="form.warehouseId" placeholder="请输入仓库ID" /> <el-input v-model="form.warehouseId" placeholder="请输入仓库ID" />
</el-form-item> --> </el-form-item>
</div> </div>
</el-col> </el-col>
...@@ -325,7 +329,7 @@ ...@@ -325,7 +329,7 @@
<el-input v-model="form.opUserName" placeholder="请输入负责人" /> <el-input v-model="form.opUserName" placeholder="请输入负责人" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row> -->
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
...@@ -380,16 +384,16 @@ ...@@ -380,16 +384,16 @@
<el-descriptions-item label="批次ID">{{ detailForm.batchId || '-' }}</el-descriptions-item> <el-descriptions-item label="批次ID">{{ detailForm.batchId || '-' }}</el-descriptions-item>
<el-descriptions-item label="货主">{{ detailForm.ownerName || detailForm.ownerId || '-' }}</el-descriptions-item> <el-descriptions-item label="货主">{{ detailForm.ownerName || detailForm.ownerId || '-' }}</el-descriptions-item>
<el-descriptions-item label="入库类型"> <el-descriptions-item label="入库类型">
{{ getInBoundTypeName(detailForm.orderTypeId) }} {{ getDictLabel('inbound_type',detailForm.orderTypeId) }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="订单类型"> <el-descriptions-item label="订单类型">
{{ getOrderTypeName(detailForm.orderType) }} {{ getDictLabel('order_type',detailForm.orderType) }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="入库日期">{{ detailForm.inboundDate || '-' }}</el-descriptions-item> <el-descriptions-item label="入库日期">{{ detailForm.inboundDate || '-' }}</el-descriptions-item>
<el-descriptions-item label="负责人">{{ detailForm.opUserName || '-' }}</el-descriptions-item> <el-descriptions-item label="负责人">{{ detailForm.opUserName || '-' }}</el-descriptions-item>
<el-descriptions-item label="计划量">{{ detailForm.totalPlannedQuantity || '-' }}</el-descriptions-item> <el-descriptions-item label="计划量">{{ detailForm.totalPlannedQuantity || '-' }}</el-descriptions-item>
<el-descriptions-item label="实际量">{{ detailForm.totalActualQuantity || '-' }}</el-descriptions-item> <el-descriptions-item label="实际量">{{ detailForm.totalActualQuantity || '-' }}</el-descriptions-item>
<el-descriptions-item label="总件数">{{ detailForm.totalPackages || '-' }}</el-descriptions-item> <!-- <el-descriptions-item label="总件数">{{ detailForm.totalPackages || '-' }}</el-descriptions-item> -->
<!-- <el-descriptions-item label="仓库ID">{{ detailForm.warehouseId || '-' }}</el-descriptions-item> --> <!-- <el-descriptions-item label="仓库ID">{{ detailForm.warehouseId || '-' }}</el-descriptions-item> -->
<el-descriptions-item label="备注" :span="2"> <el-descriptions-item label="备注" :span="2">
<div class="remark-text">{{ detailForm.remark || '-' }}</div> <div class="remark-text">{{ detailForm.remark || '-' }}</div>
...@@ -475,6 +479,7 @@ import LocationSelector from "@/views/compononents/LocationSelector.vue" ...@@ -475,6 +479,7 @@ import LocationSelector from "@/views/compononents/LocationSelector.vue"
export default { export default {
name: "Inbound", name: "Inbound",
dicts: ['inbound_type','order_type','inbound_status'],
components: { components: {
InboundItems, InboundItems,
PageTitle, PageTitle,
...@@ -487,19 +492,11 @@ export default { ...@@ -487,19 +492,11 @@ export default {
}, },
data() { data() {
return { return {
inBoundTypeOptions: [
{ orderTypeId: '1', orderTypeName: '入库类型1' },
{ orderTypeId: '2', orderTypeName: '入库类型2' }
],
inBoundStatusOptions: [ inBoundStatusOptions: [
{ orderStatus: 1, orderStatusName: '草稿', type: 'info' }, { orderStatus: 1, orderStatusName: '草稿', type: 'info' },
{ orderStatus: 2, orderStatusName: '已完成', type: 'success' }, { orderStatus: 2, orderStatusName: '已完成', type: 'success' },
{ orderStatus: 3, orderStatusName: '已取消', type: 'danger' } { orderStatus: 3, orderStatusName: '已取消', type: 'danger' }
], ],
orderTypeOptions: [
{ orderType: '1', orderTypeName: '订单类型1' },
{ orderType: '2', orderTypeName: '订单类型2' }
],
// 货主选择相关(对齐退库组件) // 货主选择相关(对齐退库组件)
queryOwnerName: null, queryOwnerName: null,
ownerSelectorVisible: false, ownerSelectorVisible: false,
...@@ -606,6 +603,9 @@ export default { ...@@ -606,6 +603,9 @@ export default {
} }
} }
}, },
mounted() {
console.log("dict:",this.dict)
},
created() { created() {
this.getList() this.getList()
}, },
...@@ -631,10 +631,19 @@ export default { ...@@ -631,10 +631,19 @@ export default {
const item = this.inBoundStatusOptions.find(item => item.orderStatus === status) const item = this.inBoundStatusOptions.find(item => item.orderStatus === status)
return item ? item.orderStatusName : status return item ? item.orderStatusName : status
}, },
getInBoundTypeName(typeId) { getDictLabel(dictType, value) {
if (!typeId) return '未知类型' // 1. 空值/字典不存在时返回默认值
const item = this.inBoundTypeOptions.find(item => item.orderTypeId === typeId) if (!value || !this.dict?.type?.[dictType]) return '-';
return item ? item.orderTypeName : '未知类型' // 2. 从字典数组中匹配 value 对应的 label
const dictItem = this.dict.type[dictType].find(item => item.value === value);
return dictItem?.label || '-';
},
getDictListClass(dictType, value){
// 1. 空值/字典不存在时返回默认值
if (!value || !this.dict?.type?.[dictType]) return '-';
// 2. 从字典数组中匹配 value 对应的 label
const dictItem = this.dict.type[dictType].find(item => item.value === value);
return dictItem?.raw?.listClass || '';
}, },
getOrderTypeName(type) { getOrderTypeName(type) {
if (!type) return '未知类型' if (!type) return '未知类型'
...@@ -948,7 +957,6 @@ export default { ...@@ -948,7 +957,6 @@ export default {
inboundOrderId: this.form.id || null inboundOrderId: this.form.id || null
})) }))
} }
console.log(submitData)
if (this.form.id != null) { if (this.form.id != null) {
updateInbound(submitData).then(response => { updateInbound(submitData).then(response => {
this.$message.success("修改成功") this.$message.success("修改成功")
...@@ -957,7 +965,6 @@ export default { ...@@ -957,7 +965,6 @@ export default {
}) })
} else { } else {
addInbound(submitData).then(response => { addInbound(submitData).then(response => {
console.log(submitData)
this.$message.success("新增成功") this.$message.success("新增成功")
this.open = false this.open = false
this.getList() this.getList()
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论