469 lines
11 KiB
Vue
469 lines
11 KiB
Vue
<template>
|
||
<view class="fullHeight">
|
||
<headers class="" style="position: fixed; top: 0; left: 0; width: 100%; z-index: 10;" :showBack="true" :themeType="'white'">
|
||
<view class="headerName">
|
||
车辆档案
|
||
</view>
|
||
</headers>
|
||
<view class="personDetail_content" :style="{paddingTop: (mobileTopHeight + 50) * 1.5 + 'rpx'}">
|
||
<view class="title_wrap">
|
||
<view class="flex" style="position: relative;">
|
||
<view class="carModule" :style="`border-color:${pdgroundColor};color:${pdgroundColor}`">
|
||
{{workerInfo.carModuleType == 1 ? '固定车' : workerInfo.carModuleType == 2 ? '长期车' :'临时车'}}
|
||
</view>
|
||
<view class="flex">
|
||
|
||
<!-- <image class="photograph" @click="previewImage(workerInfo.fieldAcquisitionUrl,1)"
|
||
:src="url_config+'image/'+workerInfo.fieldAcquisitionUrl"></image>
|
||
<image class="photograph" @click="previewImage(workerInfo.idCardBigPhotoUrl,2)"
|
||
:src="url_config+'image/'+workerInfo.idCardBigPhotoUrl"></image> -->
|
||
<image class="photograph" v-for="item in (workerInfo.carPhotosUrl && JSON.parse(workerInfo.carPhotosUrl)) || []" @click="previewImage(item.url,1)"
|
||
:src="url_config+'image/'+item.url"></image>
|
||
</view>
|
||
<view class="user_info">
|
||
<view class="name">{{workerInfo.carNumber}}</view>
|
||
<!-- <view class="code">{{workerInfo.idCard}}</view> -->
|
||
<view class="nation">车种类型:{{workerInfo.carTypeName}}</view>
|
||
<view class="nation">车身颜色:{{workerInfo.carColor}}</view>
|
||
<view class="nation">预约开始时间:{{workerInfo.reserveStartTime}}</view>
|
||
<view class="nation">预约结束时间:{{workerInfo.reserveEndTime}}</view>
|
||
</view>
|
||
<!-- 操作按钮 -->
|
||
<view style="width: 60rpx;height: 120rpx; text-align: center;" v-if="false">
|
||
<image class="more" src="../../../../static/personManage/more.png" @click="operateBtn"></image>
|
||
</view>
|
||
</view>
|
||
<view class="projectName">{{workerInfo.projectName}}</view>
|
||
<view class="details-content" v-if="codeShow">
|
||
<view class="left-content">
|
||
<view class="project_info">
|
||
<text class="name">企业名称:</text>
|
||
<text>{{workerInfo.enterpriseName}}</text>
|
||
</view>
|
||
<view class="project_info">
|
||
<text class="name">司机:</text>
|
||
<text>{{workerInfo.driverWorkerName}}</text>
|
||
</view>
|
||
<view class="project_info">
|
||
<text class="name">司机电话:</text>
|
||
<text>{{workerInfo.driverTelephone}}</text>
|
||
</view>
|
||
<view class="project_info">
|
||
<text class="name">司机身份证号:</text>
|
||
<text>{{workerInfo.outsideDriverIdCard}}</text>
|
||
</view>
|
||
<view class="project_info" v-if="workerInfo.carModuleType != 1">
|
||
<text class="name">允许进出次数:</text>
|
||
<text>{{workerInfo.entryAndExitPermit == 0 ? '单次':'多次'}}</text>
|
||
</view>
|
||
</view>
|
||
<tki-qrcode ref="qrcode" :size="120" cid="1001" :val="qrUrl" :background="backgroundColor"
|
||
:foreground="foregroundColor" :pdground="pdgroundColor" :onval="true" :loadMake="true" />
|
||
</view>
|
||
</view>
|
||
<view class="item_wraps">
|
||
<view class="item_title">
|
||
驾驶证
|
||
</view>
|
||
<view class="item_wrap flex">
|
||
<image class="item" v-for="item in (workerInfo.jsz && JSON.parse(workerInfo.jsz)) || []" @click="previewImage(item.url,1)"
|
||
:src="url_config+'image/'+item.url"></image>
|
||
</view>
|
||
</view>
|
||
<view class="item_wraps">
|
||
<view class="item_title">
|
||
行驶证
|
||
</view>
|
||
<view class="item_wrap flex">
|
||
<image class="item" v-for="item in (workerInfo.xsz && JSON.parse(workerInfo.xsz)) || []" @click="previewImage(item.url,1)"
|
||
:src="url_config+'image/'+item.url"></image>
|
||
</view>
|
||
</view>
|
||
<view class="item_wraps">
|
||
<view class="item_title">
|
||
交强险
|
||
</view>
|
||
<view class="item_wrap flex">
|
||
<image class="item" v-for="item in (workerInfo.jqx && JSON.parse(workerInfo.jqx)) || []" @click="previewImage(item.url,1)"
|
||
:src="url_config+'image/'+item.url"></image>
|
||
</view>
|
||
</view>
|
||
<view class="item_wraps">
|
||
<view class="item_title">
|
||
其它证明
|
||
</view>
|
||
<view class="item_wrap flex">
|
||
<image class="item" v-for="item in (workerInfo.otherProve && JSON.parse(workerInfo.otherProve)) || []" @click="previewImage(item.url,1)"
|
||
:src="url_config+'image/'+item.url"></image>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
</template>
|
||
<script>
|
||
import tkiQrcode from "@/components/tki-qrcode/tki-qrcode.vue"
|
||
export default {
|
||
components: {
|
||
tkiQrcode,
|
||
},
|
||
data() {
|
||
return {
|
||
mobileTopHeight: 0,
|
||
codeShow: false,
|
||
backgroundColor: '#fff',
|
||
foregroundColor: '#000',
|
||
pdgroundColor: '#000',
|
||
qrUrl: '此二维码仅供展示',
|
||
workerId: 0,
|
||
operateType: false,
|
||
workerInfo: {}, //基本信息
|
||
certificateList: [], //资格证书
|
||
workExperienceList: [], //从业信息
|
||
reduceScoreList: [], // 扣分记录
|
||
badList: [], //不良记录
|
||
rewardList: [], //--奖励记录
|
||
contractList: [], //合同列表
|
||
physicalsList: [], //体检列表
|
||
safeEducationList: [], //安全教育信息
|
||
monthAttendance: [],
|
||
insuranceList: [],
|
||
|
||
showReduceScoreList: false,
|
||
showBadList: false,
|
||
showRewardList: false,
|
||
showWorkExperienceList: false,
|
||
showCertificateList: false,
|
||
|
||
}
|
||
},
|
||
onLoad(options) {
|
||
console.log('22222222222', options.id)
|
||
this.workerId = options.id;
|
||
// this.getDetailsData();
|
||
},
|
||
onShow() {
|
||
this.getDetailsData();
|
||
},
|
||
mounted() {
|
||
var that = this
|
||
uni.getSystemInfo({
|
||
success(res) {
|
||
that.mobileTopHeight = res.statusBarHeight ? res.statusBarHeight : 0;
|
||
uni.setStorageSync('systemInfo',res)
|
||
console.log(res)
|
||
}
|
||
})
|
||
console.log('this.mobileTopHeight',this.mobileTopHeight)
|
||
},
|
||
methods: {
|
||
setCodeColor(fenshu) {
|
||
console.log(fenshu)
|
||
if (fenshu == 0) {
|
||
this.foregroundColor = "green";
|
||
this.pdgroundColor = "green";
|
||
} else if (fenshu == 1) {
|
||
// this.fontColor = "red";
|
||
this.foregroundColor = "#F0212A";
|
||
this.pdgroundColor = "#F0212A";
|
||
}
|
||
this.codeShow = true;
|
||
},
|
||
|
||
//获取详情数据
|
||
getDetailsData() {
|
||
this.sendRequest({
|
||
url: 'xmgl/carInfo/queryById',
|
||
method: 'post',
|
||
data: {
|
||
projectSn:JSON.parse(uni.getStorageSync('userInfo')).sn,
|
||
id: this.workerId,
|
||
},
|
||
success: res => {
|
||
if (res.code == 200) {
|
||
console.log("333333333333333",res)
|
||
this.workerInfo = res.result;
|
||
this.setCodeColor(this.workerInfo.isBlack)
|
||
}
|
||
}
|
||
})
|
||
},
|
||
//预览图片
|
||
previewImage(url, type) {
|
||
let fileList = [];
|
||
if (type == 1 || type == 2) {
|
||
fileList = [this.url_config + 'image/' + url]
|
||
}
|
||
uni.previewImage({
|
||
current: 0,
|
||
urls: fileList
|
||
})
|
||
},
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style lang="scss" scoped>
|
||
.fullHeight{
|
||
// height: 100%;
|
||
// background-color: #f6f6f6;
|
||
// min-height: 100%;
|
||
.fixedheader{
|
||
position: fixed;
|
||
top: 0;
|
||
left: 0;
|
||
width: 100%;
|
||
z-index: 2;
|
||
.headerName{
|
||
z-index: 1;
|
||
}
|
||
}
|
||
}
|
||
|
||
.carModule {
|
||
font-size: 28rpx;
|
||
padding: 0 12rpx;
|
||
border: 2rpx solid;
|
||
position: absolute;
|
||
top: 0;
|
||
right: 0;
|
||
border-radius: 8rpx;
|
||
}
|
||
|
||
.flex {
|
||
display: flex;
|
||
align-items: center;
|
||
}
|
||
|
||
.flex2 {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
}
|
||
|
||
.flex3 {
|
||
display: flex;
|
||
}
|
||
|
||
.personDetail_content {
|
||
padding: 30rpx 30rpx;
|
||
box-sizing: border-box;
|
||
width: 100%;
|
||
}
|
||
|
||
.personDetail_content .title_wrap {
|
||
width: 100%;
|
||
box-shadow: 0 4px 26rpx 0 rgba(212, 220, 236, 0.67);
|
||
box-sizing: border-box;
|
||
padding: 40rpx 28rpx 20rpx;
|
||
border-radius: 16rpx;
|
||
position: relative;
|
||
}
|
||
|
||
.header_bg {
|
||
position: absolute;
|
||
top: 0;
|
||
right: 0;
|
||
z-index: 1;
|
||
width: 568rpx;
|
||
height: 90rpx;
|
||
}
|
||
|
||
.photograph {
|
||
width: 116rpx;
|
||
height: 150rpx;
|
||
z-index: 5;
|
||
margin-right: 16rpx;
|
||
}
|
||
|
||
.more {
|
||
width: 47rpx;
|
||
height: 37rpx;
|
||
z-index: 2222;
|
||
}
|
||
|
||
.more:active {
|
||
background-color: #999;
|
||
}
|
||
|
||
.user_info {
|
||
margin-left: 4rpx;
|
||
width: 70%;
|
||
}
|
||
|
||
.user_info .name {
|
||
font-size: 34rpx;
|
||
line-height: 48rpx;
|
||
font-weight: 500;
|
||
color: #488DEC;
|
||
|
||
}
|
||
|
||
.user_info .code {
|
||
font-size: 26rpx;
|
||
font-family: PingFangSC-Regular, PingFang SC;
|
||
font-weight: 400;
|
||
color: #2A2B5B;
|
||
line-height: 37rpx;
|
||
margin: 10rpx 0;
|
||
opacity: 0.8;
|
||
}
|
||
|
||
.user_info .nation {
|
||
font-size: 26rpx;
|
||
font-family: PingFangSC-Regular, PingFang SC;
|
||
font-weight: 400;
|
||
color: #2A2B5B;
|
||
line-height: 37rpx;
|
||
opacity: 0.8;
|
||
margin-bottom: 4px;
|
||
}
|
||
|
||
.projectName {
|
||
font-size: 30rpx;
|
||
font-family: PingFangSC-Medium, PingFang SC;
|
||
font-weight: 700;
|
||
color: #2A2B5B;
|
||
line-height: 42rpx;
|
||
margin-top: 30rpx;
|
||
}
|
||
|
||
.details-content {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
.left-content {
|
||
flex: 1;
|
||
}
|
||
}
|
||
|
||
.project_info {
|
||
font-size: 26rpx;
|
||
font-family: PingFangSC-Regular, PingFang SC;
|
||
font-weight: 400;
|
||
color: #2A2B5B;
|
||
line-height: 52rpx;
|
||
}
|
||
|
||
.project_info .name {
|
||
color: #372D66;
|
||
opacity: 0.6;
|
||
}
|
||
|
||
.item_wraps {
|
||
width: 100%;
|
||
margin: 20rpx 0;
|
||
box-shadow: 0 8rpx 26rpx 0 rgba(212, 220, 236, 0.67);
|
||
padding: 20rpx 20rpx 20rpx 20rpx;
|
||
box-sizing: border-box;
|
||
border-radius: 16rpx;
|
||
}
|
||
|
||
.item_wraps .item_title {
|
||
font-size: 28rpx;
|
||
font-family: PingFangSC-Medium, PingFang SC;
|
||
font-weight: 700;
|
||
color: #2A2B5B;
|
||
}
|
||
|
||
.item_wrap {
|
||
width: 100%;
|
||
flex-wrap: wrap;
|
||
/* justify-content: space-between; */
|
||
}
|
||
|
||
.item_wrap .item {
|
||
width: 32%;
|
||
font-size: 30rpx;
|
||
height: 121rpx;
|
||
font-family: PingFangSC-Regular, PingFang SC;
|
||
font-weight: 400;
|
||
color: #372D66;
|
||
line-height: 84rpx;
|
||
position: relative;
|
||
margin-top: 14rpx;
|
||
margin-left: 8rpx;
|
||
}
|
||
|
||
.item_wrap .item .state1 {
|
||
position: absolute;
|
||
top: 0;
|
||
left: 58px;
|
||
padding: 3px 6px;
|
||
font-size: 20rpx;
|
||
background: #4181FE;
|
||
color: #fff;
|
||
line-height: 28rpx;
|
||
border-radius: 6rpx;
|
||
}
|
||
|
||
.item_wrap .item .state2 {
|
||
position: absolute;
|
||
top: 0;
|
||
left: 58px;
|
||
padding: 3px 6px;
|
||
font-size: 20rpx;
|
||
background: red;
|
||
color: #fff;
|
||
line-height: 28rpx;
|
||
border-radius: 6rpx;
|
||
}
|
||
|
||
|
||
|
||
.margin_r_5 {
|
||
margin-right: 10rpx;
|
||
}
|
||
|
||
.log_wrap {
|
||
width: 100%;
|
||
margin: 20rpx 0;
|
||
box-shadow: 0 4px 26rpx 0 rgba(212, 220, 236, 0.67);
|
||
padding: 24rpx 28rpx;
|
||
box-sizing: border-box;
|
||
border-radius: 16rpx;
|
||
}
|
||
|
||
.log_wrap .title {
|
||
font-size: 30rpx;
|
||
font-family: PingFangSC-Medium, PingFang SC;
|
||
font-weight: 700;
|
||
color: #2A2B5B;
|
||
line-height: 42rpx;
|
||
}
|
||
|
||
.log_wrap .log_content {
|
||
margin-top: 16rpx;
|
||
border-top: 1px solid #C8C7CC;
|
||
box-sizing: border-box;
|
||
padding-top: 16rpx;
|
||
}
|
||
|
||
.log_wrap .log_content_item {
|
||
background-color: #f1f7fe;
|
||
border-radius: 4rpx;
|
||
border: 1px dashed #888888;
|
||
font-size: 26rpx;
|
||
font-family: PingFangSC-Regular, PingFang SC;
|
||
font-weight: 400;
|
||
color: #2A2B5B;
|
||
line-height: 40rpx;
|
||
box-sizing: border-box;
|
||
padding: 20rpx 28rpx;
|
||
margin-bottom: 16rpx;
|
||
}
|
||
|
||
.title_dialog {
|
||
position: absolute;
|
||
top: 40rpx;
|
||
right: 46px;
|
||
font-size: 24rpx;
|
||
line-height: 48rpx;
|
||
background-color: #fff;
|
||
width: 65px;
|
||
text-align: center;
|
||
z-index: 999;
|
||
border: 1px solid #999;
|
||
padding: 3px 16rpx;
|
||
border-radius: 4rpx;
|
||
}
|
||
</style> |