Commit 08e8bbd6 authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents 42df1ba3 73277e5e
......@@ -400,6 +400,7 @@ export default {
siteId: local.getLocal("siteId"),
deptData: [], // 部门数据
windowData: [], // 窗口数据
windowFilterData: [], // 过滤工作人员所属窗口数据
WorkmanData: [], // 工作人员列表
deptSearch: "", //部门搜索
windowSearch: "", // 窗口搜索
......@@ -445,6 +446,9 @@ export default {
});
let { data } = res.data.data;
this.windowData = data;
if (!this.deptSearch) {
this.windowFilterData = data;
}
},
// 获取工作人员列表
async getWorkmanData(search = {}) {
......@@ -639,7 +643,12 @@ export default {
},
// 过滤窗口
filterWindow(id) {
return this.windowData.find((v) => v.id == id).fromnum;
let fromnum = "--";
let row = this.windowFilterData.find((v) => v.id == id);
if (row) {
fromnum = row.fromnum;
}
return fromnum;
},
},
};
......
......@@ -118,8 +118,9 @@ import {getBusInfoById} from '@/api/dataActuary.js'
}
},
methods: {
async getAnalysisData() {
const res = await getBusInfoById({busid: this.checkId, siteid: localStorage.getItem('siteId') })
async getAnalysisData(selected) {
let pramse = (selected || selected===0 ||selected==='0')?{busid: this.checkId, siteid: localStorage.getItem('siteId'),selected:selected }:{busid: this.checkId, siteid: localStorage.getItem('siteId') }
const res = await getBusInfoById(pramse)
if(res.code == 1){
if (res.data.phone) this.testWay.push('手机号')
if (res.data.idcardtake) this.testWay.push('身份证')
......@@ -136,8 +137,8 @@ import {getBusInfoById} from '@/api/dataActuary.js'
}
}
},
handleChange(){
this.getAnalysisData()
handleChange(e){
this.getAnalysisData(e)
}
},
}
......
......@@ -12,28 +12,20 @@
v-model="checkboxVALUE"
@change="checkboxonChange"
/>
<a-input
allowClear
v-model="Query.workman_name"
placeholder="请输入工作人员姓名查询 "
>
<a-input allowClear v-model="Query.workman_name" placeholder="请输入工作人员姓名查询 ">
<a-icon slot="prefix" type="search" />
</a-input>
<a-select v-model="Query.window_id" placeholder="请选择窗口">
<a-select-option value=""> 全部 </a-select-option>
<a-select-option value>全部</a-select-option>
<a-select-option
v-for="(item, index) of windowData"
:key="index"
:value="item.id"
>
{{ item.englishName }} - {{ item.fromnum }}
</a-select-option>
>{{ item.englishName }} - {{ item.fromnum }}</a-select-option>
</a-select>
<a-select v-model="Query.warn_alert" placeholder="请选择类型">
<a-select-option value=""> 全部 </a-select-option>
<a-select-option v-for="(item, i) in warn_alert" :key="i" :value="i">
{{ item }}
</a-select-option>
<a-select-option value>全部</a-select-option>
<a-select-option v-for="(item, i) in warn_alert" :key="i" :value="i">{{ item }}</a-select-option>
</a-select>
<a-range-picker
......@@ -41,12 +33,9 @@
valueFormat="yyyy-MM-DD"
class="range_picker_style"
v-model="Query.time"
>
</a-range-picker>
></a-range-picker>
<a-button type="primary" class="addclass" @click="onGetKqalert"
>搜索</a-button
>
<a-button type="primary" class="addclass" @click="onGetKqalert">搜索</a-button>
</span>
</div>
<div class="main">
......@@ -66,9 +55,7 @@
:dataSource="tableSourceData"
>
<template slot="operation" slot-scope="text, record">
<a-button type="link" @click="openDetails"
>查看详情{{ record.id }}</a-button
>
<a-button type="link" @click="openDetails">查看详情{{ record.id }}</a-button>
</template>
</a-table>
</div>
......@@ -86,7 +73,7 @@ const warn_alert = {
2: "离开",
4: "玩手机",
5: "扶头",
6: "趴桌",
6: "趴桌"
};
const tHeader = [
"序号",
......@@ -110,7 +97,7 @@ const filterVal = [
"out_time",
"duration",
"isaccuracy",
"have_process_name",
"have_process_name"
];
export default {
mixins: [table],
......@@ -124,15 +111,15 @@ export default {
warn_alert: "", //1离岗,2离开 4:玩手机 5:扶头 6:趴桌
window_id: "", //窗口ID
workman_name: "", //工作人员姓名
time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")], // 时间区间
time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")] // 时间区间
}, //查询条件
checkboxVALUE: [],
BegindAndEndTime: [],
checkboxOptions: [
{
label: "只看未处理",
value: "0",
},
value: "0"
}
],
tableHeaders: [
{
......@@ -141,54 +128,54 @@ export default {
width: "60px",
key: "index",
align: "center",
customRender: (text, record, index) => `${index + 1}`,
customRender: (text, record, index) => `${index + 1}`
},
{
title: "报警类型",
dataIndex: "warn_alert",
customRender: (text, record) => warn_alert[text],
customRender: (text, record) => warn_alert[text]
},
{
title: "发生窗口",
dataIndex: "window_name",
customRender: (text, record) => (text ? text : "--"),
customRender: (text, record) => (text ? text : "--")
},
{
title: "工作人员",
dataIndex: "workman_name",
customRender: (text, record) => (text ? text : "--"),
customRender: (text, record) => (text ? text : "--")
},
{
title: "所属部门",
dataIndex: "section_name",
customRender: (text, record) => (text ? text : "--"),
customRender: (text, record) => (text ? text : "--")
},
{
title: "手机号",
dataIndex: "workman_phone",
customRender: (text, record) => (text ? text : "--"),
customRender: (text, record) => (text ? text : "--")
},
{
title: "发生时间",
dataIndex: "out_time",
customRender: (text, record) =>
text ? this.timestampToTime(text) : "--",
text ? this.timestampToTime(text) : "--"
},
{
title: "时长",
dataIndex: "duration",
customRender: (text, record) => (text ? text : "--"),
customRender: (text, record) => (text ? text : "--")
},
{
title: "是否准确",
dataIndex: "isaccuracy",
customRender: (text, record) => (text == 1 ? "准确" : "--"),
customRender: (text, record) => (text == 1 ? "准确" : "--")
},
{
title: "是否处理",
dataIndex: "have_process_name",
customRender: (text, record) => (text ? text : "--"),
},
customRender: (text, record) => (text ? text : "--")
}
// {
// title: "操作",
// align: "center",
......@@ -199,7 +186,7 @@ export default {
// },
// },
],
searchName: undefined,
searchName: undefined
};
},
components: {},
......@@ -211,7 +198,7 @@ export default {
methods: {
// 时间戳转换为日期
timestampToTime(timestamp) {
var date = new Date(timestamp*1000);
var date = new Date(timestamp * 1000);
var Y = date.getFullYear() + "-";
var M =
(date.getMonth() + 1 < 10
......@@ -235,34 +222,38 @@ export default {
await getKqalert({
...this.Query,
page: 1,
size: -1,
size: -1
})
);
data = datas.data.data;
data.forEach((text, i) => {
text.index = i + 1;
text.isaccuracy = text.isaccuracy == 1 ? "准确" : "--";
text.out_time = text.out_time
? this.timestampToTime(text.out_time)
: "--";
});
if (!data.length) return;
export2Excel(
tHeader,
filterVal,
data,
"AI效能监察异常行为数据报表" + this.$moment().format("YYYYMMDDHHmmss")
);
}
data.forEach((text, i) => {
text.index = i + 1;
text.isaccuracy = text.isaccuracy == 1 ? "准确" : "--";
text.out_time = text.out_time
? this.timestampToTime(text.out_time)
: "--";
});
// debugger
console.log(data,11111);
if (!data.length) return;
export2Excel(
tHeader,
filterVal,
data,
"AI效能监察异常行为数据报表" + this.$moment().format("YYYYMMDDHHmmss")
);
},
// 报表接口
onGetKqalert() {
getKqalert({
...this.Query,
page: this.tablePagination.current,
size: this.tablePagination.pageSize,
}).then((res) => {
size: this.tablePagination.pageSize
}).then(res => {
const { code, data } = res;
if (code == 1) {
this.tableSourceData = data.data;
......@@ -275,8 +266,8 @@ export default {
windowList({
page: 1,
size: -1,
siteId: JSON.parse(localStorage.getItem("siteId")),
}).then((res) => {
siteId: JSON.parse(localStorage.getItem("siteId"))
}).then(res => {
const { code, data } = res;
if (code == 1) {
this.windowData = data.data;
......@@ -308,8 +299,8 @@ export default {
default:
return "type0";
}
},
},
}
}
};
</script>
......
......@@ -173,7 +173,7 @@ export default {
{
title: "评价设备",
align: "center",
dataIndex: "pj_name",
dataIndex: "devicenum",
customRender: (text) => {
return text ? text : "--";
},
......@@ -336,7 +336,7 @@ export default {
option_id,
pjxt,
time: this.BegindAndEndTime,
info: "%"+this.searchName+"%",
info: this.searchName,
hallid:this.hallid,
sectionid:this.sectionid,
...search,
......
......@@ -342,7 +342,7 @@ export default {
option_id,
pjxt,
time: this.BegindAndEndTime,
info: "%"+this.searchName+"%",
info: this.searchName,
hallid: this.hallid,
sectionid: this.sectionid,
...search,
......
......@@ -2,29 +2,48 @@
<div class="callRecord-Container">
<div class="header_box">
<div>
<a-button type="primary" class="addclass" @click="handleExportTable" :loading="btnLoading">
<a-button
type="primary"
class="addclass"
@click="handleExportTable"
:loading="btnLoading"
>
<span>{{ tableSelectedRows.length ? "导出" : "导出全部" }}</span>
</a-button>
<b>叫号次数:<i>{{ tablePagination.total }}</i></b>
<b
>叫号次数:<i>{{ tablePagination.total }}</i></b
>
<sub>统计时间段:{{ searchForm.time[0] }}~{{ searchForm.time[1] }}</sub>
</div>
<span>
<a-space>
<a-select v-model="searchForm.hallid">
<a-select-option value=""> 全部大厅 </a-select-option>
<a-select-option v-for="item in datingList" :key="item.id" :value="item.id">
<a-select-option
v-for="item in datingList"
:key="item.id"
:value="item.id"
>
{{ item.hallName }}
</a-select-option>
</a-select>
<a-select v-model="searchForm.sectionid">
<a-select-option value=""> 全部部门 </a-select-option>
<a-select-option v-for="item in bumenList" :key="item.id" :value="item.id">
<a-select-option
v-for="item in bumenList"
:key="item.id"
:value="item.id"
>
{{ item.name }}
</a-select-option>
</a-select>
<a-select v-model="searchForm.id">
<a-select-option value=""> 全部设备 </a-select-option>
<a-select-option v-for="item in deviceData" :key="item.id" :value="item.id">
<a-select-option
v-for="item in deviceData"
:key="item.id"
:value="item.id"
>
{{ item.name }}
</a-select-option>
</a-select>
......@@ -36,20 +55,36 @@
</a-select>
<a-range-picker valueFormat="YYYY-MM-DD" v-model="searchForm.time">
</a-range-picker>
<a-input v-model="searchForm.flownum" placeholder="请输入排队编号搜索" @pressEnter="handleSearch">
<a-input
v-model="searchForm.flownum"
placeholder="请输入排队编号搜索"
@pressEnter="handleSearch"
>
<a-icon slot="prefix" type="search" />
</a-input>
<a-button type="primary" class="addclass" @click="handleSearch">搜索</a-button>
<a-button type="primary" class="addclass" @click="handleSearch"
>搜索</a-button
>
<a-button @click="resetBtn">重置</a-button>
</a-space>
</span>
</div>
<div class="main">
<a-table size="small" bordered :row-key="(record) => record.id" :row-selection="{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="changeTablePage" :loading="tableLoading"
:columns="tableHeaders" :dataSource="tableList">
<a-table
size="small"
bordered
:row-key="(record) => record.id"
:row-selection="{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}"
:scroll="{ y: 590 }"
:pagination="tablePagination"
@change="changeTablePage"
:loading="tableLoading"
:columns="tableHeaders"
:dataSource="tableList"
>
<!-- 序号 -->
<span slot="num" slot-scope="text, record, index">{{
(tablePagination.current - 1) * tablePagination.pageSize + index + 1
......@@ -71,7 +106,11 @@
</template>
<!-- 办理业务 -->
<template slot="business" slot-scope="text">
<a v-if="text.business" @click="openBusiness(text.business, text.businessid)">{{ text.business }}</a>
<a
v-if="text.business"
@click="openBusiness(text.business, text.businessid)"
>{{ text.business }}</a
>
<span v-else>--</span>
</template>
<!-- 办理开始时间 -->
......@@ -91,8 +130,8 @@
<template slot="window_name" slot-scope="text">
{{
text.window_name
? text.window_name + "-" + text.window_fromnum
: "--"
? text.window_name + "-" + text.window_fromnum
: "--"
}}
</template>
<!-- 工作人员 -->
......@@ -112,11 +151,13 @@
</template>
<!-- 状态 -->
<template slot="style" slot-scope="text">
<span :class="{
'stand-line': text.style === 0,
'on-transact': text.style === 1,
'on-end': text.style === 4,
}">
<span
:class="{
'stand-line': text.style === 0,
'on-transact': text.style === 1,
'on-end': text.style === 4,
}"
>
{{ $codeMap.queueState[text.style] }}
</span>
</template>
......@@ -280,7 +321,7 @@ export default {
time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")], // 时间区间
flownum: "", // 排号编码
hallid: "",
sectionid: ""
sectionid: "",
},
// 大厅列表
datingList: [],
......@@ -354,7 +395,7 @@ export default {
this.getCalllistArr();
this.getCallQueListArr();
},
mounted() { },
mounted() {},
methods: {
// 获取大厅列表
async getDatingListArr() {
......@@ -379,7 +420,7 @@ export default {
time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")], // 时间区间
flownum: "", // 排号编码
hallid: "",
sectionid: ""
sectionid: "",
};
this.getCallQueListArr();
},
......@@ -408,7 +449,7 @@ export default {
let { data, total } = res.data;
this.tableList = data;
this.tablePagination.total = total;
console.log(this.tableList)
console.log(this.tableList);
return data;
}
},
......
......@@ -190,23 +190,25 @@ export default {
async censusListInterface() {
this.siteId = Storage.get(2, "siteId");
let res = await censusListInterface({ siteId: this.siteId });
let {
CensusType_1,
CensusType_2,
CensusType_3,
CensusType_4,
CensusType_5,
} = res.data.data;
if (CensusType_1 && CensusType_1.length)
this.CensusType_1 = CensusType_1.filter((v) => v.status != 0);
if (CensusType_2 && CensusType_2.length)
this.CensusType_2 = CensusType_2.filter((v) => v.status != 0);
if (CensusType_3 && CensusType_3.length)
this.CensusType_3 = CensusType_3.filter((v) => v.status != 0);
if (CensusType_4 && CensusType_4.length)
this.CensusType_4 = CensusType_4.filter((v) => v.status != 0);
if (CensusType_5 && CensusType_5.length)
this.CensusType_5 = CensusType_5.filter((v) => v.status != 0);
if (res.code == 1) {
let {
CensusType_1,
CensusType_2,
CensusType_3,
CensusType_4,
CensusType_5,
} = res.data.data;
if (CensusType_1 && CensusType_1.length)
this.CensusType_1 = CensusType_1.filter((v) => v.status != 0);
if (CensusType_2 && CensusType_2.length)
this.CensusType_2 = CensusType_2.filter((v) => v.status != 0);
if (CensusType_3 && CensusType_3.length)
this.CensusType_3 = CensusType_3.filter((v) => v.status != 0);
if (CensusType_4 && CensusType_4.length)
this.CensusType_4 = CensusType_4.filter((v) => v.status != 0);
if (CensusType_5 && CensusType_5.length)
this.CensusType_5 = CensusType_5.filter((v) => v.status != 0);
}
},
// 查看数据
handleCkeck(path) {
......
......@@ -19,7 +19,7 @@
<div class="img_box img3"></div>
</a-carousel>
<div class="title">
<h3 style="text-align: center;font-size: 50px;">宜人·宜宾·宜办事</h3>
<h3 style="text-align: center; font-size: 50px">宜人·宜宾·宜办事</h3>
<!-- <p>“互联网+政务服务”整体解决方案提供商和服务商</p> -->
</div>
<div class="classification">
......@@ -28,9 +28,9 @@
class="mod_max"
v-for="item of siteModelList"
:key="item.id"
@click="openWindow(item.modelUrl)"
@click="openWindow(item)"
>
<div class="picture" :style="{background: item.color}">
<div class="picture" :style="{ background: item.color }">
<img
width="40"
height="35"
......@@ -76,29 +76,35 @@ export default {
this.siteId = Storage.get(2, "siteId");
let res = await appsListInterface({ siteId: this.siteId });
let { data } = res.data;
let color = []
let colorArr = ['#546DFF','#1E6FFF','#3CBFFF','#00AA5B','#FFAB00']
color = colorArr.concat(colorArr,colorArr,colorArr,colorArr,colorArr,colorArr)
this.siteModelList = data.map((v,i)=>{
v['color'] = color[i]
return v
let color = [];
let colorArr = ["#546DFF", "#1E6FFF", "#3CBFFF", "#00AA5B", "#FFAB00"];
color = colorArr.concat(
colorArr,
colorArr,
colorArr,
colorArr,
colorArr,
colorArr
);
this.siteModelList = data.map((v, i) => {
v["color"] = color[i];
return v;
});
},
openWindow(href) {
openWindow(row) {
let token = Storage.get(2, "Authorization");
let siteid = Storage.get(2, "siteId") ? Storage.get(2, "siteId") : 0;
let siteName = Storage.get(2, "siteName")
? Storage.get(2, "siteName")
: "";
let reg = /^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/;
let info = Storage.get(2, "userInfo");
let userInfo = JSON.stringify({
id: info.id,
name: info.loginName,
});
let { modelUrl, modelName, modelIcon } = row;
window.open(
`${href}?token=${token}&siteid=${siteid}&siteName=${siteName}&userInfo=${userInfo}`,
`${modelUrl}?token=${token}&siteid=${siteid}&siteName=${siteName}&userInfo=${userInfo}&sysName=${modelName}&sysLogo=${modelIcon}`,
"_blank"
);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment