sqg 3 роки тому
батько
коміт
09c4c94984

+ 74 - 0
front-vue/src/api/service/company/company.js

@@ -0,0 +1,74 @@
+import request from '@/utils/request'
+
+// 查询企业列表
+export function listCompany(query) {
+  return request({
+    url: '/sc-service_s/company/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业详情
+export function companyQuery(scyId) {
+  return request({
+    url: '/sc-service_s/company/' + scyId,
+    method: 'get'
+  })
+}
+// 修改企业详情信息
+export function updateCompanyInfor(data) {
+  return request({
+    url: '/sc-service_s/company/updateCompanyInfor',
+    method: 'put',
+    data: data
+  })
+}
+
+// 新增企业信息
+export function addCompany(data) {
+  return request({
+    url: '/sc-service_s/company/addCompany',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改企业信息
+export function updateCompany(data) {
+  return request({
+    url: '/sc-service_s/company/updateCompany',
+    method: 'put',
+    data: data
+  })
+}
+
+// 冻结或解冻企业
+export function updateCompanyStatus(scyId,state) {
+  const data = {
+    scyId,
+    state
+  }
+  return request({
+    url: '/sc-service_s/company/updateCompanyStatus',
+    method: 'put',
+    data: data
+  })
+}
+
+// 四要素人工审核
+export function getElementStatus(data) {
+  return request({
+    url: '/sc-service_s/company/elementStatus',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除企业信息
+export function removeCompany(scyId) {
+  return request({
+    url: '/sc-service_s/company/' + scyId,
+    method: 'delete'
+  })
+}

+ 91 - 0
front-vue/src/api/service/rel/companyRel.js

@@ -0,0 +1,91 @@
+import request from '@/utils/request'
+
+// 查询链属列表
+export function listRel(query) {
+  return request({
+    url: '/sc-service_s/rel/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询链属未认证列表
+export function sparelist(query) {
+  return request({
+    url: '/sc-service_s/rel/notCertifiedList',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业列表
+export function listCompany(query) {
+  return request({
+    url: '/sc-service_s/rel/companyList',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业列表
+export function listAllCompany(query) {
+  return request({
+    url: '/sc-service_s/rel/listAllCompany',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业
+export function listCompanyQuery(scyName) {
+  return request({
+    url: '/sc-service_s/rel/companyListQuery/'+ scyName,
+    method: 'get'
+  })
+}
+
+// 新增链属
+export function addRel(data) {
+  return request({
+    url: '/sc-service_s/rel/addCompanyRel',
+    method: 'post',
+    data: data
+  })
+}
+
+// 拒绝与同意链属
+export function updateRel(launchScrId,state) {
+  const data = {
+    launchScrId,
+    state
+  }
+  return request({
+    url: '/sc-service_s/rel/updateRel',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除链属
+export function delRel(launchScrId) {
+  return request({
+    url: '/sc-service_s/rel/' + launchScrId,
+    method: 'delete'
+  })
+}
+
+// 删除链属企业信息数据
+export function removeSpare(scpId) {
+  return request({
+    url: '/sc-service_s/rel/removeSpare/' + scpId,
+    method: 'delete'
+  })
+}
+
+// 查询当前操作员
+export function getUser() {
+  return request({
+    url: '/sc-service_s/rel/getUser',
+    method: 'get'
+  })
+}

+ 2 - 2
front-vue/src/router/index.js

@@ -300,7 +300,7 @@ export const constantRoutes = [
       }
     ]
   },
-  /* {
+  {
     path: '/company',
     component: Layout,
     hidden: true,
@@ -312,7 +312,7 @@ export const constantRoutes = [
         meta: { title: '企业详情',noCache: true }
       },
     ]
-  }, */
+  },
 ]
 
 export default new Router({

+ 593 - 0
front-vue/src/views/service/company/coreCompanyManage.vue

@@ -0,0 +1,593 @@
+<template>
+  <div class="app-container">
+      <el-card class="fiche">
+          <right-toolbar :showSearch.sync="showSearch" @queryTable="getList">收起</right-toolbar>
+          <span style="margin-bottom: 10px;color:#333333;font:14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial,sans-serif">所选条件:</span>
+         <div  style="float: right;margin-right:1%">
+            <el-button type="cyan"  icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"  style="float: ;">重置</el-button>
+              <column-setting :checkList="checkList" :tableList="tableList" :selfDom="selfDom" :tableId="tableId" style="margin-left:5px"></column-setting>
+         </div>
+         <hr  style="margin-top: 16px;">
+    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px">
+      <el-form-item label="企业名称" prop="scyName">
+        <el-input
+          maxlength="30"
+          v-model="queryParams.scyName"
+          placeholder="请输入公司名称"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="社会统一代码" prop="scySocialCode">
+        <el-input
+          v-model="queryParams.scySocialCode"
+          placeholder="请输入社会统一代码"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="联系人" prop="scyLegal">
+        <el-input
+          v-model="queryParams.scyLegal"
+          placeholder="请输入联系人"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="联系电话" prop="scyPhone">
+        <el-input
+          v-model="queryParams.scyPhone"
+          placeholder="请输入联系电话"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="企业状态" prop="scyStatus">
+        <el-select v-model="queryParams.scyStatus"
+            placeholder="企业状态"
+            clearable
+            size="small"
+            >
+                <el-option
+                  v-for="dict in scyStatusOptions"
+                  :key="dict.dictValue"
+                  :label="dict.dictLabel"
+                  :value="dict.dictValue"
+                ></el-option>
+        </el-select>
+      </el-form-item>
+    </el-form>
+    </el-card>
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['service:company:add']"
+        >新增</el-button>
+      </el-col>
+    </el-row>
+
+    <el-table v-loading="loading" :data="companyList" @selection-change="handleSelectionChange" stripe border>
+      <el-table-column label="序号" type="index" width="55" align="center" />
+      <el-table-column label="企业编号" align="center" prop="scyId"/>
+      <el-table-column label="企业名称" align="center" prop="scyName" :show-overflow-tooltip="true" v-if="uncheckList.scyName"/>
+      <el-table-column label="社会统一代码" align="center" prop="scySocialCode" v-if="uncheckList.scySocialCode"/>
+      <el-table-column label="联系人" align="center" prop="scyLegal" v-if="uncheckList.scyLegal" />
+      <el-table-column label="联系电话" align="center" prop="scyPhone" v-if="uncheckList.scyPhone"/>
+      <el-table-column label="状态" align="center" prop="scyStatus" :formatter="scyStatusFormat" v-if="uncheckList.scyStatus"/>
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            v-if="scope.row.scyAuthStatus == '00' || scope.row.scyStatus == '00' || scope.row.scyStatus == '01'"
+            size="mini"
+            type="text"
+            @click="handleDetail(scope.row)"
+            v-hasPermi="['service:company:query']"
+          >详情</el-button>
+          <el-button
+            v-if="scope.row.scyAuthStatus == '00'"
+            size="mini"
+            type="text"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['service:company:update']"
+          >修改</el-button>
+          <el-button
+            v-if="scope.row.scyStatus == '02'"
+            size="mini"
+            type="text"
+            @click="handleExamine(scope.row)"
+            v-hasPermi="['service:company:elementStatus']"
+          >四要素审核</el-button>
+          <el-button
+            v-if="scope.row.scyStatus == '00'"
+            size="mini"
+            type="text"
+            @click="handleCompanyFrozen(scope.row)"
+            v-hasPermi="['service:company:updateCompanyStatus']"
+          >冻结</el-button>
+          <el-button
+            v-if="scope.row.scyStatus == '01'"
+            size="mini"
+            type="text"
+            @click="handleCompanyStatus(scope.row)"
+            v-hasPermi="['service:company:updateCompanyStatus']"
+          >解冻</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['system:company:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改公司对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="140px" :inline="true">
+        <el-form-item label="企业名称" prop="scyName">
+          <el-input v-model="form.scyName" placeholder="请输入企业名称" style="width:560px" maxlength="20" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="企业统一代码" prop="scySocialCode">
+          <el-input v-model="form.scySocialCode" placeholder="请输入企业统一代码" maxlength="18" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人" prop="scyLegal">
+          <el-input v-model="form.scyLegal" placeholder="请输入联系人" maxlength="5" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人手机号" prop="scyPhone">
+          <el-input v-model="form.scyPhone" placeholder="请输入联系人手机号" maxlength="11" show-word-limit/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+
+    <!-- 详情公司对话框 -->
+    <el-dialog :title="title" :visible.sync="openDetail" width="800px" append-to-body >
+      <el-form ref="form" :model="form" :rules="rules" label-width="140px" :inline="true">
+        <el-form-item label="企业名称" prop="scyName" >
+          <el-input v-model="form.scyName" placeholder="请输入企业名称" disabled style="width:560px" maxlength="20" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="企业统一代码" prop="scySocialCode">
+          <el-input v-model="form.scySocialCode" placeholder="请输入企业统一代码" disabled maxlength="18" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人" prop="scyLegal">
+          <el-input v-model="form.scyLegal" placeholder="请输入联系人" disabled maxlength="5" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人手机号" prop="scyPhone">
+          <el-input v-model="form.scyPhone" placeholder="请输入联系人手机号" disabled maxlength="11" show-word-limit/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+
+    <!-- 四要素审核 -->
+    <el-dialog :title="examTitle" :visible.sync="examOpen" width="400px" append-to-body >
+      <el-form ref="examForm" :model="examForm" :rules="examRules" label-width="140px" :inline="true">
+        <template>
+          <el-radio v-model="examForm.state" label="03">通过</el-radio>
+          <el-radio v-model="examForm.state" label="04">拒绝</el-radio>
+        </template>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="examSubmit">确 定</el-button>
+        <el-button @click="examCancel">取 消</el-button>
+      </div>
+    </el-dialog>
+
+  </div>
+</template>
+
+<script>
+import { listCompany, companyQuery, addCompany, updateCompany, 
+updateCompanyStatus, getElementStatus, removeCompany } 
+from "@/api/service/company/company";
+import { uploadFileNew } from "@/api/common/file";
+import { getToken } from "@/utils/auth";
+import {columnQuery,columnfilter} from "@/api/common/columnSetting";
+import ColumnSetting from '../../../components/Table/columnSetting.vue';
+import Cookies from 'js-cookie'
+export default {
+  name: "coreCompanyManage",
+  components: {
+     ColumnSetting 
+   },
+  data() {
+    return {
+      //四要素审核相关
+      examTitle:'',
+      examOpen:false,
+      examForm:{
+        scyId:null,
+        state:null
+      },
+      examRules:{
+        state: [
+          { required: true, message: "审核状态不能为空", trigger: "blur" },
+        ]
+      },
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 公司表格数据
+      companyList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      openDetail : false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        scyName: null,
+        scySocialCode: null,
+        scyLegal : null,
+        scyPhone : null,
+        scyStatus : null,
+        scyType : '01'//核心企业
+      },
+      //筛选按钮的数据列表,与table表头的数据一致 --显示隐藏列用
+      tableList: [
+            {
+              label: 'scyId',
+              value: '企业编号'
+            },
+            {
+              label: 'scyName',
+              value: '企业名称'
+            },
+            {
+              label: 'scySocialCode',
+              value: '社会统一代码'
+            },
+            {
+              label: 'scyLegal',
+              value: '联系人'
+            },
+            {
+              label: 'scyPhone',
+              value: '联系电话'
+            },
+            {
+              label: 'scyStatus',
+              value: '状态'
+            },
+            ],
+      checkList: [],//筛选列选中的数据列表--显示隐藏列用
+      uncheckList: {},//控制筛选列显示隐藏--显示隐藏列用
+      selfDom : this,
+      tableId:"/sc-service/company/list",
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        scyName: [
+          { required: true, message: "公司名称不能为空", trigger: "blur" },
+        ],
+        scyLegal: [
+          { required: true, message: "联系人不能为空", trigger: "blur" },
+        ],
+        scyPhone: [
+          { required: true, message: "联系人手机号不能为空", trigger: "blur" },
+          {
+            pattern: /^((\d{3}-\d{7,8}|\d{4}-\d{7,8})|(1[3465789]\d{9}))$/,
+            message: "手机号格式不正确",
+            trigger: "blur",
+          }
+        ],
+        scySocialCode: [
+          { required: true, message: "企业统一代码不能为空", trigger: "blur" },
+          {
+            pattern: /[0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}/,
+            message: "企业统一代码格式不正确",
+            trigger: "blur"
+          }
+        ],
+      },
+    };
+  },
+  created() {
+    this.getList();
+    this.getDicts("ser_scy_status").then(response => {
+      this.scyStatusOptions = response.data;
+    });
+  },
+  mounted() {
+    this.columnQuery();
+  },
+  methods: {
+    //获取当前客户是否之前设置过列展示隐藏
+    columnQuery(){
+        //获取页面路径
+        var psfPagePath = window.location.pathname;
+        //用请求后台的url作为唯一标识
+        var psfTableName = this.tableId;
+        var columnForm = {};
+        columnForm.psfPagePath = psfPagePath;
+        columnForm.psfTableName = psfTableName;
+        columnQuery(columnForm).then(response => {
+         if(response.data && response.data.psfShowData){
+                this.checkList = response.data.psfShowData;
+         }
+         this.filter();
+      })
+    },
+    //控制隐藏显示的函数
+    filter(checkList) {
+      if (!!checkList) {
+        this.checkList = checkList;
+      }
+      columnfilter(this.selfDom);
+    },
+    /** 查询公司列表 */
+    getList() {
+      this.loading = true;
+       listCompany(this.queryParams).then(response => {
+          this.companyList = response.data.records;
+          this.total = response.data.total;
+          this.loading = false;
+        }
+      );
+    },
+
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.openDetail = false,
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        scyName: null,
+        scySocialCode: null,
+        scyLegal : null,
+        scyPhone : null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.scyId)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "新增企业信息";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      let scyId = row.scyId || this.ids
+      companyQuery(scyId).then(response => {
+        this.form = response.data[0];
+        this.open = true;
+        this.title = "修改企业信息";
+      });
+    },
+
+    /* 企业详情 */
+    handleDetail(row) {
+      this.reset();
+      let scyId = row.scyId || this.ids;
+      let scyAuthStatus = row.scyAuthStatus || this.ids;
+      let scyStatus = row.scyStatus || this.ids;
+      if(scyStatus == '00'){
+      Cookies.set("/company/detailComPany/" + scyId + '/', this.$route.fullPath)
+      this.$router.push("/company/detailComPany/" + scyId + '/');
+      }else
+      if(scyAuthStatus == '00'){
+      companyQuery(scyId).then(response => {
+        this.form = response.data[0];
+        this.openDetail = true;
+        this.title = "详情企业信息";
+      });
+      }
+    },
+
+    /** 提交按钮 */
+    submitForm() {
+        var self = this;
+        this.$refs["form"].validate(valid => {
+          let fd = new FormData();
+          for(var key in self.form){
+            fd.append(key, self.form[key]);
+          }
+          if (valid) {
+            if (this.form.scyId != null) {
+              const loading = this.$loading({
+                lock: true,
+                text: "Loading",
+                spinner: "el-icon-loading",
+                background: "rgba(0, 0, 0, 0.7)",
+              })
+              updateCompany(self.form).then(response => {
+                this.msgSuccess("修改成功");
+                this.open = false;
+                this.getList();
+              });
+              loading.close();
+            } else {
+              const loading = this.$loading({
+                lock: true,
+                text: "Loading",
+                spinner: "el-icon-loading",
+                background: "rgba(0, 0, 0, 0.7)",
+              })
+              addCompany(self.form).then(response => {
+                this.msgSuccess("新增成功");
+                this.open = false;
+                this.getList();
+              });
+              loading.close();
+            }
+          }
+        });
+    },
+
+    /* 冻结 */
+    handleCompanyFrozen(row) {
+      const scyId = row.scyId || this.ids;
+      const scyName = row.scyName;
+      const state = '01';
+      this.$confirm('是否确认冻结公司名称为"' + scyName + '"的数据?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return updateCompanyStatus(scyId,state);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("冻结成功");
+        })
+        .catch(() => {
+          this.$message({
+            type: "warning",
+            message: "已取消冻结",
+           
+          });
+        }); 
+    },
+
+    /* 解冻 */
+    handleCompanyStatus(row) {
+      const scyId = row.scyId || this.ids;
+      const scyName = row.scyName;
+      const state = '00';
+      this.$confirm('是否确认冻结公司名称为"' + scyName + '"的数据?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return updateCompanyStatus(scyId,state);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("解冻成功");
+        })
+        .catch(() => {
+          this.$message({
+            type: "warning",
+            message: "已取消冻结",
+           
+          });
+        }); 
+    },
+
+    //四要素审核
+    handleExamine(row){
+      this.examForm.scyId = row.scyId || this.ids;
+      this.examForm.state = "03";
+      this.examTitle = "四要素审核";
+      this.examOpen = true;
+    },
+    examCancel(){
+      this.examForm.scyId = null;
+      this.examForm.state = "03";
+      this.examOpen = false;
+    },
+    examSubmit(){
+      console.log(this.examForm)
+      debugger
+      var self = this;
+        this.$refs["examForm"].validate(valid => {
+          let fd = new FormData();
+          for(var key in self.examForm){
+            fd.append(key, self.examForm[key]);
+          }
+          if (valid) {
+            if (this.examForm.scyId != null) {
+              const loading = this.$loading({
+                lock: true,
+                text: "Loading",
+                spinner: "el-icon-loading",
+                background: "rgba(0, 0, 0, 0.7)",
+              })
+              getElementStatus(self.examForm).then(response => {
+                this.msgSuccess("审核成功");
+                this.examCancel();
+                this.getList();
+              });
+              loading.close();
+            }
+          }
+        })
+    },
+
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const scyId = row.scyId || this.ids;
+      const scyName = row.scyName;
+      this.$confirm('是否确认删除公司名称为"' + scyName + '"的数据?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return removeCompany(scyId);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+        .catch(() => {
+          this.$message({
+            type: "warning",
+            message: "已取消删除",
+           
+          });
+        }); 
+    },
+
+    scyStatusFormat(row, column) {
+      if(row.scyStatus == '02' || row.scyStatus == '03' || row.scyStatus == '04'){
+      return this.selectDictLabel(this.scyStatusOptions, "02");
+      }else {
+        return this.selectDictLabel(this.scyStatusOptions, row.scyStatus);
+      }
+    },
+
+  }
+};
+</script>

+ 794 - 0
front-vue/src/views/service/company/detailComPany.vue

@@ -0,0 +1,794 @@
+<template>
+    <el-tabs v-model="activeName" style="margin:2px">
+<!--——————————————————————————————————————————基本信息————————————————————————————————————————————————————-->
+        <el-tab-pane label="基本信息" name="first">
+            <el-form ref="form" :model="form" label-width="130px" :inline="true">
+                <el-form-item label="所属行业" prop="scyIndustry">
+                    <el-input v-model="form.scyIndustry" placeholder="请输入所属行业" maxlength="20" show-word-limit />
+                </el-form-item>
+                <el-form-item label="企业规模" prop="scyScale">
+                    <el-select v-model="form.scyScale"
+                        placeholder="企业规模"
+                        clearable
+                        size="small"
+                        >
+                            <el-option
+                            v-for="dict in scyScaleOptions"
+                            :key="dict.dictValue"
+                            :label="dict.dictLabel"
+                            :value="dict.dictValue"
+                            ></el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="机构性质" prop="scyOrganization">
+                    <el-select v-model="form.scyOrganization"
+                        placeholder="机构性质"
+                        clearable
+                        size="small"
+                        >
+                            <el-option
+                            v-for="dict in scyOrganizationOptions"
+                            :key="dict.dictValue"
+                            :label="dict.dictLabel"
+                            :value="dict.dictValue"
+                            ></el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="企业类型" prop="scyType">
+                    <el-input :value=scyTypeFormat(form.scyType) disabled></el-input>
+                </el-form-item>
+                <el-form-item label="客户经理" prop="scyManager">
+                <el-input v-model="form.scyManager" placeholder="请输入客户经理" maxlength="20" show-word-limit />
+                </el-form-item>
+                <el-form-item label="机构名称" prop="scyName">
+                <el-input v-model="form.scyName" disabled />
+                </el-form-item>
+                <el-form-item label="机构代码" prop="scySocialCode">
+                <el-input v-model="form.scySocialCode" disabled />
+                </el-form-item>
+                <el-form-item label="证件注册日" prop="scyStartTime">
+                <el-input v-model="form.scyStartTime" disabled />
+                </el-form-item>
+                <el-form-item label="注册地址" prop="scyAddress">
+                <el-input v-model="form.scyAddress" disabled />
+                </el-form-item>
+                <el-form-item label="证件到期日" prop="scyEndTime">
+                <el-input v-model="form.scyEndTime" disabled />
+                </el-form-item>
+                <el-form-item label="企业经营范围" prop="scyEndTime">
+                <el-input v-model="form.scyEndTime" disabled />
+                </el-form-item>
+                <el-form-item label="注册资本" prop="scyEndTime">
+                <el-input v-model="form.scyEndTime" disabled />
+                </el-form-item>
+                <el-form-item label="法人姓名" prop="scyLegal">
+                <el-input v-model="form.scyLegal" disabled />
+                </el-form-item>
+                <el-form-item label="证件类型" prop="scyLegal">
+                <el-input  value="身份证" disabled />
+                </el-form-item>
+                <el-form-item label="联系方式" prop="scyPhone">
+                <el-input v-model="form.scyPhone" disabled />
+                </el-form-item>
+                <el-form-item label="证件号码" prop="scyLegalId">
+                <el-input v-model="form.scyLegalId" disabled />
+                </el-form-item>
+                <el-button type="primary" @click="submitForm">确 定</el-button>
+                <el-button @click="cancel">取 消</el-button>
+            </el-form>
+        </el-tab-pane>
+<!--————————————————————————————————————联系人信息————————————————————————————————————————————————-->
+        <el-tab-pane label="联系人信息" name="second">
+            <div><span style="color:#409EFF">▋</span> 经办人信息</div>
+            <el-form ref="contactsForm" :model="contactsForm" label-width="130px" :inline="true">
+                <el-row>
+                    <el-col :span="8" style="margin-top:2%">
+                        姓名:
+                        <el-input v-model="contactsForm.nickName" disabled style=" width:50%"></el-input>
+                    </el-col>
+                    <el-col :span="8" style="margin-top:2%">
+                        移动电话:
+                        <el-input v-model="contactsForm.userName" disabled style="width:50%"></el-input>
+                    </el-col>
+                    <el-col :span="8" style="margin-top:2%">
+                        邮箱:
+                        <el-input v-model="contactsForm.email" disabled style=" width:50%"></el-input>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-tab-pane>
+<!--———————————————————————————————————— 发票信息 ————————————————————————————————————————————————-->
+        <el-tab-pane label="发票信息" name="third">
+            <div><span style="color:#409EFF">▋</span>开票信息</div>
+            <el-form ref="invoiceForm" :model="invoiceForm" label-width="130px" :inline="true">
+                <el-row>
+                    <el-col :span="2" style="margin-top:2%;line-height: 34px;    text-align: right;">
+                        单位名称:
+                    </el-col>
+                    <el-col :span="6" style="margin-top:2%;">
+                        <el-input v-model="invoiceForm.scyName" disabled style=" width:75%"></el-input>
+                    </el-col>
+                    <el-col :span="2" style="margin-top:2%;line-height: 34px;    text-align: right;">
+                        税号:
+                    </el-col>
+                    <el-col :span="6" style="margin-top:2%;">
+                        <el-input v-model="invoiceForm.scySocialCode" disabled style=" width:75%"></el-input>
+                    </el-col>
+                    <el-col :span="2" style="margin-top:2%;line-height: 34px;    text-align: right;">
+                        单位地址:
+                    </el-col>
+                    <el-col :span="6" style="margin-top:2%;">
+                        <el-input v-model="invoiceForm.ziaAddress" disabled style=" width:75%"></el-input>
+                    </el-col>
+                </el-row>
+                <el-row>
+                    <el-col :span="2" style="margin-top:2%;line-height: 34px;    text-align: right;">
+                        电话号码:
+                    </el-col>
+                    <el-col :span="6" style="margin-top:2%;">
+                        <el-input v-model="invoiceForm.ziaContactsPhone" disabled style=" width:75%"></el-input>
+                    </el-col>
+                    <el-col :span="2" style="margin-top:2%;line-height: 34px;    text-align: right;">
+                        开户银行:
+                    </el-col>
+                    <el-col :span="6" style="margin-top:2%;">
+                        <el-input v-model="invoiceForm.pbaiBankName" disabled style=" width:75%"></el-input>
+                    </el-col>
+                    <el-col :span="2" style="margin-top:2%;line-height: 34px;    text-align: right;">
+                        开户账号:
+                    </el-col>
+                    <el-col :span="6" style="margin-top:2%;">
+                        <el-input v-model="invoiceForm.pbaiBankaccountId" disabled style=" width:75%"></el-input>
+                    </el-col>
+                </el-row>
+            </el-form>
+        </el-tab-pane>
+<!--———————————————————————————————————— 链属关系 ————————————————————————————————————————————————-->
+        <el-tab-pane label="链属关系" name="Section">
+            <span style="margin-bottom: 10px;color:#333333;font:14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial,sans-serif">所选条件:</span>
+         <div  style="float: right;margin-right:1%">
+            <el-button type="cyan"  icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"  style="float: ;">重置</el-button>
+         </div>
+         <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="150px">
+            <el-form-item label="企业名称" prop="companyName">
+                <el-input
+                maxlength="30"
+                v-model="queryParams.companyName"
+                placeholder="请输入企业名称"
+                clearable
+                size="small"
+                @keyup.enter.native="handleQuery"
+                />
+            </el-form-item>
+            <el-form-item label="社会统一代码" prop="scySocialCode" >
+                <el-input
+                maxlength="30"
+                v-model="queryParams.scySocialCode"
+                placeholder="请输入社会统一代码"
+                clearable
+                size="small"
+                @keyup.enter.native="handleQuery"
+                />
+            </el-form-item>
+                <el-form-item label="链属状态" prop="scrStatus">
+                    <el-select v-model="queryParams.scrStatus"
+                        placeholder="链属状态"
+                        clearable
+                        size="small"
+                        style="width: 215px">
+                            <el-option
+                            v-for="dict in scrStatusOptions"
+                            :key="dict.dictValue"
+                            :label="dict.dictLabel"
+                            :value="dict.dictValue"
+                            ></el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="企业类型" prop="scrType">
+                    <el-select v-model="queryParams.scrType"
+                        placeholder="企业类型"
+                        clearable
+                        size="small"
+                        style="width: 215px">
+                            <el-option
+                            v-for="dict in scrTypeOptions"
+                            :key="dict.dictValue"
+                            :label="dict.dictLabel"
+                            :value="dict.dictValue"
+                            ></el-option>
+                    </el-select>
+                </el-form-item>
+            </el-form>
+            <el-table v-loading="loading" :data="relList" stripe border>
+                <el-table-column label="序号" type="index" width="55" align="center" />
+                <el-table-column label="企业编号" align="center" prop="companyNumber" show-overflow-tooltip>
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.launch">{{scope.row.launchReceiveScrCompanyId}}</span>
+                        <span v-else>{{scope.row.launchCompanyId}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="社会统一代码" align="center" prop="companyCode" show-overflow-tooltip>
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.launch">{{scope.row.receiveScySocialCode}}</span>
+                        <span v-else>{{scope.row.launchScySocialCode}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="企业名称" align="center" prop="companyName" show-overflow-tooltip>
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.launch">{{scope.row.receiveScyName}}</span>
+                        <span v-else>{{scope.row.launchScyName}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="企业类型" align="center" prop="companyType" >
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.launch">{{companyTypeFormat(scope.row.launchScrReceiveType)}}</span>
+                        <span v-else>{{companyTypeFormat(scope.row.launchScrLaunchType)}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column label="联系人" align="center" prop="launchScrContarct" >
+                </el-table-column>
+                <el-table-column label="联系电话" align="center" prop="launchScrContarctPhone" >
+                </el-table-column>
+                <el-table-column label="邮箱" align="center" prop="launchScrContarctEmail" show-overflow-tooltip>
+                </el-table-column>
+                <el-table-column label="状态" align="center"  prop="launchScrStatus" :formatter="launchScrStatusFormat">
+                </el-table-column>
+            </el-table>
+                
+            <pagination
+            v-show="total > 0"
+            :total="total"
+            :page.sync="queryParams.pageNum"
+            :limit.sync="queryParams.pageSize"
+            @pagination="getRelList"
+            />
+        </el-tab-pane>
+<!--———————————————————————————————————— 附件信息 ————————————————————————————————————————————————-->
+        <el-tab-pane label="附件信息" name="eighth">
+                <el-row>
+                    <el-col :span="8" v-if="licenShow" style="margin-top:2%;line-height: 34px; text-align: right;">
+                        营业执照:
+                    </el-col>
+                        <el-upload
+                            v-if="licenShow"
+                            ref="licenImg"
+                            class="Img-demo"
+                            action=""
+                            multiple
+                            list-type="picture-card"
+                            :file-list="licenseFileList"
+                            :class="{ uoloadSty: showBtnImg, disUoloadSty: noBtnImg }"
+                            :auto-upload="false">
+                            <i slot="default" class="el-icon-plus" ></i>
+                            <div slot="file" slot-scope="{file}">
+                                <img
+                                class="el-upload-list__item-thumbnail"
+                                :src="file.url" alt=""
+                                >
+                                <span class="el-upload-list__item-actions">
+                                <span
+                                    class="el-upload-list__item-preview"
+                                    @click="handlePictureCardPreview(file)"
+                                >
+                                    <i class="el-icon-zoom-in"></i>
+                                </span>
+                                <span
+                                    class="el-upload-list__item-delete"
+                                    @click="handleImgDownload(file)"
+                                >
+                                    <i class="el-icon-download"></i>
+                                </span>
+                                </span>
+                            </div>
+                        </el-upload>
+                    <el-col :span="8" v-if="authorizationShow" style="margin-top:2%;line-height: 34px; text-align: right;">
+                        法人授权书:
+                    </el-col>
+                        <el-upload
+                            ref="upload"
+                            v-if="authorizationShow"
+                            class="upload-demo"
+                            action=""
+                            :on-preview="handleFilePreview"
+                            multiple
+                            :file-list="authorizationFileList"
+                            :auto-upload="false">
+                        </el-upload>
+                </el-row>
+                <el-row>
+                <el-row>
+                    <el-col :span="8" v-if="handlerPositiveShow || handlerNegativeShow" style="margin-top:2%;line-height: 34px; text-align: right;">
+                        经办人信息:
+                    </el-col>
+                        <el-upload
+                            v-if="handlerPositiveShow"
+                            ref="handlerPositiveImg"
+                            class="Img-demo"
+                            action=""
+                            multiple
+                            :class="{ uoloadSty: showBtnImg, disUoloadSty: noBtnImg }"
+                            list-type="picture-card"
+                            :file-list="handlerPositiveList"
+                            :auto-upload="false">
+                            <i slot="default" class="el-icon-plus" ></i>
+                            <div slot="file" slot-scope="{file}">
+                                <img
+                                class="el-upload-list__item-thumbnail"
+                                :src="file.url" alt=""
+                                >
+                                <span class="el-upload-list__item-actions">
+                                <span
+                                    class="el-upload-list__item-preview"
+                                    @click="handlePictureCardPreview(file)"
+                                >
+                                    <i class="el-icon-zoom-in"></i>
+                                </span>
+                                <span
+                                    class="el-upload-list__item-delete"
+                                    @click="handleImgDownload(file)"
+                                >
+                                    <i class="el-icon-download"></i>
+                                </span>
+                                </span>
+                            </div>
+                        </el-upload>
+                        <el-upload
+                            v-if="handlerNegativeShow"
+                            ref="handlerNegativeImg"
+                            class="Img-demo"
+                            action=""
+                            multiple
+                            :class="{ uoloadSty: showBtnImg, disUoloadSty: noBtnImg }"
+                            list-type="picture-card"
+                            :file-list="handlerNegativeList"
+                            :auto-upload="false">
+                            <i slot="default" class="el-icon-plus" ></i>
+                            <div slot="file" slot-scope="{file}">
+                                <img
+                                class="el-upload-list__item-thumbnail"
+                                :src="file.url" alt=""
+                                >
+                                <span class="el-upload-list__item-actions">
+                                <span
+                                    class="el-upload-list__item-preview"
+                                    @click="handlePictureCardPreview(file)"
+                                >
+                                    <i class="el-icon-zoom-in"></i>
+                                </span>
+                                <span
+                                    class="el-upload-list__item-delete"
+                                    @click="handleImgDownload(file)"
+                                >
+                                    <i class="el-icon-download"></i>
+                                </span>
+                                </span>
+                            </div>
+                        </el-upload>
+                </el-row>
+                    <el-col :span="8" v-if="legalShow || legalBackShow" style="margin-top:2%;line-height: 34px; text-align: right;">
+                        法人证件:
+                    </el-col>
+                        <el-upload
+                            ref="legalImg"
+                            v-if="legalShow"
+                            class="Img-demo"
+                            action=""
+                            multiple
+                            :class="{ uoloadSty: showBtnImg, disUoloadSty: noBtnImg }"
+                            list-type="picture-card"
+                            :file-list="legalFileList"
+                            :auto-upload="false">
+                            <i slot="default" class="el-icon-plus" ></i>
+                            <div slot="file" slot-scope="{file}">
+                                <img
+                                class="el-upload-list__item-thumbnail"
+                                :src="file.url" alt=""
+                                >
+                                <span class="el-upload-list__item-actions">
+                                <span
+                                    class="el-upload-list__item-preview"
+                                    @click="handlePictureCardPreview(file)"
+                                >
+                                    <i class="el-icon-zoom-in"></i>
+                                </span>
+                                <span
+                                    class="el-upload-list__item-delete"
+                                    @click="handleImgDownload(file)"
+                                >
+                                    <i class="el-icon-download"></i>
+                                </span>
+                                </span>
+                            </div>
+                        </el-upload>
+                        <el-upload
+                            ref="legalBackImg"
+                            v-if="legalBackShow"
+                            class="Img-demo"
+                            action=""
+                            multiple
+                            :class="{ uoloadSty: showBtnImg, disUoloadSty: noBtnImg }"
+                            list-type="picture-card"
+                            :file-list="legalBackFileList"
+                            :auto-upload="false">
+                            <i slot="default" class="el-icon-plus" ></i>
+                            <div slot="file" slot-scope="{file}">
+                                <img
+                                class="el-upload-list__item-thumbnail"
+                                :src="file.url" alt=""
+                                >
+                                <span class="el-upload-list__item-actions">
+                                <span
+                                    class="el-upload-list__item-preview"
+                                    @click="handlePictureCardPreview(file)"
+                                >
+                                    <i class="el-icon-zoom-in"></i>
+                                </span>
+                                <span
+                                    class="el-upload-list__item-delete"
+                                    @click="handleImgDownload(file)"
+                                >
+                                    <i class="el-icon-download"></i>
+                                </span>
+                                </span>
+                            </div>
+                        </el-upload>
+                    <el-col :span="8" v-if="commitmentShow" style="margin-top:2%;line-height: 34px; text-align: right;">
+                        数字证书授权与承诺书:
+                    </el-col>
+                        <el-upload
+                            v-if="commitmentShow"
+                            ref="upload"
+                            class="upload-demo"
+                            action=""
+                            :on-preview="handleFilePreview"
+                            multiple
+                            :file-list="commitmentFileList"
+                            :auto-upload="false">
+                        </el-upload>
+                </el-row>
+        </el-tab-pane>
+        <el-dialog :visible.sync="dialogVisible">
+            <img width="100%" :src="dialogImageUrl" alt="">
+        </el-dialog>
+    </el-tabs>
+</template>
+<script>
+import { companyQuery, updateCompanyInfor } from "@/api/service/company/company";
+import { listRel } from "@/api/service/rel/companyRel";
+import { getToken } from "@/utils/auth";
+export default {
+  name: 'detailComPany',
+  components: {},
+    data() {
+        return {
+            dialogImageUrl: '',
+            dialogVisible: false,
+            // 遮罩层
+            loading: true,
+            form:{
+                scyType : null,
+            },
+            noBtnImg:true,
+            licenShow:false,
+            showBtnImg:false,
+            authorizationShow:false,
+            commitmentShow:false,
+            legalShow:false,
+            legalBackShow:false,
+            appendixShow:false,
+            handlerNegativeShow:false,
+            handlerPositiveShow:false,
+            queryParams:{
+                pageNum: 1,
+                pageSize: 10,
+                scyId : null,
+                companyName: null,
+                scySocialCode: null,
+                scrStatus: null,
+                scrType: null
+            },
+            total:0,
+            licenseFileList:[],
+            legalFileList:[],
+            legalBackFileList:[],
+            authorizationFileList:[],
+            commitmentFileList:[],
+            handlerPositiveList:[],
+            handlerNegativeList:[],
+            relList:[],
+            scyScaleOptions: [],
+            scyOrganizationOptions : [],
+            scyTypeOptions : [],
+            scrStatusOptions:[],
+            scrTypeOptions:[],
+            contactsForm:{},
+            invoiceForm:{},
+            fileForm:{},
+            activeName : "first",
+        };
+    },
+created() {
+    const scyId = this.$route.params && this.$route.params.scyId;
+    this.getList();
+    this.getRelList();
+    this.getDicts("ser_scy_scale").then(response => {
+      this.scyScaleOptions = response.data;
+    });
+    this.getDicts("ser_scy_organization").then(response => {
+      this.scyOrganizationOptions = response.data;
+    });
+    this.getDicts("ser_scy_type").then(response => {
+      this.scyTypeOptions = response.data;
+    });
+    this.getDicts("sys_scr_type").then(response => {
+      this.scrTypeOptions = response.data;
+    });
+    this.getDicts("sys_scr_status").then(response => {
+      this.scrStatusOptions = response.data;
+    });
+},
+mounted() {
+
+},
+methods: {
+    /** 提交按钮 */
+    submitForm() {
+        var self = this;
+        this.$refs["form"].validate(valid => {
+          let fd = new FormData();
+          for(var key in self.form){
+            fd.append(key, self.form[key]);
+          }
+          if (valid) {
+            if (this.form.scyId != null) {
+              const loading = this.$loading({
+                lock: true,
+                text: "Loading",
+                spinner: "el-icon-loading",
+                background: "rgba(0, 0, 0, 0.9)",
+              })
+              updateCompanyInfor(self.form).then(response => {
+                this.msgSuccess("修改成功");
+                this.getList();
+                this.getRelList();
+              });
+              loading.close();
+            }
+          }
+        });
+    },
+    //取消按钮
+    cancel(){
+        this.form.scyIndustry = null,
+        this.form.scyScale = null,
+        this.form.scyOrganization = null,
+        this.form.scyManager = null
+    },
+    /* 下载 */
+    handleFilePreview(fileUrl){
+        this.$confirm('是否确认下载"' + fileUrl.name + '"附件?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+        if(fileUrl.name.substr(-3) == "pdf"){
+          if(fileUrl.url.indexOf("getPdf") != -1){
+            fileUrl.url = fileUrl.url.replace("getPdf","getBytes");
+          }
+          window.open(fileUrl.url+'/'+getToken());
+        }else{
+          var a = document.createElement('a');
+          var event = new MouseEvent('click');
+          a.download = fileUrl.name;
+          a.href = fileUrl.url+"/"+getToken();
+          a.dispatchEvent(event);
+        }
+        })
+    },
+    handlePictureCardPreview(file) {
+        this.dialogImageUrl = file.url+'/'+getToken();
+        this.dialogVisible = true;
+      },  
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getRelList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 菜单状态字典翻译
+    companyTypeFormat(companyType) {
+      return this.selectDictLabel(this.scrTypeOptions, companyType);
+    },
+    scyTypeFormat(scyType) {
+      return this.selectDictLabel(this.scyTypeOptions, scyType);
+    },
+    launchScrStatusFormat(row, column) {
+      return this.selectDictLabel(this.scrStatusOptions, row.launchScrStatus);
+    },
+
+    getList(){
+        this.loading = true;
+        const scyId = this.$route.params && this.$route.params.scyId;
+       companyQuery(scyId).then(response => {
+        //基本信息
+        if(response.data.basicList.length > 0){
+          this.form = response.data.basicList[0];
+        }
+        //经办人信息
+        if(response.data.contactsList){
+            if(response.data.contactsList.length > 0){
+            this.contactsForm = response.data.contactsList[0];
+            }
+        }
+        //发票信息
+        if(response.data.invoiceList.length > 0){
+            this.invoiceForm = response.data.invoiceList[0];
+        }
+        //营业执照信息
+        if(response.data.licenseList){
+            const licenseImg = response.data.licenseList[0].pfiUrl;
+            const licenseImgId = response.data.licenseList[0].pfiFileId;
+            if(licenseImg != '' && licenseImgId != ''){
+                this.licenShow = true;
+                let imgUrl =(licenseImg).split(",")
+                let imgUrlId =(licenseImgId).split(",")
+                for(let i = 0;i< imgUrl.length;i++){
+                this.licenseFileList.push({url: imgUrl[i] + '/' + getToken(), uid: imgUrlId[i] });
+                }
+            }else{
+                this.licenShow = false;
+            }
+        }
+        //法人正面信息
+        if(response.data.legalList){
+            const legalImg = response.data.legalList[0].pfiUrl;
+            const legalImgId = response.data.legalList[0].pfiFileId;
+            if(legalImg != '' && legalImgId != ''){
+                this.legalShow = true;
+                let imgUrl =(legalImg).split(",")
+                let imgUrlId =(legalImgId).split(",")
+                for(let i = 0;i< imgUrl.length;i++){
+                this.legalFileList.push({url: imgUrl[i] + '/' + getToken(), uid: imgUrlId[i] });
+                }
+            }else{
+                this.legalShow = false;
+            }
+        }
+        //法人反面信息
+        if(response.data.legalBackList){
+            const legalBackImg = response.data.legalBackList[0].pfiUrl;
+            const legalBackImgId = response.data.legalBackList[0].pfiFileId;
+            if(legalBackImg != '' && legalBackImgId != ''){
+                this.legalBackShow = true;
+                let imgUrl =(legalBackImg).split(",")
+                let imgUrlId =(legalBackImgId).split(",")
+                for(let i = 0;i< imgUrl.length;i++){
+                this.legalBackFileList.push({url: imgUrl[i] + '/' + getToken(), uid: imgUrlId[i] });
+                }
+            }else{
+                this.legalBackShow = false;
+            }
+        }
+        //经办人正面信息
+        if(response.data.handlerPositiveList){
+            const handlerPositiveImg = response.data.handlerPositiveList[0].pfiUrl;
+            const handlerPositiveImgId = response.data.handlerPositiveList[0].pfiFileId;
+            if(handlerPositiveImg != '' && handlerPositiveId != ''){
+                this.handlerPositiveShow = true;
+                let imgUrl =(handlerPositiveImg).split(",")
+                let imgUrlId =(handlerPositiveImgId).split(",")
+                for(let i = 0;i< imgUrl.length;i++){
+                this.handlerPositiveList.push({url: imgUrl[i] + '/' + getToken(), uid: imgUrlId[i] });
+                }
+            }else{
+                this.handlerPositiveShow = false;
+            }
+        }
+        ////经办人反面信息
+        if(response.data.handlerNegativeList){
+            const handlerNegativeImg = response.data.handlerNegativeList[0].pfiUrl;
+            const handlerNegativeImgId = response.data.handlerNegativeList[0].pfiFileId;
+            if(handlerNegativeImg != '' && handlerNegativeImgId != ''){
+                this.handlerNegativeShow = true;
+                let imgUrl =(handlerNegativeImg).split(",")
+                let imgUrlId =(handlerNegativeImgId).split(",")
+                for(let i = 0;i< imgUrl.length;i++){
+                this.handlerNegativeList.push({url: imgUrl[i] + '/' + getToken(), uid: imgUrlId[i] });
+                }
+            }else{
+                this.handlerNegativeShow = false;
+            }
+        }
+        //法人授权书信息
+        if(response.data.authorizationList){
+            const authorizationFileName = response.data.authorizationList[0].pfiFileName;
+            const authorizationFile = response.data.authorizationList[0].pfiUrl;
+            const authorizationFileId = response.data.authorizationList[0].pfiFileId;
+            if(authorizationFile != '' && authorizationFileId != ''){
+                this.authorizationShow = true;
+                let fileName = (authorizationFileName).split(",")
+                let fileUrl =(authorizationFile).split(",")
+                let fileUrlId =(authorizationFileId).split(",")
+                for(let i = 0;i< fileUrl.length;i++){
+                this.legalFileList.push({name:fileName[i], url: fileUrl[i] + '/' + getToken(), uid: fileUrlId[i] });
+                }
+            }else{
+                this.authorizationShow = false;
+            }
+        }
+        //数字证书授权与承诺书信息
+        if(response.data.commitmentList){
+            const commitmentFileName = response.data.commitmentList[0].pfiFileName;
+            const commitmentFile = response.data.commitmentList[0].pfiUrl;
+            const commitmentFileId = response.data.commitmentList[0].pfiFileId;
+            if(commitmentFile != '' && commitmentFileId != ''){
+                this.commitmentShow = true;
+                let fileName = (commitmentFileName).split(",")
+                let fileUrl =(commitmentFile).split(",")
+                let fileUrlId =(commitmentFileId).split(",")
+                for(let i = 0;i< fileUrl.length;i++){
+                this.legalFileList.push({name:pfiFileName[i], url: fileUrl[i] + '/' + getToken(), uid: fileUrlId[i] });
+                }
+            }else{
+                this.commitmentShow = false;
+            }
+        }
+        //其他附件
+        if(response.data.appendixList){
+            const appendixFileName = response.data.appendixList[0].pfiFileName;
+            const appendixFile = response.data.appendixList[0].pfiUrl;
+            const appendixFileId = response.data.appendixList[0].pfiFileId;
+            if(appendixFile != '' && appendixFileId != ''){
+                this.appendixShow = true;
+                let fileName = (appendixFileName).split(",")
+                let fileUrl =(appendixFile).split(",")
+                let fileUrlId =(appendixFileId).split(",")
+                for(let i = 0;i< fileUrl.length;i++){
+                this.legalFileList.push({name:pfiFileName[i], url: fileUrl[i] + '/' + getToken(), uid: fileUrlId[i] });
+                }
+            }else{
+                this.appendixShow = false;
+            }
+        }
+          this.loading = false;
+        }
+      );
+    },
+    getRelList(){
+        const scyId = this.$route.params && this.$route.params.scyId;
+        this.queryParams.scyId = scyId;
+        listRel(this.queryParams).then(response => {
+          let list = response.data.records;
+          this.loginId = response.msg;
+          for (let i = 0; i < list.length; i++) {
+              if (list[i].launchCompanyId == scyId) {
+                    list[i].receive = false;
+                    list[i].launch = true;
+              }else if(list[i].launchReceiveScrCompanyId == scyId){
+                    list[i].launch = false;
+                    list[i].receive = true;
+              }
+          }
+          this.relList = list;
+          this.total = response.data.total;
+    }
+        )},
+
+  }
+};
+</script>
+<style lang="scss">
+.uoloadSty .el-upload--picture-card {
+  width: 110px;
+  height: 110px;
+  line-height: 110px;
+}
+.disUoloadSty .el-upload--picture-card {
+  display: none;
+}
+</style>

+ 581 - 0
front-vue/src/views/service/company/supCompanyManage.vue

@@ -0,0 +1,581 @@
+<template>
+  <div class="app-container">
+      <el-card class="fiche">
+          <right-toolbar :showSearch.sync="showSearch" @queryTable="getList">收起</right-toolbar>
+          <span style="margin-bottom: 10px;color:#333333;font:14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial,sans-serif">所选条件:</span>
+         <div  style="float: right;margin-right:1%">
+            <el-button type="cyan"  icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"  style="float: ;">重置</el-button>
+              <column-setting :checkList="checkList" :tableList="tableList" :selfDom="selfDom" :tableId="tableId" style="margin-left:5px"></column-setting>
+         </div>
+         <hr  style="margin-top: 16px;">
+    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px">
+      <el-form-item label="企业名称" prop="scyName">
+        <el-input
+          maxlength="30"
+          v-model="queryParams.scyName"
+          placeholder="请输入公司名称"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="社会统一代码" prop="scySocialCode">
+        <el-input
+          v-model="queryParams.scySocialCode"
+          placeholder="请输入社会统一代码"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="联系人" prop="scyLegal">
+        <el-input
+          v-model="queryParams.scyLegal"
+          placeholder="请输入联系人"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="联系电话" prop="scyPhone">
+        <el-input
+          v-model="queryParams.scyPhone"
+          placeholder="请输入联系电话"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="企业状态" prop="scyStatus">
+        <el-select v-model="queryParams.scyStatus"
+            placeholder="企业状态"
+            clearable
+            size="small"
+            >
+                <el-option
+                  v-for="dict in scyStatusOptions"
+                  :key="dict.dictValue"
+                  :label="dict.dictLabel"
+                  :value="dict.dictValue"
+                ></el-option>
+        </el-select>
+      </el-form-item>
+    </el-form>
+    </el-card>
+
+    <el-table v-loading="loading" :data="companyList" @selection-change="handleSelectionChange" stripe border>
+      <el-table-column label="序号" type="index" width="55" align="center" />
+      <el-table-column label="企业编号" align="center" prop="scyId"/>
+      <el-table-column label="企业名称" align="center" prop="scyName" :show-overflow-tooltip="true" v-if="uncheckList.scyName"/>
+      <el-table-column label="社会统一代码" align="center" prop="scySocialCode" v-if="uncheckList.scySocialCode"/>
+      <el-table-column label="联系人" align="center" prop="scyLegal" v-if="uncheckList.scyLegal" />
+      <el-table-column label="联系电话" align="center" prop="scyPhone" v-if="uncheckList.scyPhone"/>
+      <el-table-column label="状态" align="center" prop="scyStatus" :formatter="scyStatusFormat" v-if="uncheckList.scyStatus"/>
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            v-if="scope.row.scyAuthStatus == '00' || scope.row.scyStatus == '00' || scope.row.scyStatus == '01'"
+            size="mini"
+            type="text"
+            @click="handleDetail(scope.row)"
+            v-hasPermi="['service:company:query']"
+          >详情</el-button>
+          <el-button
+            v-if="scope.row.scyStatus == '02'"
+            size="mini"
+            type="text"
+            @click="handleExamine(scope.row)"
+            v-hasPermi="['service:company:elementStatus']"
+          >四要素审核</el-button>
+          <el-button
+            v-if="scope.row.scyAuthStatus == '00'"
+            size="mini"
+            type="text"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['service:company:update']"
+          >修改</el-button>
+          <el-button
+            v-if="scope.row.scyStatus == '00'"
+            size="mini"
+            type="text"
+            @click="handleCompanyFrozen(scope.row)"
+            v-hasPermi="['service:company:updateCompanyStatus']"
+          >冻结</el-button>
+          <el-button
+            v-if="scope.row.scyStatus == '01'"
+            size="mini"
+            type="text"
+            @click="handleCompanyStatus(scope.row)"
+            v-hasPermi="['service:company:updateCompanyStatus']"
+          >解冻</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['system:company:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改公司对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="140px" :inline="true">
+        <el-form-item label="企业名称" prop="scyName">
+          <el-input v-model="form.scyName" placeholder="请输入企业名称" style="width:560px" maxlength="20" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="企业统一代码" prop="scySocialCode">
+          <el-input v-model="form.scySocialCode" placeholder="请输入企业统一代码" maxlength="18" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人" prop="scyLegal">
+          <el-input v-model="form.scyLegal" placeholder="请输入联系人" maxlength="5" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人手机号" prop="scyPhone">
+          <el-input v-model="form.scyPhone" placeholder="请输入联系人手机号" maxlength="11" show-word-limit/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+
+    <!-- 详情公司对话框 -->
+    <el-dialog :title="title" :visible.sync="openDetail" width="800px" append-to-body >
+      <el-form ref="form" :model="form" :rules="rules" label-width="140px" :inline="true">
+        <el-form-item label="企业名称" prop="scyName" >
+          <el-input v-model="form.scyName" placeholder="请输入企业名称" disabled style="width:560px" maxlength="20" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="企业统一代码" prop="scySocialCode">
+          <el-input v-model="form.scySocialCode" placeholder="请输入企业统一代码" disabled maxlength="18" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人" prop="scyLegal">
+          <el-input v-model="form.scyLegal" placeholder="请输入联系人" disabled maxlength="5" show-word-limit/>
+        </el-form-item>
+        <el-form-item label="联系人手机号" prop="scyPhone">
+          <el-input v-model="form.scyPhone" placeholder="请输入联系人手机号" disabled maxlength="11" show-word-limit/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+
+    <!-- 四要素审核 -->
+    <el-dialog :title="examTitle" :visible.sync="examOpen" width="400px" append-to-body >
+      <el-form ref="examForm" :model="examForm" :rules="examRules" label-width="140px" :inline="true">
+        <template>
+          <el-radio v-model="examForm.state" label="03">通过</el-radio>
+          <el-radio v-model="examForm.state" label="04">拒绝</el-radio>
+        </template>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="examSubmit">确 定</el-button>
+        <el-button @click="examCancel">取 消</el-button>
+      </div>
+    </el-dialog>
+
+  </div>
+</template>
+
+<script>
+import { listCompany, companyQuery, addCompany, updateCompany, updateCompanyStatus, getElementStatus, removeCompany } from "@/api/service/company/company";
+import { uploadFileNew } from "@/api/common/file";
+import { getToken } from "@/utils/auth";
+import {columnQuery,columnfilter} from "@/api/common/columnSetting";
+import ColumnSetting from '../../../components/Table/columnSetting.vue';
+import Cookies from 'js-cookie'
+export default {
+  name: "supCompanyManage",
+  components: {
+     ColumnSetting 
+   },
+  data() {
+    return {
+      //四要素审核相关
+      examTitle:'',
+      examOpen:false,
+      examForm:{
+        scyId:null,
+        state:null
+      },
+      examRules:{
+        state: [
+          { required: true, message: "审核状态不能为空", trigger: "blur" },
+        ]
+      },
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 公司表格数据
+      companyList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      openDetail : false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        scyName: null,
+        scySocialCode: null,
+        scyLegal : null,
+        scyPhone : null,
+        scyStatus : null,
+        scyType : '02'//供应商
+      },
+      //筛选按钮的数据列表,与table表头的数据一致 --显示隐藏列用
+      tableList: [
+            {
+              label: 'scyId',
+              value: '企业编号'
+            },
+            {
+              label: 'scyName',
+              value: '企业名称'
+            },
+            {
+              label: 'scySocialCode',
+              value: '社会统一代码'
+            },
+            {
+              label: 'scyLegal',
+              value: '联系人'
+            },
+            {
+              label: 'scyPhone',
+              value: '联系电话'
+            },
+            {
+              label: 'scyStatus',
+              value: '状态'
+            },
+            ],
+      checkList: [],//筛选列选中的数据列表--显示隐藏列用
+      uncheckList: {},//控制筛选列显示隐藏--显示隐藏列用
+      selfDom : this,
+      tableId:"/sc-service/company/list",
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        scyName: [
+          { required: true, message: "公司名称不能为空", trigger: "blur" },
+        ],
+        scyLegal: [
+          { required: true, message: "联系人不能为空", trigger: "blur" },
+        ],
+        scyPhone: [
+          { required: true, message: "联系人手机号不能为空", trigger: "blur" },
+          {
+            pattern: /^((\d{3}-\d{7,8}|\d{4}-\d{7,8})|(1[3465789]\d{9}))$/,
+            message: "手机号格式不正确",
+            trigger: "blur",
+          }
+        ],
+        scySocialCode: [
+          { required: true, message: "企业统一代码不能为空", trigger: "blur" },
+          {
+            pattern: /[0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}/,
+            message: "企业统一代码格式不正确",
+            trigger: "blur"
+          }
+        ],
+      },
+    };
+  },
+  created() {
+    this.getList();
+    this.getDicts("ser_scy_status").then(response => {
+      this.scyStatusOptions = response.data;
+    });
+  },
+  mounted() {
+    this.columnQuery();
+  },
+  methods: {
+    //获取当前客户是否之前设置过列展示隐藏
+    columnQuery(){
+        //获取页面路径
+        var psfPagePath = window.location.pathname;
+        //用请求后台的url作为唯一标识
+        var psfTableName = this.tableId;
+        var columnForm = {};
+        columnForm.psfPagePath = psfPagePath;
+        columnForm.psfTableName = psfTableName;
+        columnQuery(columnForm).then(response => {
+         if(response.data && response.data.psfShowData){
+                this.checkList = response.data.psfShowData;
+         }
+         this.filter();
+      })
+    },
+    //控制隐藏显示的函数
+    filter(checkList) {
+      if (!!checkList) {
+        this.checkList = checkList;
+      }
+      columnfilter(this.selfDom);
+    },
+    /** 查询公司列表 */
+    getList() {
+      this.loading = true;
+       listCompany(this.queryParams).then(response => {
+          this.companyList = response.data.records;
+          this.total = response.data.total;
+          this.loading = false;
+        }
+      );
+    },
+
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.openDetail = false,
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        scyName: null,
+        scySocialCode: null,
+        scyLegal : null,
+        scyPhone : null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.scyId)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "新增企业信息";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      let scyId = row.scyId || this.ids
+      companyQuery(scyId).then(response => {
+        this.form = response.data[0];
+        this.open = true;
+        this.title = "修改企业信息";
+      });
+    },
+
+    /* 企业详情 */
+    handleDetail(row) {
+      this.reset();
+      let scyId = row.scyId || this.ids;
+      let scyAuthStatus = row.scyAuthStatus || this.ids;
+      let scyStatus = row.scyStatus || this.ids;
+      if(scyStatus == '00'){
+      Cookies.set("/company/detailComPany/" + scyId + '/', this.$route.fullPath)
+      this.$router.push("/company/detailComPany/" + scyId + '/');
+      }else
+      if(scyAuthStatus == '00'){
+      companyQuery(scyId).then(response => {
+        this.form = response.data[0];
+        this.openDetail = true;
+        this.title = "详情企业信息";
+      });
+      }
+    },
+
+    /** 提交按钮 */
+    submitForm() {
+        var self = this;
+        this.$refs["form"].validate(valid => {
+          let fd = new FormData();
+          for(var key in self.form){
+            fd.append(key, self.form[key]);
+          }
+          if (valid) {
+            if (this.form.scyId != null) {
+              const loading = this.$loading({
+                lock: true,
+                text: "Loading",
+                spinner: "el-icon-loading",
+                background: "rgba(0, 0, 0, 0.7)",
+              })
+              updateCompany(self.form).then(response => {
+                this.msgSuccess("修改成功");
+                this.open = false;
+                this.getList();
+              });
+              loading.close();
+            } else {
+              const loading = this.$loading({
+                lock: true,
+                text: "Loading",
+                spinner: "el-icon-loading",
+                background: "rgba(0, 0, 0, 0.7)",
+              })
+              addCompany(self.form).then(response => {
+                this.msgSuccess("新增成功");
+                this.open = false;
+                this.getList();
+              });
+              loading.close();
+            }
+          }
+        });
+    },
+
+    /* 冻结 */
+    handleCompanyFrozen(row) {
+      const scyId = row.scyId || this.ids;
+      const scyName = row.scyName;
+      const state = '01';
+      this.$confirm('是否确认冻结公司名称为"' + scyName + '"的数据?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return updateCompanyStatus(scyId,state);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("冻结成功");
+        })
+        .catch(() => {
+          this.$message({
+            type: "warning",
+            message: "已取消冻结",
+           
+          });
+        }); 
+    },
+
+    /* 解冻 */
+    handleCompanyStatus(row) {
+      const scyId = row.scyId || this.ids;
+      const scyName = row.scyName;
+      const state = '00';
+      this.$confirm('是否确认冻结公司名称为"' + scyName + '"的数据?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return updateCompanyStatus(scyId,state);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("解冻成功");
+        })
+        .catch(() => {
+          this.$message({
+            type: "warning",
+            message: "已取消冻结",
+           
+          });
+        }); 
+    },
+
+    //四要素审核
+    handleExamine(row){
+      this.examForm.scyId = row.scyId || this.ids;
+      this.examForm.state = "03";
+      this.examTitle = "四要素审核";
+      this.examOpen = true;
+    },
+    examCancel(){
+      this.examForm.scyId = null;
+      this.examForm.state = "03";
+      this.examOpen = false;
+    },
+    examSubmit(){
+      console.log(this.examForm)
+      debugger
+      var self = this;
+        this.$refs["examForm"].validate(valid => {
+          let fd = new FormData();
+          for(var key in self.examForm){
+            fd.append(key, self.examForm[key]);
+          }
+          if (valid) {
+            if (this.examForm.scyId != null) {
+              const loading = this.$loading({
+                lock: true,
+                text: "Loading",
+                spinner: "el-icon-loading",
+                background: "rgba(0, 0, 0, 0.7)",
+              })
+              getElementStatus(self.examForm).then(response => {
+                this.msgSuccess("审核成功");
+                this.examCancel();
+                this.getList();
+              });
+              loading.close();
+            }
+          }
+        })
+    },
+
+
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const scyId = row.scyId || this.ids;
+      const scyName = row.scyName;
+      this.$confirm('是否确认删除公司名称为"' + scyName + '"的数据?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return removeCompany(scyId);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+        .catch(() => {
+          this.$message({
+            type: "warning",
+            message: "已取消删除",
+           
+          });
+        }); 
+    },
+
+    scyStatusFormat(row, column) {
+      if(row.scyStatus == '02' || row.scyStatus == '03' || row.scyStatus == '04'){
+      return this.selectDictLabel(this.scyStatusOptions, "02");
+      }else {
+        return this.selectDictLabel(this.scyStatusOptions, row.scyStatus);
+      }
+    },
+
+  }
+};
+</script>

Різницю між файлами не показано, бо вона завелика
+ 1086 - 0
front-vue/src/views/service/rel/companyRel.vue


+ 0 - 466
front-vue/src/views/system/company/chaingenus.vue

@@ -1,466 +0,0 @@
-<template>
-    <el-tabs v-model="activeName" @tab-click="handleClick" style="margin:2px">
-        <el-tab-pane label="基本信息" name="first">
-            <el-row>
-                <el-col :span="8"> <span>企业角色:</span>
-                    <el-select v-model="value" placeholder="请选择">
-                        <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
-                        </el-option>
-                    </el-select>
-                </el-col>
-                <el-col :span="8">
-                    <span>所属行业:</span>
-                    <el-select v-model="value" placeholder="请选择">
-                        <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
-                        </el-option>
-                    </el-select>
-                </el-col>
-                <el-col :span="8">
-                    <span>企业规模:
-                    </span>
-                    <el-select v-model="value" placeholder="请选择">
-                        <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
-                        </el-option>
-                    </el-select>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-                    <span>机构性质:</span>
-                    <el-select v-model="value" placeholder="请选择">
-                        <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
-                        </el-option>
-                    </el-select>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    邀请企业:
-                    <el-input v-model="enterprises " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <span>客户经理:</span>
-                    <el-input v-model="manager " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-                    <span>机构名称:</span>
-                    <el-input v-model="organization  " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <span>机构代码:</span>
-                    <el-input v-model="enterprises " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <div class="block">
-                        <span class="demonstration">证件注册日:</span>
-                        <el-date-picker v-model="value3" type="datetime" placeholder="选择日期时间" default-time="12:00:00">
-                        </el-date-picker>
-                    </div>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="16" style="margin-top:2%">
-                    <span class="demonstration">注册地址:</span>
-                    <el-input v-model="registered " placeholder="请输入内容" style="width:50%"></el-input>
-
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <div class="block">
-                        <span class="demonstration">证件到期日:</span>
-                        <el-date-picker v-model="value3" type="datetime" placeholder="选择日期时间" default-time="12:00:00">
-                        </el-date-picker>
-                    </div>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="16" style="margin-top:2%">
-                    <span class="demonstration">企业经营范围:</span>
-                    <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="textarea" style="width:50%">
-                    </el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <span class="demonstration" style="line-">注册资本:</span>
-                    <el-input v-model="registered " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-                    <span class="demonstration">法人姓名:</span>
-                    <el-input v-model="legal  " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <span class="demonstration">证件类型:</span>
-                    <el-input v-model="documentes " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <span class="demonstration">联系方式:</span>
-                    <el-input v-model="informat " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-                    <span class="demonstration">证件号码:</span>
-                    <el-input v-model="fication " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <div class="block">
-                        <span class="demonstration">证件注册日::</span>
-                        <el-date-picker v-model="value3" type="datetime" placeholder="选择日期时间" default-time="12:00:00">
-                        </el-date-picker>
-                    </div>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    <div class="block">
-                        <span class="demonstration">证件到期日:</span>
-                        <el-date-picker v-model="value2" type="datetime" placeholder="选择日期时间" default-time="12:00:00">
-                        </el-date-picker>
-                    </div>
-                </el-col>
-            </el-row>
-        </el-tab-pane>
-        <el-tab-pane label="联系人信息" name="second">
-            <div><span style="color:#409EFF">▋</span> 经办人信息</div>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-
-                    姓名:
-                    <el-input v-model="fullname" placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    移动电话:
-                    <el-input v-model="mobilephone " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    固定电话:
-                    <el-input v-model="fixedtelephone
-
- " placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-                    邮箱:
-                    <el-input v-model="mailbox " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <div><span style="color:#409EFF">▋</span> 复核人信息</div>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-
-                    姓名:
-                    <el-input v-model="fullnamel" placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    移动电话:
-                    <el-input v-model="mobilephonel " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    固定电话:
-                    <el-input v-model="fixedtelephonel" placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-                    邮箱:
-                    <el-input v-model="mailboxl " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-            </el-row>
-        </el-tab-pane>
-        <el-tab-pane label="发票信息" name="third">
-            <div><span style="color:#409EFF">▋</span> 复核人信息</div>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-
-                    单位名称:
-                    <el-input v-model="companynamel" placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    税号:
-                    <el-input v-model="paragraph " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    单位地址:
-                    <el-input v-model="unitaddress" placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-
-                    电话号码:
-                    <el-input v-model="phonenumbera
-
-" placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    开户银行:
-                    <el-input v-model="deposit " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    开户账号:
-                    <el-input v-model="account" placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-        </el-tab-pane>
-        <el-tab-pane label="地址信息" name="fourth">
-            <div><span style="color:#409EFF">▋</span> 地址信息</div>
-            <el-row>
-                <el-col :span="24">
-                    <span>
-                        企业邮寄地址:</span>
-                    <el-input v-model="address" placeholder="请输入内容" style="width:60%"></el-input>
-
-                </el-col>
-            </el-row>
-        </el-tab-pane>
-        <el-tab-pane label="实名信息" name="sixth">
-            <div><span style="color:#409EFF">▋</span> 企业四要素</div>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-
-                    机构名称:
-                    <el-input v-model="definition" placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    机构代码:
-                    <el-input v-model="orgcode " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">
-                    法人:
-                    <el-input v-model="Legall" placeholder="请输入内容" style="width:50%"></el-input>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="8" style="margin-top:2%">
-                    法人身份证:
-
-                    <el-input v-model="Corporatel  " placeholder="请输入内容" style=" width:50%"></el-input>
-                </el-col>
-                <el-col :span="8" style="margin-top:2%">验证结果:
-                    <el-checkbox v-model="checked">通过</el-checkbox>
-                </el-col>
-            </el-row>
-        </el-tab-pane>
-        <el-tab-pane label="链属关系" name="Section">
-           <div style="width: calc(100% - 2px);height:calc(100vh - 50px);">
-      <SeeksRelationGraph ref="seeksRelationGraph" :options="userGraphOptions" />
-    </div>
-        </el-tab-pane>
-        <el-tab-pane label="附件信息" name="eighth">
-            <el-container>
-                <el-aside width="200px">
-                    <div>
-                        营业执照:
-                    </div>
-                    <div>法人身份证:</div>
-                    <div>经办人证件:</div>
-                </el-aside>
-                <el-main>
-                    <div>法人授权书:</div><a href="#" style="color:red">菜鸟教程</a>
-                    <div>数字证书授权与承诺书:</div><a href="#" style="color:red">菜鸟教程</a>
-                    <div>合作协议:</div><a href="#" style="color:red">菜鸟教程</a>
-                    <div>CFCA企业认证证书:</div><a href="#" style="color:red">菜鸟教程</a>
-                    <div>CFCA电子签章样式:</div><a href="#" style="color:red">菜鸟教程</a>
-                </el-main>
-            </el-container>
-
-        </el-tab-pane>
-    </el-tabs>
-</template>
-<script>
-import SeeksRelationGraph from 'relation-graph'
-export default {
-  name: 'SeeksRelationGraphDemo',
-  components: { SeeksRelationGraph },
-    data() {
-        return {
-            g_loading: true,
-      userGraphOptions: {
-        'backgrounImage': '',
-        'backgrounImageNoRepeat': true,
-        'layouts': [
-          {
-            'label': '手工',
-            'layoutName': 'fixed',
-            'layoutClassName': 'seeks-layout-fixed',
-            'defaultJunctionPoint': 'border',
-            'defaultNodeShape': 0,
-            'defaultLineShape': 1
-          }
-        ],
-        'defaultNodeBorderWidth': 0,
-        'defaultNodeShape': 1,
-        'allowShowMiniNameFilter': false,
-        'allowShowMiniToolBar': false,
-        'defaultJunctionPoint': 'lr',
-        'defaultLineShape': 2
-      },
-            activeName: "first",
-            enterprises: "",
-            organization: "",
-            manager: "",
-            enterprises: "",
-            registered: "",
-            textarea: "",
-            legal: "",
-            ontact: "",
-            documentes: "",
-            informat: "",
-            fication: "",
-            fullname: "",
-            mobilephone: "",
-            fixedtelephone: "",
-            mailbox: "",
-            fullnamel: "",
-            mobilephonel: "",
-            fixedtelephonel: "",
-            mailboxl: "",
-            address: "",
-            companynamel: "",
-            paragraph: "",
-            unitaddress: "",
-            phonenumbera: "",
-            deposit: "",
-            account: "",
-            checked: true,
-            definition: "",
-            orgcode: "",
-            Legall: "",
-            Corporatel: "",
-            pickerOptions: {
-                shortcuts: [
-                    {
-                        text: "今天",
-                        onClick(picker) {
-                            picker.$emit("pick", new Date());
-                        },
-                    },
-                    {
-                        text: "昨天",
-                        onClick(picker) {
-                            const date = new Date();
-                            date.setTime(date.getTime() - 3600 * 1000 * 24);
-                            picker.$emit("pick", date);
-                        },
-                    },
-                    {
-                        text: "一周前",
-                        onClick(picker) {
-                            const date = new Date();
-                            date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
-                            picker.$emit("pick", date);
-                        },
-                    },
-                ],
-            },
-            value1: "",
-            value2: "",
-            value3: "",
-        };
-    },
-    created() {
-  },
-  mounted() {
-    this.setGraphData()
-  },
-    methods: {
-    setGraphData() {
-      var _orign_data = {
-        entname: '中数智汇数据科技股份有限公司',
-        invs: [
-          { id: 'inv1', text: '北京某个公司科技有限公司', desc: '40%' },
-          { id: 'inv2', text: '张蜈支', desc: '30%' },
-          { id: 'inv3', text: '如花', desc: '10%' },
-          { id: 'inv4', text: '路人甲', desc: '10%' },
-          { id: 'inv5', text: '路人乙', desc: '10%' }
-        ],
-        persons: [
-          { id: 'person1', text: '张蜈支', desc: '董事长' },
-          { id: 'person2', text: '包奥曼', desc: '总经理' },
-          { id: 'person3', text: '路人甲', desc: '监事' },
-          { id: 'person4', text: '路人乙', desc: '董事' }
-        ],
-        asInvs: [
-          { id: 'asinv1', text: '北京超级大橘科技有限公司', desc: '80%' },
-          { id: 'asinv2', text: '北京超级大蚂蚁科技有限公司', desc: '70%' },
-          { id: 'asinv3', text: '北京超级大米粒儿科技有限公司', desc: '20%' }
-        ],
-        branchs: [
-          { id: 'branch1', text: '某个公司(北京)科技股份有限公司', desc: '80%' },
-          { id: 'branch2', text: '某个公司(天津)科技股份有限公司', desc: '70%' },
-          { id: 'branch4', text: '某个公司(成都)科技股份有限公司', desc: '70%' },
-          { id: 'branch5', text: '某个公司(武汉)科技股份有限公司', desc: '20%' }
-        ]
-      }
-      var _graphSetting = this.$refs.seeksRelationGraph.graphSetting
-      this.$refs.seeksRelationGraph.graphSetting.defaultLineShape = 1
-      // 手工设置节点的坐标
-      const _center = {
-        x: (_graphSetting.viewSize.width) / 2 - _graphSetting.canvasOffset.x,
-        y: (_graphSetting.viewSize.height) / 2 - _graphSetting.canvasOffset.y
-      }
-      var graphData = {
-        rootId: 'root',
-        nodes: [],
-        links: []
-      }
-      // 添加根节点和虚拟节点
-      var rootNode = { id: graphData.rootId, name: _orign_data.entname, styleClass: 'c-g-center', color: '#A4C1FF', width: 250, height: 50, x: _center.x - 125, y: _center.y - 25 }
-      var invRootNode = { id: 'invRoot', name: '股东', styleClass: 'c-g-group-node', color: '#FFC5A6', width: 100, height: 50 }
-      var personRootNode = { id: 'personRoot', name: '高管', styleClass: 'c-g-group-node', color: '#B9FFA7', width: 100, height: 50 }
-      var asinvRootNode = { id: 'asinvRoot', name: '对外投资', styleClass: 'c-g-group-node', color: '#FFBEC1', width: 100, height: 50 }
-      var branchRootNode = { id: 'branchRoot', name: '分支机构', styleClass: 'c-g-group-node', color: '#FFA1F8', width: 100, height: 50 }
-      invRootNode.x = _center.x - 200 - invRootNode.width
-      invRootNode.y = _center.y - 130
-      personRootNode.x = _center.x - 200 - personRootNode.width
-      personRootNode.y = _center.y + 90
-      asinvRootNode.x = _center.x + 200
-      asinvRootNode.y = _center.y - 130
-      branchRootNode.x = _center.x + 200
-      branchRootNode.y = _center.y + 90
-      // 添加节点数据到graphData
-      graphData.nodes.push(rootNode)
-      graphData.nodes.push(invRootNode)
-      graphData.nodes.push(personRootNode)
-      graphData.nodes.push(asinvRootNode)
-      graphData.nodes.push(branchRootNode)
-      // 添加根节点和虚拟节点之间的关系,并将关系数据放入graphData
-      graphData.links.push({ from: rootNode.id, to: invRootNode.id, styleClass: 'c-g-l-group', color: '#C7E9FF', lineShape: 2 })
-      graphData.links.push({ from: rootNode.id, to: personRootNode.id, styleClass: 'c-g-l-group', color: '#C7E9FF', lineShape: 2 })
-      graphData.links.push({ from: rootNode.id, to: asinvRootNode.id, styleClass: 'c-g-l-group', color: '#C7E9FF', lineShape: 2 })
-      graphData.links.push({ from: rootNode.id, to: branchRootNode.id, styleClass: 'c-g-l-group', color: '#C7E9FF', lineShape: 2 })
-      // 将股东加入虚拟节点"股东"
-      _orign_data.invs.forEach((thisNode, _index) => {
-        thisNode.width = 200
-        thisNode.x = invRootNode.x - 300 - thisNode.width
-        thisNode.y = invRootNode.y + _index * 30 * -1 + 30
-        graphData.nodes.push(thisNode)
-        graphData.links.push({ from: invRootNode.id, to: thisNode.id, text: thisNode.desc, color: '#FFC5A6', arrow: 'none', lineShape: 4 })
-      })
-      // 将高管加入虚拟节点"高管"
-      _orign_data.persons.forEach((thisNode, _index) => {
-        thisNode.width = 200
-        thisNode.x = personRootNode.x - 200 - thisNode.width
-        thisNode.y = personRootNode.y + _index * 30
-        graphData.nodes.push(thisNode)
-        graphData.links.push({ from: personRootNode.id, to: thisNode.id, text: thisNode.desc, color: '#B9FFA7', arrow: 'none', lineShape: 4 })
-      })
-      // 将对外投资企业加入虚拟节点"对外投资"
-      _orign_data.asInvs.forEach((thisNode, _index) => {
-        thisNode.x = asinvRootNode.x + 200
-        thisNode.y = asinvRootNode.y + _index * 30 * -1 + 30
-        graphData.nodes.push(thisNode)
-        graphData.links.push({ from: asinvRootNode.id, to: thisNode.id, text: thisNode.desc, color: '#FFBEC1', lineShape: 4 })
-      })
-      // 将分支机构加入虚拟节点"分支机构东"
-      _orign_data.branchs.forEach((thisNode, _index) => {
-        thisNode.x = branchRootNode.x + 200
-        thisNode.y = branchRootNode.y + _index * 30
-        graphData.nodes.push(thisNode)
-        graphData.links.push({ from: branchRootNode.id, to: thisNode.id, text: thisNode.desc, color: '#FFA1F8', lineShape: 4 })
-      })
-      this.$refs.seeksRelationGraph.setJsonData(graphData, (seeksRGGraph) => {
-      })
-    }
-  }
-};
-</script>