@@ -1055,3 +1055,19 @@ export function buyEquipmentQuantity(query) { | |||||
params:query | params:query | ||||
}) | }) | ||||
} | } | ||||
// 下载录音文件 | |||||
export function filedownload(query) { | |||||
return request({ | |||||
url: '/autoSR/zk/file/filedownload', | |||||
method:'get', | |||||
params:query | |||||
}) | |||||
} | |||||
// 洞察详情导出 | |||||
// export function dcCarReceptionRecord(query) { | |||||
// return request({ | |||||
// url: '/autoSR/matchKeywords/dcCarReceptionRecord', | |||||
// method:'get', | |||||
// params:query | |||||
// }) | |||||
// } |
@@ -105,7 +105,7 @@ | |||||
<el-table-column | <el-table-column | ||||
:show-overflow-tooltip="true" width="140px" | :show-overflow-tooltip="true" width="140px" | ||||
prop="provinceName,cityName" | prop="provinceName,cityName" | ||||
label="地址" | |||||
label="地区" | |||||
align="center" | align="center" | ||||
> | > | ||||
<template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template> | <template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template> | ||||
@@ -521,6 +521,7 @@ export default { | |||||
props1: { | props1: { | ||||
lazy: true, | lazy: true, | ||||
checkStrictly: true, | checkStrictly: true, | ||||
expandTrigger:'hover', | |||||
async lazyLoad(node, resolve) { | async lazyLoad(node, resolve) { | ||||
// console.log(node, 123); | // console.log(node, 123); | ||||
const { level } = node; | const { level } = node; | ||||
@@ -545,6 +546,8 @@ export default { | |||||
}; | }; | ||||
}); | }); | ||||
resolve(nodes); | resolve(nodes); | ||||
}else{ | |||||
resolve() | |||||
} | } | ||||
}, | }, | ||||
}, | }, | ||||
@@ -115,7 +115,7 @@ | |||||
:show-overflow-tooltip="true" | :show-overflow-tooltip="true" | ||||
width="120px" | width="120px" | ||||
prop="provinceName,cityName" | prop="provinceName,cityName" | ||||
label="公司地址" | |||||
label="公司地区" | |||||
align="center" | align="center" | ||||
> | > | ||||
<template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template> | <template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template> | ||||
@@ -599,6 +599,7 @@ export default { | |||||
props1: { | props1: { | ||||
lazy: true, | lazy: true, | ||||
checkStrictly: true, | checkStrictly: true, | ||||
expandTrigger:'hover', | |||||
async lazyLoad(node, resolve) { | async lazyLoad(node, resolve) { | ||||
// console.log(node, 123); | // console.log(node, 123); | ||||
const { level } = node; | const { level } = node; | ||||
@@ -623,6 +624,8 @@ export default { | |||||
}; | }; | ||||
}); | }); | ||||
resolve(nodes); | resolve(nodes); | ||||
}else{ | |||||
resolve() | |||||
} | } | ||||
}, | }, | ||||
}, | }, | ||||
@@ -101,7 +101,7 @@ | |||||
align="center" | align="center" | ||||
> | > | ||||
</el-table-column> | </el-table-column> | ||||
<el-table-column prop="provinceName,cityName" label="公司地址" align="center"> | |||||
<el-table-column prop="provinceName,cityName" label="公司地区" align="center"> | |||||
<template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template> | <template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template> | ||||
</el-table-column> | </el-table-column> | ||||
<!-- <el-table-column | <!-- <el-table-column | ||||
@@ -426,6 +426,7 @@ export default { | |||||
props1: { | props1: { | ||||
lazy: true, | lazy: true, | ||||
checkStrictly: true, | checkStrictly: true, | ||||
expandTrigger:'hover', | |||||
async lazyLoad(node, resolve) { | async lazyLoad(node, resolve) { | ||||
// console.log(node, 123); | // console.log(node, 123); | ||||
const { level } = node; | const { level } = node; | ||||
@@ -450,6 +451,8 @@ export default { | |||||
}; | }; | ||||
}); | }); | ||||
resolve(nodes); | resolve(nodes); | ||||
}else{ | |||||
resolve() | |||||
} | } | ||||
}, | }, | ||||
}, | }, | ||||
@@ -1050,18 +1050,18 @@ export default { | |||||
let num = 24 * 3600 * 1000; | let num = 24 * 3600 * 1000; | ||||
// 获取当前时间戳转换为日期格式 | // 获取当前时间戳转换为日期格式 | ||||
if (this.timeType == 4) { | if (this.timeType == 4) { | ||||
num = 24 * 3600 * 1000 * 6; | |||||
num = 24 * 3600 * 1000 * 7; | |||||
} | } | ||||
if (this.timeType == 5) { | if (this.timeType == 5) { | ||||
num = 24 * 3600 * 1000 * 14; | |||||
num = 24 * 3600 * 1000 * 15; | |||||
} | } | ||||
if (this.timeType == 6) { | if (this.timeType == 6) { | ||||
num = 24 * 3600 * 1000 * 29; | |||||
num = 24 * 3600 * 1000 * 30; | |||||
} | } | ||||
if (i != -1) { | if (i != -1) { | ||||
this.customtime = [ | this.customtime = [ | ||||
this.timestampToTime(new Date().getTime() - num), | this.timestampToTime(new Date().getTime() - num), | ||||
this.timestampToTime(new Date().getTime()), | |||||
this.timestampToTime(new Date().getTime()-24 * 3600 * 1000), | |||||
]; | ]; | ||||
} | } | ||||
@@ -90,6 +90,9 @@ | |||||
<div style="margin-left: 20px"> | <div style="margin-left: 20px"> | ||||
<el-button @click="empty()">清空筛选条件</el-button> | <el-button @click="empty()">清空筛选条件</el-button> | ||||
</div> | </div> | ||||
<div style="margin-left: auto;margin-right:10px;" v-if="equ_edg_download"> | |||||
<el-button @click="downLoad">导出</el-button> | |||||
</div> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="tablebox" v-if="activeTotal == 0"> | <div class="tablebox" v-if="activeTotal == 0"> | ||||
@@ -216,6 +219,9 @@ | |||||
<div style="margin-left: 20px"> | <div style="margin-left: 20px"> | ||||
<el-button @click="empty()">清空筛选条件</el-button> | <el-button @click="empty()">清空筛选条件</el-button> | ||||
</div> | </div> | ||||
<div style="margin-left: auto;margin-right:10px;" v-if="equ_edg_download"> | |||||
<el-button @click="downLoad">导出</el-button> | |||||
</div> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="tablebox" v-if="activeTotal == 1"> | <div class="tablebox" v-if="activeTotal == 1"> | ||||
@@ -321,6 +327,7 @@ export default { | |||||
}, | }, | ||||
created() { | created() { | ||||
this.equ_edg_detail = this.permissions["equ_edg_detail"]; | this.equ_edg_detail = this.permissions["equ_edg_detail"]; | ||||
this.equ_edg_download = this.permissions["equ_edg_download"]; | |||||
}, | }, | ||||
mounted() { | mounted() { | ||||
// return | // return | ||||
@@ -349,6 +356,61 @@ export default { | |||||
this.getHouseList(); | this.getHouseList(); | ||||
}, | }, | ||||
methods: { | methods: { | ||||
downLoad(){ | |||||
let obj = { | |||||
imei: this.page.imei, | |||||
}; | |||||
if (this.activeTotal == 0) { | |||||
obj.openTime = this.page.openTime; | |||||
obj.closeTime = this.page.closeTime; | |||||
obj.houseId = this.page.houseName; | |||||
obj.accountName = this.page.accountName; | |||||
this.exportMethodPost('autoSR/zk/equipment/onlineRecordListExport','设备在线记录',obj) | |||||
} else { | |||||
obj.staDate = this.page.openTime; | |||||
obj.endDate = this.page.closeTime; | |||||
obj.projectId = this.page.houseName; | |||||
obj.agentName = this.page.accountName; | |||||
obj.recording = this.page.recording; | |||||
this.exportMethodPost('autoSR/zk/equipment/assignmentRecordListExport','设备指派记录',obj) | |||||
} | |||||
}, | |||||
// 导出.Excel公用方法 | |||||
exportMethodPost(url, name, data = {}) { | |||||
axios({ | |||||
method: "get", | |||||
url: url, | |||||
params:data, | |||||
responseType: "blob", | |||||
}) | |||||
.then((res) => { | |||||
let blob = new Blob([res], { type: "application/vnd.ms-excel" }); | |||||
let date = new Date(); | |||||
let time = date.toLocaleDateString(); | |||||
// console.log(time, "时间"); | |||||
if ("download" in document.createElement("a")) { | |||||
const link = document.createElement("a"); | |||||
link.style.display = "none"; | |||||
link.href = URL.createObjectURL(blob); | |||||
// link.download = res.headers['content-disposition'] //下载后文件名 | |||||
link.download = (name || "导出文件") + time + ".xlsx"; //下载的文件名 | |||||
document.body.appendChild(link); | |||||
link.click(); | |||||
document.body.removeChild(link); | |||||
} else { | |||||
// console.log("--------------------jingla") | |||||
let fileName = (name || "导出文件") + time + ".xlsx"; //下载的文件名 | |||||
navigator.msSaveBlob(blob, fileName); | |||||
} | |||||
}) | |||||
.catch((error) => { | |||||
// Message.error({ | |||||
// message: '网络连接错误' | |||||
// }) | |||||
console.log(error); | |||||
}); | |||||
}, | |||||
timestampToTime(timestamp) { | timestampToTime(timestamp) { | ||||
var date = new Date(timestamp); //时间戳为10位需*1000,时间戳为13位的话不需乘1000 | var date = new Date(timestamp); //时间戳为10位需*1000,时间戳为13位的话不需乘1000 | ||||
// var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 | // var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 | ||||
@@ -50,9 +50,9 @@ | |||||
<div style="margin-left: 20px"> | <div style="margin-left: 20px"> | ||||
<el-button @click="clascreen">清空筛选条件</el-button> | <el-button @click="clascreen">清空筛选条件</el-button> | ||||
</div> | </div> | ||||
<div style="margin-left: 20px"> | |||||
<!-- <div style="margin-left: 20px"> | |||||
<el-button @click="exportFile">导出</el-button> | <el-button @click="exportFile">导出</el-button> | ||||
</div> | |||||
</div> --> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
@@ -956,6 +956,7 @@ export default { | |||||
orgType: localStorage.getItem("orgType"), | orgType: localStorage.getItem("orgType"), | ||||
queryOrgType:this.selValue/1+1, | queryOrgType:this.selValue/1+1, | ||||
...this.searchForm, | ...this.searchForm, | ||||
houseTypes: this.houseTypes, | |||||
}) | }) | ||||
.then((res) => { | .then((res) => { | ||||
// console.log(res); | // console.log(res); | ||||
@@ -1399,10 +1399,47 @@ export default { | |||||
}, | }, | ||||
//下载 | //下载 | ||||
download(){ | download(){ | ||||
// this.$api.http.filedownload({videoSrc:this.recordPath}).then((res) => { | |||||
console.log(this.recordPath); | |||||
// this.$api.api.filedownload({videoSrc:this.recordPath}).then((res) => { | |||||
// console.log(res); | |||||
// }) | // }) | ||||
// window.location.href =this.recordPath | // window.location.href =this.recordPath | ||||
this.exportMethodPost("/autoSR/zk/file/filedownload", "接待详情",{videoSrc:this.recordPath}); | |||||
}, | }, | ||||
exportMethodPost(url, name, data = {}) { | |||||
axios({ | |||||
method: "get", | |||||
url: url, | |||||
params:data, | |||||
responseType: "blob", | |||||
}) | |||||
.then((res) => { | |||||
let blob = new Blob([res], { type: "audio/*" }); | |||||
let date = new Date(); | |||||
let time = date.toLocaleDateString(); | |||||
// console.log(time, "时间"); | |||||
if ("download" in document.createElement("a")) { | |||||
const link = document.createElement("a"); | |||||
link.style.display = "none"; | |||||
link.href = URL.createObjectURL(blob); | |||||
// link.download = res.headers['content-disposition'] //下载后文件名 | |||||
link.download = (name || "导出文件") + time + ".mp3"; //下载的文件名 | |||||
document.body.appendChild(link); | |||||
link.click(); | |||||
document.body.removeChild(link); | |||||
} else { | |||||
// console.log("--------------------jingla") | |||||
let fileName = (name || "导出文件") + time + ".mp3"; //下载的文件名 | |||||
navigator.msSaveBlob(blob, fileName); | |||||
} | |||||
}) | |||||
.catch((error) => { | |||||
// Message.error({ | |||||
// message: '网络连接错误' | |||||
// }) | |||||
console.log(error); | |||||
}); | |||||
}, | |||||
}, | }, | ||||
}; | }; | ||||
</script> | </script> | ||||
@@ -305,8 +305,8 @@ | |||||
<el-table-column label="操作" align="center" width="200" fixed="right"> | <el-table-column label="操作" align="center" width="200" fixed="right"> | ||||
<template slot-scope="{ row }"> | <template slot-scope="{ row }"> | ||||
<el-button type="text" v-if="rec_index_show" @click="Receivedetailsabout(row)">查看</el-button> | <el-button type="text" v-if="rec_index_show" @click="Receivedetailsabout(row)">查看</el-button> | ||||
<el-button type="text" v-if="rec_index_text">下载文本</el-button> | |||||
<el-button type="text" v-if="rec_index_voice">下载录音</el-button> | |||||
<!-- <el-button type="text" v-if="rec_index_text">下载文本</el-button> | |||||
<el-button type="text" v-if="rec_index_voice">下载录音</el-button> --> | |||||
</template> | </template> | ||||
</el-table-column> | </el-table-column> | ||||
</el-table> | </el-table> | ||||
@@ -61,6 +61,9 @@ | |||||
<div style="margin-left: 20px"> | <div style="margin-left: 20px"> | ||||
<el-button @click="Screeningofempty()">清空筛选条件</el-button> | <el-button @click="Screeningofempty()">清空筛选条件</el-button> | ||||
</div> | </div> | ||||
<div style="margin-left: auto; margin-right:20px;"> | |||||
<el-button v-if="fromobj.keywordIds.length==1&&sta_idx_download" @click="downLoad()">导出</el-button> | |||||
</div> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
@@ -129,6 +132,7 @@ | |||||
</template> | </template> | ||||
<script> | <script> | ||||
import { mapGetters } from "vuex"; | |||||
export default { | export default { | ||||
data() { | data() { | ||||
return { | return { | ||||
@@ -156,7 +160,9 @@ export default { | |||||
}; | }; | ||||
}, | }, | ||||
mounted() { | mounted() { | ||||
var isnull=this.$route.query.flag; | |||||
// 权限 | |||||
this.sta_idx_download = this.permissions["sta_idx_download"]; | |||||
var isnull=this.$route.query.flag; | |||||
this.TimetoAhoose=isnull.TimetoAhoose; | this.TimetoAhoose=isnull.TimetoAhoose; | ||||
this.customtime=isnull.customtime; | this.customtime=isnull.customtime; | ||||
this.fromobj.starttime=isnull.starttime; | this.fromobj.starttime=isnull.starttime; | ||||
@@ -165,6 +171,9 @@ export default { | |||||
this.fromobj.keywords=isnull.keywordsId; | this.fromobj.keywords=isnull.keywordsId; | ||||
this.Accesstolevel() | this.Accesstolevel() | ||||
}, | }, | ||||
computed: { | |||||
...mapGetters(["permissions"]), | |||||
}, | |||||
methods: { | methods: { | ||||
// 跳转接待详情 | // 跳转接待详情 | ||||
Receivedetailsabout(row){ | Receivedetailsabout(row){ | ||||
@@ -230,6 +239,60 @@ export default { | |||||
} | } | ||||
}); | }); | ||||
}, | }, | ||||
downLoad(){ | |||||
var dateType=''; | |||||
if(this.TimetoAhoose==6){ | |||||
dateType=''; | |||||
}else { | |||||
dateType=this.TimetoAhoose; | |||||
} | |||||
this.exportMethodPost('/autoSR/matchKeywords/dcCarReceptionRecord','洞察详情',{ | |||||
dateType:dateType, | |||||
staDate:this.fromobj.starttime, | |||||
endDate:this.fromobj.endoftime, | |||||
projectId:this.fromobj.projectId, | |||||
name:this.fromobj.name, | |||||
agentName:this.fromobj.agentName, | |||||
type:this.fromobj.type, | |||||
time:1, | |||||
keywordIds:this.fromobj.keywordIds.length>0?this.fromobj.keywordIds.join(','):this.fromobj.keywords, | |||||
}) | |||||
}, | |||||
// 导出.Excel公用方法 | |||||
exportMethodPost(url, name, data = {}) { | |||||
axios({ | |||||
method: "get", | |||||
url: url, | |||||
params:data, | |||||
responseType: "blob", | |||||
}) | |||||
.then((res) => { | |||||
let blob = new Blob([res], { type: "application/vnd.ms-excel" }); | |||||
let date = new Date(); | |||||
let time = date.toLocaleDateString(); | |||||
// console.log(time, "时间"); | |||||
if ("download" in document.createElement("a")) { | |||||
const link = document.createElement("a"); | |||||
link.style.display = "none"; | |||||
link.href = URL.createObjectURL(blob); | |||||
// link.download = res.headers['content-disposition'] //下载后文件名 | |||||
link.download = (name || "导出文件") + time + ".xlsx"; //下载的文件名 | |||||
document.body.appendChild(link); | |||||
link.click(); | |||||
document.body.removeChild(link); | |||||
} else { | |||||
// console.log("--------------------jingla") | |||||
let fileName = (name || "导出文件") + time + ".xlsx"; //下载的文件名 | |||||
navigator.msSaveBlob(blob, fileName); | |||||
} | |||||
}) | |||||
.catch((error) => { | |||||
// Message.error({ | |||||
// message: '网络连接错误' | |||||
// }) | |||||
console.log(error); | |||||
}); | |||||
}, | |||||
//筛选 | //筛选 | ||||
screening(){ | screening(){ | ||||
this.fromobj.type=1; | this.fromobj.type=1; | ||||
@@ -878,17 +878,17 @@ export default { | |||||
let num = 24 * 3600 * 1000; | let num = 24 * 3600 * 1000; | ||||
// 获取当前时间戳转换为日期格式 | // 获取当前时间戳转换为日期格式 | ||||
if (this.timeType == 4) { | if (this.timeType == 4) { | ||||
num = 24 * 3600 * 1000 * 6; | |||||
num = 24 * 3600 * 1000 * 7; | |||||
} | } | ||||
if (this.timeType == 5) { | if (this.timeType == 5) { | ||||
num = 24 * 3600 * 1000 * 14; | |||||
num = 24 * 3600 * 1000 * 15; | |||||
} | } | ||||
if (this.timeType == 6) { | if (this.timeType == 6) { | ||||
num = 24 * 3600 * 1000 * 29; | |||||
num = 24 * 3600 * 1000 * 30; | |||||
} | } | ||||
this.customtime = [ | this.customtime = [ | ||||
this.timestampToTime(new Date().getTime() - num), | this.timestampToTime(new Date().getTime() - num), | ||||
this.timestampToTime(new Date().getTime()), | |||||
this.timestampToTime(new Date().getTime()-24 * 3600 * 1000), | |||||
]; | ]; | ||||
this.$set(this, "time", null); | this.$set(this, "time", null); | ||||
this.Confirmthecontrast = false; | this.Confirmthecontrast = false; | ||||
@@ -845,7 +845,7 @@ export default { | |||||
// echars生成 | // echars生成 | ||||
getChars1(idx) { | getChars1(idx) { | ||||
console.log(idx); | console.log(idx); | ||||
let Strname = ["时段一", "时段二"]; | |||||
// let Strname = ["时段一", "时段二"]; | |||||
let timeDate = []; | let timeDate = []; | ||||
// 判断是第几个然后对数据进行渲染 | // 判断是第几个然后对数据进行渲染 | ||||
// 先处理时间 | // 先处理时间 | ||||
@@ -882,7 +882,35 @@ export default { | |||||
arr2.push(item.data); | arr2.push(item.data); | ||||
}); | }); | ||||
} | } | ||||
let arr = [ | |||||
// let arr = [ | |||||
// { | |||||
// name: Strname[0], | |||||
// data: arr1, | |||||
// type: "line", | |||||
// smooth: true, | |||||
// }, | |||||
// { | |||||
// name: Strname[1], | |||||
// data: arr2, | |||||
// type: "line", | |||||
// smooth: true, | |||||
// }, | |||||
// ]; | |||||
let arr=[] | |||||
let Strname = []; | |||||
if(this.customtime1[0]){ | |||||
arr = [ | |||||
{ | |||||
name: Strname[0], | |||||
data: arr1, | |||||
type: "line", | |||||
smooth: true, | |||||
}, | |||||
]; | |||||
Strname = ["时段一"]; | |||||
}else{ | |||||
arr = [ | |||||
{ | { | ||||
name: Strname[0], | name: Strname[0], | ||||
data: arr1, | data: arr1, | ||||
@@ -896,6 +924,8 @@ export default { | |||||
smooth: true, | smooth: true, | ||||
}, | }, | ||||
]; | ]; | ||||
Strname = ["时段一", "时段二"]; | |||||
} | |||||
this.SwitchCARDS(arr, "main", timeDate, Strname); | this.SwitchCARDS(arr, "main", timeDate, Strname); | ||||
}, | }, | ||||
getChars2(idx) { | getChars2(idx) { | ||||
@@ -1008,6 +1038,7 @@ export default { | |||||
SwitchCARDS(arr, str, timeDate, Strname) { | SwitchCARDS(arr, str, timeDate, Strname) { | ||||
// console.log(arr,str,timeDate,Strname); | // console.log(arr,str,timeDate,Strname); | ||||
var chartDom = document.getElementById(str); | var chartDom = document.getElementById(str); | ||||
echarts.init(chartDom).dispose(); | |||||
var myChart = echarts.init(chartDom); | var myChart = echarts.init(chartDom); | ||||
var option; | var option; | ||||
@@ -930,7 +930,7 @@ export default { | |||||
// echars生成 | // echars生成 | ||||
getChars1(idx) { | getChars1(idx) { | ||||
console.log(idx); | console.log(idx); | ||||
let Strname = ["时段一", "时段二"]; | |||||
// let Strname = ["时段一", "时段二"]; | |||||
let timeDate = []; | let timeDate = []; | ||||
// 判断是第几个然后对数据进行渲染 | // 判断是第几个然后对数据进行渲染 | ||||
// 先处理时间 | // 先处理时间 | ||||
@@ -967,7 +967,35 @@ export default { | |||||
arr2.push(item.data); | arr2.push(item.data); | ||||
}); | }); | ||||
} | } | ||||
let arr = [ | |||||
// let arr = [ | |||||
// { | |||||
// name: Strname[0], | |||||
// data: arr1, | |||||
// type: "line", | |||||
// smooth: true, | |||||
// }, | |||||
// { | |||||
// name: Strname[1], | |||||
// data: arr2, | |||||
// type: "line", | |||||
// smooth: true, | |||||
// }, | |||||
// ]; | |||||
let arr=[] | |||||
let Strname = []; | |||||
if(this.customtime1[0]){ | |||||
arr = [ | |||||
{ | |||||
name: Strname[0], | |||||
data: arr1, | |||||
type: "line", | |||||
smooth: true, | |||||
}, | |||||
]; | |||||
Strname = ["时段一"]; | |||||
}else{ | |||||
arr = [ | |||||
{ | { | ||||
name: Strname[0], | name: Strname[0], | ||||
data: arr1, | data: arr1, | ||||
@@ -981,6 +1009,8 @@ export default { | |||||
smooth: true, | smooth: true, | ||||
}, | }, | ||||
]; | ]; | ||||
Strname = ["时段一", "时段二"]; | |||||
} | |||||
this.SwitchCARDS(arr, "main", timeDate, Strname); | this.SwitchCARDS(arr, "main", timeDate, Strname); | ||||
}, | }, | ||||
getChars2(idx) { | getChars2(idx) { | ||||
@@ -1092,6 +1122,7 @@ export default { | |||||
SwitchCARDS(arr, str, timeDate, Strname) { | SwitchCARDS(arr, str, timeDate, Strname) { | ||||
// console.log(arr,str,timeDate,Strname); | // console.log(arr,str,timeDate,Strname); | ||||
var chartDom = document.getElementById(str); | var chartDom = document.getElementById(str); | ||||
echarts.init(chartDom).dispose(); | |||||
var myChart = echarts.init(chartDom); | var myChart = echarts.init(chartDom); | ||||
var option; | var option; | ||||
@@ -1004,7 +1004,7 @@ export default { | |||||
// echars生成 | // echars生成 | ||||
getChars1(idx) { | getChars1(idx) { | ||||
// console.log(idx); | // console.log(idx); | ||||
let Strname = ["时段一", "时段二"]; | |||||
let timeDate = []; | let timeDate = []; | ||||
// 判断是第几个然后对数据进行渲染 | // 判断是第几个然后对数据进行渲染 | ||||
// 先处理时间 | // 先处理时间 | ||||
@@ -1041,7 +1041,21 @@ export default { | |||||
arr2.push(item.data); | arr2.push(item.data); | ||||
}); | }); | ||||
} | } | ||||
let arr = [ | |||||
let arr=[] | |||||
let Strname = []; | |||||
if(this.customtime1[0]){ | |||||
arr = [ | |||||
{ | |||||
name: Strname[0], | |||||
data: arr1, | |||||
type: "line", | |||||
smooth: true, | |||||
}, | |||||
]; | |||||
Strname = ["时段一"]; | |||||
}else{ | |||||
arr = [ | |||||
{ | { | ||||
name: Strname[0], | name: Strname[0], | ||||
data: arr1, | data: arr1, | ||||
@@ -1055,6 +1069,9 @@ export default { | |||||
smooth: true, | smooth: true, | ||||
}, | }, | ||||
]; | ]; | ||||
Strname = ["时段一", "时段二"]; | |||||
} | |||||
// console.log(arr1,arr2); | // console.log(arr1,arr2); | ||||
this.SwitchCARDS(arr, "main", timeDate, Strname); | this.SwitchCARDS(arr, "main", timeDate, Strname); | ||||
}, | }, | ||||
@@ -1172,6 +1189,7 @@ export default { | |||||
//卡片下折线图 | //卡片下折线图 | ||||
SwitchCARDS(arr, str, timeDate, Strname) { | SwitchCARDS(arr, str, timeDate, Strname) { | ||||
var chartDom = document.getElementById(str); | var chartDom = document.getElementById(str); | ||||
echarts.init(chartDom).dispose(); | |||||
var myChart = echarts.init(chartDom); | var myChart = echarts.init(chartDom); | ||||
var option; | var option; | ||||
@@ -480,17 +480,17 @@ export default { | |||||
let num = 24 * 3600 * 1000; | let num = 24 * 3600 * 1000; | ||||
// 获取当前时间戳转换为日期格式 | // 获取当前时间戳转换为日期格式 | ||||
if (this.dateType == 4) { | if (this.dateType == 4) { | ||||
num = 24 * 3600 * 1000 * 6; | |||||
num = 24 * 3600 * 1000 * 7; | |||||
} | } | ||||
if (this.dateType == 5) { | if (this.dateType == 5) { | ||||
num = 24 * 3600 * 1000 * 14; | |||||
num = 24 * 3600 * 1000 * 15; | |||||
} | } | ||||
if (this.dateType == 6) { | if (this.dateType == 6) { | ||||
num = 24 * 3600 * 1000 * 29; | |||||
num = 24 * 3600 * 1000 * 30; | |||||
} | } | ||||
this.customtime = [ | this.customtime = [ | ||||
this.timestampToTime(new Date().getTime() - num), | this.timestampToTime(new Date().getTime() - num), | ||||
this.timestampToTime(new Date().getTime()), | |||||
this.timestampToTime(new Date().getTime()-24 * 3600 * 1000), | |||||
]; | ]; | ||||
this.$set(this, "time", null); | this.$set(this, "time", null); | ||||
this.Confirmthecontrast = false; | this.Confirmthecontrast = false; | ||||
@@ -618,17 +618,17 @@ export default { | |||||
let num = 24 * 3600 * 1000; | let num = 24 * 3600 * 1000; | ||||
// 获取当前时间戳转换为日期格式 | // 获取当前时间戳转换为日期格式 | ||||
if (this.dateType == 4) { | if (this.dateType == 4) { | ||||
num = 24 * 3600 * 1000 * 6; | |||||
num = 24 * 3600 * 1000 * 7; | |||||
} | } | ||||
if (this.dateType == 5) { | if (this.dateType == 5) { | ||||
num = 24 * 3600 * 1000 * 14; | |||||
num = 24 * 3600 * 1000 * 15; | |||||
} | } | ||||
if (this.dateType == 6) { | if (this.dateType == 6) { | ||||
num = 24 * 3600 * 1000 * 29; | |||||
num = 24 * 3600 * 1000 * 30; | |||||
} | } | ||||
this.customtime = [ | this.customtime = [ | ||||
this.timestampToTime(new Date().getTime() - num), | this.timestampToTime(new Date().getTime() - num), | ||||
this.timestampToTime(new Date().getTime()), | |||||
this.timestampToTime(new Date().getTime()-24 * 3600 * 1000), | |||||
]; | ]; | ||||
this.$set(this, "time", null); | this.$set(this, "time", null); | ||||
this.Confirmthecontrast = false; | this.Confirmthecontrast = false; | ||||
@@ -194,6 +194,9 @@ | |||||
<div style="margin-left: 20px"> | <div style="margin-left: 20px"> | ||||
<el-button @click="clascreen">清空筛选条件</el-button> | <el-button @click="clascreen">清空筛选条件</el-button> | ||||
</div> | </div> | ||||
<div style="margin-left: auto;margin-right:10px;" v-if="cus_build_count_download"> | |||||
<el-button @click="downLoad">导出</el-button> | |||||
</div> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
@@ -366,6 +369,7 @@ export default { | |||||
props: { | props: { | ||||
lazy: true, | lazy: true, | ||||
checkStrictly: true, | checkStrictly: true, | ||||
expandTrigger:'hover', | |||||
async lazyLoad(node, resolve) { | async lazyLoad(node, resolve) { | ||||
const { level } = node; | const { level } = node; | ||||
if (level == 0) { | if (level == 0) { | ||||
@@ -389,6 +393,8 @@ export default { | |||||
}; | }; | ||||
}); | }); | ||||
resolve(nodes); | resolve(nodes); | ||||
}else{ | |||||
resolve() | |||||
} | } | ||||
}, | }, | ||||
}, | }, | ||||
@@ -427,6 +433,7 @@ export default { | |||||
}, | }, | ||||
created() { | created() { | ||||
this.cus_build_area_record = this.permissions["cus_build_area_record"]; | this.cus_build_area_record = this.permissions["cus_build_area_record"]; | ||||
this.cus_build_count_download = this.permissions["cus_build_count_download"]; | |||||
}, | }, | ||||
mounted() { | mounted() { | ||||
if(this.orgType==1){ | if(this.orgType==1){ | ||||
@@ -439,6 +446,74 @@ export default { | |||||
}, | }, | ||||
methods: { | methods: { | ||||
downLoad(){ | |||||
let obj = { | |||||
...this.searchForm, | |||||
agentId:localStorage.getItem('agentId'), | |||||
orgCode:localStorage.getItem('orgCode'), | |||||
houseId:localStorage.getItem('houseId'), | |||||
orgType:localStorage.getItem('orgType'), | |||||
}; | |||||
if(this.activeTotal==0){ | |||||
if(this.orgType==0){ | |||||
obj.operationType=1 | |||||
}else if(this.orgType==1){ | |||||
obj.operationType=2 | |||||
}else{ | |||||
obj.operationType=null | |||||
} | |||||
// 楼盘 | |||||
this.exportMethodPost('/autoSR/cusStageStatistics/houseStatisticsExport','楼盘数据',obj) | |||||
}else if(this.activeTotal==1){ | |||||
obj.operationType=null; | |||||
// 代理商 | |||||
this.exportMethodPost('/autoSR/cusStageStatistics/agentStatisticsExport','代理商',obj) | |||||
}else{ | |||||
if(this.orgType==0){ | |||||
obj.operationType=1 | |||||
}else if(this.orgType==1){ | |||||
obj.operationType=2 | |||||
}else{ | |||||
obj.operationType=null | |||||
} | |||||
this.exportMethodPost('/autoSR/cusStageStatistics/companyStatisticsExport','公司',obj) | |||||
} | |||||
}, | |||||
// 导出.Excel公用方法 | |||||
exportMethodPost(url, name, data = {}) { | |||||
axios({ | |||||
method: "get", | |||||
url: url, | |||||
params:data, | |||||
responseType: "blob", | |||||
}) | |||||
.then((res) => { | |||||
let blob = new Blob([res], { type: "application/vnd.ms-excel" }); | |||||
let date = new Date(); | |||||
let time = date.toLocaleDateString(); | |||||
// console.log(time, "时间"); | |||||
if ("download" in document.createElement("a")) { | |||||
const link = document.createElement("a"); | |||||
link.style.display = "none"; | |||||
link.href = URL.createObjectURL(blob); | |||||
// link.download = res.headers['content-disposition'] //下载后文件名 | |||||
link.download = (name || "导出文件") + time + ".xlsx"; //下载的文件名 | |||||
document.body.appendChild(link); | |||||
link.click(); | |||||
document.body.removeChild(link); | |||||
} else { | |||||
// console.log("--------------------jingla") | |||||
let fileName = (name || "导出文件") + time + ".xlsx"; //下载的文件名 | |||||
navigator.msSaveBlob(blob, fileName); | |||||
} | |||||
}) | |||||
.catch((error) => { | |||||
// Message.error({ | |||||
// message: '网络连接错误' | |||||
// }) | |||||
console.log(error); | |||||
}); | |||||
}, | |||||
getOperaList(){ | getOperaList(){ | ||||
if (this.orgType == 1) { | if (this.orgType == 1) { | ||||
this.$api.http | this.$api.http | ||||
@@ -256,7 +256,7 @@ | |||||
:show-overflow-tooltip="true" | :show-overflow-tooltip="true" | ||||
width="120px" | width="120px" | ||||
prop="provinceName,cityName" | prop="provinceName,cityName" | ||||
label="楼盘地址" | |||||
label="楼盘地区" | |||||
align="center" | align="center" | ||||
:key="Math.random()" | :key="Math.random()" | ||||
> | > | ||||
@@ -758,6 +758,7 @@ export default { | |||||
props1: { | props1: { | ||||
lazy: true, | lazy: true, | ||||
checkStrictly: true, | checkStrictly: true, | ||||
expandTrigger:'hover', | |||||
async lazyLoad(node, resolve) { | async lazyLoad(node, resolve) { | ||||
// console.log(node, 123); | // console.log(node, 123); | ||||
const { level } = node; | const { level } = node; | ||||
@@ -782,6 +783,8 @@ export default { | |||||
}; | }; | ||||
}); | }); | ||||
resolve(nodes); | resolve(nodes); | ||||
}else{ | |||||
resolve() | |||||
} | } | ||||
}, | }, | ||||
}, | }, | ||||
@@ -4,8 +4,8 @@ | |||||
*/ | */ | ||||
// const url = 'http://pigx-gateway' | // const url = 'http://pigx-gateway' | ||||
// const url = 'http://39.97.167.65:9999' //测试 | // const url = 'http://39.97.167.65:9999' //测试 | ||||
// const url = 'http://192.168.31.169:9999' //长龙 | |||||
const url = 'http://192.168.31.134:9999' //嘉豪 | |||||
const url = 'http://192.168.31.169:9999' //长龙 | |||||
// const url = 'http://192.168.31.134:9999' //嘉豪 | |||||
// const url = 'http://192.168.31.100:9999' //王笑 | // const url = 'http://192.168.31.100:9999' //王笑 | ||||
// const url = 'http://nitu5e.natappfree.cc' //王笑 | // const url = 'http://nitu5e.natappfree.cc' //王笑 | ||||