From ccf69ee82f77a2e67a565cec02f95e64324a283f Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 15 五月 2024 09:16:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
admin/src/components/business/OperaVisitsDesWindow.vue | 127 +++++++++++++++++++++++++++++++++++++----
1 files changed, 113 insertions(+), 14 deletions(-)
diff --git a/admin/src/components/business/OperaVisitsDesWindow.vue b/admin/src/components/business/OperaVisitsDesWindow.vue
index 9cf9b28..45149da 100644
--- a/admin/src/components/business/OperaVisitsDesWindow.vue
+++ b/admin/src/components/business/OperaVisitsDesWindow.vue
@@ -1,35 +1,58 @@
<template>
<GlobalWindow
:title="title"
- width="60%"
+ width="70%"
:visible.sync="visible"
+ append-to-body
:confirm-working="isWorking"
@confirm="confirm"
>
<div class="list">
<div class="list_item">
<div class="list_item_label">鎷滆淇℃伅</div>
- <div class="list_item_val" v-if="info">
+ <div class="list_item_val" v-if="info" style="display: inline-block">
<div class="list_item_val_item">鎷滆瀵规柟锛歿{info.receptMemberName}} - {{info.receptMemberDepartment}}</div>
- <div class="list_item_val_item">鎷滆鏃堕棿锛歿{info.starttime}} 鑷� {{info.endtime}}</div>
+ <div class="list_item_val_item">棰勭害鏃堕棿锛歿{info.starttime}} 鑷� {{info.endtime}}</div>
+ <div class="list_item_val_item" v-if="info.inDate && info.outDate">绛惧埌鏃堕棿锛歿{info.inDate}} 鑷� {{info.outDate}}</div>
+ <div class="list_item_val_item" v-else>绛惧埌鏃堕棿锛�-</div>
<div class="list_item_val_item">鎷滆浜嬬敱锛歿{info.reason}}</div>
<div class="list_item_val_item">鐢宠浜哄憳锛歿{info.name}} {{info.companyName}}</div>
- <div class="list_item_val_item">鐢宠闂ㄧ锛歿{info.deviceList ? info.deviceList.map(item => item.name).join(',') : ''}}</div>
+ <div class="list_item_val_item">鐢宠闂ㄧ锛歿{info.deviceRoleList ? info.deviceRoleList.map(item => item.name).join(' | ') : '-'}}</div>
<div class="list_item_val_item">鍒涘缓鏃堕棿锛歿{info.createDate}}</div>
</div>
- </div>
+ <div class="list_item_val" v-if="info" style="display: inline-block;float: right">
+ <div class="list_item_val_item" id="qrcode2" ref="qrcode2"></div>
+ </div>
+ </div>
<div class="list_item">
<div class="list_item_label">璁垮淇℃伅</div>
- <div class="list_item_info" v-if="info">闅忚杞﹁締锛歿{info.carNos}}</div>
<div class="list_item_table" v-if="info">
<el-table
- :data="info.lwWithUserList ? info.lwWithUserList : []"
+ :data="info.withUserList ? info.withUserList : []"
border
:header-cell-style="{background: '#dcdde2', color: 'rgb(51, 51, 51)'}"
style="width: 100%">
+ <el-table-column prop="status" label="鐘舵��" min-width="100px">
+ <template slot-scope="{row}">
+ <span style="color: rgba(245, 154, 35, 0.996);" v-if="row.status === 0">寰呮彁浜ゅ鎵�</span>
+ <span v-if="row.status === 1">瀹℃壒涓�</span>
+ <span v-if="row.status === 2">瀹℃牳閫氳繃</span>
+ <span style="color: red;" v-if="row.status === 3">瀹℃牳涓嶉�氳繃</span>
+ <span v-if="row.status === 4">鍙栨秷</span>
+ <span v-if="row.status === 5">棰勭害鎴愬姛</span>
+ <span v-if="row.status === 6">棰勭害澶辫触</span>
+ <span v-if="row.status === 7">鎷滆涓�</span>
+ <span v-if="row.status === 8">宸茬绂�</span>
+ <span v-if="row.status === 9">宸插け鏁�</span>
+ </template>
+ </el-table-column>
<el-table-column
- prop="name"
+ width="150"
label="濮撳悕">
+ <template slot-scope="{row}">
+ <span>{{row.name}}</span>
+ <span style="border-radius: 5px; padding: 2px 5px; box-sizing: border-box; border: 1px solid #0d68ff; color: #0d68ff; margin-left: 5px;" v-if="info.memberId === row.memberId">鐢宠浜�</span>
+ </template>
</el-table-column>
<el-table-column
label="鎬у埆">
@@ -41,8 +64,12 @@
<el-table-column
prop="birthday"
label="骞撮緞">
+ <template slot-scope="{row}">
+ <span>{{getAge(row.birthday)}}</span>
+ </template>
</el-table-column>
<el-table-column
+ width="150"
prop="phone"
label="鎵嬫満鍙�">
</el-table-column>
@@ -55,20 +82,50 @@
</template>
</el-table-column>
<el-table-column
- prop="idcardNo"
+ width="160"
+ prop="idcardDecode"
label="韬唤璇佸彿鐮�">
</el-table-column>
<el-table-column
+ width="150"
prop="companyName"
label="鍏徃">
</el-table-column>
<el-table-column
- prop="faceImg"
- label="浜鸿劯鐓х墖">
+ width="150"
+ prop="carNos"
+ label="闅忚杞﹁締">
</el-table-column>
<el-table-column
- prop="imgurl"
+ width="150"
+ label="璁垮浜岀淮鐮�">
+ <template slot-scope="{row}">
+ <div :id="`qrcode${row.id}`" :ref="`qrcode${row.id}`"></div>
+ </template>
+ </el-table-column>
+ <el-table-column
+ width="150"
+ label="浜鸿劯鐓х墖">
+ <template slot-scope="{row}">
+ <el-image
+ v-if="row.faceImg"
+ style="width: 100px; height: 100px"
+ :src="info.prefixUrl + row.faceImg"
+ :preview-src-list="[info.prefixUrl + row.faceImg]">
+ </el-image>
+ </template>
+ </el-table-column>
+ <el-table-column
+ width="150"
label="鍋ュ悍璇�">
+ <template slot-scope="{row}">
+ <el-image
+ v-if="row.imgurl"
+ style="width: 100px; height: 100px"
+ :src="info.prefixUrl + row.imgurl"
+ :preview-src-list="[info.prefixUrl + row.imgurl]">
+ </el-image>
+ </template>
</el-table-column>
</el-table>
</div>
@@ -95,6 +152,7 @@
import BaseOpera from '@/components/base/BaseOpera'
import GlobalWindow from '@/components/common/GlobalWindow'
import { queryById } from '@/api/business/visits'
+import QRCode from "qrcodejs2";
export default {
name: 'OperaVisitsWindow',
extends: BaseOpera,
@@ -102,10 +160,37 @@
data () {
return {
list: [],
- info: null
+ info: null,
+ innerVisible:false
}
},
+ created () {
+ },
methods: {
+ getAge (val) {
+ if (!val) return ''
+ const currentYear = new Date().getFullYear() // 褰撳墠鐨勫勾浠�
+ const calculationYear = new Date(val).getFullYear() // 璁$畻鐨勫勾浠�
+ const wholeTime = currentYear + val.substring(4) // 鍛ㄥ瞾鏃堕棿
+ const calculationAge = currentYear - calculationYear // 鎸夌収骞翠唤璁$畻鐨勫勾榫�
+ // 鍒ゆ柇鏄惁杩囦簡鐢熸棩
+ if (new Date().getTime() > new Date(wholeTime).getTime()) {
+ return calculationAge
+ } else {
+ return calculationAge - 1
+ }
+ },
+ crateQrcodeShow (div,qrcode1) {
+ if(qrcode1 ==null ||qrcode1 ==''){
+ return;
+ }
+ this.qr = new QRCode(div, {
+ width: 90,
+ height: 90,
+ text: qrcode1
+ })
+ },
+
open (title, id) {
this.title = title
this.visible = true
@@ -113,12 +198,26 @@
.then(res => {
console.log(res)
this.info = res
+ this.$nextTick(() => {
+ // this.$refs.qrcode2.innerHTML = ''
+ // this.crateQrcodeShow('qrcode2',res.qrcode)
+ if(this.info.withUserList ){
+ this.info.withUserList.forEach(row => {
+ this.$refs['qrcode'+row.id].innerHTML = ''
+ this.crateQrcodeShow('qrcode'+row.id,row.qrcode)
+ })
+ }
+ })
})
}
}
}
</script>
-
+<style>
+ .el-image-viewer__wrapper {
+ z-index: 3000 !important;
+ }
+</style>
<style lang="scss" scoped>
.list {
width: 100%;
--
Gitblit v1.9.3