仓库-样式调整,出库记录,出库单,批量查看调整
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog v-bind="$attrs" v-on="$listeners" @open="onOpen" @close="onClose" title="批次出库" width="80%">
|
||||
<el-dialog v-bind="$attrs" v-on="$listeners" @open="onOpen" @close="onClose" title="批次出库" width="80%" :close-on-click-modal="false">
|
||||
<el-form ref="elForm" :model="formData" size="medium" label-width="100px">
|
||||
<el-row type="flex" justify="start" align="top" :gutter="15">
|
||||
<el-form-item label="出库单" prop="fkOutOrderId">
|
||||
@@ -42,7 +42,7 @@
|
||||
</el-table>
|
||||
<pagination class="mt10" background :total="total" :page.sync="formData.pageNum" :limit.sync="formData.pageSize" @pagination="getList" />
|
||||
<div slot="footer">
|
||||
<el-button @click="close">取消</el-button>
|
||||
<el-button type="info" @click="close">取消</el-button>
|
||||
<el-button type="primary" @click="handelConfirm" :disabled="dataList.length===0">按所勾选出库</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
@@ -99,6 +99,15 @@
|
||||
this.outOrderOptions = [];
|
||||
this.PackageCodeOptions = [];
|
||||
},
|
||||
// 不关闭弹窗
|
||||
endAction(){
|
||||
this.$refs['elForm'].resetFields()
|
||||
this.$emit("refresh");
|
||||
this.dataList = [];
|
||||
this.total = 0;
|
||||
this.outOrderOptions = [];
|
||||
this.PackageCodeOptions = [];
|
||||
},
|
||||
handelConfirm() {
|
||||
this.$refs['elForm'].validate(valid => {
|
||||
if (!valid) return
|
||||
@@ -205,7 +214,7 @@
|
||||
doPatchOutProduction(data).then((res) => {
|
||||
if (res.code === 200 || res.data === "ok") {
|
||||
this.$message.success("批量操作成功!")
|
||||
this.close();
|
||||
this.endAction();
|
||||
} else {
|
||||
this.$message.error(res.msg)
|
||||
}
|
||||
@@ -241,7 +250,7 @@
|
||||
doPatchOutProduction(data).then((res) => {
|
||||
if (res.code === 200 || res.data === "ok") {
|
||||
this.$message.success("批量操作成功!")
|
||||
this.close();
|
||||
this.endAction();
|
||||
} else {
|
||||
this.$message.error(res.msg)
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog v-bind="$attrs" v-on="$listeners" @open="onOpen" @close="onClose" title="物料选择">
|
||||
<el-dialog v-bind="$attrs" v-on="$listeners" @open="onOpen" @close="onClose" title="物料选择" width="80%" :close-on-click-modal="false">
|
||||
<el-form ref="elForm" :model="formData" :rules="rules" size="mini" label-width="80px">
|
||||
<el-row type="flex" justify="start" align="top" :gutter="10">
|
||||
<el-form-item label="物料号" prop="partnumber">
|
||||
<el-input v-model="formData.partnumber" placeholder="请输入物料号" clearable :style="{ width: '100%' }"> </el-input>
|
||||
<el-input v-model="formData.partnumber" placeholder="请输入物料号(零件号)" clearable :style="{ width: '100%' }"> </el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="U8编码" prop="u8InventoryCode">
|
||||
<el-input v-model="formData.u8InventoryCode" placeholder="请输入U8编码" clearable :style="{ width: '100%' }"></el-input>
|
||||
@@ -15,7 +15,7 @@
|
||||
</el-row>
|
||||
<el-row type="flex" justify="start" align="top" :gutter="10">
|
||||
<el-form-item label="" prop="search">
|
||||
<el-button type="primary" icon="el-icon-search" size="medium" @click="getList">搜索</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="getList">搜索</el-button>
|
||||
|
||||
</el-form-item>
|
||||
</el-row>
|
||||
|
||||
@@ -1,35 +1,29 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog v-bind="$attrs" v-on="$listeners" @open="onOpen" @close="onClose" :title="title" width="800px">
|
||||
<el-dialog v-bind="$attrs" v-on="$listeners" @open="onOpen" @close="onClose" :title="title" width="80%" :close-on-click-modal="false">
|
||||
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px"> </el-form>
|
||||
<!-- 出库计划列表 -->
|
||||
<div>
|
||||
<!-- 数据区域 -->
|
||||
<el-table :data="dataList" v-loading="loading" ref="table" border highlight-current-row max-height="400px">
|
||||
<el-table-column prop="patchcode" label="批次号" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="materialCode" label="物料号" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="packageCode" label="批次号" align="center" :show-overflow-tooltip="true" min-width="140" />
|
||||
<el-table-column prop="partnumber" label="物料号(零件号)" align="center" :show-overflow-tooltip="true" min-width="140" />
|
||||
<el-table-column prop="description" label="描述" align="center" :show-overflow-tooltip="true" min-width="160" />
|
||||
<el-table-column prop="warehouseCode" label="所属仓库" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="packageNum" label="批次箱数" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="partnumberNum" label="批次零件数" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="requireNum" label="需求零件数" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="patchtime" label="批次时间" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="outorder" label="出库顺序" align="center">
|
||||
<el-table-column prop="requireNum" label="零件总需求" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="outPackageNum" label="已出箱" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="outPartnumberNum" label="已出零件" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="packagePlanNum" label="计划箱" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="partnumberPlanNum" label="计划零件" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="packageNum" label="仓库箱" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="partnumberNum" label="仓库零件" align="center" :show-overflow-tooltip="true" />
|
||||
<el-table-column prop="isOver" label="是否出完" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input v-model.number="scope.row.outorder" placeholder="请输入出库顺序" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" fixed="right" width="80">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
v-hasPermi="['business:wmoutorder:edit']"
|
||||
type="success"
|
||||
icon="el-icon-edit"
|
||||
title="保存"
|
||||
@click="handleUpdate(scope.row)"
|
||||
></el-button>
|
||||
<el-tag v-if="scope.row.isOver" type="success" effect="dark">已出完</el-tag>
|
||||
<el-tag v-else type="info" effect="dark">未出完</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="outOrder" label="计划顺序" align="center" :show-overflow-tooltip="true" />
|
||||
</el-table>
|
||||
<!-- <pagination
|
||||
class="mt10"
|
||||
@@ -63,7 +57,7 @@ export default {
|
||||
pageSize: 10,
|
||||
},
|
||||
// 弹出层标题
|
||||
title: '出库计划',
|
||||
title: '出库详情',
|
||||
// 数据列表
|
||||
dataList: [],
|
||||
// 总记录数
|
||||
@@ -98,8 +92,9 @@ export default {
|
||||
setTimeout(() => {
|
||||
this.loading = false
|
||||
}, 30000)
|
||||
WmOutOrderApi.generateOutorderplan({ shipment_num: this.planKey }).then((res) => {
|
||||
WmOutOrderApi.getOutOrderPlanAndOutProductionNum({ shipment_num: this.planKey }).then((res) => {
|
||||
if (res.code === 200) {
|
||||
console.log(res);
|
||||
this.dataList = res.data
|
||||
// 计划出库批次清单
|
||||
this.loading = false
|
||||
|
||||
@@ -0,0 +1,185 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" size="small" label-position="right" inline ref="queryForm" :label-width="labelWidth" v-show="showSearch" @submit.native.prevent>
|
||||
<el-form-item label="出库单" prop="shipmentNum">
|
||||
<el-input v-model="queryParams.shipmentNum" placeholder="请输入出库单号" :clearable="true" />
|
||||
</el-form-item>
|
||||
<el-form-item label=" ">
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<vxe-table border :header-cell-style="headerCellStyle" :row-style="rowClassStyle" keep-source resizable ref="xTable" :loading="loading" max-height="800" :row-config="{isHover: true}" :tree-config="{
|
||||
transform: true,
|
||||
rowField: 'packageCodeClient_son',
|
||||
parentField: 'packageCodeClient_short_parent',
|
||||
lazy: true,
|
||||
hasChild: 'hasChild',
|
||||
loadMethod: loadChildrenMethod }" :edit-config="{ trigger: 'manual', mode: 'row' }" :data="dataList">
|
||||
<vxe-column field="shipmentNum" title="出库单号" tree-node min-width="100"></vxe-column>
|
||||
<vxe-column field="partnumber" title="零件号" min-width="100"></vxe-column>
|
||||
<vxe-column field="description" title="描述" min-width="120"></vxe-column>
|
||||
<vxe-column field="packageCode" title="批次号" min-width="180"></vxe-column>
|
||||
<vxe-column field="locationCode" title="库位编码"></vxe-column>
|
||||
<vxe-column field="packageNum" title="箱数"></vxe-column>
|
||||
<vxe-column field="goodsNumAction" title="已出">
|
||||
</vxe-column>
|
||||
<!-- <vxe-column field="goodsNumAction" title="库存" :edit-render="{}">
|
||||
<template #edit="{ row }">
|
||||
<vxe-input v-model="row.goodsNumAction" type="text"></vxe-input>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column title="操作" width="160">
|
||||
<template #default="{ row }">
|
||||
<template v-if="$refs.xTable.isActiveByRow(row)">
|
||||
<vxe-button @click="saveRowEvent(row)">保存</vxe-button>
|
||||
<vxe-button @click="cancelRowEvent(row)">取消</vxe-button>
|
||||
</template>
|
||||
<template v-else>
|
||||
<vxe-button @click="editRowEvent(row)">编辑</vxe-button>
|
||||
</template>
|
||||
</template>
|
||||
</vxe-column> -->
|
||||
<vxe-column field="outTime" title="出库时间" min-width="120"></vxe-column>
|
||||
<vxe-column field="remark" title="备注"></vxe-column>
|
||||
</vxe-table>
|
||||
<pagination class="mt10" background :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import * as WmGoodsBatchApi from '@/api/wmsManagement/wmGoodsBatchSearch.js'
|
||||
export default {
|
||||
name: 'PatchSearch6',
|
||||
data() {
|
||||
return {
|
||||
labelWidth: '100px',
|
||||
formLabelWidth: '100px',
|
||||
// 遮罩层
|
||||
loading: false,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
partnumber: '',
|
||||
packageCode: '',
|
||||
// 出库单号
|
||||
shipmentNum:'',
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
// 查询类别:1-树父节点 2-树子节点
|
||||
type: 1,
|
||||
// 聚合模型类别:1-根据批次号 2-根据零件号 3-根据出库单
|
||||
model: 3,
|
||||
// 查询类别:1-入库 2-出库
|
||||
category: 2
|
||||
},
|
||||
dataList: [],
|
||||
total: 0,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 查询数据
|
||||
getList() {
|
||||
this.loading = true
|
||||
setTimeout(() => {
|
||||
this.loading = false
|
||||
}, 30000)
|
||||
let data = this.queryParams;
|
||||
WmGoodsBatchApi.GetBatchTreeTableData(data).then(res => {
|
||||
if (res.code === 200) {
|
||||
this.total = res.data.totalNum;
|
||||
this.dataList = res.data.result;
|
||||
this.loading = false
|
||||
} else {
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
loadChildrenMethod({ row }) {
|
||||
return new Promise(resolve => {
|
||||
const data = {
|
||||
type: 2,
|
||||
model: 3,
|
||||
category: 2,
|
||||
shipmentNum: row.packageCodeClient_son,
|
||||
}
|
||||
WmGoodsBatchApi.GetBatchTreeTableData(data).then(res => {
|
||||
if (res.code === 200) {
|
||||
resolve(res.data.result);
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
//todo 处理搜索请求
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
resetQuery() {
|
||||
this.queryParams.partnumber = ''
|
||||
this.queryParams.packageCode = ''
|
||||
},
|
||||
//todo 修改库存
|
||||
editRowEvent(row) {
|
||||
const $table = this.$refs.xTable
|
||||
$table.setActiveRow(row)
|
||||
},
|
||||
saveRowEvent(row) {
|
||||
const $table = this.$refs.xTable
|
||||
$table
|
||||
.clearActived()
|
||||
.then(() => {
|
||||
this.loading = true
|
||||
//提交修改
|
||||
const query = { id: row.id, stack_num: row.goodsNumAction }
|
||||
return updateactualInventoryQuantity(query)
|
||||
})
|
||||
.then((res) => {
|
||||
if (res.code == 200 && res.data > 0) {
|
||||
this.$notify.success('修改成功')
|
||||
this.getList()
|
||||
}
|
||||
})
|
||||
},
|
||||
cancelRowEvent(row) {
|
||||
const $table = this.$refs.xTable
|
||||
$table.clearActived().then(() => {
|
||||
// 还原行数据
|
||||
$table.revertData(row)
|
||||
//this.getList()
|
||||
})
|
||||
},
|
||||
// 表格头部颜色配置
|
||||
headerCellStyle({ column }) {
|
||||
const data = {
|
||||
backgroundColor: '#C0C4CC',
|
||||
color: '#303133'
|
||||
}
|
||||
return data
|
||||
},
|
||||
rowClassStyle({ row, column, rowIndex }) {
|
||||
let data = {
|
||||
backgroundColor: '#F2F6FC',
|
||||
color: '#303133'
|
||||
}
|
||||
if (rowIndex % 2 > 0) {
|
||||
data.backgroundColor = '#EBEEF5'
|
||||
}
|
||||
// if( row.description === '此零件号不在物料清单内!'){
|
||||
// data.backgroundColor = '#F56C6C';
|
||||
// data.color = '#FFFFFF'
|
||||
// }
|
||||
|
||||
return data
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
</style>
|
||||
@@ -4,9 +4,6 @@
|
||||
<el-form-item label="短批次号" prop="packageCodeClient">
|
||||
<el-input v-model="queryParams.packageCode" placeholder="请输入批次号" :clearable="true" />
|
||||
</el-form-item>
|
||||
<el-form-item label="零件号" prop="partnumber">
|
||||
<el-input v-model="queryParams.partnumber" placeholder="请输入零件号" :clearable="true" />
|
||||
</el-form-item>
|
||||
<el-form-item label=" ">
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
@@ -25,7 +22,7 @@
|
||||
<vxe-column field="description" title="描述" min-width="120"></vxe-column>
|
||||
<vxe-column field="locationCode" title="库位编码"></vxe-column>
|
||||
<vxe-column field="packageNum" title="箱数"></vxe-column>
|
||||
<vxe-column field="goodsNumAction" title="库存">
|
||||
<vxe-column field="goodsNumAction" title="已出">
|
||||
</vxe-column>
|
||||
<!-- <vxe-column field="goodsNumAction" title="库存" :edit-render="{}">
|
||||
<template #edit="{ row }">
|
||||
@@ -66,6 +63,8 @@
|
||||
queryParams: {
|
||||
partnumber: '',
|
||||
packageCode: '',
|
||||
// 出库单号
|
||||
shipmentNum:'',
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
// 查询类别:1-树父节点 2-树子节点
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
<vxe-column field="packageCode" title="批次号" min-width="180"></vxe-column>
|
||||
<vxe-column field="locationCode" title="库位编码"></vxe-column>
|
||||
<vxe-column field="packageNum" title="箱数"></vxe-column>
|
||||
<vxe-column field="goodsNumAction" title="库存">
|
||||
<vxe-column field="goodsNumAction" title="已出">
|
||||
</vxe-column>
|
||||
<!-- <vxe-column field="goodsNumAction" title="库存" :edit-render="{}">
|
||||
<template #edit="{ row }">
|
||||
@@ -66,6 +66,8 @@
|
||||
queryParams: {
|
||||
partnumber: '',
|
||||
packageCode: '',
|
||||
// 出库单号
|
||||
shipmentNum:'',
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
// 查询类别:1-树父节点 2-树子节点
|
||||
@@ -154,7 +156,7 @@
|
||||
//this.getList()
|
||||
})
|
||||
},
|
||||
// 表格颜色配置
|
||||
// 表格头部颜色配置
|
||||
headerCellStyle({ column }) {
|
||||
const data = {
|
||||
backgroundColor: '#C0C4CC',
|
||||
|
||||
Reference in New Issue
Block a user