From dc79419f90bd4b9622e06320e15e3e056c13d89b Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期二, 15 十月 2024 19:07:27 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
---
admin/src/components/business/OperaCarUseBookWindow.vue | 209 ++++++++++++++++++++++++++++------------------------
1 files changed, 112 insertions(+), 97 deletions(-)
diff --git a/admin/src/components/business/OperaCarUseBookWindow.vue b/admin/src/components/business/OperaCarUseBookWindow.vue
index 0ff49fc..8321ae4 100644
--- a/admin/src/components/business/OperaCarUseBookWindow.vue
+++ b/admin/src/components/business/OperaCarUseBookWindow.vue
@@ -12,10 +12,10 @@
<div class="time">鎻愪氦鏃堕棿锛歿{model.createDate}}</div>
</div>
<span class="right" v-if="model.status === 0">鐢宠涓�</span>
- <span class="right" v-if="model.status === 1">寰呭鎵�</span>
+ <span class="right" v-if="model.status === 1">瀹℃壒涓�</span>
<span class="right" style="background:#53b76f " v-if="model.status === 2">瀹℃壒閫氳繃</span>
<span class="right" style="background:#dc362e " v-if="model.status === 3">瀹℃壒涓嶉�氳繃</span>
- <span class="right" style="background:#dc362e " v-if="model.status === 4">宸插彇娑�</span>
+ <span class="right" style="background:#B2B2B2; " v-if="model.status === 4">宸叉挙閿�</span>
</div>
<div class="info">
<div class="title">鍏姟杞︾敵璇蜂俊鎭�</div>
@@ -43,8 +43,8 @@
</div>
<div class="item">
<div class="label">鐩殑鍦扮被鍒�</div>
- <div class="value status-green" v-if="model.type === 0">銆愬競鍐呯敤杞︺��</div>
- <spdivan class="value status-red" v-if="model.type === 1">銆愬競鍐呯敤杞︺��</spdivan>
+ <div class="value status-green" v-if="model.type == 0">銆愬競鍐呯敤杞︺��</div>
+ <div class="value status-red" v-if="model.type == 1">銆愬競澶栫敤杞︺��</div>
</div>
<div class="item">
<div class="label">鐩殑鍦�</div>
@@ -65,78 +65,67 @@
<div class="side_title">瀹℃壒娴佺▼</div>
<div class="list" v-if="model.approveDateVO !=null && model.approveDateVO.approveList !=null">
<div class="item" v-for="(item,index) in model.approveDateVO.approveList" :key="item.id">
- <div class="separate" v-if="(model.approveDateVO.copyList !=null && model.approveDateVO.copyList.length>0) || (index < model.approveDateVO.approveList.length-1)"></div>
+ <div class="separate" v-if=" (index < model.approveDateVO.approveList.length-1)"></div>
<div class="info">
- <i class="el-icon-success icon1" v-if="(item.status ==2)"></i>
- <i class="el-icon-question icon" v-if="(item.status==1)"></i>
- <i class="el-icon-error icon2" v-if="(item.status==3)"></i>
- <i class="el-icon-question icon3" v-if="(item.status==null || item.status==0 )"></i>
- <div style="display: inline" v-if="item.approveType ===0">
+ <img src="@/assets/icons/ic_tongguo.png" class="iconnew" v-if="( item.status ==2)"/>
+ <img src="@/assets/icons/ic_dangqian.png" class="iconnew" v-if="( item.status==1)"/>
+ <img src="@/assets/icons/ic_jujue.png" class="iconnew" v-if="( item.status==3)"/>
+ <img src="@/assets/icons/ic_grey.png" class="iconnew" v-if=" (item.status==null || item.status==0 )"/>
+ <div style="display: inline" v-if="item.approveType !=1">
<img v-if="item.faceImg!=null && item.faceImg !=''" :src="item.faceImg" class="avatar" alt="" />
<img v-if="item.faceImg ==null ||item.faceImg ==''" src="@/assets/avatar/man.png" class="avatar" alt="" />
</div>
- <div style="display: inline" v-if="item.approveType ===1">
- <img src="@/assets/avatar/man.png" class="avatar" alt="" />
+ <div style="display: inline" v-if="item.approveType == 1">
+ <img v-if="item.type !=1" src="@/assets/icons/ic_duoren.png" class="avatar" alt="" />
+ <img v-if="item.type == 1" src="@/assets/icons/ic_chaosong.png" class="avatar" alt="" />
</div>
<div class="content">
<div class="line">
<div class="name">{{ item.title}}</div>
- <div class="time">{{ item.createDate }}</div>
+ <div class="time">{{ item.checkDate }}</div>
</div>
<div class="line">
<div class="company">
- {{ item.createUserName }} {{ item.companyName }}
+ {{ item.memberName }}
<div style="display: inline" v-if="item.statusInfo!=null && item.statusInfo!=''">
- <span class="status-green">{{item.statusInfo||''}}</span>锛�
+ 锛�<span class="status-green">{{item.statusInfo ||''}}</span>锛�
</div>
</div>
</div>
</div>
</div>
- <div class="remark">
- {{ item.checkInfo ||'姘寸數璐瑰弽鍙嶅澶嶅弽鍙嶅澶嶆柟娉曟柟娉曟柟娉曟柟娉曟柟娉曟柟娉曟柟娉曟柟娉曟柟娉曟柟娉曟柟娉曟柟娉曞彂鍙戝彂' }}
+ <div v-if="item.approveType != 1 && item.checkInfo !=null && item.checkInfo !=''" class="remark">
+ {{ item.checkInfo || '' }}
+ </div>
+ <div v-if="item.approveType == 1 " class="childList">
+ <div class="m_content company" v-for="item1 in item.approveList" :key="item1.id">
+ <img v-if="item1.faceImg!=null && item1.faceImg !=''" :src="item1.faceImg" class="avatar" alt="" />
+ <img v-if="item1.faceImg ==null ||item1.faceImg ==''" src="@/assets/avatar/man.png" class="avatar" alt="" />
+ <span > {{item1.memberName}}</span>
+ </div>
</div>
</div>
-<!-- <div class="item" v-if="model.approveDateVO.copyList !=null && model.approveDateVO.copyList.length">
- <div class="info">
- <i class="el-icon-question icon3"></i>
- <img v-if="1===2" :src="faceImg" class="avatar" alt="" />
- <img v-if="1===1" src="@/assets/avatar/man.png" class="avatar" alt="" />
- <div class="content">
- <div class="line">
- <div class="name">鎶勯��</div>
- <div class="time"></div>
- </div>
- <div class="line">
- <div class="company">
- {{ 'aaa' }} {{ 'aaaad' }}
- <div style="display: inline">
- 锛�<span class="status-green">{{'sdf'}}</span>锛�
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>-->
</div>
</div>
</div>
<!-- -->
<template v-slot:footer>
- <el-button @click="isShowProblem = true" type="primary" v-if="model.approveDateVO!=null&& model.approveDateVO.canBeApproved!=null &&model.approveDateVO.canBeApproved ==1 " class="status-red">鍚屾剰</el-button>
- <el-button @click="isBackProblem=true" type="danger" v-if="model.approveDateVO!=null&& model.approveDateVO.canBeApproved!=null &&model.approveDateVO.canBeApproved ==1 " >鎷掔粷</el-button>
+ <el-button @click="agreeOpen" type="primary" v-if="model.approveDateVO!=null&& model.approveDateVO.canBeApproved!=null &&model.approveDateVO.canBeApproved ==1 " class="status-red">鍚屾剰</el-button>
+ <el-button @click="jectOpen" type="danger" v-if="model.approveDateVO!=null&& model.approveDateVO.canBeApproved!=null &&model.approveDateVO.canBeApproved ==1 " >鎷掔粷</el-button>
<el-button @click="visible=false">杩斿洖</el-button>
</template>
<el-dialog
append-to-body
title="鍚屾剰鐢宠"
+ style="text-align: center"
class="dialogCl"
:visible.sync="isShowProblem"
width="480px"
>
- <el-form :model="dealForm" ref="dealForm" >
- <el-form-item label="娲捐溅鍙告満" prop="driverId" required v-if="model.approveDateVO!=null && model.approveDateVO.drvierParam ===1">
- <el-select v-model="transForm.driverId" style="width: 300px" filterable clearable placeholder="璇烽�夋嫨娲鹃仯鍙告満">
+ <el-form :model="dealForm" :rules="rules" ref="dealForm" >
+ <!-- <el-form-item label="娲捐溅鍙告満" prop="driverId" required v-if="model.approveDateVO!=null && model.approveDateVO.driverParam === 1"> -->
+ <el-form-item label="娲捐溅鍙告満" prop="driverId" v-if="model.approveDateVO!=null && model.approveDateVO.driverParam == 1">
+ <el-select v-model="dealForm.driverId" style="width: 300px" filterable clearable placeholder="璇烽�夋嫨娲鹃仯鍙告満">
<el-option
v-for="item in memberList"
:key="item.id"
@@ -150,7 +139,7 @@
type="textarea"
placeholder="璇峰~鍐欒鏄�"
:rows="4"
- v-model="backForm.checkInfo"
+ v-model="dealForm.checkInfo"
/>
</el-form-item>
</el-form>
@@ -162,6 +151,7 @@
<el-dialog
append-to-body
title="鎷掔粷鐢宠"
+ style="text-align: center"
class="dialogCl"
:visible.sync="isBackProblem"
width="600px"
@@ -188,6 +178,7 @@
import BaseOpera from '@/components/base/BaseOpera'
import GlobalWindow from '@/components/common/GlobalWindow'
import { driveList } from '@/api/business/member'
+import { approveDo } from '@/api/business/approve'
import { mapState } from 'vuex'
export default {
name: 'OperaCarUseBookWindow',
@@ -209,6 +200,9 @@
},
backForm: {
checkInfo: null
+ },
+ rules: {
+ driverId: [{ required: true, message: '璇烽�夋嫨娲鹃仯鍙告満', trigger: 'blur' }]
}
}
},
@@ -227,13 +221,14 @@
if (!valid) {
return
}
- this.$dialog.actionConfirm('鎿嶄綔纭', '鎮ㄧ‘璁ゆ彁浜よ闅愭偅澶勭悊鎯呭喌鍚楋紵')
+ this.$dialog.actionConfirm('鎿嶄綔纭', '鎮ㄧ‘璁ゅ悓鎰忚鐢宠鍚楋紵')
.then(() => {
this.dealing = true
- this.api.dealHiddenDanger({
- id: this.dataId,
- status: 1,
- driverId: this.dealForm.driveId,
+ approveDo({
+ objId: this.dataId,
+ objType: this.model.type == 1 ? 4 : 3,
+ status: 2,
+ driverId: this.dealForm.driverId,
checkInfo: this.dealForm.checkInfo
})
.then(res => {
@@ -247,29 +242,36 @@
})
})
},
+ agreeOpen () {
+ this.isShowProblem = true
+ this.$set(this.dealForm, 'checkInfo', '')
+ this.loadMemberList()
+ },
+ jectOpen () {
+ this.isBackProblem = true
+ this.backForm = {
+ checkInfo: null
+ }
+ },
backDo () {
this.$refs.backForm.validate((valid) => {
if (!valid) {
return
}
- this.$dialog.actionConfirm('鎿嶄綔纭', '鎮ㄧ‘璁ら��鍥炶闅愭偅澶勭悊鎯呭喌鍚楋紵')
- .then(() => {
- this.dealing = true
- this.api.dealHiddenDanger({
- id: this.dataId,
- status: 2,
- checkInfo: this.backForm.checkInfo
- })
- .then(res => {
- this.$tip.apiSuccess('閫�鍥炴垚鍔�')
- this.getDetail()
- this.isBackProblem = false
- })
- .catch(e => {
- })
- .finally(() => {
- this.dealing = false
- })
+ approveDo({
+ objId: this.dataId,
+ objType: this.model.type == 1 ? 4 : 3,
+ status: 3,
+ checkInfo: this.backForm.checkInfo
+ }).then(res => {
+ this.$tip.apiSuccess('閫�鍥炴垚鍔�')
+ this.getDetail()
+ this.isBackProblem = false
+ })
+ .catch(e => {
+ })
+ .finally(() => {
+ this.dealing = false
})
})
},
@@ -297,10 +299,6 @@
this.dealForm.driveId = res.driveId
})
},
- handleTransfer () {
- this.isShowTransfer = true
- this.loadMemberList()
- },
loadMemberList () {
driveList({}).then(res => {
this.memberList = res
@@ -311,14 +309,6 @@
</script>
<style lang="scss" scoped>
-.side_title{
- font-weight: 600;
- font-size: 18px;
- color: #111111;
- margin-bottom: 20px;
- margin-left: 20px;
- margin-top: 20px;
-}
.upload_box {
width: 84px;
height: 84px;
@@ -337,7 +327,14 @@
font-size: 12px;
}
}
-
+.side_title{
+ font-weight: 600;
+ font-size: 18px;
+ color: #111111;
+ margin-bottom: 20px;
+ margin-left: 20px;
+ margin-top: 20px;
+}
.modal_wrap {
display: flex;
height: 100%;
@@ -374,6 +371,7 @@
}
.value {
+ flex: 1;
color: #111111;
}
}
@@ -451,8 +449,34 @@
position: absolute;
border-left: 2px dashed #cccccc;
left: 31px;
- height: calc(100% - 24px);
- top: 46px;
+ height: calc(100% - 36px);
+ top: 49px;
+ }
+ .avatar {
+ width: 40px;
+ height: 40px;
+ border-radius: 50%;
+ margin: 0 12px 0 16px;
+ //border: 1px solid;
+ }
+ .childList{
+ display: flex;
+ flex-wrap: wrap;
+ margin-left: 100px;
+ }
+ .company {
+ font-size: 13px;
+ color: #888888;
+ .status {
+ color: #00ba67;
+ }
+ }
+ .m_content{
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ margin-bottom: 4px;
}
.info {
display: flex;
@@ -476,18 +500,15 @@
color: #dc362e;
font-size: 24px;
}
+ .iconnew{
+ width: 24px;
+ height: 24px;
+ }
.icon3 {
position: relative;
z-index: 11;
color:gray;
font-size: 24px;
- }
- .avatar {
- width: 40px;
- height: 40px;
- border-radius: 50%;
- margin: 0 12px 0 16px;
- border: 1px solid;
}
.content {
flex: 1;
@@ -504,13 +525,6 @@
.time {
color: #888888;
}
- .company {
- font-size: 13px;
- color: #888888;
- .status {
- color: #00ba67;
- }
- }
}
}
}
@@ -519,8 +533,9 @@
border-radius: 4px;
padding: 13px 15px;
color: #666666;
- margin-left: 120px;
+ margin-left: 100px;
}
+
}
}
}
--
Gitblit v1.9.3