|
|
@@ -0,0 +1,596 @@ |
|
|
|
<template> |
|
|
|
<div class="box-center" ref="boxcenter" style="cursor: pointer"> |
|
|
|
<!-- 头 --> |
|
|
|
<div class="app-top"> |
|
|
|
<div v-if="orgType != 3" class="app-titel2" style="margin-bottom: 10px"> |
|
|
|
<div class="titel-text">项目选择:</div> |
|
|
|
<div style=""> |
|
|
|
<el-select |
|
|
|
v-model="pageParams.houseId" |
|
|
|
filterable |
|
|
|
@change="getorgCode" |
|
|
|
placeholder="请选择" |
|
|
|
> |
|
|
|
<el-option |
|
|
|
v-for="item in buildingoptions" |
|
|
|
:key="item.value" |
|
|
|
:label="item.propertyName" |
|
|
|
:value="item.id" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="app-titel2"> |
|
|
|
<div style="text-indent: 30px">接待时间:</div> |
|
|
|
<div> |
|
|
|
<el-button |
|
|
|
:class="{ 'el-button--primary': pageParams.dateType == 0 }" |
|
|
|
@click="tabtimetap(0)" |
|
|
|
>今天</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
|
:class="{ 'el-button--primary': pageParams.dateType == 4 }" |
|
|
|
@click="tabtimetap(4)" |
|
|
|
>近7天</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
|
:class="{ 'el-button--primary': pageParams.dateType == 6 }" |
|
|
|
@click="tabtimetap(6)" |
|
|
|
>近30天</el-button |
|
|
|
> |
|
|
|
</div> |
|
|
|
<div style="margin-left: 26px; display: flex; align-items: center"> |
|
|
|
<el-date-picker |
|
|
|
v-model="customtime" |
|
|
|
@change="confirmtime()" |
|
|
|
type="daterange" |
|
|
|
range-separator="-" |
|
|
|
:default-time="['00:00:00', '23:59:59']" |
|
|
|
value-format="yyyy-MM-dd" |
|
|
|
start-placeholder="开始日期" |
|
|
|
end-placeholder="结束日期" |
|
|
|
> |
|
|
|
</el-date-picker> |
|
|
|
|
|
|
|
<div class="titel-text" style="margin-left: 0px">违禁状态:</div> |
|
|
|
<el-select |
|
|
|
class="div-inp" |
|
|
|
v-model="pageParams.violatedStatus" |
|
|
|
@change="confirmtimes" |
|
|
|
clearable |
|
|
|
filterable |
|
|
|
collapse-tags |
|
|
|
placeholder="请选择" |
|
|
|
> |
|
|
|
<el-option label="标识违禁有效" :value="1"></el-option> |
|
|
|
<el-option label="标识违禁无效" :value="2"></el-option> |
|
|
|
</el-select> |
|
|
|
</div> |
|
|
|
|
|
|
|
<!-- <div style="position: absolute; right: 20px"> |
|
|
|
<el-button class="el-button--primary" @click="exportExcel" |
|
|
|
>导出</el-button |
|
|
|
> |
|
|
|
</div> --> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="app-box"> |
|
|
|
<div class="conbox">违禁明细总览</div> |
|
|
|
<div v-if="alllist.length > 0" class="alllistbox"> |
|
|
|
<div |
|
|
|
class="alllist" |
|
|
|
v-for="(item, index) in alllist" |
|
|
|
:key="index" |
|
|
|
@click="Toview(item)" |
|
|
|
style="cursor: pointer" |
|
|
|
> |
|
|
|
<div class="alllist-text1">{{ item.words }}</div> |
|
|
|
<div class="alllist-text1">{{ item.sumNum }}</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-else> |
|
|
|
<div class="empty-box"> |
|
|
|
<img |
|
|
|
class="imgboxc-img" |
|
|
|
style="width: 120px; height: 120px" |
|
|
|
src="/img/nullnull.png" |
|
|
|
alt="" |
|
|
|
/> |
|
|
|
<div class="nulltext" style="font-size: 14px">暂无数据</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<el-dialog |
|
|
|
title="生成纪录" |
|
|
|
:visible.sync="roleHistory" |
|
|
|
:close-on-click-modal="false" |
|
|
|
> |
|
|
|
<div> |
|
|
|
<el-table :data="gridData" max-height="450px"> |
|
|
|
<el-table-column |
|
|
|
property="staTimeOfCN" |
|
|
|
label="接待时间" |
|
|
|
></el-table-column> |
|
|
|
<el-table-column |
|
|
|
property="agentName" |
|
|
|
label="置业顾问" |
|
|
|
></el-table-column> |
|
|
|
<el-table-column property="name" label="客户名称"></el-table-column> |
|
|
|
<el-table-column |
|
|
|
property="sensitiveWords" |
|
|
|
label="违禁词" |
|
|
|
></el-table-column> |
|
|
|
<el-table-column property="violatedStatus" label="违禁状态"> |
|
|
|
<template slot-scope="{ row }"> |
|
|
|
{{ row.violatedStatus == 1 ? "标识违禁有效" : "标识违禁无效" }} |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column property="address" label="操作"> |
|
|
|
<template slot-scope="{ row }"> |
|
|
|
<template> |
|
|
|
<el-button |
|
|
|
@click.native.prevent="toDetail(row)" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
>查看 |
|
|
|
</el-button> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div slot="footer" class="dialog-footer"> |
|
|
|
<el-button @click="roleHistory = false">关 闭</el-button> |
|
|
|
<el-button type="primary" @click="roleHistory = false">确 定</el-button> |
|
|
|
</div> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
<script> |
|
|
|
export default { |
|
|
|
data() { |
|
|
|
return { |
|
|
|
alllist: [], |
|
|
|
orgType: localStorage.getItem("orgType"), |
|
|
|
buildingoptions: [], |
|
|
|
customtime: [], |
|
|
|
pageParams: { |
|
|
|
dateType: 4, // |
|
|
|
houseId: "", |
|
|
|
statDateStart: "", |
|
|
|
statDateEnd: "", |
|
|
|
violatedStatus: null, |
|
|
|
}, |
|
|
|
templateList: [], // 销讲业务列表 |
|
|
|
marketingBusiness: [], // 选中的销讲业务 |
|
|
|
|
|
|
|
roleHistory: false, // 生成记录 |
|
|
|
gridData: [], // 生成记录列表 |
|
|
|
}; |
|
|
|
}, |
|
|
|
|
|
|
|
mounted() { |
|
|
|
this.zkhousePage(); |
|
|
|
if (this.pageParams.dateType == 4) { |
|
|
|
let starTime = new Date().getTime() - 24 * 60 * 60 * 1000 * 7; |
|
|
|
let startDate = `${new Date(starTime).getFullYear()}-${ |
|
|
|
new Date(starTime).getMonth() + 1 |
|
|
|
}-${new Date(starTime).getDate()}`; |
|
|
|
let endTime = new Date().getTime() - 24 * 60 * 60 * 1000; |
|
|
|
let endDate = `${new Date(endTime).getFullYear()}-${ |
|
|
|
new Date(endTime).getMonth() + 1 |
|
|
|
}-${new Date(endTime).getDate()}`; |
|
|
|
|
|
|
|
this.customtime = [startDate, endDate]; |
|
|
|
} |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
// 跳转详情 |
|
|
|
toDetail(row) { |
|
|
|
this.$router.push({ |
|
|
|
path: "/Receive/index", |
|
|
|
query: { flag: row.id, AudioIdx: 0 ,dateTime: row.dateTime}, |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
Toview(item) { |
|
|
|
this.$api.http |
|
|
|
.findAllSensitiveWordsList({ |
|
|
|
...this.pageParams, |
|
|
|
sensitiveWords: item.words, |
|
|
|
}) |
|
|
|
.then((res) => { |
|
|
|
console.log(item, res); |
|
|
|
this.gridData = res.data; |
|
|
|
this.roleHistory = true; |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
//获取项目 |
|
|
|
zkhousePage() { |
|
|
|
this.$api.api |
|
|
|
.findHouseByUser({ |
|
|
|
orgType: localStorage.getItem("orgType"), |
|
|
|
}) |
|
|
|
.then((res) => { |
|
|
|
this.buildingoptions = res.data; |
|
|
|
if (localStorage.getItem("orgType") == 3) { |
|
|
|
this.pageParams.houseId = localStorage.getItem("houseId"); |
|
|
|
} else { |
|
|
|
this.pageParams.houseId = res.data[0].id; |
|
|
|
} |
|
|
|
this.getorgCode(); |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
//自定义时间 |
|
|
|
confirmtime() { |
|
|
|
this.pageParams.dateType = null; |
|
|
|
this.pageParams.statDateStart = this.customtime[0]; |
|
|
|
this.pageParams.statDateEnd = this.customtime[1]; |
|
|
|
this.getorgCode(); |
|
|
|
}, |
|
|
|
confirmtimes() { |
|
|
|
this.getorgCode(); |
|
|
|
}, |
|
|
|
|
|
|
|
//切换时间 |
|
|
|
tabtimetap(index) { |
|
|
|
this.pageParams.dateType = index; |
|
|
|
|
|
|
|
if (index == 0) { |
|
|
|
this.customtime = []; |
|
|
|
} |
|
|
|
|
|
|
|
if (index == 4) { |
|
|
|
let starTime = new Date().getTime() - 24 * 60 * 60 * 1000 * 7; |
|
|
|
let startDate = `${new Date(starTime).getFullYear()}-${ |
|
|
|
new Date(starTime).getMonth() + 1 |
|
|
|
}-${new Date(starTime).getDate()}`; |
|
|
|
let endTime = new Date().getTime() - 24 * 60 * 60 * 1000; |
|
|
|
let endDate = `${new Date(endTime).getFullYear()}-${ |
|
|
|
new Date(endTime).getMonth() + 1 |
|
|
|
}-${new Date(endTime).getDate()}`; |
|
|
|
|
|
|
|
this.customtime = [startDate, endDate]; |
|
|
|
} |
|
|
|
|
|
|
|
if (index == 6) { |
|
|
|
let starTime = new Date().getTime() - 24 * 60 * 60 * 1000 * 30; |
|
|
|
let startDate = `${new Date(starTime).getFullYear()}-${ |
|
|
|
new Date(starTime).getMonth() + 1 |
|
|
|
}-${new Date(starTime).getDate()}`; |
|
|
|
let endTime = new Date().getTime() - 24 * 60 * 60 * 1000; |
|
|
|
let endDate = `${new Date(endTime).getFullYear()}-${ |
|
|
|
new Date(endTime).getMonth() + 1 |
|
|
|
}-${new Date(endTime).getDate()}`; |
|
|
|
|
|
|
|
this.customtime = [startDate, endDate]; |
|
|
|
} |
|
|
|
this.pageParams.statDateStart = ""; |
|
|
|
this.pageParams.statDateEnd = ""; |
|
|
|
this.getorgCode(); |
|
|
|
}, |
|
|
|
//初始化 |
|
|
|
getorgCode() { |
|
|
|
this.$api.http.findSensitiveWordsDat(this.pageParams).then((res) => { |
|
|
|
this.alllist = res.data; |
|
|
|
}); |
|
|
|
}, |
|
|
|
}, |
|
|
|
}; |
|
|
|
</script> |
|
|
|
|
|
|
|
<style scoped="scoped" lang="scss"> |
|
|
|
.box-center { |
|
|
|
width: 100%; |
|
|
|
padding: 20px 15px 40px; |
|
|
|
min-width: 1000px; |
|
|
|
} |
|
|
|
|
|
|
|
.tophove { |
|
|
|
color: #ffffff; |
|
|
|
background: #2671e2; |
|
|
|
} |
|
|
|
|
|
|
|
.app-titel { |
|
|
|
width: 100%; |
|
|
|
height: 70px; |
|
|
|
background: #ffffff; |
|
|
|
box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.04); |
|
|
|
border-radius: 4px; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
|
|
|
|
.titel-text { |
|
|
|
height: 100%; |
|
|
|
font-size: 16px; |
|
|
|
font-weight: 600; |
|
|
|
color: #32363d; |
|
|
|
line-height: 70px; |
|
|
|
margin-left: 30px; |
|
|
|
} |
|
|
|
|
|
|
|
.toptimeqhuan { |
|
|
|
width: 190px; |
|
|
|
height: 32px; |
|
|
|
background: #ffffff; |
|
|
|
border-radius: 4px; |
|
|
|
border: 1px solid #e0e0e0; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
overflow: hidden; |
|
|
|
margin-left: 20px; |
|
|
|
cursor: pointer; |
|
|
|
} |
|
|
|
|
|
|
|
.toptimeqhuan div { |
|
|
|
flex: 1; |
|
|
|
text-align: center; |
|
|
|
line-height: 32px; |
|
|
|
font-size: 16px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.app-box { |
|
|
|
width: 100%; |
|
|
|
background: #ffffff; |
|
|
|
box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.04); |
|
|
|
border-radius: 4px; |
|
|
|
padding: 20px 30px; |
|
|
|
margin-top: 15px; |
|
|
|
|
|
|
|
.conbox { |
|
|
|
height: 18px; |
|
|
|
font-size: 18px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
font-weight: 600; |
|
|
|
color: #32363d; |
|
|
|
line-height: 18px; |
|
|
|
} |
|
|
|
|
|
|
|
.alllistbox { |
|
|
|
width: 100%; |
|
|
|
margin-top: 20px; |
|
|
|
display: flex; |
|
|
|
flex-wrap: wrap; |
|
|
|
justify-content: flex-start; |
|
|
|
|
|
|
|
.alllist { |
|
|
|
width: 16.66%; |
|
|
|
padding-bottom: 2px; |
|
|
|
padding-top: 4px; |
|
|
|
box-shadow: -1px 1px 1px #e0e0e0; |
|
|
|
&:nth-child(1), |
|
|
|
&:nth-child(2), |
|
|
|
&:nth-child(3), |
|
|
|
&:nth-child(4), |
|
|
|
&:nth-child(5), |
|
|
|
&:nth-child(6) { |
|
|
|
border-top: 1px solid #e0e0e0; |
|
|
|
} |
|
|
|
&:nth-child(6n), |
|
|
|
&:last-child { |
|
|
|
border-right: 1px solid #e0e0e0; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.alllist-text1 { |
|
|
|
width: 100%; |
|
|
|
font-size: 16px; |
|
|
|
font-family: PingFangSC-Regular, PingFang SC; |
|
|
|
font-weight: 400; |
|
|
|
color: #333333; |
|
|
|
line-height: 26px; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
} |
|
|
|
.empty-box { |
|
|
|
width: 100%; |
|
|
|
height: 200px; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
justify-content: center; |
|
|
|
flex-direction: column; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.box-forhtml { |
|
|
|
width: 100%; |
|
|
|
min-height: 400px; |
|
|
|
background: #ffffff; |
|
|
|
box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.04); |
|
|
|
border-radius: 4px; |
|
|
|
padding: 20px 30px; |
|
|
|
margin-top: 15px; |
|
|
|
} |
|
|
|
|
|
|
|
.box-forhtml-flex { |
|
|
|
width: 100%; |
|
|
|
display: flex; |
|
|
|
margin-top: 20px; |
|
|
|
} |
|
|
|
|
|
|
|
.box-forhtml-flex .left { |
|
|
|
width: 50%; |
|
|
|
min-height: 320px; |
|
|
|
} |
|
|
|
|
|
|
|
.box-forhtml-flex .right { |
|
|
|
width: 50%; |
|
|
|
min-height: 330px; |
|
|
|
display: flex; |
|
|
|
justify-content: center; |
|
|
|
} |
|
|
|
|
|
|
|
.Templatetable { |
|
|
|
width: 88%; |
|
|
|
height: 100%; |
|
|
|
margin: 0 auto; |
|
|
|
overflow-y: auto; |
|
|
|
} |
|
|
|
|
|
|
|
.table-tit { |
|
|
|
width: 100%; |
|
|
|
height: 20px; |
|
|
|
line-height: 20px; |
|
|
|
display: flex; |
|
|
|
} |
|
|
|
|
|
|
|
.table-tit > div:nth-of-type(1) { |
|
|
|
width: 10%; |
|
|
|
text-align: center; |
|
|
|
font-size: 16px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
font-weight: 600; |
|
|
|
color: #606775; |
|
|
|
} |
|
|
|
|
|
|
|
.table-tit > div:nth-of-type(2) { |
|
|
|
width: 40%; |
|
|
|
text-align: center; |
|
|
|
font-size: 16px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
font-weight: 600; |
|
|
|
color: #606775; |
|
|
|
} |
|
|
|
|
|
|
|
.table-tit > div:nth-of-type(3) { |
|
|
|
width: 25%; |
|
|
|
text-align: center; |
|
|
|
font-size: 16px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
font-weight: 600; |
|
|
|
color: #606775; |
|
|
|
} |
|
|
|
|
|
|
|
.table-tit > div:nth-of-type(4) { |
|
|
|
width: 25%; |
|
|
|
text-align: center; |
|
|
|
font-size: 16px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
font-weight: 600; |
|
|
|
color: #606775; |
|
|
|
} |
|
|
|
|
|
|
|
.table-cent { |
|
|
|
width: 100%; |
|
|
|
height: 40px; |
|
|
|
line-height: 40px; |
|
|
|
display: flex; |
|
|
|
margin-top: 6px; |
|
|
|
} |
|
|
|
.sequenceNum { |
|
|
|
display: flex; |
|
|
|
width: 26px; |
|
|
|
height: 24px; |
|
|
|
justify-content: center; |
|
|
|
align-items: center; |
|
|
|
background: #e5f0ff; |
|
|
|
border-radius: 15px; |
|
|
|
color: #333333; |
|
|
|
} |
|
|
|
|
|
|
|
.table-cent > div:nth-of-type(1) { |
|
|
|
width: 10%; |
|
|
|
text-align: center; |
|
|
|
font-size: 14px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
color: #32363d; |
|
|
|
} |
|
|
|
|
|
|
|
.table-cent > div:nth-of-type(2) { |
|
|
|
width: 40%; |
|
|
|
text-align: center; |
|
|
|
font-size: 14px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
color: #32363d; |
|
|
|
} |
|
|
|
|
|
|
|
.table-cent > div:nth-of-type(3) { |
|
|
|
width: 25%; |
|
|
|
text-align: center; |
|
|
|
font-size: 14px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
color: #32363d; |
|
|
|
} |
|
|
|
|
|
|
|
.table-cent > div:nth-of-type(4) { |
|
|
|
width: 25%; |
|
|
|
text-align: center; |
|
|
|
font-size: 14px; |
|
|
|
font-family: PingFangSC-Semibold, PingFang SC; |
|
|
|
color: #32363d; |
|
|
|
} |
|
|
|
|
|
|
|
.indeclass { |
|
|
|
width: 20px; |
|
|
|
height: 20px; |
|
|
|
border-radius: 50%; |
|
|
|
background: #ecf1ff; |
|
|
|
color: #ffffff; |
|
|
|
text-align: center; |
|
|
|
line-height: 20px; |
|
|
|
font-size: 14px; |
|
|
|
} |
|
|
|
|
|
|
|
.app-top { |
|
|
|
// width: 100%; |
|
|
|
// width: calc(100% - 270px); |
|
|
|
position: sticky; |
|
|
|
top: 0; |
|
|
|
z-index: 999; |
|
|
|
margin-top: -16px; |
|
|
|
background: #ffffff; |
|
|
|
// box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.04); |
|
|
|
box-shadow: 0px 0px 10px 0px #dadada; |
|
|
|
border-radius: 4px; |
|
|
|
padding-top: 15px; |
|
|
|
padding-bottom: 15px; |
|
|
|
width: 100%; |
|
|
|
|
|
|
|
.app-titel2 { |
|
|
|
position: relative; |
|
|
|
width: 100%; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
|
|
|
|
.titel-text { |
|
|
|
height: 100%; |
|
|
|
font-size: 16px; |
|
|
|
color: #32363d; |
|
|
|
text-indent: 30px; |
|
|
|
} |
|
|
|
|
|
|
|
.toptimeqhuan { |
|
|
|
width: 190px; |
|
|
|
height: 32px; |
|
|
|
background: #ffffff; |
|
|
|
border-radius: 4px; |
|
|
|
border: 1px solid #e0e0e0; |
|
|
|
display: flex; |
|
|
|
align-items: center; |
|
|
|
overflow: hidden; |
|
|
|
margin-left: 20px; |
|
|
|
cursor: pointer; |
|
|
|
} |
|
|
|
|
|
|
|
.toptimeqhuan div { |
|
|
|
flex: 1; |
|
|
|
text-align: center; |
|
|
|
line-height: 32px; |
|
|
|
font-size: 14px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
/deep/ .el-button--primary { |
|
|
|
background: #2671e2 !important; |
|
|
|
border: 1px solid #2671e2 !important; |
|
|
|
} |
|
|
|
</style> |