From dbb160f7ce6c334ee561e551930ec72b5f5db899 Mon Sep 17 00:00:00 2001
From: zhengpz <1838927346@qq.com>
Date: Tue, 07 Dec 2021 21:09:14 +0800
Subject: [PATCH] 预警输入框禁用
---
src/views/securityUnitOperation/economicAnalysis.vue | 347 ++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 265 insertions(+), 82 deletions(-)
diff --git a/src/views/securityUnitOperation/economicAnalysis.vue b/src/views/securityUnitOperation/economicAnalysis.vue
index e8b3fe8..a290c7c 100644
--- a/src/views/securityUnitOperation/economicAnalysis.vue
+++ b/src/views/securityUnitOperation/economicAnalysis.vue
@@ -36,9 +36,20 @@
<span>较上月增加{{ socialSecurity.addNum }}人</span>
</div>
<div class="box-card">
- <span>社保缴纳总额(元)</span>
- <span>{{ socialSecurity.money }}</span>
- <span>较上月增加{{ socialSecurity.addMoney }}元</span>
+ <template v-if="socialSecurity.money / 10000 > 1">
+ <span>社保缴纳总额(万元)</span>
+ <span>{{ (socialSecurity.money / 10000).toFixed(0) }}</span>
+ </template>
+ <template v-else>
+ <span>社保缴纳总额(元)</span>
+ <span>{{ Number(socialSecurity.money).toFixed(0) }}</span>
+ </template>
+
+ <span
+ >较上月增加{{
+ Number(socialSecurity.addMoney).toFixed(0)
+ }}元</span
+ >
</div>
<div class="box-card">
<span>公司派遣人数</span>
@@ -66,36 +77,36 @@
style="cursor: pointer; "
@click="showTable('sb')"
>
- <span>社保缴纳预警(家)</span>
- <span>{{ socialSecurity.num }}</span>
- <span>社保缴纳率小于90%</span>
+ <span style="margin-top: 24px;">未缴纳社保预警(人)</span>
+ <span>{{ yj.sb }}</span>
+ <!-- <span>社保缴纳率小于90%</span> -->
</div>
<div
class="box-card"
style="cursor: pointer; "
@click="showTable('bx')"
>
- <span>保险缴纳预警(家)</span>
- <span>{{ socialSecurity.money }}</span>
- <span>保险缴纳率小于90%</span>
+ <span style="margin-top: 24px;">未缴纳保险预警(人)</span>
+ <span>{{ yj.bx }}</span>
+ <!-- <span>保险缴纳率小于90%</span> -->
</div>
<div
class="box-card"
style="cursor: pointer; "
@click="showTable('fw')"
>
- <span>服务合同预警(份)</span>
- <span>{{ socialSecurity.paiQ }}</span>
- <span>服务合同小于2份</span>
+ <span style="margin-top: 24px;">服务合同预警(份)</span>
+ <span>{{ yj.fw }}</span>
+ <span style="font-size:12px;margin-top: -5px;">小于2份</span>
</div>
<div
class="box-card"
style="cursor: pointer; "
@click="showTable('pq')"
>
- <span>派遣预警(家)</span>
- <span>{{ socialSecurity.sheBPerson }}</span>
- <span>派遣率小于50%</span>
+ <span style="margin-top: 24px;">未派遣预警(人)</span>
+ <span>{{ yj.pq }}</span>
+ <!-- <span>派遣率小于50%</span> -->
</div>
</div>
</div>
@@ -132,158 +143,173 @@
:modal-append-to-body="false"
>
<el-table :data="gridData.data">
- <template v-if="gridData.type === 'sb'">
- <el-table-column :key="gridData.type" type="index"> </el-table-column>
+ <template
+ v-if="
+ gridData.type === 'sb' ||
+ gridData.type === 'bx' ||
+ gridData.type === 'pq'
+ "
+ >
+ <el-table-column
+ label="序号"
+ width="50"
+ :key="gridData.type"
+ type="index"
+ >
+ </el-table-column>
<el-table-column
:key="gridData.type"
prop="realName"
- label="保安公司名称"
+ label="保安姓名"
:show-overflow-tooltip="true"
- width="180"
+ width="100"
></el-table-column>
<el-table-column
:key="gridData.type"
prop="deptName"
- label="所属辖区"
+ label="保安公司"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
prop="sex"
- label="保安总人数"
+ label="性别"
+ :formatter="sexFormatter"
:show-overflow-tooltip="true"
+ width="100"
></el-table-column>
<el-table-column
:key="gridData.type"
prop="cardid"
- label="社保缴纳人数"
+ label="身份证号"
:show-overflow-tooltip="true"
+ width="180"
></el-table-column>
<el-table-column
:key="gridData.type"
prop="age"
- label="社保缴纳比例"
+ label="年龄"
:show-overflow-tooltip="true"
+ width="100"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="age"
- label="备注"
+ prop="securitynumber"
+ label="保安员证编号"
:show-overflow-tooltip="true"
+ width="150"
+ ></el-table-column>
+ <el-table-column
+ :key="gridData.type"
+ prop="phone"
+ label="联系方式"
+ :show-overflow-tooltip="true"
+ width="150"
></el-table-column>
</template>
- <template v-if="gridData.type === 'bx'">
+ <!-- <template v-if="gridData.type === 'bx'">
<el-table-column :key="gridData.type" type="index"> </el-table-column>
<el-table-column
:key="gridData.type"
- prop="enterpriseName"
+ prop="enterprisename"
label="保安公司名称"
width="180"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="znum"
+ prop="jurisdictionName"
label="所属辖区"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="cznum"
+ prop="znum"
label="保安总人数"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="czl"
+ prop="cnum"
label="保险缴纳人数"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="sbnum"
- label="保险缴纳比例"
+ prop="pnum"
+ label="保险缴纳率"
+ :formatter="kslFormatter"
:show-overflow-tooltip="true"
></el-table-column>
- <el-table-column
- :key="gridData.type"
- prop="sbl"
- label="备注"
- :show-overflow-tooltip="true"
- ></el-table-column>
- </template>
+ </template> -->
<template v-if="gridData.type === 'fw'">
<el-table-column :key="gridData.type" type="index"> </el-table-column>
<el-table-column
:key="gridData.type"
- prop="enterpriseName"
+ prop="enterprisename"
label="保安公司名称"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="znum"
+ prop="jurisdictionName"
label="所属辖区"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="cznum"
+ prop="znum"
label="服务合同数"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="painum"
+ prop="dispatchUnitName"
label="服务单位名称"
:show-overflow-tooltip="true"
></el-table-column>
- <el-table-column
+ <!-- <el-table-column
:key="gridData.type"
prop="pql"
label="备注"
:show-overflow-tooltip="true"
- ></el-table-column> </template
- ><template v-if="gridData.type === 'pq'">
+ ></el-table-column> -->
+ </template>
+ <!-- <template v-if="gridData.type === 'pq'">
<el-table-column :key="gridData.type" type="index"> </el-table-column>
<el-table-column
:key="gridData.type"
- prop="enterpriseName"
+ prop="enterprisename"
label="保安公司名称"
width="180"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="znum"
+ prop="jurisdictionName"
label="所属辖区"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="cznum"
+ prop="znum"
label="保安总人数"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="painum"
+ prop="cnum"
label="派遣人数"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
:key="gridData.type"
- prop="fwnum"
- label="派遣比例"
+ prop="pnum"
+ label="派遣率"
+ :formatter="kslFormatter"
:show-overflow-tooltip="true"
></el-table-column>
- <el-table-column
- :key="gridData.type"
- prop="pql"
- label="备注"
- :show-overflow-tooltip="true"
- ></el-table-column>
- </template>
+ </template> -->
</el-table>
<el-pagination
@current-change="changePage"
@@ -309,8 +335,13 @@
queryYearSoil,
queryYearAn,
queryYearPz,
- queryYearKh
+ queryYearKh,
+ getSecurityUnitSoilLessPage,
+ getSecurityUnitInsuranceLessPage,
+ getSecurityUnitServerLessPage1,
+ getSecurityUnitDispatcherLessPage
} from "../../api/securityUnitOperation/securityUnitOperation";
+import { pageSecurity } from "../../api/statisticalQueryManagement/statisticalQueryManagement";
export default {
data() {
return {
@@ -378,21 +409,57 @@
title: ""
},
dialogloading: false,
- dialogTableVisible: false
+ dialogTableVisible: false,
+ yj: {
+ sb: 0,
+ bx: 0,
+ fw: 0,
+ pq: 0
+ }
};
},
methods: {
+ sexFormatter(row, column) {
+ if (row.sex === 1) {
+ return "男";
+ } else if (row.sex === 2) {
+ return "女";
+ }
+ },
+ kslFormatter(row) {
+ if (row.pnum && row.pnum !== "0") {
+ return row.pnum + "%";
+ } else {
+ return row.pnum;
+ }
+ },
+ changePage() {
+ this.showcurTable(this.gridData.type);
+ },
showTable(type) {
this.gridData.type = type;
+ this.gridData.current = 1;
+ this.gridData.data = [];
+ this.showcurTable(type);
+ },
+ showcurTable(type) {
+ // this.dialogloading = true;
this.dialogTableVisible = true;
if (type === "sb") {
- this.gridData.title = "社保缴纳预警保安公司";
+ this.gridData.title = "未缴纳社保人数";
+ // this.getSecurityUnitSoilLessPage();
+ this.getPageSecurity("dispatch");
} else if (type === "bx") {
- this.gridData.title = "保险缴纳预警保安公司";
+ this.gridData.title = "未缴纳保险人数";
+ // this.getSecurityUnitInsuranceLessPage();
+ this.getPageSecurity("soil");
} else if (type === "fw") {
this.gridData.title = "服务合同预警保安公司";
+ this.getSecurityUnitServerLessPage();
} else if (type === "pq") {
- this.gridData.title = "派遣预警保安公司";
+ this.gridData.title = "未派遣人数";
+ // this.getSecurityUnitDispatcherLessPage();
+ this.getPageSecurity("insurance");
}
},
//点击节点
@@ -448,7 +515,7 @@
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 : "";
+ this.value2 = "";
this.changeCompanys();
}
});
@@ -461,27 +528,21 @@
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.num = data.znum;
+ this.socialSecurity.addNum = data.thismouth;
+ this.socialSecurity.money = data.tamountnum.toFixed(0);
+ this.socialSecurity.addMoney = data.thisamount.toFixed(0);
+ this.socialSecurity.paiQ = data.userpcnum;
+ this.socialSecurity.addPaiQ = data.userpcthismouth;
this.socialSecurity.sheBPerson =
- data.userthismouth && (data.thismouth / data.userthismouth) * 100
- ? ((data.thismouth / data.userthismouth) * 100).toFixed(2) + "%"
+ data.usernum && (data.znum / data.usernum) * 100
+ ? ((data.znum / data.usernum) * 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.lastmonth && data.thismouth - data.lastmonth
? (
- (data.thismouth / data.userthismouth) * 100 -
- (data.lastmonth / data.userlastmouth) * 100
+ ((data.thismouth - data.lastmonth) / data.lastmonth) *
+ 100
).toFixed(2) + "%"
: 0;
} else {
@@ -531,6 +592,116 @@
this.loading3 = false;
});
},
+ // 获取预警分析数据
+ getPageSecurity(type) {
+ let params = {
+ jurisdiction: this.value1,
+ deptId: this.value2,
+ current: this.gridData.current,
+ size: 10
+ };
+ if (type === "dispatch") {
+ Object.assign(params, { dispatch: 1 });
+ } else if (type === "soil") {
+ Object.assign(params, { soil: 1 });
+ } else if (type === "insurance") {
+ Object.assign(params, { insurance: 1 });
+ }
+ pageSecurity(params).then(res => {
+ if (res.data.code === 200) {
+ if (type === "dispatch") {
+ this.yj.sb = res.data.data.total;
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ } else if (type === "soil") {
+ this.yj.bx = res.data.data.total;
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ } else if (type === "insurance") {
+ this.yj.pq = res.data.data.total;
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ }
+ if (this.dialogloading) {
+ this.dialogloading = false;
+ }
+ }
+ });
+ },
+ getSecurityUnitSoilLessPage() {
+ let params = {
+ jurisdiction: this.value1,
+ departmentid: this.value2,
+ current: this.gridData.current,
+ size: 10
+ };
+ getSecurityUnitSoilLessPage(params).then(res => {
+ if (res.data.code === 200) {
+ this.yj.sb = res.data.data.total;
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ }
+ if (this.dialogloading) {
+ this.dialogloading = false;
+ }
+ });
+ },
+ getSecurityUnitInsuranceLessPage() {
+ let params = {
+ jurisdiction: this.value1,
+ departmentid: this.value2,
+ current: this.gridData.current,
+ size: 10
+ };
+ getSecurityUnitInsuranceLessPage(params).then(res => {
+ if (res.data.code === 200) {
+ this.yj.bx = res.data.data.total;
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ }
+ if (this.dialogloading) {
+ this.dialogloading = false;
+ }
+ });
+ },
+ getSecurityUnitServerLessPage() {
+ let params = {
+ jurisdiction: this.value1,
+ departmentid: this.value2,
+ current: this.gridData.current,
+ size: 10,
+ proportion: 2
+ };
+ getSecurityUnitServerLessPage1(params).then(res => {
+ if (res.data.code === 200) {
+ this.yj.fw = res.data.data.total;
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ }
+ if (this.dialogloading) {
+ this.dialogloading = false;
+ }
+ });
+ },
+
+ getSecurityUnitDispatcherLessPage() {
+ let params = {
+ jurisdiction: this.value1,
+ departmentid: this.value2,
+ current: this.gridData.current,
+ size: 10
+ };
+ getSecurityUnitDispatcherLessPage(params).then(res => {
+ if (res.data.code === 200) {
+ this.yj.pq = res.data.data.total;
+ this.gridData.data = res.data.data.records;
+ this.gridData.total = res.data.data.total;
+ }
+ if (this.dialogloading) {
+ this.dialogloading = false;
+ }
+ });
+ },
changeCompanys() {
this.options2.forEach(item => {
if (item.departmentid === this.value2) {
@@ -541,6 +712,18 @@
this.getSocialSecurity();
this.getQueryYearSoil();
this.getQueryYearAn();
+ // 获取未缴纳社保人数
+ this.getPageSecurity("dispatch");
+
+ // 获取未缴纳保险人数
+ this.getPageSecurity("soil");
+
+ // 获取未派遣人数
+ this.getPageSecurity("insurance");
+ // this.getSecurityUnitSoilLessPage();
+ // this.getSecurityUnitInsuranceLessPage();
+ this.getSecurityUnitServerLessPage();
+ // this.getSecurityUnitDispatcherLessPage();
}
},
mounted() {
--
Gitblit v1.9.3