var vm = new Vue({ el: '#app', data: function () { return { isLoading: false, userInfo: { "loginGuid": '', "loginAccount": '', }, num: "", zs: "1", sectionCode:"", selectKey: "", barcode:"", ItemBlDetail:[], modeInfo: [], active: 0, show: false, actions: [], barInfo: [], depotsInfo: "",//仓库信息 orgInfo: "",//组织信息 orgID: "",//组织id itemInfo: [],//总物料信息 itemNo:"",//选中物料编码 printItemInfo: [],//选中物料信息 } }, mounted() { var that = this; this.userInfo = { loginGuid: this.GetLoginInfor().loginGuid, loginAccount: this.GetLoginInfor().loginAccount, }; }, methods: { getInfo() { this.show = true; var that = this; if (!that.sectionCode) { this.$toast.fail("库位编码不能为空"); that.$playSound('error'); that.isLoading = false; return; } that.isLoading = true; that.AxiosHttp("post", 'Inventory/GetItemsList', { selectKey: that.selectKey, orgId: that.orgID, }, false) .then(function (res) { var json = res; if (json.status == 0) { if (json.data.tbBillList.length <= 0) { that.$toast.fail("没有可用的数据"); that.$playSound('error'); } else { that.itemInfo = json.data.tbBillList; that.actions = json.data.tbBillList.map(item => { return { name: item.wlInfo // 拼接字段 }; }); } } else { that.$toast.fail(json.message); that.$playSound('error'); } that.isLoading = false; }) .catch(function (error) { that.isLoading = false; that.$toast.fail("网络错误,请重试!"); that.$playSound('error'); console.log(error); }); }, onSelect(item) { // 默认情况下点击选项时不会自动收起 // 可以通过 close-on-click-action 属性开启自动收起 this.show = false; if (item.name.includes('---')) { this.itemNo = item.name.split('---')[0]; } else { // 处理没有分隔符的情况,比如设置为空或者原字符串 this.itemNo = item.name; // 或者 '' } this.GetMesItemByItemNo(); //this.$toast(item.name); }, GetMesItemByItemNo() { var that = this; // 获取匹配结果数组 const filtered = that.itemInfo.filter(item => item.item_no === that.itemNo ); if (filtered.length === 0) { that.$toast.fail('没有找到匹配的物料信息'); that.$playSound('error'); that.printItemInfo = {}; // 清空数据 } else { // 取第一个匹配项赋值给对象 that.printItemInfo = filtered[0]; //console.log('展示数据:', that.printItemInfo); that.$refs.num.focus(); } }, getSectionCode() { var that = this; if (!that.sectionCode) { this.$toast.fail("库位编码不能为空"); that.$playSound('error'); that.isLoading = false; return; } that.AxiosHttp("post", 'Inventory/GetDepoptsInfo', { sectionCode: that.sectionCode }, false) .then(function (res) { var json = res; if (json.status == 0) { //that.$notify({ type: 'success', message: json.message }); that.depotsInfo = json.data.tbBillList.depotsInfo; that.orgInfo = json.data.tbBillList.orgInfo; that.orgID = json.data.tbBillList.fSubsidiary; that.$refs.selectKey.focus(); } else { that.$toast.fail(json.message); that.$playSound('error'); that.$refs.sectionCode.focus(); that.sectionCode = null; } that.isLoading = false; }) .catch(function (error) { that.isLoading = false; that.$toast.fail("网络错误,请重试!"); that.$playSound('error'); console.log(error); }); }, printBeginBar() { if (this.isLoading) { return; } var that = this; if (!that.sectionCode) { this.$toast.fail("库位编码不能为空"); that.$playSound('error'); that.isLoading = false; return; } // 检查对象是否包含有效数据 if (!that.printItemInfo || !that.printItemInfo.item_no) { that.$toast.fail("请先选择有效物料信息"); that.$playSound('error'); that.isLoading = false; return; } that.AxiosHttp("post", 'Inventory/printBeginBar', { itemid: that.printItemInfo.item_id, in4: that.zs, //张数 num: that.num, //数量 userName: that.userInfo.loginAccount, sectionCode: that.sectionCode }, false) .then(function (res) { var json = res; if (json.status == 0) { that.sendPrintMessage(json.data.tbBillList); that.num = ""; that.$refs.selectKey.focus(); that.$notify({ type: 'success', message: json.message }); that.$playSound('success'); } else { that.$toast.fail(json.message); that.$playSound('error'); that.$refs.num.focus(); } that.isLoading = false; }) .catch(function (error) { that.isLoading = false; that.$toast.fail("网络错误,请重试!"); that.$playSound('error'); }); }, handleNumberInput3(value) { this.num = value.replace(/[^\d.]/g, '') // 1. 去除非数字和小数点 .replace(/(\..*)\./g, '$1') // 2. 禁止多个小数点 .replace(/^\./g, ''); }, } })