更新内容

main
FOAM 2025-09-26 14:31:54 +08:00
parent fdbe124e02
commit efcda66992
8 changed files with 25 additions and 193 deletions

View File

@ -7,7 +7,8 @@
<el-input v-model="query.code" clearable placeholder="库位号" style="width: 150px;" <el-input v-model="query.code" clearable placeholder="库位号" style="width: 150px;"
@keyup.enter.native="crud.toQuery" @keyup.enter.native="crud.toQuery"
/> />
<AreaCodeSelect v-model="query.areaCode" value-key="'id'" :bexb="null" filterable placeholder="请选择库区" style="width: 185px;" <AreaSelect v-model="query.areaCode" :return-type="'value'" :return-value-key="'code'" :bexb="false"
class="filter-item" placeholder="库区" style="width: 155px;"
/> />
<el-input v-model="query.itemCode" clearable placeholder="品番" style="width: 150px;" <el-input v-model="query.itemCode" clearable placeholder="品番" style="width: 150px;"
@keyup.enter.native="crud.toQuery" @keyup.enter.native="crud.toQuery"
@ -145,8 +146,8 @@
@selection-change="crud.selectionChangeHandler" border @selection-change="crud.selectionChangeHandler" border
> >
<el-table-column type="selection" width="55"/> <el-table-column type="selection" width="55"/>
<el-table-column :show-overflow-tooltip="true" prop="area.name" label="库区"> <el-table-column prop="id" label="序号"/>
</el-table-column> <el-table-column prop="area.name" label="库区"/>
<el-table-column prop="code" label="库位号"/> <el-table-column prop="code" label="库位号"/>
<!-- <el-table-column prop="name" label="名称"/>--> <!-- <el-table-column prop="name" label="名称"/>-->
<el-table-column prop="itemCode" label="品番"/> <el-table-column prop="itemCode" label="品番"/>
@ -207,7 +208,7 @@ import crudStock from '@/api/stock'
import pointUrl from '@/api/point' import pointUrl from '@/api/point'
import {mapGetters} from "vuex"; import {mapGetters} from "vuex";
import {queryBomPrintListX} from "@/api/bomAccount"; import {queryBomPrintListX} from "@/api/bomAccount";
import AreaCodeSelect from "@/views/generic-component/AreaCodeSelect.vue"; import AreaSelect from "@/views/generic-component/AreaSelect.vue";
const defaultForm = { const defaultForm = {
id: null, id: null,
@ -222,7 +223,8 @@ const defaultForm = {
} }
export default { export default {
name: 'Point', name: 'Point',
components: {AreaCodeSelect, Treeselect, pagination, crudOperation, udOperation, rrOperation, viewFullStockIn, viewFullStockOut }, components: {
AreaSelect, Treeselect, pagination, crudOperation, udOperation, rrOperation, viewFullStockIn, viewFullStockOut },
mixins: [presenter(), header(), form(defaultForm), crud()], mixins: [presenter(), header(), form(defaultForm), crud()],
dicts: ['base_staus', 'use_status', 'point_type', 'agv_on_off'], dicts: ['base_staus', 'use_status', 'point_type', 'agv_on_off'],
cruds() { cruds() {

View File

@ -49,12 +49,9 @@
:value="item.value" :value="item.value"
/> />
</el-select> </el-select>
<el-date-picker <el-input v-model="query.propC1" clearable placeholder="批次号" style="width: 150px;"
v-model="query.propD1" @keyup.enter.native="crud.toQuery"
type="date" />
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择日期"
></el-date-picker>
<el-select v-model="query.areaNames" value-key="id" clearable placeholder="库区" style="width: 180px" filterable multiple reserve-keyword="true" > <el-select v-model="query.areaNames" value-key="id" clearable placeholder="库区" style="width: 180px" filterable multiple reserve-keyword="true" >
<el-option <el-option
@ -217,8 +214,8 @@
<el-table-column prop="itemKey.item.name" label="品番名称"/> <el-table-column prop="itemKey.item.name" label="品番名称"/>
<el-table-column prop="stockCode" label="箱单号" align="center"/> <el-table-column prop="stockCode" label="箱单号" align="center"/>
<el-table-column prop="quantity" label="数量"/> <el-table-column prop="quantity" label="数量"/>
<el-table-column prop="queuedQty" label="占用数"/> <el-table-column prop="queuedQty" label="占用数" />
<el-table-column prop="itemKey.propC1" label="批次号"/> <el-table-column prop="itemKey.propC1" label="批次号" width="150"/>
<el-table-column prop="itemKey.propC2" label="税别"/> <el-table-column prop="itemKey.propC2" label="税别"/>
<el-table-column prop="itemKey.item.extendStr2" label="保管期限"/> <el-table-column prop="itemKey.item.extendStr2" label="保管期限"/>
<!-- <el-table-column prop="zzkw.code" label="制造库位" align="center"/> <!-- <el-table-column prop="zzkw.code" label="制造库位" align="center"/>

View File

@ -42,12 +42,7 @@
:value="item.value" :value="item.value"
/> />
</el-select> </el-select>
<el-date-picker
v-model="query.propD1"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择日期"
></el-date-picker>
<el-select v-model="query.areaNames" value-key="id" clearable placeholder="指示纳所" style="width: 180px" filterable multiple reserve-keyword="true" > <el-select v-model="query.areaNames" value-key="id" clearable placeholder="指示纳所" style="width: 180px" filterable multiple reserve-keyword="true" >
<el-option <el-option

View File

@ -50,12 +50,9 @@
:value="item.value" :value="item.value"
/> />
</el-select> </el-select>
<el-date-picker <el-input v-model="query.propC1" clearable placeholder="批次号" style="width: 150px;"
v-model="query.propD1" @keyup.enter.native="crud.toQuery"
type="date" />
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择日期"
></el-date-picker>
<el-select v-model="query.areaNames" value-key="id" clearable placeholder="库区" style="width: 180px" filterable multiple reserve-keyword="true" > <el-select v-model="query.areaNames" value-key="id" clearable placeholder="库区" style="width: 180px" filterable multiple reserve-keyword="true" >
<el-option <el-option
@ -200,7 +197,7 @@
<el-table-column prop="stockCode" label="箱单号" align="center"/> <el-table-column prop="stockCode" label="箱单号" align="center"/>
<el-table-column prop="quantity" label="数量"/> <el-table-column prop="quantity" label="数量"/>
<el-table-column prop="queuedQty" label="占用数"/> <el-table-column prop="queuedQty" label="占用数"/>
<el-table-column prop="itemKey.propC1" label="批次号"/> <el-table-column prop="itemKey.propC1" label="批次号" width="150"/>
<el-table-column prop="itemKey.propC2" label="税别"/> <el-table-column prop="itemKey.propC2" label="税别"/>
<el-table-column prop="itemKey.item.extendStr2" label="保管期限"/> <el-table-column prop="itemKey.item.extendStr2" label="保管期限"/>
<!-- <el-table-column v-if="checkPer(['admin','fileManagement:edit','fileManagement:del'])" label="操作" <!-- <el-table-column v-if="checkPer(['admin','fileManagement:edit','fileManagement:del'])" label="操作"

View File

@ -208,7 +208,6 @@ import { formatDate } from '@/utils/commonUtils'
import ItemSelect from '@/views/generic-component/ItemSelect.vue' import ItemSelect from '@/views/generic-component/ItemSelect.vue'
import BomAccountPointSelect from '@/views/generic-component/BomAccountPointSelect.vue' import BomAccountPointSelect from '@/views/generic-component/BomAccountPointSelect.vue'
import { queryPickDetailXd } from '@/api/inventory' import { queryPickDetailXd } from '@/api/inventory'
import AreaCodeSelect from '@/views/generic-component/AreaCodeSelect.vue'
import AreaSelect from '@/views/generic-component/AreaSelect.vue' import AreaSelect from '@/views/generic-component/AreaSelect.vue'
import PointCodeSelect from '@/views/generic-component/PointCodeSelect.vue' import PointCodeSelect from '@/views/generic-component/PointCodeSelect.vue'
@ -221,7 +220,6 @@ export default {
components: { components: {
PointCodeSelect, PointCodeSelect,
AreaSelect, AreaSelect,
AreaCodeSelect,
XdTask, XdTask,
BomAccountPointSelect, BomAccountPointSelect,
ItemSelect, DateRangePicker, PickTask, pagination, crudOperation, rrOperation, udOperation ItemSelect, DateRangePicker, PickTask, pagination, crudOperation, rrOperation, udOperation

View File

@ -5,12 +5,13 @@
<div v-if="crud.props.searchToggle"> <div v-if="crud.props.searchToggle">
<!-- 搜索 --> <!-- 搜索 -->
<!-- <label class="el-form-item-label">出库库区</label>--> <!-- <label class="el-form-item-label">出库库区</label>-->
<!-- <el-input v-model="query.area" clearable placeholder="出库库区" style="width: 185px;" class="filter-item" @keyup.enter.native="crud.toQuery" />--> <!--<AreaSelect v-model="query.ckAreaCode" :return-type="'value'" :return-value-key="'code'" :bexb="false"
<AreaSelect :value-key="'id'" v-model="query.rAreaCode" @change="getChangeAreaValue" :bexb="null"/> class="filter-item" placeholder="拣货库区" style="width: 155px;"
/>-->
<el-input v-model="query.code" clearable placeholder="单号" style="width: 185px;" class="filter-item" <el-input v-model="query.code" clearable placeholder="单号" style="width: 185px;" class="filter-item"
@keyup.enter.native="crud.toQuery" @keyup.enter.native="crud.toQuery"
/> />
<label class="el-form-item-label">状态</label> <label class="el-form-item-label">状态</label>
<el-select v-model="query.status" clearable placeholder="状态" value-key="id" class="filter-item" <el-select v-model="query.status" clearable placeholder="状态" value-key="id" class="filter-item"
@keyup.enter.native="crud.toQuery" @keyup.enter.native="crud.toQuery"
@ -305,18 +306,6 @@
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
<el-form-item label="出库库区" prop="area">
<!-- <el-input v-model="form.area" style="width: 370px;"/>-->
<el-select v-model="form.area" prop="area" value-key="id" style="width: 250px" clearable>
<el-option
v-for="item in areaOptions"
:key="item.id"
:label="item.code"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="单号" prop="code"> <el-form-item label="单号" prop="code">
<el-input :disabled="true" v-model="form.code" style="width: 250px;"/> <el-input :disabled="true" v-model="form.code" style="width: 250px;"/>
</el-form-item> </el-form-item>
@ -332,7 +321,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="单据类型"> <el-form-item label="单据类型">
<el-select v-model="form.billType" prop="area" value-key="id" style="width: 250px" clearable> <el-select v-model="form.billType" :disabled="true" value-key="id" style="width: 250px" clearable>
<el-option style="width: 250px" <el-option style="width: 250px"
v-for="item in billTypeOptions" v-for="item in billTypeOptions"
:key="item.id" :key="item.id"
@ -342,7 +331,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="订单数量"> <el-form-item label="订单数量">
<el-input v-model="form.orderQuantity" style="width: 250px;"/> <el-input v-model="form.orderQuantity" :disabled="true" style="width: 250px;"/>
</el-form-item> </el-form-item>
<el-form-item label="备注"> <el-form-item label="备注">
<el-input v-model="form.description" style="width: 250px;"/> <el-input v-model="form.description" style="width: 250px;"/>
@ -358,22 +347,10 @@
<el-dialog :visible.sync="saveOnOff" :title="'新增 '+ crud.status.title" width="400px" <el-dialog :visible.sync="saveOnOff" :title="'新增 '+ crud.status.title" width="400px"
> >
<el-form ref="form" :model="pickTicketFrom" :rules="rules" size="small" label-width="80px"> <el-form ref="form" :model="pickTicketFrom" :rules="rules" size="small" label-width="80px">
<el-form-item label="出库库区" prop="area">
<!-- <el-input v-model="form.area" style="width: 370px;"/>-->
<el-select v-model="pickTicketFrom.area" prop="area" value-key="id" style="width: 250px">
<el-option
v-for="item in areaOptions"
:key="item.id"
:label="item.code"
:value="item"
/>
</el-select>
</el-form-item>
<el-form-item label="单号" prop="code"> <el-form-item label="单号" prop="code">
<el-input :disabled="true" v-model="pickTicketFrom.code" style="width: 250px;"/> <el-input :disabled="true" v-model="pickTicketFrom.code" style="width: 250px;"/>
</el-form-item> </el-form-item>
<el-form-item label="订单日期" prop="orderDate"> <el-form-item label="订单日期" prop="orderDate">
<!-- <el-input v-model="pickTicketFrom.orderDate" style="width: 370px;"/>-->
<el-date-picker <el-date-picker
style="width: 250px" style="width: 250px"
v-model="pickTicketFrom.orderDate" v-model="pickTicketFrom.orderDate"
@ -416,7 +393,6 @@
@selection-change="selectionChangeHandlerTwo" :height="crud.tableHeight" border @selection-change="selectionChangeHandlerTwo" :height="crud.tableHeight" border
> >
<el-table-column type="selection" width="55"/> <el-table-column type="selection" width="55"/>
<el-table-column width="160px" prop="area" label="出库库区" align="center"/>
<el-table-column prop="code" label="单号" width="120px" align="center"/> <el-table-column prop="code" label="单号" width="120px" align="center"/>
<el-table-column prop="status" label="状态" align="center"> <el-table-column prop="status" label="状态" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
@ -428,15 +404,9 @@
{{ formatDate1(scope.row.orderDate) }} {{ formatDate1(scope.row.orderDate) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="100px" prop="shipDate" label="发货日期" align="center">
<template slot-scope="scope">
{{ formatDate1(scope.row.shipDate) }}
</template>
</el-table-column>
<el-table-column prop="orderQuantity" label="订单数量" align="center"/> <el-table-column prop="orderQuantity" label="订单数量" align="center"/>
<el-table-column prop="allocatedQuantity" label="出单数量" align="center"/> <el-table-column prop="allocatedQuantity" label="出单数量" align="center"/>
<el-table-column prop="bhQty" label="备货数量" align="center"/> <el-table-column prop="bhQty" label="备货数量" align="center"/>
<el-table-column prop="shippedQuantity" label="发货数量" align="center"/>
<el-table-column prop="billType" label="单据类型" align="center" width="120px"> <el-table-column prop="billType" label="单据类型" align="center" width="120px">
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.billType.name }} {{ scope.row.billType.name }}
@ -552,7 +522,7 @@ export default {
dicts: ['pick_status', 'inv_log_type', 'inc_dec'], dicts: ['pick_status', 'inv_log_type', 'inc_dec'],
cruds() { cruds() {
return CRUD({ return CRUD({
title: '出库', title: '其他出库',
url: 'api/pickTicket', url: 'api/pickTicket',
idField: 'id', idField: 'id',
sort: 'id,desc', sort: 'id,desc',

View File

@ -1,127 +0,0 @@
<template>
<el-select
v-model="selected"
@focus="fetchItems"
:placeholder="placeholder"
:filterable="filterable"
:value-key="valueKey"
:style="selectStyle"
@change="onChange"
>
<el-option
v-for="item in items"
:key="item.id"
:label="item.code"
:value="item.code"
>
<span>{{ item.code }}</span>
<span>{{ item.name }}</span>
</el-option>
</el-select>
</template>
<script>
import curdArea, {queryAreaList} from '@/api/area'
export default {
name: 'AreaCodeSelect',
props: {
value: null, // v-model
placeholder: {
type: String,
default: '请选择库区'
},
filterable: {
type: Boolean,
default: true
},
valueKey: {
type: String,
default: 'id'
},
//
disabled: {
type: Boolean,
default: false
},
isEnabled:{
type: Boolean,
default: true
},
bexb:{
type: Boolean,
default: true
},
selectStyle: {
type: String,
default: 'width: 200px;'
},
immediate: {
type: Boolean,
default: false
},
//
clearable: {
type: Boolean,
default: false
},
//
multiple: {
type: Boolean,
default: false
},
},
data() {
return {
items: [],
selected: this.value,
loading: false
}
},
computed: {
// v-model
selectedValue: {
get() {
return this.value
},
set(val) {
this.$emit('input', val)
}
}
},
watch: {
value(val) {
this.selected = val
},
selected(val) {
this.$emit('input', val)
this.$emit('change', val)
}
},
created() {
// immediate
//if (this.immediate || (this.value && this.value[this.valueKey])) {
this.fetchItems();
// }
},
//
handleClear() {
this.$emit('clear')
},
methods: {
fetchItems() {
this.loading = true
if (this.items.length === 0) {
curdArea.queryAreaList({ bexb: this.bexb }).then(res => {
this.items = res
})
}
},
onChange(val) {
this.$emit('change', val)
}
}
}
</script>

View File

@ -70,7 +70,7 @@ export default {
default: 'object', default: 'object',
validator: value => ['object', 'value'].includes(value) validator: value => ['object', 'value'].includes(value)
}, },
returnValueKey: { returnValueKey: {//
type: String, type: String,
default: 'id' default: 'id'
} }