From 8e2a42e4a2da78f9cda9fa3e7732a0ef72f0c906 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Fri, 12 Nov 2021 09:29:02 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/zhba_enterprises

---
 src/views/securityUnitChild/index.vue |  540 ++++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 402 insertions(+), 138 deletions(-)

diff --git a/src/views/securityUnitChild/index.vue b/src/views/securityUnitChild/index.vue
index 429d85d..7d3a1b6 100644
--- a/src/views/securityUnitChild/index.vue
+++ b/src/views/securityUnitChild/index.vue
@@ -1,44 +1,29 @@
 <template>
   <div class="dispatch">
-    <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs>
+    <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs>
     <span v-if="typeTABS.prop === 'tab1'" class="tab">
-      <!-- <avue-crud
-        :option="option"
-        :data="data"
-        :page.sync="page"
-        ref="crudrec"
-        @on-load="onLoad"
-        :table-loading="loading"
-        @row-save="rowSave"
-        @search-change="searchChange"
-        @search-reset="searchReset"
-        @row-update="rowUpdate"
-        @row-del="rowDel"
-        @selection-change="selectionChange"
-        @refresh-change="refreshChange"
-      >
-        <template slot="menuLeft">
-          <el-button
-            type="danger"
-            size="small"
-            plain
-            icon="el-icon-delete"
-            @click="handleDelete"
-            >删 除
-          </el-button>
-        </template>
-      </avue-crud>-->
-      <!-- 表单组件 -->
       <basic-container>
-        <avue-form ref="form" v-model="obj0" :option="option0">
-          <!-- <template slot-scope="scope" slot="menuForm">
-          <el-button @click="tip">自定义按钮</el-button>
-        </template> -->
+        <avue-form
+          ref="form"
+          v-model="obj0"
+          :option="option0"
+          @submit="submit0"
+        >
+        </avue-form>
+      </basic-container>
+    </span>
+    <span v-if="typeTABS.prop === 'tab11'" class="tab">
+      <basic-container>
+        <avue-form
+          ref="form"
+          v-model="obj0"
+          :option="option01"
+          @submit="submit0"
+        >
         </avue-form>
       </basic-container>
     </span>
     <span v-else-if="typeTABS.prop === 'tab2'" class="tab">
-      <!-- <span v-if="typeTABS.prop === 'tab2'"> -->
       <basic-container>
         <avue-crud
           :option="option1"
@@ -53,6 +38,7 @@
           @row-del="rowDel1"
           @selection-change="selectionChange1"
           @refresh-change="refreshChange1"
+          @on-load="onLoad1"
         >
           <template slot="menuLeft">
             <el-button
@@ -90,6 +76,7 @@
           @row-del="rowDel2"
           @selection-change="selectionChange2"
           @refresh-change="refreshChange2"
+          @on-load="onLoad2"
         >
           <template slot="menuLeft">
             <el-button
@@ -113,29 +100,166 @@
       </basic-container>
     </span>
     <span v-else-if="typeTABS.prop === 'tab4'" class="tab">
-      <!-- 装备管理 -->
       <equipments :fromDeptId="departmentid"></equipments>
     </span>
     <span v-else-if="typeTABS.prop === 'tab5'" class="tab">
-      <!-- 车辆管理 -->
       <car :fromDeptId="departmentid"></car>
     </span>
-    <!-- <span v-else-if="typeTABS.prop === 'tab6'" class="tab">
-      枪支管理
-      <gun :fromDeptId="departmentid"></gun>
-    </span> -->
+    <span v-else-if="typeTABS.prop === 'tab9'" class="tab">
+      <social :deptid="obj0.departmentid"></social>
+    </span>
     <span v-else-if="typeTABS.prop === 'tab7'" class="tab">
-      <!-- 营业执照 -->
       <businessLicense :row="obj0"></businessLicense>
     </span>
     <span v-else-if="typeTABS.prop === 'tab8'" class="tab">
-      <!-- 许可证  -->
       <licence :row="obj0"></licence>
