lancer преди 3 години
родител
ревизия
91d70be601
променени са 20 файла, в които са добавени 380 реда и са изтрити 34 реда
  1. +16
    -0
      src/api/modules/api.js
  2. +4
    -1
      src/views/Customer/AgentManagement.vue
  3. +4
    -1
      src/views/Customer/CompanyRecord.vue
  4. +4
    -1
      src/views/Customer/Companymanagement.vue
  5. +4
    -4
      src/views/Equipment/equipmentDetailList.vue
  6. +62
    -0
      src/views/Equipment/equipmentOnlineRecordList.vue
  7. +2
    -2
      src/views/Equipment/record.vue
  8. +1
    -0
      src/views/Equipment/state.vue
  9. +38
    -1
      src/views/Receive/index.vue
  10. +2
    -2
      src/views/ReceivingRecords/index.vue
  11. +64
    -1
      src/views/Statistics/Insightintothedetails.vue
  12. +4
    -4
      src/views/Statistics/TrendAnalysis.vue
  13. +33
    -2
      src/views/Statistics/dataScreeAge.vue
  14. +33
    -2
      src/views/Statistics/dataScreeOrg.vue
  15. +20
    -2
      src/views/Statistics/dataScreeSys.vue
  16. +4
    -4
      src/views/Statistics/houseDataSys.vue
  17. +4
    -4
      src/views/Statistics/trend.vue
  18. +75
    -0
      src/views/building/Count.vue
  19. +4
    -1
      src/views/building/index.vue
  20. +2
    -2
      vue.config.js

+ 16
- 0
src/api/modules/api.js Целия файл

@@ -1055,3 +1055,19 @@ export function buyEquipmentQuantity(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
// })
// }

+ 4
- 1
src/views/Customer/AgentManagement.vue Целия файл

@@ -105,7 +105,7 @@
<el-table-column
:show-overflow-tooltip="true" width="140px"
prop="provinceName,cityName"
label="地"
label="地"
align="center"
>
<template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template>
@@ -521,6 +521,7 @@ export default {
props1: {
lazy: true,
checkStrictly: true,
expandTrigger:'hover',
async lazyLoad(node, resolve) {
// console.log(node, 123);
const { level } = node;
@@ -545,6 +546,8 @@ export default {
};
});
resolve(nodes);
}else{
resolve()
}
},
},


+ 4
- 1
src/views/Customer/CompanyRecord.vue Целия файл

@@ -115,7 +115,7 @@
:show-overflow-tooltip="true"
width="120px"
prop="provinceName,cityName"
label="公司地"
label="公司地"
align="center"
>
<template slot-scope="scope"> {{scope.row.provinceName}}{{scope.row.cityName}} </template>
@@ -599,6 +599,7 @@ export default {
props1: {
lazy: true,
checkStrictly: true,
expandTrigger:'hover',
async lazyLoad(node, resolve) {
// console.log(node, 123);
const { level } = node;
@@ -623,6 +624,8 @@ export default {
};
});
resolve(nodes);
}else{
resolve()
}
},
},


+ 4
- 1
src/views/Customer/Companymanagement.vue Целия файл

@@ -101,7 +101,7 @@
align="center"
>
</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>
</el-table-column>
<!-- <el-table-column
@@ -426,6 +426,7 @@ export default {
props1: {
lazy: true,
checkStrictly: true,
expandTrigger:'hover',
async lazyLoad(node, resolve) {
// console.log(node, 123);
const { level } = node;
@@ -450,6 +451,8 @@ export default {
};
});
resolve(nodes);
}else{
resolve()
}
},
},


+ 4
- 4
src/views/Equipment/equipmentDetailList.vue Целия файл

