<template> <a-modal :title="title" :width="800" :visible="visible" :maskClosable="false" :confirmLoading="confirmLoading" @ok="handleOk" @cancel="handleCancel"> <a-spin :spinning="confirmLoading"> <a-form-model ref="form" :label-col="labelCol" :wrapper-col="wrapperCol" :model="model"> <a-row class="form-row" :gutter="24"> <a-col :lg="11"> <a-form-model-item label="托盘号" > <a-input :disabled="isSearch" placeholder="请输入托盘号" v-model="quickMainModel.containerCode"/> </a-form-model-item> </a-col> <a-col :lg="11"> <a-form-model-item label="库位编码" > <a-input :disabled="isDisable" placeholder="请输入库位编码" v-model="quickMainModel.locationCode"/> </a-form-model-item> </a-col> </a-row> <a-tabs defaultActiveKey="1"> <a-tab-pane tab="物料信息" key="1"> <div> <a-row type="flex" style="margin-bottom:10px" :gutter="22"> <a-col :span="12">物料编码</a-col> <a-col :span="8">数量</a-col> <a-col :span="2">操作</a-col> </a-row> <a-row type="flex" style="margin-bottom:-20px" :gutter="24" v-for="(item, index) in quickMainModel.receiptDetails" :key="index"> <a-col :span="12"> <a-form-model-item> <j-search-select-tag placeholder="请选择" v-model="item.materialCode" :dict="'material,name,code'" :pageSize="5" :async="true"> </j-search-select-tag> </a-form-model-item> </a-col> <a-col :span="8"> <a-form-model-item> <a-input placeholder="数量" v-model="item.qty" type="number"/> </a-form-model-item> </a-col> <a-col :span="2"> <a-form-model-item> <a-icon type="minus-circle" @click="delRowCustom(index)" style="fontSize :20px"/> </a-form-model-item> </a-col> </a-row> <a-button type="dashed" style="width: 100%;margin-top: 10px" @click="addRowCustom"><a-icon type="plus"/>添加入库信息</a-button> </div> </a-tab-pane> </a-tabs> </a-form-model> </a-spin> </a-modal> </template> <script> import JEditableTable from '@/components/jeecg/JEditableTable' import {execute, flatQuickReceipt} from '@/api/api' import JDate from '@/components/jeecg/JDate' import JSelectMultiCanUseContainer from "../../../../components/jeecgbiz/JSelectMultiCanUseContainer"; export default { name: 'ExpressStorageModal', components: { JDate, JEditableTable,JSelectMultiCanUseContainer }, data() { return { title: '快速入库', visible: false, confirmLoading: false, model: {}, isSearch:false, isDisable: false, labelCol: { xs: {span: 24}, sm: {span: 4} }, wrapperCol: { xs: {span: 24}, sm: {span: 24} }, activeKey: '1', quickMainModel: { containerCode: '', locationCode:"", receiptDetails: [{}], inventoryDetailList: [] }, } }, created() { }, methods: { handleOk() { this.validateFields() }, handleCancel() { this.visible = false }, addRowCustom() { this.quickMainModel.receiptDetails.push({}); this.$forceUpdate(); }, delRowCustom(index) { console.log(index) this.quickMainModel.receiptDetails.splice(index, 1); this.$forceUpdate(); }, addRowTicket() { this.quickMainModel.jeecgOrderTicketList.push({}); console.log(this.quickMainModel.jeecgOrderTicketList) this.$forceUpdate(); }, delRowTicket(index) { console.log(index) this.quickMainModel.jeecgOrderTicketList.splice(index, 1); this.$forceUpdate(); }, edit(record) { this.visible = true; this.activeKey = '1'; this.quickMainModel = Object.assign({ receiptDetails: [{}] }, []); this.quickMainModel.locationCode = record.locationCode; if (record.containerCode){ this.quickMainModel.containerCode = record.containerCode; this.isSearch = true; }else { this.isSearch = false; } if (record.locationCode) { this.isDisable = true; } else { this.isDisable = false; } }, /** 触发表单验证 */ validateFields() { // 触发表单验证 this.$refs.form.validate(valid => { this.receipt(this.quickMainModel); }) }, receipt(record) { this.confirmLoading = true this.model = Object.assign({}, record); flatQuickReceipt(record).then((res) => { this.loading = false; if (res.success) { this.$message.success(res.message); this.$emit('ok'); this.visible = false } else { this.$message.error(res.message); } this.confirmLoading = false }); }, } } </script>