浏览代码

订单小票打印

aleyds 3 年之前
父节点
当前提交
913c429908
共有 4 个文件被更改,包括 54 次插入7 次删除
  1. 4 0
      common/apiurl.js
  2. 4 0
      common/http.api.js
  3. 4 0
      pages/ownersquery/ownersinfo/ownersinfo.scss
  4. 42 7
      pages/ownersquery/ownersinfo/ownersinfo.vue

+ 4 - 0
common/apiurl.js

@@ -61,8 +61,12 @@ const apiurl = {
 	//设备注册
 	deviceReg: '/device/pda/accept',
 	
+	//入场小票
 	printIn: '/payee/orderinfo/parkIn/print/',
 	
+	//出场小票
+	printLeave: '/payee/orderinfo/parkLeave/print/',
+	
 	version: '/payee/appversion/update',
 	
 	lockControl: '/payee/hardware/lock/control',

+ 4 - 0
common/http.api.js

@@ -38,8 +38,11 @@ const install = (Vue, vm) => {
 	let tencentBase64Upload = (params = {}) => vm.$u.post(apiurl.tencentUploadBase64Url, params);
 	
 	let achievement = (params = {}) => vm.$u.post(apiurl.achievementUrl, params);
+	
 	let printIn = (params = {}) => vm.$u.get(apiurl.printIn + params.orderId);
 	
+	let printLeave = (params = {}) => vm.$u.get(apiurl.printLeave + params.orderId);
+	
 	let cashPay = (params = {}) => vm.$u.post(apiurl.cashPayUrl, params);
 	let gzbankSwept = (params = {}) => vm.$u.post(apiurl.gzbankSweptUrl, params);
 	let gzbankPolypay = (params = {}) => vm.$u.post(apiurl.gzbankPolypayUrl, params);
@@ -79,6 +82,7 @@ const install = (Vue, vm) => {
 		tencentBase64Upload,
 		achievement,
 		printIn,
+		printLeave,
 		gzbankSwept,
 		gzbankPolypay,
 		modifyRoad,

+ 4 - 0
pages/ownersquery/ownersinfo/ownersinfo.scss

@@ -1,6 +1,10 @@
 page{
 	background-color: #F4F4F4;
 }
+.print-btn {
+	width: 60;
+	height: 60;
+}
 .owelist{
 	margin: 31rpx 40rpx;
 	padding-bottom: 40rpx;

+ 42 - 7
pages/ownersquery/ownersinfo/ownersinfo.vue

@@ -20,12 +20,17 @@
 					<u-icon name="map-fill" color="#3397FA" size="36"></u-icon>
 					{{item.roadName}}
 				</view>
+				<view class="info-item">订单号:{{item.orderId}}</view>
 				<view class="info-item">进场时间:{{item.inTime}}</view>
-				<view class="info-item">出场时间:{{item.outTime}}</view>
-				<view class="info-item">停车时长:{{item.duration}}</view>
+				<view v-if="item.orderStatus != 1" class="info-item">出场时间:{{item.outTime}}</view>
+				<view v-if="item.orderStatus != 1" class="info-item">停车时长:{{item.duration}}</view>
 				<view class="info-item">收费员:{{item.payeeName}}</view>
-				<view class="info-item">支付金额:<span class="amount">{{item.payAmount}}元</span></view>
+				<view v-if="item.orderStatus != 1" class="info-item">支付金额:<span class="amount">{{item.payAmount}}元</span></view>
 				<view class="info-item">订单状态:{{item.orderStatus|filterOrderStatus}}</view>
+				<view>
+					<button v-if="item.orderStatus == 1"  size="mini" type="primary" @click="onParkIn(item)">入场小票</button>
+					<button v-if="item.orderStatus != 1"  size="mini" type="warn" @click="onParkLeave(item)">出场小票</button>
+				</view>
 		 	</view>
 		 </view>
 		 </mescroll-body>
@@ -35,6 +40,9 @@
 
 <script>
 	import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
+	//#ifdef APP-PLUS
+	let device = uni.requireNativePlugin("DeviceInfo");
+	//#endif
 	export default{
 		mixins: [MescrollMixin], // 使用mixin
 		data(){
@@ -57,16 +65,14 @@
 		},
 		methods:{
 			customBack(){
-				this.$u.route({
-					// type:'switchTab',
-					url: 'pages/index/index'
+				uni.reLaunch({
+				    url: '/pages/index/index'
 				});
 			},
 			downCallback(){
 				this.mescroll.resetUpScroll();
 			},
 			upCallback(page){
-				console.log('upCallback ',page);
 				let pageNum = page.num; // 页码, 默认从1开始
 				let pageSize = page.size; // 页长, 默认每页10条
 				this.$u.api.vehicleList({vehicleNo:this.vehicleNo,pageNum:pageNum,pageSize:pageSize})
@@ -105,6 +111,35 @@
 					console.log('vehicleList ',err)
 				});
 				
+			},
+			onParkIn(item){
+				this.$u.api.printIn({orderId:item.orderId})
+				.then(res => {
+					if(res.code == 200){
+						//#ifdef APP-PLUS
+						device.print(res.data);
+						//#endif
+						plus.nativeUI.toast('打印成功');
+					}
+				})
+				.catch(err=>{
+					plus.nativeUI.toast('打印失败');
+				});
+				
+			},
+			onParkLeave(item){
+				this.$u.api.printLeave({orderId:item.orderId})
+				.then(res => {
+					if(res.code == 200){
+						//#ifdef APP-PLUS
+						device.print(res.data);
+						//#endif
+						plus.nativeUI.toast('打印成功');
+					}
+				})
+				.catch(err=>{
+					plus.nativeUI.toast('打印失败');
+				});
 			}
 			
 		}