no message

main
HUOJIN\92525 2024-04-12 16:03:31 +08:00
parent c9a2d489cc
commit 228499272e
4 changed files with 212 additions and 214 deletions

View File

@ -203,17 +203,20 @@ export default {
},
showcolumn() {
const table = this.crud.props.table
this.hiddenColumns.forEach((column, index) => {
const vm = table.$children.find(e => e.prop === column.property)
const columnConfig = vm.columnConfig
if (column.visible) {
columnConfig.width = column.width
columnConfig.visible = column.visible
vm.owner.store.commit('insertColumn', columnConfig, index + 1, null)
}
if(this.hiddenColumns!== undefined && this.hiddenColumns!=null){
this.hiddenColumns.forEach((column, index) => {
const vm = table.$children.find(e => e.prop === column.property)
const columnConfig = vm.columnConfig
if (column.visible) {
columnConfig.width = column.width
columnConfig.visible = column.visible
vm.owner.store.commit('insertColumn', columnConfig, index + 1, null)
}
})
this.updateTableColumns();
}
})
this.updateTableColumns();
},
//
columnDrop() {

View File

@ -12,9 +12,6 @@
<el-input v-model="query.name" clearable placeholder="请输入名称" style="width: 185px;" class="filter-item"
@keyup.enter.native="crud.toQuery"/>
<label class="el-form-item-label">规格</label>
<el-input v-model="query.specs" clearable placeholder="请输入规格" style="width: 185px;" class="filter-item"
@keyup.enter.native="crud.toQuery"/>
<label class="el-form-item-label">是否启用</label>
<el-select v-model="query.enabled" clearable placeholder="请选择" style="width: 185px;" class="filter-item"
@ -63,46 +60,10 @@
<el-form-item label="装载数">
<el-input v-model="form.extendD1" style="width: 180px;"/>
</el-form-item>
<el-form-item label="类型" prop="goodType">
<el-select v-model="form.goodType" filterable placeholder="请选择" style="width: 180px;"
:default-first-option="true">
<el-option
v-for="item in dict.item_type"
:key="item.id"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="单位" prop="unit">
<el-select v-model="form.unit" filterable placeholder="请选择" style="width: 180px;"
:default-first-option="true">
<el-option
v-for="item in dict.item_unit"
:key="item.id"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="时长" >
<el-input v-model="form.extendD2" type="number" style="width: 180px;"/>
</el-form-item>
<el-form-item label="长">
<el-input v-model="form.length" type="number" style="width: 180px;"/>
</el-form-item>
<el-form-item label="宽">
<el-input v-model="form.width" style="width: 180px;"/>
</el-form-item>
<el-form-item label="高">
<el-input v-model="form.height" style="width: 180px;"/>
</el-form-item>
<el-form-item label="重量" >
<el-input v-model="form.weight" style="width: 180px;"/>
</el-form-item>
<el-form-item label="描述">
<el-input v-model="form.description" :rows="3" type="textarea" style="width: 370px;"/>
<el-input v-model="form.unit" style="width: 180px;"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU"></el-button>
@ -120,24 +81,10 @@
@selection-change="crud.selectionChangeHandler">
<el-table-column type="selection" width="55"/>
<el-table-column prop="xh" label="序号" type="index" width="50"/>
<el-table-column prop="code" label="编码" width="150"/>
<el-table-column prop="name" label="名称" width="150"/>
<el-table-column prop="goodType" label="类型" width="150">
<template slot-scope="scope">
{{ dict.label.item_type[scope.row.goodType] }}
</template>
</el-table-column>
<el-table-column prop="code" label="编码" />
<el-table-column prop="name" label="名称" :show-overflow-tooltip="true" width="300px" />
<el-table-column prop="extendD1" label="容器装载数"/>
<el-table-column prop="unit" label="单位">
<template slot-scope="scope">
{{ dict.label.item_unit[scope.row.unit] }}
</template>
</el-table-column>
<el-table-column prop="length" label="长"/>
<el-table-column prop="width" label="宽"/>
<el-table-column prop="height" label="高"/>
<el-table-column prop="weight" label="重量"/>
<el-table-column prop="description" label="描述"/>
<el-table-column prop="unit" label="单位" />
<el-table-column prop="enabled" label="启用" width="50">
<template slot-scope="scope">
<el-switch
@ -148,8 +95,7 @@
/>
</template>
</el-table-column>
<el-table-column prop="agvScene.name" label="AGV场景" v-if="false">
</el-table-column>
<el-table-column v-if="checkPer(['admin','item:edit'])" label="操作" width="150px" align="center">
<template slot-scope="scope">
<udOperation

View File

@ -2,169 +2,206 @@
<div class="app-container">
<!--工具栏-->
<div class="head-container">
<el-form ref="form4" :inline="true" :model="form4">
<el-form-item label="送货单ID">
<el-input v-model="query.deliveryHeaderId" clearable placeholder="请输入送货单ID" style="width: 170px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"/>
</el-form-item>
<el-form-item label="Mo票">
<el-input v-model="query.labelNo" clearable placeholder="请输入Mo票" style="width: 170px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"/>
</el-form-item>
<el-form-item label="物料编号">
<el-input v-model="query.itemCode" clearable placeholder="请输入物料编号" style="width: 170px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"/>
</el-form-item>
<label class="el-form-item-label">接收日期</label>
<date-range-picker v-model="query.createTime" class="date-item" style="width: 100px"/>
<rrOperation :crud="crud"/>
<el-button class="filter-item" size="mini" type="warning" icon="el-icon-refresh-left" @click="resetQuery">
</el-button>
</el-form>
<div class="statusButton" style="border-bottom: solid lightgray 1px;">
<el-radio-group v-model="radio3" @change="clickChange" size="small">
<el-radio-button label="全部"> 全部</el-radio-button>
<el-radio-button label="PRINTED"> PRINTED</el-radio-button>
<el-radio-button label="STOCKIN"> STOCKIN</el-radio-button>
<el-radio-button label="其他"> 其他状态</el-radio-button>
</el-radio-group>
</div>
<!--如果想在工具栏加入更多按钮可以使用插槽方式 slot = 'left' or 'right'-->
<crudOperation :permission="permission" :tableKey="this.$options.name"/>
<!--表单组件-->
<el-dialog :close-on-click-modal="false" :before-close="crud.cancelCU" :visible.sync="crud.status.cu > 0" :title="crud.status.title" width="500px">
<el-dialog :close-on-click-modal="false" :before-close="crud.cancelCU" :visible.sync="crud.status.cu > 0"
:title="crud.status.title" width="500px">
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
<el-form-item label="id">
<el-input v-model="form.id" style="width: 370px;" />
</el-form-item>
<el-form-item label="自制件工单id">
<el-input v-model="form.selfWorkOrderId" style="width: 370px;" />
</el-form-item>
<el-form-item label="来源系统">
<el-input v-model="form.sourceSystem" style="width: 370px;" />
</el-form-item>
<el-form-item label="自制件工单编号">
<el-input v-model="form.selfWorkOrderName" style="width: 370px;" />
</el-form-item>
<el-form-item label="物料编码">
<el-input v-model="form.itemCode" style="width: 370px;" />
</el-form-item>
<el-form-item label="标签类型">
<el-input v-model="form.labelType" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS货区">
<el-input v-model="form.goodsAreaCode" style="width: 370px;" />
</el-form-item>
<el-form-item label="检验状态">
<el-input v-model="form.checkResult" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS入库时间">
<el-input v-model="form.datetimeStockin" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS创建人">
<el-input v-model="form.createUserCode" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS修改时间">
<el-input v-model="form.mlsUpdatetime" style="width: 370px;" />
</el-form-item>
<el-form-item label="MO票">
<el-input v-model="form.labelno" style="width: 370px;" />
</el-form-item>
<el-form-item label="物料">
<el-input v-model="form.itemId" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS修改人">
<el-input v-model="form.updateusercode" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS创建时间">
<el-input v-model="form.mlsCreatetime" style="width: 370px;" />
</el-form-item>
<el-form-item label="可用数量">
<el-input v-model="form.qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="标签状态">
<el-input v-model="form.labelState" style="width: 370px;" />
</el-form-item>
<el-form-item label="送货单头ID通过该字段能找到002接口送货单">
<el-input v-model="form.deliveryHeaderId" style="width: 370px;" />
</el-form-item>
<el-form-item label="工单编号">
<el-input v-model="form.workOrderName" style="width: 370px;" />
</el-form-item>
<el-form-item label="工单Id">
<el-input v-model="form.workOrderId" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS货位">
<el-input v-model="form.goodsLocationCode" style="width: 370px;" />
</el-form-item>
<el-form-item label="MLS子库">
<el-input v-model="form.invCode" style="width: 370px;" />
</el-form-item>
<el-form-item label="创建人">
<el-input v-model="form.createBy" style="width: 370px;" />
</el-form-item>
<el-form-item label="修改人">
<el-input v-model="form.updateBy" style="width: 370px;" />
</el-form-item>
<el-form-item label="创建时间">
<el-input v-model="form.createTime" style="width: 370px;" />
</el-form-item>
<el-form-item label="修改时间">
<el-input v-model="form.updateTime" style="width: 370px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU"></el-button>
<el-button :loading="crud.status.cu === 2" type="primary" @click="crud.submitCU"></el-button>
</div>
</el-dialog>
<!--表格渲染-->
<el-table ref="table" v-loading="crud.loading" :data="crud.data" size="small" style="width: 100%;" @selection-change="crud.selectionChangeHandler">
<el-table-column type="selection" width="55" />
<el-table-column prop="id" label="id" />
<el-table-column prop="selfWorkOrderId" label="自制件工单id" />
<el-table-column prop="sourceSystem" label="来源系统" />
<el-table-column prop="selfWorkOrderName" label="自制件工单编号" />
<el-table-column prop="itemCode" label="物料编码" />
<el-table-column prop="labelType" label="标签类型" />
<el-table-column prop="goodsAreaCode" label="MLS货区" />
<el-table-column prop="checkResult" label="检验状态" />
<el-table-column prop="datetimeStockin" label="MLS入库时间" />
<el-table-column prop="createUserCode" label="MLS创建人" />
<el-table-column prop="mlsUpdatetime" label="MLS修改时间" />
<el-table-column prop="labelno" label="MO票" />
<el-table-column prop="itemId" label="物料" />
<el-table-column prop="updateusercode" label="MLS修改人" />
<el-table-column prop="mlsCreatetime" label="MLS创建时间" />
<el-table-column prop="qty" label="可用数量" />
<el-table-column prop="labelState" label="标签状态" />
<el-table-column prop="deliveryHeaderId" label="送货单头ID通过该字段能找到002接口送货单" />
<el-table-column prop="workOrderName" label="工单编号" />
<el-table-column prop="workOrderId" label="工单Id" />
<el-table-column prop="goodsLocationCode" label="MLS货位" />
<el-table-column prop="invCode" label="MLS子库" />
<el-table-column prop="createBy" label="创建人" />
<el-table-column prop="updateBy" label="修改人" />
<el-table-column prop="createTime" label="创建时间" />
<el-table-column prop="updateTime" label="修改时间" />
<el-table-column v-if="checkPer(['admin','mo:edit','mo:del'])" label="操作" width="150px" align="center">
<el-table ref="table" show-summary height="400" v-loading="crud.loading" :data="crud.data" size="small"
style="width: 100%;"
@selection-change="crud.selectionChangeHandler"
:summary-method="getSummaries"
>
<el-table-column type="selection" width="55"/>
<el-table-column prop="index" align="center" label="序号" :resizable="false" type="index" width="50"/>
<el-table-column prop="deliveryHeaderId" label="送货单头ID" align="center" width="100"/>
<el-table-column prop="labelNo" label="MO票" align="center" width="150"/>
<el-table-column prop="itemCode" label="物料编码" align="center" width="150" :show-overflow-tooltip="true">
<template slot-scope="scope">
<udOperation
:data="scope.row"
:permission="permission"
/>
<div>{{ scope.row.item.code }}</div>
</template>
</el-table-column>
<el-table-column prop="itemName" label="物料描述" align="center" width="200" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div>{{ scope.row.item.name }}</div>
</template>
</el-table-column>
<el-table-column prop="qty" label="可用数量" align="center" width="100"/>
<el-table-column prop="labelType" label="标签类型" align="center" width="100"/>
<el-table-column prop="deleteFlag" label="是否有效" align="center" width="100"/>
<el-table-column prop="labelState" label="标签状态" align="center" width="100"/>
<el-table-column prop="checkResult" label="检验状态" align="center" width="100"/>
<el-table-column prop="invCode" label="mls子库" align="center" width="100"/>
<!-- <el-table-column prop="workOrderName" label="工单名称"/>
<el-table-column prop="workOrderId" label="工单Id"/>
<el-table-column prop="selfWorkOrderId" label="自制件工单id"/>
<el-table-column prop="selfWorkOrderName" label="自制件工单编号"/>
-->
<el-table-column prop="datetimeStockin" label="mls入库时间" align="center" width="140"/>
<el-table-column prop="mlsUpdatetime" label="mls修改时间" align="center" width="140"/>
<el-table-column prop="mlsCreatetime" label="mls创建时间" align="center" width="140"/>
<el-table-column prop="createTime" label="wms接收时间" align="center" width="140"/>
<el-table-column prop="updateTime" label="wms修改时间" align="center" width="140"/>
<!-- <el-table-column v-if="checkPer(['admin','mo:edit','mo:del'])" label="操作" width="150px" align="center">
<template slot-scope="scope">
<udOperation
:data="scope.row"
:permission="permission"
/>
</template>
</el-table-column>-->
</el-table>
<!--分页组件-->
<pagination />
<div style="float:right">
<pagination/>
</div>
</div>
</div>
</template>
<script>
import crudMo from '@/api/mo'
import CRUD, { presenter, header, form, crud } from '@crud/crud'
import CRUD, {presenter, header, form, crud} from '@crud/crud'
import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination'
import DateRangePicker from "@/components/DateRangePicker/index.vue";
const defaultForm = { id: null, selfWorkOrderId: null, sourceSystem: null, selfWorkOrderName: null, itemCode: null, labelType: null, goodsAreaCode: null, checkResult: null, datetimeStockin: null, createUserCode: null, mlsUpdatetime: null, labelno: null, itemId: null, updateusercode: null, mlsCreatetime: null, qty: null, labelState: null, deliveryHeaderId: null, workOrderName: null, workOrderId: null, goodsLocationCode: null, invCode: null, createBy: null, updateBy: null, createTime: null, updateTime: null }
const defaultForm = {
id: null,
}
export default {
name: 'Mo',
components: { pagination, crudOperation, rrOperation, udOperation },
components: {DateRangePicker, pagination, crudOperation, rrOperation, udOperation},
mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() {
return CRUD({ title: 'mo', url: 'api/mo', idField: 'id', sort: 'id,desc', crudMethod: { ...crudMo }})
return CRUD({
title: 'Mo票管理',
url: 'api/mo',
idField: 'id',
sort: 'id,desc',
crudMethod: {...crudMo},
optShow: {
add: false,
edit: false,
del: false,
reset: false,
download: true
}
})
},
data() {
return {
form4: {},
radio3: '全部',
permission: {
add: ['admin', 'mo:add'],
edit: ['admin', 'mo:edit'],
del: ['admin', 'mo:del']
},
rules: {
} }
rules: {}
}
},
methods: {
// false
[CRUD.HOOK.beforeRefresh]() {
return true
},
clickChange(lab) {
if (lab === "全部") {
this.crud.resetQuery();
this.crud.toQuery();
} else if (lab === "PRINTED") {
this.query.labelState = 'PRINTED'
this.crud.toQuery();
}else if (lab === "STOCKIN") {
this.query.labelState = 'STOCKIN'
this.crud.toQuery();
}else {
this.query.labelState = '-'
this.crud.toQuery();
}
},
resetQuery() {
this.radio3 = '全部';
this.crud.resetQuery()
},
//
getSummaries(param) {
const {columns, data} = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = '合计';
return;
} else if (column.property === 'qty') {
const values = data.map(item => Number(item[column.property]));
if (!values.every(value => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index];
}
}
});
return sums;
}
}
}

