From 9b6bd0c014b73456edb095ee53b22324437ae646 Mon Sep 17 00:00:00 2001 From: cuijian <cuijian@xalxzn.com> Date: 星期三, 09 七月 2025 10:59:45 +0800 Subject: [PATCH] 现场问题修改 --- src/views/tms/modules/inbound/InboundModel.vue | 83 +++++++++++++++++++++++++++++++++++++---- 1 files changed, 74 insertions(+), 9 deletions(-) diff --git a/src/views/tms/modules/inbound/InboundModel.vue b/src/views/tms/modules/inbound/InboundModel.vue index 7548919..d4d8ad2 100644 --- a/src/views/tms/modules/inbound/InboundModel.vue +++ b/src/views/tms/modules/inbound/InboundModel.vue @@ -46,6 +46,18 @@ </a-form-model-item> </a-col> </a-row> + + <a-row style="width: 100%"> + <a-col :span="24 / 2"> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="搴撲綅鍙�" prop="locationCodeId"> + <a-select + :triggerChange="true" + :options="locationCodeOptions" + v-model="model.locationCodeId" + /> + </a-form-model-item> + </a-col> + </a-row> </a-form-model> </a-spin> <a-button type="primary" :style="{ marginBottom: '8px' }" @click="selectReturnList()" v-show="returnShow && !disableSubmit">閫夋嫨鍊熷嚭宸ュ叿</a-button> @@ -90,7 +102,15 @@ <j-select-tooling-modal ref="toolingModalForm" @ok="modalFormOk" :classifyId="classifyId"></j-select-tooling-modal> <j-select-return-list-modal ref="returnModalForm" @ok="modalFormOk" :classifyId="classifyId"></j-select-return-list-modal> <j-select-sharpen-list-modal ref="sharpenModalForm" @ok="modalFormOk" :classifyId="classifyId"></j-select-sharpen-list-modal> + + <div id="printArea" style="display: block;"> + <div v-for="(item, index) in qrList" :key="index" class="qrcode-item"> + <img :src="item.base64" alt="QR Code"> + <p>{{ item.content }}</p> + </div> + </div> </a-modal> + </template> <script> @@ -105,6 +125,7 @@ import { filterObj } from '@/utils/util' import JSelectReturnListModal from '.././inboundOrder/JSelectReturnListModal' import JSelectSharpenListModal from '.././inboundOrder/JSelectSharpenListModal' +import printJS from 'print-js'; export default { name: 'InboundModel', @@ -174,6 +195,12 @@ message: '璇烽�夋嫨鐢宠鍏ュ簱鏃ユ湡!', }, ], + locationCodeId:[ + { + required: true, + message: '璇烽�夋嫨搴撲綅鍙�!', + }, + ] }, url: { addInStorage: '/tms/inboundOrder/addInStorage', @@ -233,12 +260,19 @@ scopedSlots: { customRender: 'action' }, }, ], - classifyId:'' + classifyId:'', + locationCodeOptions:[], + qrList: [] } }, created() { //澶囦唤model鍘熷鍊� this.modelDefault = JSON.parse(JSON.stringify(this.model)); + ajaxGetDictItems("tms_goods_shelves,location_code,id", null).then((res) => { + if (res.success) { + this.locationCodeOptions = res.result + } + }) }, methods: { modalFormOk() { @@ -249,6 +283,7 @@ return filterObj(this.param) }, add (nodeSelected) { + this.qrList = [] this.classifyId = nodeSelected.key this.model.classifyNum = nodeSelected.entity.classifyId this.model.typeName = nodeSelected.entity.typeName @@ -291,17 +326,28 @@ }, handleOk() { const that = this + if(this.dataSource.length == 0){ + that.$message.error("璇峰厛閫夋嫨闇�瑕佸叆搴撶殑宸ュ叿!") + return + } // 瑙﹀彂琛ㄥ崟楠岃瘉 - this.form.validateFields((err, values) => { - if (!err) { + this.$refs.form.validate(valid => { + if (valid) { that.confirmLoading = true - let formData = Object.assign(this.model, values) - formData.detailData = this.dataSource - formData.classifyId = this.classifyId - postAction(this.url.addInStorage, formData) + this.model.detailData = this.dataSource + this.model.classifyId = this.classifyId + postAction(this.url.addInStorage, this.model) .then((res) => { if (res.success) { - that.$message.success(res.message) + if(this.model.inStorehouseType === '1'){ + this.qrList = res.result.map((content, i) => ({ + content:res.result[i].content, + base64: res.result[i].image + })); + this.handleBacthPrint(); + }else{ + that.$message.success("淇濆瓨鎴愬姛") + } that.$emit('ok', new Date()) } else { that.$message.warning(res.message) @@ -388,6 +434,25 @@ option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0 ); }, + + // 鎵ц鎵撳嵃 + handleBacthPrint() { + this.$nextTick(() => { + printJS({ + printable: 'printArea', + type: 'html', + style: ` + .qrcode-item { + page-break-inside: avoid; + margin: 10px; + text-align: center; + } + img { width: 100px; height: 100px; } + `, + scanStyles: false + }); + }); + } }, watch: {}, mounted() { @@ -402,7 +467,7 @@ toolModel: data[i].toolModel, applicationType: data[i].applicationTypeName, onlyCode:data[i].onlyCode, - inStorageQuantity:data[i].storageQuantity || data[i].quantity, + inStorageQuantity:data[i].storageQuantity || data[i].quantity || 1, quantity:data[i].quantity, accuracyClass:data[i].accuracyClass }) -- Gitblit v1.9.3