From 1c1dc56be93441e39da19d8de2e65ebb7f6704c2 Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期一, 09 十二月 2024 23:06:54 +0800 Subject: [PATCH] ll --- h5/pages/polling/task.vue | 75 +++++++++++++++++++++++++++++++------ 1 files changed, 62 insertions(+), 13 deletions(-) diff --git a/h5/pages/polling/task.vue b/h5/pages/polling/task.vue index e89f434..8298402 100644 --- a/h5/pages/polling/task.vue +++ b/h5/pages/polling/task.vue @@ -28,23 +28,23 @@ <!-- --> <scroll-view scroll-y="true" class="scroll_Y" @scrolltolower="scrolltolower"> <view class="list"> - <view class="item" v-for="item in list" @click="itemClick(item)"> - <image v-if="item.status == 0 || item.status == 1" src="@/static/side/xunjianed.png" class="icon"></image> - <image v-else src="@/static/side/xunjian.png" class="icon"></image> + <view class="item" v-for="item in list"> + <image @click="itemClick(item)" v-if="item.status == 0 || item.status == 1" src="@/static/side/xunjianed.png" class="icon"></image> + <image @click="itemClick(item)" v-else src="@/static/side/xunjian.png" class="icon"></image> <view class="content"> <view class="name_wrap line"> - <view class="name">{{item.planTitle}}</view> - <view class="status" :class="{ + <view class="name" @click="itemClick(item)">{{item.planTitle}}</view> + <view class="status" @click="itemClick(item)" :class="{ green: item.status == 1, red: item.status == 2, gray: item.status == 3 || item.status == 4 }">{{statusM[item.status]}}</view> </view> - <view class="line" v-if="item.startDate">浠诲姟鏃ユ湡锛歿{ item.startDate.slice(0, 11) }}</view> - <view class="line">鎵ц鏃堕棿锛歿{ item.startDate.slice(11, 16) }} 鑷� {{ item.endDate.slice(11, 16) }}</view> + <view class="line" @click="itemClick(item)" v-if="item.startDate">浠诲姟鏃ユ湡锛歿{ item.startDate.slice(0, 11) }}</view> + <view class="line" @click="itemClick(item)">鎵ц鏃堕棿锛歿{ item.startDate.slice(11, 16) }} 鑷� {{ item.endDate.slice(11, 16) }}</view> <view class="line"> - <view>瀹屾垚鎯呭喌锛歿{item.finishNum || 0}}/{{item.patrolNum}}</view> - <view class="btn"> + <view @click="itemClick(item)">瀹屾垚鎯呭喌锛歿{item.finishNum || 0}}/{{item.patrolNum}}</view> + <view v-if="param.queryStatus == '0,1'" class="btn" @click="openSc(item)"> <image src="@/static/side/ic_saoma@2x.png" class="saoma" mode=""></image> <view>鎵爜宸℃</view> </view> @@ -54,14 +54,19 @@ </view> </scroll-view> - <!-- --> + <!-- --> + </view> </template> <script> import { - ywPatrolTaskPost - } from '@/api' + ywPatrolTaskPost, + getPointRecordByCode + } from '@/api' + import { + Html5Qrcode + } from 'html5-qrcode'; export default { data() { return { @@ -79,13 +84,57 @@ 2: '宸茶秴鏈�', 3: '宸插畬鎴�', 4: '宸插彇娑�', - } + }, + html5Qrcode: null, + isScaning: false, + activeItem: {} }; }, onLoad() { this.getList() }, methods: { + openSc(item) { + this.activeItem = item + this.isScaning = true; + Html5Qrcode.getCameras().then((devices) => { + if (devices && devices.length) { + this.html5Qrcode = new Html5Qrcode('reader'); + this.html5Qrcode.start({ + facingMode: 'environment' + }, { + focusMode: 'continuous', //璁剧疆杩炵画鑱氱劍妯″紡 + fps: 5, //璁剧疆鎵爜璇嗗埆閫熷害 + qrbox: 280 //璁剧疆浜岀淮鐮佹壂鎻忔澶у皬 + }, + (decodeText, decodeResult) => { + if (decodeText) { //杩欓噷decodeText灏辨槸閫氳繃鎵弿浜岀淮鐮佸緱鍒扮殑鍐呭 + this.stopScan(); //鍏抽棴鎵爜鍔熻兘 + getPointRecordByCode({ + taskId: item.id, + pointCode: decodeText + }).then(ress=> { + if(ress.data){ + + } + }) + } + }, + (err) => { + // console.log(err); //閿欒淇℃伅 + } + ); + } + }); + }, + + stopScan() { + console.log('鍋滄鎵爜') + this.isScaning = false; + if (this.html5Qrcode) { + this.html5Qrcode.stop(); + } + }, scrolltolower() { const { total, -- Gitblit v1.9.3