From e8f9a6ab3d258c028da4fdc4a51c3985a9eba67c Mon Sep 17 00:00:00 2001
From: zhengpz <1838927346@qq.com>
Date: Wed, 18 Aug 2021 22:44:00 +0800
Subject: [PATCH] 对接口
---
src/api/securityUnitOperation/securityUnitOperation.js | 21
src/views/securityUnitOperation/securityEchart.js | 16
src/views/statisticalQueryManagement/businessStatistics.vue | 63 +
src/views/home/index.vue | 145 ++--
src/api/index/index.js | 45 +
src/views/statisticalQueryManagement/companyDetails.vue | 253 ++++----
src/views/statisticalQueryManagement/securityGuardStatistics.vue | 121 ++-
src/views/statisticalQueryManagement/businessStatisticsDetail.vue | 213 +++---
src/views/securityUnitOperation/economicAnalysis.vue | 86 ++
src/api/statisticalQueryManagement/statisticalQueryManagement.js | 37 +
src/views/securityUnitOperation/economicTable.vue | 357 ++++-------
src/views/securityUnitOperation/operationTable.vue | 349 ++++-------
12 files changed, 860 insertions(+), 846 deletions(-)
diff --git a/src/api/index/index.js b/src/api/index/index.js
index e48484f..1f9bb78 100644
--- a/src/api/index/index.js
+++ b/src/api/index/index.js
@@ -19,27 +19,28 @@
method: "get"
});
};
-export const getLiveLocationVoList = (params) => {
+export const getLiveLocationVoList = params => {
return request({
url: "/api/liveLocation/getLiveLocationVoList",
method: "get",
params: params
});
};
+// 获取辖区列表
export const lazyTreeJu = () => {
return request({
url: "/api/information/lazyTreeJu",
method: "post"
});
};
-export const noholderNum = (params) => {
+export const noholderNum = params => {
return request({
url: "/api/information/selectInCount",
method: "post",
params: params
});
};
-export const noSocialSecurity = (params) => {
+export const noSocialSecurity = params => {
return request({
url: "/api/information/selectCs",
method: "post",
@@ -49,31 +50,31 @@
export const selectFj = () => {
return request({
url: "/api/information/selectFj",
- method: "post",
+ method: "post"
});
};
-export const selectBx = (params) => {
+export const selectBx = params => {
return request({
url: "/api/information/selectBx",
method: "post",
params: params
});
};
-export const selectExtype = (params) => {
+export const selectExtype = params => {
return request({
url: "/api/information/selectExtype",
method: "post",
params: params
});
};
-export const seCountUg = (params) => {
+export const seCountUg = params => {
return request({
url: "/api/information/seCountUg",
method: "post",
params: params
});
};
-export const seCountI = (params) => {
+export const seCountI = params => {
return request({
url: "/api/information/seCountI",
method: "post",
@@ -83,11 +84,27 @@
export const selectExtypeUser = () => {
return request({
url: "/api/information/selectExtypeUser",
- method: "post",
+ method: "post"
});
};
-
-
-
-
-
+// 资格审查异常人员清单
+export const qualificationPages = () => {
+ return request({
+ url: "/api/blade-user/pages",
+ method: "get"
+ });
+};
+// 监管处罚数量
+export const selectCf = () => {
+ return request({
+ url: "/api/information/selectCf",
+ method: "post"
+ });
+};
+// 公司材料不全数量
+export const selectCl = () => {
+ return request({
+ url: "/api/information/selectCl",
+ method: "post"
+ });
+};
diff --git a/src/api/securityUnitOperation/securityUnitOperation.js b/src/api/securityUnitOperation/securityUnitOperation.js
index ae9605b..feb392d 100644
--- a/src/api/securityUnitOperation/securityUnitOperation.js
+++ b/src/api/securityUnitOperation/securityUnitOperation.js
@@ -54,4 +54,25 @@
method: "get",
params: params
});
+};
+export const queryYearPz = (params) => {
+ return request({
+ url: "/api/information/queryYearPz",
+ method: "get",
+ params: params
+ });
+};
+export const selectTb = (params) => {
+ return request({
+ url: "/api/information/selectTb",
+ method: "post",
+ params: params
+ });
+};
+export const selectJj = (params) => {
+ return request({
+ url: "/api/information/selectJj",
+ method: "post",
+ params: params
+ });
};
\ No newline at end of file
diff --git a/src/api/statisticalQueryManagement/statisticalQueryManagement.js b/src/api/statisticalQueryManagement/statisticalQueryManagement.js
new file mode 100644
index 0000000..f7cef62
--- /dev/null
+++ b/src/api/statisticalQueryManagement/statisticalQueryManagement.js
@@ -0,0 +1,37 @@
+import request from "@/router/axios";
+export const selectLi = (params) => {
+ return request({
+ url: "/api/information/selectLi",
+ method: "post",
+ params: params
+ });
+};
+export const selectYw = (params) => {
+ return request({
+ url: "/api/information/selectYw",
+ method: "post",
+ params: params
+ });
+};
+export const selectUIn = (params) => {
+ return request({
+ url: "/api/information/selectUIn",
+ method: "post",
+ params: params
+ });
+};
+export const selectDis = (params) => {
+ return request({
+ url: "/api/information/selectDis",
+ method: "post",
+ params: params
+ });
+};
+// 服务单位下拉接口
+export const selectFw = (params) => {
+ return request({
+ url: "/api/information/selectFw",
+ method: "post",
+ params: params
+ });
+};
\ No newline at end of file
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index f42cc58..8c0a6c2 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -247,20 +247,20 @@
<div class="right-content" v-loading="right1loading">
<span
class="left2-btn date"
- :class="[poorPerformanceType === 0 ? 'bayHover' : '']"
- @click="getPoorPerformance(0)"
+ :class="[poorPerformanceType === 1 ? 'bayHover' : '']"
+ @click="getPoorPerformance(1)"
>当日</span
>
<span
class="left2-btn mounce"
- :class="[poorPerformanceType === 1 ? 'bayHover' : '']"
- @click="getPoorPerformance(1)"
+ :class="[poorPerformanceType === 2 ? 'bayHover' : '']"
+ @click="getPoorPerformance(2)"
>当月</span
>
<span
class="left2-btn all"
- :class="[poorPerformanceType === 2 ? 'bayHover' : '']"
- @click="getPoorPerformance(2)"
+ :class="[poorPerformanceType === 3 ? 'bayHover' : '']"
+ @click="getPoorPerformance(3)"
>全部</span
>
<div class="card-list" style="margin-top: 21px">
@@ -270,7 +270,7 @@
<span>{{ rightData.poorPerformance }}</span>
<span>现实表现差</span>
</div>
- <div class="card-list">
+ <div class="card-list" @click="getQualificationPages">
<img src="../../../public/img/bajgxt/u4.png" />
<img src="../../../public/img/bajgxt/u230.png" />
<img src="../../../public/img/bajgxt/u1.png" />
@@ -312,8 +312,8 @@
<div class="rightData rightData2">
<img src="../../../public/img/bajgxt/u232.png" alt />
<div class="text">
- <span>资质未过审</span>
- <span>23个</span>
+ <span>材料不齐全</span>
+ <span>{{ rightData.materialNum }}个</span>
</div>
</div>
<div class="rightData rightData3">
@@ -327,7 +327,7 @@
<img src="../../../public/img/bajgxt/111.png" alt />
<div class="text">
<span>监管处罚</span>
- <span>6个</span>
+ <span>{{ rightData.punishNum }}个</span>
</div>
</div>
<!-- <div class="card-list">
@@ -394,7 +394,10 @@
selectExtype,
seCountUg,
seCountI,
- selectExtypeUser
+ selectExtypeUser,
+ qualificationPages,
+ selectCf,
+ selectCl
} from "../../api/index/index";
import car from "@/assets/img/car.png";
@@ -418,8 +421,8 @@
rightData: {
poorPerformance: 0,
qualification: 0,
- socialSecurity: 0,
- noholder: 0
+ materialNum: 0,
+ punishNum: 0
},
carNum: 0,
peoNum: 0,
@@ -449,7 +452,7 @@
nv: 0
},
left2EchartType: 0,
- poorPerformanceType: 2
+ poorPerformanceType: 3
};
},
computed: {
@@ -778,31 +781,47 @@
this.value1 = this.options1[0].value || "";
this.value2 = this.options2[0].value || "";
// 获取完辖区列表之后再获取具体数据
- this.getNoholderNum();
- this.getNoSocialSecurity();
+ this.getPunishNum();
+ this.getMaterial();
// this.getQualification();
- this.getPoorPerformance(2);
+ this.getPoorPerformance(3);
} else {
this.$message.error(res.msg);
}
});
},
- // 未持证
- getNoholderNum() {
- noholderNum({ jurisdiction: this.value2 }).then(res => {
+ // 资格审查异常名单
+ getQualificationPages() {
+ let params = {
+ current: 1,
+ size: 10,
+ examinationType: this.poorPerformanceType,
+ jurisdiction: this.value1
+ };
+ qualificationPages(params).then(res => {
if (res.data.code === 200) {
- this.rightData.noholder = res.data.data[0].Count;
+ let tableData = res.data.data;
+ }
+ });
+ },
+ // 公司受处罚数量
+ getPunishNum() {
+ this.rightData.punishNum = 0;
+ selectCf({ jurisdiction: this.value2 }).then(res => {
+ if (res.data.code === 200) {
+ this.rightData.punishNum = res.data.data[0].count;
} else {
this.$message.error(res.msg);
}
this.right2loading = false;
});
},
- // 未缴纳社保
- getNoSocialSecurity() {
- noSocialSecurity({ jurisdiction: this.value2 }).then(res => {
+ // 公司材料不全数量
+ getMaterial() {
+ this.rightData.materialNum = 0;
+ selectCl({ jurisdiction: this.value2 }).then(res => {
if (res.data.code === 200) {
- this.rightData.socialSecurity = res.data.data[0].Count;
+ this.rightData.materialNum = res.data.data[0].count;
} else {
this.$message.error(res.msg);
}
@@ -813,54 +832,60 @@
getPoorPerformance(type) {
this.right1loading = true;
this.poorPerformanceType = type;
- if (type === 0) {
- this.rightData.poorPerformance = 2;
- this.rightData.qualification = 3;
+ this.rightData.poorPerformance = 0;
+ this.rightData.qualification = 0;
+
+ // if (type === 1) {
+ // this.rightData.poorPerformance = 2;
+ // this.rightData.qualification = 3;
+ // this.right1loading = false;
+ // } else if (type === 2) {
+ // this.rightData.poorPerformance = 11;
+ // this.rightData.qualification = 14;
+ // this.right1loading = false;
+ // } else if (type === 3) {
+ // this.rightData.poorPerformance = 32;
+ // this.rightData.qualification = 45;
+ selectBx({
+ jurisdiction: this.value1,
+ type: this.poorPerformanceType
+ }).then(res => {
+ if (res.data.code === 200) {
+ this.rightData.poorPerformance = res.data.data[0].count;
+ } else {
+ this.$message.error(res.msg);
+ }
this.right1loading = false;
- } else if (type === 1) {
- this.rightData.poorPerformance = 11;
- this.rightData.qualification = 14;
- this.right1loading = false;
- } else if (type === 2) {
- // this.rightData.poorPerformance = 32;
- // this.rightData.qualification = 45;
- selectBx({ jurisdiction: this.value1 }).then(res => {
- if (res.data.code === 200) {
- this.rightData.poorPerformance = res.data.data[0].count;
- } else {
- this.$message.error(res.msg);
- }
- this.right1loading = false;
- });
- selectExtypeUser().then(res => {
- if (res.status === 200) {
- this.rightData.qualification = res.data;
- } else {
- this.$message.error(res.msg);
- }
- });
- }
- // this.right1loading = false;
- },
- // 资格审查异常
- getQualification() {
- selectExtype({ jurisdiction: this.value1 }).then(res => {
+ });
+ selectExtype({
+ jurisdiction: this.value1,
+ type: this.poorPerformanceType
+ }).then(res => {
if (res.data.code === 200) {
this.rightData.qualification = res.data.data[0].count;
} else {
this.$message.error(res.msg);
}
});
+ // selectExtypeUser().then(res => {
+ // if (res.status === 200) {
+ // this.rightData.qualification = res.data;
+ // } else {
+ // this.$message.error(res.msg);
+ // }
+ // });
+ // }
+ // this.right1loading = false;
},
peoWarning() {
this.right2loading = true;
- this.getNoholderNum();
- this.getNoSocialSecurity();
+ this.getPunishNum();
+ this.getMaterial();
},
companyWarning() {
this.right1loading = true;
- this.getPoorPerformance(2);
+ this.getPoorPerformance(3);
// this.getQualification();
},
@@ -873,7 +898,7 @@
this.startMove();
this.initEchart();
this.getHolderNum(0);
- this.getPoorPerformance(2);
+ this.getPoorPerformance(3);
// this.getTableData("car");
// this.initMap();
this.getTableData(0);
diff --git a/src/views/securityUnitOperation/economicAnalysis.vue b/src/views/securityUnitOperation/economicAnalysis.vue
index 23c01cc..50446a7 100644
--- a/src/views/securityUnitOperation/economicAnalysis.vue
+++ b/src/views/securityUnitOperation/economicAnalysis.vue
@@ -59,13 +59,13 @@
</div>
<div class="box-card">
<span>公司派遣人数</span>
- <span>1121</span>
- <span>较上月增加13人</span>
+ <span>{{ socialSecurity.paiQ }}</span>
+ <span>较上月增加{{ socialSecurity.addPaiQ }}人</span>
</div>
<div class="box-card">
<span>社保缴纳人数占比</span>
- <span>85%</span>
- <span>较上月上涨2%</span>
+ <span>{{ socialSecurity.sheBPerson }}</span>
+ <span>较上月上涨{{ socialSecurity.addSheBPerson }}</span>
</div>
</div>
</div>
@@ -106,6 +106,7 @@
selectTo,
queryYearSoil,
queryYearAn,
+ queryYearPz
} from "../../api/securityUnitOperation/securityUnitOperation";
export default {
data() {
@@ -116,28 +117,28 @@
options0: [
{
value: "2012",
- label: "2012年",
+ label: "2012年"
},
{
value: "2011",
- label: "2011年",
+ label: "2011年"
},
{
value: "2010",
- label: "2010年",
+ label: "2010年"
},
{
value: "2009",
- label: "2009年",
+ label: "2009年"
},
{
value: "2008",
- label: "2008年",
+ label: "2008年"
},
{
value: "2007",
- label: "2007年",
- },
+ label: "2007年"
+ }
],
options1: [],
options2: [],
@@ -146,7 +147,11 @@
addNum: 0,
money: 0,
addMoney: 0,
- },
+ paiQ: 0,
+ addPaiQ: 0,
+ sheBPerson: 0,
+ addSheBPerson: 0
+ }
};
},
methods: {
@@ -154,7 +159,7 @@
this.$router.push({ path: "/securityUnitOperation/economicTable" });
},
getFenju() {
- lazyTreeJu().then((res) => {
+ lazyTreeJu().then(res => {
if (res.data.code === 200) {
this.options1 = res.data.data;
this.value1 = this.options1[0] ? this.options1[0].id : "";
@@ -170,9 +175,9 @@
pieChange() {
let params = {
jurisdiction: this.value1,
- deptid: this.value2,
+ deptid: this.value2
};
- selectPCount(params).then((res) => {
+ selectPCount(params).then(res => {
if (res.data.code === 200) {
let middleEchart2 = echarts.init(
document.getElementById("middleEchart2")
@@ -184,7 +189,7 @@
});
},
getCompanys() {
- getCompanys({ jurisdiction: this.value1 }).then((res) => {
+ getCompanys({ jurisdiction: this.value1 }).then(res => {
if (res.data.code === 200) {
this.options2 = res.data.data;
this.value2 = this.options2[0] ? this.options2[0].departmentid : "";
@@ -195,15 +200,34 @@
getSocialSecurity() {
let params = {
jurisdiction: this.value1,
- deptid: this.value2,
+ deptid: this.value2
};
- selectTo(params).then((res) => {
+ selectTo(params).then(res => {
if (res.data.code === 200) {
let data = res.data.data[0];
this.socialSecurity.num = data.thismouth;
this.socialSecurity.addNum = data.thismouth - data.lastmonth;
this.socialSecurity.money = data.thisamount;
this.socialSecurity.addMoney = data.thisamount - data.lastamount;
+ this.socialSecurity.paiQ = data.userpcthismouth;
+ this.socialSecurity.addPaiQ =
+ data.userpcthismouth - data.userpclastmouth;
+ this.socialSecurity.sheBPerson =
+ data.userthismouth && (data.thismouth / data.userthismouth) * 100
+ ? ((data.thismouth / data.userthismouth) * 100).toFixed(2) + "%"
+ : 0;
+ this.socialSecurity.addSheBPerson =
+ data.userthismouth &&
+ data.userlastmouth &&
+ (data.thismouth / data.userthismouth) * 100 &&
+ (data.lastmonth / data.userlastmouth) * 100 &&
+ (data.thismouth / data.userthismouth) * 100 -
+ (data.lastmonth / data.userlastmouth) * 100
+ ? (
+ (data.thismouth / data.userthismouth) * 100 -
+ (data.lastmonth / data.userlastmouth) * 100
+ ).toFixed(2) + "%"
+ : 0;
} else {
this.$message.error(res.msg);
}
@@ -212,14 +236,20 @@
getQueryYearSoil() {
let params = {
jurisdiction: this.value1,
- deptid: this.value2,
+ deptid: this.value2
};
- queryYearSoil(params).then((res) => {
+ queryYearSoil(params).then(res => {
if (res.data.code === 200) {
- let middleEchart1 = echarts.init(
- document.getElementById("middleEchart1")
- );
- middleEchart1.setOption(echartJs.economicMiddle(res.data.data));
+ queryYearPz(params).then(res1 => {
+ if (res1.data.code === 200) {
+ let middleEchart1 = echarts.init(
+ document.getElementById("middleEchart1")
+ );
+ middleEchart1.setOption(
+ echartJs.economicMiddle(res.data.data, res1.data.data)
+ );
+ }
+ });
} else {
this.$message.error(res.msg);
}
@@ -228,9 +258,9 @@
getQueryYearAn() {
let params = {
jurisdiction: this.value1,
- deptid: this.value2,
+ deptid: this.value2
};
- queryYearAn(params).then((res) => {
+ queryYearAn(params).then(res => {
if (res.data.code === 200) {
let bottomEchart = echarts.init(
document.getElementById("bottomEchart")
@@ -246,11 +276,11 @@
this.getSocialSecurity();
this.getQueryYearSoil();
this.getQueryYearAn();
- },
+ }
},
mounted() {
this.getFenju();
- },
+ }
};
</script>
<style lang="scss" scoped>
diff --git a/src/views/securityUnitOperation/economicTable.vue b/src/views/securityUnitOperation/economicTable.vue
index e3c7687..129dc33 100644
--- a/src/views/securityUnitOperation/economicTable.vue
+++ b/src/views/securityUnitOperation/economicTable.vue
@@ -1,93 +1,22 @@
<template>
<basic-container>
- <!-- <div class="operation-table"> -->
- <!-- <el-row>
- <el-col>
- <span>时间范围:</span>
- <el-date-picker
- v-model="value2"
- type="daterange"
- align="right"
- unlink-panels
- range-separator="至"
- start-placeholder="开始日期"
- end-placeholder="结束日期"
- :picker-options="pickerOptions"
- >
- </el-date-picker>
- <span>类别:</span>
- <el-select v-model="typeValue" placeholder="请选择">
- <el-option
- v-for="item in typeOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- <span>所属辖区:</span>
- <el-select v-model="subofficeValue" placeholder="请选择">
- <el-option
- v-for="item in subofficeOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- <span>公司名称:</span>
- <el-input v-model="companyName"></el-input>
- <el-button>查询</el-button>
- <el-button>重置</el-button>
- </el-col>
- </el-row> -->
- <!-- <el-row>
- <el-col>
- <div class="table">
- <el-button @click="downExcel">下载</el-button> -->
<avue-crud
:option="tableOption"
:data="tableData"
+ :table-loading="loading"
:page.sync="tablePage"
:permission="permissionList"
:before-open="beforeOpen"
@date-change="dateChange"
>
</avue-crud>
- <!-- <el-table id="table" :data="tableData" style="width: 100%">
- <el-table-column type="index" label="序号" width="50">
- </el-table-column>
- <el-table-column prop="company" label="公司名称" width="180">
- </el-table-column>
- <el-table-column prop="subOffice" label="所属分局" width="180">
- </el-table-column>
- <el-table-column prop="time" label="时间"> </el-table-column>
- <el-table-column prop="sbjnrs" label="社保缴纳人数">
- </el-table-column>
- <el-table-column prop="sbjnze" label="社保缴纳总额(万)">
- </el-table-column>
- <el-table-column prop="gspqrs" label="公司派遣人数">
- </el-table-column>
- <el-table-column prop="sbjnrszb" label="社保缴纳人数占比(%)">
- </el-table-column>
- <el-table-column prop="bz" label="备注"> </el-table-column>
- </el-table> -->
- <!-- <el-pagination
- background
- layout="prev, pager, next"
- :total="tableData.length"
- >
- </el-pagination> -->
- <!-- </div>
- </el-col>
- </el-row> -->
- <!-- </div> -->
</basic-container>
</template>
<script>
import FileSaver from "file-saver";
import XLSX from "xlsx";
import { mapGetters } from "vuex";
+import { selectJj } from "../../api/securityUnitOperation/securityUnitOperation";
export default {
name: "公司经济情况智能分析详情表",
data() {
@@ -95,41 +24,41 @@
value1: "",
value2: "",
tableData: [
- {
- company: "江西省永安保安服务有限公司",
- subOffice: "南昌市公安局",
- time: "2021-06-1",
- sbjnrs: "2100",
- sbjnze: "350",
- gspqrs: "110",
- sbjnrszb: "10",
- bz: "",
- },
- {
- company: "南昌市赣水保安服务有限公司",
- subOffice: "东湖分局",
- time: "2020-05-21",
- sbjnrs: "1800",
- sbjnze: "310",
- gspqrs: "160",
- sbjnrszb: "21",
- bz: "",
- },
- {
- company: "江西中业兴达保安服务有限公司",
- subOffice: "西湖分局",
- time: "2021-08-11",
- sbjnrs: "2300",
- sbjnze: "612",
- gspqrs: "80",
- sbjnrszb: "7",
- bz: "",
- },
+ // {
+ // company: "江西省永安保安服务有限公司",
+ // subOffice: "南昌市公安局",
+ // time: "2021-06-1",
+ // sbjnrs: "2100",
+ // sbjnze: "350",
+ // gspqrs: "110",
+ // sbjnrszb: "10",
+ // bz: ""
+ // },
+ // {
+ // company: "南昌市赣水保安服务有限公司",
+ // subOffice: "东湖分局",
+ // time: "2020-05-21",
+ // sbjnrs: "1800",
+ // sbjnze: "310",
+ // gspqrs: "160",
+ // sbjnrszb: "21",
+ // bz: ""
+ // },
+ // {
+ // company: "江西中业兴达保安服务有限公司",
+ // subOffice: "西湖分局",
+ // time: "2021-08-11",
+ // sbjnrs: "2300",
+ // sbjnze: "612",
+ // gspqrs: "80",
+ // sbjnrszb: "7",
+ // bz: ""
+ // }
],
tablePage: {
pageSize: 10,
currentPage: 1,
- total: 0,
+ total: 0
},
tableOption: {
excelBtn: true,
@@ -150,185 +79,186 @@
viewBtn: true,
dialogClickModal: false,
column: [
- {
- label: "类别",
- hide: true,
- prop: "",
- search: true,
- searchSpan: 4,
- display: true,
- type: "select",
- props: {
- label: "label",
- value: "value",
- },
- // cascaderItem: ["city", "area"],
- // dicUrl:subofficeOptions,
- dicData: [
- {
- value: "0",
- label: "全部",
- },
- {
- value: "1",
- label: "社保缴纳人数",
- },
- {
- value: "2",
- label: "社保缴纳总额",
- },
- {
- value: "3",
- label: "公司派遣人数",
- },
- {
- value: "4",
- label: "社保缴纳人数占比",
- },
- ],
- search: true,
- rules: [
- {
- required: true,
- message: "请选择类别",
- trigger: "blur",
- },
- ],
- },
+ // {
+ // label: "类别",
+ // hide: true,
+ // prop: "",
+ // search: true,
+ // searchSpan: 4,
+ // display: true,
+ // type: "select",
+ // props: {
+ // label: "label",
+ // value: "value"
+ // },
+ // // cascaderItem: ["city", "area"],
+ // // dicUrl:subofficeOptions,
+ // dicData: [
+ // {
+ // value: "0",
+ // label: "全部"
+ // },
+ // {
+ // value: "1",
+ // label: "社保缴纳人数"
+ // },
+ // {
+ // value: "2",
+ // label: "社保缴纳总额"
+ // },
+ // {
+ // value: "3",
+ // label: "公司派遣人数"
+ // },
+ // {
+ // value: "4",
+ // label: "社保缴纳人数占比"
+ // }
+ // ],
+ // search: true,
+ // rules: [
+ // {
+ // required: true,
+ // message: "请选择类别",
+ // trigger: "blur"
+ // }
+ // ]
+ // },
{
label: "公司名称",
- prop: "company",
+ prop: "enterpriseName",
search: true,
searchSpan: 4,
- display: false,
+ display: false
},
{
label: "所属辖区",
- prop: "subOffice",
+ prop: "jurname",
searchSpan: 4,
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
// cascaderItem: ["city", "area"],
// dicUrl:subofficeOptions,
dicData: [
{
value: "0",
- label: "南昌市公安局",
+ label: "南昌市公安局"
},
{
value: "2",
- label: "东湖分局",
+ label: "东湖分局"
},
{
value: "3",
- label: "西湖分局",
+ label: "西湖分局"
},
{
value: "4",
- label: "青云谱分局",
+ label: "青云谱分局"
},
{
value: "5",
- label: "青山湖分局",
- },
+ label: "青山湖分局"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择所属辖区",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
- {
- label: "时间",
- prop: "time",
- type: "date",
- format: "yyyy-MM-dd hh:mm:ss",
- valueFormat: "yyyy-MM-dd hh:mm:ss",
- searchSpan: 6,
- searchRange: true,
- search: true,
- display: false,
- },
+ // {
+ // label: "时间",
+ // prop: "time",
+ // type: "date",
+ // format: "yyyy-MM-dd hh:mm:ss",
+ // valueFormat: "yyyy-MM-dd hh:mm:ss",
+ // searchSpan: 6,
+ // searchRange: true,
+ // search: true,
+ // display: false
+ // },
{
label: "社保缴纳人数",
- prop: "sbjnrs",
- display: false,
+ prop: "sbnum",
+ display: false
},
{
label: "社保缴纳总额(万)",
- prop: "sbjnze",
- display: false,
+ prop: "sbcount",
+ display: false
},
{
label: "公司派遣人数",
- prop: "gspqrs",
- display: false,
+ prop: "pcnum",
+ display: false
},
{
label: "社保缴纳人数占比(%)",
- prop: "sbjnrszb",
- display: false,
+ prop: "zb",
+ display: false
},
{
label: "备注",
prop: "bz",
- display: false,
- },
- ],
+ display: false
+ }
+ ]
},
typeValue: "0",
typeOptions: [
{
value: "0",
- label: "全部",
+ label: "全部"
},
{
value: "1",
- label: "社保缴纳人数",
+ label: "社保缴纳人数"
},
{
value: "2",
- label: "社保缴纳总额",
+ label: "社保缴纳总额"
},
{
value: "3",
- label: "公司派遣人数",
+ label: "公司派遣人数"
},
{
value: "4",
- label: "社保缴纳人数占比",
- },
+ label: "社保缴纳人数占比"
+ }
],
subofficeValue: "0",
subofficeOptions: [
{
value: "0",
- label: "南昌市公安局",
+ label: "南昌市公安局"
},
{
value: "2",
- label: "东湖分局",
+ label: "东湖分局"
},
{
value: "3",
- label: "西湖分局",
+ label: "西湖分局"
},
{
value: "4",
- label: "青云谱分局",
+ label: "青云谱分局"
},
{
value: "5",
- label: "青山湖分局",
- },
+ label: "青山湖分局"
+ }
],
companyName: "",
+ loading: true
};
},
computed: {
@@ -338,33 +268,24 @@
addBtn: this.vaildData(this.permission.post_add, false),
viewBtn: this.vaildData(this.permission.post_view, false),
delBtn: this.vaildData(this.permission.post_delete, false),
- editBtn: this.vaildData(this.permission.post_edit, false),
+ editBtn: this.vaildData(this.permission.post_edit, false)
};
- },
+ }
},
methods: {
dateChange() {},
- // downExcel() {
- // let et = XLSX.utils.table_to_book(document.getElementById("table"));
- // let etout = XLSX.write(et, {
- // bookType: "xlsx",
- // bookSST: true,
- // type: "array"
- // });
- // try {
- // FileSaver.saveAs(
- // new Blob([etout], {
- // type: "application/octet-stream"
- // }),
- // `表.xlsx`
- // ); //导出的文件名
- // } catch (e) {
- // console.log(e, etout);
- // }
- // return etout;
- // }
+ getTableData() {
+ selectJj().then(res => {
+ if (res.data.code === 200) {
+ this.tableData = res.data.data;
+ this.loading = false;
+ }
+ });
+ }
},
- mounted() {},
+ mounted() {
+ this.getTableData();
+ }
};
</script>
<style lang="scss" scoped>
diff --git a/src/views/securityUnitOperation/operationTable.vue b/src/views/securityUnitOperation/operationTable.vue
index 8376223..0ac115f 100644
--- a/src/views/securityUnitOperation/operationTable.vue
+++ b/src/views/securityUnitOperation/operationTable.vue
@@ -3,6 +3,7 @@
<avue-crud
:option="tableOption"
:data="tableData"
+ :table-loading="loading"
:page.sync="tablePage"
:permission="permissionList"
:before-open="beforeOpen"
@@ -10,88 +11,12 @@
>
</avue-crud>
</basic-container>
- <!-- <div class="operation-table">
- <el-row>
- <el-col>
- <span>时间范围:</span>
- <el-date-picker
- v-model="value2"
- type="daterange"
- align="right"
- unlink-panels
- range-separator="至"
- start-placeholder="开始日期"
- end-placeholder="结束日期"
- :picker-options="pickerOptions"
- >
- </el-date-picker>
- <span>类别:</span>
- <el-select v-model="typeValue" placeholder="请选择">
- <el-option
- v-for="item in typeOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- <span>所属辖区:</span>
- <el-select v-model="subofficeValue" placeholder="请选择">
- <el-option
- v-for="item in subofficeOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- <span>公司名称:</span>
- <el-input v-model="companyName"></el-input>
- <el-button>查询</el-button>
- <el-button>重置</el-button>
- </el-col>
- </el-row>
- <el-row>
- <el-col>
- <div class="table">
- <el-button @click="downExcel">下载</el-button>
- <el-table id="table" :data="tableData" style="width: 100%">
- <el-table-column type="index" label="序号" width="50">
- </el-table-column>
- <el-table-column prop="company" label="公司名称" width="180">
- </el-table-column>
- <el-table-column prop="subOffice" label="所属分局" width="180">
- </el-table-column>
- <el-table-column prop="time" label="时间"> </el-table-column>
- <el-table-column prop="totalSec" label="总保安人数">
- </el-table-column>
- <el-table-column prop="normalSec" label="正常保安数">
- </el-table-column>
- <el-table-column prop="holderSec" label="持证保安数">
- </el-table-column>
- <el-table-column prop="sendSec" label="保安派遣数">
- </el-table-column>
- <el-table-column prop="passSec" label="过考保安数">
- </el-table-column>
- <el-table-column prop="unit" label="服务单位数"> </el-table-column>
- <el-table-column prop="socialSec" label="缴纳社保保安数">
- </el-table-column>
- <el-table-column prop="bz" label="备注"> </el-table-column>
- </el-table>
- <el-pagination
- background
- layout="prev, pager, next"
- :total="tableData.length"
- >
- </el-pagination>
- </div>
- </el-col>
- </el-row>
- </div> -->
</template>
<script>
import FileSaver from "file-saver";
import XLSX from "xlsx";
+import { selectTb } from "../../api/securityUnitOperation/securityUnitOperation";
+import { lazyTreeJu } from "../../api/index/index";
export default {
name: "公司运营情况智能分析详情表",
data() {
@@ -99,50 +24,50 @@
value1: "",
value2: "",
tableData: [
- {
- company: "江西省永安保安服务有限公司",
- subOffice: "南昌市公安局",
- time: "2020-07-21",
- totalSec: "1200",
- normalSec: "1150",
- holderSec: "1160",
- sendSec: "1000",
- passSec: "1180",
- unit: "52",
- socialSec: "1160",
- bz: "",
- },
- {
- company: "南昌市赣水保安服务有限公司",
- subOffice: "东湖分局",
- time: "2021-06-11",
- totalSec: "1360",
- normalSec: "1250",
- holderSec: "1258",
- sendSec: "1210",
- passSec: "1180",
- unit: "48",
- socialSec: "1200",
- bz: "",
- },
- {
- company: "江西中业兴达保安服务有限公司",
- subOffice: "西湖分局",
- time: "2020-01-21",
- totalSec: "1269",
- normalSec: "1250",
- holderSec: "1042",
- sendSec: "1040",
- passSec: "1180",
- unit: "41",
- socialSec: "1025",
- bz: "",
- },
+ // {
+ // company: "江西省永安保安服务有限公司",
+ // subOffice: "南昌市公安局",
+ // time: "2020-07-21",
+ // totalSec: "1200",
+ // normalSec: "1150",
+ // holderSec: "1160",
+ // sendSec: "1000",
+ // passSec: "1180",
+ // unit: "52",
+ // socialSec: "1160",
+ // bz: ""
+ // },
+ // {
+ // company: "南昌市赣水保安服务有限公司",
+ // subOffice: "东湖分局",
+ // time: "2021-06-11",
+ // totalSec: "1360",
+ // normalSec: "1250",
+ // holderSec: "1258",
+ // sendSec: "1210",
+ // passSec: "1180",
+ // unit: "48",
+ // socialSec: "1200",
+ // bz: ""
+ // },
+ // {
+ // company: "江西中业兴达保安服务有限公司",
+ // subOffice: "西湖分局",
+ // time: "2020-01-21",
+ // totalSec: "1269",
+ // normalSec: "1250",
+ // holderSec: "1042",
+ // sendSec: "1040",
+ // passSec: "1180",
+ // unit: "41",
+ // socialSec: "1025",
+ // bz: ""
+ // }
],
tablePage: {
pageSize: 10,
currentPage: 1,
- total: 0,
+ total: 0
},
tableOption: {
excelBtn: true,
@@ -173,183 +98,185 @@
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
// cascaderItem: ["city", "area"],
// dicUrl:subofficeOptions,
dicData: [
{
value: "0",
- label: "全部",
+ label: "全部"
},
{
value: "1",
- label: "总保安人数",
+ label: "总保安人数"
},
{
value: "2",
- label: "正常保安数",
+ label: "正常保安数"
},
{
value: "3",
- label: "持证保安数",
+ label: "持证保安数"
},
{
value: "4",
- label: "保安派遣数",
+ label: "保安派遣数"
},
{
value: "5",
- label: "过考保安数",
+ label: "过考保安数"
},
{
value: "6",
- label: "服务单位数",
+ label: "服务单位数"
},
{
value: "7",
- label: "缴纳社保保安数",
- },
+ label: "缴纳社保保安数"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择类别",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
{
label: "公司名称",
- prop: "company",
+ prop: "enterpriseName",
search: true,
searchSpan: 4,
- display: false,
+ display: false
},
{
label: "所属辖区",
- prop: "subOffice",
+ prop: "jurname",
searchSpan: 4,
type: "select",
props: {
- label: "label",
- value: "value",
+ label: "title",
+ value: "value"
},
// cascaderItem: ["city", "area"],
// dicUrl:subofficeOptions,
- dicData: [
- {
- value: "0",
- label: "南昌市公安局",
- },
- {
- value: "2",
- label: "东湖分局",
- },
- {
- value: "3",
- label: "西湖分局",
- },
- {
- value: "4",
- label: "青云谱分局",
- },
- {
- value: "5",
- label: "青山湖分局",
- },
- ],
+ dicData: this.subOfficeData,
search: true,
rules: [
{
required: true,
message: "请选择所属辖区",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
- {
- label: "时间",
- prop: "time",
- type: "date",
- format: "yyyy-MM-dd hh:mm:ss",
- valueFormat: "yyyy-MM-dd hh:mm:ss",
- searchSpan: 6,
- searchRange: true,
- search: true,
- display: false,
- },
+ // {
+ // label: "时间",
+ // prop: "time",
+ // type: "date",
+ // format: "yyyy-MM-dd hh:mm:ss",
+ // valueFormat: "yyyy-MM-dd hh:mm:ss",
+ // searchSpan: 6,
+ // searchRange: true,
+ // search: true,
+ // display: false
+ // },
{
label: "总保安人数",
- prop: "totalSec",
- display: false,
+ prop: "znum",
+ display: false
},
{
label: "正常保安数",
- prop: "normalSec",
- display: false,
+ prop: "zcnum",
+ display: false
},
{
label: "持证保安数",
- prop: "holderSec",
- display: false,
+ prop: "cznum",
+ display: false
},
{
label: "保安派遣数",
- prop: "sendSec",
- display: false,
+ prop: "pcnum",
+ display: false
},
- {
- label: "过考保安数",
- prop: "passSec",
- display: false,
- },
+ // {
+ // label: "过考保安数",
+ // prop: "passSec",
+ // display: false
+ // },
{
label: "服务单位数",
- prop: "unit",
- display: false,
+ prop: "ghnum",
+ display: false
},
{
label: "缴纳社保保安数",
- prop: "socialSec",
- display: false,
+ prop: "sbnum",
+ display: false
},
{
label: "备注",
prop: "bz",
- display: false,
- },
- ],
+ display: false
+ }
+ ]
},
typeValue: "0",
- subofficeValue: "0",
companyName: "",
+ subOfficeData: [],
+ subOfficeValue: "",
+ loading: true
};
},
methods: {
- downExcel() {
- let et = XLSX.utils.table_to_book(document.getElementById("table"));
- let etout = XLSX.write(et, {
- bookType: "xlsx",
- bookSST: true,
- type: "array",
+ getSubOfficeData() {
+ lazyTreeJu().then(res => {
+ if (res.data.code === 200) {
+ this.subOfficeData = res.data.data;
+ this.subOfficeValue = this.subOfficeData[0].value || "";
+ } else {
+ this.$message.error(res.msg);
+ }
});
- try {
- FileSaver.saveAs(
- new Blob([etout], {
- type: "application/octet-stream",
- }),
- `表.xlsx`
- ); //导出的文件名
- } catch (e) {
- console.log(e, etout);
- }
- return etout;
},
+ getTableData() {
+ selectTb().then(res => {
+ if (res.data.code === 200) {
+ this.tableData = res.data.data;
+ this.loading = false;
+ }
+ });
+ }
+ // downExcel() {
+ // let et = XLSX.utils.table_to_book(document.getElementById("table"));
+ // let etout = XLSX.write(et, {
+ // bookType: "xlsx",
+ // bookSST: true,
+ // type: "array"
+ // });
+ // try {
+ // FileSaver.saveAs(
+ // new Blob([etout], {
+ // type: "application/octet-stream"
+ // }),
+ // `表.xlsx`
+ // ); //导出的文件名
+ // } catch (e) {
+ // console.log(e, etout);
+ // }
+ // return etout;
+ // }
},
- mounted() {},
+ mounted() {
+ this.getSubOfficeData();
+ this.getTableData();
+ }
};
</script>
<style lang="scss" scoped>
diff --git a/src/views/securityUnitOperation/securityEchart.js b/src/views/securityUnitOperation/securityEchart.js
index afa8ed7..f88d5c9 100644
--- a/src/views/securityUnitOperation/securityEchart.js
+++ b/src/views/securityUnitOperation/securityEchart.js
@@ -414,10 +414,14 @@
return option;
}
-function economicMiddle(data) {
- let data1 = [];
- for (var a in data) {
- data1.push(data[a]);
+function economicMiddle(data1,data2) {
+ let sbData = [];
+ let pqData = [];
+ for (var a in data1) {
+ sbData.push(data1[a]);
+ }
+ for (var b in data2) {
+ pqData.push(data2[b]);
}
let option = {
tooltip: {
@@ -491,13 +495,13 @@
name: "缴纳社保人数",
type: "line",
stack: "总量",
- data: data1
+ data: sbData
},
{
name: "公司派遣人数",
type: "line",
stack: "总量",
- data: [220, 182, 191, 234, 290, 330, 310, 111, 222, 132, 143, 123]
+ data: pqData
}
]
};
diff --git a/src/views/statisticalQueryManagement/businessStatistics.vue b/src/views/statisticalQueryManagement/businessStatistics.vue
index 647551e..193f143 100644
--- a/src/views/statisticalQueryManagement/businessStatistics.vue
+++ b/src/views/statisticalQueryManagement/businessStatistics.vue
@@ -4,6 +4,7 @@
:option="tableOption"
:data="tableData"
:page.sync="tablePage"
+ :table-loading="loading"
:permission="permissionList"
:before-open="beforeOpen"
@date-change="dateChange"
@@ -18,6 +19,7 @@
import FileSaver from "file-saver";
import XLSX from "xlsx";
import { mapGetters } from "vuex";
+import { selectYw } from "../../api/statisticalQueryManagement/statisticalQueryManagement";
export default {
name: "业务情况统计",
data() {
@@ -25,24 +27,24 @@
value1: "",
value2: "",
tableData: [
- {
- company: "江西省永安保安服务有限公司",
- subOffice: "南昌市公安局",
- customer: "76",
- num: "1124"
- },
- {
- company: "南昌市赣水保安服务有限公司",
- subOffice: "东湖分局",
- customer: "85",
- num: "1428"
- },
- {
- company: "江西中业兴达保安服务有限公司",
- subOffice: "西湖分局",
- customer: "46",
- num: "974"
- }
+ // {
+ // company: "江西省永安保安服务有限公司",
+ // subOffice: "南昌市公安局",
+ // customer: "76",
+ // num: "1124"
+ // },
+ // {
+ // company: "南昌市赣水保安服务有限公司",
+ // subOffice: "东湖分局",
+ // customer: "85",
+ // num: "1428"
+ // },
+ // {
+ // company: "江西中业兴达保安服务有限公司",
+ // subOffice: "西湖分局",
+ // customer: "46",
+ // num: "974"
+ // }
],
tablePage: {
pageSize: 10,
@@ -70,7 +72,7 @@
column: [
{
label: "公司名称",
- prop: "company",
+ prop: "enterpriseName",
search: true,
searchSpan: 4,
display: false
@@ -78,7 +80,7 @@
{
label: "所属辖区",
- prop: "subOffice",
+ prop: "jurname",
searchSpan: 4,
type: "select",
props: {
@@ -120,16 +122,17 @@
},
{
label: "服务对象数量",
- prop: "customer",
+ prop: "fwnum",
display: false
},
{
label: "保安员人数",
- prop: "num",
+ prop: "znum",
display: false
}
]
- }
+ },
+ loading:true,
};
},
computed: {
@@ -155,7 +158,15 @@
// if (columnIndex == 4 || columnIndex == 5) {
// }
},
- dateChange() {}
+ dateChange() {},
+ getTableData() {
+ selectYw({current: 1, size: 10 }).then(res => {
+ if (res.data.code === 200) {
+ this.tableData = res.data.data;
+ this.loading = false;
+ }
+ });
+ }
// downExcel() {
// let et = XLSX.utils.table_to_book(document.getElementById("table"));
// let etout = XLSX.write(et, {
@@ -176,7 +187,9 @@
// return etout;
// }
},
- mounted() {}
+ mounted() {
+ this.getTableData();
+ }
};
</script>
<style lang="scss" scoped>
diff --git a/src/views/statisticalQueryManagement/businessStatisticsDetail.vue b/src/views/statisticalQueryManagement/businessStatisticsDetail.vue
index 7a19d18..255caf1 100644
--- a/src/views/statisticalQueryManagement/businessStatisticsDetail.vue
+++ b/src/views/statisticalQueryManagement/businessStatisticsDetail.vue
@@ -4,6 +4,7 @@
:option="tableOption"
:data="tableData"
:page.sync="tablePage"
+ :table-loading="loading"
:permission="permissionList"
:before-open="beforeOpen"
@date-change="dateChange"
@@ -15,48 +16,52 @@
// import FileSaver from "file-saver";
// import XLSX from "xlsx";
import { mapGetters } from "vuex";
+import {
+ selectDis,
+ selectFw
+} from "../../api/statisticalQueryManagement/statisticalQueryManagement";
export default {
- name: "业务情况统计",
+ name: "业务情况统计明细",
data() {
return {
value1: "",
value2: "",
tableData: [
- {
- company: "江西省永安保安服务有限公司",
- subOffice: "南昌市公安局",
- timeStart:'2020-07-14',
- timeEnd:'2021-06-30',
- customerName: "南昌市幼儿园",
- num: "7",
- // status: "正在服务",
- bz:'',
- },
- {
- company: "南昌市赣水保安服务有限公司",
- subOffice: "东湖分局",
- timeStart:'2020-01-23',
- timeEnd:'2020-12-31',
- customerName: "南昌市第一人民医院",
- num: "32",
- // status: "已完成",
- bz:'',
- },
- {
- company: "江西中业兴达保安服务有限公司",
- subOffice: "西湖分局",
- timeStart:'2020-03-16',
- timeEnd:'2021-7-29',
- customerName: "南昌市动物园",
- num: "12",
- // status: "未下单",
- bz:'',
- },
+ // {
+ // company: "江西省永安保安服务有限公司",
+ // subOffice: "南昌市公安局",
+ // timeStart: "2020-07-14",
+ // timeEnd: "2021-06-30",
+ // customerName: "南昌市幼儿园",
+ // num: "7",
+ // // status: "正在服务",
+ // bz: ""
+ // },
+ // {
+ // company: "南昌市赣水保安服务有限公司",
+ // subOffice: "东湖分局",
+ // timeStart: "2020-01-23",
+ // timeEnd: "2020-12-31",
+ // customerName: "南昌市第一人民医院",
+ // num: "32",
+ // // status: "已完成",
+ // bz: ""
+ // },
+ // {
+ // company: "江西中业兴达保安服务有限公司",
+ // subOffice: "西湖分局",
+ // timeStart: "2020-03-16",
+ // timeEnd: "2021-7-29",
+ // customerName: "南昌市动物园",
+ // num: "12",
+ // // status: "未下单",
+ // bz: ""
+ // }
],
tablePage: {
pageSize: 10,
currentPage: 1,
- total: 0,
+ total: 0
},
tableOption: {
excelBtn: true,
@@ -79,165 +84,133 @@
column: [
{
label: "公司名称",
- prop: "company",
+ prop: "gsname",
search: true,
searchSpan: 4,
- display: false,
+ display: false
},
{
label: "所属辖区",
- prop: "subOffice",
+ prop: "jurname",
searchSpan: 4,
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
// cascaderItem: ["city", "area"],
// dicUrl:subofficeOptions,
dicData: [
{
value: "0",
- label: "南昌市公安局",
+ label: "南昌市公安局"
},
{
value: "2",
- label: "东湖分局",
+ label: "东湖分局"
},
{
value: "3",
- label: "西湖分局",
+ label: "西湖分局"
},
{
value: "4",
- label: "青云谱分局",
+ label: "青云谱分局"
},
{
value: "5",
- label: "青山湖分局",
- },
+ label: "青山湖分局"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择所属辖区",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
{
label: "服务开始时间",
- prop: "timeStart",
- display: false,
+ prop: "dispatcherTime",
+ display: false
},
{
label: "服务到期时间",
- prop: "timeEnd",
- display: false,
+ prop: "end_time",
+ display: false
},
{
label: "服务单位名称",
- prop: "customerName",
+ prop: "fwname",
searchLabelWidth: 110,
search: true,
searchSpan: 4,
- display: false,
+ display: false
},
{
label: "保安派遣人数",
prop: "num",
- display: false,
- },
- {
- label: "备注",
- prop: "bz",
- display: false,
+ display: false
},
// {
- // label: "服务状态",
- // prop: "status",
- // searchSpan: 4,
- // type: "select",
- // props: {
- // label: "label",
- // value: "value",
- // },
- // // cascaderItem: ["city", "area"],
- // // dicUrl:subofficeOptions,
- // dicData: [
- // {
- // value: "0",
- // label: "已完成",
- // },
- // {
- // value: "2",
- // label: "正在服务",
- // },
- // {
- // value: "3",
- // label: "未下单",
- // },
- // ],
- // search: true,
- // rules: [
- // {
- // required: true,
- // message: "请选择服务状态",
- // trigger: "blur",
- // },
- // ],
- // },
- ],
+ // label: "备注",
+ // prop: "bz",
+ // display: false
+ // }
+ ]
},
typeValue: "0",
typeOptions: [
{
value: "0",
- label: "全部",
+ label: "全部"
},
{
value: "1",
- label: "社保缴纳人数",
+ label: "社保缴纳人数"
},
{
value: "2",
- label: "社保缴纳总额",
+ label: "社保缴纳总额"
},
{
value: "3",
- label: "公司派遣人数",
+ label: "公司派遣人数"
},
{
value: "4",
- label: "社保缴纳人数占比",
- },
+ label: "社保缴纳人数占比"
+ }
],
subofficeValue: "0",
subofficeOptions: [
{
value: "0",
- label: "南昌市公安局",
+ label: "南昌市公安局"
},
{
value: "2",
- label: "东湖分局",
+ label: "东湖分局"
},
{
value: "3",
- label: "西湖分局",
+ label: "西湖分局"
},
{
value: "4",
- label: "青云谱分局",
+ label: "青云谱分局"
},
{
value: "5",
- label: "青山湖分局",
- },
+ label: "青山湖分局"
+ }
],
+ servicesList: [],
companyName: "",
+ loading: true
};
},
computed: {
@@ -247,12 +220,34 @@
addBtn: this.vaildData(this.permission.post_add, false),
viewBtn: this.vaildData(this.permission.post_view, false),
delBtn: this.vaildData(this.permission.post_delete, false),
- editBtn: this.vaildData(this.permission.post_edit, false),
+ editBtn: this.vaildData(this.permission.post_edit, false)
};
- },
+ }
},
methods: {
dateChange() {},
+ getTableData() {
+ let params = {
+ jurisdiction: "",
+ current: 1,
+ fid: 20,
+ deptid: "1412222709480509442",
+ size: 10
+ };
+ selectDis(params).then(res => {
+ if (res.data.code === 200) {
+ this.tableData = res.data.data;
+ this.loading = false;
+ }
+ });
+ },
+ getFuWuList() {
+ selectFw().then(res => {
+ if (res.data.code === 200) {
+ this.servicesList = res.data.data;
+ }
+ });
+ }
// downExcel() {
// let et = XLSX.utils.table_to_book(document.getElementById("table"));
// let etout = XLSX.write(et, {
@@ -273,8 +268,10 @@
// return etout;
// }
},
- mounted() {},
+ mounted() {
+ this.getTableData();
+ this.getFuWuList();
+ }
};
</script>
-<style lang="scss" scoped>
-</style>
+<style lang="scss" scoped></style>
diff --git a/src/views/statisticalQueryManagement/companyDetails.vue b/src/views/statisticalQueryManagement/companyDetails.vue
index 8a6c739..3b80bd2 100644
--- a/src/views/statisticalQueryManagement/companyDetails.vue
+++ b/src/views/statisticalQueryManagement/companyDetails.vue
@@ -4,6 +4,7 @@
:option="tableOption"
:data="tableData"
:page.sync="tablePage"
+ :table-loading="loading"
:permission="permissionList"
:before-open="beforeOpen"
@date-change="dateChange"
@@ -15,6 +16,7 @@
import FileSaver from "file-saver";
import XLSX from "xlsx";
import { mapGetters } from "vuex";
+import { selectUIn } from "../../api/statisticalQueryManagement/statisticalQueryManagement";
export default {
name: "公司人员详情",
data() {
@@ -22,47 +24,47 @@
value1: "",
value2: "",
tableData: [
- {
- name: "张强",
- No: "NO.2143",
- idNumber: "230229187623601221",
- tel: "13728198762",
- holder: "是",
- socialSecurity: "是",
- picture: "是",
- qualification: "通过",
- pass: "是",
- send: "是",
- },
- {
- name: "张强",
- No: "NO.2143",
- idNumber: "230229187623601221",
- tel: "13728198762",
- holder: "是",
- socialSecurity: "是",
- picture: "是",
- qualification: "通过",
- pass: "是",
- send: "是",
- },
- {
- name: "张强",
- No: "NO.2143",
- idNumber: "230229187623601221",
- tel: "13728198762",
- holder: "是",
- socialSecurity: "是",
- picture: "是",
- qualification: "通过",
- pass: "是",
- send: "是",
- },
+ // {
+ // name: "张强",
+ // No: "NO.2143",
+ // idNumber: "230229187623601221",
+ // tel: "13728198762",
+ // holder: "是",
+ // socialSecurity: "是",
+ // picture: "是",
+ // qualification: "通过",
+ // pass: "是",
+ // send: "是"
+ // },
+ // {
+ // name: "张强",
+ // No: "NO.2143",
+ // idNumber: "230229187623601221",
+ // tel: "13728198762",
+ // holder: "是",
+ // socialSecurity: "是",
+ // picture: "是",
+ // qualification: "通过",
+ // pass: "是",
+ // send: "是"
+ // },
+ // {
+ // name: "张强",
+ // No: "NO.2143",
+ // idNumber: "230229187623601221",
+ // tel: "13728198762",
+ // holder: "是",
+ // socialSecurity: "是",
+ // picture: "是",
+ // qualification: "通过",
+ // pass: "是",
+ // send: "是"
+ // }
],
tablePage: {
pageSize: 10,
currentPage: 1,
- total: 0,
+ total: 0
},
tableOption: {
excelBtn: true,
@@ -86,206 +88,207 @@
{
label: "保安员姓名",
searchLabelWidth: 110,
- prop: "name",
+ prop: "real_name",
search: true,
searchSpan: 4,
- display: false,
+ display: false
},
{
label: "保安员编号",
- prop: "No",
- display: false,
+ prop: "securitynumber",
+ display: false
},
{
label: "身份证号",
- prop: "idNumber",
- display: false,
+ prop: "cardid",
+ display: false
},
{
label: "联系电话",
- prop: "tel",
- display: false,
+ prop: "phone",
+ display: false
},
{
label: "是否持证",
- prop: "holder",
+ prop: "hold",
searchSpan: 4,
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
// cascaderItem: ["city", "area"],
// dicUrl:subofficeOptions,
dicData: [
{
value: "0",
- label: "是",
+ label: "是"
},
{
value: "2",
- label: "否",
- },
+ label: "否"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择是否持证",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
{
label: "是否缴纳社保",
// labelWidth: 120,
searchLabelWidth: 110,
- prop: "socialSecurity",
+ prop: "soil",
searchSpan: 4,
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
dicData: [
{
value: "0",
- label: "是",
+ label: "是"
},
{
value: "2",
- label: "否",
- },
+ label: "否"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择是否缴纳社保",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
{
label: "是否已采集照片",
searchLabelWidth: 120,
- prop: "picture",
+ prop: "photo",
searchSpan: 4,
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
dicData: [
{
value: "0",
- label: "是",
+ label: "是"
},
{
value: "2",
- label: "否",
- },
+ label: "否"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择是否已采集照片",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
{
label: "资格审查情况",
searchLabelWidth: 110,
- prop: "qualification",
+ prop: "examination_type",
searchSpan: 4,
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
dicData: [
{
value: "0",
- label: "通过",
+ label: "通过"
},
{
value: "2",
- label: "异常",
- },
+ label: "异常"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择资格审查情况",
- trigger: "blur",
- },
- ],
+ trigger: "blur"
+ }
+ ]
},
- {
- label: "是否通过考试",
- searchLabelWidth: 110,
- prop: "pass",
- searchSpan: 4,
- type: "select",
- props: {
- label: "label",
- value: "value",
- },
- dicData: [
- {
- value: "0",
- label: "是",
- },
- {
- value: "2",
- label: "否",
- },
- ],
- search: true,
- rules: [
- {
- required: true,
- message: "请选择是否通过考试",
- trigger: "blur",
- },
- ],
- },
+ // {
+ // label: "是否通过考试",
+ // searchLabelWidth: 110,
+ // prop: "pass",
+ // searchSpan: 4,
+ // type: "select",
+ // props: {
+ // label: "label",
+ // value: "value"
+ // },
+ // dicData: [
+ // {
+ // value: "0",
+ // label: "是"
+ // },
+ // {
+ // value: "2",
+ // label: "否"
+ // }
+ // ],
+ // search: true,
+ // rules: [
+ // {
+ // required: true,
+ // message: "请选择是否通过考试",
+ // trigger: "blur"
+ // }
+ // ]
+ // },
{
label: "是否派遣",
- prop: "send",
+ prop: "dispatch",
searchSpan: 4,
type: "select",
props: {
label: "label",
- value: "value",
+ value: "value"
},
dicData: [
{
value: "0",
- label: "是",
+ label: "是"
},
{
value: "2",
- label: "否",
- },
+ label: "否"
+ }
],
search: true,
rules: [
{
required: true,
message: "请选择是否派遣",
- trigger: "blur",
- },
- ],
- },
- ],
+ trigger: "blur"
+ }
+ ]
+ }
+ ]
},
companyName: "",
+ loading: true
};
},
computed: {
@@ -295,12 +298,22 @@
addBtn: this.vaildData(this.permission.post_add, false),
viewBtn: this.vaildData(this.permission.post_view, false),
delBtn: this.vaildData(this.permission.post_delete, false),
- editBtn: this.vaildData(this.permission.post_edit, false),
+ editBtn: this.vaildData(this.permission.post_edit, false)
};
- },
+ }
},
methods: {
dateChange() {},
+ getTableData() {
+ selectUIn({ deptid: "1412222709480509442",current: 1, size: 10 }).then(
+ res => {
+ if (res.data.code === 200) {
+ this.tableData = res.data.data;
+ this.loading = false;
+ }
+ }
+ );
+ }
// downExcel() {
// let et = XLSX.utils.table_to_book(document.getElementById("table"));
// let etout = XLSX.write(et, {
@@ -321,7 +334,9 @@
// return etout;
// }
},
- mounted() {},
+ mounted() {
+ this.getTableData();
+ }
};
</script>
<style lang="scss" scoped>
diff --git a/src/views/statisticalQueryManagement/securityGuardStatistics.vue b/src/views/statisticalQueryManagement/securityGuardStatistics.vue
index eab7afd..5a9e63c 100644
--- a/src/views/statisticalQueryManagement/securityGuardStatistics.vue
+++ b/src/views/statisticalQueryManagement/securityGuardStatistics.vue
@@ -4,17 +4,13 @@
:option="tableOption"
:data="tableData"
:page.sync="tablePage"
+ :table-loading="loading"
:permission="permissionList"
:before-open="beforeOpen"
@date-change="dateChange"
@row-click="handleRowClick"
class="rowClick"
>
- <template slot-scope="{ type, size }" slot="menu">
- <el-button icon="el-icon-check" :size="size" :type="type"
- >自定义菜单按钮</el-button
- >
- </template>
</avue-crud>
</basic-container>
</template>
@@ -22,6 +18,7 @@
import FileSaver from "file-saver";
import XLSX from "xlsx";
import { mapGetters } from "vuex";
+import { selectLi } from "../../api/statisticalQueryManagement/statisticalQueryManagement";
export default {
name: "业务情况统计",
data() {
@@ -29,42 +26,42 @@
value1: "",
value2: "",
tableData: [
- {
- company: "江西省永安保安服务有限公司",
- subOffice: "东湖分局",
- total: "21540",
- holder: "21520",
- nosend: "10200",
- send: "1320",
- nopicture: "314",
- qualification: "142",
- pass: "21120",
- socialSecurity: "21535",
- },
- {
- company: "南昌市赣水保安服务有限公司",
- subOffice: "东湖分局",
- total: "21540",
- holder: "21520",
- nosend: "10200",
- send: "1320",
- nopicture: "314",
- qualification: "142",
- pass: "21120",
- socialSecurity: "21535",
- },
- {
- company: "江西中业兴达保安服务有限公司",
- subOffice: "东湖分局",
- total: "21540",
- holder: "21520",
- nosend: "10200",
- send: "1320",
- nopicture: "314",
- qualification: "142",
- pass: "21120",
- socialSecurity: "21535",
- },
+ // {
+ // company: "江西省永安保安服务有限公司",
+ // subOffice: "东湖分局",
+ // total: "21540",
+ // holder: "21520",
+ // nosend: "10200",
+ // send: "1320",
+ // nopicture: "314",
+ // qualification: "142",
+ // pass: "21120",
+ // socialSecurity: "21535",
+ // },
+ // {
+ // company: "南昌市赣水保安服务有限公司",
+ // subOffice: "东湖分局",
+ // total: "21540",
+ // holder: "21520",
+ // nosend: "10200",
+ // send: "1320",
+ // nopicture: "314",
+ // qualification: "142",
+ // pass: "21120",
+ // socialSecurity: "21535",
+ // },
+ // {
+ // company: "江西中业兴达保安服务有限公司",
+ // subOffice: "东湖分局",
+ // total: "21540",
+ // holder: "21520",
+ // nosend: "10200",
+ // send: "1320",
+ // nopicture: "314",
+ // qualification: "142",
+ // pass: "21120",
+ // socialSecurity: "21535",
+ // },
],
tablePage: {
pageSize: 10,
@@ -93,15 +90,14 @@
column: [
{
label: "公司名称",
- prop: "company",
+ prop: "deptname",
search: true,
searchSpan: 4,
display: false,
},
-
{
label: "所属辖区",
- prop: "subOffice",
+ prop: "jurname",
searchSpan: 4,
type: "select",
props: {
@@ -143,47 +139,48 @@
},
{
label: "保安员总数",
- prop: "total",
+ prop: "num",
display: false,
},
{
label: "持证上岗人数",
- prop: "holder",
+ prop: "cznum",
display: false,
},
{
label: "未派遣人数",
- prop: "nosend",
+ prop: "wpaiqnum",
display: false,
},
{
label: "派遣人数",
- prop: "send",
+ prop: "paiqnum",
display: false,
},
{
label: "未采集照片人数",
- prop: "nopicture",
+ prop: "wcaijnum",
display: false,
},
{
label: "资格审查异常人数",
- prop: "qualification",
+ prop: "yicnum",
display: false,
},
- {
- label: "过考保安人数",
- prop: "pass",
- display: false,
- },
+ // {
+ // label: "过考保安人数",
+ // prop: "pass",
+ // display: false,
+ // },
{
label: "缴纳社保人数",
- prop: "socialSecurity",
+ prop: "sbnum",
display: false,
},
],
},
companyName: "",
+ loading:true,
};
},
computed: {
@@ -205,6 +202,14 @@
this.$router.push({ path: "/statisticalQueryManagement/companyDetails" });
},
dateChange() {},
+ getTableData() {
+ selectLi({current: 1, size: 10 }).then(res => {
+ if (res.data.code === 200) {
+ this.tableData = res.data.data;
+ this.loading = false;
+ }
+ });
+ }
// downExcel() {
// let et = XLSX.utils.table_to_book(document.getElementById("table"));
// let etout = XLSX.write(et, {
@@ -225,7 +230,9 @@
// return etout;
// }
},
- mounted() {},
+ mounted() {
+ this.getTableData();
+ },
};
</script>
<style lang="scss" scoped>
--
Gitblit v1.9.3