sqg 4 лет назад
Родитель
Сommit
091038b1ee

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

@@ -16,6 +16,15 @@ export function companyQuery(scyId) {
     method: 'get'
   })
 }
+
+// 查询企业详情
+export function queryExam(scyId) {
+  return request({
+    url: '/sc-service/company/queryExam/' + scyId,
+    method: 'get'
+  })
+}
+
 // 修改企业详情信息
 export function updateCompanyInfor(data) {
   return request({

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

@@ -18,6 +18,15 @@ export function sparelist(query) {
   })
 }
 
+// 查询未认证列表(平台用)
+export function adminSpareList(query) {
+  return request({
+    url: '/sc-service/rel/adminSpareList',
+    method: 'get',
+    params: query
+  })
+}
+
 // 查询企业列表
 export function listCompany(query) {
   return request({

+ 19 - 0
front-vue/src/router/index.js

@@ -341,6 +341,12 @@ export const constantRoutes = [
         name: 'detailComPany',
         meta: { title: '企业详情',noCache: true }
       },
+      {
+        path: 'detailComPanyExam/:scyId',
+        component: (resolve) => require(['@/views/service/company/detailCompanyExam'], resolve),
+        name: 'detailComPanyExam',
+        meta: { title: '审核详情',noCache: true }
+      },
     ]
   },
   {
@@ -375,6 +381,19 @@ export const constantRoutes = [
       },
     ]
   },
+  {
+    path: '/rel',
+    component: Layout,
+    hidden: true,
+    children: [
+      {
+        path: 'detailComPany/:scyId',
+        component: (resolve) => require(['@/views/service/rel/detailCompany'], resolve),
+        name: 'detailComPany',
+        meta: { title: '企业详情',noCache: true }
+      },
+    ]
+  },
 ]
 
 export default new Router({

+ 11 - 52
front-vue/src/views/service/company/coreCompanyManage.vue

@@ -77,7 +77,6 @@
 
     <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" />
@@ -100,7 +99,7 @@
             v-hasPermi="['service:company:update']"
           >修改</el-button>
           <el-button
-            v-if="scope.row.scyStatus == '02'"
+            v-if="scope.row.scyAuthStatus == '00'"
             size="mini"
             type="text"
             @click="handleExamine(scope.row)"
@@ -121,6 +120,7 @@
             v-hasPermi="['service:company:updateCompanyStatus']"
           >解冻</el-button>
           <el-button
+            v-if="scope.row.scyStatus != '00'"
             size="mini"
             type="text"
             icon="el-icon-delete"
@@ -182,20 +182,6 @@
       </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>
 
@@ -323,6 +309,12 @@ export default {
       this.scyStatusOptions = response.data;
     });
   },
+  activated(){
+    this.getList();
+    this.getDicts("ser_scy_status").then(response => {
+      this.scyStatusOptions = response.data;
+    });
+  },
   mounted() {
     this.columnQuery();
   },
@@ -519,42 +511,9 @@ export default {
 
     //四要素审核
     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();
-            }
-          }
-        })
+      const scyId = row.scyId || this.ids;
+      Cookies.set("/company/detailComPanyExam/" + scyId + '/', this.$route.fullPath)
+      this.$router.push("/company/detailComPanyExam/" + scyId + '/');
     },
 
     /** 删除按钮操作 */

+ 2 - 2
front-vue/src/views/service/company/detailCompany.vue

@@ -152,12 +152,12 @@
             </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>
+                <!-- <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> -->
                 <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>

+ 737 - 0
front-vue/src/views/service/company/detailCompanyExam.vue

