优化页面
This commit is contained in:
@@ -42,3 +42,17 @@ export function delBasProduct(productGuid) {
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 从ERP获取物料信息
|
||||
// 说明:
|
||||
// - 使用GET请求调用后端接口 `/api2erp/receiveProduct`
|
||||
// - 将本次请求的超时时间设置为5分钟(300000毫秒)
|
||||
// - 不传递额外参数,后端负责同步逻辑
|
||||
export function receiveProductFromERP() {
|
||||
return request({
|
||||
url: '/api2erp/receiveProduct',
|
||||
method: 'get',
|
||||
// 单次请求覆盖默认超时为5分钟
|
||||
timeout: 300000
|
||||
})
|
||||
}
|
||||
|
||||
@@ -8,6 +8,14 @@ export function listOutStockout(query) {
|
||||
})
|
||||
}
|
||||
|
||||
// 从ERP获取出库单据
|
||||
export function getOutStockList() {
|
||||
return request({
|
||||
url: '/api2erp/outStockList',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询出库子单详细
|
||||
export function getOutStockoutDetail(query) {
|
||||
return request({
|
||||
|
||||
@@ -91,6 +91,16 @@
|
||||
v-hasPermi="['bas:BasProduct:export']"
|
||||
>导出</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.8">
|
||||
<!-- 获取物料信息按钮:调用ERP接口并显示进度条 -->
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-refresh"
|
||||
size="mini"
|
||||
@click="handleReceiveProduct"
|
||||
>获取物料信息</el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
@@ -98,20 +108,20 @@
|
||||
<!-- <el-table-column type="selection" width="55" align="center" />-->
|
||||
<!-- 主键列注释保留 -->
|
||||
<!-- <el-table-column label="主键" align="center" prop="productGuid" /> -->
|
||||
<el-table-column label="物料编码" align="center" prop="productId" width="260" />
|
||||
<el-table-column label="物料编码" align="center" prop="productId" width="160" />
|
||||
<el-table-column label="产品编码" align="center" prop="cargoNo" width="160"/>
|
||||
<!-- 物料名称列:修改为自定义模板,用v-html渲染HTML样式 -->
|
||||
<el-table-column label="物料名称" align="center" width="260">
|
||||
<el-table-column label="物料名称" align="center" width="160">
|
||||
<template #default="scope">
|
||||
<!-- v-html解析row.productName中的HTML标签 -->
|
||||
<span v-html="scope.row.productName"></span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="产品型号" align="center" prop="spec" width="260"/>
|
||||
<el-table-column label="产品型号" align="center" prop="spec" width="100"/>
|
||||
<el-table-column label="产品分类" align="center" prop="parentId" />
|
||||
<el-table-column label="价格" align="center" prop="price" />
|
||||
<el-table-column label="单位" align="center" prop="spare6" />
|
||||
<el-table-column label="单位" align="center" prop="spare6" width="180"/>
|
||||
<!-- 中unit为原项目单位 spare6为对方接口中的units,包含单位和辅助单位的json -->
|
||||
<el-table-column label="单位名称" align="center" prop="spare1" />
|
||||
<!-- <el-table-column label="url" align="center" prop="spare3" />
|
||||
@@ -207,11 +217,30 @@
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 获取物料信息进度条弹窗 -->
|
||||
<el-dialog
|
||||
title="获取物料信息"
|
||||
:visible.sync="receiveDialogVisible"
|
||||
width="420px"
|
||||
append-to-body
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
:show-close="!receiveInProgress"
|
||||
>
|
||||
<!-- 进度说明文本 -->
|
||||
<div style="margin-bottom: 12px;">{{ receiveText }}</div>
|
||||
<!-- 进度条:调用过程为不确定耗时,此处使用循环增长模拟,完成后置为100% -->
|
||||
<el-progress :percentage="receivePercent" :text-inside="true" :stroke-width="20" :status="receiveStatus"></el-progress>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="cancelReceive" :disabled="receiveInProgress">关 闭</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listBasProduct, getBasProduct, delBasProduct, addBasProduct, updateBasProduct } from "@/api/bas/BasProduct"
|
||||
import { listBasProduct, getBasProduct, delBasProduct, addBasProduct, updateBasProduct, receiveProductFromERP } from "@/api/bas/BasProduct"
|
||||
|
||||
export default {
|
||||
name: "BasProduct",
|
||||
@@ -236,6 +265,18 @@ export default {
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 获取物料信息进度弹窗显示
|
||||
receiveDialogVisible: false,
|
||||
// 进度百分比
|
||||
receivePercent: 0,
|
||||
// 进度状态:success / exception / undefined
|
||||
receiveStatus: undefined,
|
||||
// 是否正在进行中(进行中禁止关闭)
|
||||
receiveInProgress: false,
|
||||
// 进度文案
|
||||
receiveText: "正在从ERP获取物料信息,请稍候…",
|
||||
// 内部定时器句柄
|
||||
_receiveTimer: null,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
@@ -450,6 +491,62 @@ export default {
|
||||
this.download('bas/BasProduct/export', {
|
||||
...this.queryParams
|
||||
}, `BasProduct_${new Date().getTime()}.xlsx`)
|
||||
},
|
||||
/** 获取物料信息按钮操作:调用ERP接口并显示进度条 */
|
||||
handleReceiveProduct() {
|
||||
// 打开进度弹窗并初始化状态
|
||||
this.receiveDialogVisible = true
|
||||
this.receivePercent = 0
|
||||
this.receiveStatus = undefined
|
||||
this.receiveInProgress = true
|
||||
this.receiveText = "正在从ERP获取物料信息,请稍候…"
|
||||
// 启动一个模拟进度的定时器,在接口完成前循环推进至最多99%
|
||||
if (this._receiveTimer) {
|
||||
clearInterval(this._receiveTimer)
|
||||
this._receiveTimer = null
|
||||
}
|
||||
this._receiveTimer = setInterval(() => {
|
||||
// 每次增长2-5%,上限为99%
|
||||
const inc = Math.floor(2 + Math.random() * 4)
|
||||
this.receivePercent = Math.min(this.receivePercent + inc, 99)
|
||||
}, 500)
|
||||
// 发起接口请求,单次调用超时设置为5分钟(由API封装设置)
|
||||
receiveProductFromERP()
|
||||
.then(() => {
|
||||
// 成功:补满进度到100%,显示成功状态与提示
|
||||
this.receivePercent = 100
|
||||
this.receiveStatus = "success"
|
||||
this.receiveText = "获取完成"
|
||||
this.receiveInProgress = false
|
||||
if (this._receiveTimer) {
|
||||
clearInterval(this._receiveTimer)
|
||||
this._receiveTimer = null
|
||||
}
|
||||
this.$modal.msgSuccess("ERP物料信息获取成功")
|
||||
// 刷新列表数据
|
||||
this.getList()
|
||||
})
|
||||
.catch((err) => {
|
||||
// 失败:显示异常状态与错误提示
|
||||
if (this._receiveTimer) {
|
||||
clearInterval(this._receiveTimer)
|
||||
this._receiveTimer = null
|
||||
}
|
||||
this.receiveInProgress = false
|
||||
this.receiveStatus = "exception"
|
||||
this.receiveText = "获取失败"
|
||||
const msg = (err && err.message) ? err.message : "ERP物料信息获取失败"
|
||||
this.$modal.msgError(msg)
|
||||
})
|
||||
},
|
||||
/** 关闭进度弹窗(进行中禁止关闭) */
|
||||
cancelReceive() {
|
||||
if (this.receiveInProgress) return
|
||||
this.receiveDialogVisible = false
|
||||
if (this._receiveTimer) {
|
||||
clearInterval(this._receiveTimer)
|
||||
this._receiveTimer = null
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
/>
|
||||
</el-form-item>-->
|
||||
<el-form-item label="任务状态" prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择任务状态">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择任务状态" @change="handleQuery">
|
||||
<el-option v-for="dict in dict.type.mydo_job_status" :key="dict.value" :label="dict.label"
|
||||
:value="dict.value" />
|
||||
</el-select>
|
||||
@@ -97,10 +97,19 @@
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange"
|
||||
@row-click="handleRowClick" highlight-current-row :current-row="currentRow" max-height="405">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="mydoJobList"
|
||||
@selection-change="handleSelectionChange"
|
||||
@row-click="handleRowClick"
|
||||
highlight-current-row
|
||||
:current-row="currentRow"
|
||||
max-height="405"
|
||||
@sort-change="handleSortChange"
|
||||
:default-sort="{ prop: 'createTime', order: 'descending' }"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="任务ID" align="center" prop="jobId" width="125" />
|
||||
<el-table-column label="任务ID" align="center" prop="jobId"/>
|
||||
<el-table-column label="任务状态" align="center" prop="status">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status" />
|
||||
@@ -115,9 +124,9 @@
|
||||
<el-table-column label="托盘码" align="center" prop="trayCode" width="100" />
|
||||
<el-table-column label="货位" align="center" prop="cargoSpaceName" width="80" />
|
||||
<!-- <el-table-column label="仓库" align="center" prop="warehouseName" /> -->
|
||||
<el-table-column label="创建时间" align="center" prop="createTime" width="135" />
|
||||
<el-table-column label="创建时间" align="center" prop="createTime" sortable="custom" />
|
||||
<!-- <el-table-column label="开始时间" align="center" prop="startTime" width="135"/> -->
|
||||
<el-table-column label="结束时间" align="center" prop="finishTime" width="135" />
|
||||
<el-table-column label="结束时间" align="center" prop="finishTime" />
|
||||
</el-table>
|
||||
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@@ -130,7 +139,7 @@
|
||||
</div>
|
||||
<el-table v-loading="detailLoading" :data="mydoJobDetailList" @selection-change="handleSelectionChange"
|
||||
max-height="300">
|
||||
<el-table-column label="子任务ID" align="center" prop="jobDetailId" width="135" />
|
||||
<el-table-column label="子任务ID" align="center" prop="jobDetailId"/>
|
||||
<!-- <el-table-column label="任务ID" align="left" prop="jobId" width="160" /> -->
|
||||
<el-table-column label="单据ID" align="center" prop="inOrOutId" width="160" />
|
||||
<el-table-column label="子单据ID" align="center" prop="inOrOutDId" width="160" />
|
||||
@@ -215,7 +224,9 @@ export default {
|
||||
classId: null,
|
||||
warehouseId: null,
|
||||
faultFlag: null,
|
||||
inOut: "1"
|
||||
inOut: "1",
|
||||
orderByColumn: 'mj.create_time',
|
||||
isAsc: 'desc'
|
||||
},
|
||||
queryDetailParams: {
|
||||
pageNum: 1,
|
||||
@@ -319,6 +330,23 @@ export default {
|
||||
// 重新查询主表数据
|
||||
this.handleQuery();
|
||||
},
|
||||
/**
|
||||
* 表格排序变更事件(远程排序)
|
||||
* @param {{ column: object, prop: string, order: 'ascending' | 'descending' | null }} sorter
|
||||
*/
|
||||
handleSortChange({ column, prop, order }) {
|
||||
const toSnake = (s) => s ? s.replace(/([A-Z])/g, "_$1").toLowerCase() : s;
|
||||
let obc = toSnake(prop);
|
||||
if (obc === 'create_time') obc = 'mj.create_time';
|
||||
if (obc === 'finish_time') obc = 'mj.finish_time';
|
||||
this.queryParams.orderByColumn = obc || undefined;
|
||||
this.queryParams.isAsc =
|
||||
order === 'ascending' ? 'asc' :
|
||||
order === 'descending' ? 'desc' :
|
||||
undefined;
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="app-container panel">
|
||||
<!-- 顶部统计面板 -->
|
||||
<el-row :gutter="40" class="panel-group">
|
||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||
<el-col :xs="12" :sm="12" :lg="8" class="card-panel-col">
|
||||
<div class="card-panel">
|
||||
<div class="card-panel-icon-wrapper icon-people">
|
||||
<svg-icon icon-class="clipboard" class-name="card-panel-icon"/>
|
||||
@@ -13,7 +13,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||
<el-col :xs="12" :sm="12" :lg="8" class="card-panel-col">
|
||||
<div class="card-panel">
|
||||
<div class="card-panel-icon-wrapper icon-message">
|
||||
<svg-icon icon-class="documentation" class-name="card-panel-icon"/>
|
||||
@@ -24,18 +24,8 @@
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||
<div class="card-panel">
|
||||
<div class="card-panel-icon-wrapper icon-money">
|
||||
<svg-icon icon-class="chart" class-name="card-panel-icon"/>
|
||||
</div>
|
||||
<div class="card-panel-description">
|
||||
<div class="card-panel-text">盘点单数</div> <!-- 盘点单数 -->
|
||||
<count-to :start-val="0" :end-val="Number(quantity.inventory_sheet)|| 0" :duration="3200" class="card-panel-num"/>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :xs="12" :sm="12" :lg="6" class="card-panel-col">
|
||||
|
||||
<el-col :xs="12" :sm="12" :lg="8" class="card-panel-col">
|
||||
<div class="card-panel">
|
||||
<div class="card-panel-icon-wrapper icon-shopping">
|
||||
<svg-icon icon-class="excel" class-name="card-panel-icon"/>
|
||||
@@ -69,47 +59,47 @@
|
||||
</el-row>
|
||||
|
||||
<!-- 底部列表区域 -->
|
||||
<el-row :gutter="32">
|
||||
<!-- <el-row :gutter="32">
|
||||
<el-col :xs="24" :sm="24" :lg="8">
|
||||
<div class="list-wrapper">
|
||||
<div class="list-header">
|
||||
<span>单据列表</span> <!-- 单据列表 -->
|
||||
<span>单据列表</span>
|
||||
</div>
|
||||
<el-table :data="documentList" style="width: 100%" size="mini" height="300"
|
||||
:header-cell-style="{backgroundColor: '#f5f7fa'}">
|
||||
<el-table-column prop="id" label="单据编号"/> <!-- 单据编号 -->
|
||||
<el-table-column prop="type" :formatter="type_" label="类型" width="80"/> <!-- 类型 -->
|
||||
<el-table-column prop="status" :formatter="status_" label="状态" width="80"/> <!-- 状态 -->
|
||||
<el-table-column prop="id" label="单据编号"/>
|
||||
<el-table-column prop="type" :formatter="type_" label="类型" width="80"/>
|
||||
<el-table-column prop="status" :formatter="status_" label="状态" width="80"/>
|
||||
</el-table>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :xs="24" :sm="24" :lg="8">
|
||||
<div class="list-wrapper">
|
||||
<div class="list-header">
|
||||
<span>正执行任务</span> <!-- 正执行任务 -->
|
||||
<span>正执行任务</span>
|
||||
</div>
|
||||
<el-table :data="executingTasks" style="width: 100%" size="mini" height="300"
|
||||
:header-cell-style="{backgroundColor: '#f5f7fa'}">
|
||||
<el-table-column prop="jobId" label="任务编号"/> <!-- 任务编号 -->
|
||||
<el-table-column prop="inOrOut" label="类型" width="80"/> <!-- 类型 -->
|
||||
<el-table-column prop="statusLabel" label="状态" width="80"/> <!-- 状态 -->
|
||||
<el-table-column prop="jobId" label="任务编号"/>
|
||||
<el-table-column prop="inOrOut" label="类型" width="80"/>
|
||||
<el-table-column prop="statusLabel" label="状态" width="80"/>
|
||||
</el-table>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :xs="24" :sm="24" :lg="8">
|
||||
<div class="list-wrapper">
|
||||
<div class="list-header">
|
||||
<span>待执行任务</span> <!-- 待执行任务 -->
|
||||
<span>待执行任务</span>
|
||||
</div>
|
||||
<el-table :data="pendingTasks" style="width: 100%" size="mini" height="300"
|
||||
:header-cell-style="{backgroundColor: '#f5f7fa'}">
|
||||
<el-table-column prop="jobId" label="任务编号"/> <!-- 任务编号 -->
|
||||
<el-table-column prop="inOrOut" label="类型" width="80"/> <!-- 类型 -->
|
||||
<el-table-column prop="priority" label="优先级" width="80"/> <!-- 优先级 -->
|
||||
<el-table-column prop="jobId" label="任务编号"/>
|
||||
<el-table-column prop="inOrOut" label="类型" width="80"/>
|
||||
<el-table-column prop="priority" label="优先级" width="80"/>
|
||||
</el-table>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-row> -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
|
||||
<el-form-item label="作业状态" prop="status"> <!-- 状态 -->
|
||||
<el-select v-model="queryParams.status" placeholder="请选择状态">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择状态" @change="handleQuery">
|
||||
<el-option v-for="dict in dict.type.mydo_job_status" :key="dict.value" :label="dict.label"
|
||||
:value="dict.value" />
|
||||
</el-select>
|
||||
@@ -80,10 +80,19 @@
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange"
|
||||
@row-click="handleRowClick" highlight-current-row :current-row="currentRow" max-height="400">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="mydoJobList"
|
||||
@selection-change="handleSelectionChange"
|
||||
@row-click="handleRowClick"
|
||||
highlight-current-row
|
||||
:current-row="currentRow"
|
||||
max-height="405"
|
||||
@sort-change="handleSortChange"
|
||||
:default-sort="{ prop: 'createTime', order: 'descending' }"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="任务ID" align="center" prop="jobId" width="120" /> <!-- 任务ID -->
|
||||
<el-table-column label="任务ID" align="center" prop="jobId" width="142" /> <!-- 任务ID -->
|
||||
<el-table-column label="任务状态" align="center" prop="status"> <!-- 任务状态 -->
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status" />
|
||||
@@ -114,9 +123,9 @@
|
||||
|
||||
<!-- <el-table-column label="仓库" align="left" prop="warehouseName" /> -->
|
||||
<!-- <el-table-column label="出口" align="left" prop="exitId"/> 出口ID -->
|
||||
<el-table-column label="创建时间" align="center" prop="createTime" width="135" /> <!-- 创建时间 -->
|
||||
<el-table-column label="创建时间" align="center" prop="createTime" sortable="custom"/> <!-- 创建时间 -->
|
||||
<!-- <el-table-column label="开始时间" align="center" prop="startTime" width="180" /> -->
|
||||
<el-table-column label="结束时间" align="center" prop="finishTime" width="135" /> <!-- 结束时间 -->
|
||||
<el-table-column label="结束时间" align="center" prop="finishTime" sortable="custom"/> <!-- 结束时间 -->
|
||||
<!-- <el-table-column :label="$t('outJobManagement.warehouseId')" align="left" prop="warehouseId" /> <!– 仓库ID –>-->
|
||||
<!-- <el-table-column label="仓库ID" align="left" prop="warehouseName" /> <!– 仓库ID –>-->
|
||||
</el-table>
|
||||
@@ -211,7 +220,9 @@ export default {
|
||||
classId: null,
|
||||
warehouseId: null,
|
||||
faultFlag: null,
|
||||
inOut: '2'
|
||||
inOut: '2',
|
||||
orderByColumn: 'mj.create_time',
|
||||
isAsc: 'desc'
|
||||
},
|
||||
queryDetailParams: {
|
||||
pageNum: 1,
|
||||
@@ -314,6 +325,18 @@ export default {
|
||||
this.resetForm("queryForm")
|
||||
this.handleQuery()
|
||||
},
|
||||
/** 排序触发事件 */
|
||||
handleSortChange({ column, prop, order }) {
|
||||
this.queryParams.orderByColumn = prop;
|
||||
this.queryParams.isAsc = order === 'ascending' ? 'asc' : 'desc';
|
||||
if (this.queryParams.orderByColumn === 'createTime') {
|
||||
this.queryParams.orderByColumn = 'mj.create_time';
|
||||
} else if (this.queryParams.orderByColumn === 'finishTime') {
|
||||
this.queryParams.orderByColumn = 'mj.finish_time';
|
||||
}
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.jobId)
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
</el-form>
|
||||
|
||||
<!-- 饼状图容器 -->
|
||||
<div class="chart-container" style="height: 700px">
|
||||
<div class="chart-container">
|
||||
<div ref="spaceChart" style="width: 100%; height: 100%"></div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -79,9 +79,11 @@ export default {
|
||||
,
|
||||
mounted() {
|
||||
this.initChart();
|
||||
window.addEventListener('resize', this.handleResize)
|
||||
}
|
||||
,
|
||||
beforeDestroy() {
|
||||
window.removeEventListener('resize', this.handleResize)
|
||||
if (this.chart) {
|
||||
this.chart.dispose();
|
||||
this.chart = null;
|
||||
@@ -154,6 +156,10 @@ export default {
|
||||
this.updateChart();
|
||||
}
|
||||
,
|
||||
handleResize() {
|
||||
this.chart && this.chart.resize()
|
||||
}
|
||||
,
|
||||
/** 状态码转换为国际化文本 */
|
||||
getStatusText(statusCode) {
|
||||
const statusMap = {
|
||||
@@ -214,11 +220,21 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.app-container {
|
||||
padding: 10px;
|
||||
height: calc(100vh - 84px);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.chart-container {
|
||||
margin-top: 20px;
|
||||
padding: 20px;
|
||||
margin-top: 10px;
|
||||
padding: 10px;
|
||||
background: #fff;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
position: relative;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
</div>
|
||||
|
||||
<div class="chart-container">
|
||||
<div id="container" v-show="queryParams.warehouseId !== '04'" style="height: 80vh"></div>
|
||||
<div id="container" v-show="queryParams.warehouseId !== '04'"></div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -96,9 +96,13 @@ export default {
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getWarehouseList()
|
||||
this.getWarehouseList()
|
||||
this.initCharts()
|
||||
this.handleWarehouseChange()
|
||||
window.addEventListener('resize', this.handleResize)
|
||||
},
|
||||
beforeDestroy() {
|
||||
window.removeEventListener('resize', this.handleResize)
|
||||
},
|
||||
methods: {
|
||||
/** 查询仓库列表 */
|
||||
@@ -113,6 +117,10 @@ this.getWarehouseList()
|
||||
initCharts() {
|
||||
this.normalChart = echarts.init(document.getElementById('container'))
|
||||
},
|
||||
// 窗口大小改变
|
||||
handleResize() {
|
||||
this.normalChart && this.normalChart.resize()
|
||||
},
|
||||
// 仓库变化处理
|
||||
handleWarehouseChange() {
|
||||
// 重置巷道和排号
|
||||
@@ -174,7 +182,7 @@ this.getWarehouseList()
|
||||
}
|
||||
},
|
||||
title: {
|
||||
text: '库位分布平面图',
|
||||
text: '',
|
||||
subtext: (() => {
|
||||
const sel = this.floorOptions.find(o => String(o.value) === String(this.queryParams.theFloor))
|
||||
return sel && sel.label ? sel.label : ''
|
||||
@@ -321,7 +329,7 @@ this.getWarehouseList()
|
||||
},
|
||||
// 格式化普通仓库提示信息
|
||||
formatTooltip(params) {
|
||||
if (params.seriesName !== '满位') {
|
||||
if (params.seriesName !== '满位' && params.seriesName !== '出库分配') {
|
||||
// 排
|
||||
if (this.$i18n.locale ==='zh-cn') {
|
||||
return params.seriesName + '<br>' + (params.data[1] + 1) + '排' + (params.data[0] + 1) + '列' + this.queryParams.theFloor+ '层';
|
||||
@@ -400,21 +408,33 @@ this.getWarehouseList()
|
||||
|
||||
<style scoped>
|
||||
.app-container {
|
||||
padding: 20px;
|
||||
padding: 10px;
|
||||
height: calc(100vh - 84px);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.search-box {
|
||||
background-color: #fff;
|
||||
padding: 20px;
|
||||
margin-bottom: 20px;
|
||||
padding: 10px 10px 0 10px;
|
||||
margin-bottom: 10px;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.chart-container {
|
||||
background-color: #fff;
|
||||
padding: 20px;
|
||||
padding: 10px;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -65,7 +65,6 @@
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['out:outStockout:add']"
|
||||
@@ -75,7 +74,6 @@
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-check"
|
||||
size="mini"
|
||||
@click="handleAudit(2)"
|
||||
v-hasPermi="['out:outStockout:changeStatus']"
|
||||
@@ -85,7 +83,6 @@
|
||||
<el-button
|
||||
type="success"
|
||||
plain
|
||||
icon="el-icon-circle-check"
|
||||
size="mini"
|
||||
@click="handleAudit(4)"
|
||||
v-hasPermi="['out:outStockout:changeStatus']"
|
||||
@@ -95,16 +92,31 @@
|
||||
<el-button
|
||||
type="danger"
|
||||
plain
|
||||
icon="el-icon-delete"
|
||||
size="mini"
|
||||
@click="handleAudit(5)"
|
||||
v-hasPermi="['out:outStockout:changeStatus']"
|
||||
>{{'单据作废'}}</el-button> <!-- 单据作废 -->
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
size="mini"
|
||||
@click="getOutStock"
|
||||
v-hasPermi="['out:outStockout:add']"
|
||||
>获取单据</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<!-- 主表数据 -->
|
||||
<el-table v-loading="loading" :data="outStockoutList" @selection-change="handleSelectionChange" max-height="400">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="outStockoutList"
|
||||
@selection-change="handleSelectionChange"
|
||||
max-height="400"
|
||||
@sort-change="handleSortChange"
|
||||
:default-sort="{ prop: 'createDate', order: 'descending' }"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column :label="'出库单编号'" align="center" prop="stockoutId" width="150" /> <!-- 出库单编号 -->
|
||||
<el-table-column :label="'出库单主题'" align="center" prop="fid" width="200" /> <!-- 出库单主题 -->
|
||||
@@ -127,10 +139,10 @@
|
||||
<!-- <el-table-column :label="'ERP出库单编号'" align="center" prop="erpStockoutId" /> -->
|
||||
<!-- ERP出库单编号 -->
|
||||
<el-table-column :label="'客户名称'" align="center" prop="customerNo" /> <!-- 客户名称 -->
|
||||
<el-table-column :label="'创建时间'" align="center" prop="createDate" width="135" /><!-- 创建时间 -->
|
||||
<el-table-column :label="'开始时间'" align="center" prop="startDate" width="135"/><!-- 开始时间 -->
|
||||
<el-table-column :label="'确认时间'" align="center" prop="finishDate" width="135"/> <!-- 确认时间 -->
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="50">
|
||||
<el-table-column :label="'创建时间'" align="center" prop="createDate" width="150" sortable="custom"/><!-- 创建时间 -->
|
||||
<!-- <el-table-column :label="'开始时间'" align="center" prop="startDate" width="150"/><!– 开始时间 –>-->
|
||||
<el-table-column :label="'确认时间'" align="center" prop="finishDate" width="150"/> <!-- 确认时间 -->
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="60">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
@@ -410,7 +422,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listOutStockout,autoAllot,listOut,manualAllot, saveOutStock, listProductAndStock} from "@/api/out/outStockout"
|
||||
import { listOutStockout,autoAllot,listOut,manualAllot, saveOutStock, listProductAndStock, getOutStockList} from "@/api/out/outStockout"
|
||||
import { getOutStockoutDetail,updateOutStockStatus } from "@/api/out/outStockout"
|
||||
import {listWarehouse} from "@/api/bas/warehouse";
|
||||
|
||||
@@ -496,7 +508,9 @@ export default {
|
||||
productName: null,
|
||||
startDate: null,
|
||||
finishDate: null,
|
||||
status: '1'
|
||||
status: '1',
|
||||
orderByColumn: 'create_date',
|
||||
isAsc: 'desc'
|
||||
},
|
||||
// 子表分页参数
|
||||
detailQueryParams: {
|
||||
@@ -653,6 +667,15 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
getOutStock() {
|
||||
this.$modal.confirm('是否确认从ERP获取出库单据?').then(function () {
|
||||
return getOutStockList()
|
||||
}).then(() => {
|
||||
this.getList()
|
||||
this.$modal.msgSuccess("获取成功")
|
||||
}).catch(() => {
|
||||
})
|
||||
},
|
||||
/** 查询主表数据 */
|
||||
getList() {
|
||||
this.loading = true
|
||||
@@ -699,6 +722,16 @@ export default {
|
||||
this.resetForm("queryForm")
|
||||
this.handleQuery()
|
||||
},
|
||||
handleSortChange({ column, prop, order }) {
|
||||
const toSnake = (s) => s ? s.replace(/([A-Z])/g, "_$1").toLowerCase() : s
|
||||
this.queryParams.orderByColumn = toSnake(prop) || undefined
|
||||
this.queryParams.isAsc =
|
||||
order === 'ascending' ? 'asc' :
|
||||
order === 'descending' ? 'desc' :
|
||||
undefined
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
/** 点击行加载明细数据 */
|
||||
handleRowClick(row) {
|
||||
this.getDetailList(row.stockoutGuid,row.status)
|
||||
|
||||
@@ -6,17 +6,17 @@
|
||||
<el-checkbox label="cargoSpaceId">货位编码</el-checkbox>
|
||||
<el-checkbox label="productId">物料编码</el-checkbox>
|
||||
<el-checkbox label="productName">物料名称</el-checkbox>
|
||||
<el-checkbox label="parentId">产品分类</el-checkbox>
|
||||
<el-checkbox label="price">价格</el-checkbox>
|
||||
<el-checkbox label="cargoNo">产品编码</el-checkbox>
|
||||
<!-- <el-checkbox label="parentId">产品分类</el-checkbox> -->
|
||||
<!-- <el-checkbox label="price">价格</el-checkbox> -->
|
||||
<!-- <el-checkbox label="cargoNo">产品编码</el-checkbox> -->
|
||||
<el-checkbox label="unit">单位</el-checkbox>
|
||||
<el-checkbox label="spec">型号</el-checkbox>
|
||||
<el-checkbox label="spare1">单位名称</el-checkbox>
|
||||
<el-checkbox label="spare3">url</el-checkbox>
|
||||
<el-checkbox label="spare4">btnurl</el-checkbox>
|
||||
<el-checkbox label="spare5">unitPrices</el-checkbox>
|
||||
<el-checkbox label="spare6">units</el-checkbox>
|
||||
<el-checkbox label="spare7">unitjb</el-checkbox>
|
||||
<!-- <el-checkbox label="spare1">单位名称</el-checkbox> -->
|
||||
<!-- <el-checkbox label="spare3">url</el-checkbox> -->
|
||||
<!-- <el-checkbox label="spare4">btnurl</el-checkbox> -->
|
||||
<!-- <el-checkbox label="spare5">unitPrices</el-checkbox> -->
|
||||
<!-- <el-checkbox label="spare6">units</el-checkbox> -->
|
||||
<!-- <el-checkbox label="spare7">unitjb</el-checkbox> -->
|
||||
<el-checkbox label="cargoSpaceName">货位名称</el-checkbox>
|
||||
<el-checkbox label="status">货位状态</el-checkbox>
|
||||
<el-checkbox label="locked">货位锁</el-checkbox>
|
||||
@@ -97,34 +97,38 @@
|
||||
max-height="650"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="库存编码" align="left" prop="stockId" width="160" />
|
||||
<el-table-column label="物料编码" align="left" prop="productId" width="160" v-if="queryParams.groupFields.includes('productId')" />
|
||||
<el-table-column label="物料名称" align="left" prop="productName" width="160" v-if="queryParams.groupFields.includes('productName')" />
|
||||
<el-table-column label="货位编码" align="left" prop="cargoSpaceId" width="160" v-if="queryParams.groupFields.includes('cargoSpaceId')" />
|
||||
<el-table-column label="库存数量" align="right" prop="quantity" width="120" />
|
||||
<el-table-column label="产品分类" align="left" prop="parentId" width="160" v-if="queryParams.groupFields.includes('parentId')" />
|
||||
<el-table-column label="价格" align="right" prop="price" width="160" v-if="queryParams.groupFields.includes('price')" />
|
||||
<el-table-column label="产品编码" align="left" prop="cargoNo" width="160" v-if="queryParams.groupFields.includes('cargoNo')" />
|
||||
<el-table-column label="单位" align="left" prop="unit" width="160" v-if="queryParams.groupFields.includes('unit')" />
|
||||
<el-table-column label="型号" align="left" prop="spec" width="160" v-if="queryParams.groupFields.includes('spec')" />
|
||||
<el-table-column label="单位名称" align="left" prop="spare1" width="160" v-if="queryParams.groupFields.includes('spare1')" />
|
||||
<el-table-column label="url" align="left" prop="spare3" width="160" v-if="queryParams.groupFields.includes('spare3')" />
|
||||
<el-table-column label="btnurl" align="left" prop="spare4" width="160" v-if="queryParams.groupFields.includes('spare4')" />
|
||||
<el-table-column label="unitPrices" align="left" prop="spare5" width="160" v-if="queryParams.groupFields.includes('spare5')" />
|
||||
<el-table-column label="units" align="left" prop="spare6" width="160" v-if="queryParams.groupFields.includes('spare6')" />
|
||||
<el-table-column label="unitjb" align="left" prop="spare7" width="160" v-if="queryParams.groupFields.includes('spare7')" />
|
||||
<el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="160" v-if="queryParams.groupFields.includes('cargoSpaceName')" />
|
||||
<el-table-column label="货位状态" align="left" prop="status" width="160" v-if="queryParams.groupFields.includes('status')" >
|
||||
<el-table-column label="库存编码" align="center" prop="stockId" width="120" />
|
||||
<el-table-column label="物料编码" align="center" prop="productId" width="120" v-if="queryParams.groupFields.includes('productId')" />
|
||||
<el-table-column label="物料名称" align="center" prop="productName" width="120" v-if="queryParams.groupFields.includes('productName')" />
|
||||
<el-table-column label="货位编码" align="center" prop="cargoSpaceId" width="80" v-if="queryParams.groupFields.includes('cargoSpaceId')" />
|
||||
<el-table-column label="库存数量" align="center" prop="quantity" width="80" />
|
||||
<el-table-column label="产品分类" align="center" prop="parentId" width="80" v-if="queryParams.groupFields.includes('parentId')" />
|
||||
<el-table-column label="价格" align="center" prop="price" width="80" v-if="queryParams.groupFields.includes('price')" />
|
||||
<!-- <el-table-column label="产品编码" align="center" prop="cargoNo" width="100" v-if="queryParams.groupFields.includes('cargoNo')" /> -->
|
||||
<el-table-column label="单位" align="center" prop="unit" width="50" v-if="queryParams.groupFields.includes('unit')" />
|
||||
<el-table-column label="型号" align="center" prop="spec" width="80" v-if="queryParams.groupFields.includes('spec')" />
|
||||
<!-- <el-table-column label="单位名称" align="left" prop="spare1" width="160" v-if="queryParams.groupFields.includes('spare1')" /> -->
|
||||
<!-- <el-table-column label="url" align="left" prop="spare3" width="160" v-if="queryParams.groupFields.includes('spare3')" /> -->
|
||||
<!-- <el-table-column label="btnurl" align="left" prop="spare4" width="160" v-if="queryParams.groupFields.includes('spare4')" /> -->
|
||||
<!-- <el-table-column label="unitPrices" align="center" prop="spare5" width="160" v-if="queryParams.groupFields.includes('spare5')" /> -->
|
||||
<el-table-column label="units" align="center" prop="spare6" width="80" v-if="queryParams.groupFields.includes('spare6')">
|
||||
<template slot-scope="scope">
|
||||
{{ getunits(scope.row.spare6) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="unitjb" align="center" prop="spare7" width="80" v-if="queryParams.groupFields.includes('spare7')" />
|
||||
<el-table-column label="货位名称" align="center" prop="cargoSpaceName" width="80" v-if="queryParams.groupFields.includes('cargoSpaceName')" />
|
||||
<el-table-column label="货位状态" align="center" prop="status" width="80" v-if="queryParams.groupFields.includes('status')" >
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.cargo_space_status" :value="scope.row.status"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="货位锁" align="left" prop="locked" width="160" v-if="queryParams.groupFields.includes('locked')" >
|
||||
<el-table-column label="货位锁" align="center" prop="locked" width="80" v-if="queryParams.groupFields.includes('locked')" >
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.cargo_space_lock_status" :value="scope.row.locked"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注" align="left" prop="remark" width="160" />
|
||||
<el-table-column label="备注" align="center" prop="remark" width="80" />
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
@@ -298,6 +302,19 @@ export default {
|
||||
this.ids = selection.map(item => item.onlyIdentity)
|
||||
this.single = selection.length!==1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
getunits(json) {
|
||||
if (!json) return ''
|
||||
try {
|
||||
const jsonObject = JSON.parse(json)
|
||||
let units = []
|
||||
for (const key in jsonObject) {
|
||||
units.push(jsonObject[key])
|
||||
}
|
||||
return units.join('/')
|
||||
} catch (e) {
|
||||
return json
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -77,56 +77,60 @@
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="ViewInJobFlowList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column width="180" label="作业ID" align="center" prop="jobId" />
|
||||
<el-table-column width="180" label="子作业ID" align="center" prop="jobDetailId" />
|
||||
<el-table-column width="180" label="任务号" align="center" prop="taskNo" />
|
||||
<el-table-column width="180" label="单据ID" align="center" prop="inOrOutId" />
|
||||
<el-table-column width="180" label="子单据ID" align="center" prop="inOrOutDId" />
|
||||
<el-table-column width="180" label="物料编码" align="center" prop="productId" />
|
||||
<el-table-column width="180" label="物料名称" align="center" prop="productName" />
|
||||
<el-table-column width="180" label="unitPrices" align="center" prop="spare5" />
|
||||
<el-table-column width="180" label="units" align="center" prop="spare6" />
|
||||
<el-table-column width="180" label="托盘码" align="center" prop="trayCode" />
|
||||
<el-table-column width="180" label="入库数量" align="center" prop="inQuantity" />
|
||||
<el-table-column width="180" label="库存数量" align="center" prop="stockQuantity" />
|
||||
<el-table-column width="180" label="供应商id" align="center" prop="supplierNo" />
|
||||
<el-table-column width="180" label="供应商名称" align="center" prop="supplierName" />
|
||||
<el-table-column width="180" label="客户id" align="center" prop="customerNo" />
|
||||
<el-table-column width="180" label="客户名称" align="center" prop="customerName" />
|
||||
<!-- <el-table-column label="出库数量" align="center" prop="outQuantity" />-->
|
||||
<el-table-column width="120" label="任务状态" align="center" prop="status">
|
||||
<el-table v-loading="loading" :data="ViewInJobFlowList" @selection-change="handleSelectionChange" :default-sort="defaultSort" @sort-change="handleSortChange">
|
||||
<!-- <el-table-column type="selection" width="55" align="center" /> -->
|
||||
<el-table-column width="125" label="作业ID" align="center" prop="jobId" />
|
||||
<el-table-column width="135" label="子作业ID" align="center" prop="jobDetailId" />
|
||||
<el-table-column width="80" label="任务号" align="center" prop="taskNo" />
|
||||
<el-table-column width="125" label="单据ID" align="center" prop="inOrOutId" />
|
||||
<el-table-column width="135" label="子单据ID" align="center" prop="inOrOutDId" />
|
||||
<el-table-column width="130" label="物料编码" align="center" prop="productId" />
|
||||
<el-table-column width="150" label="物料名称" align="center" prop="productName" />
|
||||
<!-- <el-table-column width="180" label="unitPrices" align="center" prop="spare5" /> -->
|
||||
<!-- <el-table-column width="180" label="units" align="center" prop="spare6" /> -->
|
||||
<el-table-column width="80" label="托盘码" align="center" prop="trayCode" />
|
||||
<el-table-column width="100" label="入库数量" align="center" prop="inQuantity">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.sys_job_status" :value="scope.row.status"/>
|
||||
{{ scope.row.inQuantity ? parseFloat(scope.row.inQuantity).toFixed(4) : scope.row.inQuantity }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="货位ID" align="center" prop="cargoSpaceId" />
|
||||
<el-table-column width="180" label="目标巷道ID" align="center" prop="targetCargoSpaceId" />
|
||||
<el-table-column width="180" label="开始时间" align="center" prop="startTime" />
|
||||
<el-table-column width="180" label="结束时间" align="center" prop="finishTime" />
|
||||
<el-table-column width="120" label="执行阶段" align="center" prop="executionPhase">
|
||||
<!-- <el-table-column width="180" label="库存数量" align="center" prop="stockQuantity" /> -->
|
||||
<!-- <el-table-column width="180" label="供应商id" align="center" prop="supplierNo" /> -->
|
||||
<!-- <el-table-column width="180" label="供应商名称" align="center" prop="supplierName" /> -->
|
||||
<!-- <el-table-column width="180" label="客户id" align="center" prop="customerNo" /> -->
|
||||
<!-- <el-table-column width="180" label="客户名称" align="center" prop="customerName" /> -->
|
||||
<!-- <el-table-column label="出库数量" align="center" prop="outQuantity" />-->
|
||||
<el-table-column width="80" label="任务状态" align="center" prop="status">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="80" label="货位ID" align="center" prop="cargoSpaceId" />
|
||||
<!-- <el-table-column width="50" label="目标巷道ID" align="center" prop="targetCargoSpaceId" /> -->
|
||||
<el-table-column width="135" label="创建时间" align="center" prop="createTime" sortable="custom" :sort-orders="['descending','ascending']" />
|
||||
<el-table-column width="135" label="结束时间" align="center" prop="finishTime" sortable="custom" :sort-orders="['descending','ascending']" />
|
||||
<el-table-column width="100" label="执行阶段" align="center" prop="executionPhase">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="库存ID" align="center" prop="stockId" />
|
||||
<el-table-column width="180" label="批次号" align="center" prop="lotNo" />
|
||||
<el-table-column width="120" label="库存状态" align="center" prop="stockStatus">
|
||||
<template slot-scope="scope">
|
||||
<!-- <el-table-column width="180" label="库存ID" align="center" prop="stockId" /> -->
|
||||
<!-- <el-table-column width="180" label="批次号" align="center" prop="lotNo" /> -->
|
||||
<!-- <el-table-column width="120" label="库存状态" align="center" prop="stockStatus"> -->
|
||||
<!-- <template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.stock_status" :value="scope.row.stockStatus"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="产品分类" align="center" prop="parentId" />
|
||||
<el-table-column width="180" label="价格" align="center" prop="price" />
|
||||
<el-table-column width="180" label="产品编码" align="center" prop="cargoNo" />
|
||||
<el-table-column width="180" label="单位id" align="center" prop="unit" />
|
||||
<el-table-column width="180" label="型号" align="center" prop="spec" />
|
||||
<el-table-column width="180" label="单位名称" align="center" prop="spare1" />
|
||||
<el-table-column width="180" label="url" align="center" prop="spare3" />
|
||||
<el-table-column width="180" label="btnurl" align="center" prop="spare4" />
|
||||
<el-table-column width="180" label="unitjb" align="center" prop="spare7" />
|
||||
<el-table-column width="180" label="备注" align="center" prop="remark" />
|
||||
</el-table-column> -->
|
||||
<el-table-column width="80" label="产品分类" align="center" prop="parentId" />
|
||||
<!-- <el-table-column width="180" label="价格" align="center" prop="price" /> -->
|
||||
<el-table-column width="80" label="产品编码" align="center" prop="cargoNo" />
|
||||
<!-- <el-table-column width="180" label="单位id" align="center" prop="unit" /> -->
|
||||
<el-table-column width="80" label="型号" align="center" prop="spec" />
|
||||
<!-- <el-table-column width="180" label="单位名称" align="center" prop="spare1" /> -->
|
||||
<!-- <el-table-column width="180" label="url" align="center" prop="spare3" /> -->
|
||||
<!-- <el-table-column width="180" label="btnurl" align="center" prop="spare4" /> -->
|
||||
<!-- <el-table-column width="180" label="unitjb" align="center" prop="spare7" /> -->
|
||||
<el-table-column width="120" label="备注" align="center" prop="remark" />
|
||||
|
||||
</el-table>
|
||||
|
||||
@@ -147,11 +151,13 @@ import { listViewInJobFlow, getViewInJobFlow } from "@/api/search/ViewInJobFlow"
|
||||
|
||||
export default {
|
||||
name: "ViewInJobFlow",
|
||||
dicts: ['execution_phase_type', 'sys_job_status', 'stock_status'],
|
||||
dicts: ['execution_phase_type', 'mydo_job_status', 'stock_status'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 默认排序
|
||||
defaultSort: {prop: 'finishTime', order: 'descending'},
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
@@ -172,6 +178,8 @@ export default {
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
orderByColumn: 'finish_time',
|
||||
isAsc: 'desc',
|
||||
jobId: null,
|
||||
status: null,
|
||||
trayCode: null,
|
||||
@@ -225,6 +233,12 @@ export default {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
/** 排序触发事件 */
|
||||
handleSortChange({ column, prop, order }) {
|
||||
this.queryParams.orderByColumn = prop ? prop.replace(/([A-Z])/g, "_$1").toLowerCase() : '';
|
||||
this.queryParams.isAsc = order === 'ascending' ? 'asc' : 'desc';
|
||||
this.getList();
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false
|
||||
|
||||
@@ -77,55 +77,69 @@
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="ViewOutJobFlowList" @selection-change="handleSelectionChange">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="ViewOutJobFlowList"
|
||||
@selection-change="handleSelectionChange"
|
||||
@sort-change="handleSortChange"
|
||||
:default-sort="{ prop: 'startTime', order: 'descending' }"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column width="180" label="作业ID" align="center" prop="jobId" />
|
||||
<el-table-column width="180" label="子作业ID" align="center" prop="jobDetailId" />
|
||||
<el-table-column width="180" label="任务号" align="center" prop="taskNo" />
|
||||
<el-table-column width="100" label="任务号" align="center" prop="taskNo" />
|
||||
<el-table-column width="180" label="单据ID" align="center" prop="inOrOutId" />
|
||||
<el-table-column width="180" label="子单据ID" align="center" prop="inOrOutDId" />
|
||||
<el-table-column width="180" label="物料编码" align="center" prop="productId" />
|
||||
<el-table-column width="180" label="物料名称" align="center" prop="productName" />
|
||||
<el-table-column width="180" label="unitPrices" align="center" prop="spare5" />
|
||||
<el-table-column width="180" label="units" align="center" prop="spare6" />
|
||||
<el-table-column width="180" label="托盘码" align="center" prop="trayCode" />
|
||||
<!-- <el-table-column width="180" label="unitPrices" align="center" prop="spare5" />-->
|
||||
<el-table-column width="100" label="单位组" align="center" prop="spare6" />
|
||||
<el-table-column width="100" label="托盘码" align="center" prop="trayCode" />
|
||||
<!-- <el-table-column width="180" label="入库数量" align="center" prop="inQuantity" />-->
|
||||
<el-table-column width="180" label="出库数量" align="center" prop="outQuantity" />
|
||||
<el-table-column width="180" label="库存数量" align="center" prop="stockQuantity" />
|
||||
<el-table-column width="180" label="供应商id" align="center" prop="supplierNo" />
|
||||
<el-table-column width="180" label="供应商名称" align="center" prop="supplierName" />
|
||||
<el-table-column width="180" label="客户id" align="center" prop="customerNo" />
|
||||
<el-table-column width="180" label="客户名称" align="center" prop="customerName" />
|
||||
<el-table-column width="120" label="任务状态" align="center" prop="status">
|
||||
<el-table-column width="100" label="出库数量" align="center" prop="outQuantity">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.sys_job_status" :value="scope.row.status"/>
|
||||
{{ format4(scope.row.outQuantity) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="货位ID" align="center" prop="cargoSpaceId" />
|
||||
<el-table-column width="180" label="目标巷道ID" align="center" prop="targetCargoSpaceId" />
|
||||
<el-table-column width="180" label="开始时间" align="center" prop="startTime" />
|
||||
<el-table-column width="180" label="结束时间" align="center" prop="finishTime" />
|
||||
<el-table-column width="120" label="执行阶段" align="center" prop="executionPhase">
|
||||
<el-table-column width="100" label="库存数量" align="center" prop="stockQuantity">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>
|
||||
{{ format4(scope.row.stockQuantity) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="库存ID" align="center" prop="stockId" />
|
||||
<el-table-column width="180" label="批次号" align="center" prop="lotNo" />
|
||||
<el-table-column width="120" label="库存状态" align="center" prop="stockStatus">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.stock_status" :value="scope.row.stockStatus"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="产品分类" align="center" prop="parentId" />
|
||||
<el-table-column width="180" label="价格" align="center" prop="price" />
|
||||
<el-table-column width="180" label="产品编码" align="center" prop="cargoNo" />
|
||||
<el-table-column width="180" label="单位id" align="center" prop="unit" />
|
||||
<el-table-column width="180" label="型号" align="center" prop="spec" />
|
||||
<el-table-column width="180" label="单位名称" align="center" prop="spare1" />
|
||||
<el-table-column width="180" label="url" align="center" prop="spare3" />
|
||||
<el-table-column width="180" label="btnurl" align="center" prop="spare4" />
|
||||
<el-table-column width="180" label="unitjb" align="center" prop="spare7" />
|
||||
<!-- <el-table-column width="180" label="供应商id" align="center" prop="supplierNo" />-->
|
||||
<!-- <el-table-column width="180" label="供应商名称" align="center" prop="supplierName" />-->
|
||||
<!-- <el-table-column width="180" label="客户id" align="center" prop="customerNo" />-->
|
||||
<!-- <el-table-column width="180" label="客户名称" align="center" prop="customerName" />-->
|
||||
<!-- <el-table-column width="120" label="任务状态" align="center" prop="status">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <dict-tag :options="dict.type.sys_job_status" :value="scope.row.status"/>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<el-table-column width="80" label="货位ID" align="center" prop="cargoSpaceId" />
|
||||
<!-- <el-table-column width="180" label="目标巷道ID" align="center" prop="targetCargoSpaceId" />-->
|
||||
<el-table-column width="150" label="开始时间" align="center" prop="startTime" sortable="custom" />
|
||||
<el-table-column width="150" label="结束时间" align="center" prop="finishTime" sortable="custom" />
|
||||
<!-- <el-table-column width="120" label="执行阶段" align="center" prop="executionPhase">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<el-table-column width="135" label="库存ID" align="center" prop="stockId" />
|
||||
<!-- <el-table-column width="180" label="批次号" align="center" prop="lotNo" />-->
|
||||
<!-- <el-table-column width="120" label="库存状态" align="center" prop="stockStatus">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <dict-tag :options="dict.type.stock_status" :value="scope.row.stockStatus"/>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<!-- <el-table-column width="180" label="产品分类" align="center" prop="parentId" />-->
|
||||
<!-- <el-table-column width="180" label="价格" align="center" prop="price" />-->
|
||||
<!-- <el-table-column width="180" label="产品编码" align="center" prop="cargoNo" />-->
|
||||
<!-- <el-table-column width="180" label="单位id" align="center" prop="unit" />-->
|
||||
<!-- <el-table-column width="180" label="型号" align="center" prop="spec" />-->
|
||||
<!-- <el-table-column width="180" label="单位名称" align="center" prop="spare1" />-->
|
||||
<!-- <el-table-column width="180" label="url" align="center" prop="spare3" />-->
|
||||
<!-- <el-table-column width="180" label="btnurl" align="center" prop="spare4" />-->
|
||||
<!-- <el-table-column width="180" label="unitjb" align="center" prop="spare7" />-->
|
||||
<el-table-column width="180" label="备注" align="center" prop="remark" />
|
||||
|
||||
</el-table>
|
||||
@@ -204,7 +218,9 @@ export default {
|
||||
spare4: null,
|
||||
spare5: null,
|
||||
spare6: null,
|
||||
spare7: null
|
||||
spare7: null,
|
||||
orderByColumn: 'start_time',
|
||||
isAsc: 'desc'
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
@@ -299,6 +315,23 @@ export default {
|
||||
this.single = selection.length!==1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
handleSortChange({ column, prop, order }) {
|
||||
this.queryParams.orderByColumn = prop
|
||||
? prop.replace(/([A-Z])/g, "_$1").toLowerCase()
|
||||
: undefined
|
||||
this.queryParams.isAsc =
|
||||
order === 'ascending' ? 'asc' :
|
||||
order === 'descending' ? 'desc' :
|
||||
undefined
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
format4(v) {
|
||||
if (v === null || v === undefined || v === '') return ''
|
||||
const n = Number(v)
|
||||
if (isNaN(n)) return v
|
||||
return n.toFixed(4)
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.reset()
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<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="stockinId">
|
||||
<el-form-item label="单据ID" prop="stockinId">
|
||||
<el-input
|
||||
v-model="queryParams.stockinId"
|
||||
placeholder="请输入入库主单ID"
|
||||
@@ -9,7 +9,7 @@
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="入库子单ID" prop="stockinDetailId">
|
||||
<el-form-item label="子单ID" prop="stockinDetailId">
|
||||
<el-input
|
||||
v-model="queryParams.stockinDetailId"
|
||||
placeholder="请输入子单ID"
|
||||
@@ -98,19 +98,29 @@
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="ViewStockinHistoryList" @selection-change="handleSelectionChange">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="ViewStockinHistoryList"
|
||||
@selection-change="handleSelectionChange"
|
||||
@sort-change="handleSortChange"
|
||||
:default-sort="{ prop: 'createDate', order: 'descending' }"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column width="180" label="入库主单ID" align="center" prop="stockinId" />
|
||||
<el-table-column width="180" label="子单ID" align="center" prop="stockinDetailId" />
|
||||
<el-table-column width="120" label="单据状态" align="center" prop="status">
|
||||
<el-table-column label="单据状态" align="center" prop="status">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.in_bill_status" :value="scope.row.status"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="物料编码" align="center" prop="productId" />
|
||||
<el-table-column width="180" label="物料名称" align="center" prop="productName" />
|
||||
<el-table-column width="120" label="计划数量" align="center" prop="quantity" />
|
||||
<el-table-column width="200" label="unitPrices" align="center" prop="spare5" />
|
||||
<el-table-column width="100" label="计划数量" align="center" prop="quantity">
|
||||
<template slot-scope="scope">
|
||||
{{ format4(scope.row.quantity) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column width="200" label="unitPrices" align="center" prop="spare5" />
|
||||
<el-table-column width="200" label="units" align="center" prop="spare6" />
|
||||
<el-table-column width="180" label="供应商编码" align="center" prop="supplierNo" />
|
||||
<el-table-column width="180" label="供应商名称" align="center" prop="supplierName" />
|
||||
@@ -118,27 +128,35 @@
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.in_bill_type" :value="scope.row.inType"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="建立时间" align="center" prop="createDate" />
|
||||
<el-table-column width="120" label="创建人" align="center" prop="createManId" />
|
||||
</el-table-column> -->
|
||||
<el-table-column width="150" label="建立时间" align="center" prop="createDate" sortable="custom" />
|
||||
<el-table-column width="100" label="创建人" align="center" prop="createManId" />
|
||||
<!-- <el-table-column label="仓库ID" align="center" prop="warehouseId" />-->
|
||||
<el-table-column width="180" label="完成日期" align="center" prop="finishDate" />
|
||||
<el-table-column width="180" label="erp单号" align="center" prop="erpBill" />
|
||||
<el-table-column width="150" label="完成日期" align="center" prop="finishDate" sortable="custom" />
|
||||
<el-table-column width="140" label="erp单号" align="center" prop="erpBill" />
|
||||
<!-- <el-table-column label="单据来源" align="center" prop="stockSource" />-->
|
||||
<!-- <el-table-column label="部门编码" align="center" prop="departmentNo" />-->
|
||||
<!-- <el-table-column label="班组编码" align="center" prop="classNo" />-->
|
||||
<!-- <el-table-column label="客户编码" align="center" prop="customerNo" />-->
|
||||
<el-table-column width="120" label="产品分类" align="center" prop="parentId" />
|
||||
<!-- <el-table-column width="120" label="产品分类" align="center" prop="parentId" /> -->
|
||||
<!-- <el-table-column label="价格" align="center" prop="price" />-->
|
||||
<el-table-column width="180" label="产品编码" align="center" prop="cargoNo" />
|
||||
<!-- <el-table-column width="180" label="产品编码" align="center" prop="cargoNo" />
|
||||
<el-table-column width="180" label="单位id" align="center" prop="unit" />
|
||||
<el-table-column width="180" label="型号" align="center" prop="spec" />
|
||||
<el-table-column width="180" label="单位名称" align="center" prop="spare1" />
|
||||
<el-table-column width="180" label="url" align="center" prop="spare3" />
|
||||
<el-table-column width="180" label="btnurl" align="center" prop="spare4" />
|
||||
<el-table-column width="180" label="unitjb" align="center" prop="spare7" />
|
||||
<el-table-column width="180" label="扫码数量" align="center" prop="scanNum" />
|
||||
<el-table-column width="180" label="实际数量" align="center" prop="assignNum" />
|
||||
<el-table-column width="180" label="unitjb" align="center" prop="spare7" /> -->
|
||||
<el-table-column width="100" label="扫码数量" align="center" prop="scanNum">
|
||||
<template slot-scope="scope">
|
||||
{{ format4(scope.row.scanNum) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="100" label="实际数量" align="center" prop="assignNum">
|
||||
<template slot-scope="scope">
|
||||
{{ format4(scope.row.assignNum) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="备注" align="center" prop="remark" />
|
||||
</el-table>
|
||||
|
||||
@@ -214,7 +232,9 @@ export default {
|
||||
quantity: null,
|
||||
scanNum: null,
|
||||
assignNum: null,
|
||||
supplierName: null
|
||||
supplierName: null,
|
||||
orderByColumn: 'create_date',
|
||||
isAsc: 'desc'
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
@@ -307,6 +327,23 @@ export default {
|
||||
this.single = selection.length!==1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
handleSortChange({ column, prop, order }) {
|
||||
this.queryParams.orderByColumn = prop
|
||||
? prop.replace(/([A-Z])/g, "_$1").toLowerCase()
|
||||
: undefined
|
||||
this.queryParams.isAsc =
|
||||
order === 'ascending' ? 'asc' :
|
||||
order === 'descending' ? 'desc' :
|
||||
undefined
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
format4(v) {
|
||||
if (v === null || v === undefined || v === '') return ''
|
||||
const n = Number(v)
|
||||
if (isNaN(n)) return v
|
||||
return n.toFixed(4)
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.reset()
|
||||
@@ -368,4 +405,10 @@ export default {
|
||||
width: auto;
|
||||
min-width: fit-content;
|
||||
}
|
||||
/* 表头文本容器自适应宽度,避免固定宽度造成拥挤或换行 */
|
||||
.el-table >>> th .cell {
|
||||
white-space: nowrap;
|
||||
width: auto;
|
||||
min-width: fit-content;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<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="stockoutId">
|
||||
<el-form-item label="单据编号" prop="stockoutId">
|
||||
<el-input
|
||||
v-model="queryParams.stockoutId"
|
||||
placeholder="请输入出库订单ID"
|
||||
@@ -9,16 +9,16 @@
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="出库类型" prop="outType">
|
||||
<el-select v-model="queryParams.outType" placeholder="请选择出库类型" clearable>
|
||||
<el-option
|
||||
v-for="dict in dict.type.out_bill_type"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="出库类型" prop="outType">-->
|
||||
<!-- <el-select v-model="queryParams.outType" placeholder="请选择出库类型" clearable>-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="dict in dict.type.out_bill_type"-->
|
||||
<!-- :key="dict.value"-->
|
||||
<!-- :label="dict.label"-->
|
||||
<!-- :value="dict.value"-->
|
||||
<!-- />-->
|
||||
<!-- </el-select>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="单据状态" prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择单据状态" clearable>
|
||||
<el-option
|
||||
@@ -29,14 +29,14 @@
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="子单id" prop="stockoutDetailId">
|
||||
<el-input
|
||||
v-model="queryParams.stockoutDetailId"
|
||||
placeholder="请输入子单id"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="子单id" prop="stockoutDetailId">-->
|
||||
<!-- <el-input-->
|
||||
<!-- v-model="queryParams.stockoutDetailId"-->
|
||||
<!-- placeholder="请输入子单id"-->
|
||||
<!-- clearable-->
|
||||
<!-- @keyup.enter.native="handleQuery"-->
|
||||
<!-- />-->
|
||||
<!-- </el-form-item>-->
|
||||
|
||||
<el-form-item label="物料编码" prop="productId">
|
||||
<el-input
|
||||
@@ -57,11 +57,6 @@
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="warning"
|
||||
plain
|
||||
@@ -70,51 +65,71 @@
|
||||
@click="handleExport"
|
||||
v-hasPermi="['search:ViewStockoutHistory:export']"
|
||||
>导出</el-button>
|
||||
</el-col>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<!-- <el-col :span="1.5">-->
|
||||
<!-- <el-button-->
|
||||
<!-- type="warning"-->
|
||||
<!-- plain-->
|
||||
<!-- icon="el-icon-download"-->
|
||||
<!-- size="mini"-->
|
||||
<!-- @click="handleExport"-->
|
||||
<!-- v-hasPermi="['search:ViewStockoutHistory:export']"-->
|
||||
<!-- >导出</el-button>-->
|
||||
<!-- </el-col>-->
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="ViewStockoutHistoryList" @selection-change="handleSelectionChange">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="ViewStockoutHistoryList"
|
||||
@selection-change="handleSelectionChange"
|
||||
@sort-change="handleSortChange"
|
||||
:default-sort="{ prop: 'createDate', order: 'descending' }"
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column width="180" label="出库订单ID" align="center" prop="stockoutId" />
|
||||
<el-table-column width="180" label="子单id" align="center" prop="stockoutDetailId" />
|
||||
<el-table-column width="180" label="单据主题" align="center" prop="FID" />
|
||||
<el-table-column width="180" label="物料编码" align="center" prop="productId" />
|
||||
<el-table-column width="180" label="物料名称" align="center" prop="productName" />
|
||||
<el-table-column width="180" label="数量" align="center" prop="quantity" />
|
||||
<el-table-column width="200" label="unitPrices" align="center" prop="spare5" />
|
||||
<el-table-column width="200" label="units" align="center" prop="spare6" />
|
||||
<el-table-column width="120" label="出库类型" align="center" prop="outType">
|
||||
<el-table-column width="100" label="数量" align="center" prop="quantity" />
|
||||
<!-- <el-table-column width="200" label="unitPrices" align="center" prop="spare5" />-->
|
||||
<el-table-column width="200" label="单位组" align="center" prop="spare6" />
|
||||
<el-table-column width="100" label="出库类型" align="center" prop="outType">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.out_bill_type" :value="scope.row.outType"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="建立时间" align="center" prop="createDate" />
|
||||
<el-table-column width="120" label="创建人" align="center" prop="createManId" />
|
||||
<el-table-column width="120" label="单据状态" align="center" prop="status">
|
||||
<el-table-column width="100" label="建立时间" align="center" prop="createDate" sortable="custom" />
|
||||
<!-- <el-table-column width="120" label="创建人" align="center" prop="createManId" />-->
|
||||
<el-table-column width="80" label="单据状态" align="center" prop="status">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.out_bill_status" :value="scope.row.status"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column width="180" label="供应商编号" align="center" prop="supplierNo" />
|
||||
<el-table-column width="180" label="供应商名称" align="center" prop="supplierName" />
|
||||
<el-table-column width="180" label="客户编号" align="center" prop="customerNo" />
|
||||
<el-table-column width="180" label="客户名称" align="center" prop="contactName" />
|
||||
<el-table-column width="180" label="单据来源" align="center" prop="stockoutSource" />
|
||||
<el-table-column width="180" label="出口" align="center" prop="exitId" />
|
||||
<el-table-column width="180" label="单据主题" align="center" prop="FID" />
|
||||
<el-table-column width="180" label="erp出库id" align="center" prop="erpStockoutId" />
|
||||
<el-table-column width="180" label="批次" align="center" prop="lotNo" />
|
||||
<el-table-column width="180" label="实际数量" align="center" prop="assignNum" />
|
||||
<el-table-column width="180" label="分配数量" align="center" prop="allotQuantity" />
|
||||
<el-table-column width="180" label="产品分类" align="center" prop="parentId" />
|
||||
<el-table-column width="180" label="价格" align="center" prop="price" />
|
||||
<el-table-column width="180" label="产品编码" align="center" prop="cargoNo" />
|
||||
<el-table-column width="180" label="单位id" align="center" prop="unit" />
|
||||
<el-table-column width="180" label="型号" align="center" prop="spec" />
|
||||
<el-table-column width="180" label="单位名称" align="center" prop="spare1" />
|
||||
<el-table-column width="180" label="url" align="center" prop="spare3" />
|
||||
<el-table-column width="180" label="btnurl" align="center" prop="spare4" />
|
||||
<el-table-column width="180" label="unitjb" align="center" prop="spare7" />
|
||||
<!-- <el-table-column width="180" label="供应商编号" align="center" prop="supplierNo" />-->
|
||||
<!-- <el-table-column width="180" label="供应商名称" align="center" prop="supplierName" />-->
|
||||
<!-- <el-table-column width="180" label="客户编号" align="center" prop="customerNo" />-->
|
||||
<!-- <el-table-column width="180" label="客户名称" align="center" prop="contactName" />-->
|
||||
<!-- <el-table-column width="180" label="单据来源" align="center" prop="stockoutSource" />-->
|
||||
<!-- <el-table-column width="180" label="出口" align="center" prop="exitId" />-->
|
||||
|
||||
<el-table-column width="100" label="erp出库id" align="center" prop="erpStockoutId" />
|
||||
<!-- <el-table-column width="180" label="批次" align="center" prop="lotNo" />-->
|
||||
<el-table-column width="100" label="实际数量" align="center" prop="assignNum" />
|
||||
<el-table-column width="100" label="分配数量" align="center" prop="allotQuantity" />
|
||||
<!-- <el-table-column width="180" label="产品分类" align="center" prop="parentId" />-->
|
||||
<!-- <el-table-column width="180" label="价格" align="center" prop="price" />-->
|
||||
<!-- <el-table-column width="180" label="产品编码" align="center" prop="cargoNo" />-->
|
||||
<!-- <el-table-column width="180" label="单位id" align="center" prop="unit" />-->
|
||||
<!-- <el-table-column width="180" label="型号" align="center" prop="spec" />-->
|
||||
<!-- <el-table-column width="180" label="单位名称" align="center" prop="spare1" />-->
|
||||
<!-- <el-table-column width="180" label="url" align="center" prop="spare3" />-->
|
||||
<!-- <el-table-column width="180" label="btnurl" align="center" prop="spare4" />-->
|
||||
<!-- <el-table-column width="180" label="unitjb" align="center" prop="spare7" />-->
|
||||
<el-table-column width="180" label="备注" align="center" prop="remark" />
|
||||
</el-table>
|
||||
|
||||
@@ -190,7 +205,9 @@ export default {
|
||||
supplierNo: null,
|
||||
supplierName: null,
|
||||
customerNo: null,
|
||||
contactName: null
|
||||
contactName: null,
|
||||
orderByColumn: 'create_date',
|
||||
isAsc: 'desc'
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
@@ -271,6 +288,17 @@ export default {
|
||||
this.single = selection.length!==1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
handleSortChange({ column, prop, order }) {
|
||||
this.queryParams.orderByColumn = prop
|
||||
? prop.replace(/([A-Z])/g, "_$1").toLowerCase()
|
||||
: undefined
|
||||
this.queryParams.isAsc =
|
||||
order === 'ascending' ? 'asc' :
|
||||
order === 'descending' ? 'desc' :
|
||||
undefined
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.reset()
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
size="mini"
|
||||
@click="pointOut"
|
||||
v-hasPermi="['job:outmydoJob:pointOut']"
|
||||
>指定货位出库 <!-- 指定货位出库 --></el-button>
|
||||
>指定通道出库 <!-- 指定货位出库 --></el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
@@ -84,25 +84,28 @@
|
||||
|
||||
<el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange" max-height="650">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="库存编码" align="left" prop="stockId" /> <!-- 库存编码 -->
|
||||
<el-table-column label="初始货位编码" align="left" prop="lotNo" /> <!-- 库存编码 -->
|
||||
<el-table-column label="操作后货位编码" align="left" prop="cargoSpaceId" /> <!-- 货位编码 -->
|
||||
<el-table-column label="操作后货位名称" align="left" prop="cargoSpaceName" /> <!-- 货位编码 -->
|
||||
<el-table-column label="托盘条码" align="left" prop="trayCode" /> <!-- 托盘条码 -->
|
||||
<el-table-column label="初始物品名称" align="left" prop="productGuid" /> <!-- 托盘条码 -->
|
||||
<el-table-column label="操作后物品编码" align="left" prop="productId" /> <!-- 物品编码 -->
|
||||
<el-table-column label="操作后物品名称" align="left" prop="productName" /> <!-- 物品名称 -->
|
||||
<el-table-column label="单位名称" align="left" prop="unitName" />
|
||||
<el-table-column label="产品型号" align="left" prop="productModel" />
|
||||
<el-table-column label="初始数量" align="right" prop="oldQuantity" /> <!-- 初始数量 -->
|
||||
<el-table-column label="操作后数量" align="right" prop="quantity" /> <!-- 操作后数量 -->
|
||||
<el-table-column label="操作" align="left" prop="method"> <!-- 操作 -->
|
||||
<el-table-column label="库存编码" align="center" prop="stockId" width="142" /> <!-- 库存编码 -->
|
||||
<el-table-column label="初始货位" align="center" prop="lotNo" width="142" /> <!-- 初始货位 -->
|
||||
<el-table-column label="现货位" align="center" prop="cargoSpaceId" width="142" /> <!-- 货位编码 -->
|
||||
<el-table-column label="货位名称" align="center" prop="cargoSpaceName" width="142" /> <!-- 货位编码 -->
|
||||
<el-table-column label="托盘条码" align="center" prop="trayCode" width="142" /> <!-- 托盘条码 -->
|
||||
<el-table-column label="操作类型" align="center" prop="method"> <!-- 操作 -->
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.stock_maintain_method" :value="scope.row.method"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="仓库" align="left" prop="warehouseName" /> <!-- 仓库 -->
|
||||
<el-table-column label="创建时间" align="left" prop="createTime" /> <!-- 创建时间 -->
|
||||
<el-table-column label="原物品名称" align="center" prop="productGuid" width="142" /> <!-- 托盘条码 -->
|
||||
<el-table-column label="现物品编码" align="center" prop="productId" width="142" /> <!-- 物品编码 -->
|
||||
<el-table-column label="现物品名称" align="center" prop="productName" width="142" /> <!-- 物品名称 -->
|
||||
<el-table-column label="单位名称" align="center" prop="unitName" width="142" />
|
||||
<el-table-column label="产品型号" align="center" prop="productModel" width="142" />
|
||||
<el-table-column label="初始数量" align="center" prop="oldQuantity" /> <!-- 初始数量 -->
|
||||
<el-table-column label="当前数量" align="center" prop="quantity" /> <!-- 操作后数量 -->
|
||||
|
||||
<!-- <el-table-column label="仓库" align="left" prop="warehouseName" /> -->
|
||||
<!-- 仓库 -->
|
||||
<el-table-column label="操作时间" align="center" prop="createTime" width="180" /> <!-- 创建时间 -->
|
||||
|
||||
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <el-button-->
|
||||
|
||||
1066
ruoyi-ui/src/views/system/inStockIn/index.vue
Normal file
1066
ruoyi-ui/src/views/system/inStockIn/index.vue
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user