|  |  | <template>
 | 
						
						
						
							|  |  | 	<view class="Big">
 | 
						
						
						
							|  |  | 		<view id="page">
 | 
						
						
						
							|  |  | 			<!-- 导航栏 -->
 | 
						
						
						
							|  |  | 			<view v-if="showPop">
 | 
						
						
						
							|  |  | 				<view >
 | 
						
						
						
							|  |  | 					<text class="font-sm text-secondary px-3 py-2">ilsApi地址IP+端口</text>
 | 
						
						
						
							|  |  | 					<input type="text" class="font-md border bg-white px-3" placeholder="请填写ilsApi地址IP+端口" style="height: 100rpx;" v-model="ilsApi"/>
 | 
						
						
						
							|  |  | 				</view>
 | 
						
						
						
							|  |  | 				<view >
 | 
						
						
						
							|  |  | 					<text class="font-sm text-secondary px-3 py-2">打印机地址IP</text>
 | 
						
						
						
							|  |  | 					<input type="text" class="font-md border bg-white px-3" placeholder="请填写打印机地址IP" style="height: 100rpx;" v-model="printIp"/>
 | 
						
						
						
							|  |  | 				</view>
 | 
						
						
						
							|  |  | 				<view >
 | 
						
						
						
							|  |  | 					<text class="font-sm text-secondary px-3 py-2">打印机名称</text>
 | 
						
						
						
							|  |  | 					<input type="text" class="font-md border bg-white px-3" placeholder="请填写打印机名称" style="height: 100rpx;" v-model="printName"/>
 | 
						
						
						
							|  |  | 				</view>
 | 
						
						
						
							|  |  | 				<view >
 | 
						
						
						
							|  |  | 				        <button class="systemSty" @tap="cancelAdd">取消</button>
 | 
						
						
						
							|  |  | 				        <button class="systemSty" @tap="confirmAdd">确定</button>
 | 
						
						
						
							|  |  | 				</view>
 | 
						
						
						
							|  |  | 			</view>		
 | 
						
						
						
							|  |  | 			当前单号:
 | 
						
						
						
							|  |  | 			<text class="nameSty">{{codes}}</text>
 | 
						
						
						
							|  |  | 			<button v-if="!showPop" @click="pdaSystemInit()" class="systemSty">PDA设置</button>
 | 
						
						
						
							|  |  | 			<button v-if="codes" @click="doPrinter(codes)" class="nameSty">再次打印</button>
 | 
						
						
						
							|  |  | 		</view>
 | 
						
						
						
							|  |  | 		<scan-code></scan-code>
 | 
						
						
						
							|  |  | 		</view>
 | 
						
						
						
							|  |  | </template>
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | <script>
 | 
						
						
						
							|  |  | 	import scanCode from "@/components/scan-code/scan-code.vue";
 | 
						
						
						
							|  |  | 	// import { getCLodop } from '@/common/print/CLodopfuncs.js';
 | 
						
						
						
							|  |  | 	// import { getPrinterList } from '@/common/print/CLodopfuncs.js';
 | 
						
						
						
							|  |  | 	const printPdf = uni.requireNativePlugin('YanYu-PrintPDF');
 | 
						
						
						
							|  |  | 	
 | 
						
						
						
							|  |  | 	export default {
 | 
						
						
						
							|  |  | 		data() {
 | 
						
						
						
							|  |  | 			return {
 | 
						
						
						
							|  |  | 				codes: undefined,
 | 
						
						
						
							|  |  | 				showPop: false,
 | 
						
						
						
							|  |  | 				selectClassEnd:[],
 | 
						
						
						
							|  |  | 				httpRoot: 'http://',
 | 
						
						
						
							|  |  | 				ilsApi: '192.168.1.56:9090',
 | 
						
						
						
							|  |  | 				printIp: '192.168.1.56',
 | 
						
						
						
							|  |  | 				serviceApi: ':8080/ilsApp/print',
 | 
						
						
						
							|  |  | 				printName: 'Xprinter',
 | 
						
						
						
							|  |  | 				onLoad(option) {
 | 
						
						
						
							|  |  | 					this.$broadcastScan.init(this.getScancode);
 | 
						
						
						
							|  |  | 				},
 | 
						
						
						
							|  |  | 				onUnload() {
 | 
						
						
						
							|  |  | 					this.$broadcastScan.stop();
 | 
						
						
						
							|  |  | 				},
 | 
						
						
						
							|  |  | 				onHide() {
 | 
						
						
						
							|  |  | 					this.$broadcastScan.stop();
 | 
						
						
						
							|  |  | 				},
 | 
						
						
						
							|  |  | 				onShow() {
 | 
						
						
						
							|  |  | 					this.$broadcastScan.start();
 | 
						
						
						
							|  |  | 				}
 | 
						
						
						
							|  |  | 			}
 | 
						
						
						
							|  |  | 		},
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | 		methods: {
 | 
						
						
						
							|  |  | 			pdaSystemInit: function(){
 | 
						
						
						
							|  |  | 				this.showPop = true;
 | 
						
						
						
							|  |  | 			},
 | 
						
						
						
							|  |  | 			selectClass(event){
 | 
						
						
						
							|  |  | 			     
 | 
						
						
						
							|  |  | 			     },
 | 
						
						
						
							|  |  | 			confirmAdd() {
 | 
						
						
						
							|  |  | 				//确认
 | 
						
						
						
							|  |  | 				this.showPop = false;
 | 
						
						
						
							|  |  | 				console.log("ilsApi:", this.ilsApi);
 | 
						
						
						
							|  |  | 				console.log("printIp:", this.printIp);
 | 
						
						
						
							|  |  | 			},
 | 
						
						
						
							|  |  | 			cancelAdd() {  
 | 
						
						
						
							|  |  | 				//取消
 | 
						
						
						
							|  |  | 				this.ilsApi = '';
 | 
						
						
						
							|  |  | 				this.printIp = '';
 | 
						
						
						
							|  |  | 				this.showPop = false;		  
 | 
						
						
						
							|  |  | 			},
 | 
						
						
						
							|  |  | 			// 打印
 | 
						
						
						
							|  |  | 			doPrinter: function(orderCoder) {
 | 
						
						
						
							|  |  | 				this.showPop = false;
 | 
						
						
						
							|  |  |                 console.log("doPrinter orderCoder: " + orderCoder);
 | 
						
						
						
							|  |  | 				console.log("ilsApi:", this.ilsApi);
 | 
						
						
						
							|  |  | 				console.log("printIp:", this.printIp);
 | 
						
						
						
							|  |  | 				uni.request({
 | 
						
						
						
							|  |  | 				    url: this.httpRoot + this.printIp + this.serviceApi,	
 | 
						
						
						
							|  |  | 					method: 'POST',
 | 
						
						
						
							|  |  | 					data: {
 | 
						
						
						
							|  |  | 							ilsApi: this.ilsApi,
 | 
						
						
						
							|  |  | 							printIp: this.printIp,
 | 
						
						
						
							|  |  | 							orderId: orderCoder,
 | 
						
						
						
							|  |  | 							printName: this.printName
 | 
						
						
						
							|  |  | 						},
 | 
						
						
						
							|  |  | 				    success: (res) => {
 | 
						
						
						
							|  |  | 				        console.log( res);
 | 
						
						
						
							|  |  | 						if(res.data.code==200){
 | 
						
						
						
							|  |  | 							uni.showToast({
 | 
						
						
						
							|  |  | 								title: '面单下发成功.正在打印,请稍候...',
 | 
						
						
						
							|  |  | 								icon: 'none',
 | 
						
						
						
							|  |  | 								duration: 3000
 | 
						
						
						
							|  |  | 							});
 | 
						
						
						
							|  |  | 						}else{
 | 
						
						
						
							|  |  | 							uni.showToast({
 | 
						
						
						
							|  |  | 							    title: res.data.message,
 | 
						
						
						
							|  |  | 							    icon: 'none',
 | 
						
						
						
							|  |  | 							    duration: 3000
 | 
						
						
						
							|  |  | 							})
 | 
						
						
						
							|  |  | 						}
 | 
						
						
						
							|  |  | 				    },
 | 
						
						
						
							|  |  | 					fail: (error) => {
 | 
						
						
						
							|  |  | 						uni.showToast({
 | 
						
						
						
							|  |  | 						    title: '接口访问异常,打印失败',
 | 
						
						
						
							|  |  | 						    icon: 'none',
 | 
						
						
						
							|  |  | 						    duration: 3000
 | 
						
						
						
							|  |  | 						})
 | 
						
						
						
							|  |  | 					},
 | 
						
						
						
							|  |  | 				});
 | 
						
						
						
							|  |  | 			},
 | 
						
						
						
							|  |  | 			onShow: function() {
 | 
						
						
						
							|  |  | 				var _this = this;
 | 
						
						
						
							|  |  | 				uni.$off('scancodedate'); // 每次进来先 移除全局自定义事件监听器
 | 
						
						
						
							|  |  | 				uni.$on('scancodedate', function(data) {
 | 
						
						
						
							|  |  | 					console.log('你想要的code:', data.code);
 | 
						
						
						
							|  |  | 					_this.codes = data.code;
 | 
						
						
						
							|  |  | 					_this.showPop = false;
 | 
						
						
						
							|  |  | 					let orderCoder = data.code;
 | 
						
						
						
							|  |  | 					console.log("onShow orderCoder: " + orderCoder);
 | 
						
						
						
							|  |  | 					console.log("ilsApi:", _this.ilsApi);
 | 
						
						
						
							|  |  | 					console.log("printIp:", _this.printIp);
 | 
						
						
						
							|  |  | 					console.log("serviceApi:", _this.httpRoot + _this.printIp + _this.serviceApi);
 | 
						
						
						
							|  |  | 					if(orderCoder.length>18){
 | 
						
						
						
							|  |  | 						//orderCoder = "SF1642682535344";
 | 
						
						
						
							|  |  | 						uni.request({
 | 
						
						
						
							|  |  | 							url: _this.httpRoot + _this.printIp + _this.serviceApi,
 | 
						
						
						
							|  |  | 							method: 'POST',
 | 
						
						
						
							|  |  | 							data: {
 | 
						
						
						
							|  |  | 									ilsApi: _this.ilsApi,
 | 
						
						
						
							|  |  | 									printIp: _this.printIp,
 | 
						
						
						
							|  |  | 									orderId: orderCoder,
 | 
						
						
						
							|  |  | 									printName: _this.printName
 | 
						
						
						
							|  |  | 								},
 | 
						
						
						
							|  |  | 							success: (res) => {
 | 
						
						
						
							|  |  | 								console.log( res);
 | 
						
						
						
							|  |  | 								if(res.data.code==200){
 | 
						
						
						
							|  |  | 									uni.showToast({
 | 
						
						
						
							|  |  | 										title: '下发成功.正在打印,请稍候...',
 | 
						
						
						
							|  |  | 										icon: 'none',
 | 
						
						
						
							|  |  | 										duration: 3000
 | 
						
						
						
							|  |  | 									});
 | 
						
						
						
							|  |  | 								}else{
 | 
						
						
						
							|  |  | 									uni.showToast({
 | 
						
						
						
							|  |  | 										title: res.data.message,
 | 
						
						
						
							|  |  | 										icon: 'none',
 | 
						
						
						
							|  |  | 										duration: 3000
 | 
						
						
						
							|  |  | 									})
 | 
						
						
						
							|  |  | 								}
 | 
						
						
						
							|  |  | 							},
 | 
						
						
						
							|  |  | 							fail: (error) => {
 | 
						
						
						
							|  |  | 								console.log("error: ", error);
 | 
						
						
						
							|  |  | 								uni.showToast({
 | 
						
						
						
							|  |  | 									title: '接口访问异常,打印失败',
 | 
						
						
						
							|  |  | 									icon: 'none',
 | 
						
						
						
							|  |  | 									duration: 3000
 | 
						
						
						
							|  |  | 								})
 | 
						
						
						
							|  |  | 							},
 | 
						
						
						
							|  |  | 						});
 | 
						
						
						
							|  |  | 					}else{
 | 
						
						
						
							|  |  | 						uni.showToast({
 | 
						
						
						
							|  |  | 								title: '非法单号',
 | 
						
						
						
							|  |  | 								icon: 'none',
 | 
						
						
						
							|  |  | 								duration: 3000
 | 
						
						
						
							|  |  | 						})
 | 
						
						
						
							|  |  | 					}
 | 
						
						
						
							|  |  | 				})
 | 
						
						
						
							|  |  | 			},
 | 
						
						
						
							|  |  | 			getScancode(code) {
 | 
						
						
						
							|  |  | 				// 有些PDA会自带换行符,trim函数处理下
 | 
						
						
						
							|  |  | 				code = code.trim()
 | 
						
						
						
							|  |  | 				//code就是扫描获取的值
 | 
						
						
						
							|  |  | 				console.log(code)
 | 
						
						
						
							|  |  | 			},
 | 
						
						
						
							|  |  | 			printPdf() {
 | 
						
						
						
							|  |  | 				// 有些PDA会自带换行符,trim函数处理下
 | 
						
						
						
							|  |  | 				printPdf.managerPrint("D:\LeStoreDownload\EXP-LHJ1239002405-3676E4041337.pdf");
 | 
						
						
						
							|  |  | 			}
 | 
						
						
						
							|  |  | 		}
 | 
						
						
						
							|  |  | 	}
 | 
						
						
						
							|  |  | </script>
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | <style>
 | 
						
						
						
							|  |  | .Big{
 | 
						
						
						
							|  |  | 	width: 220px;
 | 
						
						
						
							|  |  | 	margin: 200px 100px;
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | .nameSty{
 | 
						
						
						
							|  |  | 	height: 30px;
 | 
						
						
						
							|  |  | 	width: 220px !important;
 | 
						
						
						
							|  |  | 	line-height: 30px;
 | 
						
						
						
							|  |  | 	font-size: 18px;
 | 
						
						
						
							|  |  | 	font-weight: bold;
 | 
						
						
						
							|  |  | 	color: #828282 !important;
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | /deep/.u-size-default,/deep/.uni-input-input{
 | 
						
						
						
							|  |  | 	font-size: 18px;
 | 
						
						
						
							|  |  | }
 | 
						
						
						
							|  |  | </style>
 |