@@ -0,0 +1,737 @@
+<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" disabled />
+                </el-form-item>
+                <el-form-item label="企业规模" prop="scyScale">
+                    <el-input :value=scyScaleFormat(form.scyScale) disabled />
+                </el-form-item>
+                <el-form-item label="机构性质" prop="scyOrganization">
+                    <el-input :value=scyOrganizationFormat(form.scyOrganization) disabled />
+                </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" disabled />
+                </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-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="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" style="float:left;">
+                    <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-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>
+      <el-button type="primary" @click="handleExamine">四要素审核</el-button>
+    </el-tabs>
+</template>
+<script>
+import {
+    queryExam, getElementStatus
+} from "@/api/service/company/company";
+import { listRel } from "@/api/service/rel/companyRel";
+import { getToken } from "@/utils/auth";
+export default {
+    name: "detailComPanyExam",
+    components: {},
+    data() {
+        return {
+            examOpen:false,
+            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",
+            examForm : {
+                scyId:null,
+                state:null
+            },
+            examRules : {
+                state: [
+                { required: true, message: "审核状态不能为空", trigger: "blur" },
+                ]
+            },
+        };
+    },
+    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
+            );
+        },
+        scyScaleFormat(scyScale){
+            return this.selectDictLabel(this.scyScaleOptions, scyScale);
+        },
+        scyOrganizationFormat(scyOrganization){
+            return this.selectDictLabel(this.scyOrganizationOptions, scyOrganization);
+        },
+
+        getList() {
+            this.loading = true;
+            const scyId = this.$route.params && this.$route.params.scyId;
+            queryExam(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.authorizationFileList.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.commitmentFileList.push({
+                                name: fileName[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.appendixFileList.push({name:fileName[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) => {
+                debugger
+                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;
+            });
+        },
+
+        //四要素审核
+    handleExamine(row){
+        const scyId = this.$route.params && this.$route.params.scyId;
+        this.examForm.scyId = scyId;
+        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.getList();
+                this.examCancel();
+                this.$store.dispatch("tagsView/delView", this.$route);
+                this.$router.go(-1);
+              });
+              loading.close();
+            }
+          }
+        })
+    },
+    },
+};
+</script>
+<style lang="scss">
+.uoloadSty .el-upload--picture-card {
+    width: 110px;
+    height: 110px;
+    line-height: 110px;
+}
+.disUoloadSty .el-upload--picture-card {
+    display: none;
+}
+</style>

+ 12 - 40
front-vue/src/views/service/company/supCompanyManage.vue

@@ -8,7 +8,7 @@
             <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;">
+         <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
@@ -66,7 +66,6 @@
 
     <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" />
@@ -82,7 +81,7 @@
             v-hasPermi="['service:company:query']"
           >详情</el-button>
           <el-button
-            v-if="scope.row.scyStatus == '02'"
+            v-if="scope.row.scyAuthStatus == '00'"
             size="mini"
             type="text"
             @click="handleExamine(scope.row)"
@@ -110,6 +109,7 @@
             v-hasPermi="['service:company:updateCompanyStatus']"
           >解冻</el-button>
           <el-button
+            v-if="scope.row.scyStatus != '00'"
             size="mini"
             type="text"
             icon="el-icon-delete"
@@ -310,6 +310,12 @@ export default {
       this.scyStatusOptions = response.data;
     });
   },
+  activated(){
+    this.getList();
+    this.getDicts("ser_scy_status").then(response => {
+      this.scyStatusOptions = response.data;
+    });
+  },
   mounted() {
     this.columnQuery();
   },
@@ -506,45 +512,11 @@ export default {
 
     //四要素审核
     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();
-            }
-          }
-        })
+      const scyId = row.scyId || this.ids;
+      Cookies.set("/company/detailComPanyExam/" + scyId + '/', this.$route.fullPath)
+      this.$router.push("/company/detailComPanyExam/" + scyId + '/');
     },
 