-    </span>
-    <span v-else-if="typeTABS.prop === 'tab9'" class="tab">
-      <!-- 社保记录  -->
-      <social :deptid="obj0.departmentid"></social>
-    </span>
+    </span> -->
+    <el-tabs v-model="activeName" @tab-click="handleClick">
+      <!-- <span v-if="typeTABS.prop === 'tab1'" class="tab"> -->
+      <el-tab-pane label="保安单位基本信息" name="tab1">
+        <basic-container>
+          <avue-form
+            ref="form"
+            v-model="obj0"
+            :option="option0"
+            @submit="submit0"
+          >
+          </avue-form>
+        </basic-container>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-if="typeTABS.prop === 'tab11'" class="tab"> -->
+      <el-tab-pane label="工商信息" name="tab11">
+        <basic-container>
+          <avue-form
+            ref="form"
+            v-model="obj0"
+            :option="option01"
+            @submit="submit0"
+          >
+          </avue-form>
+        </basic-container>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-else-if="typeTABS.prop === 'tab2'" class="tab"> -->
+      <el-tab-pane label="保安单位出资人员" name="tab2">
+        <basic-container>
+          <avue-crud
+            :option="option1"
+            :data="data1"
+            :page.sync="page1"
+            ref="crudrec1"
+            :table-loading="loading1"
+            @row-save="rowSave1"
+            @search-change="searchChange1"
+            @search-reset="searchReset1"
+            @row-update="rowUpdate1"
+            @row-del="rowDel1"
+            @selection-change="selectionChange1"
+            @refresh-change="refreshChange1"
+            @on-load="onLoad1"
+          >
+            <template slot="menuLeft">
+              <el-button
+                type="danger"
+                size="small"
+                plain
+                icon="el-icon-delete"
+                @click="handleDelete1"
+                >删 除
+              </el-button>
+              <el-button
+                type="success"
+                size="small"
+                plain
+                icon="el-icon-upload2"
+                @click="handleImport"
+                >批量导入
+              </el-button>
+            </template>
+          </avue-crud>
+        </basic-container>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-else-if="typeTABS.prop === 'tab3'" class="tab"> -->
+      <el-tab-pane label="主要管理人员信息" name="tab3">
+        <basic-container>
+          <avue-crud
+            :option="option2"
+            :data="data2"
+            :page.sync="page2"
+            ref="crudrec2"
+            :table-loading="loading2"
+            @row-save="rowSave2"
+            @search-change="searchChange2"
+            @search-reset="searchReset2"
+            @row-update="rowUpdate2"
+            @row-del="rowDel2"
+            @selection-change="selectionChange2"
+            @refresh-change="refreshChange2"
+            @on-load="onLoad2"
+          >
+            <template slot="menuLeft">
+              <el-button
+                type="danger"
+                size="small"
+                plain
+                icon="el-icon-delete"
+                @click="handleDelete2"
+                >删 除
+              </el-button>
+              <el-button
+                type="success"
+                size="small"
+                plain
+                icon="el-icon-upload2"
+                @click="handleImport1"
+                >批量导入
+              </el-button>
+            </template>
+          </avue-crud>
+        </basic-container>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-else-if="typeTABS.prop === 'tab4'" class="tab"> -->
+      <el-tab-pane label="装备管理" name="tab4">
+        <!-- 装备管理 -->
+        <equipments :fromDeptId="departmentid" v-if="overzb"></equipments>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-else-if="typeTABS.prop === 'tab5'" class="tab"> -->
+      <el-tab-pane label="车辆管理" name="tab5">
+        <!-- 车辆管理 -->
+        <car :fromDeptId="departmentid" v-if="overcar"></car>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-else-if="typeTABS.prop === 'tab6'" class="tab">
+      枪支管理
+      <gun :fromDeptId="departmentid"></gun>
+    </span> -->
+      <!-- <span v-else-if="typeTABS.prop === 'tab9'" class="tab"> -->
+      <el-tab-pane label="社保记录" name="tab9">
+        <!-- 社保记录  -->
+        <social
+          :deptid="obj0.departmentid"
+          :socialRE="social"
+          v-if="social"
+        ></social>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-else-if="typeTABS.prop === 'tab7'" class="tab"> -->
+      <el-tab-pane label="营业执照" name="tab7">
+        <!-- 营业执照 -->
+        <businessLicense :row="obj0" v-if="overHtp"></businessLicense>
+        <!-- </span> -->
+      </el-tab-pane>
+      <!-- <span v-else-if="typeTABS.prop === 'tab8'" class="tab"> -->
+      <el-tab-pane label="许可证" name="tab8">
+        <!-- 许可证  -->
+        <licence :row="obj0" v-if="overHtp"></licence>
+        <!-- </span> -->
+      </el-tab-pane>
+    </el-tabs>
     <el-dialog
       title="出资人导入"
       append-to-body
