Commit 0f56c428 authored by 黄奎's avatar 黄奎

页面修改

parent ca3782fa
...@@ -635,15 +635,15 @@ ...@@ -635,15 +635,15 @@
</el-col> </el-col>
<el-col :span="6" v-show="addMsg.SigningType"> <el-col :span="6" v-show="addMsg.SigningType">
<el-form-item label="签约资料" prop="SigningFile"> <el-form-item label="签约资料" prop="SigningFile">
<el-upload v-if="!saveMsg || !saveMsg.length" class="upload-demo" :disabled="!addMsg.SigningType" <el-upload v-if="!saveMsg || !saveMsg.length" class="upload-demo" :disabled="!addMsg.SigningType"
style="display:inline-block;position:relative;top:-1px;left:3px;" :http-request="uploadFileBtn" style="display:inline-block;position:relative;top:-1px;left:3px;" :http-request="uploadFileBtn"
:show-file-list="false" action=""> :show-file-list="false" action="">
<el-button size="small" type="primary">签约材料</el-button> <el-button size="small" type="primary">签约材料</el-button>
</el-upload> </el-upload>
<template v-if="addMsg.SigningType && saveMsg&& saveMsg.length>0"> <template v-if="addMsg.SigningType && saveMsg&& saveMsg.length>0">
<template v-for="(subItem,subIndex) in saveMsg"> <template v-for="(subItem,subIndex) in saveMsg">
<a style="margin-left:20px;color:blue;cursor:pointer;" target="_blank" :key="subIndex" <a style="margin-left:20px;color:blue;cursor:pointer;" target="_blank" :key="subIndex"
@click="downloadFile(subItem.URL,subItem.FileName)">{{subItem.FileName}}</a> @click="downloadFile(subItem.URL,subItem.FileName)">{{subItem.FileName}}</a>
<a :key="subIndex+1000" style="margin-left:20px;color:blue;cursor:pointer;" <a :key="subIndex+1000" style="margin-left:20px;color:blue;cursor:pointer;"
@click="DeleteFile(subIndex)">删除</a> @click="DeleteFile(subIndex)">删除</a>
...@@ -764,14 +764,14 @@ ...@@ -764,14 +764,14 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="签约" prop="SigningType"> <el-form-item label="签约" prop="SigningType">
<el-checkbox v-model='updateMsg.SigningType'>签约月结客户 <el-checkbox v-model='updateMsg.SigningType'>签约月结客户
</el-checkbox> </el-checkbox>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6" v-show="updateMsg.SigningType"> <el-col :span="6" v-show="updateMsg.SigningType">
<el-form-item label="签约资料" prop="SigningFile"> <el-form-item label="签约资料" prop="SigningFile">
<el-upload v-if="!saveMsg || !saveMsg.length" class="upload-demo" :disabled="!updateMsg.SigningType" <el-upload v-if="!saveMsg || !saveMsg.length" class="upload-demo" :disabled="!updateMsg.SigningType"
style="display:inline-block;position:relative;top:-1px;left:3px;" :http-request="uploadFileBtn" style="display:inline-block;position:relative;top:-1px;left:3px;" :http-request="uploadFileBtn"
:show-file-list="false" action=""> :show-file-list="false" action="">
...@@ -782,12 +782,13 @@ ...@@ -782,12 +782,13 @@
<a style="margin-left:20px;color:blue;cursor:pointer;" target="_blank" :key="subIndex" <a style="margin-left:20px;color:blue;cursor:pointer;" target="_blank" :key="subIndex"
@click="downloadFile(subItem.URL,subItem.FileName)">{{subItem.FileName}}</a> @click="downloadFile(subItem.URL,subItem.FileName)">{{subItem.FileName}}</a>
<a :key="subIndex+1000" style="margin-left:20px;color:blue;cursor:pointer;" <a :key="subIndex+1000" style="margin-left:20px;color:blue;cursor:pointer;"
@click="DeleteFile(subIndex)">删除</a> @click="DeleteFile(subIndex)">删除</a>
</template>
</template> </template>
</el-form-item> </template>
</el-col></el-row> </el-form-item>
</el-col>
</el-row>
<el-row :gutter="20" style='margin-top:13px;'> <el-row :gutter="20" style='margin-top:13px;'>
<el-col :span="24"> <el-col :span="24">
<p class="fz12 color333 fbold" style="border: none; margin-bottom: 15px; padding-left: 20px;">需审核信息<span <p class="fz12 color333 fbold" style="border: none; margin-bottom: 15px; padding-left: 20px;">需审核信息<span
...@@ -1060,7 +1061,6 @@ ...@@ -1060,7 +1061,6 @@
FileSize: fileSize, FileSize: fileSize,
FolderId: this.msg.ParentId FolderId: this.msg.ParentId
}) })
console.log('file', file, x,this.saveMsg)
}); });
}, },
//删除文件 //删除文件
...@@ -1071,7 +1071,7 @@ ...@@ -1071,7 +1071,7 @@
downloadFile(fileUrl, fileName) { downloadFile(fileUrl, fileName) {
const link = document.createElement('a'); const link = document.createElement('a');
link.href = fileUrl; link.href = fileUrl;
link.target="_blank"; link.target = "_blank";
link.download = fileName; link.download = fileName;
document.body.appendChild(link); document.body.appendChild(link);
link.click(); link.click();
...@@ -1242,13 +1242,13 @@ ...@@ -1242,13 +1242,13 @@
this.updateMsg.email = x.email this.updateMsg.email = x.email
this.updateMsg.email = x.email this.updateMsg.email = x.email
this.updateMsg.email = x.email this.updateMsg.email = x.email
var newUrl = this.domainManager().ViittoFileUrl + x.signingFile
var newUrl = this.domainManager().ViittoFileUrl + x.signingFile this.saveMsg = x.signingFile ? [{
this.saveMsg = x.signingFile ? [{Path: x.signingFile, Path: x.signingFile,
URL: newUrl, URL: newUrl,
FileName: '签约附件'}] : [] FileName: '签约附件'
this.updateMsg.SigningType = x.signingType ? true : false }] : []
console.log('updateMsg', x) this.updateMsg.SigningType = x.signingType ? true : false
} else {} } else {}
}, err => {}) }, err => {})
}, },
...@@ -1565,7 +1565,10 @@ ...@@ -1565,7 +1565,10 @@
if (this.addMsg.District == '') { if (this.addMsg.District == '') {
this.addMsg.District = 0 this.addMsg.District = 0
} }
this.addMsgS.customerInfo = {...this.addMsg, SigningType:this.addMsg.SigningType ? 1 : 0} this.addMsgS.customerInfo = {
...this.addMsg,
SigningType: this.addMsg.SigningType ? 1 : 0
}
if (this.BusinessCardPhotos) { if (this.BusinessCardPhotos) {
this.addMsg.BusinessCardPhotos = [] this.addMsg.BusinessCardPhotos = []
this.addMsg.BusinessCardPhotos.push(this.BusinessCardPhotos) this.addMsg.BusinessCardPhotos.push(this.BusinessCardPhotos)
......
<style> <style>
.customerApproval .approvalNav { .customerApproval .approvalNav {
height: 52px; height: 52px;
width: 100%; width: 100%;
margin: 30px 0 20px; margin: 30px 0 20px;
} }
.customerApproval .approvalNav > li {
float: left; .customerApproval .approvalNav>li {
width: 116px; float: left;
font-size: 14px; width: 116px;
height: 52px; font-size: 14px;
color: #666; height: 52px;
text-align: center; color: #666;
line-height: 52px; text-align: center;
background: #e9e9e9; line-height: 52px;
cursor: pointer; background: #e9e9e9;
} cursor: pointer;
.customerApproval .approvalNav > li.active { }
background: #fff;
color: #333; .customerApproval .approvalNav>li.active {
} background: #fff;
.customerApproval .approvalNav .divActive { color: #333;
margin: -3px auto; }
width: 26px;
height: 3px; .customerApproval .approvalNav .divActive {
background: #e95252; margin: -3px auto;
} width: 26px;
.customerApprovalDetailTable { height: 3px;
width: 100%; background: #e95252;
font-size: 14px; }
color: #333;
} .customerApprovalDetailTable {
.customerApprovalDetailTable tr th { width: 100%;
background: #e6e6e6; font-size: 14px;
height: 30px; color: #333;
font-size: 12px; }
text-align: left;
text-indent: 25px; .customerApprovalDetailTable tr th {
} background: #e6e6e6;
.customerApprovalDetailTable tr { height: 30px;
background: #fff; font-size: 12px;
text-align: left; text-align: left;
} text-indent: 25px;
.customerApprovalDetailTable tr td { }
height: 60px;
padding-left: 25px; .customerApprovalDetailTable tr {
border-bottom: 1px solid #eee; background: #fff;
font-size: 14px; text-align: left;
color: #333; }
}
.customerApprovalLayer { .customerApprovalDetailTable tr td {
position: fixed; height: 60px;
z-index: 99; padding-left: 25px;
background: rgba(0, 0, 0, 0.1); border-bottom: 1px solid #eee;
width: 100%; font-size: 14px;
height: 100%; color: #333;
left: 0; }
top: 0;
} .customerApprovalLayer {
.customerApprovalLayer .rightZero { position: fixed;
right: 0px; z-index: 99;
} background: rgba(0, 0, 0, 0.1);
.customerApprovalLayercontentDiv { width: 100%;
width: 420px; height: 100%;
background: #fff; left: 0;
height: 100%; top: 0;
overflow: auto; }
top: 0;
right: -420px; .customerApprovalLayer .rightZero {
position: fixed; right: 0px;
box-shadow: 4px 0px 10px rgba(0, 0, 0, 0.1); }
transition: right 0.5s;
} .customerApprovalLayercontentDiv {
.customerApprovalLayercontentDiv .title { width: 420px;
width: 420px; background: #fff;
height: 48px; height: 100%;
line-height: 48px; overflow: auto;
text-indent: 20px; top: 0;
font-size: 16px; right: -420px;
color: #333; position: fixed;
background: #edeef0; box-shadow: 4px 0px 10px rgba(0, 0, 0, 0.1);
} transition: right 0.5s;
.customerApprovalLayercontentDiv .item { }
width: 380px;
height: auto; .customerApprovalLayercontentDiv .title {
overflow: hidden; width: 420px;
border: 1px solid #e6e6e6; height: 48px;
margin: 20px 0 20px 20px; line-height: 48px;
padding: 20px; text-indent: 20px;
} font-size: 16px;
.customerApprovalLayercontentDiv .item .topMsg { color: #333;
overflow: hidden; background: #edeef0;
padding-bottom: 20px; }
border-bottom: 1px solid #e6e6e6;
} .customerApprovalLayercontentDiv .item {
.customerApprovalLayercontentDiv .item .topMsg > img { width: 380px;
float: left; height: auto;
margin-right: 13px; overflow: hidden;
} border: 1px solid #e6e6e6;
.customerApprovalLayercontentDiv .item .bottomMsg { margin: 20px 0 20px 20px;
padding: 15px 0; padding: 20px;
} }
.customerApprovalLayercontentDiv .item .bottomMsg .pImg {
margin-top: 10px; .customerApprovalLayercontentDiv .item .topMsg {
} overflow: hidden;
.customerApprovalLayercontentDiv .item .bottomMsg .pImg img { padding-bottom: 20px;
cursor: pointer; border-bottom: 1px solid #e6e6e6;
height: 100px; }
}
.customerApprovalLayercontentDiv .answerItem { .customerApprovalLayercontentDiv .item .topMsg>img {
overflow: hidden; float: left;
padding: 15px 0; margin-right: 13px;
} }
.customerApprovalLayercontentDiv .answerItem > img {
float: left; .customerApprovalLayercontentDiv .item .bottomMsg {
width: 28px; padding: 15px 0;
height: 28px; }
border-radius: 14px;
margin-right: 10px; .customerApprovalLayercontentDiv .item .bottomMsg .pImg {
} margin-top: 10px;
.customerApprovalLayercontentBtn { }
position: fixed;
bottom: 0; .customerApprovalLayercontentDiv .item .bottomMsg .pImg img {
background: #f5f5f5; cursor: pointer;
width: 420px; height: 100px;
height: 70px; }
line-height: 70px;
text-align: right; .customerApprovalLayercontentDiv .answerItem {
padding: 0 20px; overflow: hidden;
} padding: 15px 0;
.customerApprovalLayercontentBtn > div { }
border-bottom: 1px solid #d9d9d9;
height: 40px; .customerApprovalLayercontentDiv .answerItem>img {
line-height: 40px; float: left;
text-align: left; width: 28px;
overflow: hidden; height: 28px;
} border-radius: 14px;
.customerApprovalLayercontentBtn > span { margin-right: 10px;
display: inline-block; }
line-height: 18px;
color: #333; .customerApprovalLayercontentBtn {
font-size: 12px; position: fixed;
text-align: center; bottom: 0;
border: 2px solid #fff; background: #f5f5f5;
cursor: pointer; width: 420px;
background: #fff; height: 70px;
height: 110px; line-height: 70px;
width: 110px; text-align: right;
margin-top: 20px; padding: 0 20px;
box-sizing: border-box; }
}
.customerApprovalLayercontentBtn > span.cked { .customerApprovalLayercontentBtn>div {
border: 2px solid #e95252; border-bottom: 1px solid #d9d9d9;
box-sizing: border-box; height: 40px;
} line-height: 40px;
.customerApprovalLayercontentBtn > span > img { text-align: left;
float: left; overflow: hidden;
margin: 10px 23px; }
width: 63px;
height: 63px; .customerApprovalLayercontentBtn>span {
} display: inline-block;
.customerApproval .lastVisitContent { line-height: 18px;
background: #f5f5f5; color: #333;
font-size: 12px; font-size: 12px;
padding: 5px 12px; text-align: center;
margin-top: 8px; border: 2px solid #fff;
} cursor: pointer;
.customerApproval ._class_b { background: #fff;
color: #257bf1 !important; height: 110px;
} width: 110px;
.price-item { margin-top: 20px;
padding: 10px 20px; box-sizing: border-box;
font-size: 14px; }
}
.price-item-title { .customerApprovalLayercontentBtn>span.cked {
color: #666; border: 2px solid #e95252;
box-sizing: border-box;
} }
.customerApprovalLayercontentBtn>span>img {
float: left;
margin: 10px 23px;
width: 63px;
height: 63px;
}
.customerApproval .lastVisitContent {
background: #f5f5f5;
font-size: 12px;
padding: 5px 12px;
margin-top: 8px;
}
.customerApproval ._class_b {
color: #257bf1 !important;
}
.price-item {
padding: 10px 20px;
font-size: 14px;
}
.price-item-title {
color: #666;
}
</style> </style>
<template> <template>
<div class="customerApproval"> <div class="customerApproval">
<div <div :class="{ viewBigPicLayer: true, viewBigPicLayerDisplayNone: dspNone }" @click="closePicLayer">
:class="{ viewBigPicLayer: true, viewBigPicLayerDisplayNone: dspNone }" <i @click="closePicLayer" class="el-icon-circle-close-outline clolseViewBigPicLayer"></i>
@click="closePicLayer" <el-carousel height="600px" :initial-index="initialIndex" :interval="5000" trigger="click">
>
<i
@click="closePicLayer"
class="el-icon-circle-close-outline clolseViewBigPicLayer"
></i>
<el-carousel
height="600px"
:initial-index="initialIndex"
:interval="5000"
trigger="click"
>
<el-carousel-item v-for="(item, index) in picObj" :key="index"> <el-carousel-item v-for="(item, index) in picObj" :key="index">
<div class="inlineDiv ownScrollbarStyle"><img :src="item" /></div> <div class="inlineDiv ownScrollbarStyle"><img :src="item" /></div>
</el-carousel-item> </el-carousel-item>
</el-carousel> </el-carousel>
</div> </div>
<viewer <viewer :images="picObj" :options="imageOptions" @inited="inited" class="viewer" ref="viewer">
:images="picObj"
:options="imageOptions"
@inited="inited"
class="viewer"
ref="viewer"
>
<img v-for="item in picObj" :src="item" :key="item" /> <img v-for="item in picObj" :src="item" :key="item" />
</viewer> </viewer>
<div :class="{ customerApprovalLayer: showlayer }" @click="closeLayer"> <div :class="{ customerApprovalLayer: showlayer }" @click="closeLayer">
<div <div :class="{
:class="{
customerApprovalLayercontentDiv: true, customerApprovalLayercontentDiv: true,
rightZero: isTransition, rightZero: isTransition,
}" }" class="ownScrollbarStyle" @click.stop>
class="ownScrollbarStyle"
@click.stop
>
<div class="title">{{ meta }}{{ $t("fnc.xiangqing") }}</div> <div class="title">{{ meta }}{{ $t("fnc.xiangqing") }}</div>
<div class="item"> <div class="item">
<div class="topMsg"> <div class="topMsg">
<img <img v-if="!detailList.photo" src="../../assets/img/litheader.png" />
v-if="!detailList.photo" <img v-if="detailList.photo" :onerror="defaultImg" :src="detailList.photo" />
src="../../assets/img/litheader.png"
/>
<img
v-if="detailList.photo"
:onerror="defaultImg"
:src="detailList.photo"
/>
<p>{{ detailList.customerName }}</p> <p>{{ detailList.customerName }}</p>
<p class="mt5"> <p class="mt5">
<i <i class="iconfont icon-img_dianhua fz12" style="color: #09d49d"></i>
class="iconfont icon-img_dianhua fz12"
style="color: #09d49d"
></i>
<span class="fz14 color333">{{ detailList.contact }}</span> <span class="fz14 color333">{{ detailList.contact }}</span>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
<span class="fz14 color333">{{ detailList.contactNumber }}</span> <span class="fz14 color333">{{ detailList.contactNumber }}</span>
...@@ -250,10 +247,7 @@ ...@@ -250,10 +247,7 @@
}}&nbsp; }}&nbsp;
<span class="color666 fz12">{{ lastVisitObj.timestr }}</span> <span class="color666 fz12">{{ lastVisitObj.timestr }}</span>
</p> </p>
<div <div v-if="lastVisitObj.visitId > 0" style="border-bottom: 1px solid #ccc; padding-bottom: 10px">
v-if="lastVisitObj.visitId > 0"
style="border-bottom: 1px solid #ccc; padding-bottom: 10px"
>
<p class="fz12 mt10"> <p class="fz12 mt10">
{{ $t("salesModule.ProcessType") }}{{ {{ $t("salesModule.ProcessType") }}{{
lastVisitObj.salesProcess lastVisitObj.salesProcess
...@@ -270,131 +264,87 @@ ...@@ -270,131 +264,87 @@
</div> </div>
<div class="bottomMsg"> <div class="bottomMsg">
<p class="fz14 color666 mt10"> <p class="fz14 color666 mt10">
<i class="iconfont icon-ico-mingpianzhaopian fz14 colorccc"></i <i class="iconfont icon-ico-mingpianzhaopian fz14 colorccc"></i>&nbsp;
>&nbsp;
{{ $t("salesModule.BusinessPhoto") }} {{ $t("salesModule.BusinessPhoto") }}
</p> </p>
<p class="pImg" v-if="!detailList.businessCardPhotos"> <p class="pImg" v-if="!detailList.businessCardPhotos">
<span class="fz12 color333">{{ $t("active.cl_zanwu") }}</span> <span class="fz12 color333">{{ $t("active.cl_zanwu") }}</span>
</p> </p>
<p class="pImg" v-else> <p class="pImg" v-else>
<img <img @click="getPic(detailList.businessCardPhotos, index)"
@click="getPic(detailList.businessCardPhotos, index)" v-if="detailList.businessCardPhotos.length == 1" v-for="(i, index) in detailList.businessCardPhotos"
v-if="detailList.businessCardPhotos.length == 1" :src="i + '?x-oss-process=image/resize,m_mfit,h_100,w_300'" />
v-for="(i, index) in detailList.businessCardPhotos" <img @click="getPic(detailList.businessCardPhotos, index)" v-if="
:src="i + '?x-oss-process=image/resize,m_mfit,h_100,w_300'"
/>
<img
@click="getPic(detailList.businessCardPhotos, index)"
v-if="
detailList.businessCardPhotos.length == 2 || detailList.businessCardPhotos.length == 2 ||
detailList.businessCardPhotos.length == 4 detailList.businessCardPhotos.length == 4
" " v-for="(i, index) in detailList.housePhotos" :src="
v-for="(i, index) in detailList.housePhotos"
:src="
i + i +
'?x-oss-process=image/resize,m_pad,w_169,h_150,color_333333' '?x-oss-process=image/resize,m_pad,w_169,h_150,color_333333'
" " />
/> <img @click="getPic(detailList.businessCardPhotos, index)" v-if="
<img
@click="getPic(detailList.businessCardPhotos, index)"
v-if="
detailList.businessCardPhotos.length == 3 || detailList.businessCardPhotos.length == 3 ||
detailList.businessCardPhotos.length >= 5 detailList.businessCardPhotos.length >= 5
" " v-for="(i, index) in detailList.housePhotos" :src="
v-for="(i, index) in detailList.housePhotos"
:src="
i + i +
'?x-oss-process=image/resize,m_pad,h_100,w_100,color_333333' '?x-oss-process=image/resize,m_pad,h_100,w_100,color_333333'
" " />
/>
</p> </p>
<p class="fz14 color666 mt10"> <p class="fz14 color666 mt10">
<i class="iconfont icon-ico-menpaizhaopian fz14 colorccc"></i <i class="iconfont icon-ico-menpaizhaopian fz14 colorccc"></i>&nbsp;
>&nbsp;
{{ $t("salesModule.doorPhoto") }} {{ $t("salesModule.doorPhoto") }}
</p> </p>
<p class="pImg" v-if="!detailList.housePhotos"> <p class="pImg" v-if="!detailList.housePhotos">
<span class="fz12 color333">{{ $t("active.cl_zanwu") }}</span> <span class="fz12 color333">{{ $t("active.cl_zanwu") }}</span>
</p> </p>
<p class="pImg" v-else> <p class="pImg" v-else>
<img <img @click="getPic(detailList.housePhotos, index)" v-if="detailList.housePhotos.length == 1"
@click="getPic(detailList.housePhotos, index)"
v-if="detailList.housePhotos.length == 1"
v-for="(i, index) in detailList.housePhotos" v-for="(i, index) in detailList.housePhotos"
:src="i + '?x-oss-process=image/resize,m_mfit,h_100,w_300'" :src="i + '?x-oss-process=image/resize,m_mfit,h_100,w_300'" />
/> <img @click="getPic(detailList.housePhotos, index)" v-if="
<img
@click="getPic(detailList.housePhotos, index)"
v-if="
detailList.housePhotos.length == 2 || detailList.housePhotos.length == 2 ||
detailList.housePhotos.length == 4 detailList.housePhotos.length == 4
" " v-for="(i, index) in detailList.housePhotos" :src="
v-for="(i, index) in detailList.housePhotos"
:src="
i + i +
'?x-oss-process=image/resize,m_pad,w_169,h_150,color_333333' '?x-oss-process=image/resize,m_pad,w_169,h_150,color_333333'
" " />
/> <img @click="getPic(detailList.housePhotos, index)" v-if="
<img
@click="getPic(detailList.housePhotos, index)"
v-if="
detailList.housePhotos.length == 3 || detailList.housePhotos.length == 3 ||
detailList.housePhotos.length >= 5 detailList.housePhotos.length >= 5
" " v-for="(i, index) in detailList.housePhotos" :src="
v-for="(i, index) in detailList.housePhotos"
:src="
i + i +
'?x-oss-process=image/resize,m_pad,h_100,w_100,color_333333' '?x-oss-process=image/resize,m_pad,h_100,w_100,color_333333'
" " />
/>
</p> </p>
<p class="fz14 color666 mt10"> <p class="fz14 color666 mt10">
<i class="iconfont icon-ico_yingyezhizhao fz14 colorccc"></i <i class="iconfont icon-ico_yingyezhizhao fz14 colorccc"></i>&nbsp;
>&nbsp;
{{ $t("salesModule.BusinessLicense") }} {{ $t("salesModule.BusinessLicense") }}
</p> </p>
<p class="pImg" v-if="!detailList.images"> <p class="pImg" v-if="!detailList.images">
<span class="fz12 color333">{{ $t("active.cl_zanwu") }}</span> <span class="fz12 color333">{{ $t("active.cl_zanwu") }}</span>
</p> </p>
<p class="pImg" v-else> <p class="pImg" v-else>
<img <img @click="getPic(detailList.images, index)" v-if="detailList.images.length == 1"
@click="getPic(detailList.images, index)" v-for="(i, index) in detailList.images" :src="i + '?x-oss-process=image/resize,m_mfit,h_100,w_300'" />
v-if="detailList.images.length == 1" <img @click="getPic(detailList.images, index)" v-if="
v-for="(i, index) in detailList.images"
:src="i + '?x-oss-process=image/resize,m_mfit,h_100,w_300'"
/>
<img
@click="getPic(detailList.images, index)"
v-if="
detailList.images.length == 2 || detailList.images.length == 4 detailList.images.length == 2 || detailList.images.length == 4
" " v-for="(i, index) in detailList.images" :src="
v-for="(i, index) in detailList.images"
:src="
i + i +
'?x-oss-process=image/resize,m_pad,w_169,h_150,color_333333' '?x-oss-process=image/resize,m_pad,w_169,h_150,color_333333'
" " />
/> <img @click="getPic(detailList.images, index)" v-if="
<img
@click="getPic(detailList.images, index)"
v-if="
detailList.images.length == 3 || detailList.images.length >= 5 detailList.images.length == 3 || detailList.images.length >= 5
" " v-for="(i, index) in detailList.images" :src="
v-for="(i, index) in detailList.images"
:src="
i + i +
'?x-oss-process=image/resize,m_pad,h_100,w_100,color_333333' '?x-oss-process=image/resize,m_pad,h_100,w_100,color_333333'
" " />
/>
</p> </p>
<p class="fz14 color666 mt10"> <p class="fz14 color666 mt10">
<i class="iconfont icon-ico_yingyezhizhao fz14 colorccc"></i <i class="iconfont icon-ico_yingyezhizhao fz14 colorccc"></i>&nbsp;
>&nbsp;
签约资料 签约资料
</p> </p>
<a v-if="detailList.signingFile" style="margin-left:20px;color:blue;cursor:pointer;font-size: 14px;" target="_blank" <a v-if="detailList.signingFile" style="margin-left:20px;color:blue;cursor:pointer;font-size: 14px;"
@click="downloadFile(detailList.signingFile)">签约客户附件</a> target="_blank" @click="downloadFile(detailList.signingFile)">签约客户附件</a>
<p class="fz14 color666 mt10"> <p class="fz14 color666 mt10">
<i class="iconfont icon-fangwenjilu fz14 colorccc"></i>&nbsp; <i class="iconfont icon-fangwenjilu fz14 colorccc"></i>&nbsp;
{{ $t("salesModule.kaifaDetail") }} {{ $t("salesModule.kaifaDetail") }}
...@@ -411,43 +361,24 @@ ...@@ -411,43 +361,24 @@
detailList.visitRecord == "" ? "暂无" : detailList.visitRecord detailList.visitRecord == "" ? "暂无" : detailList.visitRecord
}} }}
</p> </p>
<p <p class="fz14 mt10" style="color: #4779ff" v-show="customerStatus == 2 || customerStatus == 3">
class="fz14 mt10" <i class="iconfont icon-shenpiyijian fz14" style="color: #4779ff"></i>&nbsp;
style="color: #4779ff"
v-show="customerStatus == 2 || customerStatus == 3"
>
<i
class="iconfont icon-shenpiyijian fz14"
style="color: #4779ff"
></i
>&nbsp;
{{ $t("salesModule.SPYJ") }} {{ $t("salesModule.SPYJ") }}
</p> </p>
<div class="answerItem" v-for="item in answerDetailList"> <div class="answerItem" v-for="item in answerDetailList">
<img v-if="!item.emPhoto" src="../../assets/img/litheader.png" /> <img v-if="!item.emPhoto" src="../../assets/img/litheader.png" />
<img <img v-if="item.emPhoto" :onerror="defaultImg" :src="item.emPhoto" />
v-if="item.emPhoto"
:onerror="defaultImg"
:src="item.emPhoto"
/>
<p> <p>
<span class="fz14 color333">{{ item.createBy }}</span> <span class="fz14 color333">{{ item.createBy }}</span>
<span class="fz12 color999">{{ item.createDate }}</span> <span class="fz12 color999">{{ item.createDate }}</span>
</p> </p>
<p <p class="mt5" style="color: #e95252" v-show="item.adviceStatus == 2">
class="mt5"
style="color: #e95252"
v-show="item.adviceStatus == 2"
>
{{ $t("salesModule.ApprovalRejected") }} {{ $t("salesModule.ApprovalRejected") }}
</p> </p>
<p style="color: #09d49d" v-show="item.adviceStatus == 1"> <p style="color: #09d49d" v-show="item.adviceStatus == 1">
{{ $t("salesModule.ApprovalPassed") }} {{ $t("salesModule.ApprovalPassed") }}
</p> </p>
<p <p class="fz12 color333 mt5" style="margin-left: 35px; background: #f5f5f5; padding: 10px">
class="fz12 color333 mt5"
style="margin-left: 35px; background: #f5f5f5; padding: 10px"
>
{{ item.adviceContent }} {{ item.adviceContent }}
</p> </p>
</div> </div>
...@@ -455,174 +386,99 @@ ...@@ -455,174 +386,99 @@
</div> </div>
<div v-if="(customerStatus == 0 || customerStatus == 1)"> <div v-if="(customerStatus == 0 || customerStatus == 1)">
</div> </div>
<div v-else> <div v-else>
<div class="price-item"> <div class="price-item">
<span class="price-item-title">签约额度:</span> <span class="price-item-title">签约额度:</span>
<span>{{addMsg.SigningPrice}}</span> <span>{{addMsg.SigningPrice}}</span>
</div> </div>
<div class="price-item"> <div class="price-item">
<span class="price-item-title">有效日期:</span> <span class="price-item-title">有效日期:</span>
<span>{{addMsg.SigningEndTime}}</span> <span>{{addMsg.SigningEndTime}}</span>
</div> </div>
</div> </div>
<div <div class="customerApprovalLayercontentBtn"
class="customerApprovalLayercontentBtn" v-show="(customerStatus == 0 || customerStatus == 1) && isOk == -1">
v-show="(customerStatus == 0 || customerStatus == 1) && isOk == -1" <input type="button" class="normalBtn" :value="$t('visa.v_tongguo')" @click="
>
<input
type="button"
class="normalBtn"
:value="$t('visa.v_tongguo')"
@click="
isOk = 1; isOk = 1;
addMsg.AdviceStatus = 1; addMsg.AdviceStatus = 1;
" " />
/> <input type="button" class="hollowFixedBtn" :value="$t('visa.v_jujue')" @click="
<input
type="button"
class="hollowFixedBtn"
:value="$t('visa.v_jujue')"
@click="
isOk = 0; isOk = 0;
addMsg.AdviceStatus = 2; addMsg.AdviceStatus = 2;
" " />
/>
</div> </div>
<div <div class="customerApprovalLayercontentBtn" style="height: 190px" v-show="isOk == 0">
class="customerApprovalLayercontentBtn"
style="height: 190px"
v-show="isOk == 0"
>
<div> <div>
<span class="fz14 color333">{{ $t("salesModule.RejectJJ") }}</span> <span class="fz14 color333">{{ $t("salesModule.RejectJJ") }}</span>
</div> </div>
<p class="mt10"> <p class="mt10">
<el-input <el-input type="textarea" v-model="addMsg.AdviceContent" maxlength="200"></el-input>
type="textarea"
v-model="addMsg.AdviceContent"
maxlength="200"
></el-input>
</p> </p>
<input <input type="button" class="normalBtn" :value="$t('adm.adm_publish')" @click="saveApproval()" />
type="button" <input type="button" class="hollowFixedBtn" :value="$t('pub.cancelBtn')" @click="isOk = -1" />
class="normalBtn"
:value="$t('adm.adm_publish')"
@click="saveApproval()"
/>
<input
type="button"
class="hollowFixedBtn"
:value="$t('pub.cancelBtn')"
@click="isOk = -1"
/>
</div> </div>
<div <div class="customerApprovalLayercontentBtn" style="height: 400px; text-align: center" v-show="isOk == 1">
class="customerApprovalLayercontentBtn"
style="height: 400px; text-align: center"
v-show="isOk == 1"
>
<div> <div>
<span class="fz14 color333">{{ <span class="fz14 color333">{{
$t("salesModule.ChoiceCustomer") $t("salesModule.ChoiceCustomer")
}}</span> }}</span>
</div> </div>
<span <span :class="{ cked: addMsg.IsMember == 2 }" @click="addMsg.IsMember = 2">
:class="{ cked: addMsg.IsMember == 2 }"
@click="addMsg.IsMember = 2"
>
<img src="../../assets/img/notVip.png" /> <img src="../../assets/img/notVip.png" />
{{ $t("salesModule.NormalCustomer") }} {{ $t("salesModule.NormalCustomer") }}
</span> </span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span <span :class="{ cked: addMsg.IsMember == 1 }" @click="addMsg.IsMember = 1">
:class="{ cked: addMsg.IsMember == 1 }"
@click="addMsg.IsMember = 1"
>
<img src="../../assets/img/isVip.png" /> <img src="../../assets/img/isVip.png" />
{{ $t("salesModule.MemberCustomer") }} {{ $t("salesModule.MemberCustomer") }}
</span> </span>
<p class="clearfix"></p> <p class="clearfix"></p>
<el-form> <el-form>
<el-form-item label="签约额度"> <el-form-item label="签约额度">
<el-input <el-input style="width: 220px" v-model="addMsg.SigningPrice" type="number"></el-input>
style="width: 220px" </el-form-item>
v-model="addMsg.SigningPrice" <el-form-item label="有效日期">
type="number" <el-date-picker class="h34" v-model="addMsg.SigningEndTime" type="date" value-format="yyyy-MM-dd">
></el-input> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="有效日期"> </el-form>
<el-date-picker <input type="button" class="normalBtn mg0" :value="$t('restaurant.res_confirm')" @click="saveApproval()" />
class="h34"
v-model="addMsg.SigningEndTime"
type="date"
value-format="yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
</el-form>
<input
type="button"
class="normalBtn mg0"
:value="$t('restaurant.res_confirm')"
@click="saveApproval()"
/>
&nbsp;&nbsp; &nbsp;&nbsp;
<input <input type="button" class="hollowFixedBtn mg0" :value="$t('pub.cancelBtn')" @click="isOk = -1" />
type="button"
class="hollowFixedBtn mg0"
:value="$t('pub.cancelBtn')"
@click="isOk = -1"
/>
</div> </div>
</div> </div>
</div> </div>
<div class="approvalNav"> <div class="approvalNav">
<li <li :class="{ active: type == -1 }" @click="
:class="{ active: type == -1 }"
@click="
type = -1; type = -1;
clickGetList(-1); clickGetList(-1);
" ">
>
{{ $t("salesModule.AllApproval") }} {{ $t("salesModule.AllApproval") }}
<div class="divActive" v-show="type == -1"></div> <div class="divActive" v-show="type == -1"></div>
</li> </li>
<li <li :class="{ active: type == 1 }" @click="
:class="{ active: type == 1 }"
@click="
type = 1; type = 1;
clickGetList(1); clickGetList(1);
" ">
>
{{ $t("salesModule.Pending") }} {{ $t("salesModule.Pending") }}
<div class="divActive" v-show="type == 1"></div> <div class="divActive" v-show="type == 1"></div>
</li> </li>
<li <li :class="{ active: type == 2 }" @click="
:class="{ active: type == 2 }"
@click="
type = 2; type = 2;
clickGetList(2); clickGetList(2);
" ">
>
{{ $t("salesModule.YSP") }} {{ $t("salesModule.YSP") }}
<div class="divActive" v-show="type == 2"></div> <div class="divActive" v-show="type == 2"></div>
</li> </li>
</div> </div>
<table <table class="customerApprovalDetailTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
class="customerApprovalDetailTable"
border="0"
cellspacing="0"
cellpadding="0"
v-loading="loading"
>
<tr> <tr>
<th width="20%">{{ $t("salesModule.Stores") }}</th> <th width="20%">{{ $t("salesModule.Stores") }}</th>
<th width="10%">{{ $t("hotel.suplier_contact") }}</th> <th width="10%">{{ $t("hotel.suplier_contact") }}</th>
<th width="15%">{{ $t("hotel.table_tel") }}</th> <th width="15%">{{ $t("hotel.table_tel") }}</th>
<!-- <th width="15%">{{ $t("salesModule.SaveTime") }}</th> -->
<th width="15%" v-if="type != 1">到期时间</th> <th width="15%" v-if="type != 1">到期时间</th>
<th width="15%" v-if="type != 1">签约金额</th> <th width="15%" v-if="type != 1">签约金额</th>
<th width="10%">{{ $t("salesModule.Laiyuan") }}</th> <th width="10%">{{ $t("salesModule.Laiyuan") }}</th>
...@@ -632,235 +488,208 @@ ...@@ -632,235 +488,208 @@
<tr v-for="item in list"> <tr v-for="item in list">
<td class="fz16"> <td class="fz16">
{{ item.customerName {{ item.customerName
}}<i }}<i class="iconfont icon-shimingrenzheng" :class="{ _class_b: item.RealNameAuthentication === 1 }"></i>
class="iconfont icon-shimingrenzheng"
:class="{ _class_b: item.RealNameAuthentication === 1 }"
></i>
</td> </td>
<td> <td>
{{ item.contact }} {{ item.contact }}
</td> </td>
<td>{{ item.contactNumber }}</td> <td>{{ item.contactNumber }}</td>
<!-- <td>{{ item.expectVisitDateTime }}</td> -->
<td v-if="type != 1">{{ item.signingEndTime }}</td> <td v-if="type != 1">{{ item.signingEndTime }}</td>
<td v-if="type != 1">{{ item.signingPrice }}</td> <td v-if="type != 1">{{ item.signingPrice }}</td>
<td>{{ item.emName }}</td> <td>{{ item.emName }}</td>
<td> <td>
<img <img src="../../assets/img/dsp.png" v-show="item.customerStatus == 0 || item.customerStatus == 1" />
src="../../assets/img/dsp.png" <img src="../../assets/img/ysp.png" v-show="item.customerStatus == 2 || item.customerStatus == 3" />
v-show="item.customerStatus == 0 || item.customerStatus == 1"
/>
<img
src="../../assets/img/ysp.png"
v-show="item.customerStatus == 2 || item.customerStatus == 3"
/>
</td> </td>
<td> <td>
<input <input type="button" :value="$t('salesModule.CheckDetails')" class="normalBtn" style="margin-left: 0"
type="button" @click="getDetail(item)" />
:value="$t('salesModule.CheckDetails')"
class="normalBtn"
style="margin-left: 0"
@click="getDetail(item)"
/>
</td> </td>
</tr> </tr>
</table> </table>
<el-pagination <el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
background layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total">
@current-change="handleCurrentChange"
:current-page.sync="currentPage"
layout="total,prev, pager, next, jumper"
:page-size="msg.pageSize"
:total="total"
>
</el-pagination> </el-pagination>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
subItem: {}, subItem: {},
imageOptions: { imageOptions: {
navbar: false, navbar: false,
title: false, title: false,
}, },
lastVisitObj: {}, lastVisitObj: {},
meta: "", meta: "",
isOk: -1, isOk: -1,
type: -1, type: -1,
loading: false, loading: false,
isTransition: false, isTransition: false,
showlayer: false, showlayer: false,
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 10, pageSize: 10,
CustomerStatus: -1, CustomerStatus: -1,
}, },
addMsg: { addMsg: {
SigningPrice: "", SigningPrice: "",
SigningEndTime: "", SigningEndTime: "",
CustomerId: 0, CustomerId: 0,
AdviceStatus: 0, AdviceStatus: 0,
AdviceContent: "", AdviceContent: "",
VisitId: -1, VisitId: -1,
IsMember: 2, IsMember: 2,
}, },
customerStatus: -1, customerStatus: -1,
picObj: [], picObj: [],
dspNone: true, dspNone: true,
initialIndex: 0, initialIndex: 0,
defaultImg: defaultImg: 'this.src="' + require("../../assets/img/litheader.png") + '"',
'this.src="' + require("../../assets/img/litheader.png") + '"', currentPage: 1,
currentPage: 1, total: 0,
total: 0, list: [],
list: [], detailList: {},
detailList: {}, answerDetailList: [],
answerDetailList: [], };
}; },
}, methods: {
methods: {
//下载文件 //下载文件
downloadFile(fileUrl) { downloadFile(fileUrl) {
var newUrl = this.domainManager().ViittoFileUrl + fileUrl var newUrl = this.domainManager().ViittoFileUrl + fileUrl
const link = document.createElement('a'); const link = document.createElement('a');
link.href = newUrl; link.href = newUrl;
// link.download = fileName;
link.download = '签约客户附件'; link.download = '签约客户附件';
document.body.appendChild(link); document.body.appendChild(link);
link.click(); link.click();
}, },
inited(viewer) { inited(viewer) {
this.$viewer = viewer; this.$viewer = viewer;
}, },
saveApproval() { saveApproval() {
if (this.addMsg.AdviceStatus == 1) { if (this.addMsg.AdviceStatus == 1) {
this.addMsg.AdviceContent = "";
} else {
this.addMsg.IsMember = 2;
}
this.apipost(
"app_today_visit_SetCustomerAdvice",
this.addMsg,
(res) => {
if (res.data.resultCode == 1) {
this.$message.success(res.data.message);
this.closeLayer();
this.getList();
} else {
this.$message.error(res.data.message);
}
},
(err) => {}
);
},
closePicLayer() {
this.dspNone = true;
},
getPic(obj, index) {
this.picObj = obj;
this.$viewer.show();
},
getDetail(obj) {
this.meta = obj.customerName;
this.addMsg.VisitId = obj.visitID;
this.addMsg.CustomerId = obj.customerId;
this.addMsg.SigningEndTime = obj.signingEndTime;
this.addMsg.SigningPrice = obj.signingPrice;
this.customerStatus = obj.customerStatus;
this.apipost(
"app_today_visit_GetVisitByCustomerIDEntity", {
customerId: obj.customerId
},
(res) => {
if (res.data.resultCode == 1) {
this.openLayer();
this.detailList = res.data.data.customerInfo;
} else {}
},
(err) => {}
);
this.apipost(
"app_today_visit_GetCustomerAdvice", {
CustomerId: obj.customerId
},
(res) => {
if (res.data.resultCode == 1) {
this.answerDetailList = res.data.data;
} else {}
},
(err) => {}
);
this.apipost(
"app_get_my_GetVisitPlanLastList", {
empId: obj.creatBy,
customerId: obj.customerId
},
(res) => {
if (res.data.resultCode == 1) {
this.lastVisitObj = res.data.data;
} else {}
},
(err) => {}
);
},
clickGetList(type) {
this.msg.CustomerStatus = type;
this.msg.pageIndex = 1;
this.currentPage = 1;
this.getList();
},
getList() {
this.loading = true;
this.msg.SigningType = 1;
this.apipost(
"app_today_visit_GetMyDeptCustomerList",
this.msg,
(res) => {
if (res.data.resultCode == 1) {
this.list = res.data.data.pageData;
this.total = res.data.data.count;
this.loading = false;
} else {
this.$message.error(res.data.message);
}
},
(err) => {}
);
},
openLayer() {
this.showlayer = true;
this.isTransition = true;
},
closeLayer() {
let _this = this;
setTimeout(function () {
_this.showlayer = false;
}, 300);
this.isTransition = false;
this.isOk = -1;
this.addMsg.AdviceContent = ""; this.addMsg.AdviceContent = "";
} else {
this.addMsg.IsMember = 2; this.addMsg.IsMember = 2;
} },
this.apipost( handleCurrentChange(val) {
"app_today_visit_SetCustomerAdvice", this.msg.pageIndex = val;
this.addMsg, this.getList();
(res) => { },
if (res.data.resultCode == 1) { resetPageIndex() {
this.$message.success(res.data.message); this.msg.pageIndex = 1;
this.closeLayer(); this.currentPage = 1;
this.getList(); },
} else {
this.$message.error(res.data.message);
}
},
(err) => {}
);
},
closePicLayer() {
this.dspNone = true;
},
getPic(obj, index) {
this.picObj = obj;
this.$viewer.show();
// this.initialIndex = index;
//
// this.dspNone = false;
},
getDetail(obj) {
console.log("addMsg.SigningEndTime addMsg.SigningPrice", obj);
this.meta = obj.customerName;
this.addMsg.VisitId = obj.visitID;
this.addMsg.CustomerId = obj.customerId;
this.addMsg.SigningEndTime = obj.signingEndTime;
this.addMsg.SigningPrice = obj.signingPrice;
this.customerStatus = obj.customerStatus;
this.apipost(
"app_today_visit_GetVisitByCustomerIDEntity",
{ customerId: obj.customerId },
(res) => {
if (res.data.resultCode == 1) {
this.openLayer();
this.detailList = res.data.data.customerInfo;
} else {
}
},
(err) => {}
);
this.apipost(
"app_today_visit_GetCustomerAdvice",
{ CustomerId: obj.customerId },
(res) => {
if (res.data.resultCode == 1) {
this.answerDetailList = res.data.data;
} else {
}
},
(err) => {}
);
this.apipost(
"app_get_my_GetVisitPlanLastList",
{ empId: obj.creatBy, customerId: obj.customerId },
(res) => {
if (res.data.resultCode == 1) {
this.lastVisitObj = res.data.data;
} else {
}
},
(err) => {}
);
},
clickGetList(type) {
this.msg.CustomerStatus = type;
this.msg.pageIndex = 1;
this.currentPage = 1;
this.getList();
},
getList() {
this.loading = true;
this.msg.SigningType = 1;
this.apipost(
"app_today_visit_GetMyDeptCustomerList",
this.msg,
(res) => {
if (res.data.resultCode == 1) {
this.list = res.data.data.pageData;
this.total = res.data.data.count;
this.loading = false;
} else {
this.$message.error(res.data.message);
}
},
(err) => {}
);
},
openLayer() {
this.showlayer = true;
this.isTransition = true;
},
closeLayer() {
let _this = this;
setTimeout(function () {
_this.showlayer = false;
}, 300);
this.isTransition = false;
this.isOk = -1;
this.addMsg.AdviceContent = "";
this.addMsg.IsMember = 2;
}, },
handleCurrentChange(val) { mounted() {
this.msg.pageIndex = val;
this.getList(); this.getList();
}, },
resetPageIndex() { };
this.msg.pageIndex = 1; </script>
this.currentPage = 1; \ No newline at end of file
},
},
mounted() {
this.getList();
},
};
</script>
...@@ -288,7 +288,6 @@ ...@@ -288,7 +288,6 @@
this.loading = false; this.loading = false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
var array = res.data.data; var array = res.data.data;
console.log("array", array);
if (array != null && array.length > 0) { if (array != null && array.length > 0) {
array.forEach(item => { array.forEach(item => {
this.airLineSelectChange(item, item.AirLineId, 1); this.airLineSelectChange(item, item.AirLineId, 1);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment