Administrator
2022-04-11 79d9fc857559982b00b68b2d709807bdc4cd286f
src/views/securityUnitChild/index.vue
@@ -17,10 +17,19 @@
      <el-tab-pane label="工商信息" name="tab11">
        <basic-container>
          <avue-form
            v-if="businessVisiable"
            ref="form"
            v-model="obj"
            :option="option01"
            @submit="submitBase"
          >
          </avue-form>
          <avue-form
            v-if="!businessVisiable"
            ref="businessForm"
            v-model="businessObj"
            :option="businessOption"
            @submit="businessSubmit"
          >
          </avue-form>
        </basic-container>
@@ -28,7 +37,7 @@
      <!-- 出资人列表信息 -->
      <el-tab-pane :label="tab2label" name="tab2" v-if="shareholderVisiable">
        <shareholder
          v-if="overshareholder"
          v-if="seeWhere == 'tab2'"
          :deptid="departmentid"
          :windowHeight="windowHeight"
        ></shareholder>
@@ -36,14 +45,15 @@
      <!-- 主要管理人信息 -->
      <el-tab-pane :label="managerLabel" name="tab3">
        <manager
          v-if="overmanager"
          v-if="seeWhere == 'tab3'"
          :deptid="departmentid"
          :stats="stats"
        ></manager>
      </el-tab-pane>
      <!-- 装备管理列表 -->
      <el-tab-pane label="装备管理" name="tab4" v-if="equipmentVisiable">
        <equipments
          v-if="overzb"
          v-if="seeWhere == 'tab4'"
          :fromDeptId="departmentid"
          :windowHeight="windowHeight"
        ></equipments>
@@ -52,7 +62,7 @@
      <el-tab-pane label="车辆管理" name="tab5" v-if="carVisiable">
        <car
          :fromDeptId="departmentid"
          v-if="overcar"
          v-if="seeWhere == 'tab5'"
          :windowHeight="windowHeight"
        ></car>
      </el-tab-pane>
@@ -61,7 +71,7 @@
        <social
          :deptid="objBase.departmentid"
          :socialRE="social"
          v-if="social"
          v-if="seeWhere == 'tab9'"
        ></social>
        <!-- </span> -->
      </el-tab-pane>
@@ -71,7 +81,24 @@
      </el-tab-pane>
      <!-- 许可证  -->
      <el-tab-pane :label="licenceLabel" name="tab8" v-if="licenceVisiable">
        <licence :row="objBase" v-if="overHtp"></licence>
        <!-- <licence :row="objBase" v-if="overHtp"></licence> -->
        <basic-container>
          <avue-form
            v-if="true"
            ref="lincenceForm"
            v-model="licenceObj"
            :option="licenceOption"
            @submit="licenceSubmit"
          ></avue-form>
          <avue-form
            v-if="false"
            ref="licenceGroupForm"
            v-model="licenceGroupObj"
            :option="licenceGroupOption"
            @submit="licenceGroupSubmit"
          >
          </avue-form>
        </basic-container>
      </el-tab-pane>
      <!-- 备案证  -->
      <el-tab-pane label="备案证" name="tab12" v-if="certificdinedVisiable">
@@ -79,11 +106,29 @@
      </el-tab-pane>
    </el-tabs>
  </div>