@@ -177,12 +301,12 @@
 </template> 
 
 <script>
-import { column, column1, column2 } from "./data";
+import { column11, column, column1, column2 } from "./data";
 import {
   getOncedata,
   // getdata,
   // adddata,
-  // update,
+  update,
   // remove,
   getdataOnce1,
   getdata1,
@@ -201,6 +325,8 @@
 import licence from "./licence.vue";
 import businessLicense from "./businessLicense.vue";
 import social from "./social.vue";
+import { mapState } from "vuex";
+import { getRoleDetail } from "@/api/system/role";
 
 export default {
   components: {
@@ -235,6 +361,15 @@
       ],
     };
     return {
+      overcar: false, //结决id传入、信息获取的优先级
+      overzb: false, //结决id传入、信息获取的优先级
+      overcar: false, //结决id传入、信息获取的优先级
+
+      social: false, //解决表格错乱
+      overHtp: false,
+
+      activeName: "tab1",
+
       departmentid: "",
 
       excelBox: false, //出资人
@@ -254,7 +389,7 @@
               res: "data",
             },
             tip: "请上传 .xls,.xlsx 标准格式文件",
-            action: "/api/car/import-examSubject",
+            action: "/api/shareholder/import-share",
           },
           {
             label: "模板下载",
@@ -282,7 +417,7 @@
               res: "data",
             },
             tip: "请上传 .xls,.xlsx 标准格式文件",
-            action: "/api/examSubjectChoices/import-examSubject",
+            action: "/api/member/import-member",
           },
           {
             label: "模板下载",
@@ -300,6 +435,11 @@
             // icon: "el-icon-info",
             label: "保安单位基本信息",
             prop: "tab1",
+          },
+          {
+            // icon: "el-icon-info",
+            label: "工商信息",
+            prop: "tab11",
           },
           {
             // icon: "el-icon-info",
@@ -328,6 +468,11 @@
           // },
           {
             // icon: "el-icon-info",
+            label: "社保记录 ",
+            prop: "tab9",
+          },
+          {
+            // icon: "el-icon-info",
             label: "营业执照 ",
             prop: "tab7",
           },
@@ -335,11 +480,6 @@
             // icon: "el-icon-info",
             label: "许可证 ",
             prop: "tab8",
-          },
-          {
-            // icon: "el-icon-info",
-            label: "社保记录 ",
-            prop: "tab9",
           },
         ],
       },
@@ -353,8 +493,17 @@
       option0: {
         emptyBtn: false,
         submitBtn: false,
+        submitText: "保存",
         gutter: 30,
         column: column,
+      },
+
+      option01: {
+        emptyBtn: false,
+        submitBtn: false,
+        submitText: "保存",
+        gutter: 30,
+        column: column11,
       },
 
       loading1: true, //派遣记录
