wangzhuo 1 рік тому
батько
коміт
34af0483f9

+ 50 - 0
src/api/iosBasicData/bcorps.js

@@ -0,0 +1,50 @@
+import request from '@/router/axios';
+
+export const getBcorpsList = (current, size, params) => {
+  return request({
+    url: '/api/blade-los/bcorps/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+export const getBcorpsDetail = (id) => {
+  return request({
+    url: '/api/blade-los/bcorps/detail',
+    method: 'get',
+    params: {
+      id
+    }
+  })
+}
+
+export const removeBcorps = (ids) => {
+  return request({
+    url: '/api/blade-los/bcorps/remove',
+    method: 'post',
+    params: {
+      ids,
+    }
+  })
+}
+
+export const addBcorps = (row) => {
+  return request({
+    url: '/api/blade-los/bcorps/submit',
+    method: 'post',
+    data: row
+  })
+}
+
+export const updateBcorps = (row) => {
+  return request({
+    url: '/api/blade-los/bcorps/submit',
+    method: 'post',
+    data: row
+  })
+}
+

+ 50 - 0
src/api/iosBasicData/bcorpsattn.js

@@ -0,0 +1,50 @@
+import request from '@/router/axios';
+
+export const getBcorpsattnList = (current, size, params) => {
+  return request({
+    url: '/api/blade-los/bcorpsattn/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size,
+    }
+  })
+}
+
+export const getBcorpsattnDetail = (id) => {
+  return request({
+    url: '/api/blade-los/bcorpsattn/detail',
+    method: 'get',
+    params: {
+      id
+    }
+  })
+}
+
+export const removevBcorpsattn = (ids) => {
+  return request({
+    url: '/api/blade-los/bcorpsattn/remove',
+    method: 'post',
+    params: {
+      ids,
+    }
+  })
+}
+
+export const addBcorpsattn = (row) => {
+  return request({
+    url: '/api/blade-los/bcorpsattn/submit',
+    method: 'post',
+    data: row
+  })
+}
+
+export const updateBcorpsattn = (row) => {
+  return request({
+    url: '/api/blade-los/bcorpsattn/submit',
+    method: 'post',
+    data: row
+  })
+}
+

+ 817 - 0
src/views/iosBasicData/bcorps/detailsPage.vue

@@ -0,0 +1,817 @@
+<template>
+  <basic-container>
+    <el-form ref="userDataForm" :rules="rules" :model="formData"  size="medium" label-width="100px">
+      <el-button
+          type="danger"
+          style="border: none;background: none;color: red"
+          icon="el-icon-arrow-left"
+          @click="backToList"
+          >返回列表
+        </el-button>
+      <el-button type="primary" @click="submitForm">保存</el-button>
+      <el-row style="display: flex; flex-direction: row; align-items: center;">
+        <div style="width: 8px; height: 20px; border-radius: 2px; background-color: #bd3124; margin-right: 6px;"></div>
+        <h4>客户资料(必填)</h4>
+      </el-row>
+      <el-row gutter="15">
+        <el-col :span="8">
+          <el-form-item label="客户分类" prop="corpType">
+            <el-select v-model="formData.corpType" placeholder="请选择客户分类" clearable :style="{width: '100%'}">
+              <el-option v-for="(item, index) in field102Options" :key="index" :label="item.label"
+                :value="item.value" :disabled="item.disabled"></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="客户编号" prop="code">
+            <!-- <el-select v-model="formData.code" placeholder="请选择客户编号" clearable :style="{width: '100%'}">
+              <el-option v-for="(item, index) in field103Options" :key="index" :label="item.label"
+                :value="item.value" :disabled="item.disabled"></el-option>
+            </el-select> -->
+            <el-input v-model="formData.code" placeholder="请选择客户编号" clearable :style="{width: '100%'}">
+            </el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="客户简称" prop="shortName">
+            <!-- <el-select v-model="formData.shortName" placeholder="请选择客户简称" clearable :style="{width: '100%'}">
+              <el-option v-for="(item, index) in field104Options" :key="index" :label="item.label"
+                :value="item.value" :disabled="item.disabled"></el-option>
+            </el-select> -->
+            <el-input v-model="formData.shortName" placeholder="请选择客户简称" clearable :style="{width: '100%'}">
+            </el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="16">
+          <el-form-item label="客户名称" prop="cnName">
+            <el-select v-model="formData.cnName" placeholder="请选择客户名称" clearable :style="{width: '100%'}">
+              <el-option v-for="(item, index) in field105Options" :key="index" :label="item.label"
+                :value="item.value" :disabled="item.disabled"></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="英文名称" prop="enName">
+            <el-input v-model="formData.enName" placeholder="请选择英文名称" clearable :style="{width: '100%'}">
+            </el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="16">
+          <el-form-item label="中文地址" prop="cnAddr">
+            <el-input v-model="formData.cnAddr" placeholder="请选择中文地址" clearable :style="{width: '100%'}">
+            </el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="英文地址" prop="enAddr">
+            <el-input v-model="formData.enAddr" placeholder="请选择英文地址" clearable :style="{width: '100%'}">
+            </el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row gutter="15">
+        <el-tabs v-model="activeName" type="card" @tab-click="handleClick">
+          <el-tab-pane label="客户详情" name="kgxq">
+            <el-col :span="8">
+              <el-form-item label="企业类型" prop="enterpriseType">
+                <el-input v-model="formData.enterpriseType" placeholder="请输入企业类型" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="客户来源" prop="sourceType">
+                <el-input v-model="formData.sourceType" placeholder="请输入客户来源" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="国家" prop="cntyCode">
+                <!-- <el-select filterable remote reserve-keyword :remote-method="remoteMethod" :loading="loading" v-model="formData.cntyCode" placeholder="请选择国家" clearable :style="{width: '100%'}">
+                  <el-option v-for="item in cntyOptions" :key="item.id" :label="item.cnName"
+                    :value="item.code" :disabled="item.status == 1"></el-option>
+                </el-select> -->
+                <search-query ref="SearchQuery"
+                          :datalist="cntyOptions"
+                          title="国家"
+                          :filterable="true"
+                          :clearable="true"
+                          :remote="true"
+                          :forParameter="{key:'id',label:'cnName',value:'code', disabled: 'status'}"
+                          :disabledStatus="1"
+                          @remoteMethod="bcountrysListfun" @corpChange="bcountrysChange" >
+                <bcountrys></bcountrys>
+            </search-query>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="优势航线" prop="advantageRoute">
+                <el-input v-model="formData.advantageRoute" placeholder="请输入优势航线" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="海关号" prop="customsCode">
+                <el-input v-model="formData.customsCode" placeholder="请输入海关号" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="状态" prop="status">
+                <el-select v-model="formData.status" placeholder="请输入状态" clearable :style="{width: '100%'}">
+                  <el-option v-for="(item, index) in statusOptions" :key="index" :label="item.label"
+                    :value="item.value" :disabled="item.disabled"></el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="负责人" prop="mgrName">
+                <el-input v-model="formData.mgrName" placeholder="请输入负责人" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="联系人电话" prop="tel">
+                <el-input v-model="formData.tel" placeholder="请输入联系人电话" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="传真" prop="fax">
+                <el-input v-model="formData.fax" placeholder="请输入传真" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="SCAC码" prop="scacCode">
+                <el-input v-model="formData.scacCode" placeholder="请输入SCAC码" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="维护人员" prop="maintenanceStaffId">
+                <el-input v-model="formData.maintenanceStaffId" placeholder="请输入维护人员" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="业务员" prop="salesId">
+                <el-input v-model="formData.salesId" placeholder="请输入业务员" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <!-- <el-col :span="8">
+              <el-form-item label="所属单位编号" prop="field125">
+                <el-input v-model="formData.field125" placeholder="请输入所属单位编号" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col> -->
+            <el-col :span="8">
+              <el-form-item label="所属单位名称" prop="corpName">
+                <el-input v-model="formData.corpName" placeholder="请输入名称" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="信用等级" prop="creditLevel">
+                <el-select v-model="formData.creditLevel" placeholder="请输入信用等级" clearable :style="{width: '100%'}">
+                  <el-option v-for="(item, index) in field127Options" :key="index" :label="item.label"
+                    :value="item.value" :disabled="item.disabled"></el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="PS规则" prop="psRate">
+                <el-input v-model="formData.psRate" placeholder="请输入PS规则" clearable :style="{width: '100%'}">
+                </el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="存在HP/S" prop="isPs">
+                <el-switch v-model="formData.isPs" :active-value="1" :inactive-value="0" active-text="开启" inactive-text="关闭"></el-switch>
+              </el-form-item>
+            </el-col>
+            <el-col :span="8">
+              <el-form-item label="允许负大于收" prop="psAllowLargeCredit">
+                <el-switch v-model="formData.psAllowLargeCredit" :active-value="1" :inactive-value="0" active-text="开启" inactive-text="关闭"></el-switch>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="详情信息" prop="details">
+                <el-input v-model="formData.details" type="textarea" placeholder="请输入详情信息"
+                  :autosize="{minRows: 4, maxRows: 4}" :style="{width: '100%'}"></el-input>
+              </el-form-item>
+            </el-col>
+          </el-tab-pane>
+          <el-tab-pane label="财务信息" name="cwxx">
+            <!-- <el-row style="display: flex; flex-direction: row; align-items: center;">
+              <div style="width: 8px; height: 20px; border-radius: 2px; background-color: #bd3124; margin-right: 6px;"></div>
+              <h4>人民币(RMB)</h4>
+            </el-row>
+            <el-row gutter="15">
+              <el-col :span="8">
+                <el-form-item label="账号名称" prop="field136">
+                  <el-input v-model="formData.field136" placeholder="请输入账号名称" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="开户银行" prop="field137">
+                  <el-input v-model="formData.field137" placeholder="请输入开户银行" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="银行账号" prop="field138">
+                  <el-input v-model="formData.field138" placeholder="请输入银行账号" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="CNAPS" prop="field139">
+                  <el-input v-model="formData.field139" placeholder="请输入CNAPS" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="银行地址" prop="field140">
+                  <el-input v-model="formData.field140" placeholder="请输入银行地址" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <el-row style="display: flex; flex-direction: row; align-items: center;">
+              <div style="width: 8px; height: 20px; border-radius: 2px; background-color: #bd3124; margin-right: 6px;"></div>
+              <h4>外币银行信息</h4>
+            </el-row>
+            <el-row gutter="15">
+              <el-col :span="8">
+                <el-form-item label="账号名称" prop="accountName">
+                  <el-input v-model="formData.accountName" placeholder="请输入账号名称" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="开户银行" prop="accountBank">
+                  <el-input v-model="formData.accountBank" placeholder="请输入开户银行" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="银行账号" prop="accountNo">
+                  <el-input v-model="formData.accountNo" placeholder="请输入银行账号" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="Swift Code" prop="swiftCode">
+                  <el-input v-model="formData.swiftCode" placeholder="请输入Swift Code" clearable
+                    :style="{width: '100%'}"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="银行地址" prop="address">
+                  <el-input v-model="formData.address" placeholder="请输入银行地址" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row> -->
+            <el-row style="display: flex; flex-direction: row; align-items: center;">
+              <div style="width: 8px; height: 20px; border-radius: 2px; background-color: #bd3124; margin-right: 6px;"></div>
+              <h4>授信信息</h4>
+              <el-form-item label="授信状态" prop="creditStatus">
+                <el-switch style="margin-bottom = 0" :active-value="1" :inactive-value="0" v-model="formData.creditStatus" active-text="开启" inactive-text="关闭"></el-switch>
+              </el-form-item>
+            </el-row>
+            <el-row gutter="15">
+              <el-col :span="8">
+                <el-form-item label="授信等级" prop="creditLevel">
+                  <el-input v-model="formData.creditLevel" placeholder="请输入授信等级" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="授信额度" prop="creditGrant">
+                  <el-input v-model="formData.creditGrant" placeholder="请输入授信额度" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="4">
+                <el-form-item label="授信天数" prop="creditDay">
+                  <el-input v-model="formData.creditDay" placeholder="请输入授信天数" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="4">
+                <el-form-item label="授信利率" prop="creditRate">
+                  <el-input v-model="formData.creditRate" placeholder="请输入授信利率" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row>
+            <!-- <el-row style="display: flex; flex-direction: row; align-items: center;">
+              <div style="width: 8px; height: 20px; border-radius: 2px; background-color: #bd3124; margin-right: 6px;"></div>
+              <h4>财务联系人</h4>
+            </el-row>
+            <el-row gutter="15">
+              <el-col :span="8">
+                <el-form-item label="联系人" prop="field155">
+                  <el-input v-model="formData.field155" placeholder="请输入联系人" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="联系电话" prop="field156">
+                  <el-input v-model="formData.field156" placeholder="请输入联系电话" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="部门职务" prop="field157">
+                  <el-input v-model="formData.field157" placeholder="请输入部门职务" clearable :style="{width: '100%'}">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+            </el-row> -->
+          </el-tab-pane>
+          <el-tab-pane label="客户联系人" name="khlxk">
+            <el-button type="primary" @click="corpsAttnAdd">新增</el-button>
+            <el-table :data="formData.corpsAttnList" :header-cell-style="{background:'#ecf5ff',color:'#232526',fontSize: '12px'}" stripe style="width: 100%">
+              <el-table-column prop="code" label="编号" width="180"/>
+              <el-table-column prop="cname" label="名称" width="180"/>
+              <el-table-column prop="attn" label="联系方式" width="180"/>
+              <el-table-column prop="tel" label="电话" width="180"/>
+              <el-table-column prop="position" label="岗位" width="180"/>
+              <el-table-column prop="addr" label="公司地址" width="180"/>
+              <el-table-column prop="userId" label="用户id" width="180"/>
+              <el-table-column prop="sex" label="性别" width="180"/>
+              <el-table-column prop="email" label="邮箱地址" width="180"/>
+              <el-table-column prop="status" label="状态" width="180">
+                <template slot="code" slot-scope="scope">
+                  <span v-if="scope.row.status == 0">正常</span>
+                  <span v-if="scope.row.status == 1">启用</span>
+                </template>
+              </el-table-column>
+              <el-table-column
+                fixed="right"
+                label="操作"
+                width="180">
+                <template slot-scope="scope">
+                  <el-button type="text" size="small" @click="corpsAttnHandle(scope)">编辑</el-button>
+                  <el-button type="text" size="small" @click="corpsAttnDelete(scope)">删除</el-button>
+                </template>
+              </el-table-column>
+            </el-table>
+          </el-tab-pane>
+          <el-tab-pane label="银行信息" name="yhxx">
+            <el-button type="primary" @click="corpsAttnAdd">新增</el-button>
+            <el-table :data="formData.corpsBankList" :header-cell-style="{background:'#ecf5ff',color:'#232526',fontSize: '12px'}" stripe style="width: 100%">
+              <el-table-column prop="uscc" label="统一社会信用代码" width="180"/>
+              <el-table-column prop="accountName" label="账号名称" width="180"/>
+              <el-table-column prop="accountBank" label="账号银行" width="180"/>
+              <el-table-column prop="curNo" label="币别" width="180"/>
+              <el-table-column prop="subjectNumber" label="科目编码" width="180"/>
+              <el-table-column prop="address" label="地址" width="180"/>
+              <el-table-column prop="swiftCode" label="Swift Code" width="180"/>
+              <el-table-column prop="cnapsCode" label="CNAPS" width="180"/>
+              <el-table-column prop="status" label="状态" width="180"/>
+              <el-table-column prop="remarks" label="备注" width="180"/>
+            </el-table>
+          </el-tab-pane>
+          <el-tab-pane label="附件" name="fj">
+            <el-button type="primary" @click="corpsAttnAdd">新增</el-button>
+            <el-table :data="formData.corpsFilesList" :header-cell-style="{background:'#ecf5ff',color:'#232526',fontSize: '12px'}" stripe style="width: 100%">
+              <el-table-column prop="sort" label="排序" width="180"/>
+              <el-table-column prop="fileName" label="文件名" width="180"/>
+              <el-table-column prop="url" label="文件地址" width="180"/>
+              <el-table-column prop="status" label="状态" width="180"/>
+              <el-table-column prop="remarks" label="备注" width="180"/>
+            </el-table>
+          </el-tab-pane>
+          <el-tab-pane label="更名记录" name="gmjl">
+            <el-table :data="formData.corpsRenameList" :header-cell-style="{background:'#ecf5ff',color:'#232526',fontSize: '12px'}" stripe style="width: 100%">
+              <el-table-column prop="oldCnName" label="原中文名称" width="180"/>
+              <el-table-column prop="newCnName" label="新中文名称" width="180"/>
+              <el-table-column prop="oldEnName" label="原英文名称" width="180"/>
+              <el-table-column prop="newEnName" label="新英文名称" width="180"/>
+              <!-- <el-table-column prop="byId" label="操作人" width="180"/> -->
+              <el-table-column prop="byTime" label="操作时间" width="180"/>
+              <el-table-column prop="remarks" label="备注" width="180"/>
+            </el-table>
+          </el-tab-pane>
+          <el-tab-pane label="发票抬头" name="fptt">
+            <el-button type="primary" @click="corpsAttnAdd">新增</el-button>
+            <el-table :data="formData.corpsInvoiceHeaderList" :header-cell-style="{background:'#ecf5ff',color:'#232526',fontSize: '12px'}" stripe style="width: 100%">
+              <el-table-column prop="pid" label="主表id" width="180"/>
+              <el-table-column prop="guaranteeNo" label="保函号码" width="180"/>
+              <el-table-column prop="guaranteeDate" label="保函日期" width="180"/>
+              <el-table-column prop="invoiceHeader" label="发票抬头" width="180"/>
+              <el-table-column prop="version" label="版本" width="180"/>
+              <el-table-column prop="status" label="状态" width="180"/>
+              <el-table-column prop="remarks" label="备注" width="180"/>
+            </el-table>
+          </el-tab-pane>
+          <el-tab-pane label="不良记录" name="bljl">
+            <el-table :data="formData.corpsBadrecordList" :header-cell-style="{background:'#ecf5ff',color:'#232526',fontSize: '12px'}" stripe style="width: 100%">
+              <el-table-column prop="pid" label="主表客户id" width="180"/>
+              <el-table-column prop="oldCreditLevel" label="原授信等级" width="180"/>
+              <el-table-column prop="newCreditLevel" label="新授信等级" width="180"/>
+              <el-table-column prop="version" label="版本" width="180"/>
+              <el-table-column prop="status" label="状态" width="180"/>
+              <el-table-column prop="remarks" label="备注" width="180"/>
+            </el-table>
+          </el-tab-pane>
+          <el-tab-pane label="增值税开票" name="zzskp">
+            定时任务补偿
+          </el-tab-pane>
+          <el-tab-pane label="匹配编号" name="ppbh">
+            定时任务补偿
+          </el-tab-pane>
+        </el-tabs>
+
+      </el-row>
+    </el-form>
+
+    <el-dialog
+      title="窗口"
+      :visible.sync="corpsAttnDialogVisible"
+      :append-to-body="true"
+      width="40%"
+      :before-close="handleClose">
+
+      <el-form ref="form" :model="corpsAttnForm" label-width="80px">
+        <div v-if="activeName=='khlxk'">
+          <el-form-item label="编号">
+            <el-input v-model="corpsAttnForm.code"></el-input>
+          </el-form-item>
+          <el-form-item label="名称">
+            <el-input v-model="corpsAttnForm.cname"></el-input>
+          </el-form-item>
+          <el-form-item label="联系方式">
+            <el-input v-model="corpsAttnForm.attn"></el-input>
+          </el-form-item>
+          <el-form-item label="电话">
+            <el-input v-model="corpsAttnForm.tel"></el-input>
+          </el-form-item>
+          <el-form-item label="岗位">
+            <el-input v-model="corpsAttnForm.position"></el-input>
+          </el-form-item>
+          <el-form-item label="公司地址">
+            <el-input v-model="corpsAttnForm.addr"></el-input>
+          </el-form-item>
+          <el-form-item label="用户id">
+            <el-input v-model="corpsAttnForm.userId"></el-input>
+          </el-form-item>
+          <el-form-item label="性别">
+            <el-select v-model="corpsAttnForm.sex" placeholder="请选择性别">
+              <el-option label="男" value="男"></el-option>
+              <el-option label="女" value="女"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="邮箱地址">
+            <el-input v-model="corpsAttnForm.email"></el-input>
+          </el-form-item>
+          <el-form-item label="状态">
+            <el-select v-model="corpsAttnForm.status" placeholder="请选择状态">
+              <el-option label="正常" :value="0"></el-option>
+              <el-option label="停用" :value="1"></el-option>
+            </el-select>
+          </el-form-item>
+        </div>
+        <div v-if="activeName=='yhxx'">
+          <el-form-item label="统一社会信用代码">
+            <el-input v-model="corpsAttnForm.uscc"></el-input>
+          </el-form-item>
+          <el-form-item label="账号名称">
+            <el-input v-model="corpsAttnForm.accountName"></el-input>
+          </el-form-item>
+          <el-form-item label="账号银行">
+            <el-input v-model="corpsAttnForm.accountBank"></el-input>
+          </el-form-item>
+          <el-form-item label="币别">
+            <el-input v-model="corpsAttnForm.curNo"></el-input>
+          </el-form-item>
+          <el-form-item label="科目编码">
+            <el-input v-model="corpsAttnForm.subjectNumber"></el-input>
+          </el-form-item>
+          <el-form-item label="地址">
+            <el-input v-model="corpsAttnForm.address"></el-input>
+          </el-form-item>
+          <el-form-item label="Swift Code">
+            <el-input v-model="corpsAttnForm.swiftCode"></el-input>
+          </el-form-item>
+          <el-form-item label="CNAPS">
+            <el-input v-model="corpsAttnForm.cnapsCode"></el-input>
+          </el-form-item>
+          <el-form-item label="状态">
+            <el-select v-model="corpsAttnForm.status" placeholder="请选择状态">
+              <el-option label="正常" :value="0"></el-option>
+              <el-option label="停用" :value="1"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="备注">
+            <el-input v-model="corpsAttnForm.remarks"></el-input>
+          </el-form-item>
+        </div>
+        <div v-if="activeName=='fj'">
+          <el-form-item label="排序">
+            <el-input v-model="corpsAttnForm.code"></el-input>
+          </el-form-item>
+          <el-form-item label="文件名">
+            <el-input v-model="corpsAttnForm.cname"></el-input>
+          </el-form-item>
+          <el-form-item label="文件地址">
+            <el-input v-model="corpsAttnForm.attn"></el-input>
+          </el-form-item>
+          <el-form-item label="状态">
+            <el-select v-model="corpsAttnForm.status" placeholder="请选择状态">
+              <el-option label="正常" :value="0"></el-option>
+              <el-option label="停用" :value="1"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="备注">
+            <el-input v-model="corpsAttnForm.position"></el-input>
+          </el-form-item>
+        </div>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="corpsAttnAddClose">取 消</el-button>
+        <el-button type="primary" @click="corpsAttnAddConfirm">确 定</el-button>
+      </span>
+    </el-dialog>
+
+
+  </basic-container>
+</template>
+<script>
+import {addBcorps, updateBcorps, getBcorpsDetail} from "@/api/iosBasicData/bcorps";
+import {bcountrysList} from "@/api/iosBasicData/bcountrys";
+import {getBcorpsattnList, getBcorpsattnDetail, removevBcorpsattn, addBcorpsattn, updateBcorpsattn} from "@/api/iosBasicData/bcorpsattn";
+import bcountrys from '@/views/iosBasicData/bcountrys/index.vue'
+import SearchQuery from '@/components/iosbasic-data/searchquery.vue'
+export default {
+  components: {
+    SearchQuery,bcountrys
+  },
+  props: {
+    detailData: {
+      type: Object
+    }
+  },
+  data() {
+    return {
+      // tab标签
+      activeName: 'kgxq',
+      // 远程搜索
+      loading: false,
+      // 国家list
+      cntyOptions: [],
+      // 用户联系人form
+      corpsAttnForm:{},
+      // 对话框
+      // 客户联系人对话框
+      corpsAttnDialogVisible: false,
+      corpsAttnDialogIndex: null,
+      formData: {
+        status:0,
+        corpsAttnList:[],
+        corpsBankList:[],
+        corpsFilesList:[],
+      },
+      rules: {
+        corpType: [{
+          required: true,
+          message: '请选择客户分类',
+          trigger: 'change'
+        }],
+        code: [{
+          required: true,
+          message: '请选择客户编号',
+          trigger: 'change'
+        }],
+        shortName: [{
+          required: true,
+          message: '请选择客户简称',
+          trigger: 'change'
+        }],
+        cnName: [{
+          required: true,
+          message: '请选择客户名称',
+          trigger: 'change'
+        }],
+        enName: [{
+          required: true,
+          message: '请选择英文名称',
+          trigger: 'change'
+        }],
+        cnAddr: [{
+          required: true,
+          message: '请选择中文地址',
+          trigger: 'change'
+        }],
+        enAddr: [{
+          required: true,
+          message: '请选择英文地址',
+          trigger: 'change'
+        }],
+      },
+      // 客户联系人表单校验
+      corpsAttnRules: {
+        code: [
+            { required: true, message: '请输入编号', trigger: 'change' }
+        ],
+        cname: [
+          { required: true, message: '请输入名称', trigger: 'change' }
+        ],
+      },
+      statusOptions: [{
+        "label": "正常",
+        "value": 0
+      }, {
+        "label": "停用",
+        "value": 1
+      }],
+      field102Options: [{
+        "label": "选项一",
+        "value": 1
+      }, {
+        "label": "选项二",
+        "value": 2
+      }],
+      field103Options: [{
+        "label": "选项一",
+        "value": 1
+      }, {
+        "label": "选项二",
+        "value": 2
+      }],
+      field104Options: [{
+        "label": "选项一",
+        "value": 1
+      }, {
+        "label": "选项二",
+        "value": 2
+      }],
+      field105Options: [{
+        "label": "选项一",
+        "value": 1
+      }, {
+        "label": "选项二",
+        "value": 2
+      }],
+    }
+  },
+  computed: {},
+  watch: {},
+  created() {
+    if (this.detailData.id) {
+      getBcorpsDetail(this.detailData.id).then(res => {
+        this.formData = res.data.data
+      })
+    }
+    // 查询国家下拉
+    bcountrysList(1,10).then(res => {
+      this.cntyOptions = res.data.data.records
+    })
+  },
+  mounted() {},
+  methods: {
+    bcountrysListfun(cnName) {
+      // 查询国家下拉
+      bcountrysList(1,10,{cnName}).then(res => {
+        this.cntyOptions = res.data.data.records
+      })
+    },
+    bcountrysChange(value) {
+      this.formData.cntyCode = value
+            // for(let item of this.unitNoData) {
+            //     if (item.id == value) {
+            //         this.formData.cntyCode = item.code
+            //     }
+            // }
+    },
+    submitForm() {
+      this.$refs['userDataForm'].validate(valid => {
+        if (!valid) return
+        // TODO 提交表单
+        // 联系电话赋值
+        if(this.formData.id != null) {
+          updateBcorps(this.formData).then(_ => {
+            this.$message({
+              type: "success",
+              message: "修改成功!"
+            });
+          })
+        } else {
+          this.formData.attnTel = this.formData.tel
+          addBcorps(this.formData).then(() => {
+            this.$message({
+              type: "success",
+              message: "添加成功!"
+            });
+          });
+        }
+        
+      })
+    },
+    resetForm() {
+      this.$refs['userDataForm'].resetFields()
+    },
+    // -------------------------------------- 弹窗相关 ---------------------------------
+    // 客户联系人新增
+    corpsAttnAdd() {
+      this.corpsAttnDialogVisible = true
+    },
+    // 确认
+    corpsAttnAddConfirm() {
+      if (this.corpsAttnDialogIndex == null) {
+        this.corpsAttnForm.pid = this.formData.id
+        // 新增
+        if (this.formData.id != null) {
+          // 调用新增接口
+          if (this.activeName == 'khlxk') {
+              addBcorpsattn(this.corpsAttnForm).then(() => {
+                this.$message({
+                  type: "success",
+                  message: "添加成功!"
+                });
+              });
+            } else if(this.activeName == 'yhxx') {
+              // this.formData.corpsBankList.push(this.corpsAttnForm);
+            } else if(this.activeName == 'fj') {
+              // this.formData.corpsFilesList.push(this.corpsAttnForm);
+            }
+        } else {
+            if (this.activeName == 'khlxk') {
+              this.formData.corpsAttnList.push(this.corpsAttnForm);
+            } else if(this.activeName == 'yhxx') {
+              this.formData.corpsBankList.push(this.corpsAttnForm);
+            } else if(this.activeName == 'fj') {
+              this.formData.corpsFilesList.push(this.corpsAttnForm);
+            }
+        }
+        this.corpsAttnForm = {};
+        this.corpsAttnDialogVisible = false;
+      } else {
+        // 修改
+        if (this.corpsAttnForm.id != null) {
+          // 调用修改接口
+        } else {
+          this.formData.corpsAttnList[this.corpsAttnDialogIndex] = this.corpsAttnForm
+          this.corpsAttnForm = {};
+          this.corpsAttnDialogIndex = null
+          this.corpsAttnDialogVisible = false;
+        }
+      }
+    },
+    // 编辑
+    corpsAttnHandle(scope) {
+      this.corpsAttnDialogIndex = scope.$index
+      this.corpsAttnForm = scope.row;
+      this.corpsAttnDialogVisible = true
+    },
+    // 删除
+    corpsAttnDelete(scope) {
+      if (scope.row.id != null) {
+        // 调用删除接口
+      } else {
+        this.formData.corpsAttnList.splice(scope.$index, 1)
+      }
+    },
+    // 关闭窗口
+    corpsAttnAddClose() {
+      this.corpsAttnForm = {};
+      this.corpsAttnDialogVisible = false;
+    },
+    // ---------------------------------------------------------------------------------
+    //返回列表
+    backToList() {
+      // if (this.formData.id) {
+      //   this.unLock({
+      //     moduleName: "xxb",
+      //     tableName: "primary_school",
+      //     billId: this.form.id,
+      //     billNo: this.form.exrateYear + "-" + this.form.moon
+      //   });
+      // }
+      this.formData = {
+        status:0,
+        corpsAttnList:[],
+        corpsBankList:[],
+        corpsFilesList:[],
+      }
+      this.corpsAttnForm = {}
+      this.corpsAttnDialogVisible = false,
+      this.corpsAttnDialogIndex = null,
+      this.$emit("goBack");
+      // this.leaveDetailsKey(this.$route.name);
+    },
+  }
+}
+
+</script>
+<style lang="scss" scoped>
+// /deep/ .el-form-item {
+  // margin-bottom: 8px;
+  // margin-top: 8px;
+// }
+</style>

+ 963 - 0
src/views/iosBasicData/bcorps/index.vue

@@ -0,0 +1,963 @@
+<template>
+  <div>
+  <basic-container v-show="isShow" class="page-crad">
+    <avue-crud :option="option"
+               :table-loading="loading"
+               :data="data"
+               :page.sync="page"
+               :permission="permissionList"
+               :before-open="beforeOpen"
+               v-model="form"
+               ref="crud"
+               @row-update="rowUpdate"
+               @row-save="rowSave"
+               @row-del="rowDel"
+               @search-change="searchChange"
+               @search-reset="searchReset"
+               @selection-change="selectionChange"
+               @current-change="currentChange"
+               @size-change="sizeChange"
+               @refresh-change="refreshChange"
+               @on-load="onLoad">
+      <template slot="menuLeft">
+        <!-- <el-button type="danger"
+                   size="small"
+                   icon="el-icon-delete"
+                   plain
+                   v-if="permission.bcorps_delete"
+                   @click="handleDelete">删 除
+        </el-button> -->
+      </template>
+      <template slot-scope="{ row, index }" slot="menu">
+          <el-button type="text" size="small" @click.stop="editOpen(row)">
+            查看
+          </el-button>
+          <!-- <el-button type="text" size="small" @click.stop="editOpen(row, 1)">
+            编辑
+          </el-button> -->
+          <el-button
+            type="text"
+            size="small"
+            @click.stop="rowDel(row, index)"
+            :disabled="row.status > 0"
+          >
+            删除
+          </el-button>
+        </template>
+    </avue-crud>
+  </basic-container>
+    <detailPage
+      v-if="!isShow"
+      ref="detail"
+      @goBack="goBack"
+      @copyOrder="copyOrder"
+      :detailData="detailData"
+    ></detailPage>
+    
+    
+  </div>
+</template>
+
+<script>
+import detailPage from "./detailsPage";
+  import {getBcorpsList, getBcorpsDetail, addBcorps, updateBcorps, removeBcorps} from "@/api/iosBasicData/bcorps";
+  import {mapGetters} from "vuex";
+
+  export default {
+  components: {
+    detailPage
+  },
+    data() {
+      return {
+        form: {},
+        query: {},
+      detailData: {},
+      isShow: true,
+        loading: true,
+        page: {
+          pageSize: 10,
+          currentPage: 1,
+          total: 0
+        },
+        selectionList: [],
+        option: {
+          height:'auto',
+          calcHeight: 30,
+          tip: false,
+          searchShow: true,
+          searchMenuSpan: 6,
+          border: true,
+          index: true,
+          viewBtn: true,
+          selection: true,
+          dialogClickModal: false,
+          column: [
+            {
+              label: "主键",
+              prop: "id",
+              rules: [{
+                required: true,
+                message: "请输入主键",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "分公司 Id",
+              prop: "branchId",
+              rules: [{
+                required: true,
+                message: "请输入分公司 Id",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "创建人 Id",
+              prop: "createUser",
+              rules: [{
+                required: true,
+                message: "请输入创建人 Id",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "创建人",
+              prop: "createUserName",
+              rules: [{
+                required: true,
+                message: "请输入创建人",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "创建部门 Id",
+              prop: "createDept",
+              rules: [{
+                required: true,
+                message: "请输入创建部门 Id",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "创建部门",
+              prop: "createDeptName",
+              rules: [{
+                required: true,
+                message: "请输入创建部门",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "创建时间",
+              prop: "createTime",
+              rules: [{
+                required: true,
+                message: "请输入创建时间",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "修改人 Id",
+              prop: "updateUser",
+              rules: [{
+                required: true,
+                message: "请输入修改人 Id",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "修改人",
+              prop: "updateUserName",
+              rules: [{
+                required: true,
+                message: "请输入修改人",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "修改时间",
+              prop: "updateTime",
+              rules: [{
+                required: true,
+                message: "请输入修改时间",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "单位编码",
+              prop: "code",
+              rules: [{
+                required: true,
+                message: "请输入单位编码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "统一社会信用代码",
+              prop: "uscc",
+              rules: [{
+                required: true,
+                message: "请输入统一社会信用代码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "首字母",
+              prop: "initials",
+              rules: [{
+                required: true,
+                message: "请输入首字母",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "简称",
+              prop: "shortName",
+              rules: [{
+                required: true,
+                message: "请输入简称",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "中文名称",
+              prop: "cnName",
+              rules: [{
+                required: true,
+                message: "请输入中文名称",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "英文名称",
+              prop: "enName",
+              rules: [{
+                required: true,
+                message: "请输入英文名称",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "国家代码",
+              prop: "cntyCode",
+              rules: [{
+                required: true,
+                message: "请输入国家代码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "国家名称",
+              prop: "cntyName",
+              rules: [{
+                required: true,
+                message: "请输入国家名称",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "省、州",
+              prop: "province",
+              rules: [{
+                required: true,
+                message: "请输入省、州",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "城市",
+              prop: "city",
+              rules: [{
+                required: true,
+                message: "请输入城市",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "中文地址",
+              prop: "cnAddr",
+              rules: [{
+                required: true,
+                message: "请输入中文地址",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "英文地址",
+              prop: "enAddr",
+              rules: [{
+                required: true,
+                message: "请输入英文地址",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "电话",
+              prop: "tel",
+              rules: [{
+                required: true,
+                message: "请输入电话",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "传真",
+              prop: "fax",
+              rules: [{
+                required: true,
+                message: "请输入传真",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "电子邮箱",
+              prop: "email",
+              rules: [{
+                required: true,
+                message: "请输入电子邮箱",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "负责人姓名",
+              prop: "mgrName",
+              rules: [{
+                required: true,
+                message: "请输入负责人姓名",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "联系人姓名",
+              prop: "attnName",
+              rules: [{
+                required: true,
+                message: "请输入联系人姓名",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "联系人电话",
+              prop: "attnTel",
+              rules: [{
+                required: true,
+                message: "请输入联系人电话",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "客户来源类别",
+              prop: "sourceType",
+              rules: [{
+                required: true,
+                message: "请输入客户来源类别",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "部门 Id",
+              prop: "deptId",
+              rules: [{
+                required: true,
+                message: "请输入部门 Id",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "部门名称",
+              prop: "deptName",
+              rules: [{
+                required: true,
+                message: "请输入部门名称",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "业务员 Id",
+              prop: "salesId",
+              rules: [{
+                required: true,
+                message: "请输入业务员 Id",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "业务员姓名",
+              prop: "salesName",
+              rules: [{
+                required: true,
+                message: "请输入业务员姓名",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "所属单位 Id",
+              prop: "corpId",
+              rules: [{
+                required: true,
+                message: "请输入所属单位 Id",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "所属单位名称",
+              prop: "corpName",
+              rules: [{
+                required: true,
+                message: "请输入所属单位名称",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "客户类型",
+              prop: "corpType",
+              rules: [{
+                required: true,
+                message: "请输入客户类型",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "分管员",
+              prop: "adminProfiles",
+              rules: [{
+                required: true,
+                message: "请输入分管员",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "海运邮箱",
+              prop: "seaEmail",
+              rules: [{
+                required: true,
+                message: "请输入海运邮箱",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "空运邮箱",
+              prop: "airEmail",
+              rules: [{
+                required: true,
+                message: "请输入空运邮箱",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "国际编码",
+              prop: "unCode",
+              rules: [{
+                required: true,
+                message: "请输入国际编码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "海关编码",
+              prop: "customsCode",
+              rules: [{
+                required: true,
+                message: "请输入海关编码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "SCAC 代码",
+              prop: "scacCode",
+              rules: [{
+                required: true,
+                message: "请输入SCAC 代码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "iGenZong 代码",
+              prop: "igenzongCode",
+              rules: [{
+                required: true,
+                message: "请输入iGenZong 代码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "美线约号",
+              prop: "amLineAgreementno",
+              rules: [{
+                required: true,
+                message: "请输入美线约号",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "船公司代码",
+              prop: "carrierCode",
+              rules: [{
+                required: true,
+                message: "请输入船公司代码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "场站三字码",
+              prop: "cyCode",
+              rules: [{
+                required: true,
+                message: "请输入场站三字码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "CMA Laracode",
+              prop: "cmaLaracode",
+              rules: [{
+                required: true,
+                message: "请输入CMA Laracode",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "CMA Location",
+              prop: "cmaLocation",
+              rules: [{
+                required: true,
+                message: "请输入CMA Location",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "ZIM CUCC",
+              prop: "zimCucc",
+              rules: [{
+                required: true,
+                message: "请输入ZIM CUCC",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "关贸云编码",
+              prop: "gmyCode",
+              rules: [{
+                required: true,
+                message: "请输入关贸云编码",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "INTRRA ICUA",
+              prop: "inttraIcua",
+              rules: [{
+                required: true,
+                message: "请输入INTRRA ICUA",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "INTRRA ICUA 联系人",
+              prop: "inttraIcuaAttn",
+              rules: [{
+                required: true,
+                message: "请输入INTRRA ICUA 联系人",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "INTRRA ICUA Email",
+              prop: "inttraIcuaEmail",
+              rules: [{
+                required: true,
+                message: "请输入INTRRA ICUA Email",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "EDI 格式名称",
+              prop: "ediFmt",
+              rules: [{
+                required: true,
+                message: "请输入EDI 格式名称",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "EDI FTP 地址",
+              prop: "ediFtp",
+              rules: [{
+                required: true,
+                message: "请输入EDI FTP 地址",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "EDI 邮箱",
+              prop: "ediEmail",
+              rules: [{
+                required: true,
+                message: "请输入EDI 邮箱",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "是否 VIP 客户,0=否,1=是",
+              prop: "vip",
+              rules: [{
+                required: true,
+                message: "请输入是否 VIP 客户,0=否,1=是",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "VIP 等级",
+              prop: "vipLevel",
+              rules: [{
+                required: true,
+                message: "请输入VIP 等级",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "是否已签约,0=否,1=是",
+              prop: "isSigned",
+              rules: [{
+                required: true,
+                message: "请输入是否已签约,0=否,1=是",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "授信状态",
+              prop: "creditStatus",
+              rules: [{
+                required: true,
+                message: "请输入授信状态",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "授信等级,A=A级,B=B级,B+=B+级,B-=B-级,C=C级,D=黑名单",
+              prop: "creditLevel",
+              rules: [{
+                required: true,
+                message: "请输入授信等级,A=A级,B=B级,B+=B+级,B-=B-级,C=C级,D=黑名单",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "授信天数",
+              prop: "creditDay",
+              rules: [{
+                required: true,
+                message: "请输入授信天数",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "授信币种",
+              prop: "creditCur",
+              rules: [{
+                required: true,
+                message: "请输入授信币种",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "授信额度",
+              prop: "creditGrant",
+              rules: [{
+                required: true,
+                message: "请输入授信额度",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "授信利率",
+              prop: "creditRate",
+              rules: [{
+                required: true,
+                message: "请输入授信利率",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "付款方式",
+              prop: "paymentType",
+              rules: [{
+                required: true,
+                message: "请输入付款方式",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "账期设置",
+              prop: "accountPeriodType",
+              rules: [{
+                required: true,
+                message: "请输入账期设置",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "最大欠款额",
+              prop: "maxArrears",
+              rules: [{
+                required: true,
+                message: "请输入最大欠款额",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "协议号",
+              prop: "agreementNo",
+              rules: [{
+                required: true,
+                message: "请输入协议号",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "绩效系数",
+              prop: "performanceRate",
+              rules: [{
+                required: true,
+                message: "请输入绩效系数",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "增值税率",
+              prop: "taxRate",
+              rules: [{
+                required: true,
+                message: "请输入增值税率",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "存在 PS 0=否 1=是",
+              prop: "isPs",
+              rules: [{
+                required: true,
+                message: "请输入存在 PS 0=否 1=是",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "PS(利润分成) 比例",
+              prop: "psRate",
+              rules: [{
+                required: true,
+                message: "请输入PS(利润分成) 比例",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "PS允许付大于收 0=否 1=是",
+              prop: "psAllowLargeCredit",
+              rules: [{
+                required: true,
+                message: "请输入PS允许付大于收 0=否 1=是",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "详情,主要用于提单信息",
+              prop: "details",
+              rules: [{
+                required: true,
+                message: "请输入详情,主要用于提单信息",
+                trigger: "blur"
+              }]
+            },
+            // {
+            //   label: "JSON 对象数组,用于不查询的扩展数据, 例如:[{name: "key1", value: "value1"}]",
+            //   prop: "extendedData",
+            //   rules: [{
+            //     required: true,
+            //     message: "请输入JSON 对象数组,用于不查询的扩展数据, 例如:[{name: "key1", value: "value1"}]",
+            //     trigger: "blur"
+            //   }]
+            // },
+            {
+              label: "版本",
+              prop: "version",
+              rules: [{
+                required: true,
+                message: "请输入版本",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "状态(0 正常 1停用)",
+              prop: "status",
+              rules: [{
+                required: true,
+                message: "请输入状态(0 正常 1停用)",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "是否已删除(0 否 1是)",
+              prop: "isDeleted",
+              rules: [{
+                required: true,
+                message: "请输入是否已删除(0 否 1是)",
+                trigger: "blur"
+              }]
+            },
+            {
+              label: "备注",
+              prop: "remarks",
+              rules: [{
+                required: true,
+                message: "请输入备注",
+                trigger: "blur"
+              }]
+            },
+          ]
+        },
+        data: []
+      };
+    },
+    computed: {
+      ...mapGetters(["permission"]),
+      permissionList() {
+        return {
+          // addBtn: this.vaildData(this.permission.bcorps_add, false),
+          viewBtn: this.vaildData(this.permission.bcorps_view, false),
+          delBtn: this.vaildData(this.permission.bcorps_delete, false),
+          editBtn: this.vaildData(this.permission.bcorps_edit, false)
+        };
+      },
+      ids() {
+        let ids = [];
+        this.selectionList.forEach(ele => {
+          ids.push(ele.id);
+        });
+        return ids.join(",");
+      }
+    },
+    methods: {
+      editOpen(row) {
+        this.detailData = {
+          id: row.id
+        };
+        this.isShow = false;
+      },
+      rowSave(row, done, loading) {
+        addBcorps(row).then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!"
+          });
+          done();
+        }, error => {
+          loading();
+          window.console.log(error);
+        });
+      },
+      rowUpdate(row, index, done, loading) {
+        updateBcorps(row).then(() => {
+          this.onLoad(this.page);
+          this.$message({
+            type: "success",
+            message: "操作成功!"
+          });
+          done();
+        }, error => {
+          loading();
+          console.log(error);
+        });
+      },
+      rowDel(row) {
+        this.$confirm("确定将选择数据删除?", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        })
+          .then(() => {
+            return removeBcorps(row.id);
+          })
+          .then(() => {
+            this.onLoad(this.page);
+            this.$message({
+              type: "success",
+              message: "操作成功!"
+            });
+          });
+      },
+      handleDelete() {
+        if (this.selectionList.length === 0) {
+          this.$message.warning("请选择至少一条数据");
+          return;
+        }
+        this.$confirm("确定将选择数据删除?", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        })
+          .then(() => {
+            return removeBcorps(this.ids);
+          })
+          .then(() => {
+            this.onLoad(this.page);
+            this.$message({
+              type: "success",
+              message: "操作成功!"
+            });
+            this.$refs.crud.toggleSelection();
+          });
+      },
+      beforeOpen(done, type) {
+        this.isShow = false;
+        // if (["edit", "view"].includes(type)) {
+        //   getBcorpsDetail(this.form.id).then(res => {
+        //     this.form = res.data.data;
+        //   });
+        // }
+        // done();
+      },
+      searchReset() {
+        this.query = {};
+        this.onLoad(this.page);
+      },
+      searchChange(params, done) {
+        this.query = params;
+        this.page.currentPage = 1;
+        this.onLoad(this.page, params);
+        done();
+      },
+      selectionChange(list) {
+        this.selectionList = list;
+      },
+      selectionClear() {
+        this.selectionList = [];
+        this.$refs.crud.toggleSelection();
+      },
+      currentChange(currentPage){
+        this.page.currentPage = currentPage;
+      },
+      sizeChange(pageSize){
+        this.page.pageSize = pageSize;
+      },
+      refreshChange() {
+        this.onLoad(this.page, this.query);
+      },
+      onLoad(page, params = {}) {
+        this.loading = true;
+        getBcorpsList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
+          const data = res.data.data;
+          this.page.total = data.total;
+          this.data = data.records;
+          this.loading = false;
+          this.selectionClear();
+        });
+      },
+      goBack() {
+        this.isShow = true;
+      }
+    }
+  };
+</script>
+
+<style>
+</style>