@@ -26,7 +26,7 @@ | |||||
>搜索</el-button | >搜索</el-button | ||||
> | > | ||||
</div> | </div> | ||||
<div class="con"> | |||||
<div class="cons"> | |||||
<div | <div | ||||
v-for="item in list" | v-for="item in list" | ||||
:key="item.id" | :key="item.id" | ||||
@@ -48,33 +48,6 @@ | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<!-- <div class="content"> | |||||
<div class="search"> | |||||
<el-input | |||||
placeholder="请输入内容" | |||||
style="width: 200px; margin-left: 40px; margin-right: 30px" | |||||
v-model="agentName" | |||||
clearable | |||||
> | |||||
</el-input> | |||||
<el-button | |||||
style="height: 32px; line-height: 13px" | |||||
type="primary" | |||||
size="medium" | |||||
@click="getAgentList" | |||||
>搜索</el-button | |||||
> | |||||
</div> | |||||
<el-row :gutter="20"> | |||||
<el-col class="tab" v-for="item in list" :key="item.id"> | |||||
<div> | |||||
<div>{{ item.agentName }}</div> | |||||
<div>服务状态{{ item.residueTime > 0 ? "未过期" : "已过期" }}</div> | |||||
<div>{{ item.address }}</div> | |||||
</div> | |||||
</el-col> | |||||
</el-row> | |||||
</div> --> | |||||
<div class="content" v-if="flag == 2"> | <div class="content" v-if="flag == 2"> | ||||
<div class="search"> | <div class="search"> | ||||
<el-input | <el-input | ||||
@@ -92,7 +65,7 @@ | |||||
>搜索</el-button | >搜索</el-button | ||||
> | > | ||||
</div> | </div> | ||||
<div class="con"> | |||||
<div class="cons"> | |||||
<div | <div | ||||
v-for="item in list" | v-for="item in list" | ||||
:key="item.id" | :key="item.id" | ||||
@@ -101,14 +74,6 @@ | |||||
@click="chose(item)" | @click="chose(item)" | ||||
> | > | ||||
<div class="text-1">{{ item.name }}</div> | <div class="text-1">{{ item.name }}</div> | ||||
<!-- <div class="text-2"> | |||||
服务状态: | |||||
<span | |||||
style="font-size: 12px" | |||||
:style="item.residueTime > 0 ? 'color:green;' : 'color:red;'" | |||||
>{{ item.residueTime > 0 ? "服务中" : "已过期" }}</span | |||||
> | |||||
</div> --> | |||||
<div class="text-3"> | <div class="text-3"> | ||||
区域位置:{{ | 区域位置:{{ | ||||
(item.provinceName || "-") + "-" + (item.cityName || "-") | (item.provinceName || "-") + "-" + (item.cityName || "-") | ||||
@@ -162,12 +127,11 @@ | |||||
>搜索</el-button | >搜索</el-button | ||||
> | > | ||||
</div> | </div> | ||||
<div class="con"> | |||||
<div class="cons"> | |||||
<div | <div | ||||
v-for="item in list" | v-for="item in list" | ||||
:key="item.id" | :key="item.id" | ||||
class="tab" | class="tab" | ||||
style="width: 220px; height: 130px" | |||||
@click="chose(item)" | @click="chose(item)" | ||||
> | > | ||||
<div class="text-1">{{ item.propertyName }}</div> | <div class="text-1">{{ item.propertyName }}</div> | ||||
@@ -475,6 +439,7 @@ export default { | |||||
height: 100vh; | height: 100vh; | ||||
background: #ffffff; | background: #ffffff; | ||||
} | } | ||||
.head { | .head { | ||||
height: 64px; | height: 64px; | ||||
background: #2671e2; | background: #2671e2; | ||||
@@ -500,46 +465,55 @@ export default { | |||||
color: #32363d; | color: #32363d; | ||||
} | } | ||||
.content { | .content { | ||||
// width: 100%; | |||||
margin-top: 30px; | margin-top: 30px; | ||||
padding: 0 20%; | padding: 0 20%; | ||||
// height: 680px; | // height: 680px; | ||||
min-height: 500px; | |||||
.con { | |||||
display: flex; | |||||
flex-wrap: wrap; | |||||
} | |||||
height: 600px; | |||||
overflow: auto; | |||||
.search { | .search { | ||||
padding: 10px 0; | |||||
position: sticky; | |||||
top: 0; | |||||
display: flex; | display: flex; | ||||
background: #fff; | |||||
} | } | ||||
.tab { | |||||
width: 200px; | |||||
height: 98px; | |||||
border-radius: 4px; | |||||
border: 1px solid #e0e0e0; | |||||
box-sizing: border-box; | |||||
padding-left: 20px; | |||||
margin-left: 40px; | |||||
.cons { | |||||
margin-top: 20px; | margin-top: 20px; | ||||
cursor: pointer; | |||||
.text-1 { | |||||
font-size: 16px; | |||||
line-height: 30px; | |||||
margin-top: 10px; | |||||
white-space: nowrap; | |||||
overflow: hidden; /*超出部分省略号显示*/ | |||||
text-overflow: ellipsis; /*省略号显示*/ | |||||
} | |||||
.text-2 { | |||||
font-size: 14px; | |||||
line-height: 30px; | |||||
} | |||||
.text-3 { | |||||
font-size: 14px; | |||||
line-height: 20px; | |||||
margin-bottom: 10px; | |||||
white-space: nowrap; | |||||
overflow: hidden; /*超出部分省略号显示*/ | |||||
text-overflow: ellipsis; /*省略号显示*/ | |||||
width: 1100px; | |||||
// max-height: 400px; | |||||
display: grid; | |||||
grid-template-columns: repeat(5, 210px); | |||||
grid-gap: 20px; | |||||
.tab { | |||||
width: 100%; | |||||
padding: 10px 20px; | |||||
border-radius: 4px; | |||||
border: 1px solid #e0e0e0; | |||||
box-sizing: border-box; | |||||
cursor: pointer; | |||||
.text-1 { | |||||
font-size: 16px; | |||||
line-height: 30px; | |||||
white-space: nowrap; | |||||
overflow: hidden; /*超出部分省略号显示*/ | |||||
text-overflow: ellipsis; /*省略号显示*/ | |||||
} | |||||
.text-2 { | |||||
font-size: 14px; | |||||
line-height: 30px; | |||||
} | |||||
.text-3 { | |||||
font-size: 14px; | |||||
line-height: 20px; | |||||
white-space: nowrap; | |||||
overflow: hidden; /*超出部分省略号显示*/ | |||||
text-overflow: ellipsis; /*省略号显示*/ | |||||
} | |||||
} | } | ||||
} | } | ||||
.tab:hover { | .tab:hover { | ||||
@@ -68,13 +68,15 @@ class IndexDBCache { | |||||
let request = objectStore.get(key) | let request = objectStore.get(key) | ||||
// 操作成功 | // 操作成功 | ||||
request.onsuccess = () => { | request.onsuccess = () => { | ||||
console.log('拿到数据了') | |||||
request.result.optionData = JSON.parse(request.result.optionData, this.deserialize) | |||||
resolve(request.result) | |||||
if (request.result) { | |||||
request.result.optionData = JSON.parse(request.result.optionData, this.deserialize) | |||||
resolve(request.result) | |||||
} else { | |||||
reject("获取失败") | |||||
} | |||||
} | } | ||||
// 操作失败 | // 操作失败 | ||||
request.onerror = (event) => { | request.onerror = (event) => { | ||||
console.log('获取失败') | |||||
reject(event) | reject(event) | ||||
} | } | ||||
}) | }) | ||||
@@ -4,7 +4,7 @@ | |||||
<div class="app-top"> | <div class="app-top"> | ||||
<div class="app-titel" style="margin-top: 15px"> | <div class="app-titel" style="margin-top: 15px"> | ||||
<div class="label">合同结束日期:</div> | <div class="label">合同结束日期:</div> | ||||
<div> | |||||
<div class="labelRight"> | |||||
<el-date-picker | <el-date-picker | ||||
@change="confirmtime" | @change="confirmtime" | ||||
v-model="timelist" | v-model="timelist" | ||||
@@ -18,8 +18,9 @@ | |||||
> | > | ||||
</el-date-picker> | </el-date-picker> | ||||
</div> | </div> | ||||
<div class="label">服务状态:</div> | <div class="label">服务状态:</div> | ||||
<div> | |||||
<div class="labelRight"> | |||||
<el-select | <el-select | ||||
v-model="serviceStatus" | v-model="serviceStatus" | ||||
clearable | clearable | ||||
@@ -37,8 +38,20 @@ | |||||
</el-select> | </el-select> | ||||
</div> | </div> | ||||
<div class="div-lab"> | |||||
<div class="label" style="line-height: 30px">地区:</div> | |||||
<div class="label">代理商名称:</div> | |||||
<div class="labelRight"> | |||||
<el-input | |||||
class="div-inp" | |||||
maxlength="30" | |||||
placeholder="代理商名称" | |||||
clearable | |||||
v-model="agentName" | |||||
></el-input> | |||||
</div> | |||||
</div> | |||||
<div class="app-titel" style="margin-top: 15px"> | |||||
<div class="label" style="line-height: 30px">地区:</div> | |||||
<div class="labelRight"> | |||||
<el-cascader | <el-cascader | ||||
:props="props1" | :props="props1" | ||||
@change="locationsChange1" | @change="locationsChange1" | ||||
@@ -51,21 +64,8 @@ | |||||
clearable | clearable | ||||
></el-cascader> | ></el-cascader> | ||||
</div> | </div> | ||||
</div> | |||||
<div class="app-titel" style="margin-top: 15px"> | |||||
<div class="label">代理商名称:</div> | |||||
<div> | |||||
<el-input | |||||
class="div-inp" | |||||
maxlength="30" | |||||
placeholder="代理商名称" | |||||
clearable | |||||
v-model="agentName" | |||||
></el-input> | |||||
</div> | |||||
<div class="label">运营人员:</div> | <div class="label">运营人员:</div> | ||||
<div> | |||||
<!-- <el-input maxlength="10" class="div-inp" clearable v-model="operationalName"></el-input> --> | |||||
<div class="labelRight"> | |||||
<el-select | <el-select | ||||
v-model="operationalId" | v-model="operationalId" | ||||
placeholder="请选择" | placeholder="请选择" | ||||
@@ -566,7 +566,6 @@ export default { | |||||
pageSize: 10, // 每页显示多少条 | pageSize: 10, // 每页显示多少条 | ||||
}, | }, | ||||
props: { | props: { | ||||
lazy: true, | lazy: true, | ||||
async lazyLoad(node, resolve) { | async lazyLoad(node, resolve) { | ||||
@@ -712,9 +711,7 @@ export default { | |||||
trigger: "blur", | trigger: "blur", | ||||
}, | }, | ||||
], | ], | ||||
linkmanPhone: [ | |||||
{ validator: validatePass1, trigger: "blur" }, | |||||
], | |||||
linkmanPhone: [{ validator: validatePass1, trigger: "blur" }], | |||||
}, | }, | ||||
editorrules: { | editorrules: { | ||||
agentName: [ | agentName: [ | ||||
@@ -730,9 +727,7 @@ export default { | |||||
address: [ | address: [ | ||||
{ required: false, message: "请输入详细地址", trigger: "blur" }, | { required: false, message: "请输入详细地址", trigger: "blur" }, | ||||
], | ], | ||||
linkmanPhone: [ | |||||
{ validator: validatePass1, trigger: "blur" }, | |||||
], | |||||
linkmanPhone: [{ validator: validatePass1, trigger: "blur" }], | |||||
}, | }, | ||||
operaForm: { | operaForm: { | ||||
operationalPeople: "", | operationalPeople: "", | ||||
@@ -770,7 +765,7 @@ export default { | |||||
computed: { | computed: { | ||||
...mapGetters(["permissions"]), | ...mapGetters(["permissions"]), | ||||
}, | }, | ||||
watch: { | watch: { | ||||
showColumn(nowV) { | showColumn(nowV) { | ||||
let params = { | let params = { | ||||
@@ -802,7 +797,6 @@ export default { | |||||
this.getAgentList(); | this.getAgentList(); | ||||
}, | }, | ||||
methods: { | methods: { | ||||
// 获取当前页面的显隐 | // 获取当前页面的显隐 | ||||
setTableOption() { | setTableOption() { | ||||
this.$db.getDataByKey(this.tableIdName).then((res) => { | this.$db.getDataByKey(this.tableIdName).then((res) => { | ||||
@@ -1299,9 +1293,12 @@ export default { | |||||
color: #32363d; | color: #32363d; | ||||
line-height: 14px; | line-height: 14px; | ||||
margin-left: 15px; | margin-left: 15px; | ||||
min-width: 100px; | |||||
width: 120px; | |||||
text-align: right; | text-align: right; | ||||
} | } | ||||
.labelRight { | |||||
width: 250px; | |||||
} | |||||
.toptimeqhuan { | .toptimeqhuan { | ||||
height: 30px; | height: 30px; | ||||
@@ -21,12 +21,10 @@ export default { | |||||
{ | { | ||||
label: "代理商", | label: "代理商", | ||||
prop: "agentName", | prop: "agentName", | ||||
width: "120px", | |||||
}, | }, | ||||
{ | { | ||||
label: "地区", | label: "地区", | ||||
prop: "provinceName", | prop: "provinceName", | ||||
width: "120px", | |||||
formatter: (data) => { | formatter: (data) => { | ||||
return `${data.provinceName || '-'}${data.cityName || ''}` | return `${data.provinceName || '-'}${data.cityName || ''}` | ||||
} | } | ||||
@@ -34,7 +32,6 @@ export default { | |||||
{ | { | ||||
label: "联系人信息", | label: "联系人信息", | ||||
prop: "linkman", | prop: "linkman", | ||||
width: "110px", | |||||
formatter: (data) => { | formatter: (data) => { | ||||
return `${data.linkman}-${data.linkmanPhone}` | return `${data.linkman}-${data.linkmanPhone}` | ||||
} | } | ||||
@@ -18,35 +18,60 @@ | |||||
> | > | ||||
</el-date-picker> | </el-date-picker> | ||||
</div> | </div> | ||||
<div class="div-lab"> | |||||
<div class="label">设备编号:</div> | |||||
<el-input | |||||
v-model="searchForm.imei" | |||||
clearable | |||||
placeholder="请输入" | |||||
style="width: 250px" | |||||
> | |||||
</el-input> | |||||
</div> | |||||
<div class="div-lab"> | <div class="div-lab"> | ||||
<div class="label">项目名称:</div> | |||||
<el-input | <el-input | ||||
v-model="changeValue" | |||||
v-model="searchForm.houseName" | |||||
clearable | clearable | ||||
placeholder="请输入" | placeholder="请输入" | ||||
maxlength="20" | maxlength="20" | ||||
@change="selectChange" | |||||
style="width: 363px" | |||||
style="width: 250px" | |||||
> | > | ||||
<el-select | |||||
v-model="selflag" | |||||
slot="prepend" | |||||
class="input-with-select" | |||||
style="width: 115px" | |||||
placeholder="请选择" | |||||
@change="selChange" | |||||
> | |||||
<el-option label="设备编号" value="1"></el-option> | |||||
<!-- <el-option label="版本号" value="2"></el-option> --> | |||||
<el-option label="批次号" value="3"></el-option> | |||||
<el-option label="代理商名称" value="4"></el-option> | |||||
<el-option label="公司名称" value="5"></el-option> | |||||
<el-option label="项目名称" value="6"></el-option> | |||||
</el-select> | |||||
</el-input> | </el-input> | ||||
</div> | </div> | ||||
<div class="div-lab"> | <div class="div-lab"> | ||||
<div class="label">批次号:</div> | |||||
<el-input | |||||
v-model="searchForm.batchId" | |||||
clearable | |||||
placeholder="请输入" | |||||
style="width: 250px" | |||||
> | |||||
</el-input> | |||||
</div> | |||||
<div class="div-lab" v-if="isOpen"> | |||||
<div class="label">代理商名称:</div> | |||||
<el-input | |||||
v-model="searchForm.agentName" | |||||
clearable | |||||
placeholder="请输入" | |||||
style="width: 250px" | |||||
> | |||||
</el-input> | |||||
</div> | |||||
<div class="div-lab" v-if="isOpen"> | |||||
<div class="label">公司名称:</div> | |||||
<el-input | |||||
v-model="searchForm.orgName" | |||||
clearable | |||||
placeholder="请输入" | |||||
style="width: 250px" | |||||
> | |||||
</el-input> | |||||
</div> | |||||
<div class="div-lab" v-if="isOpen"> | |||||
<div class="label">设备状态:</div> | <div class="label">设备状态:</div> | ||||
<el-select | <el-select | ||||
class="div-inp" | class="div-inp" | ||||
@@ -66,7 +91,7 @@ | |||||
</el-select> | </el-select> | ||||
</div> | </div> | ||||
<div class="div-lab"> | |||||
<div class="div-lab" v-if="isOpen"> | |||||
<div class="label">领用状态:</div> | <div class="label">领用状态:</div> | ||||
<el-select | <el-select | ||||
class="div-inp" | class="div-inp" | ||||
@@ -88,12 +113,21 @@ | |||||
</div> | </div> | ||||
<div style="display: flex"> | <div style="display: flex"> | ||||
<div class="app-titel" style="margin-top: 15px"> | <div class="app-titel" style="margin-top: 15px"> | ||||
<!-- <div class="label" style="color: #ffffff">筛选相关:</div> --> | |||||
<div style="margin-left: 20px"> | <div style="margin-left: 20px"> | ||||
<el-button type="primary" @click="screen">筛选</el-button> | <el-button type="primary" @click="screen">筛选</el-button> | ||||
</div> | </div> | ||||
<div style="margin-left: 20px"> | <div style="margin-left: 20px"> | ||||
<el-button @click="reset" type="text">清空筛选条件</el-button> | <el-button @click="reset" type="text">清空筛选条件</el-button> | ||||
<el-button | |||||
style="margin-left: 10px" | |||||
@click="isOpen = !isOpen" | |||||
type="text" | |||||
>{{ isOpen ? "收起" : "展开" | |||||
}}<i | |||||
style="margin-left: 5px" | |||||
:class="isOpen ? 'el-icon-arrow-up' : 'el-icon-arrow-down'" | |||||
></i | |||||
></el-button> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="app-titel" style="margin-top: 15px"> | <div class="app-titel" style="margin-top: 15px"> | ||||
@@ -230,13 +264,6 @@ | |||||
clearable | clearable | ||||
></el-input> | ></el-input> | ||||
</el-form-item> | </el-form-item> | ||||
<!-- <el-form-item label="转写方式" prop="defaultTransliteration"> | |||||
<el-radio-group v-model="addForm.defaultTransliteration"> | |||||
<el-radio label="3">关闭转写</el-radio> | |||||
<el-radio label="6">科大讯飞</el-radio> | |||||
<el-radio label="9">思必驰</el-radio> | |||||
</el-radio-group> | |||||
</el-form-item> --> | |||||
<el-form-item label="批次号" prop="batchId"> | <el-form-item label="批次号" prop="batchId"> | ||||
<el-select | <el-select | ||||
v-model="addForm.batchId" | v-model="addForm.batchId" | ||||
@@ -354,12 +381,6 @@ | |||||
:rules="bindRules" | :rules="bindRules" | ||||
label-width="100px" | label-width="100px" | ||||
> | > | ||||
<!-- <el-form-item label="绑定" prop="choic"> | |||||
<el-radio-group v-model="bindForm.choic"> | |||||
<el-radio label="3">项目</el-radio> | |||||
<el-radio label="6">代理商</el-radio> | |||||
</el-radio-group> | |||||
</el-form-item> --> | |||||
<el-form-item label="项目" prop="houseId"> | <el-form-item label="项目" prop="houseId"> | ||||
<el-select | <el-select | ||||
filterable | filterable | ||||
@@ -606,6 +627,7 @@ export default { | |||||
pageSize: 30, // 每页显示多少条 | pageSize: 30, // 每页显示多少条 | ||||
}, | }, | ||||
isOpen: false, // 默认合起不用筛选的条件 | |||||
time: [], | time: [], | ||||
changeValue: "", | changeValue: "", | ||||
selflag: "1", | selflag: "1", | ||||
@@ -863,34 +885,6 @@ export default { | |||||
this.searchForm.orgName = ""; | this.searchForm.orgName = ""; | ||||
this.searchForm.houseName = ""; | this.searchForm.houseName = ""; | ||||
}, | }, | ||||
selectChange(e) { | |||||
this.searchForm.imei = ""; | |||||
this.searchForm.batchId = ""; | |||||
this.searchForm.agentName = ""; | |||||
this.searchForm.orgName = ""; | |||||
this.searchForm.houseName = ""; | |||||
if (!e) retun; | |||||
if (this.selflag == 1) { | |||||
// 设备编号 | |||||
this.searchForm.imei = e; | |||||
} | |||||
if (this.selflag == 3) { | |||||
// 批次号 | |||||
this.searchForm.batchId = e; | |||||
} | |||||
if (this.selflag == 4) { | |||||
// 代理商名称 | |||||
this.searchForm.agentName = e; | |||||
} | |||||
if (this.selflag == 5) { | |||||
// 公司名称 | |||||
this.searchForm.orgName = e; | |||||
} | |||||
if (this.selflag == 6) { | |||||
// 项目名称 | |||||
this.searchForm.houseName = e; | |||||
} | |||||
}, | |||||
reset() { | reset() { | ||||
this.changeValue = ""; | this.changeValue = ""; | ||||
this.searchForm = { | this.searchForm = { | ||||
@@ -1453,6 +1447,10 @@ export default { | |||||
.div-lab { | .div-lab { | ||||
display: flex; | display: flex; | ||||
margin: 5px; | margin: 5px; | ||||
.label { | |||||
width: 100px; | |||||
text-align: right; | |||||
} | |||||
} | } | ||||
.div-inp { | .div-inp { | ||||
width: 250px; | width: 250px; | ||||
@@ -4,25 +4,23 @@ | |||||
<div class="app-top"> | <div class="app-top"> | ||||
<div class="app-titel" style="margin-top: 5px"> | <div class="app-titel" style="margin-top: 5px"> | ||||
<div class="div-lab"> | <div class="div-lab"> | ||||
<div class="label">设备编号:</div> | |||||
<el-input | <el-input | ||||
v-model="changeValue" | |||||
v-model="searchForm.equipImei" | |||||
clearable | |||||
placeholder="请输入" | |||||
maxlength="20" | |||||
> | |||||
</el-input> | |||||
</div> | |||||
<div class="div-lab"> | |||||
<div class="label">领用人:</div> | |||||
<el-input | |||||
v-model="searchForm.userName" | |||||
clearable | clearable | ||||
placeholder="请输入" | placeholder="请输入" | ||||
maxlength="20" | maxlength="20" | ||||
@change="selectChange" | |||||
style="width: 363px" | |||||
> | > | ||||
<el-select | |||||
v-model="selflag" | |||||
slot="prepend" | |||||
class="input-with-select" | |||||
style="width: 115px" | |||||
placeholder="请选择" | |||||
@change="selChange" | |||||
> | |||||
<el-option label="设备编号" value="1"></el-option> | |||||
<el-option label="领用人" value="2"></el-option> | |||||
</el-select> | |||||
</el-input> | </el-input> | ||||
</div> | </div> | ||||
@@ -38,7 +38,7 @@ | |||||
> | > | ||||
<el-option | <el-option | ||||
v-for="item in dataList" | v-for="item in dataList" | ||||
:key="item.orgCode" | |||||
:key="item.id" | |||||
:label="item.name" | :label="item.name" | ||||
:value="item.orgCode" | :value="item.orgCode" | ||||
> | > | ||||
@@ -97,30 +97,29 @@ | |||||
> | > | ||||
</el-date-picker> | </el-date-picker> | ||||
</div> | </div> | ||||
<div class="div-lab"> | |||||
<div class="label">设备编号:</div> | |||||
<el-input | |||||
v-model="searchForm.imei" | |||||
clearable | |||||
placeholder="请输入" | |||||
style="width: 250px" | |||||
> | |||||
</el-input> | |||||
</div> | |||||
<div class="div-lab"> | <div class="div-lab"> | ||||
<div class="label">项目名称:</div> | |||||
<el-input | <el-input | ||||
v-model="changeValue" | |||||
v-model="searchForm.houseName" | |||||
clearable | clearable | ||||
placeholder="请输入" | placeholder="请输入" | ||||
maxlength="20" | maxlength="20" | ||||
@change="selectChange" | |||||
style="width: 363px" | |||||
style="width: 250px" | |||||
> | > | ||||
<el-select | |||||
v-model="selflag" | |||||
slot="prepend" | |||||
class="input-with-select" | |||||
style="width: 115px" | |||||
placeholder="请选择" | |||||
@change="selChange" | |||||
> | |||||
<el-option label="设备编号" value="1"></el-option> | |||||
<el-option label="项目名称" value="6"></el-option> | |||||
</el-select> | |||||
</el-input> | </el-input> | ||||
</div> | </div> | ||||
<div class="div-lab"> | |||||
<div class="div-lab" v-if="isOpen"> | |||||
<div class="label">领用状态:</div> | <div class="label">领用状态:</div> | ||||
<el-select | <el-select | ||||
class="div-inp" | class="div-inp" | ||||
@@ -544,6 +543,7 @@ import { exportMethodPost } from "@/util/util"; | |||||
export default { | export default { | ||||
data() { | data() { | ||||
return { | return { | ||||
filtterOptionName: "EquipmentStateFiltter", // 当前页面筛选数据存储键值 | |||||
tableIdName: "EquipmentState", // 当前页面需要的变量 | tableIdName: "EquipmentState", // 当前页面需要的变量 | ||||
tableOption: this.$tableOption.EquipmentState, // 当前table配置项 | tableOption: this.$tableOption.EquipmentState, // 当前table配置项 | ||||
tableLoading: false, // 是否显示加载中 | tableLoading: false, // 是否显示加载中 | ||||
@@ -713,7 +713,6 @@ export default { | |||||
value: "", | value: "", | ||||
input: "", | input: "", | ||||
time: [], | time: [], | ||||
selflag: "1", | |||||
changeValue: "", | changeValue: "", | ||||
tableData: [], | tableData: [], | ||||
multipleSelection: [], | multipleSelection: [], | ||||
@@ -754,10 +753,22 @@ export default { | |||||
}; | }; | ||||
this.$db.upDate(params); | this.$db.upDate(params); | ||||
}, | }, | ||||
selValue(val) { | |||||
console.log(val, 'selValue') | |||||
}, | |||||
choicValue(val) { | |||||
console.log(val, 'choicValue') | |||||
}, | |||||
dataList(val) { | |||||
console.log(val, 'dataList') | |||||
} | |||||
}, | }, | ||||
created() { | created() { | ||||
// 获取缓存的页面数据 | |||||
this.getFiltterOption(); | |||||
// 获取显隐的列表 | // 获取显隐的列表 | ||||
this.setTableOption(); | this.setTableOption(); | ||||
this.equ_state_open = this.permissions["equ_state_open"]; | this.equ_state_open = this.permissions["equ_state_open"]; | ||||
this.equ_state_off = this.permissions["equ_state_off"]; | this.equ_state_off = this.permissions["equ_state_off"]; | ||||
this.equ_state_back = this.permissions["equ_state_back"]; | this.equ_state_back = this.permissions["equ_state_back"]; | ||||
@@ -782,12 +793,53 @@ export default { | |||||
} | } | ||||
} | } | ||||
if (this.$route.query.selValue) this.selValue = this.$route.query.selValue; | if (this.$route.query.selValue) this.selValue = this.$route.query.selValue; | ||||
// asd | |||||
this.getList(); | |||||
// 获取列表 | // 获取列表 | ||||
this.zkhousePage(); | this.zkhousePage(); | ||||
}, | }, | ||||
beforeDestroy() { | |||||
// console.log(this.searchForm, '我被销毁了') | |||||
this.setFiltterOption(); | |||||
}, | |||||
methods: { | methods: { | ||||
// 缓存 | |||||
setFiltterOption() { | |||||
const params = { | |||||
tableIdName: this.filtterOptionName, | |||||
optionData: { | |||||
houseTypes: this.houseTypes, | |||||
selValue: this.selValue, | |||||
choicValue: this.choicValue, | |||||
time: this.time, | |||||
changeValue: this.changeValue, | |||||
searchForm: this.searchForm, | |||||
dataList: this.dataList, | |||||
isOpen: this.isOpen | |||||
}, | |||||
}; | |||||
console.log(this.dataList, this.selValue); | |||||
console.log(params.optionData); | |||||
this.$db.upDate(params); | |||||
}, | |||||
// 获取当前页面筛选条件 | |||||
getFiltterOption() { | |||||
this.$db.getDataByKey(this.filtterOptionName).then((res) => { | |||||
console.log(res.optionData.dataList); | |||||
this.searchForm = res.optionData.searchForm; | |||||
this.houseTypes = res.optionData.houseTypes; | |||||
this.selValue = res.optionData.selValue; | |||||
this.choicValue = res.optionData.choicValue; | |||||
this.time = res.optionData.time; | |||||
this.changeValue = res.optionData.changeValue; | |||||
this.dataList = res.optionData.dataList; | |||||
this.isOpen = res.optionData.isOpen; | |||||
this.getTableList(); | |||||
}).catch(e => { | |||||
// 获取不到本地存储的数据在调用获取详细列表 | |||||
this.getList(); | |||||
}); | |||||
}, | |||||
// 获取当前页面的显隐 | // 获取当前页面的显隐 | ||||
setTableOption() { | setTableOption() { | ||||
this.$db.getDataByKey(this.tableIdName).then((res) => { | this.$db.getDataByKey(this.tableIdName).then((res) => { | ||||
@@ -1336,44 +1388,6 @@ export default { | |||||
this.searchForm.endDate = ""; | this.searchForm.endDate = ""; | ||||
} | } | ||||
}, | }, | ||||
selChange() { | |||||
this.changeValue = ""; | |||||
this.searchForm.imei = ""; | |||||
this.searchForm.batchId = ""; | |||||
this.searchForm.agentName = ""; | |||||
this.searchForm.orgName = ""; | |||||
this.searchForm.houseName = ""; | |||||
this.searchForm.userName = ""; | |||||
}, | |||||
selectChange(e) { | |||||
this.searchForm.imei = ""; | |||||
this.searchForm.batchId = ""; | |||||
this.searchForm.agentName = ""; | |||||
this.searchForm.orgName = ""; | |||||
this.searchForm.houseName = ""; | |||||
this.searchForm.userName = ""; | |||||
if (!e) return; | |||||
if (this.selflag == 1) { | |||||
// 设备编号 | |||||
this.searchForm.imei = e; | |||||
} | |||||
if (this.selflag == 3) { | |||||
// 批次号 | |||||
this.searchForm.batchId = e; | |||||
} | |||||
if (this.selflag == 4) { | |||||
// 代理商名称 | |||||
this.searchForm.agentName = e; | |||||
} | |||||
if (this.selflag == 5) { | |||||
// 公司名称 | |||||
this.searchForm.orgName = e; | |||||
} | |||||
if (this.selflag == 6) { | |||||
// 项目名称 | |||||
this.searchForm.houseName = e; | |||||
} | |||||
}, | |||||
handleSelectionChange(val) { | handleSelectionChange(val) { | ||||
this.multipleSelection = val; | this.multipleSelection = val; | ||||
}, | }, | ||||
@@ -99,7 +99,7 @@ export default { | |||||
label: '关机类型', | label: '关机类型', | ||||
prop: "offStatus", | prop: "offStatus", | ||||
formatter: row => { | formatter: row => { | ||||
return row.offStatus == 1 ? "正常关机" : row.offStatus == 2 ? "低电关机" : row.offStatus == 3 ? "异常关机" : "" | |||||
return row.offStatus == 1 ? "正常关机" : row.offStatus == 2 ? "低电关机" : row.offStatus == 3 ? "异常关机" : "-" | |||||
} | } | ||||
}, | }, | ||||
] | ] | ||||
@@ -124,7 +124,6 @@ | |||||
prop="activeCustomer" | prop="activeCustomer" | ||||
label="未标顾问" | label="未标顾问" | ||||
align="center" | align="center" | ||||
width="100" | |||||
sortable="custom" | sortable="custom" | ||||
> | > | ||||
<template slot-scope="{ row }"> {{ row.unTagCustomer }}个 </template> | <template slot-scope="{ row }"> {{ row.unTagCustomer }}个 </template> | ||||
@@ -133,7 +132,6 @@ | |||||
v-if="tabFlag == 1" | v-if="tabFlag == 1" | ||||
prop="prohibitedCustomer" | prop="prohibitedCustomer" | ||||
label="违禁接待次数" | label="违禁接待次数" | ||||
width="120" | |||||
align="center" | align="center" | ||||
sortable="custom" | sortable="custom" | ||||
> | > | ||||
@@ -146,7 +144,6 @@ | |||||
prop="prohibitedZb" | prop="prohibitedZb" | ||||
label="违禁接待占比" | label="违禁接待占比" | ||||
align="center" | align="center" | ||||
width="120" | |||||
sortable="custom" | sortable="custom" | ||||
> | > | ||||
<template slot-scope="{ row }"> {{ row.prohibitedZb }}% </template> | <template slot-scope="{ row }"> {{ row.prohibitedZb }}% </template> | ||||
@@ -157,7 +154,6 @@ | |||||
label="接待时长" | label="接待时长" | ||||
align="center" | align="center" | ||||
sortable="custom" | sortable="custom" | ||||
width="110" | |||||
> | > | ||||
<template slot-scope="{ row }"> | <template slot-scope="{ row }"> | ||||
{{ Math.floor(row.sumDuration / 60) }}分钟 | {{ Math.floor(row.sumDuration / 60) }}分钟 | ||||
@@ -169,7 +165,6 @@ | |||||
label="销讲执行率" | label="销讲执行率" | ||||
align="center" | align="center" | ||||
sortable="custom" | sortable="custom" | ||||
width="120" | |||||
> | > | ||||
<template slot-scope="{ row }" style="text-align: center"> | <template slot-scope="{ row }" style="text-align: center"> | ||||
{{ row.fraction }}% | {{ row.fraction }}% | ||||
@@ -181,7 +176,6 @@ | |||||
:prop="item.props" | :prop="item.props" | ||||
:label="item.label" | :label="item.label" | ||||
align="center" | align="center" | ||||
width="100" | |||||
> | > | ||||
<template slot-scope="{ row }"> | <template slot-scope="{ row }"> | ||||
{{ row[item.props] }}{{ tabFlag == 0 ? "%" : "" }}</template | {{ row[item.props] }}{{ tabFlag == 0 ? "%" : "" }}</template | ||||
@@ -22,34 +22,7 @@ | |||||
</el-select> | </el-select> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<!-- <div class="app-titel"> | |||||
<div style="text-indent: 30px; min-width: 100px;font-weight:bold;">接待时间:</div> | |||||
<div class="toptimeqhuan"> | |||||
<div :class="{ tophove: TimetoAhoose == 4 }" @click="tabtimetap(4)"> | |||||
近7天 | |||||
</div> | |||||
<div :class="{ tophove: TimetoAhoose == 5 }" @click="tabtimetap(5)"> | |||||
近15天 | |||||
</div> | |||||
<div :class="{ tophove: TimetoAhoose == 6 }" @click="tabtimetap(6)"> | |||||
近30天 | |||||
</div> | |||||
</div> | |||||
<div style="margin-left: 26px"> | |||||
<el-date-picker | |||||
v-model="customtime" | |||||
:clearable="false" | |||||
@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> | |||||
</div> --> | |||||
<div class="app-titel projectBackend"> | <div class="app-titel projectBackend"> | ||||
<div class="titel-text">筛选日期:</div> | <div class="titel-text">筛选日期:</div> | ||||
<div style="margin-left: 14px"> | <div style="margin-left: 14px"> | ||||
@@ -349,7 +322,6 @@ | |||||
? "合计/平均" | ? "合计/平均" | ||||
: scope.row.statDate.substring(0, 10) | : scope.row.statDate.substring(0, 10) | ||||
}} | }} | ||||
<!-- {{scope.$index}} --> | |||||
</template> | </template> | ||||
</el-table-column> | </el-table-column> | ||||
<el-table-column | <el-table-column | ||||
@@ -367,36 +339,6 @@ | |||||
label="违禁接待次数" | label="违禁接待次数" | ||||
align="center" | align="center" | ||||
> | > | ||||
</el-table-column | |||||
>> | |||||
<el-table-column prop="statDate" label="日期" align="center"> | |||||
<template slot-scope="scope"> | |||||
{{ | |||||
scope.$index == tableData.length - 1 | |||||
? "合计/平均" | |||||
: scope.row.statDate.substring(0, 10) | |||||
}} | |||||
<!-- {{scope.$index}} --> | |||||
</template> | |||||
</el-table-column> | |||||
<el-table-column | |||||
prop="activeCustomer" | |||||
label="接待量" | |||||
align="center" | |||||
> | |||||
<template slot-scope="{ row }"> | |||||
{{ row.activeCustomer }}次 | |||||
</template> | |||||
</el-table-column> | |||||
<el-table-column | |||||
v-if="tabFlag == 1" | |||||
prop="prohibitedCustomer" | |||||
label="违禁接待次数" | |||||
align="center" | |||||
> | |||||
<template slot-scope="{ row }"> | |||||
{{ row.prohibitedCustomer }}次 | |||||
</template> | |||||
</el-table-column> | </el-table-column> | ||||
<el-table-column | <el-table-column | ||||
v-if="tabFlag == 1" | v-if="tabFlag == 1" | ||||
@@ -407,20 +349,6 @@ | |||||
<template slot-scope="{ row }"> | <template slot-scope="{ row }"> | ||||
{{ row.prohibitedZb }}% | {{ row.prohibitedZb }}% | ||||
</template> | </template> | ||||
<!-- </el-table-column> | |||||
<el-table-column | |||||
v-if="tabFlag == 1" | |||||
prop="receivableEquipmentCount" | |||||
label="返现次数" | |||||
align="center" | |||||
> | |||||
</el-table-column> | |||||
<el-table-column | |||||
v-if="tabFlag == 1" | |||||
prop="receivableEquipmentCount" | |||||
label="过度保证次数" | |||||
align="center" | |||||
> --> | |||||
</el-table-column> | </el-table-column> | ||||
<el-table-column | <el-table-column | ||||
v-if="tabFlag == 0" | v-if="tabFlag == 0" | ||||
@@ -68,7 +68,7 @@ | |||||
<el-input v-model="changeValue" clearable placeholder="请输入" maxlength="10" @change="selectChange" | <el-input v-model="changeValue" clearable placeholder="请输入" maxlength="10" @change="selectChange" | ||||
style="width: 363px"> | style="width: 363px"> | ||||
<el-select v-model="selflag" slot="prepend" class="input-with-select" style="width: 115px" | <el-select v-model="selflag" slot="prepend" class="input-with-select" style="width: 115px" | ||||
placeholder="请选择" @change="selChange"> | |||||
placeholder="请选择" @change="selChange" :disabled="activeTotal == 1 || activeTotal == 2"> | |||||
<el-option v-if="activeTotal != 1" label="公司名称" value="1"></el-option> | <el-option v-if="activeTotal != 1" label="公司名称" value="1"></el-option> | ||||
<el-option v-if="activeTotal != 2" label="代理商名称" value="2"></el-option> | <el-option v-if="activeTotal != 2" label="代理商名称" value="2"></el-option> | ||||
<el-option v-if="activeTotal == 0" label="项目名称" value="3"></el-option> | <el-option v-if="activeTotal == 0" label="项目名称" value="3"></el-option> | ||||
@@ -71,6 +71,26 @@ | |||||
</el-option> | </el-option> | ||||
</el-select> | </el-select> | ||||
</div> | </div> | ||||
<div class="div-lab"> | |||||
<div class="label">项目名称:</div> | |||||
<el-select | |||||
class="div-inp" | |||||
v-model="searchForm.propertyName" | |||||
filterable | |||||
clearable | |||||
@change="houseChange" | |||||
placeholder="请选择项目" | |||||
> | |||||
<el-option | |||||
v-for="item in houseList" | |||||
:key="item.id" | |||||
:label="item.propertyName" | |||||
:value="item.propertyName" | |||||
> | |||||
</el-option> | |||||
</el-select> | |||||
</div> | |||||
<div class="div-lab" v-show="isOpen"> | <div class="div-lab" v-show="isOpen"> | ||||
<div class="label">地区:</div> | <div class="label">地区:</div> | ||||
<el-cascader | <el-cascader | ||||
@@ -130,28 +150,9 @@ | |||||
> | > | ||||
</el-input> | </el-input> | ||||
</div> | </div> | ||||
<div class="div-lab" v-show="isOpen"> | |||||
<div class="label">项目名称:</div> | |||||
<el-select | |||||
class="div-inp" | |||||
v-model="searchForm.propertyName" | |||||
filterable | |||||
clearable | |||||
@change="houseChange" | |||||
placeholder="请选择项目" | |||||
> | |||||
<el-option | |||||
v-for="item in houseList" | |||||
:key="item.id" | |||||
:label="item.propertyName" | |||||
:value="item.propertyName" | |||||
> | |||||
</el-option> | |||||
</el-select> | |||||
</div> | |||||
</div> | </div> | ||||
<div class="app-titel" style="margin-top: 10px"> | <div class="app-titel" style="margin-top: 10px"> | ||||
<div class="label" style="color: #ffffff">筛选相关:</div> | |||||
<div class="label" style="color: #ffffff">筛选相关:</div> | |||||
<div style="margin-left: 5px"> | <div style="margin-left: 5px"> | ||||
<el-button @click="screen" type="primary">筛选</el-button> | <el-button @click="screen" type="primary">筛选</el-button> | ||||
</div> | </div> | ||||