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

Merge remote-tracking branch 'origin/master'

parents 42df1ba3 73277e5e
...@@ -400,6 +400,7 @@ export default { ...@@ -400,6 +400,7 @@ export default {
siteId: local.getLocal("siteId"), siteId: local.getLocal("siteId"),
deptData: [], // 部门数据 deptData: [], // 部门数据
windowData: [], // 窗口数据 windowData: [], // 窗口数据
windowFilterData: [], // 过滤工作人员所属窗口数据
WorkmanData: [], // 工作人员列表 WorkmanData: [], // 工作人员列表
deptSearch: "", //部门搜索 deptSearch: "", //部门搜索
windowSearch: "", // 窗口搜索 windowSearch: "", // 窗口搜索
...@@ -445,6 +446,9 @@ export default { ...@@ -445,6 +446,9 @@ export default {
}); });
let { data } = res.data.data; let { data } = res.data.data;
this.windowData = data; this.windowData = data;
if (!this.deptSearch) {
this.windowFilterData = data;
}
}, },
// 获取工作人员列表 // 获取工作人员列表
async getWorkmanData(search = {}) { async getWorkmanData(search = {}) {
...@@ -639,7 +643,12 @@ export default { ...@@ -639,7 +643,12 @@ export default {
}, },
// 过滤窗口 // 过滤窗口
filterWindow(id) { 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' ...@@ -118,8 +118,9 @@ import {getBusInfoById} from '@/api/dataActuary.js'
} }
}, },
methods: { methods: {
async getAnalysisData() { async getAnalysisData(selected) {
const res = await getBusInfoById({busid: this.checkId, siteid: localStorage.getItem('siteId') }) 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.code == 1){
if (res.data.phone) this.testWay.push('手机号') if (res.data.phone) this.testWay.push('手机号')
if (res.data.idcardtake) this.testWay.push('身份证') if (res.data.idcardtake) this.testWay.push('身份证')
...@@ -136,8 +137,8 @@ import {getBusInfoById} from '@/api/dataActuary.js' ...@@ -136,8 +137,8 @@ import {getBusInfoById} from '@/api/dataActuary.js'
} }
} }
}, },
handleChange(){ handleChange(e){
this.getAnalysisData() this.getAnalysisData(e)
} }
}, },
} }
......
...@@ -12,28 +12,20 @@ ...@@ -12,28 +12,20 @@
v-model="checkboxVALUE" v-model="checkboxVALUE"
@change="checkboxonChange" @change="checkboxonChange"
/> />
<a-input <a-input allowClear v-model="Query.workman_name" placeholder="请输入工作人员姓名查询 ">
allowClear
v-model="Query.workman_name"
placeholder="请输入工作人员姓名查询 "
>
<a-icon slot="prefix" type="search" /> <a-icon slot="prefix" type="search" />
</a-input> </a-input>
<a-select v-model="Query.window_id" placeholder="请选择窗口"> <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 <a-select-option
v-for="(item, index) of windowData" v-for="(item, index) of windowData"
:key="index" :key="index"
:value="item.id" :value="item.id"
> >{{ item.englishName }} - {{ item.fromnum }}</a-select-option>
{{ item.englishName }} - {{ item.fromnum }}
</a-select-option>
</a-select> </a-select>
<a-select v-model="Query.warn_alert" placeholder="请选择类型"> <a-select v-model="Query.warn_alert" placeholder="请选择类型">
<a-select-option value=""> 全部 </a-select-option> <a-select-option value>全部</a-select-option>
<a-select-option v-for="(item, i) in warn_alert" :key="i" :value="i"> <a-select-option v-for="(item, i) in warn_alert" :key="i" :value="i">{{ item }}</a-select-option>
{{ item }}
</a-select-option>
</a-select> </a-select>
<a-range-picker <a-range-picker
...@@ -41,12 +33,9 @@ ...@@ -41,12 +33,9 @@
valueFormat="yyyy-MM-DD" valueFormat="yyyy-MM-DD"
class="range_picker_style" class="range_picker_style"
v-model="Query.time" v-model="Query.time"
> ></a-range-picker>
</a-range-picker>
<a-button type="primary" class="addclass" @click="onGetKqalert" <a-button type="primary" class="addclass" @click="onGetKqalert">搜索</a-button>
>搜索</a-button
>
</span> </span>
</div> </div>
<div class="main"> <div class="main">
...@@ -66,9 +55,7 @@ ...@@ -66,9 +55,7 @@
:dataSource="tableSourceData" :dataSource="tableSourceData"
> >
<template slot="operation" slot-scope="text, record"> <template slot="operation" slot-scope="text, record">
<a-button type="link" @click="openDetails" <a-button type="link" @click="openDetails">查看详情{{ record.id }}</a-button>
>查看详情{{ record.id }}</a-button
>
</template> </template>
</a-table> </a-table>
</div> </div>
...@@ -86,7 +73,7 @@ const warn_alert = { ...@@ -86,7 +73,7 @@ const warn_alert = {
2: "离开", 2: "离开",
4: "玩手机", 4: "玩手机",
5: "扶头", 5: "扶头",
6: "趴桌", 6: "趴桌"
}; };
const tHeader = [ const tHeader = [
"序号", "序号",
...@@ -110,7 +97,7 @@ const filterVal = [ ...@@ -110,7 +97,7 @@ const filterVal = [
"out_time", "out_time",
"duration", "duration",
"isaccuracy", "isaccuracy",
"have_process_name", "have_process_name"
]; ];
export default { export default {
mixins: [table], mixins: [table],
...@@ -124,15 +111,15 @@ export default { ...@@ -124,15 +111,15 @@ export default {
warn_alert: "", //1离岗,2离开 4:玩手机 5:扶头 6:趴桌 warn_alert: "", //1离岗,2离开 4:玩手机 5:扶头 6:趴桌
window_id: "", //窗口ID window_id: "", //窗口ID
workman_name: "", //工作人员姓名 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: [], checkboxVALUE: [],
BegindAndEndTime: [], BegindAndEndTime: [],
checkboxOptions: [ checkboxOptions: [
{ {
label: "只看未处理", label: "只看未处理",
value: "0", value: "0"
}, }
], ],
tableHeaders: [ tableHeaders: [
{ {
...@@ -141,54 +128,54 @@ export default { ...@@ -141,54 +128,54 @@ export default {
width: "60px", width: "60px",
key: "index", key: "index",
align: "center", align: "center",
customRender: (text, record, index) => `${index + 1}`, customRender: (text, record, index) => `${index + 1}`
}, },
{ {
title: "报警类型", title: "报警类型",
dataIndex: "warn_alert", dataIndex: "warn_alert",
customRender: (text, record) => warn_alert[text], customRender: (text, record) => warn_alert[text]
}, },
{ {
title: "发生窗口", title: "发生窗口",
dataIndex: "window_name", dataIndex: "window_name",
customRender: (text, record) => (text ? text : "--"), customRender: (text, record) => (text ? text : "--")
}, },
{ {
title: "工作人员", title: "工作人员",
dataIndex: "workman_name", dataIndex: "workman_name",
customRender: (text, record) => (text ? text : "--"), customRender: (text, record) => (text ? text : "--")
}, },
{ {
title: "所属部门", title: "所属部门",
dataIndex: "section_name", dataIndex: "section_name",
customRender: (text, record) => (text ? text : "--"), customRender: (text, record) => (text ? text : "--")
}, },
{ {
title: "手机号", title: "手机号",
dataIndex: "workman_phone", dataIndex: "workman_phone",
customRender: (text, record) => (text ? text : "--"), customRender: (text, record) => (text ? text : "--")
}, },
{ {
title: "发生时间", title: "发生时间",
dataIndex: "out_time", dataIndex: "out_time",
customRender: (text, record) => customRender: (text, record) =>
text ? this.timestampToTime(text) : "--", text ? this.timestampToTime(text) : "--"
}, },
{ {
title: "时长", title: "时长",
dataIndex: "duration", dataIndex: "duration",
customRender: (text, record) => (text ? text : "--"), customRender: (text, record) => (text ? text : "--")
}, },
{ {
title: "是否准确", title: "是否准确",
dataIndex: "isaccuracy", dataIndex: "isaccuracy",
customRender: (text, record) => (text == 1 ? "准确" : "--"), customRender: (text, record) => (text == 1 ? "准确" : "--")
}, },
{ {
title: "是否处理", title: "是否处理",
dataIndex: "have_process_name", dataIndex: "have_process_name",
customRender: (text, record) => (text ? text : "--"), customRender: (text, record) => (text ? text : "--")
}, }
// { // {
// title: "操作", // title: "操作",
// align: "center", // align: "center",
...@@ -199,7 +186,7 @@ export default { ...@@ -199,7 +186,7 @@ export default {
// }, // },
// }, // },
], ],
searchName: undefined, searchName: undefined
}; };
}, },
components: {}, components: {},
...@@ -211,7 +198,7 @@ export default { ...@@ -211,7 +198,7 @@ export default {
methods: { methods: {
// 时间戳转换为日期 // 时间戳转换为日期
timestampToTime(timestamp) { timestampToTime(timestamp) {
var date = new Date(timestamp*1000); var date = new Date(timestamp * 1000);
var Y = date.getFullYear() + "-"; var Y = date.getFullYear() + "-";
var M = var M =
(date.getMonth() + 1 < 10 (date.getMonth() + 1 < 10
...@@ -235,10 +222,11 @@ export default { ...@@ -235,10 +222,11 @@ export default {
await getKqalert({ await getKqalert({
...this.Query, ...this.Query,
page: 1, page: 1,
size: -1, size: -1
}) })
); );
data = datas.data.data; data = datas.data.data;
}
data.forEach((text, i) => { data.forEach((text, i) => {
text.index = i + 1; text.index = i + 1;
text.isaccuracy = text.isaccuracy == 1 ? "准确" : "--"; text.isaccuracy = text.isaccuracy == 1 ? "准确" : "--";
...@@ -246,6 +234,10 @@ export default { ...@@ -246,6 +234,10 @@ export default {
? this.timestampToTime(text.out_time) ? this.timestampToTime(text.out_time)
: "--"; : "--";
}); });
// debugger
console.log(data,11111);
if (!data.length) return; if (!data.length) return;
export2Excel( export2Excel(
...@@ -254,15 +246,14 @@ export default { ...@@ -254,15 +246,14 @@ export default {
data, data,
"AI效能监察异常行为数据报表" + this.$moment().format("YYYYMMDDHHmmss") "AI效能监察异常行为数据报表" + this.$moment().format("YYYYMMDDHHmmss")
); );
}
}, },
// 报表接口 // 报表接口
onGetKqalert() { onGetKqalert() {
getKqalert({ getKqalert({
...this.Query, ...this.Query,
page: this.tablePagination.current, page: this.tablePagination.current,
size: this.tablePagination.pageSize, size: this.tablePagination.pageSize
}).then((res) => { }).then(res => {
const { code, data } = res; const { code, data } = res;
if (code == 1) { if (code == 1) {
this.tableSourceData = data.data; this.tableSourceData = data.data;
...@@ -275,8 +266,8 @@ export default { ...@@ -275,8 +266,8 @@ export default {
windowList({ windowList({
page: 1, page: 1,
size: -1, size: -1,
siteId: JSON.parse(localStorage.getItem("siteId")), siteId: JSON.parse(localStorage.getItem("siteId"))
}).then((res) => { }).then(res => {
const { code, data } = res; const { code, data } = res;
if (code == 1) { if (code == 1) {
this.windowData = data.data; this.windowData = data.data;
...@@ -308,8 +299,8 @@ export default { ...@@ -308,8 +299,8 @@ export default {
default: default:
return "type0"; return "type0";
} }
}, }
}, }
}; };
</script> </script>
......
...@@ -4,42 +4,79 @@ ...@@ -4,42 +4,79 @@
<div> <div>
<a-button <a-button
:loading="btnLoading" :loading="btnLoading"
type="primary" class="addclass" type="primary"
class="addclass"
@click="handleExportTable" @click="handleExportTable"
> >
<span>{{ tableSelectedRows.length ? "导出" : "导出全部" }}</span> <span>{{ tableSelectedRows.length ? "导出" : "导出全部" }}</span>
</a-button> </a-button>
<b>用户总数:<i>{{tableData.total}}</i></b> <b
<b>试用客户:<i>{{tableData.trial}}</i></b> >用户总数:<i>{{ tableData.total }}</i></b
<b>VIP:<i>{{tableData.vip}}</i></b> >
<b>设计师:<i>{{tableData.designer}}</i></b> <b
<b>图片作品数:<i>{{tableData.picturesCount}}</i></b> >试用客户:<i>{{ tableData.trial }}</i></b
<b>视频作品数:<i>{{tableData.videosCount}}</i></b> >
<!-- <b>VIP:<i>{{tableData.vip}}</i></b> -->
<b
>设计师:<i>{{ tableData.designer }}</i></b
>
<b
>图片作品数:<i>{{ tableData.picturesCount }}</i></b
>
<b
>视频作品数:<i>{{ tableData.videosCount }}</i></b
>
</div> </div>
<span class="topBoxFlex"> <span class="topBoxFlex">
<a-input allowClear v-model="searchForm.query" placeholder="请输入用户姓名/手机号搜索"> <a-space>
<a-input
allowClear
v-model="searchForm.query"
placeholder="请输入用户姓名/手机号搜索"
>
<a-icon slot="prefix" type="search" /> <a-icon slot="prefix" type="search" />
</a-input> </a-input>
<a-select v-model="searchForm.memberLevel"> <a-select v-model="searchForm.memberLevel">
<a-select-option value=""> 全部 </a-select-option> <a-select-option value=""> 全部 </a-select-option>
<a-select-option v-for="(item, index) of levelList" :key="index" :value="index"> <a-select-option
v-for="(item, index) of levelList"
:key="index"
:value="index"
>
{{ item }} {{ item }}
</a-select-option> </a-select-option>
</a-select> </a-select>
<a-button type="primary" class="addclass" @click="getList">搜索</a-button> <a-button type="primary" class="addclass" @click="getList"
>搜索</a-button
>
</a-space>
</span> </span>
</div> </div>
<div class="main"> <div class="main">
<a-table size="small" bordered :row-key="(record) => record.id" :row-selection="{ <a-table
size="small"
bordered
:row-key="(record) => record.id"
:row-selection="{
selectedRowKeys: tableSelectedKeys, selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange, onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="pagTableChange" :loading="tableLoading" }"
:columns="tableHeaders" :dataSource="tableList"> :scroll="{ y: 590 }"
<template slot="zhenshixingming" slot-scope="text, record, index"> :pagination="tablePagination"
<a-button type="link" @click="openUserDetails(record)">{{ text?text:'--' }}</a-button> @change="pagTableChange"
:loading="tableLoading"
:columns="tableHeaders"
:dataSource="tableList"
>
<template slot="zhenshixingming" slot-scope="text, record">
<a-button type="link" @click="openUserDetails(record)">{{
text ? text : "--"
}}</a-button>
</template> </template>
<template slot="tupianzuopinshuliang" slot-scope="text, record, index"> <template slot="tupianzuopinshuliang" slot-scope="text, record">
<a-button type="link" @click="openPicWorks(record.id)">{{ (text || text==0)?text:'--' }}</a-button> <a-button type="link" @click="openPicWorks(record.id)">{{
text || text == 0 ? text : "--"
}}</a-button>
</template> </template>
</a-table> </a-table>
<PicWorks ref="PicWorks" /> <PicWorks ref="PicWorks" />
...@@ -53,15 +90,13 @@ import table from "@/mixins/table"; ...@@ -53,15 +90,13 @@ import table from "@/mixins/table";
import UserDetails from "./components/UserDetails.vue"; import UserDetails from "./components/UserDetails.vue";
import PicWorks from "./components/PicWorks.vue"; import PicWorks from "./components/PicWorks.vue";
import { export2Excel } from "@/utils/js/exportExcel"; import { export2Excel } from "@/utils/js/exportExcel";
import { import { getCustomer } from "@/api/customer";
getCustomer
} from "@/api/customer";
const levelList = { const levelList = {
0: '未开启', 0: "未开启",
1: '试用客户', 1: "试用客户",
2: 'VIP', // 2: "VIP",
3: '设计师' 3: "设计师",
} };
export default { export default {
mixins: [table], mixins: [table],
name: "PortalAdminVuePoliticsShow", name: "PortalAdminVuePoliticsShow",
...@@ -70,19 +105,23 @@ export default { ...@@ -70,19 +105,23 @@ export default {
btnLoading: false, btnLoading: false,
levelList: levelList, levelList: levelList,
tableList: [], tableList: [],
tableData:{}, tableData: {},
searchForm: { searchForm: {
query: "",//姓名手机号查询条件 query: "", //姓名手机号查询条件
memberLevel: "",//会员等级查询条件 memberLevel: "", //会员等级查询条件
customerSrc: "",//客户来源查询条件 customerSrc: "", //客户来源查询条件
}, },
tableHeaders: [{ tableHeaders: [
{
title: "序号", title: "序号",
dataIndex: "index", dataIndex: "index",
width: "60px", width: "60px",
key: "index", key: "index",
align: "center", align: "center",
customRender: (text, record, index) => `${index + 1}`, customRender: (text, record, index) =>
(this.tablePagination.current - 1) * this.tablePagination.pageSize +
index +
1,
}, },
{ {
title: "真实姓名", title: "真实姓名",
...@@ -96,13 +135,13 @@ export default { ...@@ -96,13 +135,13 @@ export default {
title: "联系电话", title: "联系电话",
align: "center", align: "center",
dataIndex: "contactTelphone", dataIndex: "contactTelphone",
customRender: (text) => `${text?text:'--'}`, customRender: (text) => `${text ? text : "--"}`,
}, },
{ {
title: "单位名称", title: "单位名称",
align: "center", align: "center",
dataIndex: "organization", dataIndex: "organization",
customRender: (text) => `${text?text:'--'}`, customRender: (text) => `${text ? text : "--"}`,
}, },
{ {
title: "图片作品数量", title: "图片作品数量",
...@@ -116,7 +155,7 @@ export default { ...@@ -116,7 +155,7 @@ export default {
title: "视频作品数量", title: "视频作品数量",
align: "center", align: "center",
dataIndex: "customerDesignVideos", dataIndex: "customerDesignVideos",
customRender: (text) => `${(text || text==0)?text:'--'}`, customRender: (text) => `${text || text == 0 ? text : "--"}`,
}, },
{ {
title: "会员等级", title: "会员等级",
...@@ -128,22 +167,22 @@ export default { ...@@ -128,22 +167,22 @@ export default {
title: "最近登录时间", title: "最近登录时间",
align: "center", align: "center",
dataIndex: "lastLoginTime", dataIndex: "lastLoginTime",
customRender: (text) => `${text?text:'--'}`, customRender: (text) => `${text ? text : "--"}`,
}, },
{ {
title: "使用状态", title: "使用状态",
align: "center", align: "center",
dataIndex: "status", dataIndex: "status",
customRender: (text, record, index) => text == 1 ? '正常' : '禁用', customRender: (text, record, index) => (text == 1 ? "正常" : "禁用"),
}, },
], ],
searchName: undefined, searchName: undefined,
tablePagination:{ tablePagination: {
current:1, current: 1,
pageSize:10 pageSize: 10,
}, },
tableSelectedKeys:[], tableSelectedKeys: [],
tableSelectedRows:[], tableSelectedRows: [],
tHeader: [ tHeader: [
// 导出的表头名信息 // 导出的表头名信息
"真实姓名", "真实姓名",
...@@ -164,7 +203,7 @@ export default { ...@@ -164,7 +203,7 @@ export default {
"customerDesignVideos", "customerDesignVideos",
"memberLevel", "memberLevel",
"lastLoginTime", "lastLoginTime",
"status" "status",
], ],
}; };
}, },
...@@ -188,22 +227,18 @@ export default { ...@@ -188,22 +227,18 @@ export default {
...search, ...search,
}); });
if (res.code == 1) { if (res.code == 1) {
let { let { data, total, pageInfo } = res.data;
data,
total,
pageInfo
} = res.data;
this.tableList = data; this.tableList = data;
this.tableData = res.data this.tableData = res.data;
this.tablePagination.total = total; this.tablePagination.total = total;
return data return data;
} }
}, },
//分页 //分页
pagTableChange(page) { pagTableChange(page) {
this.tablePagination.current = page.current this.tablePagination.current = page.current;
this.tablePagination.pageSize = page.pageSize this.tablePagination.pageSize = page.pageSize;
this.getList(); this.getList();
}, },
// 选中 // 选中
...@@ -225,7 +260,7 @@ export default { ...@@ -225,7 +260,7 @@ export default {
1: "正常", 1: "正常",
2: "禁用", 2: "禁用",
}; };
let data = [] let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) { if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示 // 深度克隆避免影响页面表格展示
data = this.$_.cloneDeep(this.tableSelectedRows); data = this.$_.cloneDeep(this.tableSelectedRows);
...@@ -243,9 +278,7 @@ export default { ...@@ -243,9 +278,7 @@ export default {
"易政秀报表" + this.$moment().format("YYYYMMDDHHmmss") "易政秀报表" + this.$moment().format("YYYYMMDDHHmmss")
); );
} else { } else {
data = this.$_.cloneDeep( data = this.$_.cloneDeep(await this.getList({ page: 1, size: -1 }));
await this.getList({ page: 1, size: -1 })
);
if (!data.length) return; if (!data.length) return;
for (let item of data) { for (let item of data) {
Object.keys(obj).forEach((key) => { Object.keys(obj).forEach((key) => {
...@@ -278,7 +311,7 @@ export default { ...@@ -278,7 +311,7 @@ export default {
this.$refs.PicWorks.modalInfo.title = "作品数量"; this.$refs.PicWorks.modalInfo.title = "作品数量";
this.$refs.PicWorks.modalInfo.visible = true; this.$refs.PicWorks.modalInfo.visible = true;
this.$refs.PicWorks.modalInfo.width = "32%"; this.$refs.PicWorks.modalInfo.width = "32%";
this.$refs.PicWorks.modalInfo.id = id this.$refs.PicWorks.modalInfo.id = id;
}, },
openUserDetails(record) { openUserDetails(record) {
this.$refs.UserDetails.modalInfo.title = "客户详情"; this.$refs.UserDetails.modalInfo.title = "客户详情";
......
...@@ -173,7 +173,7 @@ export default { ...@@ -173,7 +173,7 @@ export default {
{ {
title: "评价设备", title: "评价设备",
align: "center", align: "center",
dataIndex: "pj_name", dataIndex: "devicenum",
customRender: (text) => { customRender: (text) => {
return text ? text : "--"; return text ? text : "--";
}, },
...@@ -336,7 +336,7 @@ export default { ...@@ -336,7 +336,7 @@ export default {
option_id, option_id,
pjxt, pjxt,
time: this.BegindAndEndTime, time: this.BegindAndEndTime,
info: "%"+this.searchName+"%", info: this.searchName,
hallid:this.hallid, hallid:this.hallid,
sectionid:this.sectionid, sectionid:this.sectionid,
...search, ...search,
......
...@@ -342,7 +342,7 @@ export default { ...@@ -342,7 +342,7 @@ export default {
option_id, option_id,
pjxt, pjxt,
time: this.BegindAndEndTime, time: this.BegindAndEndTime,
info: "%"+this.searchName+"%", info: this.searchName,
hallid: this.hallid, hallid: this.hallid,
sectionid: this.sectionid, sectionid: this.sectionid,
...search, ...search,
......
...@@ -2,29 +2,48 @@ ...@@ -2,29 +2,48 @@
<div class="callRecord-Container"> <div class="callRecord-Container">
<div class="header_box"> <div class="header_box">
<div> <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> <span>{{ tableSelectedRows.length ? "导出" : "导出全部" }}</span>
</a-button> </a-button>
<b>叫号次数:<i>{{ tablePagination.total }}</i></b> <b
>叫号次数:<i>{{ tablePagination.total }}</i></b
>
<sub>统计时间段:{{ searchForm.time[0] }}~{{ searchForm.time[1] }}</sub> <sub>统计时间段:{{ searchForm.time[0] }}~{{ searchForm.time[1] }}</sub>
</div> </div>
<span> <span>
<a-space> <a-space>
<a-select v-model="searchForm.hallid"> <a-select v-model="searchForm.hallid">
<a-select-option value=""> 全部大厅 </a-select-option> <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 }} {{ item.hallName }}
</a-select-option> </a-select-option>
</a-select> </a-select>
<a-select v-model="searchForm.sectionid"> <a-select v-model="searchForm.sectionid">
<a-select-option value=""> 全部部门 </a-select-option> <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 }} {{ item.name }}
</a-select-option> </a-select-option>
</a-select> </a-select>
<a-select v-model="searchForm.id"> <a-select v-model="searchForm.id">
<a-select-option value=""> 全部设备 </a-select-option> <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 }} {{ item.name }}
</a-select-option> </a-select-option>
</a-select> </a-select>
...@@ -36,20 +55,36 @@ ...@@ -36,20 +55,36 @@
</a-select> </a-select>
<a-range-picker valueFormat="YYYY-MM-DD" v-model="searchForm.time"> <a-range-picker valueFormat="YYYY-MM-DD" v-model="searchForm.time">
</a-range-picker> </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-icon slot="prefix" type="search" />
</a-input> </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-button @click="resetBtn">重置</a-button>
</a-space> </a-space>
</span> </span>
</div> </div>
<div class="main"> <div class="main">
<a-table size="small" bordered :row-key="(record) => record.id" :row-selection="{ <a-table
size="small"
bordered
:row-key="(record) => record.id"
:row-selection="{
selectedRowKeys: tableSelectedKeys, selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange, onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="changeTablePage" :loading="tableLoading" }"
:columns="tableHeaders" :dataSource="tableList"> :scroll="{ y: 590 }"
:pagination="tablePagination"
@change="changeTablePage"
:loading="tableLoading"
:columns="tableHeaders"
:dataSource="tableList"
>
<!-- 序号 --> <!-- 序号 -->
<span slot="num" slot-scope="text, record, index">{{ <span slot="num" slot-scope="text, record, index">{{
(tablePagination.current - 1) * tablePagination.pageSize + index + 1 (tablePagination.current - 1) * tablePagination.pageSize + index + 1
...@@ -71,7 +106,11 @@ ...@@ -71,7 +106,11 @@
</template> </template>
<!-- 办理业务 --> <!-- 办理业务 -->
<template slot="business" slot-scope="text"> <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> <span v-else>--</span>
</template> </template>
<!-- 办理开始时间 --> <!-- 办理开始时间 -->
...@@ -112,11 +151,13 @@ ...@@ -112,11 +151,13 @@
</template> </template>
<!-- 状态 --> <!-- 状态 -->
<template slot="style" slot-scope="text"> <template slot="style" slot-scope="text">
<span :class="{ <span
:class="{
'stand-line': text.style === 0, 'stand-line': text.style === 0,
'on-transact': text.style === 1, 'on-transact': text.style === 1,
'on-end': text.style === 4, 'on-end': text.style === 4,
}"> }"
>
{{ $codeMap.queueState[text.style] }} {{ $codeMap.queueState[text.style] }}
</span> </span>
</template> </template>
...@@ -280,7 +321,7 @@ export default { ...@@ -280,7 +321,7 @@ export default {
time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")], // 时间区间 time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")], // 时间区间
flownum: "", // 排号编码 flownum: "", // 排号编码
hallid: "", hallid: "",
sectionid: "" sectionid: "",
}, },
// 大厅列表 // 大厅列表
datingList: [], datingList: [],
...@@ -354,7 +395,7 @@ export default { ...@@ -354,7 +395,7 @@ export default {
this.getCalllistArr(); this.getCalllistArr();
this.getCallQueListArr(); this.getCallQueListArr();
}, },
mounted() { }, mounted() {},
methods: { methods: {
// 获取大厅列表 // 获取大厅列表
async getDatingListArr() { async getDatingListArr() {
...@@ -379,7 +420,7 @@ export default { ...@@ -379,7 +420,7 @@ export default {
time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")], // 时间区间 time: [moment().format("YYYY-MM-DD"), moment().format("YYYY-MM-DD")], // 时间区间
flownum: "", // 排号编码 flownum: "", // 排号编码
hallid: "", hallid: "",
sectionid: "" sectionid: "",
}; };
this.getCallQueListArr(); this.getCallQueListArr();
}, },
...@@ -408,7 +449,7 @@ export default { ...@@ -408,7 +449,7 @@ export default {
let { data, total } = res.data; let { data, total } = res.data;
this.tableList = data; this.tableList = data;
this.tablePagination.total = total; this.tablePagination.total = total;
console.log(this.tableList) console.log(this.tableList);
return data; return data;
} }
}, },
......
...@@ -190,6 +190,7 @@ export default { ...@@ -190,6 +190,7 @@ export default {
async censusListInterface() { async censusListInterface() {
this.siteId = Storage.get(2, "siteId"); this.siteId = Storage.get(2, "siteId");
let res = await censusListInterface({ siteId: this.siteId }); let res = await censusListInterface({ siteId: this.siteId });
if (res.code == 1) {
let { let {
CensusType_1, CensusType_1,
CensusType_2, CensusType_2,
...@@ -207,6 +208,7 @@ export default { ...@@ -207,6 +208,7 @@ export default {
this.CensusType_4 = CensusType_4.filter((v) => v.status != 0); this.CensusType_4 = CensusType_4.filter((v) => v.status != 0);
if (CensusType_5 && CensusType_5.length) if (CensusType_5 && CensusType_5.length)
this.CensusType_5 = CensusType_5.filter((v) => v.status != 0); this.CensusType_5 = CensusType_5.filter((v) => v.status != 0);
}
}, },
// 查看数据 // 查看数据
handleCkeck(path) { handleCkeck(path) {
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<div class="img_box img3"></div> <div class="img_box img3"></div>
</a-carousel> </a-carousel>
<div class="title"> <div class="title">
<h3 style="text-align: center;font-size: 50px;">宜人·宜宾·宜办事</h3> <h3 style="text-align: center; font-size: 50px">宜人·宜宾·宜办事</h3>
<!-- <p>“互联网+政务服务”整体解决方案提供商和服务商</p> --> <!-- <p>“互联网+政务服务”整体解决方案提供商和服务商</p> -->
</div> </div>
<div class="classification"> <div class="classification">
...@@ -28,9 +28,9 @@ ...@@ -28,9 +28,9 @@
class="mod_max" class="mod_max"
v-for="item of siteModelList" v-for="item of siteModelList"
:key="item.id" :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 <img
width="40" width="40"
height="35" height="35"
...@@ -76,29 +76,35 @@ export default { ...@@ -76,29 +76,35 @@ export default {
this.siteId = Storage.get(2, "siteId"); this.siteId = Storage.get(2, "siteId");
let res = await appsListInterface({ siteId: this.siteId }); let res = await appsListInterface({ siteId: this.siteId });
let { data } = res.data; let { data } = res.data;
let color = [] let color = [];
let colorArr = ['#546DFF','#1E6FFF','#3CBFFF','#00AA5B','#FFAB00'] let colorArr = ["#546DFF", "#1E6FFF", "#3CBFFF", "#00AA5B", "#FFAB00"];
color = colorArr.concat(colorArr,colorArr,colorArr,colorArr,colorArr,colorArr) color = colorArr.concat(
this.siteModelList = data.map((v,i)=>{ colorArr,
v['color'] = color[i] colorArr,
return v 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 token = Storage.get(2, "Authorization");
let siteid = Storage.get(2, "siteId") ? Storage.get(2, "siteId") : 0; let siteid = Storage.get(2, "siteId") ? Storage.get(2, "siteId") : 0;
let siteName = Storage.get(2, "siteName") let siteName = Storage.get(2, "siteName")
? Storage.get(2, "siteName") ? Storage.get(2, "siteName")
: ""; : "";
let reg = /^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/;
let info = Storage.get(2, "userInfo"); let info = Storage.get(2, "userInfo");
let userInfo = JSON.stringify({ let userInfo = JSON.stringify({
id: info.id, id: info.id,
name: info.loginName, name: info.loginName,
}); });
let { modelUrl, modelName, modelIcon } = row;
window.open( 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" "_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