-
     /** 删除按钮操作 */
     handleDelete(row) {
       const scyId = row.scyId || this.ids;

+ 25 - 59
front-vue/src/views/service/rel/companyRel.vue

@@ -87,12 +87,6 @@
 
     <el-table v-loading="loading" :data="companyRelList" stripe border>
       <el-table-column label="序号" type="index" width="55" align="center" />
-      <el-table-column label="企业编号" align="center" prop="companyNumber" v-if="uncheckList.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" v-if="uncheckList.companyCode" show-overflow-tooltip>
         <template slot-scope="scope">
             <span v-if="scope.row.launch">{{scope.row.receiveScySocialCode}}</span>
@@ -122,6 +116,12 @@
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="150">
         <template slot-scope="scope">
           <el-button
+            size="mini"
+            type="text"
+            @click="handleCompanyQuery(scope.row)"
+            v-hasPermi="['service:rel:query']"
+          >详情</el-button>
+          <el-button
             v-if="scope.row.launch && scope.row.launchScrReceiveType == '00' && scope.row.launchScrStatus =='01'"
             v-else="scope.row.launchScrLaunchType == '00' && scope.row.launchScrStatus =='01'"
             size="mini"
@@ -166,7 +166,6 @@
          <div  style="float: right;margin-right:1%">
             <el-button type="cyan"  icon="el-icon-search" size="mini" @click="handleSpareQuery">搜索</el-button>
             <el-button icon="el-icon-refresh" size="mini" @click="resetSpareQuery"  style="float: ;">重置</el-button>
-              <!-- <column-setting :checkList="checkList" :tableList="tableSpareList" :selfDom="selfDom" :tableId="spareTableId" style="margin-left:5px"></column-setting> -->
          </div>
          <hr  style="margin-top: 16px;">
     <el-form :model="spareParams" ref="querySpareForm" :inline="true" v-show="showSearch" label-width="100px">
@@ -247,13 +246,13 @@
             size="mini"
             type="text"
             @click="handleInvite(scope.row)"
-            v-hasPermi="['service:spare:update']"
+            v-hasPermi="['service:spare:invite']"
           >重邀</el-button>
           <el-button
             size="mini"
             type="text"
             @click="handleSpareDelete(scope.row)"
-            v-hasPermi="['service:spare:removeSpare']"
+            v-hasPermi="['service:rel:delete']"
           >解绑</el-button>
         </template>
       </el-table-column>
@@ -348,8 +347,7 @@
           <em>点击上传</em>
         </div>
         <div class="el-upload__tip" slot="tip">
-          <el-link type="info" style="font-size:12px" @click="importTemplate" v-if="userShow" >下载模板</el-link>
-          <el-link type="info" style="font-size:12px" @click="importAdminTemplate" v-if="adminShow" >下载模板</el-link>
+          <el-link type="info" style="font-size:12px" @click="importTemplate" >下载模板</el-link>
         </div>
         <div class="el-upload__tip" style="color:red" slot="tip">提示:仅允许导入“xls”或“xlsx”格式文件!</div>
       </el-upload>
@@ -358,43 +356,12 @@
         <el-button @click="upload.open = false">取 消</el-button>
       </div>
     </el-dialog>
-
-    <!-- 平台下载模板 -->
-    <el-dialog :title="templateTitle" :visible.sync="templateOpen" width="400px" append-to-body>
-      <el-form ref="templateForm" :model="templateForm" :rules="templateRules" label-width="100px" :inline="true">
-        <el-form-item label="企业名称" prop="scyId">
-            <el-select
-                v-model="templateForm.scyId"
-                filterable
-                remote
-                clearable
-                allow-create
-                reserve-keyword
-                @clear="clearBoth"
-                placeholder="请选择核心企业"
-                :remote-method="getCompanyIdList"
-                >
-                <el-option
-                    v-for="(item,index) in companyIdList"
-                    :key="index"
-                    :label="item.scyName"
-                    :value="item.scyId"
-                    >
-                </el-option>
-            </el-select>
-            </el-select>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitTemplateForm">确 定</el-button>
-        <el-button @click="cancelTemplateForm">取 消</el-button>
-      </div>
-    </el-dialog>
+    
   </el-tabs>
 </template>
 
 <script>
-import { 
+import {
   listRel, sparelist, listCompany, addRel, updateRel, listAllCompany, 
   delRel, removeSpare, listCompanyQuery, getUser, againInvite
 } from "@/api/service/rel/companyRel";
@@ -402,6 +369,7 @@ 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: "companyRel",
   components: {
@@ -420,8 +388,6 @@ export default {
       single: true,
       rel : true,
       spare : false,
-      userShow:false,
-      adminShow:false,
       // 非多个禁用
       multiple: true,
       // 显示搜索条件
@@ -490,10 +456,6 @@ export default {
       },
       //筛选按钮的数据列表,与table表头的数据一致 --显示隐藏列用
       tableList: [
-        {
-              label: 'companyNumber',
-              value: '企业编号'
-            },
             {
               label: 'companyCode',
               value: '社会统一代码'
@@ -744,7 +706,6 @@ export default {
         }
       );
     },
-
     //查询企业
     getCompanyIdList(query){
         this.loading = true;
@@ -868,6 +829,19 @@ export default {
       this.open = true;
       this.title = "新增链属";
     },
+    //查询企业详情
+    handleCompanyQuery(row){
+      this.reset();
+      if(row.receive == true){
+      const scyId = row.launchCompanyId;
+      Cookies.set("/rel/detailComPany/" + scyId + '/', this.$route.fullPath)
+      this.$router.push("/rel/detailComPany/" + scyId + '/');
+      }else if(row.launch == true){
+      const scyId = row.launchReceiveScrCompanyId;
+      Cookies.set("/rel/detailComPany/" + scyId + '/', this.$route.fullPath)
+      this.$router.push("/rel/detailComPany/" + scyId + '/');
+      }
+    },
       
     /** 提交按钮 */
 submitForm() {
@@ -1074,14 +1048,6 @@ submitForm() {
     getUser(){
       getUser().then(response => {
           this.userId = response.data;
-         if(this.userId == '1'){
-            this.adminShow = true;
-            this.userShow = false;
-          }
-          if(this.userId != '1'){
-            this.adminShow = false;
-            this.userShow  = true;
-          }
         })
     }
   }

+ 635 - 0
front-vue/src/views/service/rel/companyRelManage.vue

@@ -0,0 +1,635 @@
+<template>
+  <el-tabs type="border-card">
+    <el-tab-pane label="我的链属">
+      <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="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-card>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+            <el-button
+              type="warning"
+              icon="el-icon-upload2"
+              size="mini"
+              @click="handleImport"
+              style="background-color: #23C6C8;
+    border-color:#23C6C8"
+            >导入</el-button>
+      </el-col>
+    </el-row>
+
+    <el-table v-loading="loading" :data="companyRelList" stripe border>
+      <el-table-column label="序号" type="index" width="55" align="center" />
+      <el-table-column label="发起方" align="center" prop="launchScyName" v-if="uncheckList.launchScyName" show-overflow-tooltip>
+      </el-table-column>
+      <el-table-column label="链属关系(发起方)" align="center" prop="launchScrLaunchType" 
+          v-if="uncheckList.launchScrLaunchType" :formatter="launchScrLaunchTypeFormat" show-overflow-tooltip>
+      </el-table-column>
+      <el-table-column label="接收方" align="center" prop="receiveScyName" v-if="uncheckList.receiveScyName" show-overflow-tooltip>
+      </el-table-column>
+      <el-table-column label="链属关系(接收方)" align="center" prop="launchScrReceiveType" 
+          v-if="uncheckList.launchScrReceiveType" :formatter="launchScrReceiveTypeFormat" show-overflow-tooltip>
+      </el-table-column>
+      <el-table-column label="联系人" align="center" prop="launchScrContarct" v-if="uncheckList.launchScrContarct">
+      </el-table-column>
+      <el-table-column label="联系电话" align="center" prop="launchScrContarctPhone" v-if="uncheckList.launchScrContarctPhone">
+      </el-table-column>
+      <el-table-column label="邮箱" align="center" prop="launchScrContarctEmail" v-if="uncheckList.launchScrContarctEmail" show-overflow-tooltip>
+      </el-table-column>
+      <el-table-column label="状态" align="center"  prop="launchScrStatus" v-if="uncheckList.launchScrStatus" :formatter="launchScrStatusFormat">
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+  </el-tab-pane>
+
+<el-tab-pane label="链属未认证">
+    <!-- 未认证列表 -->
+    <el-card class="fiche">
+          <right-toolbar :showSearch.sync="showSearch" @queryTable="getSpare">收起</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="handleSpareQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetSpareQuery"  style="float: ;">重置</el-button>
+         </div>
+         <hr  style="margin-top: 16px;">
+    <el-form :model="spareParams" ref="querySpareForm" :inline="true" v-show="showSearch" label-width="100px">
+      <el-form-item label="企业名称" prop="companyName">
+        <el-input
+          maxlength="30"
+          v-model="spareParams.companyName"
+          placeholder="请输入企业名称"
+          clearable
+          size="small"
+          @keyup.enter.native="handleSpareQuery"
+        />
+      </el-form-item>
+      <el-form-item label="社会统一代码" prop="scySocialCode" >
+        <el-input
+          maxlength="30"
+          v-model="spareParams.scySocialCode"
+          placeholder="请输入社会统一代码"
+          clearable
+          size="small"
+          @keyup.enter.native="handleSpareQuery"
+        />
+      </el-form-item>
+        <el-form-item label="企业类型" prop="scrType">
+            <el-select v-model="spareParams.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-card>
+
+<el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+            <el-button
+              type="warning"
+              icon="el-icon-upload2"
+              size="mini"
+              @click="handleImport"
+              style="background-color: #23C6C8;
+    border-color:#23C6C8"
+            >导入</el-button>
+      </el-col>
+    </el-row>
+
+    <!-- 未认证企业信息列表 -->
+    <el-table v-loading="loading" :data="spareOwnlist" stripe border>
+      <el-table-column label="序号" type="index" width="55" align="center" />
+      <el-table-column label="企业名称" align="center"  prop="scpName" show-overflow-tooltip/>
+      <el-table-column label="社会统一代码" align="center"  prop="scpSocialCode" show-overflow-tooltip/>
+      <el-table-column label="企业类型" align="center"  prop="scpType" :formatter="scpTypeFormat" />
+      <el-table-column label="联系人" align="center"  prop="scpContarct" />
+      <el-table-column label="联系电话" align="center"  prop="scpContarctPhone" show-overflow-tooltip />
+      <el-table-column label="链属企业" align="center"  prop="scyName" show-overflow-tooltip/>
+      <el-table-column label="邮箱" align="center"  prop="scpContarctEmail" show-overflow-tooltip/>
+      <el-table-column label="状态" align="center" prop="scpStatus" :formatter="scpStatusFormat" />
+    </el-table>
+    <pagination
+      v-show="spareTitol > 0"
+      :total="spareTitol"
+      :page.sync="spareParams.pageNum"
+      :limit.sync="spareParams.pageSize"
+      @pagination="getSpare"
+    />
+  </el-tab-pane>
+
+    <!-- 导入窗口 -->
+    <el-dialog :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
+      <el-upload
+        ref="upload"
+        :limit="1"
+        accept=".xlsx, .xls"
+        :headers="upload.headers"
+        :action="upload.url + '?updateSupport=' + upload.updateSupport"
+        :disabled="upload.isUploading"
+        :on-progress="handleFileUploadProgress"
+        :on-success="handleFileSuccess"
+        :auto-upload="false"
+        drag
+      >
+        <i class="el-icon-upload"></i>
+        <div class="el-upload__text">
+          将文件拖到此处,或
+          <em>点击上传</em>
+        </div>
+        <div class="el-upload__tip" slot="tip">
+          <el-link type="info" style="font-size:12px" @click="importAdminTemplate" >下载模板</el-link>
+        </div>
+        <div class="el-upload__tip" style="color:red" slot="tip">提示:仅允许导入“xls”或“xlsx”格式文件!</div>
+      </el-upload>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFileForm">确 定</el-button>
+        <el-button @click="upload.open = false">取 消</el-button>
+      </div>
+    </el-dialog>
+
+    <!-- 平台下载模板 -->
+    <el-dialog :title="templateTitle" :visible.sync="templateOpen" width="400px" append-to-body>
+      <el-form ref="templateForm" :model="templateForm" :rules="templateRules" label-width="100px" :inline="true">
+        <el-form-item label="企业名称" prop="scyId">
+            <el-select
+                v-model="templateForm.scyId"
+                filterable
+                remote
+                clearable
+                allow-create
+                reserve-keyword
+                @clear="clearBoth"
+                placeholder="请选择核心企业"
+                :remote-method="getCompanyIdList"
+                >
+                <el-option
+                    v-for="(item,index) in companyIdList"
+                    :key="index"
+                    :label="item.scyName"
+                    :value="item.scyId"
+                    >
+                </el-option>
+            </el-select>
+            </el-select>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitTemplateForm">确 定</el-button>
+        <el-button @click="cancelTemplateForm">取 消</el-button>
+      </div>
+    </el-dialog>
+  </el-tabs>
+</template>
+
+<script>
+import { 
+  listRel, sparelist, listCompany, addRel, updateRel, listAllCompany, 
+  delRel, removeSpare, listCompanyQuery, getUser, againInvite, adminSpareList
+} from "@/api/service/rel/companyRel";
+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: "companyRelManage",
+  components: {
+     ColumnSetting 
+   },
+  data() {
+    return {
+      //操作员企业Id
+      loginId : '',
+      userId : "",
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      rel : true,
+      spare : false,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      spareTitol: 0,
+      // 公司数据
+      companyList: [],
+      companyIdList:[],
+      //链属表格数据
+      companyRelList: [],
+      //链属未认证列表数据
+      spareOwnlist : [],
+      // 状态数据字典
+      scrStatusOptions: [],
+      scrTypeOptions : [],
+      scpStatusOptions : [],
+      scpTypeOptions : [],
+      // 弹出层标题
+      title: "",
+      templateTitle:'',
+      // 是否显示弹出层
+      templateOpen : false,
+      // 导入参数
+      upload: {
+        // 是否显示弹出层(导入)
+        open: false,
+        // 弹出层标题(导入)
+        title: "",
+        // 是否禁用上传
+        isUploading: false,
+        // 是否更新已经存在的用户数据
+        updateSupport: 0,
+        // 设置上传的请求头部
+        headers: { Authorization: "Bearer " + getToken() },
+        // 上传的地址
+        url: process.env.VUE_APP_BASE_API + "/sc-service/relImport/importData",
+      },
+      // 链属查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        companyName: null,
+        scySocialCode: null,
+        scrStatus: null,
+        scrType: null
+      },
+      //未认证列表查询参数
+      spareParams:{
+        pageNum: 1,
+        pageSize: 10,
+        scySocialCode : null,
+        companyName : null,
+        scrType : null
+      },
+      //企业列表查询参数
+      companyQueryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        scyName: null
+      },
+      //筛选按钮的数据列表,与table表头的数据一致 --显示隐藏列用
+      tableList: [
+            {
+              label: 'launchScyName',
+              value: '发起方'
+            },
+            {
+              label: 'launchScrLaunchType',
+              value: '链属关系(发起方)'
+            },
+            {
+              label: 'receiveScyName',
+              value: '接收方'
+            },
+            {
+              label: 'launchScrReceiveType',
+              value: '链属关系(接收方)'
+            },
+            {
+              label: 'launchScrContarct',
+              value: '联系人'
+            },
+            {
+              label: 'launchScrContarctPhone',
+              value: '联系电话'
+            },
+            {
+              label: 'launchScrContarctEmail',
+              value: '邮箱'
+            },
+            {
+              label: 'launchScrStatus',
+              value: '状态'
+            },
+            ],
+      checkList: [],//筛选列选中的数据列表--显示隐藏列用
+      uncheckList: {},//控制筛选列显示隐藏--显示隐藏列用
+      selfDom : this,
+      tableId:"/sc-service/rel/list",
+      // 表单参数
+      form: {
+          scyId : null,
+          scrReceiveType : null,
+          scyName : null,
+          scySocialCode : null,
+          scrContarct : null,
+          scrContarctPhone : null,
+          scrContarctEmail : null
+      },
+      templateForm:{
+        scyId : null
+      },
+      companyId:null,
+      templateRules: {
+        scyId:[
+          { required: true, message: "核心企业不能为空", trigger: "blur" }
+        ]
+      },
+    };
+  },
+  created() {
+    this.getDicts("sys_scr_status").then(response => {
+      this.scrStatusOptions = response.data;
+    });
+    this.getDicts("sys_scr_type").then(response => {
+      this.scrTypeOptions = response.data;
+    });
+    this.getDicts("sys_scp_status").then(response => {
+      this.scpStatusOptions = response.data;
+    });
+    this.getDicts("sys_scp_type").then(response => {
+      this.scpTypeOptions = response.data;
+    });
+    this.getList();
+    this.getSpare();
+    this.getCompanyIdList();
+  },
+  activated() {
+    this.getDicts("sys_scr_status").then(response => {
+      this.scrStatusOptions = response.data;
+    });
+    this.getDicts("sys_scr_type").then(response => {
+      this.scrTypeOptions = response.data;
+    });
+    this.getDicts("sys_scp_status").then(response => {
+      this.scpStatusOptions = response.data;
+    });
+    this.getDicts("sys_scp_type").then(response => {
+      this.scpTypeOptions = response.data;
+    });
+    this.getList();
+    this.getSpare();
+    this.getCompanyIdList();
+  },
+  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);
+    },
+
+    // 菜单状态字典翻译
+    launchScrLaunchTypeFormat(row, column) {
+      return this.selectDictLabel(this.scrTypeOptions, row.launchScrLaunchType);
+    },
+    launchScrReceiveTypeFormat(row, column) {
+      return this.selectDictLabel(this.scrTypeOptions, row.launchScrReceiveType);
+    },
+    scpTypeFormat(row, column) {
+      return this.selectDictLabel(this.scpTypeOptions, row.scpType);
+    },
+    scpStatusFormat(row, column) {
+      return this.selectDictLabel(this.scpStatusOptions, row.scpStatus);
+    },
+    launchScrStatusFormat(row, column) {
+      return this.selectDictLabel(this.scrStatusOptions, row.launchScrStatus);
+    },
+    //查看企业详情
+    handleCompanyQuery(row){
+      this.reset();
+      if(row.launchScrLaunchType == "00"){
+        const scyId = row.launchCompanyId;
+        Cookies.set("/company/detailComPany/" + scyId + '/', this.$route.fullPath)
+        this.$router.push("/company/detailComPany/" + scyId + '/');
+      }else if(row.launchScrReceiveType == "00"){
+        const scyId = row.launchReceiveScrCompanyId;
+        Cookies.set("/company/detailComPany/" + scyId + '/', this.$route.fullPath)
+        this.$router.push("/company/detailComPany/" + scyId + '/');
+      }
+    },
+
+    //平台导出模板
+    submitTemplateForm(){
+      this.$refs["templateForm"].validate(valid => {
+        let fd = new FormData();
+          for(var key in self.form){
+            fd.append(key, self.form[key]);
+          }
+          if (valid) {
+            this.download('/sc-service/relImport/importTemplate', {
+              ...this.templateForm
+            }, `链属模板_${new Date().getTime()}.xls`)
+            this.cancelTemplateForm();
+          }
+      })
+    },
+    //取消导出模板选择企业
+    cancelTemplateForm(){
+      this.templateOpen = false;
+      this.templateForm = {};
+    },
+    /** 导入按钮操作 */
+    handleImport() {
+      this.upload.title = "链属导入";
+      this.upload.open = true;
+    },
+    /* 平台下载模板操作 */
+    importAdminTemplate(){
+      this.templateTitle = "核心企业";
+      this.templateOpen = true;
+    },
+    // 文件上传中处理
+    handleFileUploadProgress(event, file, fileList) {
+      this.upload.isUploading = true;
+    },
+    // 文件上传成功处理
+    handleFileSuccess(response, file, fileList) {
+      this.upload.open = false;
+      this.upload.isUploading = false;
+      this.$refs.upload.clearFiles();
+      this.$alert(response.msg, "导入结果", { dangerouslyUseHTMLString: true });
+      this.getList();
+      this.getSpare();
+    },
+    // 提交上传文件
+    submitFileForm() {
+      this.$refs.upload.submit();
+    },
+    /** 查询链属列表 */
+    getList() {
+      this.loading = true;
+       listRel(this.queryParams).then(response => {
+          let list = response.data.records;
+          this.companyRelList = list;
+          console.log(12312313123)
+          console.log(this.companyRelList)
+          this.total = response.data.total;
+          this.loading = false;
+        }
+      );
+    },
+
+    // 未认证列表
+    getSpare() {
+        this.loading = true;
+        adminSpareList(this.spareParams).then(response => {
+          this.spareOwnlist = response.data.records;
+          this.spareTitol = response.data.total;
+          this.loading = false;
+        }
+      );
+    },
+
+    //查询企业
+    getCompanyIdList(query){
+        this.loading = true;
+        this.companyQueryParams.scyType = '01';
+        this.companyQueryParams.scyName = query;
+        listCompany(this.companyQueryParams).then(response => {
+            if(response){
+                if(response.data){
+                    if(response.data.records.length > 0){
+                        this.companyIdList = response.data.records;
+                        this.loading = false;
+                    }
+                }
+            }
+        })
+    },
+
+    //清空企业
+    clearBoth(){
+        this.$set(this.templateForm, "scyId", '');
+        this.companyQueryParams.scyType = '01';
+        listCompany(this.companyQueryParams).then(response => {
+            this.companyIdList = response.data.records;
+        })
+    },
+
+    // 取消按钮
+    cancel() {
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        scyId: null,
+        scrLaunchType : null,
+        scyName: null,
+        scySocialCode: null,
+        scrContarct : null,
+        scrContarctPhone : null,
+        scrContarctEmail : null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 未认证搜索按钮操作 */
+    handleSpareQuery() {
+      this.spareParams.pageNum = 1;
+      this.getSpare();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    /** 未认证重置按钮操作 */
+    resetSpareQuery() {
+      this.resetForm("querySpareForm");
+      this.handleSpareQuery();
+    },
+
+  }
+};
+</script>

+ 664 - 0
front-vue/src/views/service/rel/detailCompany.vue

@@ -0,0 +1,664 @@
+<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" disabled />
+                </el-form-item>
+                <el-form-item label="企业规模" prop="scyScale">
+                    <el-input :value=scyScaleFormat(form.scyScale) disabled />
+                </el-form-item>
+                <el-form-item label="机构性质" prop="scyOrganization">
+                    <el-input :value=scyOrganizationFormat(form.scyOrganization) disabled />
+                </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" disabled />
+                </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-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="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" style="float:left;">
+                    <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,
+} 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
+            );
+        },
+        scyScaleFormat(scyScale){
+            return this.selectDictLabel(this.scyScaleOptions, scyScale);
+        },
+        scyOrganizationFormat(scyOrganization){
+            return this.selectDictLabel(this.scyOrganizationOptions, scyOrganization);
+        },
+
+        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.authorizationFileList.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.commitmentFileList.push({
+                                name: fileName[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.appendixFileList.push({name:fileName[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>