中航光电热表web
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

348 lines
13 KiB

<template>
6 months ago
<el-dialog :title="rowItem.isBatch ? '批量出库' : '出库'" append-to-body :modelValue="openShow" width="90%" @close="closeDialog" fullscreen>
<div style="height: 50px;">
<el-input v-model="formInline.orderId" placeholder="扫描出库单号条形码" @keyup.enter.native="query" style="width: 200px;float: left;"></el-input>
<el-button type="danger" @click="delFn" style="float: right;">删除</el-button>
</div>
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud"
@search-change="searchChange" @search-reset="searchReset" :before-open="beforeOpen"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
6 months ago
@refresh-change="refreshChange" @on-load="onLoad" @row-save="rowSave"
@cell-click="cellClick">
</avue-crud>
6 months ago
<template #footer>
<span class="dialog-footer">
<el-button @click="closeDialog"> </el-button>
<el-button type="primary" @click="submit"> </el-button>
</span>
</template>
</el-dialog>
</template>
<script>
export default {
props: {
showDialog: {
type: Boolean,
default: false
},
6 months ago
rowItem: {
type: Object,
default: () => ({})
}
},
data() {
return {
openShow: false,
formInline: {
orderId: '',
number2: ''
},
option: {
columnSort: true,
tip: false,
align: 'center',
calcHeight: 32,
simplePage: false,
page: false,
searchShow: true,
searchMenuSpan: 6,
searchIcon: true,
searchIndex: 3,
tree: false,
border: true,
index: false,
selection: true,
viewBtn: false,
delBtn: false,
6 months ago
editBtn: true,
cellEdit: true,
menu: true,
editBtnText: '修改',
editBtnIcon: ' ',
delBtnIcon: ' ',
addBtn: false,
labelWidth: 140,
searchLabelWidth: 120,
menu: false,
menuWidth: 200,
dialogWidth: 1200,
dialogClickModal: false,
searchEnter: true,
excelBtn: true,
gridBtn: false,
searchShowBtn: false,
showOverflowTooltip: true,
header: false,
searchLabelPosition:'left',
6 months ago
searchLabelPosition:'left',
searchGutter:24,
searchSpan:6,
menuAlign: 'left',
gridBtn:false,
searchMenuPosition:'right',
addBtnIcon: ' ',
viewBtnIcon: ' ',
delBtnIcon: ' ',
editBtnIcon: ' ',
column: [
{
label: '车间订单号',
prop: 'woCode',
search: false,
},
{
label: '物料号',
prop: 'c_materiel_id',
search: false,
},
{
label: '物料名称',
prop: 'partNames',
search: false,
},
{
label: '物料批次号',
prop: 'goodbatchNo',
search: false,
},
{
label: '粉重',
prop: 'fenzhong',
search: false,
},
{
label: '是否印字',
prop: 'shifouyinzi',
search: false,
},
{
label: '厚度',
prop: 'houdu',
search: false,
},
{
label: '仓库',
prop: 'bsStoreRoomSet',
search: false,
},
{
label: '库位',
prop: 'goodsKuwei',
search: false,
6 months ago
type: 'select',
dicData: [
{ label: '库位', value: '库位一' },
{ label: '库位二', value: '库位二' },
{ label: '库位三', value: '库位三' },
{ label: '库位四', value: '库位四' },
],
// rules: [
// { required: true, message: '请选择库位', trigger: 'change' }
// ],
editDisabled: false,
addDisabled: false,
cell: true
},
{
label: '出库数量',
prop: 'chukushuliang',
search: false,
},
6 months ago
{
label: '实际出库玻璃饼型号',
prop: 'actualPartCode',
search: false,
type: 'select',
dicData: [
{ label: '型号A', value: 'A' },
{ label: '型号B', value: 'B' },
{ label: '型号C', value: 'C' },
{ label: '型号D', value: 'D' },
6 months ago
],
// rules: [
// { required: true, message: '请选择实际出库玻璃饼型号', trigger: 'change' }
// ],
editDisabled: false,
addDisabled: false,
cell: true
6 months ago
},
{
label: '实际库位',
prop: 'actualKuwei',
search: false,
type: 'select',
dicData: [
6 months ago
{ label: '库位', value: '库位一' },
6 months ago
{ label: '库位二', value: '库位二' },
{ label: '库位三', value: '库位三' },
{ label: '库位四', value: '库位四' },
6 months ago
],
6 months ago
},
]
},
data: [],
}
},
mounted() {
6 months ago
this.openShow = this.showDialog;
this.onLoad();
},
watch: {
showDialog(newVal) {
this.openShow = newVal;
if (newVal) {
this.onLoad();
}
},
rowItem: {
handler() {
if (this.openShow) {
this.onLoad();
}
},
deep: true
}
},
methods: {
query() {
this.formInline.orderId = ''
this.data.push({
brCode: 'aaaa',
woCode: 'WO-090899899',
partCode: 'E6-78787-E1',
partName: '零件一',
batchNo: '9098900',
okNum: '88',
c_materiel_id: '89',
partNames: '8989',
xuqiushuliang: 99,
chukushuliang: 67,
goodbatchNo: '898989',
bsStoreRoomSet: '仓库一',
goodsKuwei: '库位一',
status: 1,
times: '2025-09-08'
})
},
closeDialog() {
this.openShow = false
this.$emit('closeDialog');
},
6 months ago
submit() {
6 months ago
this.$message.success('提交成功')
this.openShow = false
6 months ago
},
delFn() {
this.$confirm('确定将选择数据删除?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
})
.then(() => {
// return removeApiScope(this.scopeIds);
})
.then(() => {
// this.onLoadScope(this.pageScope);
// this.$message({
// type: 'success',
// message: '操作成功!',
// });
// this.$refs.crudScope.toggleSelection();
});
},
6 months ago
cellClick(row, column, cell, event) {
if (column.property === 'actualPartCode' || column.property === 'goodsKuwei') {
this.$refs.crud.rowCellEdit(row, column);
}
},
onLoad() {
6 months ago
if (this.rowItem) {
if (this.rowItem.isBatch && this.rowItem.items) {
this.data = this.rowItem.items.map(item => ({
...item,
}));
}
else if (this.rowItem.brCode) {
this.data = [{
...this.rowItem,
actualPartCode: this.rowItem.actualPartCode || 'A',
actualKuwei: this.rowItem.actualKuwei || '库位一'
}];
} else {
this.data = [
{
brCode: 'BR2023001',
woCode: 'WO-2023001',
partCode: 'E6-78787-E1',
partName: '光纤连接器组件',
batchNo: 'B2023001',
okNum: '100',
c_materiel_id: 'MAT001',
partNames: '光纤连接器',
xuqiushuliang: 100,
chukushuliang: 80,
goodbatchNo: 'GB2023001',
bsStoreRoomSet: 'A区仓库',
goodsKuwei: 'A-01-01',
status: 1,
times: '2023-06-15',
// 添加默认的实际出库玻璃饼型号和库位
actualPartCode: 'A',
actualKuwei: '库位一'
},
{
brCode: 'BR2023002',
woCode: 'WO-2023002',
partCode: 'E6-78787-E2',
partName: '光纤适配器组件',
batchNo: 'B2023002',
okNum: '150',
c_materiel_id: 'MAT002',
partNames: '光纤适配器',
xuqiushuliang: 150,
chukushuliang: 120,
goodbatchNo: 'GB2023002',
bsStoreRoomSet: 'B区仓库',
goodsKuwei: 'B-02-03',
status: 1,
times: '2023-06-16',
actualPartCode: 'B',
actualKuwei: '库位二'
},
{
brCode: 'BR2023003',
woCode: 'WO-2023003',
partCode: 'E6-78787-E3',
partName: '光纤耦合器组件',
batchNo: 'B2023003',
okNum: '200',
c_materiel_id: 'MAT003',
partNames: '光纤耦合器',
xuqiushuliang: 200,
chukushuliang: 180,
goodbatchNo: 'GB2023003',
bsStoreRoomSet: 'C区仓库',
goodsKuwei: 'C-03-02',
status: 1,
times: '2023-06-17',
actualPartCode: 'C',
actualKuwei: '库位三'
}
];
6 months ago
}
this.page.total = this.data.length
}
}
}
6 months ago
}
</script>
<style lang="scss" scoped></style>