@@ -1050,18 +1050,18 @@ export default {
let num = 24 * 3600 * 1000;
// 获取当前时间戳转换为日期格式
if (this.timeType == 4) {
num = 24 * 3600 * 1000 * 6;
num = 24 * 3600 * 1000 * 7;
}
if (this.timeType == 5) {
num = 24 * 3600 * 1000 * 14;
num = 24 * 3600 * 1000 * 15;
}
if (this.timeType == 6) {
num = 24 * 3600 * 1000 * 29;
num = 24 * 3600 * 1000 * 30;
}
if (i != -1) {
this.customtime = [
this.timestampToTime(new Date().getTime() - num),
this.timestampToTime(new Date().getTime()),
this.timestampToTime(new Date().getTime()-24 * 3600 * 1000),
];
}



+ 62
- 0
src/views/Equipment/equipmentOnlineRecordList.vue Целия файл

@@ -90,6 +90,9 @@
<div style="margin-left: 20px">
<el-button @click="empty()">清空筛选条件</el-button>
</div>
<div style="margin-left: auto;margin-right:10px;" v-if="equ_edg_download">
<el-button @click="downLoad">导出</el-button>
</div>
</div>
</div>
<div class="tablebox" v-if="activeTotal == 0">
@@ -216,6 +219,9 @@
<div style="margin-left: 20px">
<el-button @click="empty()">清空筛选条件</el-button>
</div>
<div style="margin-left: auto;margin-right:10px;" v-if="equ_edg_download">
<el-button @click="downLoad">导出</el-button>
</div>
</div>
</div>
<div class="tablebox" v-if="activeTotal == 1">
@@ -321,6 +327,7 @@ export default {
},
created() {
this.equ_edg_detail = this.permissions["equ_edg_detail"];
this.equ_edg_download = this.permissions["equ_edg_download"];
},
mounted() {
// return
@@ -349,6 +356,61 @@ export default {
this.getHouseList();
},
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) {
var date = new Date(timestamp); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
// var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000


+ 2
- 2
src/views/Equipment/record.vue Целия файл

@@ -50,9 +50,9 @@
<div style="margin-left: 20px">
<el-button @click="clascreen">清空筛选条件</el-button>
</div>
<div style="margin-left: 20px">
<!-- <div style="margin-left: 20px">
<el-button @click="exportFile">导出</el-button>
</div>
</div> -->
</div>
</div>



+ 1
- 0
src/views/Equipment/state.vue Целия файл

@@ -956,6 +956,7 @@ export default {
orgType: localStorage.getItem("orgType"),
queryOrgType:this.selValue/1+1,
...this.searchForm,
houseTypes: this.houseTypes,
})
.then((res) => {
// console.log(res);


+ 38
- 1
src/views/Receive/index.vue Целия файл

@@ -1399,10 +1399,47 @@ export default {
},
//下载
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
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>


+ 2
- 2
src/views/ReceivingRecords/index.vue Целия файл

@@ -305,8 +305,8 @@
<el-table-column label="操作" align="center" width="200" fixed="right">
<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_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>
</el-table-column>
</el-table>


+ 64
- 1
src/views/Statistics/Insightintothedetails.vue Целия файл

@@ -61,6 +61,9 @@
<div style="margin-left: 20px">
<el-button @click="Screeningofempty()">清空筛选条件</el-button>
</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>

@@ -129,6 +132,7 @@
</template>

<script>
import { mapGetters } from "vuex";
export default {
data() {
return {
@@ -156,7 +160,9 @@ export default {
};
},
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.customtime=isnull.customtime;
this.fromobj.starttime=isnull.starttime;
@@ -165,6 +171,9 @@ export default {
this.fromobj.keywords=isnull.keywordsId;
this.Accesstolevel()
},
computed: {
...mapGetters(["permissions"]),
},
methods: {
// 跳转接待详情
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(){
this.fromobj.type=1;


+ 4
- 4
src/views/Statistics/TrendAnalysis.vue Целия файл

@@ -878,17 +878,17 @@ export default {
let num = 24 * 3600 * 1000;
// 获取当前时间戳转换为日期格式
if (this.timeType == 4) {
num = 24 * 3600 * 1000 * 6;
num = 24 * 3600 * 1000 * 7;
}
if (this.timeType == 5) {
num = 24 * 3600 * 1000 * 14;
num = 24 * 3600 * 1000 * 15;
}
if (this.timeType == 6) {
num = 24 * 3600 * 1000 * 29;
num = 24 * 3600 * 1000 * 30;
}
this.customtime = [
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.Confirmthecontrast = false;


+ 33
- 2
src/views/Statistics/dataScreeAge.vue Целия файл

@@ -845,7 +845,7 @@ export default {
// echars生成
getChars1(idx) {
console.log(idx);
let Strname = ["时段一", "时段二"];
// let Strname = ["时段一", "时段二"];
let timeDate = [];
// 判断是第几个然后对数据进行渲染
// 先处理时间
@@ -882,7 +882,35 @@ export default {
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],
data: arr1,
@@ -896,6 +924,8 @@ export default {
smooth: true,
},
];
Strname = ["时段一", "时段二"];
}
this.SwitchCARDS(arr, "main", timeDate, Strname);
},
getChars2(idx) {
@@ -1008,6 +1038,7 @@ export default {
SwitchCARDS(arr, str, timeDate, Strname) {
// console.log(arr,str,timeDate,Strname);
var chartDom = document.getElementById(str);
echarts.init(chartDom).dispose();
var myChart = echarts.init(chartDom);
var option;



+ 33
- 2
src/views/Statistics/dataScreeOrg.vue Целия файл

@@ -930,7 +930,7 @@ export default {
// echars生成
getChars1(idx) {
console.log(idx);
let Strname = ["时段一", "时段二"];
// let Strname = ["时段一", "时段二"];
let timeDate = [];
// 判断是第几个然后对数据进行渲染
// 先处理时间
@@ -967,7 +967,35 @@ export default {
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],
data: arr1,
@@ -981,6 +1009,8 @@ export default {
smooth: true,
},
];
Strname = ["时段一", "时段二"];
}
this.SwitchCARDS(arr, "main", timeDate, Strname);
},
getChars2(idx) {
@@ -1092,6 +1122,7 @@ export default {
SwitchCARDS(arr, str, timeDate, Strname) {
// console.log(arr,str,timeDate,Strname);
var chartDom = document.getElementById(str);
echarts.init(chartDom).dispose();
var myChart = echarts.init(chartDom);
var option;



+ 20
- 2
src/views/Statistics/dataScreeSys.vue Целия файл

@@ -1004,7 +1004,7 @@ export default {
// echars生成
getChars1(idx) {
// console.log(idx);
let Strname = ["时段一", "时段二"];
let timeDate = [];
// 判断是第几个然后对数据进行渲染
// 先处理时间
@@ -1041,7 +1041,21 @@ export default {
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],
data: arr1,
@@ -1055,6 +1069,9 @@ export default {
smooth: true,
},
];
Strname = ["时段一", "时段二"];
}

// console.log(arr1,arr2);
this.SwitchCARDS(arr, "main", timeDate, Strname);
},
@@ -1172,6 +1189,7 @@ export default {
//卡片下折线图
SwitchCARDS(arr, str, timeDate, Strname) {
var chartDom = document.getElementById(str);
echarts.init(chartDom).dispose();
var myChart = echarts.init(chartDom);
var option;



+ 4
- 4
src/views/Statistics/houseDataSys.vue Целия файл

@@ -480,17 +480,17 @@ export default {
let num = 24 * 3600 * 1000;
// 获取当前时间戳转换为日期格式
if (this.dateType == 4) {
num = 24 * 3600 * 1000 * 6;
num = 24 * 3600 * 1000 * 7;
}
if (this.dateType == 5) {
num = 24 * 3600 * 1000 * 14;
num = 24 * 3600 * 1000 * 15;
}
if (this.dateType == 6) {
num = 24 * 3600 * 1000 * 29;
num = 24 * 3600 * 1000 * 30;
}
this.customtime = [
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.Confirmthecontrast = false;


+ 4
- 4
src/views/Statistics/trend.vue Целия файл

@@ -618,17 +618,17 @@ export default {
let num = 24 * 3600 * 1000;
// 获取当前时间戳转换为日期格式
if (this.dateType == 4) {
num = 24 * 3600 * 1000 * 6;
num = 24 * 3600 * 1000 * 7;
}
if (this.dateType == 5) {
num = 24 * 3600 * 1000 * 14;
num = 24 * 3600 * 1000 * 15;
}
if (this.dateType == 6) {
num = 24 * 3600 * 1000 * 29;
num = 24 * 3600 * 1000 * 30;
}
this.customtime = [
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.Confirmthecontrast = false;


+ 75
- 0
src/views/building/Count.vue Целия файл

@@ -194,6 +194,9 @@
<div style="margin-left: 20px">
<el-button @click="clascreen">清空筛选条件</el-button>
</div>
<div style="margin-left: auto;margin-right:10px;" v-if="cus_build_count_download">
<el-button @click="downLoad">导出</el-button>
</div>
</div>
</div>

@@ -366,6 +369,7 @@ export default {
props: {
lazy: true,
checkStrictly: true,
expandTrigger:'hover',
async lazyLoad(node, resolve) {
const { level } = node;
if (level == 0) {
@@ -389,6 +393,8 @@ export default {
};
});
resolve(nodes);
}else{
resolve()
}
},
},
@@ -427,6 +433,7 @@ export default {
},
created() {
this.cus_build_area_record = this.permissions["cus_build_area_record"];
this.cus_build_count_download = this.permissions["cus_build_count_download"];
},
mounted() {
if(this.orgType==1){
@@ -439,6 +446,74 @@ export default {

},
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(){
if (this.orgType == 1) {
this.$api.http


+ 4
- 1
src/views/building/index.vue Целия файл

@@ -256,7 +256,7 @@
:show-overflow-tooltip="true"
width="120px"
prop="provinceName,cityName"
label="楼盘地"
label="楼盘地"
align="center"
:key="Math.random()"
>
@@ -758,6 +758,7 @@ export default {
props1: {
lazy: true,
checkStrictly: true,
expandTrigger:'hover',
async lazyLoad(node, resolve) {
// console.log(node, 123);
const { level } = node;
@@ -782,6 +783,8 @@ export default {
};
});
resolve(nodes);
}else{
resolve()
}
},
},


+ 2
- 2
vue.config.js Целия файл

@@ -4,8 +4,8 @@
*/
// const url = 'http://pigx-gateway'
// 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://nitu5e.natappfree.cc' //王笑



Зареждане…
Отказ
Запис