更新仓库管理

This commit is contained in:
2023-11-04 16:40:16 +08:00
parent 5521f07c18
commit 0deb38647e
110 changed files with 17806 additions and 0 deletions

View File

@@ -0,0 +1,272 @@
<!-- 仓库信息 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="编码" prop="code">
<el-input v-model="queryParams.code" placeholder="请输入编码" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="名称" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="仓库类型 1.有库位 2.无库位" prop="type">
<el-select v-model="queryParams.type" placeholder="请选择仓库类型 1.有库位 2.无库位" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="仓库物料类型" prop="storageType">
<el-select v-model="queryParams.storageType" placeholder="请选择仓库物料类型" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="编码" align="center" prop="code" />
<el-table-column label="名称" align="center" prop="name" />
<el-table-column label="仓库类型 1.有库位 2.无库位" align="center" prop="type" />
<el-table-column label="仓库物料类型" align="center" prop="storageType" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="编码" prop="code">
<el-input v-model="form.code" placeholder="请输入编码" />
</el-form-item>
<el-form-item label="名称" prop="name">
<el-input v-model="form.name" placeholder="请输入名称" />
</el-form-item>
<el-form-item label="仓库类型 1.有库位 2.无库位" prop="type">
<el-select v-model="form.type" placeholder="请选择仓库类型 1.有库位 2.无库位">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="仓库物料类型" prop="storageType">
<el-select v-model="form.storageType" placeholder="请选择仓库物料类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouse, updateWarehouse, deleteWarehouse, getWarehouse, getWarehousePage, exportWarehouseExcel } from "./warehouse";
export default {
name: "Warehouse",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 仓库列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
code: null,
name: null,
type: null,
storageType: null,
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehousePage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
code: undefined,
name: undefined,
type: undefined,
storageType: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加仓库";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouse(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改仓库";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouse(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouse(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除仓库编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouse(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有仓库数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseExcel(params);
}).then(response => {
this.$download.excel(response, '仓库.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建仓库
export function createWarehouse(data) {
return request({
url: '/extend/warehouse/create',
method: 'post',
data: data
})
}
// 更新仓库
export function updateWarehouse(data) {
return request({
url: '/extend/warehouse/update',
method: 'put',
data: data
})
}
// 删除仓库
export function deleteWarehouse(id) {
return request({
url: '/extend/warehouse/delete?id=' + id,
method: 'delete'
})
}
// 获得仓库
export function getWarehouse(id) {
return request({
url: '/extend/warehouse/get?id=' + id,
method: 'get'
})
}
// 获得仓库分页
export function getWarehousePage(query) {
return request({
url: '/extend/warehouse/page',
method: 'get',
params: query
})
}
// 导出仓库 Excel
export function exportWarehouseExcel(query) {
return request({
url: '/extend/warehouse/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,297 @@
<!-- 物品信息管理 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="物品类型 1 原料" prop="type">
<el-select v-model="queryParams.type" placeholder="请选择物品类型 1 原料" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="编码" prop="code">
<el-input v-model="queryParams.code" placeholder="请输入编码" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="名称" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="规格" prop="spec">
<el-input v-model="queryParams.spec" placeholder="请输入规格" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="单位(字典)" prop="unit">
<el-input v-model="queryParams.unit" placeholder="请输入单位(字典)" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="单日消耗量" prop="dailyUse">
<el-input v-model="queryParams.dailyUse" placeholder="请输入单日消耗量" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="允许留存时间" prop="allowTime">
<el-date-picker v-model="queryParams.allowTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-goods:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-goods:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="物品类型 1 原料" align="center" prop="type" />
<el-table-column label="编码" align="center" prop="code" />
<el-table-column label="名称" align="center" prop="name" />
<el-table-column label="规格" align="center" prop="spec" />
<el-table-column label="单位(字典)" align="center" prop="unit" />
<el-table-column label="单日消耗量" align="center" prop="dailyUse" />
<el-table-column label="允许留存时间" align="center" prop="allowTime" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-goods:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-goods:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="物品类型 1 原料" prop="type">
<el-select v-model="form.type" placeholder="请选择物品类型 1 原料">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="编码" prop="code">
<el-input v-model="form.code" placeholder="请输入编码" />
</el-form-item>
<el-form-item label="名称" prop="name">
<el-input v-model="form.name" placeholder="请输入名称" />
</el-form-item>
<el-form-item label="规格" prop="spec">
<el-input v-model="form.spec" placeholder="请输入规格" />
</el-form-item>
<el-form-item label="单位(字典)" prop="unit">
<el-input v-model="form.unit" placeholder="请输入单位(字典)" />
</el-form-item>
<el-form-item label="单日消耗量" prop="dailyUse">
<el-input v-model="form.dailyUse" placeholder="请输入单日消耗量" />
</el-form-item>
<el-form-item label="允许留存时间" prop="allowTime">
<el-date-picker clearable v-model="form.allowTime" type="date" value-format="timestamp" placeholder="选择允许留存时间" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseGoods, updateWarehouseGoods, deleteWarehouseGoods, getWarehouseGoods, getWarehouseGoodsPage, exportWarehouseGoodsExcel } from "./warehouseGoods";
export default {
name: "WarehouseGoods",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 物品列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
type: null,
code: null,
name: null,
spec: null,
unit: null,
dailyUse: null,
allowTime: [],
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
type: [{ required: true, message: "物品类型 1 原料不能为空", trigger: "change" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseGoodsPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
type: undefined,
code: undefined,
name: undefined,
spec: undefined,
unit: undefined,
dailyUse: undefined,
allowTime: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加物品";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseGoods(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改物品";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseGoods(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseGoods(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除物品编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseGoods(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有物品数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseGoodsExcel(params);
}).then(response => {
this.$download.excel(response, '物品.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建物品
export function createWarehouseGoods(data) {
return request({
url: '/extend/warehouse-goods/create',
method: 'post',
data: data
})
}
// 更新物品
export function updateWarehouseGoods(data) {
return request({
url: '/extend/warehouse-goods/update',
method: 'put',
data: data
})
}
// 删除物品
export function deleteWarehouseGoods(id) {
return request({
url: '/extend/warehouse-goods/delete?id=' + id,
method: 'delete'
})
}
// 获得物品
export function getWarehouseGoods(id) {
return request({
url: '/extend/warehouse-goods/get?id=' + id,
method: 'get'
})
}
// 获得物品分页
export function getWarehouseGoodsPage(query) {
return request({
url: '/extend/warehouse-goods/page',
method: 'get',
params: query
})
}
// 导出物品 Excel
export function exportWarehouseGoodsExcel(query) {
return request({
url: '/extend/warehouse-goods/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,310 @@
<!-- 出入库历史记录-无库位 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="仓库id" prop="warehouseId">
<el-input v-model="queryParams.warehouseId" placeholder="请输入仓库id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="仓库物料类型" prop="storageType">
<el-select v-model="queryParams.storageType" placeholder="请选择仓库物料类型" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="queryParams.goodsId" placeholder="请输入物品id关联物品表" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="queryParams.num" placeholder="请输入数量" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="物品批次" prop="goodsBatch">
<el-input v-model="queryParams.goodsBatch" placeholder="请输入物品批次" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="操作状态 1 入库 2 出库" prop="operateStatus">
<el-select v-model="queryParams.operateStatus" placeholder="请选择操作状态 1 入库 2 出库" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="操作人" prop="operator">
<el-input v-model="queryParams.operator" placeholder="请输入操作人" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="操作时间" prop="operateTime">
<el-date-picker v-model="queryParams.operateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-his:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-his:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="仓库id" align="center" prop="warehouseId" />
<el-table-column label="仓库物料类型" align="center" prop="storageType" />
<el-table-column label="物品id关联物品表" align="center" prop="goodsId" />
<el-table-column label="数量" align="center" prop="num" />
<el-table-column label="物品批次" align="center" prop="goodsBatch" />
<el-table-column label="操作状态 1 入库 2 出库" align="center" prop="operateStatus" />
<el-table-column label="操作人" align="center" prop="operator" />
<el-table-column label="操作时间" align="center" prop="operateTime" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-his:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-his:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="仓库id" prop="warehouseId">
<el-input v-model="form.warehouseId" placeholder="请输入仓库id" />
</el-form-item>
<el-form-item label="仓库物料类型" prop="storageType">
<el-select v-model="form.storageType" placeholder="请选择仓库物料类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="form.goodsId" placeholder="请输入物品id关联物品表" />
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="form.num" placeholder="请输入数量" />
</el-form-item>
<el-form-item label="物品批次" prop="goodsBatch">
<el-input v-model="form.goodsBatch" placeholder="请输入物品批次" />
</el-form-item>
<el-form-item label="操作状态 1 入库 2 出库" prop="operateStatus">
<el-radio-group v-model="form.operateStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="操作人" prop="operator">
<el-input v-model="form.operator" placeholder="请输入操作人" />
</el-form-item>
<el-form-item label="操作时间" prop="operateTime">
<el-date-picker clearable v-model="form.operateTime" type="date" value-format="timestamp" placeholder="选择操作时间" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseHis, updateWarehouseHis, deleteWarehouseHis, getWarehouseHis, getWarehouseHisPage, exportWarehouseHisExcel } from "./warehouseHis";
export default {
name: "WarehouseHis",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 出入库历史(无库位)列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
warehouseId: null,
storageType: null,
goodsId: null,
num: null,
goodsBatch: null,
operateStatus: null,
operator: null,
operateTime: [],
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
warehouseId: [{ required: true, message: "仓库id不能为空", trigger: "blur" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseHisPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
warehouseId: undefined,
storageType: undefined,
goodsId: undefined,
num: undefined,
goodsBatch: undefined,
operateStatus: undefined,
operator: undefined,
operateTime: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加出入库历史(无库位)";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseHis(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改出入库历史(无库位)";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseHis(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseHis(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除出入库历史(无库位)编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseHis(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有出入库历史(无库位)数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseHisExcel(params);
}).then(response => {
this.$download.excel(response, '出入库历史(无库位).xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建出入库历史(无库位)
export function createWarehouseHis(data) {
return request({
url: '/extend/warehouse-his/create',
method: 'post',
data: data
})
}
// 更新出入库历史(无库位)
export function updateWarehouseHis(data) {
return request({
url: '/extend/warehouse-his/update',
method: 'put',
data: data
})
}
// 删除出入库历史(无库位)
export function deleteWarehouseHis(id) {
return request({
url: '/extend/warehouse-his/delete?id=' + id,
method: 'delete'
})
}
// 获得出入库历史(无库位)
export function getWarehouseHis(id) {
return request({
url: '/extend/warehouse-his/get?id=' + id,
method: 'get'
})
}
// 获得出入库历史(无库位)分页
export function getWarehouseHisPage(query) {
return request({
url: '/extend/warehouse-his/page',
method: 'get',
params: query
})
}
// 导出出入库历史(无库位) Excel
export function exportWarehouseHisExcel(query) {
return request({
url: '/extend/warehouse-his/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,309 @@
<!-- 库位管理 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="仓库id" prop="warehouseId">
<el-input v-model="queryParams.warehouseId" placeholder="请输入仓库id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="编码" prop="code">
<el-input v-model="queryParams.code" placeholder="请输入编码" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="名称" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="排" prop="arrange">
<el-input v-model="queryParams.arrange" placeholder="请输入排" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="列" prop="col">
<el-input v-model="queryParams.col" placeholder="请输入列" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="层" prop="layer">
<el-input v-model="queryParams.layer" placeholder="请输入层" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="库位类型 1.缓存 2.活动 3.其它" prop="type">
<el-select v-model="queryParams.type" placeholder="请选择库位类型 1.缓存 2.活动 3.其它" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="库位状态:0 、可用1、占用-待入库 2、占用-有货 3、占用-待出库" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择库位状态:0 、可用1、占用-待入库 2、占用-有货 3、占用-待出库" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-location:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-location:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="仓库id" align="center" prop="warehouseId" />
<el-table-column label="编码" align="center" prop="code" />
<el-table-column label="名称" align="center" prop="name" />
<el-table-column label="排" align="center" prop="arrange" />
<el-table-column label="列" align="center" prop="col" />
<el-table-column label="层" align="center" prop="layer" />
<el-table-column label="库位类型 1.缓存 2.活动 3.其它" align="center" prop="type" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="库位状态:0 、可用1、占用-待入库 2、占用-有货 3、占用-待出库" align="center" prop="status" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-location:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-location:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="仓库id" prop="warehouseId">
<el-input v-model="form.warehouseId" placeholder="请输入仓库id" />
</el-form-item>
<el-form-item label="编码" prop="code">
<el-input v-model="form.code" placeholder="请输入编码" />
</el-form-item>
<el-form-item label="名称" prop="name">
<el-input v-model="form.name" placeholder="请输入名称" />
</el-form-item>
<el-form-item label="排" prop="arrange">
<el-input v-model="form.arrange" placeholder="请输入排" />
</el-form-item>
<el-form-item label="列" prop="col">
<el-input v-model="form.col" placeholder="请输入列" />
</el-form-item>
<el-form-item label="层" prop="layer">
<el-input v-model="form.layer" placeholder="请输入层" />
</el-form-item>
<el-form-item label="库位类型 1.缓存 2.活动 3.其它" prop="type">
<el-select v-model="form.type" placeholder="请选择库位类型 1.缓存 2.活动 3.其它">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="库位状态:0 、可用1、占用-待入库 2、占用-有货 3、占用-待出库" prop="status">
<el-radio-group v-model="form.status">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseLocation, updateWarehouseLocation, deleteWarehouseLocation, getWarehouseLocation, getWarehouseLocationPage, exportWarehouseLocationExcel } from "./warehouseLocation";
export default {
name: "WarehouseLocation",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 库位列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
warehouseId: null,
code: null,
name: null,
arrange: null,
col: null,
layer: null,
type: null,
enabled: null,
status: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
warehouseId: [{ required: true, message: "仓库id不能为空", trigger: "blur" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseLocationPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
warehouseId: undefined,
code: undefined,
name: undefined,
arrange: undefined,
col: undefined,
layer: undefined,
type: undefined,
enabled: undefined,
status: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加库位";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseLocation(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改库位";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseLocation(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseLocation(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除库位编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseLocation(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有库位数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseLocationExcel(params);
}).then(response => {
this.$download.excel(response, '库位.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建库位
export function createWarehouseLocation(data) {
return request({
url: '/extend/warehouse-location/create',
method: 'post',
data: data
})
}
// 更新库位
export function updateWarehouseLocation(data) {
return request({
url: '/extend/warehouse-location/update',
method: 'put',
data: data
})
}
// 删除库位
export function deleteWarehouseLocation(id) {
return request({
url: '/extend/warehouse-location/delete?id=' + id,
method: 'delete'
})
}
// 获得库位
export function getWarehouseLocation(id) {
return request({
url: '/extend/warehouse-location/get?id=' + id,
method: 'get'
})
}
// 获得库位分页
export function getWarehouseLocationPage(query) {
return request({
url: '/extend/warehouse-location/page',
method: 'get',
params: query
})
}
// 导出库位 Excel
export function exportWarehouseLocationExcel(query) {
return request({
url: '/extend/warehouse-location/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,260 @@
<!-- 出入库历史记录-有库位 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="库位id" prop="locationId">
<el-input v-model="queryParams.locationId" placeholder="请输入库位id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="托盘编码" prop="palletCode">
<el-input v-model="queryParams.palletCode" placeholder="请输入托盘编码" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="操作状态 1 入库 2 出库" prop="operateStatus">
<el-select v-model="queryParams.operateStatus" placeholder="请选择操作状态 1 入库 2 出库" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间(即操作时间)" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-location-his:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-location-his:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="库位id" align="center" prop="locationId" />
<el-table-column label="托盘编码" align="center" prop="palletCode" />
<el-table-column label="操作状态 1 入库 2 出库" align="center" prop="operateStatus" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间(即操作时间)" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-location-his:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-location-his:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="库位id" prop="locationId">
<el-input v-model="form.locationId" placeholder="请输入库位id" />
</el-form-item>
<el-form-item label="托盘编码" prop="palletCode">
<el-input v-model="form.palletCode" placeholder="请输入托盘编码" />
</el-form-item>
<el-form-item label="操作状态 1 入库 2 出库" prop="operateStatus">
<el-radio-group v-model="form.operateStatus">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseLocationHis, updateWarehouseLocationHis, deleteWarehouseLocationHis, getWarehouseLocationHis, getWarehouseLocationHisPage, exportWarehouseLocationHisExcel } from "./warehouseLocationHis";
export default {
name: "WarehouseLocationHis",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 出入库历史(有库位)列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
locationId: null,
palletCode: null,
operateStatus: null,
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
locationId: [{ required: true, message: "库位id不能为空", trigger: "blur" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseLocationHisPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
locationId: undefined,
palletCode: undefined,
operateStatus: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加出入库历史(有库位)";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseLocationHis(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改出入库历史(有库位)";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseLocationHis(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseLocationHis(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除出入库历史(有库位)编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseLocationHis(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有出入库历史(有库位)数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseLocationHisExcel(params);
}).then(response => {
this.$download.excel(response, '出入库历史(有库位).xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建出入库历史(有库位)
export function createWarehouseLocationHis(data) {
return request({
url: '/extend/warehouse-location-his/create',
method: 'post',
data: data
})
}
// 更新出入库历史(有库位)
export function updateWarehouseLocationHis(data) {
return request({
url: '/extend/warehouse-location-his/update',
method: 'put',
data: data
})
}
// 删除出入库历史(有库位)
export function deleteWarehouseLocationHis(id) {
return request({
url: '/extend/warehouse-location-his/delete?id=' + id,
method: 'delete'
})
}
// 获得出入库历史(有库位)
export function getWarehouseLocationHis(id) {
return request({
url: '/extend/warehouse-location-his/get?id=' + id,
method: 'get'
})
}
// 获得出入库历史(有库位)分页
export function getWarehouseLocationHisPage(query) {
return request({
url: '/extend/warehouse-location-his/page',
method: 'get',
params: query
})
}
// 导出出入库历史(有库位) Excel
export function exportWarehouseLocationHisExcel(query) {
return request({
url: '/extend/warehouse-location-his/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,255 @@
<!-- 出入库历史(有库位)详情管理 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="queryParams.goodsId" placeholder="请输入物品id关联物品表" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="queryParams.num" placeholder="请输入数量" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间(即操作时间)" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="出入库历史表id" prop="hisId">
<el-input v-model="queryParams.hisId" placeholder="请输入出入库历史表id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-location-his-det:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-location-his-det:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="物品id关联物品表" align="center" prop="goodsId" />
<el-table-column label="数量" align="center" prop="num" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间(即操作时间)" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="出入库历史表id" align="center" prop="hisId" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-location-his-det:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-location-his-det:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="form.goodsId" placeholder="请输入物品id关联物品表" />
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="form.num" placeholder="请输入数量" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
<el-form-item label="出入库历史表id" prop="hisId">
<el-input v-model="form.hisId" placeholder="请输入出入库历史表id" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseLocationHisDet, updateWarehouseLocationHisDet, deleteWarehouseLocationHisDet, getWarehouseLocationHisDet, getWarehouseLocationHisDetPage, exportWarehouseLocationHisDetExcel } from "./warehouseLocationHisDet";
export default {
name: "WarehouseLocationHisDet",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 出入库历史(有库位)详情列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
goodsId: null,
num: null,
enabled: null,
remark: null,
version: null,
createTime: [],
hisId: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseLocationHisDetPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
goodsId: undefined,
num: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
hisId: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加出入库历史(有库位)详情";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseLocationHisDet(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改出入库历史(有库位)详情";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseLocationHisDet(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseLocationHisDet(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除出入库历史(有库位)详情编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseLocationHisDet(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有出入库历史(有库位)详情数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseLocationHisDetExcel(params);
}).then(response => {
this.$download.excel(response, '出入库历史(有库位)详情.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建出入库历史(有库位)详情
export function createWarehouseLocationHisDet(data) {
return request({
url: '/extend/warehouse-location-his-det/create',
method: 'post',
data: data
})
}
// 更新出入库历史(有库位)详情
export function updateWarehouseLocationHisDet(data) {
return request({
url: '/extend/warehouse-location-his-det/update',
method: 'put',
data: data
})
}
// 删除出入库历史(有库位)详情
export function deleteWarehouseLocationHisDet(id) {
return request({
url: '/extend/warehouse-location-his-det/delete?id=' + id,
method: 'delete'
})
}
// 获得出入库历史(有库位)详情
export function getWarehouseLocationHisDet(id) {
return request({
url: '/extend/warehouse-location-his-det/get?id=' + id,
method: 'get'
})
}
// 获得出入库历史(有库位)详情分页
export function getWarehouseLocationHisDetPage(query) {
return request({
url: '/extend/warehouse-location-his-det/page',
method: 'get',
params: query
})
}
// 导出出入库历史(有库位)详情 Excel
export function exportWarehouseLocationHisDetExcel(query) {
return request({
url: '/extend/warehouse-location-his-det/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,297 @@
<!-- 出入库管理-无库位 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="仓库id" prop="warehouseId">
<el-input v-model="queryParams.warehouseId" placeholder="请输入仓库id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="仓库物品类型" prop="storageType">
<el-select v-model="queryParams.storageType" placeholder="请选择仓库物品类型" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="queryParams.goodsId" placeholder="请输入物品id关联物品表" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="queryParams.num" placeholder="请输入数量" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="最新入库时间" prop="latestInTime">
<el-date-picker v-model="queryParams.latestInTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="最新出库时间" prop="latestOutTime">
<el-date-picker v-model="queryParams.latestOutTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-realtime:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-realtime:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="仓库id" align="center" prop="warehouseId" />
<el-table-column label="仓库物品类型" align="center" prop="storageType" />
<el-table-column label="物品id关联物品表" align="center" prop="goodsId" />
<el-table-column label="数量" align="center" prop="num" />
<el-table-column label="最新入库时间" align="center" prop="latestInTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.latestInTime) }}</span>
</template>
</el-table-column>
<el-table-column label="最新出库时间" align="center" prop="latestOutTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.latestOutTime) }}</span>
</template>
</el-table-column>
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-realtime:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-realtime:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="仓库id" prop="warehouseId">
<el-input v-model="form.warehouseId" placeholder="请输入仓库id" />
</el-form-item>
<el-form-item label="仓库物品类型" prop="storageType">
<el-select v-model="form.storageType" placeholder="请选择仓库物品类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="form.goodsId" placeholder="请输入物品id关联物品表" />
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="form.num" placeholder="请输入数量" />
</el-form-item>
<el-form-item label="最新入库时间" prop="latestInTime">
<el-date-picker clearable v-model="form.latestInTime" type="date" value-format="timestamp" placeholder="选择最新入库时间" />
</el-form-item>
<el-form-item label="最新出库时间" prop="latestOutTime">
<el-date-picker clearable v-model="form.latestOutTime" type="date" value-format="timestamp" placeholder="选择最新出库时间" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseRealtime, updateWarehouseRealtime, deleteWarehouseRealtime, getWarehouseRealtime, getWarehouseRealtimePage, exportWarehouseRealtimeExcel } from "./warehouseRealtime";
export default {
name: "WarehouseRealtime",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 出入库-无库位列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
warehouseId: null,
storageType: null,
goodsId: null,
num: null,
latestInTime: [],
latestOutTime: [],
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
warehouseId: [{ required: true, message: "仓库id不能为空", trigger: "blur" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseRealtimePage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
warehouseId: undefined,
storageType: undefined,
goodsId: undefined,
num: undefined,
latestInTime: undefined,
latestOutTime: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加出入库-无库位";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseRealtime(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改出入库-无库位";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseRealtime(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseRealtime(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除出入库-无库位编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseRealtime(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有出入库-无库位数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseRealtimeExcel(params);
}).then(response => {
this.$download.excel(response, '出入库-无库位.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建出入库-无库位
export function createWarehouseRealtime(data) {
return request({
url: '/extend/warehouse-realtime/create',
method: 'post',
data: data
})
}
// 更新出入库-无库位
export function updateWarehouseRealtime(data) {
return request({
url: '/extend/warehouse-realtime/update',
method: 'put',
data: data
})
}
// 删除出入库-无库位
export function deleteWarehouseRealtime(id) {
return request({
url: '/extend/warehouse-realtime/delete?id=' + id,
method: 'delete'
})
}
// 获得出入库-无库位
export function getWarehouseRealtime(id) {
return request({
url: '/extend/warehouse-realtime/get?id=' + id,
method: 'get'
})
}
// 获得出入库-无库位分页
export function getWarehouseRealtimePage(query) {
return request({
url: '/extend/warehouse-realtime/page',
method: 'get',
params: query
})
}
// 导出出入库-无库位 Excel
export function exportWarehouseRealtimeExcel(query) {
return request({
url: '/extend/warehouse-realtime/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,256 @@
<!-- 出入库(无库位)详情管理 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="出入库-无库位表id" prop="realtimeId">
<el-input v-model="queryParams.realtimeId" placeholder="请输入出入库-无库位表id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="物品批次" prop="goodsBatch">
<el-input v-model="queryParams.goodsBatch" placeholder="请输入物品批次" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="物品数量" prop="numDet">
<el-input v-model="queryParams.numDet" placeholder="请输入物品数量" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-realtime-det:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-realtime-det:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="出入库-无库位表id" align="center" prop="realtimeId" />
<el-table-column label="物品批次" align="center" prop="goodsBatch" />
<el-table-column label="物品数量" align="center" prop="numDet" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-realtime-det:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-realtime-det:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="出入库-无库位表id" prop="realtimeId">
<el-input v-model="form.realtimeId" placeholder="请输入出入库-无库位表id" />
</el-form-item>
<el-form-item label="物品批次" prop="goodsBatch">
<el-input v-model="form.goodsBatch" placeholder="请输入物品批次" />
</el-form-item>
<el-form-item label="物品数量" prop="numDet">
<el-input v-model="form.numDet" placeholder="请输入物品数量" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseRealtimeDet, updateWarehouseRealtimeDet, deleteWarehouseRealtimeDet, getWarehouseRealtimeDet, getWarehouseRealtimeDetPage, exportWarehouseRealtimeDetExcel } from "./warehouseRealtimeDet";
export default {
name: "WarehouseRealtimeDet",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 出入库(无库位)详情列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
realtimeId: null,
goodsBatch: null,
numDet: null,
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
realtimeId: [{ required: true, message: "出入库-无库位表id不能为空", trigger: "blur" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseRealtimeDetPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
realtimeId: undefined,
goodsBatch: undefined,
numDet: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加出入库(无库位)详情";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseRealtimeDet(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改出入库(无库位)详情";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseRealtimeDet(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseRealtimeDet(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除出入库(无库位)详情编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseRealtimeDet(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有出入库(无库位)详情数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseRealtimeDetExcel(params);
}).then(response => {
this.$download.excel(response, '出入库(无库位)详情.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建出入库(无库位)详情
export function createWarehouseRealtimeDet(data) {
return request({
url: '/extend/warehouse-realtime-det/create',
method: 'post',
data: data
})
}
// 更新出入库(无库位)详情
export function updateWarehouseRealtimeDet(data) {
return request({
url: '/extend/warehouse-realtime-det/update',
method: 'put',
data: data
})
}
// 删除出入库(无库位)详情
export function deleteWarehouseRealtimeDet(id) {
return request({
url: '/extend/warehouse-realtime-det/delete?id=' + id,
method: 'delete'
})
}
// 获得出入库(无库位)详情
export function getWarehouseRealtimeDet(id) {
return request({
url: '/extend/warehouse-realtime-det/get?id=' + id,
method: 'get'
})
}
// 获得出入库(无库位)详情分页
export function getWarehouseRealtimeDetPage(query) {
return request({
url: '/extend/warehouse-realtime-det/page',
method: 'get',
params: query
})
}
// 导出出入库(无库位)详情 Excel
export function exportWarehouseRealtimeDetExcel(query) {
return request({
url: '/extend/warehouse-realtime-det/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,274 @@
<!-- 出入库管理-有库位 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="库位id" prop="locationId">
<el-input v-model="queryParams.locationId" placeholder="请输入库位id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="仓库物品类型" prop="storageType">
<el-select v-model="queryParams.storageType" placeholder="请选择仓库物品类型" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="托盘编码" prop="palletCode">
<el-input v-model="queryParams.palletCode" placeholder="请输入托盘编码" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="入库时间" prop="inTime">
<el-date-picker v-model="queryParams.inTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-realtime-location:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-realtime-location:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="库位id" align="center" prop="locationId" />
<el-table-column label="仓库物品类型" align="center" prop="storageType" />
<el-table-column label="托盘编码" align="center" prop="palletCode" />
<el-table-column label="入库时间" align="center" prop="inTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.inTime) }}</span>
</template>
</el-table-column>
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-realtime-location:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-realtime-location:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="库位id" prop="locationId">
<el-input v-model="form.locationId" placeholder="请输入库位id" />
</el-form-item>
<el-form-item label="仓库物品类型" prop="storageType">
<el-select v-model="form.storageType" placeholder="请选择仓库物品类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="托盘编码" prop="palletCode">
<el-input v-model="form.palletCode" placeholder="请输入托盘编码" />
</el-form-item>
<el-form-item label="入库时间" prop="inTime">
<el-date-picker clearable v-model="form.inTime" type="date" value-format="timestamp" placeholder="选择入库时间" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseRealtimeLocation, updateWarehouseRealtimeLocation, deleteWarehouseRealtimeLocation, getWarehouseRealtimeLocation, getWarehouseRealtimeLocationPage, exportWarehouseRealtimeLocationExcel } from "./warehouseRealtimeLocation";
export default {
name: "WarehouseRealtimeLocation",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 出入库-有库位列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
locationId: null,
storageType: null,
palletCode: null,
inTime: [],
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
locationId: [{ required: true, message: "库位id不能为空", trigger: "blur" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseRealtimeLocationPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
locationId: undefined,
storageType: undefined,
palletCode: undefined,
inTime: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加出入库-有库位";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseRealtimeLocation(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改出入库-有库位";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseRealtimeLocation(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseRealtimeLocation(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除出入库-有库位编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseRealtimeLocation(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有出入库-有库位数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseRealtimeLocationExcel(params);
}).then(response => {
this.$download.excel(response, '出入库-有库位.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建出入库-有库位
export function createWarehouseRealtimeLocation(data) {
return request({
url: '/extend/warehouse-realtime-location/create',
method: 'post',
data: data
})
}
// 更新出入库-有库位
export function updateWarehouseRealtimeLocation(data) {
return request({
url: '/extend/warehouse-realtime-location/update',
method: 'put',
data: data
})
}
// 删除出入库-有库位
export function deleteWarehouseRealtimeLocation(id) {
return request({
url: '/extend/warehouse-realtime-location/delete?id=' + id,
method: 'delete'
})
}
// 获得出入库-有库位
export function getWarehouseRealtimeLocation(id) {
return request({
url: '/extend/warehouse-realtime-location/get?id=' + id,
method: 'get'
})
}
// 获得出入库-有库位分页
export function getWarehouseRealtimeLocationPage(query) {
return request({
url: '/extend/warehouse-realtime-location/page',
method: 'get',
params: query
})
}
// 导出出入库-有库位 Excel
export function exportWarehouseRealtimeLocationExcel(query) {
return request({
url: '/extend/warehouse-realtime-location/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}

View File

@@ -0,0 +1,274 @@
<!-- 出入库(有库位)详情管理 -->
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="出入库-有库位表id" prop="realtimeLocationId">
<el-input v-model="queryParams.realtimeLocationId" placeholder="请输入出入库-有库位表id" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="queryParams.goodsId" placeholder="请输入物品id关联物品表" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="物品批次" prop="goodsBatch">
<el-input v-model="queryParams.goodsBatch" placeholder="请输入物品批次" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="queryParams.num" placeholder="请输入数量" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="操作人" prop="operator">
<el-input v-model="queryParams.operator" placeholder="请输入操作人" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="queryParams.enabled" placeholder="请输入启用状态:0 、停用1、启用" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="queryParams.remark" placeholder="请输入备注" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="queryParams.version" placeholder="请输入版本号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['extend:warehouse-realtime-location-det:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['extend:warehouse-realtime-location-det:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="出入库-有库位表id" align="center" prop="realtimeLocationId" />
<el-table-column label="物品id关联物品表" align="center" prop="goodsId" />
<el-table-column label="物品批次" align="center" prop="goodsBatch" />
<el-table-column label="数量" align="center" prop="num" />
<el-table-column label="操作人" align="center" prop="operator" />
<el-table-column label="启用状态:0 、停用1、启用" align="center" prop="enabled" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="版本号" align="center" prop="version" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['extend:warehouse-realtime-location-det:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['extend:warehouse-realtime-location-det:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="出入库-有库位表id" prop="realtimeLocationId">
<el-input v-model="form.realtimeLocationId" placeholder="请输入出入库-有库位表id" />
</el-form-item>
<el-form-item label="物品id关联物品表" prop="goodsId">
<el-input v-model="form.goodsId" placeholder="请输入物品id关联物品表" />
</el-form-item>
<el-form-item label="物品批次" prop="goodsBatch">
<el-input v-model="form.goodsBatch" placeholder="请输入物品批次" />
</el-form-item>
<el-form-item label="数量" prop="num">
<el-input v-model="form.num" placeholder="请输入数量" />
</el-form-item>
<el-form-item label="操作人" prop="operator">
<el-input v-model="form.operator" placeholder="请输入操作人" />
</el-form-item>
<el-form-item label="启用状态:0 、停用1、启用" prop="enabled">
<el-input v-model="form.enabled" placeholder="请输入启用状态:0 、停用1、启用" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createWarehouseRealtimeLocationDet, updateWarehouseRealtimeLocationDet, deleteWarehouseRealtimeLocationDet, getWarehouseRealtimeLocationDet, getWarehouseRealtimeLocationDetPage, exportWarehouseRealtimeLocationDetExcel } from "./warehouseRealtimeLocationDet";
export default {
name: "WarehouseRealtimeLocationDet",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 出入库(有库位)详情列表
list: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10,
realtimeLocationId: null,
goodsId: null,
goodsBatch: null,
num: null,
operator: null,
enabled: null,
remark: null,
version: null,
createTime: [],
},
// 表单参数
form: {},
// 表单校验
rules: {
realtimeLocationId: [{ required: true, message: "出入库-有库位表id不能为空", trigger: "blur" }],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getWarehouseRealtimeLocationDetPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
realtimeLocationId: undefined,
goodsId: undefined,
goodsBatch: undefined,
num: undefined,
operator: undefined,
enabled: undefined,
remark: undefined,
version: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加出入库(有库位)详情";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getWarehouseRealtimeLocationDet(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改出入库(有库位)详情";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
// 修改的提交
if (this.form.id != null) {
updateWarehouseRealtimeLocationDet(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
// 添加的提交
createWarehouseRealtimeLocationDet(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除出入库(有库位)详情编号为"' + id + '"的数据项?').then(function() {
return deleteWarehouseRealtimeLocationDet(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有出入库(有库位)详情数据项?').then(() => {
this.exportLoading = true;
return exportWarehouseRealtimeLocationDetExcel(params);
}).then(response => {
this.$download.excel(response, '出入库(有库位)详情.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>

View File

@@ -0,0 +1,54 @@
import request from '@/utils/request'
// 创建出入库(有库位)详情
export function createWarehouseRealtimeLocationDet(data) {
return request({
url: '/extend/warehouse-realtime-location-det/create',
method: 'post',
data: data
})
}
// 更新出入库(有库位)详情
export function updateWarehouseRealtimeLocationDet(data) {
return request({
url: '/extend/warehouse-realtime-location-det/update',
method: 'put',
data: data
})
}
// 删除出入库(有库位)详情
export function deleteWarehouseRealtimeLocationDet(id) {
return request({
url: '/extend/warehouse-realtime-location-det/delete?id=' + id,
method: 'delete'
})
}
// 获得出入库(有库位)详情
export function getWarehouseRealtimeLocationDet(id) {
return request({
url: '/extend/warehouse-realtime-location-det/get?id=' + id,
method: 'get'
})
}
// 获得出入库(有库位)详情分页
export function getWarehouseRealtimeLocationDetPage(query) {
return request({
url: '/extend/warehouse-realtime-location-det/page',
method: 'get',
params: query
})
}
// 导出出入库(有库位)详情 Excel
export function exportWarehouseRealtimeLocationDetExcel(query) {
return request({
url: '/extend/warehouse-realtime-location-det/export-excel',
method: 'get',
params: query,
responseType: 'blob'
})
}