From cc1c0a396698648256c350f6f0fe2cb2f0b02c7e Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 27 Mar 2024 15:44:10 +0800
Subject: [PATCH] 许可按钮放出,备案审批按钮放出
---
src/views/securityUnitOperation/operationTable.vue | 529 +++++++++++++++++++++++++++++++++-------------------------
1 files changed, 304 insertions(+), 225 deletions(-)
diff --git a/src/views/securityUnitOperation/operationTable.vue b/src/views/securityUnitOperation/operationTable.vue
index e1d1ad3..1a08ede 100644
--- a/src/views/securityUnitOperation/operationTable.vue
+++ b/src/views/securityUnitOperation/operationTable.vue
@@ -1,247 +1,326 @@
<template>
- <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>
+ <basic-container
+ :class="[
+ $store.state.control.screenSize == 1366 ? 'smallSize' : 'normalSize',
+ $store.state.control.windowWidth >= 1024 ? 'tooRowSearch1' : '',
+ ]"
+ >
+ <avue-crud
+ class="tablesss smileTableFromSize"
+ :option="tableOption"
+ :table-loading="loading"
+ :data="tableData"
+ :page.sync="page"
+ :permission="permissionList"
+ ref="crud"
+ @search-change="searchChange"
+ @search-reset="searchReset"
+ @current-change="currentChange"
+ @size-change="sizeChange"
+ @refresh-change="refreshChange"
+ >
+ </avue-crud>
+ </basic-container>
</template>
<script>
-import FileSaver from "file-saver";
-import XLSX from "xlsx";
+import { selectTb } from "../../api/securityUnitOperation/securityUnitOperation";
+import { lazyTreeJu, lazyTrees } from "../../api/index/index";
export default {
name: "公司运营情况智能分析详情表",
data() {
return {
- pickerOptions: {
- shortcuts: [
- {
- text: "最近一周",
- onClick(picker) {
- const end = new Date();
- const start = new Date();
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
- picker.$emit("pick", [start, end]);
- }
- },
- {
- text: "最近一个月",
- onClick(picker) {
- const end = new Date();
- const start = new Date();
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
- picker.$emit("pick", [start, end]);
- }
- },
- {
- text: "最近三个月",
- onClick(picker) {
- const end = new Date();
- const start = new Date();
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
- picker.$emit("pick", [start, end]);
- }
- }
- ]
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0,
+ ...this.$store.state.control.changePageSize,
},
+ query: {},
value1: "",
value2: "",
tableData: [
- {
- company: "江西省永安保安服务有限公司",
- subOffice: "南昌市公安局",
- time: "2020年7月",
- totalSec: "1200",
- normalSec: "1150",
- holderSec: "1160",
- sendSec: "1000",
- passSec: "1180",
- unit: "50",
- socialSec: "1180",
- bz: ""
- },
- {
- company: "南昌市赣水保安服务有限公司",
- subOffice: "东湖分局",
- time: "2020年7月",
- totalSec: "1200",
- normalSec: "1150",
- holderSec: "1160",
- sendSec: "1000",
- passSec: "1180",
- unit: "50",
- socialSec: "1180",
- bz: ""
- },
- {
- company: "江西中业兴达保安服务有限公司",
- subOffice: "西湖分局",
- time: "2020年7月",
- totalSec: "1200",
- normalSec: "1150",
- holderSec: "1160",
- sendSec: "1000",
- passSec: "1180",
- unit: "50",
- socialSec: "1180",
- 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: ""
+ // }
],
+ tableOption: {
+ excelBtn: true,
+ delBtn: false,
+ editBtn: false,
+ addBtn: false,
+ selection: true,
+ menu: false,
+ // dateBtn: true,
+ align: "center",
+ height: "auto",
+ calcHeight: 30,
+ tip: false,
+ searchShowBtn: false,
+ searchShow: true,
+ searchMenuSpan: 6,
+ index: true,
+ indexLabel: "#",
+ viewBtn: true,
+ dialogClickModal: false,
+ ...this.$store.state.control.clearOtherBut,
+ 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: "保安派遣数"
+ // },
+ // {
+ // value: "5",
+ // label: "过考保安数"
+ // },
+ // {
+ // value: "6",
+ // label: "服务单位数"
+ // },
+ // {
+ // value: "7",
+ // label: "缴纳社保保安数"
+ // }
+ // ],
+ // rules: [
+ // {
+ // required: true,
+ // message: "请选择类别",
+ // trigger: "blur"
+ // }
+ // ]
+ // },
+ {
+ label: "公司名称",
+ prop: "enterpriseName",
+ search: true,
+ searchSpan: 4,
+ width: 300,
+ display: false,
+ },
+ {
+ label: "所属辖区",
+ prop: "jurisdiction",
+ searchSpan: 4,
+ // cascaderItem: ["city", "area"],
+ // dicUrl: "/api/information/lazyTreeJu",
+ // dicMethod:'post',
+ props: {
+ label: "title",
+ value: "id",
+ },
+ dicData: [],
+ search: true,
+ // overHidden: true,
+ type: "tree",
+ rules: [
+ {
+ required: true,
+ message: "请选择所属辖区",
+ 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: "znum",
+ display: false,
+ },
+ {
+ label: "正常保安数",
+ prop: "zcnum",
+ display: false,
+ },
+ {
+ label: "持证保安数",
+ prop: "cznum",
+ display: false,
+ },
+ {
+ label: "保安派遣数",
+ prop: "pcnum",
+ display: false,
+ },
+ // {
+ // label: "过考保安数",
+ // prop: "passSec",
+ // display: false
+ // },
+ {
+ label: "服务单位数",
+ prop: "ghnum",
+ display: false,
+ },
+ {
+ label: "缴纳社保保安数",
+ prop: "sbnum",
+ display: false,
+ },
+ {
+ label: "备注",
+ prop: "bz",
+ display: false,
+ },
+ ],
+ },
typeValue: "0",
- typeOptions: [
- {
- value: "0",
- label: "全部"
- },
- {
- value: "1",
- label: "总保安人数"
- },
- {
- value: "2",
- label: "正常保安数"
- },
- {
- value: "3",
- label: "持证保安数"
- },
- {
- value: "4",
- label: "保安派遣数"
- },
- {
- value: "5",
- label: "过考保安数"
- },
- {
- value: "6",
- label: "服务单位数"
- },
- {
- value: "7",
- label: "缴纳社保保安数"
- }
- ],
- subofficeValue: "0",
- subofficeOptions: [
- {
- value: "0",
- label: "南昌市公安局"
- },
- {
- value: "2",
- label: "东湖分局"
- },
- {
- value: "3",
- label: "西湖分局"
- },
- {
- value: "4",
- label: "青云谱分局"
- },
- {
- value: "5",
- label: "青山湖分局"
- }
- ],
- companyName: ""
+ 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"
+ searchChange(params, done) {
+ this.query = params;
+ this.page.currentPage = 1;
+ this.onLoad(this.page, params);
+ done();
+ },
+
+ searchReset() {
+ this.query = {};
+ this.onLoad(this.page);
+ },
+ currentChange(currentPage) {
+ this.page.currentPage = currentPage;
+ this.onLoad(this.page, this.query);
+ },
+ sizeChange(pageSize) {
+ this.page.pageSize = pageSize;
+ this.onLoad(this.page, this.query);
+ },
+ refreshChange() {
+ this.onLoad(this.page, this.query);
+ },
+ onLoad(page, params = {}) {
+ this.loading = true;
+ let param = {};
+ param["jurisdiction"] = params["jurisdiction"] || "";
+ param["enterpriseName"] = params["enterpriseName"] || "";
+ param["current"] = page.currentPage;
+ param["size"] = page.pageSize;
+ selectTb(param).then((res) => {
+ const data = res.data.data;
+ this.page.total = data.total;
+ this.tableData = data.records;
+ this.$store.commit("setWindowSizeHeightAdd");
+ this.loading = false;
});
- try {
- FileSaver.saveAs(
- new Blob([etout], {
- type: "application/octet-stream"
- }),
- `表.xlsx`
- ); //导出的文件名
- } catch (e) {
- console.log(e, etout);
+ },
+ getSubOfficeData() {
+ lazyTrees().then((res) => {
+ if (res.data.code === 200) {
+ this.tableOption.column.forEach((item) => {
+ if (item.label == "所属辖区") {
+ item.dicData = res.data.data;
+ }
+ });
+ } else {
+ this.$message.error(res.msg);
+ }
+ });
+ },
+ getLocationParams() {
+ let url = window.location.href;
+ let urlArr = url.split("?")[1].split("&");
+ var object = new Object();
+ for (var i = 0; i < urlArr.length; i++) {
+ let mm = urlArr[i].split("=");
+ object[decodeURIComponent(mm[0])] = decodeURIComponent(mm[1]);
}
- return etout;
- }
+ let jurisdiction = object["jurisdiction1"] || "";
+ let enterpriseName = object["enterpriseName"] || "";
+ this.query = {
+ jurisdiction: jurisdiction,
+ enterpriseName: enterpriseName,
+ };
+ this.onLoad(this.page, this.query);
+ },
},
- mounted() {}
+ mounted() {
+ this.getLocationParams();
+ this.getSubOfficeData();
+ this.$store.commit("setWindowSizeHeightAdd");
+ },
};
</script>
<style lang="scss" scoped>
--
Gitblit v1.9.3