| | |
| | | /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="入库仓库" style=" display: flex;"> |
| | | <el-form-item label="入库仓库" required style=" display: flex;"> |
| | | <el-select |
| | | v-model="form.stockcode" |
| | | :popper-append-to-body="false" |
| | |
| | | v-waves |
| | | type="primary" |
| | | icon="el-icon-s-promotion" |
| | | |
| | | :disabled="$store.state.app.buttonIsDisabled" |
| | | @click="submit" |
| | | >入库提交 |
| | | </el-button> |
| | |
| | | label="序号" |
| | | /> |
| | | |
| | | <el-table-column |
| | | prop="stockcode" |
| | | label="仓库" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div |
| | | v-if="!(row.index === tabClickIndex && tabClickLabel === '仓库')" |
| | | > |
| | | {{ row.stockcode ? stockcodeArr.find(i => i.code === row.stockcode).name : '/' }} |
| | | </div> |
| | | <el-select |
| | | v-if="row.index === tabClickIndex && tabClickLabel === '仓库'" |
| | | v-model="row.stockcode" |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="item in stockcodeArr" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.code" |
| | | /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="stockcode"--> |
| | | <!-- label="仓库"--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div>{{ row.stockcode ? stockcodeArr.find(i => i.code === row.stockcode).name : '/' }}</div>--> |
| | | <!-- <!– <div–>--> |
| | | <!-- <!– v-if="!(row.index === tabClickIndex && tabClickLabel === '仓库')"–>--> |
| | | <!-- <!– >–>--> |
| | | <!-- <!– {{ row.stockcode ? stockcodeArr.find(i => i.code === row.stockcode).name : '/' }}–>--> |
| | | <!-- <!– </div>–>--> |
| | | <!-- <!– <el-select–>--> |
| | | <!-- <!– v-if="row.index === tabClickIndex && tabClickLabel === '仓库'"–>--> |
| | | <!-- <!– v-model="row.stockcode"–>--> |
| | | <!-- <!– placeholder="请选择"–>--> |
| | | <!-- <!– >–>--> |
| | | <!-- <!– <el-option–>--> |
| | | <!-- <!– v-for="item in stockcodeArr"–>--> |
| | | <!-- <!– :key="item.code"–>--> |
| | | <!-- <!– :label="item.name"–>--> |
| | | <!-- <!– :value="item.code"–>--> |
| | | <!-- <!– />–>--> |
| | | <!-- <!– </el-select>–>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <el-table-column |
| | | prop="inbarcode" |
| | | label="入库条码" |
| | |
| | | }, |
| | | |
| | | async submit() { |
| | | if (!this.form.stockcode) { |
| | | return this.$message.error('入库仓库不能为空!') |
| | | } |
| | | if (this.multipleSelection.length === 0) { |
| | | return this.$message.error('未选择产品!') |
| | | } |
| | | await this.tabClick() |
| | | // const openToken = await getTPlusToken() // 获取TPlus token |
| | | const openToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJpc3YiLCJpc3MiOiJjaGFuamV0IiwidXNlcklkIjoiMzkwNTU0MDg2NTMwMjYxIiwib3JnSWQiOiIxMjM0OTc5MDE3MjIxMDM3IiwiYWNjZXNzX3Rva2VuIjoiYmstOGIwNDUxNzEtMDk5Yy00ODFlLTgyZDEtY2Q5NWQ2MjUzZGUwIiwiYXVkIjoiaXN2IiwibmJmIjoxNjg2MDQ3NTgyLCJhcHBJZCI6IjU4Iiwic2NvcGUiOiJhdXRoX2FsbCIsImlkIjoiNjA5Y2ZhYzItNzZmOC00NzJiLWI2NGEtMDg1NmRjMWZmYTg4IiwiZXhwIjoxNjg2NTY1OTgyLCJpYXQiOjE2ODYwNDc1ODIsIm9yZ0FjY291bnQiOiJ1dXhicGtzbTBibmgifQ.slZ_ix3DoGBX2WUX1TOiwe7jCEqDHf9Kc-Gn6cVCFZk' |
| | | |
| | | const openToken = await getTPlusToken() // 获取TPlus token |
| | | // const openToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJpc3YiLCJpc3MiOiJjaGFuamV0IiwidXNlcklkIjoiMzkwNTU0MDg2NTMwMjYxIiwib3JnSWQiOiIxMjM0OTc5MDE3MjIxMDM3IiwiYWNjZXNzX3Rva2VuIjoiYmstOGIwNDUxNzEtMDk5Yy00ODFlLTgyZDEtY2Q5NWQ2MjUzZGUwIiwiYXVkIjoiaXN2IiwibmJmIjoxNjg2MDQ3NTgyLCJhcHBJZCI6IjU4Iiwic2NvcGUiOiJhdXRoX2FsbCIsImlkIjoiNjA5Y2ZhYzItNzZmOC00NzJiLWI2NGEtMDg1NmRjMWZmYTg4IiwiZXhwIjoxNjg2NTY1OTgyLCJpYXQiOjE2ODYwNDc1ODIsIm9yZ0FjY291bnQiOiJ1dXhicGtzbTBibmgifQ.slZ_ix3DoGBX2WUX1TOiwe7jCEqDHf9Kc-Gn6cVCFZk' |
| | | |
| | | this.$store.state.app.buttonIsDisabled = true |
| | | // 有源单 |
| | | if (this.form.documentType === 'Y') { |
| | | const RDRecordDetails = [] |
| | | this.tableDataSummary.forEach((i, index) => { |
| | | RDRecordDetails.push({ |
| | |
| | | IdSourceVoucherType: 69 |
| | | }) |
| | | }) |
| | | |
| | | const data = { |
| | | 'dto': { |
| | | 'Warehouse': { |
| | | 'Code': '03'// 仓库编码 |
| | | 'Code': this.form.stockcode// 仓库编码 |
| | | }, |
| | | 'Code': this.form.hbillno, // 单据编码 |
| | | 'IsModifiedCode': true, |
| | |
| | | 'Code': '21'// 出库类别编码 |
| | | }, |
| | | 'RDRecordDetails': RDRecordDetails, |
| | | 'Clerk': { |
| | | 'Code': this.userArr.find(i => i.name === getCookie('username')).code // 业务员code |
| | | }, |
| | | // 'Clerk': { |
| | | // 'Code': this.userArr.find(i => i.name === getCookie('username')).code // 业务员code |
| | | // // 'Code': '001' // 业务员code |
| | | // // 'Name': getCookie('username') |
| | | // }, |
| | | 'ExternalCode': this.form.hbillno, |
| | | 'VoucherType': { |
| | | 'Code': 'ST1002' |
| | |
| | | } |
| | | ) |
| | | if (res.data.code === 0) { |
| | | this.multipleSelection.forEach(i => { |
| | | i.stockname = this.stockcodeArr.find(j => j.code === i.stockcode).name |
| | | i.id = this.stockcodeArr.find(j => j.code === i.stockcode).id |
| | | }) |
| | | |
| | | const head = { |
| | | rightcode: '2064', |
| | | hbillno: this.form.hbillno, |
| | | incbit: this.form.incbit, |
| | | wkshpcode: this.form.wkshopcode, |
| | | sourceVoucherId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | sourceVoucherCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | saleOrderId: this.tableDataDetail[0].saleOrderid, |
| | | saleOrderCode: this.tableDataDetail[0].saleOrderCode, |
| | | rdDirectionFlag: 1, |
| | | makerid: this.userArr.find(i => i.name === getCookie('username')).id, |
| | | maker: getCookie('username'), |
| | | accountingyear: new Date().getFullYear(), |
| | | VoucherYear: new Date().getFullYear(), |
| | | VoucherPeriod: new Date().getMonth() + 1, |
| | | ManufactureOrderCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | idbusitype: '03', |
| | | iddepartment: this.WorkShopArr.find(i => i.code === this.form.wkshopcode).id, |
| | | idrdstyle: 21, |
| | | idwarehouse: '', |
| | | voucherState: 181, |
| | | idvouchertype: 15, |
| | | voucherdate: handleDatetime(new Date().getTime()), |
| | | madedate: handleDatetime(new Date().getTime()), |
| | | createdtime: handleDatetime2(new Date().getTime()), |
| | | DataSource: '56133', |
| | | idsourcevouchertype: 69 |
| | | } |
| | | |
| | | const subsum = [] |
| | | this.tableDataSummary.forEach((i, index) => { |
| | | subsum.push({ |
| | | code: index.toString().padStart(4, '0'), |
| | | rownumber: index + 1, |
| | | arrivalQuantity: i.qty, |
| | | quantity: i.stinhouseqty, |
| | | compositionQuantity: i.stinhouseqty + i.unitname, |
| | | baseQuantity: i.stinhouseqty, |
| | | sourceVoucherId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | sourceVoucherCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | sourceVoucherDetailId: i.sourceVoucherDetailId, |
| | | idsourcevouchertype: 69, |
| | | saleOrderId: this.tableDataDetail[0].saleOrderid, |
| | | saleOrderCode: this.tableDataDetail[0].saleOrderCode, |
| | | saleOrderDetailId: i.saleOrderDetailId, |
| | | ManufactureOrderId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | ManufactureOrderCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | ManufactureOrderDetailId: i.ManufactureOrderDetailId, |
| | | idbusiTypeByMergedFlow: 3, |
| | | idinventory: i.materiel_id, |
| | | idbaseunit: i.unitid, |
| | | idunit: i.unitid, |
| | | idwarehouse: i.stck_id, |
| | | SourceVoucherIdByMergedFlow: this.tableDataDetail[0].mpoid, |
| | | SourceVoucherCodeByMergedFlow: this.tableDataDetail[0].m_po, |
| | | SourceVoucherDetailIdByMergedFlow: i.SourceVoucherDetailIdByMergedFlow, |
| | | idsourceVoucherTypeByMergedFlow: 69, |
| | | createdtime: handleDatetime2(new Date().getTime()), |
| | | DataSource: '56133', |
| | | materiel_code: i.materiel_code, |
| | | warehouse: i.warehouse |
| | | }) |
| | | }) |
| | | |
| | | const data = { |
| | | head, sub: this.multipleSelection, subsum |
| | | } |
| | | |
| | | const r1 = await ProductInHouseOrderSeave(data) |
| | | if (r1.code === '200') { |
| | | this.$message.success('入库成功!') |
| | | // 再加一些入库成功之后的逻辑 |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | await this.getProductInHouseOrderCodeSearch() |
| | | await this.wkshopcodeChange(this.form.wkshopcode) |
| | | this.tableDataDetail = [] |
| | | this.tableDataSummary = [] |
| | | this.multipleSelection = [] |
| | | this.form.stockcode = '' |
| | | } |
| | | } else { |
| | | this.$message.error('入库失败!') |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | } |
| | | } |
| | | |
| | | // 无源单 |
| | | if (this.form.documentType === 'N') { |
| | | const RDRecordDetails = [] |
| | | this.tableDataSummary.forEach((i, index) => { |
| | | RDRecordDetails.push({ |
| | | Code: index + 1, // 行号,从1开始自增长 |
| | | Inventory: { |
| | | Code: i.materiel_code // 存货编码 |
| | | }, |
| | | BaseQuantity: i.stinhouseqty, // 主计量单位数量 |
| | | SNObject: { |
| | | SnAccountDetails: [ |
| | | { |
| | | SNCode: index.toString().padStart(4, '0') |
| | | } |
| | | ] |
| | | } |
| | | }) |
| | | }) |
| | | const data = { |
| | | 'dto': { |
| | | 'IsModifiedCode': true, |
| | | 'ExternalCode': this.form.hbillno, |
| | | 'Code': this.form.hbillno, |
| | | 'VoucherType': { |
| | | 'Code': 'ST1002' |
| | | }, |
| | | 'VoucherDate': handleDatetime(new Date().getTime()), |
| | | 'BusiType': { |
| | | 'Code': '03' |
| | | }, |
| | | 'Warehouse': { |
| | | 'Code': this.form.stockcode |
| | | }, |
| | | 'Department': { |
| | | 'Code': this.form.wkshopcode, |
| | | 'Name': this.WorkShopArr.find(i => i.code === this.form.wkshopcode).name |
| | | }, |
| | | 'RDRecordDetails': RDRecordDetails |
| | | } |
| | | } |
| | | const res = await axios.post(Vue.prototype.$chanjetBaseUrl + '/tplus/api/v2/productReceive/Create', |
| | | data, { |
| | | headers: { |
| | | 'openToken': openToken, |
| | | 'appKey': Vue.prototype.$AppKey, |
| | | 'appSecret': Vue.prototype.$AppSecret, |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | } |
| | | ) |
| | | |
| | | if (res.data === null) { |
| | | this.$message.success('入库成功!') |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | } else { |
| | | this.$message.error('入库失败!') |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | } |
| | | } |
| | | }, |
| | | // 入库提交 |