View File

@ -2,9 +2,15 @@
<div class="app-container">
<!--工具栏-->
<div class="head-container">
<el-form ref="form4" :inline="true" :model="form4" label-width="100px">
<el-form ref="form4" :inline="true" :model="form4" >
<el-form-item label="送货单条码号">
<el-form-item label="送货单ID">
<el-input v-model="query.deliveryHeaderId" clearable placeholder="请输入送货单ID" style="width: 170px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"/>
</el-form-item>
<el-form-item label="送货单条码">
<el-input v-model="query.barcodeNumber" clearable placeholder="请输入送货单条码号" style="width: 170px;"
class="filter-item"
@keyup.enter.native="crud.toQuery"/>
@ -27,6 +33,7 @@
<el-radio-group v-model="radio3" @change="clickChange" size="small">
<el-radio-button label="全部"> 全部</el-radio-button>
<el-radio-button label="lm_initial"> lm_initial</el-radio-button>
<el-radio-button label="lm_closed"> lm_closed</el-radio-button>
<el-radio-button label="其他"> 其他状态</el-radio-button>
</el-radio-group>
</div>
@ -46,31 +53,33 @@
</div>
</el-dialog>
<!--表格渲染-->
<el-table ref="table" border height="400" v-loading="crud.loading" :data="crud.data" size="small" style="width: 100%;"
<el-table ref="table" height="400" v-loading="crud.loading" :data="crud.data" size="small" style="width: 100%;"
@selection-change="crud.selectionChangeHandler">
<el-table-column type="selection" width="55"/>
<el-table-column prop="index" align="center" label="序号" :resizable="false" type="index" width="50" />
<el-table-column prop="deliveryHeaderId" align="center" label="送货单ID" />
<el-table-column prop="barcodeNumber" align="center" label="送货单条码号" />
<el-table-column prop="itemCode" align="center" label="物料编码" />
<el-table-column prop="iqcResult" align="center" label="检验结果"/>
<el-table-column prop="deliveryStatus" align="center" label="送货单状态"/>
<el-table-column prop="deliveryQty" align="center" label="计划数量"/>
<el-table-column prop="receivedQty" align="center" label="实际接收数量" />
<el-table-column prop="supplierCode" align="center" label="供应商编码" />
<el-table-column prop="supplierName" align="center" label="供应商名称" :show-overflow-tooltip="true" />
<el-table-column prop="deliveryNumber" align="center" label="送货单号" />
<el-table-column prop="isIqcInspected" align="center" label="是否检验"/>
<el-table-column prop="receivedLocationName" align="center" label="mls货位名称" :show-overflow-tooltip="true" />
<el-table-column prop="receivedLocationCode" align="center" label="mls货位编码" />
<el-table-column prop="receivedInvCode" align="center" label="mls接收子库编码"/>
<el-table-column prop="receivedInvName" align="center" label="mls接收子库名称" :show-overflow-tooltip="true" />
<el-table-column prop="receivedAreaCode" label="mls接收货区编码"/>
<el-table-column prop="receivedAreaName" label="mls接收货区名称" :show-overflow-tooltip="true" />
<el-table-column prop="inInspector" label="检验员"/>
<el-table-column prop="mlsUpdateTime" label="mls修改时间"/>
<el-table-column prop="createTime" label="WMS接收时间"/>
<el-table-column prop="updateTime" label="WMS修改时间"/>
<el-table-column prop="deliveryHeaderId" align="center" label="送货单ID" width="100" />
<el-table-column prop="barcodeNumber" align="center" label="送货单条码" width="100" />
<el-table-column prop="itemCode" align="center" label="物料编码" width="120" />
<el-table-column prop="iqcResult" align="center" label="检验结果" width="100" />
<el-table-column prop="deliveryStatus" align="center" label="送货单状态" width="100" />
<el-table-column prop="deliveryQty" align="center" label="计划数量" width="100"/>
<el-table-column prop="receivedQty" align="center" label="接收数量" width="100" />
<el-table-column prop="supplierCode" align="center" label="供应商编码" width="100" />
<el-table-column prop="supplierName" align="center" label="供应商名称" :show-overflow-tooltip="true" width="100" />
<el-table-column prop="deliveryNumber" align="center" label="送货单号" width="100" />
<el-table-column prop="isIqcInspected" align="center" label="是否检验" width="100" />
<!--
<el-table-column prop="receivedLocationName" align="center" label="mls货位名称" :show-overflow-tooltip="true" width="100" />
<el-table-column prop="receivedLocationCode" align="center" label="mls货位编码" width="100" />
<el-table-column prop="receivedInvCode" align="center" label="mls子库编码" width="100" />
<el-table-column prop="receivedInvName" align="center" label="mls子库名称" :show-overflow-tooltip="true" width="100" />
<el-table-column prop="receivedAreaCode" label="mls货区编码" width="100" />
<el-table-column prop="receivedAreaName" label="mls货区名称" :show-overflow-tooltip="true" width="100" />
-->
<el-table-column prop="inInspector" label="检验员" width="100" />
<el-table-column prop="mlsUpdateTime" label="mls修改时间" width="140" />
<el-table-column prop="createTime" label="wms接收时间" width="140" />
<el-table-column prop="updateTime" label="wms修改时间" width="140" />
<!-- <el-table-column fixed="right" v-if="checkPer(['admin','order:edit','order:del'])" label="操作" width="150px"
align="center">
<template slot-scope="scope">
@ -146,9 +155,12 @@ export default {
} else if (lab === "lm_initial") {
this.query.deliveryStatus = 'lm_initial'
this.crud.toQuery();
} else if (lab === "其他") {
} else if (lab === "lm_closed") {
this.query.deliveryStatus = 'lm_closed'
this.crud.toQuery();
} else if (lab === "其他") {
this.query.deliveryStatus = '-'
this.crud.toQuery();
}
},
resetQuery() {