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/economicTable.vue |  433 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 426 insertions(+), 7 deletions(-)

diff --git a/src/views/securityUnitOperation/economicTable.vue b/src/views/securityUnitOperation/economicTable.vue
index 5012b55..816d370 100644
--- a/src/views/securityUnitOperation/economicTable.vue
+++ b/src/views/securityUnitOperation/economicTable.vue
@@ -1,7 +1,426 @@
-/*
- * @Author: mikey.zhaopeng 
- * @Date: 2021-07-17 00:19:50 
- * @Last Modified by: mikey.zhaopeng
- * @Last Modified time: 2021-07-17 00:20:33
-  * @description:公司经济情况智能分析统计
- */
+<template>
+  <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"
+      @row-update="rowUpdates"
+      @row-save="rowSave"
+      @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 { mapGetters } from "vuex";
+import { selectJj } from "../../api/securityUnitOperation/securityUnitOperation";
+import { lazyTreeJu, lazyTrees } from "../../api/index/index";
+export default {
+  name: "公司经济情况智能分析详情表",
+  data() {
+    return {
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+        ...this.$store.state.control.changePageSize,
+      },
+      query: {},
+      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: ""
+        // }
+      ],
+      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: "社保缴纳人数占比"
+          //     }
+          //   ],
+          //   search: true,
+          //   rules: [
+          //     {
+          //       required: true,
+          //       message: "请选择类别",
+          //       trigger: "blur"
+          //     }
+          //   ]
+          // },
+          {
+            label: "公司名称",
+            prop: "enterpriseName",
+            search: true,
+            searchSpan: 4,
+            width: 300,
+            display: false,
+          },
+          {
+            label: "所属辖区",
+            prop: "jurname",
+            searchSpan: 4,
+            type: "tree",
+            props: {
+              label: "title",
+              value: "id",
+            },
+            // cascaderItem: ["city", "area"],
+            // dicUrl:subofficeOptions,
+            dicData: [],
+            search: true,
+            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: "sbnum",
+            display: false,
+          },
+          {
+            label: "社保缴纳总额(万)",
+            prop: "sbcount",
+            display: false,
+            formatter: function (row, value) {
+              return (value = value / 10000);
+            },
+          },
+          {
+            label: "公司派遣人数",
+            prop: "pcnum",
+            display: false,
+          },
+          {
+            label: "社保缴纳人数占比",
+            prop: "zb",
+            display: false,
+            formatter: function (row, value) {
+              return (value = value * 100 + "%");
+            },
+          },
+          {
+            label: "备注",
+            prop: "bz",
+            display: false,
+          },
+        ],
+      },
+      typeValue: "0",
+      typeOptions: [
+        {
+          value: "0",
+          label: "全部",
+        },
+        {
+          value: "1",
+          label: "社保缴纳人数",
+        },
+        {
+          value: "2",
+          label: "社保缴纳总额",
+        },
+        {
+          value: "3",
+          label: "公司派遣人数",
+        },
+        {
+          value: "4",
+          label: "社保缴纳人数占比",
+        },
+      ],
+      subofficeValue: "0",
+      companyName: "",
+      loading: true,
+    };
+  },
+  computed: {
+    ...mapGetters(["permission"]),
+    permissionList() {
+      return {
+        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),
+      };
+    },
+  },
+  methods: {
+    rowSave(row, done, loading) {
+      adddata(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+    },
+    rowUpdates(row, index, done, loading) {
+      update(row).then(
+        () => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+    },
+    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["jurname"] || "";
+      param["enterpriseName"] = params["enterpriseName"] || "";
+      param["current"] = page.currentPage;
+      param["size"] = page.pageSize;
+      selectJj(param).then((res) => {
+        const data = res.data.data;
+        this.page.total = data.total;
+        this.tableData = data.records;
+        this.$store.commit("setWindowSizeHeightAdd");
+        this.loading = false;
+      });
+    },
+    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]);
+      }
+      let jurisdiction = object["jurisdiction1"] || "";
+      let enterpriseName = object["enterpriseName"] || "";
+      this.query = {
+        jurisdiction: jurisdiction,
+        enterpriseName: enterpriseName,
+      };
+      this.onLoad(this.page, this.query);
+    },
+  },
+  mounted() {
+    this.getLocationParams();
+    this.getSubOfficeData();
+    this.$store.commit("setWindowSizeHeightAdd");
+  },
+};
+</script>
+<style lang="scss" scoped>
+.operation-table {
+  height: 100%;
+  width: 100%;
+  .el-row:first-child {
+    height: 100px;
+    margin-bottom: 20px;
+    // background: rgba(255, 255, 255, 0.1);
+    // box-shadow: 0px 0px 1px #fff;
+    .el-col {
+      padding: 20px;
+      .el-date-editor {
+        margin-right: 20px;
+      }
+      .el-select {
+        width: 115px;
+        margin-right: 20px;
+      }
+      .el-input {
+        width: 115px;
+        margin-right: 20px;
+      }
+      .el-button {
+        width: 70px !important;
+      }
+    }
+  }
+  .el-row:nth-child(2) {
+    height: calc(100% - 120px);
+    // background: rgba(255, 255, 255, 0.1);
+    // box-shadow: 0px 0px 1px #fff;
+  }
+  .el-col {
+    height: 100%;
+    span {
+      color: #fff;
+    }
+  }
+}
+.table {
+  padding: 20px;
+  height: calc(100% - 40px);
+  width: calc(100% - 40px);
+  .el-button {
+    width: 55px;
+    height: 30px;
+    padding: 0px;
+    margin-left: calc(100% - 55px);
+  }
+}
+/deep/ .el-table {
+  width: 100%;
+  height: calc(100% - 100px);
+  margin: 10px 0px;
+  .cell {
+    color: #fff;
+    text-align: center;
+  }
+}
+.el-pagination {
+  height: 40px;
+  float: right;
+}
+</style>

--
Gitblit v1.9.3