@@ -402,6 +551,9 @@
     };
   },
   computed: {
+    ...mapState({
+      userInfo: (state) => state.user.userInfo,
+    }),
     chuzitime() {
       return this.data1.capitaltime;
     },
@@ -428,6 +580,32 @@
     },
   },
   methods: {
+    submit0(row, done, loading) {
+      // let nowTab = this.typeTABS.prop;
+      // console.log(this.typeTABS);
+      if (this.userInfo.role_name == "保安公司管理员") {
+        row["departmentid"] = this.userInfo.dept_id;
+      }
+      console.log(row);
+      update(row).then(
+        () => {
+          // this.onLoad(this.page);
+          // this.onloads();
+          this.$message({
+            type: "success",
+            message: "操作成功!",
+          });
+          this.onloads();
+          done();
+        },
+        (error) => {
+          window.console.log(error);
+          loading();
+        }
+      );
+
+      done();
+    },
     handleImport() {
       //出资人
       this.excelBox = true;
@@ -435,11 +613,11 @@
     uploadAfter(res, done, loading, column) {
       window.console.log(column);
       this.excelBox = false;
-      this.refreshChange();
+      this.refreshChange1();
       done();
     },
     handleTemplate() {
-      window.open(`/api/car/export-template`);
+      window.open(`/api/shareholder/export-template`);
     },
 
     handleImport1() {
@@ -449,31 +627,60 @@
     uploadAfter1(res, done, loading, column) {
       window.console.log(column);
       this.excelBox1 = false;
-      // this.refreshChange();
+      this.refreshChange2();
       done();
     },
     handleTemplate1() {
-      window.open(`/api/examSubjectChoices/export-template`);
+      window.open(`/api/member/export-template`);
     },
 
-    handleChangeTABS(column) {
-      this.typeTABS = column;
-      // this.$message.success(JSON.stringify(column));
-      if (column.prop == "tab1") {
+    // handleChangeTABS(column) {
+    //   // this.typeTABS = column;
+    //   // console.log(column.prop);
+    //   // this.$message.success(JSON.stringify(column));
+    //   if (column.prop == "tab1") {
+    //     this.loading1 = false;
+    //     this.loading2 = false;
+    //     // this.onLoad(this.page);
+    //   } else if (column.prop == "tab2") {
+    //     //  this.loading1 = false;
+    //     this.loading2 = false;
+    //     this.onLoad1(this.page1); //第二个表格不会自动执行
+    //   } else if (column.prop == "tab3") {
+    //     this.loading1 = false;
+    //     // this.loading2 = false;
+    //     this.onLoad2(this.page2); //第二个表格不会自动执行
+    //   }
+    // },
+    handleClick(tab, event) {
+      // console.log(tab.name, event);
+      if (tab.name == "tab1") {
         this.loading1 = false;
         this.loading2 = false;
         // this.onLoad(this.page);
-      } else if (column.prop == "tab2") {
+      } else if (tab.name == "tab5") {
+        this.overcar = true;
+        // this.onLoad(this.page);
+      } else if (tab.name == "tab4") {
+        this.overzb = true;
+        // this.onLoad(this.page);
+      } else if (tab.name == "tab2") {
         //  this.loading1 = false;
         this.loading2 = false;
         this.onLoad1(this.page1); //第二个表格不会自动执行
-      } else if (column.prop == "tab3") {
+      } else if (tab.name == "tab3") {
         this.loading1 = false;
         // this.loading2 = false;
         this.onLoad2(this.page2); //第二个表格不会自动执行
+      } else if (tab.name == "tab9") {
+        this.social = true; //表格错乱
+      } else {
+        this.social = false;
+        this.overcar = false;
+        this.overzb = false;
+        this.overcar = false;
       }
     },
-
     //派遣记录
     sizeChange1(val) {
       this.page1.currentPage = 1;
@@ -493,7 +700,7 @@
       //   var form = this.data[0];
       //   delete form.id;
       //   for (var k = 0; k < 13; k++) {
-      form["creditcode"] = this.creditcode;
+      form["deptId"] = this.departmentid;
       adddata1(form).then(
         () => {
           this.onLoad1(this.page1);
@@ -523,7 +730,9 @@
     rowUpdate1(row, index, done, loading) {
       delete row.shareholdingratio;
       delete row.tenantId;
+
       console.log(row);
+      row["deptId"] = this.departmentid;
       update1(row).then(
         () => {
           this.onLoad1(this.page1);
@@ -589,7 +798,7 @@
     onLoad1(page, params = {}) {
       this.loading1 = true;
       console.log(page, params, 3435434);
-      params["creditcode"] = this.creditcode;
+      params["deptId"] = this.departmentid;
       getdataOnce1(
         page.currentPage,
         page.pageSize,
@@ -601,6 +810,9 @@
         this.data1 = data.records;
         console.log(this.data1);
         this.loading1 = false;
+
+        this.$refs.crudrec1.refreshTable();
+        this.$refs.crudrec1.doLayout();
       });
       // onLoad1(page, params = {}) {
       //   this.loading1 = true;
@@ -639,7 +851,7 @@
       //   var form = this.data[0];
       //   delete form.id;
       //   for (var k = 0; k < 13; k++) {
-      form["creditcode"] = this.creditcode;
+      form["deptId"] = this.departmentid;
       adddata2(form).then(
         () => {
           this.onLoad2(this.page1);
@@ -669,6 +881,7 @@
     rowUpdate2(row, index, done, loading) {
       console.log(row);
       delete row.shareholdingratio;
+      row["deptId"] = this.departmentid;
       update2(row).then(
         () => {
           this.onLoad2(this.page2);
@@ -735,7 +948,7 @@
       this.loading2 = true;
       // console.log(page);
       // getdata2(
-      params["creditcode"] = this.creditcode;
+      params["deptId"] = this.departmentid;
       getdataOnce2(
         page.currentPage,
         page.pageSize,
@@ -747,6 +960,8 @@
         this.data2 = data.records;
         console.log(this.data2);
         this.loading2 = false;
+        this.$refs.crudrec2.refreshTable();
+        this.$refs.crudrec2.doLayout();
       });
     },
     //派遣记录
@@ -756,79 +971,128 @@
     readLock(name) {
       return window.localStorage.getItem(name);
     },
-  },
-  mounted() {
-    var that = this;
-    var doit = (a) => {
-      that.typeTABS = that.optionTABS.column[0];
-      var row = {};
-      if (that.readLock("danweidata") != null) {
-        row = JSON.parse(that.readLock("danweidata"));
-        // that.obj0.title = row.enterprisename;
-        console.log(row, "row");
-        that.departmentid = row.departmentid;
-        for (var k in row) {
-          that.obj0[k] = row[k];
-        }
-        that.creditcode = row.creditcode;
-        if (that.readLock("danweidataS") != null && a == 1) {
-          var b = JSON.parse(that.readLock("danweidataS"));
-          var i = 0;
-          for (var k in b) {
-            if (b[k].enterprisename == row.enterprisename) {
-              i = 1;
+    onloads(tab) {
+      var that = this;
+      var doit = (a) => {
+        that.typeTABS = that.optionTABS.column[0];
+        // if (tab) {
+        // that.typeTABS.prop = tab;
+        // }
+        var row = {};
+        if (that.readLock("danweidata") != null) {
+          row = JSON.parse(that.readLock("danweidata"));
+          // that.obj0.title = row.enterprisename;
+          console.log(row, "rowneibu");
+          that.departmentid = row.departmentid;
+          for (var k in row) {
+            that.obj0[k] = row[k];
+          }
+          if (row.creditcode == "") {
+            that.creditcode = 111;
+          } else {
+            that.creditcode = row.creditcode;
+          }
+          that.overHtp = true;
+          if (that.readLock("danweidataS") != null && a == 1) {
+            var b = JSON.parse(that.readLock("danweidataS"));
+            var i = 0;
+            for (var k in b) {
+              if (b[k].enterprisename == row.enterprisename) {
+                i = 1;
+              }
+            }
+            if (i == 1) {
+              // console.log("存在");
+            } else {
+              // console.log("已删除");
+
+              that.obj0 = {};
+              that.obj0.enterprisename = row.enterprisename + "该公司已删除";
+              window.localStorage.removeItem("danweidata");
+              that.creditcode = "";
             }
           }
-          if (i == 1) {
-            // console.log("存在");
-          } else {
-            // console.log("已删除");
-
-            that.obj0 = {};
-            that.obj0.enterprisename = row.enterprisename + "该公司已删除";
-            window.localStorage.removeItem("danweidata");
-            that.creditcode = "";
-          }
+        } else {
+          // console.log("no");
+          that.obj0.enterprisename = "未选择查询单位";
         }
-      } else {
-        // console.log("no");
-        that.obj0.enterprisename = "未选择查询单位";
-      }
-    };
-    var flag = false,
-      i = 0,
-      ind = null;
-    this.$store.state.tags.tagList.forEach((item, index) => {
-      if (item.label == "保安单位详情") {
-        if (flag == false) {
-          ind = index;
-          flag = true;
-        }
-        i++;
-      }
-    });
-    if (i > 1) {
-      this.$store.state.tags.tagList.splice(ind, 1);
-    }
-
-    var fromSecunityGuardId = this.$route.query.fromSecunityGuardId;
-    // var fromSecunityGuardId = this.$route.query;
-    if (fromSecunityGuardId != undefined) {
-      var value = {
-        departmentid: fromSecunityGuardId,
       };
-      getOncedata(value).then((res) => {
-        // console.log(res.data.data, "get");
-        window.localStorage.setItem(
-          "danweidata",
-          JSON.stringify(res.data.data)
-        );
-        doit();
+      var flag = false,
+        i = 0,
+        ind = null;
+      this.$store.state.tags.tagList.forEach((item, index) => {
+        if (item.label == "保安单位详情") {
+          if (flag == false) {
+            ind = index;
+            flag = true;
+          }
+          i++;
+        }
       });
-      // return;
-    } else {
-      doit(1);
-    }
+      if (i > 1) {
+        this.$store.state.tags.tagList.splice(ind, 1);
+      }
+
+      var getdatas = (roleAlias) => {
+        var fromSecunityGuardId = that.$route.query.fromSecunityGuardId;
+        // var fromSecunityGuardId = that.$route.query;
+        if (fromSecunityGuardId != undefined || roleAlias == "保安公司管理员") {
+          var value = {
+            departmentid: fromSecunityGuardId || that.userInfo.dept_id,
+          };
+          getOncedata(value).then((res) => {
+            // console.log(res.data.data, "get");
+            window.localStorage.setItem(
+              "danweidata",
+              JSON.stringify(res.data.data)
+            );
+            doit();
+          });
+          // return;
+        } else {
+          doit(1);
+        }
+      };
+
+      // console.log(this.userInfo, "userInfo");
+      //获取当前登录人员的角色信息
+      var roleIds = this.userInfo.role_id.split(",");
+      roleIds.forEach((roleId) => {
+        getRoleDetail(roleId).then((res) => {
+          var roleAlias = res.data.data.roleAlias;
+          var d = that.option0.column;
+          var e = that.option01.column;
+          // console.log(roleAlias);
+          if (roleAlias == "保安公司管理员") {
+            that.option0.submitBtn = true;
+            that.option01.submitBtn = true;
+            for (var k in d) {
+              // if (d[k].label != "企业类型") {
+              d[k].disabled = false;
+              // }
+            }
+            for (var n in e) {
+              // if (d[k].label != "企业类型") {
+              e[n].disabled = false;
+              // }
+            }
+          } else {
+            that.option0.submitBtn = false;
+            that.option01.submitBtn = false;
+            for (var k in d) {
+              d[k].disabled = true;
+            }
+            for (var n in e) {
+              e[n].disabled = true;
+            }
+          }
+          getdatas(roleAlias);
+        });
+      });
+    },
+  },
+  mounted() {
+    this.onloads();
   },
   watch: {
     // chuzitime() {

--
Gitblit v1.9.3