</template>
</template>
<script>
import { column11, column} from "./data";
import { getOncedata, update} from "@/api/securityUnit/securityUnit";
import {
  column11,
  column,
  filialeColumn,
  selfColumn,
  lincenceColumn,
  businessColumn,
  lincenceGroupColumn,
  lincenceGroupColumns,
  lincenceTrainColumn
} from "./data";
import {
  getOncedata,
  update,
  getBusinessInfo,
  submit,
  getLicenceDetail,
  licenceSubmit,
  submitGroup
} from "@/api/securityUnit/securityUnit";
import manager from "./manager.vue";
import shareholder from "./shareholder.vue";
import equipments from "../securityEquipment/equipments.vue";
@@ -104,20 +149,22 @@
    businessLicense,
    social,
    manager,
    shareholder,
    shareholder
  },
  data() {
    return {
      tab2label: "出资人信息",
      managerLabel: "主要管理人信息",
      licenceLabel: "许可证",
      licenceLabel: "许可证信息",
      baseTitle: "基本信息",
      visible: false,
      certificdinedVisiable: false,
      businessVisiable: true,
      licenceVisiable: true,
      shareholderVisiable: true,
      equipmentVisiable: true,
      carVisiable: true,
      seeWhere: "tab1",
      //结决id传入、信息获取的优先级
      overzb: false,
      overmanager: false,
@@ -128,6 +175,8 @@
      social: false,
      overHtp: false,
      activeName: "tab1",
      stats: "",
      deptId: "",
      departmentid: "",
      //全局单位统一社会信用代码
      creditcode: "",
@@ -135,35 +184,174 @@
      objBase: {
        // title: "我是头部标题",
      },
      formData:{},
      formData: {},
      businessObj: {},
      businessOption: {
        height: "auto",
        // calcHeight: 80,
        emptyBtn: false,
        // submitBtn:false,
        submitText: "保存",
        group: businessColumn
      },
      licenceGroupObj: {},
      licenceGroupOption: {
        height: "auto",
        emptyBtn: false,
        submitText: "保存",
        group: [
          {
            label: "总公司许可证信息",
            labelWidth: "110",
            prop: "baseInfo",
            icon: "el-icon-user-solid",
            column: lincenceGroupColumn
          },
          {
            label: "分公司许可证信息",
            prop: "detailInfo",
            labelWidth: "110",
            icon: "el-icon-s-order",
            column: lincenceGroupColumns
          }
        ]
      },
      licenceObj: {},
      licenceOption: {
        emptyBtn: false,
        // submitBtn: false,
        submitText: "保存",
        gutter: 30,
        column: lincenceColumn
      },
      optionBase: {
        emptyBtn: false,
        submitBtn: false,
        submitText: "保存",
        gutter: 30,
        column: column,
        column: column
      },
      option01: {
        emptyBtn: false,
        submitBtn: false,
        submitText: "保存",
        gutter: 30,
        column: column11,
      },
        column: column11
      }
    };
  },
  computed: {
    ...mapGetters(["userInfo", "windowHeight"]),
    chuzitime() {
      return this.data1.capitaltime;
    },
    }
  },
  methods: {
    //分公司工商信息修改
    businessSubmit(row, done, loading) {
      var that = this;
      if (
        this.userInfo.role_name == "保安公司管理员" ||
        this.userInfo.role_name == "培训公司管理员" ||
        this.userInfo.role_name == "分公司管理员"
      ) {
        //分公司
        var f = {
          departmentid: this.userInfo.dept_id,
          id: this.formData.id,
          businessLicense: row.businessLicense,
          establishtime: row.establishtime,
          creditcode: row.creditcode,
          registeredcapital: row.registeredcapital,
          business: row.business
        };
        //总公司
        var z = {
          id: row.id,
          deptId: this.userInfo.dept_id,
          registerTime: row.registerTime,
          socialCreditCode: row.socialCreditCode,
          capital: row.capital,
          businessScope: row.businessScope,
          trading: row.trading
        };
      }
      //分公司工商信息修改
      update(f).then(
        () => {
          this.$message({
            type: "success",
            message: "操作成功!"
          });
          done();
        },
        error => {
          window.console.log(error);
          loading();
        }
      );
      //总公司工商信息修改
      submit(z).then(
        res => {
          that.businessObj = row;
          that.businessObj.id = res.data.data.id;
          done();
        },
        error => {
          window.console.log(error);
          loading();
        }
      );
      done();
    },
    //分公司许可证信息修改
    licenceSubmit(row, done, loading) {
      var that = this;
      if (
        this.userInfo.role_name == "保安公司管理员" ||
        this.userInfo.role_name == "培训公司管理员" ||
        this.userInfo.role_name == "分公司管理员"
      ) {
        row["deptId"] = this.userInfo.dept_id;
        row["id"] = that.licenceObj.id;
      }
      if (this.stats == "1") {
        row["type"] = 2;
      } else {
        row["type"] = 1;
      }
      if (row.id) {
        row["updateUser"] = this.userInfo.Id;
      } else {
        row["createUser"] = this.userInfo.Id;
      }
      licenceSubmit(row).then(
        () => {
          this.$message({
            type: "success",
            message: "操作成功!"
          });
          that.getLicenceInfo();
          done();
        },
        error => {
          window.console.log(error);
          loading();
        }
      );
      done();
    },
    //其他公司基本信息,工商信息修改
    submitBase(row, done, loading) {
      var that = this;
      if (this.userInfo.role_name == "保安公司管理员" ||
      if (
        this.userInfo.role_name == "保安公司管理员" ||
        this.userInfo.role_name == "培训公司管理员" ||
        this.userInfo.role_name == "分公司管理员") {
        this.userInfo.role_name == "分公司管理员"
      ) {
        row["departmentid"] = this.userInfo.dept_id;
        row["id"] = this.formData.id;
      }
@@ -172,17 +360,52 @@
        () => {
          this.$message({
            type: "success",
            message: "操作成功!",
            message: "操作成功!"
          });
          that.formData = row;
          done();
        },
        (error) => {
        error => {
          window.console.log(error);
          loading();
        }
      );
      done();
    },
    //分公司许可信息修改
    licenceGroupSubmit(row, done, loading) {
      var that = this;
      if (
        this.userInfo.role_name == "保安公司管理员" ||
        this.userInfo.role_name == "培训公司管理员" ||
        this.userInfo.role_name == "分公司管理员"
      ) {
        row["deptId"] = this.userInfo.dept_id;
        row["id"] = that.licenceGroupObj.id;
        row["sid"] = that.licenceGroupObj.sid;
      }
      row["type"] = 1;
      if (row.id) {
        row["updateUser"] = this.userInfo.Id;
      } else {
        row["createUser"] = this.userInfo.Id;
      }
      // console.log(row);
      submitGroup(row).then(
        () => {
          this.$message({
            type: "success",
            message: "操作成功!"
          });
          that.getLicenceInfo();
          done();
        },
        error => {
          window.console.log(error);
          loading();
        }
      );
      done();
    },
    //从 localStorage 获取数据
@@ -192,20 +415,30 @@
    handleClick(tab, event) {
      if (tab.name == "tab1") {
        this.loading1 = false;
      }else if (tab.name == "tab11") {
        this.seeWhere = "tab1";
      } else if (tab.name == "tab11") {
        this.seeWhere = "tab11";
        this.obj = this.formData;
      }else if (tab.name == "tab5") {
      } else if (tab.name == "tab5") {
        this.seeWhere = "tab5";
        this.overcar = true;
      } else if (tab.name == "tab4") {
        this.seeWhere = "tab4";
        this.overzb = true;
      } else if (tab.name == "tab2") {
        this.overshareholder = true;
        this.seeWhere = "tab2";
        this.overshareholder = true;
      } else if (tab.name == "tab3") {
        this.seeWhere = "tab3";
        this.overmanager = true;
      } else if (tab.name == "tab9") {
        this.social = true;
      }
      else {
        this.seeWhere = "tab9";
        this.social = true;
      } else if (tab.name == "tab8") {
        //获取许可证信息
        this.seeWhere = "tab8";
        this.getLicenceInfo();
      } else {
        this.social = false;
        this.overcar = false;
        this.overzb = false;
@@ -213,9 +446,17 @@
        this.overmanager = false;
        this.overshareholder = false;
      }
      this.$store.commit("setWindowSizeHeightAdd");
    },
    //获取许可证信息
    getLicenceInfo() {
      var that = this;
      getLicenceDetail(this.deptId).then(res => {
        that.licenceObj = res.data.data;
      });
    },
    //tag 防重复处理
    tagTraim(){
    tagTraim() {
      //tag 防重复处理
      var flag = false,
        i = 0,
@@ -236,37 +477,85 @@
    //编辑状态控制
    editController() {
      var that = this;
      if (this.stats == "1") {
        //培训学校
        this.licenceOption.column = lincenceTrainColumn;
      } else {
        this.licenceOption.column = lincenceColumn;
      }
      //基本信息列控制
      if (this.stats == "4") {
        //分公司
        this.optionBase.column = filialeColumn;
      } else if (this.stats == "0") {
        //自招保安单位
        this.optionBase.column = selfColumn;
      } else {
        //学校,本市保安公司
        this.optionBase.column = column;
      }
      //获取当前登录人员的角色信息
      var roleIds = this.userInfo.role_id.split(",");
      roleIds.forEach((roleId) => {
        getRoleDetail(roleId).then((res) => {
          var roleAlias = res.data.data.roleAlias;
          var d = that.optionBase.column;
          var e = that.option01.column;
          //控制按钮,编辑状态
          if (roleAlias == "保安公司管理员" ||
          roleAlias == "分公司管理员" ||
          roleAlias == "培训公司管理员") {
            that.optionBase.submitBtn = true;
            that.option01.submitBtn = true;
            for (var k in d) {
              d[k].disabled = false;
            }
            for (var n in e) {
              e[n].disabled = false;
            }
          } else {
            that.optionBase.submitBtn = false;
            that.option01.submitBtn = false;
            for (var a in d) {
              d[a].disabled = true;
            }
            for (var b in e) {
              e[b].disabled = true;
            }
          }
        });
      });
      // var roleIds = this.userInfo.role_id.split(",");
      // roleIds.forEach((roleId) => {
      //   getRoleDetail(roleId).then((res) => {
      //     var roleAlias = res.data.data.roleAlias;
      var roleAlias = this.userInfo.role_name;
      var d = that.optionBase.column;
      var e = that.option01.column;
      var f = that.businessOption.group;
      var g = f[0].column;
      var h = f[1].column;
      var bb = that.licenceOption.column;
      //控制按钮,编辑状态
      if (
        roleAlias == "保安公司管理员" ||
        roleAlias == "分公司管理员" ||
        roleAlias == "培训公司管理员"
      ) {
        that.optionBase.submitBtn = true;
        that.businessOption.submitBtn = true;
        that.option01.submitBtn = true;
        that.licenceOption.submitBtn = true;
        for (var k in d) {
          d[k].disabled = false;
        }
        for (var n in e) {
          e[n].disabled = false;
        }
        for (var l in g) {
          g[l].disabled = false;
        }
        for (var m in h) {
          h[m].disabled = false;
        }
        for (var mm in bb) {
          bb[mm].disabled = false;
        }
      } else {
        that.optionBase.submitBtn = false;
        that.option01.submitBtn = false;
        that.businessOption.submitBtn = false;
        that.licenceOption.submitBtn = false;
        for (var a in d) {
          d[a].disabled = true;
        }
        for (var b in e) {
          e[b].disabled = true;
        }
        for (var c in g) {
          g[c].disabled = true;
        }
        for (var z in h) {
          h[z].disabled = true;
        }
        for (var zz in bb) {
          bb[zz].disabled = true;
        }
      }
      // });
      // });
    },
    //获取保安公司数据
    getdatas(data) {
@@ -278,7 +567,7 @@
    doit(data) {
      var that = this;
      var row = {};
      if (data!= null) {
      if (data != null) {
        row = data;
        that.departmentid = row.departmentid;
        for (var k in row) {
@@ -290,52 +579,12 @@
          that.creditcode = row.creditcode;
        }
        that.overHtp = true;
        if(data.stats == "0"){
          //自招保安单位
          const industrycolumn = this.findObject(this.optionBase.column, "industry");
          const representativecolumn = this.findObject(this.optionBase.column, "representative");
          const representativecellcolumn = this.findObject(this.optionBase.column, "representativecell");
          const fregioncolumn = this.findObject(this.optionBase.column, "fregion");
          const ftimecolumn = this.findObject(this.optionBase.column, "ftime");
          //法人及电话,办公地址不可见
          industrycolumn.display = false;
          representativecolumn.display=false;
          representativecellcolumn.display=false;
          //服务区域,时间可见
          fregioncolumn.display=true;
          ftimecolumn.display=true;
        }
        if(data.stats == "4"){
          //分公司
          const representativecolumn = this.findObject(this.optionBase.column, "representative");
          const representativecellcolumn = this.findObject(this.optionBase.column, "representativecell");
          //法人及电话不可见
          representativecolumn.label="分公司负责人";
          representativecellcolumn.label="分公司负责人电话";
        }
        // 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) {
        //     that.objBase = {};
        //     that.objBase.enterprisename = row.enterprisename + "该公司已删除";
        //     window.localStorage.removeItem("danweidata");
        //     that.creditcode = "";
        //   }
        // }
      } else {
        that.objBase.enterprisename = "未选择查询单位";
      }
    },
    //数据初始化
    initData() {
      // alert(1);
      var that = this;
      var datas = this.$route.query.data;
      // console.log(datas,123456);
@@ -343,30 +592,33 @@
      if (datas) {
        var data = JSON.parse(this.$route.query.data);
        that.formData = data;
        // console.log(data,3333333);
        //单位列表进入
        var stats = data.stats;
        var deptId = data.departmentid;
        //初始tab控制
        this.initController(stats);
        this.initController(stats, deptId);
        //初始数据获取
        this.getdatas(data);
      } else {
        //单位信息进入
        var value = {
          departmentid: that.userInfo.dept_id,
          departmentid: that.userInfo.dept_id
        };
        getOncedata(value).then((res) => {
        getOncedata(value).then(res => {
          that.formData = res.data.data;
          var stats = res.data.data.stats;
          var deptId = res.data.data.departmentid;
          //初始tab控制
          this.initController(stats);
          this.initController(stats, deptId);
          //初始数据获取
          this.getdatas(res.data.data);
        });
      }
    },
    //tab 初始设置
    initController(stats) {
    initController(stats, deptId) {
      this.stats = stats;
      this.deptId = deptId;
      var that = this;
      // 判断按进入的公司类型
      if (stats == "2") {
@@ -386,16 +638,25 @@
        //分公司
        that.baseTitle = "保安单位基本信息";
        that.certificdinedVisiable = true;
        that.businessVisiable = false;
        that.licenceLabel = "总公司许可证信息";
        //查询分公司(及总公司)工商信息
        getBusinessInfo(deptId).then(res => {
          that.businessObj = res.data.data;
          if (that.businessObj.id == -1) {
            that.businessObj.id = null;
          }
        });
      }
      if (stats == "1") {
        //培训学校
        that.baseTitle = "学校基本信息";
        that.managerLabel = "师资力量";
        that.licenceLabel = "培训许可证";
        that.licenceLabel = "培训许可证信息";
        that.carVisiable = false;
        that.shareholderVisiable = false;
      }
    },
    }
  },
  mounted() {
    this.tagTraim();
@@ -404,8 +665,7 @@
    //初始化信息
    this.initData();
  },
  watch: {
  },
  watch: {}
};
</script>
@@ -434,4 +694,4 @@
.manager {
  height: 755px;
}
</style>
</style>