Pārlūkot izejas kodu

fix:解决冲突

lazy 3 nedēļas atpakaļ
vecāks
revīzija
c4301cc474

+ 37 - 0
src/api/capitalManage/index.js

@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+// 资方管理 - 获取列表
+export function getList(data) {
+  return request({
+    url: '/capitalManagementInfo/list',
+    method: 'post',
+    data
+  })
+}
+
+// 资方管理 - 获取详情
+export function getDetails(params) {
+  return request({
+    url: '/capitalManagementInfo/getDetail',
+    method: 'get',
+    params
+  })
+}
+
+// 资方管理 - 获取企业数据
+export function getCompanyListApi(params) {
+  return request({
+    url: '/capitalManagementInfo/findCompanyData',
+    method: 'get',
+    params
+  })
+}
+
+// 资方管理 - 获取详情
+export function submitData(data) {
+  return request({
+    url: '/capitalManagementInfo/edit',
+    method: 'post',
+    data
+  })
+}

+ 1 - 1
src/api/dictionary.js

@@ -61,7 +61,7 @@ export const getRegion = (params) => (
 // 获取文件预览
 export const getFilePerview = (params) => (
   request({
-    url: '/fileStorage/downloadPdfFile',
+    url: '/system/fileStorage/downloadPdfFile',
     method: 'get',
     params,
     responseType: 'arraybuffer'

+ 5 - 1
src/components/CommTable/index.vue

@@ -275,7 +275,7 @@ export default {
   },
   filters: {
     changNumber(val) {
-      return handleMoney(val)
+      return val ? handleMoney(val) : ''
     }
   },
   data() {
@@ -425,6 +425,10 @@ export default {
         })
         this.multipleSelection = list
       })
+    },
+    initPage() {
+      this.page = 1
+      this.size = 10
     }
   }
 }

+ 7 - 1
src/components/Input/InputNumber/index.vue

@@ -7,6 +7,7 @@
     :disabled="disabled"
     :maxlength="maxLen"
     @change="handleChange"
+    @blur="handleBlur"
   >
     <template v-if="forntUnitName" slot="prepend">{{ forntUnitName }}</template>
     <template v-if="isUnit" slot="append">{{ unitName }}</template>
@@ -19,6 +20,7 @@
     :controls="false"
     :maxlength="maxLen"
     @change="handleInput"
+    @blur="handleBlur"
   >
     <template v-if="forntUnitName" slot="prepend">{{ forntUnitName }}</template>
     <template v-if="isUnit" slot="append">{{ unitName }}</template>
@@ -112,7 +114,8 @@ export default {
         return
       }
       if (val.indexOf('.') === -1) {
-        this.inputVal = ''
+        this.inputVal = val
+        this.$emit('input', val)
         return
       }
       let newVal = val.replace(/[^d+] | [\-] | [\.]/g, '').replace(/\s/g, '')
@@ -140,6 +143,9 @@ export default {
         }
         return `${splitArr[0]}.${splitArr[1]}`
       }
+    },
+    handleBlur(val) {
+      this.$emit('blur', val)
     }
   }
 }

+ 2 - 0
src/router/index.js

@@ -6,6 +6,7 @@ import systemManage from './moudules/systemManage'
 import enterpriseManage from './moudules/enterpriseManage'
 import capitalManage from './moudules/capitalManage'
 import storeManage from './moudules/storeManage'
+import monitorManage from './moudules/monitorManage'
 
 Vue.use(Router)
 
@@ -51,6 +52,7 @@ export const constantRoutes = [
   enterpriseManage,
   capitalManage,
   userManagement,
+  monitorManage,
   systemManage,
 
   // 404 page must be placed at the end !!!

+ 2 - 2
src/router/moudules/capitalManage.js

@@ -17,8 +17,8 @@ export default {
       path: '/capitalManage',
       name: 'CapitalManage',
       component: () => import('@/views/capitalManage/index.vue'),
-      meta: { title: '资方管理' },
-      hidden: false,
+      meta: { title: '资方管理', activeMenu: '/capitalManagement' },
+      hidden: true,
       children: [
         {
           path: '/capitalManage/details/:id',

+ 24 - 0
src/router/moudules/monitorManage.js

@@ -0,0 +1,24 @@
+
+/* Layout */
+import Layout from '@/layout'
+
+export default {
+  path: '/monitorManage',
+  component: Layout,
+  redirect: '/eSign',
+  name: 'MonitorManage',
+  alwaysShow: true,
+  meta: {
+    title: '监测管理',
+    icon: 'system'
+  },
+  children: [
+    {
+      path: '/monitorBindAccount',
+      name: 'MonitorBindAccount',
+      component: () => import('@/views/monitorManage/bindAccount/index.vue'),
+      meta: { title: '绑定账号监测' },
+      hidden: false
+    }
+  ]
+}

+ 7 - 1
src/store/modules/constant.js

@@ -36,7 +36,13 @@ export default {
       oaBillPaymentType: [], // 退款管理-付款类型
       principalPaymentMethod: [], // 授信决议 - 本金支付方式
       c_credit_investigation_info_type: [], // 资方融资管理-法人证件类型
-      platformType: [] // 店铺列表--平台类型
+      platformType: [], // 店铺列表--平台类型
+      smbCreditStatus: [], // 资方融资管理-资方放款列表-授信状态
+      smbLimitStatus: [], // 资方融资管理-资方放款列表-额度状态
+      capitalStatus: [], // 资方管理 - 资方状态
+      payCollectionMethod: [], // 资方管理 - 回款方式
+      payBackMethod: [], // 资方管理 - 还款方式
+      CreditStatus: [] // 资方管理 - 授信状态
     }
   },
   mutations: {

+ 2 - 2
src/styles/element/ruleForm.scss

@@ -56,7 +56,7 @@
 
   .el-textarea.is-disabled .el-textarea__inner,
   .el-input.is-disabled .el-input__inner  {
-    background-color: #fff;
+    // background-color: #fff;
     color: #333;
   }
 
@@ -225,7 +225,7 @@ $orangeColor: #E9423A;
 /* disable开始 */
 .el-textarea.is-disabled .el-textarea__inner,
 .el-input.is-disabled .el-input__inner  {
-  background-color: #fff;
+  // background-color: #fff;
   color: #333;
 }
 

+ 29 - 7
src/views/capitalManage/components/BasicInfo.vue

@@ -8,22 +8,22 @@
       class="rule-form-orange"
     >
       <el-form-item label="资方授信编号">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入资方授信编号" />
+        <el-input v-model="ruleForm.creditNo" disabled placeholder="请输入资方授信编号" />
       </el-form-item>
       <el-form-item label="机构类型">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入机构类型" />
+        <el-input v-model="ruleForm.institutionType" disabled placeholder="请输入机构类型" />
       </el-form-item>
       <el-form-item label="资方名称">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入资方名称" />
+        <el-input v-model="ruleForm.capitalName" disabled placeholder="请输入资方名称" />
       </el-form-item>
       <el-form-item label="客户经理">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入客户经理" />
+        <el-input v-model="ruleForm.belongName" disabled placeholder="请输入客户经理" />
       </el-form-item>
       <el-form-item label="部门">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入机构类型" />
+        <el-input v-model="ruleForm.orgName" disabled placeholder="请输入机构类型" />
       </el-form-item>
       <el-form-item label="授信状态">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入机构类型" />
+        <el-input v-model="ruleForm.creditStatus" disabled placeholder="请输入机构类型" />
       </el-form-item>
     </el-form>
   </div>
@@ -31,12 +31,34 @@
 
 <script>
 export default {
+  props: {
+    detailsInfo: {
+      type: Object,
+      default: () => {}
+    }
+  },
   data() {
     return {
       ruleForm: {
-        desc: ''
+        creditNo: '',
+        institutionType: '',
+        capitalName: '',
+        belongName: '',
+        orgName: '',
+        creditStatus: ''
       }
     }
+  },
+  watch: {
+    detailsInfo: {
+      handler(newV) {
+        if (newV && Object.keys(newV).length) {
+          this.ruleForm = JSON.parse(JSON.stringify(newV))
+        }
+      },
+      immediate: true
+      // deep: true
+    }
   }
 }
 </script>

+ 40 - 12
src/views/capitalManage/components/CreditBasicInfo.vue

@@ -8,37 +8,37 @@
       class="rule-form-orange"
     >
       <el-form-item label="授信金额">
-        <cy-amount-input v-model="ruleForm.desc" disabled placeholder="请输入授信金额" />
+        <cy-amount-input v-model="ruleForm.creditAmount" disabled placeholder="请输入授信金额" />
       </el-form-item>
       <el-form-item label="币种">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入币种" />
+        <el-input v-model="ruleForm.currency" disabled placeholder="请输入币种" />
       </el-form-item>
       <el-form-item label="业务类型">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入业务类型" />
+        <el-input v-model="ruleForm.businessType" disabled placeholder="请输入业务类型" />
       </el-form-item>
       <el-form-item label="业务类型编号">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入业务类型编号" />
+        <el-input v-model="ruleForm.businessTypeNo" disabled placeholder="请输入业务类型编号" />
       </el-form-item>
       <el-form-item label="授信主体">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入授信主体" />
+        <el-input v-model="ruleForm.creditSubjectName" disabled placeholder="请输入授信主体" />
       </el-form-item>
       <el-form-item label="授信类型">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入授信类型" />
+        <el-input v-model="ruleForm.creditType" disabled placeholder="请输入授信类型" />
       </el-form-item>
       <el-form-item label="授信生效日">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入授信生效日" />
+        <el-input v-model="ruleForm.creditStartDate" disabled placeholder="请输入授信生效日" />
       </el-form-item>
       <el-form-item label="授信到期日">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入授信到期日" />
+        <el-input v-model="ruleForm.creditEndDate" disabled placeholder="请输入授信到期日" />
       </el-form-item>
       <el-form-item label="银行利率/年">
-        <cy-amount-input v-model="ruleForm.desc" :is-unit="true" unit-name="%" disabled placeholder="请输入银行利率/年" />
+        <cy-amount-input v-model="ruleForm.bankRate" :is-unit="true" unit-name="%" disabled placeholder="请输入银行利率/年" />
       </el-form-item>
       <el-form-item label="逾期利率/年">
-        <cy-amount-input v-model="ruleForm.desc" :is-unit="true" unit-name="%" disabled placeholder="请输入逾期利率/年" />
+        <cy-amount-input v-model="ruleForm.longbankOverdueInterestRate" :is-unit="true" unit-name="%" disabled placeholder="请输入逾期利率/年" />
       </el-form-item>
       <el-form-item label="适用产品">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入适用产品" />
+        <el-input v-model="ruleForm.productName" disabled placeholder="请输入适用产品" />
       </el-form-item>
     </el-form>
   </div>
@@ -46,12 +46,40 @@
 
 <script>
 export default {
+  props: {
+    detailsInfo: {
+      type: Object,
+      default: () => {}
+    }
+  },
   data() {
     return {
       ruleForm: {
-        desc: ''
+        creditAmount: '',
+        currency: '',
+        businessType: '',
+        businessTypeNo: '',
+        creditSubjectName: '',
+        creditType: '',
+        creditStartDate: '',
+        creditEndDate: '',
+        bankRate: '',
+        longbankOverdueInterestRate: '',
+        productName: ''
       }
     }
+  },
+  watch: {
+    detailsInfo: {
+      handler(newV) {
+        if (newV && Object.keys(newV).length) {
+          this.ruleForm = JSON.parse(JSON.stringify(newV))
+          this.ruleForm.productName = this.ruleForm.productName.toString()
+        }
+      },
+      immediate: true
+      // deep: true
+    }
   }
 }
 </script>

+ 83 - 18
src/views/capitalManage/components/CreditInfo.vue

@@ -1,31 +1,40 @@
 <template>
   <div class="credit-info">
-    <cy-info-title style="margin-top: 10px;">授信信息</cy-info-title>
+    <cy-info-title style="margin-top: 10px">授信信息</cy-info-title>
     <el-form
+      ref="ruleForm"
       :model="ruleForm"
+      :rules="rules"
       label-position="top"
       label-width="150px"
       class="rule-form-orange"
     >
-      <el-form-item label="资方状态">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">启用</el-radio>
-          <el-radio :label="false">禁用</el-radio>
+      <el-form-item label="资方状态" prop="capitalStatus">
+        <el-radio-group v-model="ruleForm.capitalStatus" :disabled="disabled">
+          <el-radio label="capitalStatusInEffect">启用</el-radio>
+          <el-radio label="capitalStatusForbidden">禁用</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="是否长银资方">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">是</el-radio>
-          <el-radio :label="false">否</el-radio>
+      <el-form-item label="是否长银资方" prop="isCapital">
+        <el-radio-group v-model="ruleForm.isCapital" :disabled="disabled">
+          <el-radio :label="1">是</el-radio>
+          <el-radio :label="0">否</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="资方融资期限">
-        <cy-number-input v-model="ruleForm.desc" :disabled="disabled" placeholder="请输入业务类型" :is-unit="true" unit-name="天" />
+      <el-form-item label="资方融资期限" prop="capitalFinancingTerm">
+        <cy-number-input
+          v-model="ruleForm.capitalFinancingTerm"
+          :disabled="disabled"
+          placeholder="请输入资方融资期限"
+          :is-unit="true"
+          unit-name="天"
+          @blur="capitalFinancingTermBlur"
+        />
       </el-form-item>
-      <el-form-item label=" 是否支持多店铺">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">是</el-radio>
-          <el-radio :label="false">否</el-radio>
+      <el-form-item label=" 是否支持多店铺" prop="isMultiStore">
+        <el-radio-group v-model="ruleForm.isMultiStore" :disabled="disabled">
+          <el-radio :label="0">是</el-radio>
+          <el-radio :label="1">否</el-radio>
         </el-radio-group>
       </el-form-item>
     </el-form>
@@ -38,21 +47,77 @@ export default {
     disabled: {
       type: Boolean,
       default: false
+    },
+    detailsInfo: {
+      type: Object,
+      default: () => {}
     }
   },
   data() {
     return {
       ruleForm: {
-        desc: ''
+        capitalStatus: '',
+        isCapital: '',
+        capitalFinancingTerm: '',
+        isMultiStore: ''
+      },
+      rules: {
+        capitalStatus: [
+          { required: true, message: '请选择资方状态', trigger: 'change' }
+        ],
+        isCapital: [
+          { required: true, message: '请选择是否长银资方', trigger: 'change' }
+        ],
+        capitalFinancingTerm: [
+          { required: true, message: '请输入资方融资期限', trigger: 'blur' }
+        ],
+        isMultiStore: [
+          { required: true, message: '请选择是否支持多店铺', trigger: 'change' }
+        ]
       }
     }
+  },
+  watch: {
+    detailsInfo: {
+      handler(newV) {
+        if (newV && Object.keys(newV).length) {
+          const deepNewV = JSON.parse(JSON.stringify(newV))
+          for (const key in this.ruleForm) {
+            if (Object.hasOwnProperty.call(deepNewV, key)) {
+              this.ruleForm[key] = deepNewV[key]
+            }
+          }
+        }
+      },
+      immediate: true
+      // deep: true
+    }
+  },
+  methods: {
+    capitalFinancingTermBlur() {
+      this.$emit('capitalFinancingTermBlur', this.ruleForm.capitalFinancingTerm)
+    },
+    getParams(type) {
+      return new Promise((resolve, reject) => {
+        if (type === 'temp') {
+          resolve(this.ruleForm)
+        } else {
+          this.$refs.ruleForm.validate((valid) => {
+            if (valid) {
+              resolve(this.ruleForm)
+            } else {
+              reject()
+              return
+            }
+          })
+        }
+      })
+    }
   }
 }
 </script>
 
 <style lang="scss" scoped>
 .basic-info {
-
 }
-
 </style>

+ 188 - 52
src/views/capitalManage/components/LettersInfo.vue

@@ -2,39 +2,42 @@
   <div class="letters-info">
     <cy-info-title style="margin-top: 10px;">用信信息</cy-info-title>
     <el-form
+      ref="ruleForm"
+      :key="formKey"
       :model="ruleForm"
       label-position="top"
       label-width="150px"
+      :rules="rules"
       class="rule-form-orange"
     >
-      <el-form-item label="是否绑定账户">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">启用</el-radio>
-          <el-radio :label="false">禁用</el-radio>
+      <el-form-item label="是否绑定账户" prop="isAccount">
+        <el-radio-group v-model="ruleForm.isAccount" :disabled="disabled">
+          <el-radio :label="1">是</el-radio>
+          <el-radio :label="0">否</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="是否占用公司资金">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">是</el-radio>
-          <el-radio :label="false">否</el-radio>
+      <el-form-item label="是否占用公司资金" prop="isOccupation">
+        <el-radio-group v-model="ruleForm.isOccupation" disabled>
+          <el-radio :label="1">是</el-radio>
+          <el-radio :label="0">否</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="是否公司承险">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">是</el-radio>
-          <el-radio :label="false">否</el-radio>
+      <el-form-item label="是否公司承险" prop="isRisk">
+        <el-radio-group v-model="ruleForm.isRisk" disabled>
+          <el-radio :label="1">是</el-radio>
+          <el-radio :label="0">否</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="征信上报方式">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">A类</el-radio>
-          <el-radio :label="false">B类</el-radio>
-          <el-radio :label="false">不上报</el-radio>
+      <el-form-item label="征信上报方式" prop="reportMethod">
+        <el-radio-group v-model="ruleForm.reportMethod" :disabled="disabled || isM1AOrM1B">
+          <el-radio :label="1">A类</el-radio>
+          <el-radio :label="0">B类</el-radio>
+          <el-radio :label="null">不上报</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="融资利率">
+      <el-form-item label="融资利率" prop="financingRate">
         <cy-number-input
-          v-model="ruleForm.desc"
+          v-model="ruleForm.financingRate"
           :decimal-options="{
             needy: true,
             digitsNo: 2
@@ -43,51 +46,43 @@
           placeholder="请输入融资利率"
           :is-unit="true"
           unit-name="%"
+          @blur="financingRateBlur"
         />
       </el-form-item>
-      <el-form-item label="长银逾期利率 ">
+      <el-form-item label="长银逾期利率 " prop="longbankOverdueInterestRate">
         <cy-number-input
-          v-model="ruleForm.desc"
+          v-model="ruleForm.longbankOverdueInterestRate"
           :decimal-options="{
             needy: true,
             digitsNo: 2
           }"
-          :disabled="disabled"
+          disabled
           placeholder="请输入长银逾期利率"
           :is-unit="true"
           unit-name="%"
         />
       </el-form-item>
-      <el-form-item label="长银其它费用金额 ">
+      <el-form-item label="长银其它费用金额 " prop="longbankOtherExpenses">
         <cy-amount-input
-          v-model="ruleForm.desc"
+          v-model="ruleForm.longbankOtherExpenses"
           :disabled="disabled"
           placeholder="请输入长银其它费用金额"
           :is-unit="true"
-          unit-name=""
+          unit-name=""
         />
       </el-form-item>
-      <el-form-item label="融资期限 ">
+      <el-form-item label="融资期限 " prop="financingTerm">
         <cy-number-input
-          v-model="ruleForm.desc"
-          :disabled="disabled"
+          v-model="ruleForm.financingTerm"
+          :disabled="disabled || isM3A"
           placeholder="请输入融资期限"
           :is-unit="true"
           unit-name="天"
         />
       </el-form-item>
-      <el-form-item label="融资期限 ">
+      <el-form-item label="清分期限 " prop="clearanceTerm">
         <cy-number-input
-          v-model="ruleForm.desc"
-          :disabled="disabled"
-          placeholder="请输入融资期限"
-          :is-unit="true"
-          unit-name="天"
-        />
-      </el-form-item>
-      <el-form-item label="清分期限 ">
-        <cy-number-input
-          v-model="ruleForm.desc"
+          v-model="ruleForm.clearanceTerm"
           :disabled="disabled"
           placeholder="请输入清分期限"
           fornt-unit-name="第"
@@ -95,48 +90,189 @@
           unit-name="天"
         />
       </el-form-item>
-      <el-form-item label="长银代偿利率">
+      <el-form-item label="长银代偿利率" prop="longbankOverdueCompensationRate">
         <cy-number-input
-          v-model="ruleForm.desc"
+          v-model="ruleForm.longbankOverdueCompensationRate"
           :decimal-options="{
             needy: true,
             digitsNo: 2
           }"
-          :disabled="disabled"
+          disabled
           placeholder="请输入长银代偿利率"
           :is-unit="true"
           unit-name="%"
         />
       </el-form-item>
-      <el-form-item label="出资方账户名称 ">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入出资方账户名称 " />
+      <el-form-item label="出资方账户名称 " prop="donorAccountName">
+        <el-input v-model="ruleForm.donorAccountName" disabled placeholder="请输入出资方账户名称 " />
       </el-form-item>
-      <el-form-item label="利息是否计算投放日">
-        <el-radio-group v-model="ruleForm.enabled" :disabled="disabled">
-          <el-radio :label="true">是</el-radio>
-          <el-radio :label="false">否</el-radio>
+      <el-form-item label="利息是否计算投放日" prop="isInterest">
+        <el-radio-group v-model="ruleForm.isInterest" :disabled="disabled || !isM1AOrM1B">
+          <el-radio :label="1">是</el-radio>
+          <el-radio :label="0">否</el-radio>
         </el-radio-group>
       </el-form-item>
-      <el-form-item label="还款方式 ">
-        <el-input v-model="ruleForm.desc" disabled placeholder="请输入还款方式 " />
+      <el-form-item label="还款方式 " prop="payBackMethod">
+        <el-select
+          v-model="ruleForm.payBackMethod"
+          placeholder="请选择还款方式"
+          clearable
+          style="width: 100%"
+          :disabled="disabled"
+        >
+          <el-option
+            v-for="item in constant.payBackMethod"
+            :key="item.code"
+            :label="item.name"
+            :value="item.code"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="回款方式" prop="payCollectionMethod">
+        <el-select
+          v-model="ruleForm.payCollectionMethod"
+          placeholder="请选择回款方式"
+          clearable
+          style="width: 100%"
+          disabled
+        >
+          <el-option
+            v-for="item in constant.payCollectionMethod"
+            :key="item.code"
+            :label="item.name"
+            :value="item.code"
+          >
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="转让通知书" prop="noticeAssignment">
+        <el-input v-model="ruleForm.noticeAssignment" disabled placeholder="请输入转让通知书" />
+      </el-form-item>
+      <el-form-item label="服务范围" class="two-form-item" prop="serviceArea">
+        <el-checkbox-group v-model="ruleForm.serviceArea">
+          <el-checkbox v-for="(item, index) in constant.serviceScope" :key="index" :label="item.code" :disabled="disabled" name="serviceArea">{{ item.name }}</el-checkbox>
+        </el-checkbox-group>
       </el-form-item>
     </el-form>
+
   </div>
 </template>
 
 <script>
+import { mapGetters } from 'vuex'
 export default {
   props: {
     disabled: {
       type: Boolean,
       default: false
+    },
+    detailsInfo: {
+      type: Object,
+      default: () => {}
     }
   },
   data() {
     return {
       ruleForm: {
-        desc: ''
-      }
+        isAccount: '',
+        isOccupation: '',
+        isRisk: '',
+        reportMethod: '',
+        financingRate: '',
+        longbankOverdueInterestRate: '',
+        longbankOtherExpenses: '',
+        financingTerm: '',
+        clearanceTerm: '',
+        longbankOverdueCompensationRate: '',
+        donorAccountName: '',
+        isInterest: '',
+        payBackMethod: '',
+        payCollectionMethod: '',
+        noticeAssignment: '',
+        serviceArea: []
+
+      },
+      rules: {
+        isAccount: [{ required: true, message: '请选择是否绑定账户', trigger: 'change' }],
+        isOccupation: [{ required: true, message: '请选择是否占用公司资金', trigger: 'change' }],
+        isRisk: [{ required: true, message: '请选择是否公司承险', trigger: 'change' }],
+        reportMethod: [{ required: true, message: '请选择征信上报方式', trigger: 'change' }],
+        financingRate: [{ required: true, message: '请输入融资利率', trigger: 'blur' }],
+        longbankOverdueInterestRate: [{ required: true, message: '请输入长银逾期利率', trigger: 'blur' }],
+        longbankOtherExpenses: [{ required: true, message: '请输入长银其它费用金额', trigger: 'blur' }],
+        financingTerm: [{ required: true, message: '请输入融资期限', trigger: 'blur' }],
+        clearanceTerm: [{ required: true, message: '请输入清分期限', trigger: 'blur' }],
+        longbankOverdueCompensationRate: [{ required: true, message: '请输入长银代偿利率', trigger: 'change' }],
+        donorAccountName: [{ required: true, message: '请输入出资方账户名称', trigger: 'blur' }],
+        isInterest: [{ required: true, message: '请选择利息是否计算投放日 ', trigger: 'change' }],
+        payBackMethod: [{ required: true, message: '请选择还款方式', trigger: 'change' }],
+        // payCollectionMethod: [{ required: true, message: '请选择回款方式', trigger: 'change' }],
+        // noticeAssignment: [{ required: true, message: '请输入转让通知书', trigger: 'blur' }],
+        serviceArea: [{ required: true, message: '请选择服务范围', trigger: 'change' }]
+      },
+      formKey: 1
+    }
+  },
+  computed: {
+    ...mapGetters(['constant']),
+    isM1AOrM1B() {
+      const codeList = ['M1A', 'M1B']
+      return codeList.includes(this.detailsInfo.businessTypeNo)
+    },
+    isM2AOrM2B() {
+      const codeList = ['M2A', 'M2B']
+      return codeList.includes(this.detailsInfo.businessTypeNo)
+    },
+    isM3A() {
+      const codeList = ['M3A']
+      return codeList.includes(this.detailsInfo.businessTypeNo)
+    }
+  },
+  watch: {
+    detailsInfo: {
+      handler(newV) {
+        if (newV && Object.keys(newV).length) {
+          const deepNewV = JSON.parse(JSON.stringify(newV))
+          for (const key in this.ruleForm) {
+            if (Object.hasOwnProperty.call(deepNewV, key)) {
+              this.ruleForm[key] = deepNewV[key]
+            }
+          }
+          this.formKey += 1
+        }
+      },
+      immediate: true
+      // deep: true
+    },
+    'ruleForm.financingTerm'(newV) {
+      const val = newV * 1 - 30 + 1
+      this.ruleForm.clearanceTerm = val < 0 ? 0 : val
+    }
+  },
+
+  created() {
+    this.$store.dispatch('getConstant', ['payCollectionMethod', 'payBackMethod', 'CreditStatus', 'serviceScope'])
+  },
+  methods: {
+    financingRateBlur() {
+      this.$emit('financingRateBlur', this.ruleForm.financingRate)
+    },
+    getParams(type) {
+      return new Promise((resolve, reject) => {
+        if (type === 'temp') {
+          resolve(this.ruleForm)
+        } else {
+          this.$refs.ruleForm.validate((valid) => {
+            if (valid) {
+              resolve(this.ruleForm)
+            } else {
+              reject()
+              return
+            }
+          })
+        }
+      })
     }
   }
 }

+ 269 - 0
src/views/capitalManage/components/RateConfig.vue

@@ -0,0 +1,269 @@
+<template>
+  <div class="rate-config">
+    <cy-info-title style="margin-top: 10px; margin-bottom: 10px">
+      <div>授信基本信息</div>
+      <div slot="right">
+        <el-button
+          type="primary"
+          @click="handlerOperate('add')"
+        >添加</el-button>
+      </div>
+    </cy-info-title>
+    <cy-comm-table ref="commTable" :columns="columns" :data="tableData" />
+  </div>
+</template>
+
+<script>
+import { getCompanyListApi } from '@/api/capitalManage/index'
+import { deduplicateArray } from '@/utils'
+export default {
+  props: {
+    disabled: {
+      type: Boolean,
+      default: false
+    },
+    detailsInfo: {
+      type: Object,
+      default: () => {}
+    },
+    financingRate: {
+      type: Number,
+      default: 0
+    }
+  },
+  data() {
+    return {
+      tableData: [],
+      companyList: [],
+      columns: [
+        {
+          label: '企业名称',
+          prop: 'enterpriseName',
+          ruleRequired: true,
+          render: (h, row, index) => {
+            const options = this.companyList.map(item => {
+              return <el-option label={item.name} value={item.name}></el-option>
+            })
+            return (
+              <el-select
+                disabled={this.disabled}
+                v-model={row.enterpriseName}
+                onChange={() => {
+                  this.companyChange(row, index)
+                }}
+                placeholder='请选择企业名称'
+              >
+                {options}
+              </el-select>
+            )
+          }
+        },
+        {
+          label: '统一社会信用代码',
+          render: (h, row) => {
+            return (
+              <el-input
+                v-model={row.socialCreditCode}
+                disabled
+                placeholder='请输入统一社会信用代码'
+              ></el-input>
+            )
+          }
+        },
+        {
+          label: '管理费率/年化(%)',
+          ruleRequired: true,
+          render: (h, row) => {
+            return (
+              <cy-number-input
+                decimalOptions={{ needy: true, digitsNo: 2 }}
+                v-model={row.managementRate}
+                disabled={this.disabled}
+                placeholder='请输入管理费率/年化(%)'
+                onBlur={() => {
+                  this.getComprehensiveQuotation()
+                }}
+              ></cy-number-input>
+            )
+          }
+        },
+        {
+          label: '科技服务费率/年化(%)',
+          ruleRequired: true,
+          render: (h, row) => {
+            return (
+              <cy-number-input
+                v-model={row.technologyServiceRate}
+                decimalOptions={{ needy: true, digitsNo: 2 }}
+                disabled={this.disabled}
+                placeholder='请输入科技服务费率/年化(%)'
+                onBlur={() => {
+                  this.getComprehensiveQuotation()
+                }}
+              ></cy-number-input>
+            )
+          }
+        },
+        {
+          label: '对外综合报价(%)',
+          render: (h, row) => {
+            return (
+              <el-input
+                v-model={row.comprehensiveQuotation}
+                disabled
+                placeholder='请输入科对外综合报价(%)'
+              ></el-input>
+            )
+          }
+        },
+        {
+          label: '操作',
+          render: (h, row) => {
+            const btnList = [
+              {
+                msg: '删除'
+              }
+            ]
+            const options = btnList.map(item => {
+              return (
+                <el-button
+                  type='text'
+                  onClick={() => {
+                    this.handlerOperate(item.category, row)
+                  }}
+                >
+                  {item.msg}
+                </el-button>
+              )
+            })
+            return <div>{options}</div>
+          },
+          width: 100
+        }
+      ]
+    }
+  },
+  computed: {
+    isM1AOrM1B() {
+      const codeList = ['M1A', 'M1B']
+      return codeList.includes(this.detailsInfo.businessTypeNo)
+    },
+    isM2AOrM2B() {
+      const codeList = ['M2A', 'M2B']
+      return codeList.includes(this.detailsInfo.businessTypeNo)
+    },
+    isM3A() {
+      const codeList = ['M3A']
+      return codeList.includes(this.detailsInfo.businessTypeNo)
+    }
+  },
+  watch: {
+    detailsInfo: {
+      handler(newV) {
+        if (newV && Object.keys(newV).length) {
+          const deepNewV = JSON.parse(JSON.stringify(newV))
+          this.tableData = deepNewV.enterpriseRateAllocations
+        }
+      },
+      immediate: true
+      // deep: true
+    },
+    financingRate: {
+      handler(newV) {
+        if (newV) {
+          this.getComprehensiveQuotation()
+        }
+      },
+      immediate: true
+    }
+  },
+  created() {
+    this.getCompanyList()
+  },
+  methods: {
+    getCompanyList() {
+      const { id } = this.$route.params
+      getCompanyListApi({ id }).then(({ data }) => {
+        this.companyList = data
+      })
+    },
+    handlerOperate(type) {
+      if (type === 'add') {
+        const obj = {
+          enterpriseName: '',
+          socialCreditCode: '',
+          managementRate: '',
+          technologyServiceRate: 0.5,
+          comprehensiveQuotation: '',
+          id: ''
+        }
+        this.tableData.push(JSON.parse(JSON.stringify(obj)))
+        this.$nextTick(() => {
+          this.getComprehensiveQuotation()
+        })
+      }
+    },
+    companyChange(row, index) {
+      console.log(row, index)
+      const obj = this.companyList.find(
+        item => item.name === row.enterpriseName
+      )
+      this.tableData[index].socialCreditCode = obj.code
+    },
+    getComprehensiveQuotation() {
+      this.tableData = this.tableData.map(item => {
+        if (this.isM1AOrM1B) {
+          item.comprehensiveQuotation = (
+            Number(item.managementRate) +
+            Number(item.technologyServiceRate) +
+            Number(this.financingRate)
+          ).toFixed(2)
+        }
+        if (this.isM2AOrM2B || this.isM3A) {
+          item.comprehensiveQuotation = (
+            Number(item.managementRate) +
+            Number(item.technologyServiceRate) +
+            Number(this.detailsInfo.bankRate)
+          ).toFixed(2)
+        }
+        return item
+      })
+    },
+    getParams(type) {
+      this.newTableData = deduplicateArray(this.tableData, 'enterpriseName')
+      return new Promise((resolve, reject) => {
+        if (type === 'temp') {
+          resolve(this.tableData)
+        } else {
+          for (let i = 0; i < this.tableData.length; i++) {
+            const { enterpriseName, managementRate, technologyServiceRate } =
+              this.tableData[i]
+            if (!enterpriseName) {
+              this.$message.warning('请输入企业名称重复')
+              reject()
+              return
+            }
+            if (!managementRate) {
+              this.$message.warning('请输入管理费率')
+              reject()
+              return
+            }
+            if (!technologyServiceRate) {
+              this.$message.warning('请输入科技服务费率')
+              reject()
+              return
+            }
+          }
+          if (this.newTableData.length < this.tableData.length) {
+            this.$message.warning('企业名称重复')
+            reject()
+          }
+          resolve(this.tableData)
+        }
+      })
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped></style>

+ 73 - 11
src/views/capitalManage/details.vue

@@ -1,28 +1,90 @@
 <template>
   <div class="capital-manage-details">
-    <basic-info />
-    <credit-basic-info></credit-basic-info>
-    <credit-info></credit-info>
-    <letters-info></letters-info>
+    <basic-info :details-info="detailsInfo" />
+    <credit-basic-info :details-info="detailsInfo"></credit-basic-info>
+    <credit-info
+      ref="creditInfoRef"
+      :details-info="detailsInfo"
+      @capitalFinancingTermBlur="capitalFinancingTermBlur"
+    ></credit-info>
+    <letters-info
+      ref="lettersInfoRef"
+      :details-info="detailsInfo"
+      @financingRateBlur="financingRateBlur"
+    ></letters-info>
+    <rate-config
+      ref="rateConfigRef"
+      :details-info="detailsInfo"
+      :financing-rate="financingRate || detailsInfo.financingRate"
+    ></rate-config>
     <div class="submit-btn">
-      <el-button>关闭</el-button>
-      <el-button type="primary">确定</el-button>
+      <el-button @click="$router.go(-1)">关闭</el-button>
+      <el-button type="primary" @click="submit('temp')">暂存</el-button>
+      <el-button type="primary" @click="submit('submit')">确定</el-button>
     </div>
   </div>
 </template>
 
 <script>
+import { getDetails, submitData } from '@/api/capitalManage/index'
 export default {
   components: {
     BasicInfo: () => import('./components/BasicInfo'),
     CreditBasicInfo: () => import('./components/CreditBasicInfo.vue'),
     CreditInfo: () => import('./components/CreditInfo.vue'),
-    LettersInfo: () => import('./components/LettersInfo.vue')
+    LettersInfo: () => import('./components/LettersInfo.vue'),
+    RateConfig: () => import('./components/RateConfig.vue')
+  },
+  data() {
+    return {
+      detailsInfo: {},
+      financingRate: ''
+    }
+  },
+  created() {
+    this.getDetailsList()
+  },
+  methods: {
+    getDetailsList() {
+      const { id } = this.$route.params
+      getDetails({ id }).then(({ data }) => {
+        this.detailsInfo = data
+      })
+    },
+    capitalFinancingTermBlur(val) {
+      if (this.detailsInfo.businessTypeNo === 'M3A') {
+        this.$refs.lettersInfoRef.ruleForm.financingTerm = val
+      } else {
+        this.$refs.lettersInfoRef.ruleForm.financingTerm =
+          val * 1 - 30 < 0 ? 0 : val * 1 - 30
+      }
+    },
+    financingRateBlur(val) {
+      this.financingRate = Number(val)
+    },
+    async  submit(type) {
+      const creditInfo = await this.$refs.creditInfoRef.getParams(type)
+      const lettersInfo = await this.$refs.lettersInfoRef.getParams(type)
+      const rateConfig = await this.$refs.rateConfigRef.getParams(type)
+      const params = {
+        Loading: true,
+        ...this.detailsInfo,
+        ...creditInfo,
+        ...lettersInfo,
+        enterpriseRateAllocations: rateConfig,
+        flag: type === 'temp' ? 1 : 0
+      }
+      submitData(params).then(() => {
+        if (type === 'temp') {
+          this.$message.success('暂存成功')
+        } else {
+          this.$message.success('提交成功')
+        }
+        this.$router.go(-1)
+      })
+    }
   }
 }
-
 </script>
 
-<style lang="scss" scoped>
-
-</style>
+<style lang="scss" scoped></style>

+ 112 - 38
src/views/capitalManage/mainContent.vue

@@ -3,6 +3,54 @@
     <el-tabs v-model="activeName" type="border-card" @tab-click="handleTabClick">
       <el-tab-pane label="待处理" name="pending"> </el-tab-pane>
       <el-tab-pane label="全部" name="all"></el-tab-pane>
+      <div class="search">
+        <div class="left"></div>
+        <div class="right">
+          <div>
+            <el-input v-model="search.keyword" style="width: 250px" placeholder="请输入资方名称 /授信编号" clearable />
+          </div>
+          <div>
+            <el-select
+              v-model="search.capitalStatus"
+              placeholder="请选择资方状态"
+              clearable
+              style="width: 100%"
+            >
+              <el-option
+                v-for="item in constant.capitalStatus"
+                :key="item.code"
+                :label="item.name"
+                :value="item.code"
+              >
+              </el-option>
+            </el-select>
+          </div>
+          <div>
+            <el-date-picker
+              v-model="search.creditStartDate"
+              type="date"
+              placeholder="请选择授信生效日"
+              value-format="yyyy-MM-dd"
+              clearable
+            >
+            </el-date-picker>
+          </div>
+          <div>
+            <el-date-picker
+              v-model="search.creditEndDate"
+              type="date"
+              placeholder="请选择授信到期"
+              value-format="yyyy-MM-dd"
+              clearable
+            >
+            </el-date-picker>
+          </div>
+          <div class="leftBtn">
+            <el-button type="primary" @click="fetchData">查询</el-button>
+            <el-button type="primary" @click="fetchData('update')">实时更新</el-button>
+          </div>
+        </div>
+      </div>
       <cy-comm-table
         ref="commTable"
         v-loading="loading"
@@ -19,17 +67,24 @@
 
 <script>
 import { mapGetters } from 'vuex'
+import { getList } from '@/api/capitalManage/index'
 export default {
   name: 'CapitalManage',
   data() {
     return {
+      search: {
+        keyword: '',
+        capitalStatus: '',
+        creditStartDate: '',
+        creditEndDate: ''
+      },
       total: 0,
       loading: false,
       activeName: 'pending',
-      tableData: [{ supplierName: '13123123123123' }],
+      tableData: [],
       tableOptions: {
-        maxHeight: 'calc(100vh - 310px)',
-        height: 'calc(100vh - 310px)'
+        maxHeight: 'calc(100vh - 410px)',
+        height: 'calc(100vh - 410px)'
       },
       columns: [
         {
@@ -38,84 +93,82 @@ export default {
         },
         {
           label: '授信编号',
-          prop: 'supplierName',
+          prop: 'creditNo',
           showTooltip: true
         },
         {
           label: '资方名称',
-          prop: 'supplierName',
+          prop: 'capitalName',
           showTooltip: true
         },
         {
           label: '机构类型',
-          prop: 'supplierName',
+          prop: 'institutionType',
           showTooltip: true
         },
         {
           label: '业务类型',
-          prop: 'supplierName',
+          prop: 'businessType',
           showTooltip: true
         },
         {
           label: '业务类型编号',
-          prop: 'supplierName',
+          prop: 'businessTypeNo',
           showTooltip: true,
           width: '120'
         },
         {
           label: '客户经理',
-          prop: 'supplierName',
-          showTooltip: true
-        },
-        {
-          label: '授信编号',
-          prop: 'supplierName',
+          prop: 'belongName',
           showTooltip: true
         },
         {
           label: '部门',
-          prop: 'supplierName',
+          prop: 'orgName',
           showTooltip: true
         },
         {
           label: '授信金额(元)',
-          prop: 'supplierName',
+          prop: 'creditAmount',
           showTooltip: true,
-          width: '120'
+          width: '120',
+          type: 'num'
         },
         {
           label: '用信金额(元)',
-          prop: 'supplierName',
+          prop: 'amount',
           showTooltip: true,
-          width: '120'
+          width: '120',
+          type: 'num'
         },
         {
           label: '可用余额(元)',
-          prop: 'supplierName',
+          prop: 'availableBalance',
           showTooltip: true,
-          width: '120'
+          width: '120',
+          type: 'num'
         },
         {
           label: '授信生效日',
-          prop: 'supplierName',
+          prop: 'creditStartDate',
           showTooltip: true,
           width: '120'
         },
         {
           label: '授信到期日',
-          prop: 'supplierName',
+          prop: 'creditEndDate',
           showTooltip: true,
           width: '120'
         },
         {
           label: '授信状态',
-          prop: 'supplierName',
+          prop: 'creditStatus',
           showTooltip: true
         },
 
         {
           label: '资方状态',
-          prop: 'supplierName',
+          prop: 'capitalStatus',
           showTooltip: true
         },
         {
@@ -125,23 +178,23 @@ export default {
               {
                 msg: '修改',
                 icon: 'iconfont icon-xiugai',
-                power: '',
-                tabPower: ['pending'],
+                power: 'capitalUpdate',
+                tabPower: ['all', 'pending'],
+                rowPower: ['待生效', '生效'],
                 category: 'edit'
               },
               {
                 msg: '查看',
                 icon: 'iconfont icon-Magnifier',
-                power: '',
+                power: 'capitalView',
                 tabPower: ['all', 'pending'],
-                // rowPower: [],
+                rowPower: [],
                 category: 'see'
               }
             ]
             const options = btnList.map(item => {
-              //  this.tablePower({ item, tab: this.activeName, row }) &&
               return (
-                <el-tooltip class='item' effect='dark' content={item.msg} placement='top'>
+                this.tablePower({ item, tab: this.activeName, row }) && <el-tooltip class='item' effect='dark' content={item.msg} placement='top'>
                   <span class='table-icon-box' v-power={item.power}>
                     <i class={item.icon} onClick={() => { this.handlerOperate(item.category, row) }}></i>
                   </span>
@@ -160,8 +213,8 @@ export default {
     tablePower() {
       return ({ item, tab, row }) => {
         const { tabPower, rowPower } = item
-        if (rowPower) {
-          if (tabPower.includes(tab) && rowPower.includes(row.statusName)) {
+        if (rowPower && rowPower.length) {
+          if (tabPower.includes(tab) && rowPower.includes(row.capitalStatus)) {
             return true
           }
         } else {
@@ -172,20 +225,41 @@ export default {
       }
     }
   },
+  created() {
+    this.$store.dispatch('getConstant', ['capitalStatus'])
+    this.fetchData()
+  },
   methods: {
-    fetchData() {
-
+    fetchData(type) {
+      this.loading = true
+      if (type === 'search') {
+        this.page = 1
+        this.size = 10
+        this.$refs.commTable.initPage()
+      }
+      const params = {
+        ...this.search,
+        page: this.page || 1,
+        rows: this.size || 10,
+        flag: this.activeName,
+        realTimeUpdateFlag: type === 'update'
+      }
+      getList(params).then(({ rows, records }) => {
+        this.tableData = rows
+        this.total = records
+        this.loading = false
+      })
     },
     handleTabClick(tab) {
       this.activeName = tab.name
       this.page = 1
       this.size = 10
-      this.fetchData(tab.name)
+      this.fetchData()
     },
-    handlerOperate(type) {
+    handlerOperate(type, row) {
       this.$router.push({
         name: 'CapitalManageDetails',
-        params: { id: '1231231' },
+        params: { id: row.id },
         query: {
           type
         }

+ 3 - 3
src/views/enterpriseManage/eSign/index.vue

@@ -13,7 +13,7 @@
             </div>
           </div>
           <div class="right">
-            <div style="margin-bottom: -5px;">
+            <div>
               <el-select
                 v-model="search.status"
                 placeholder="请选择认证状态"
@@ -21,10 +21,10 @@
                 style="width: 100%"
               >
                 <el-option
-                  v-for="item in [[
+                  v-for="item in [
                     { name: '未认证', id: 0 },
                     { name: '已认证', id: 1 }
-                  ]]"
+                  ]"
                   :key="item.id"
                   :label="item.name"
                   :value="item.id"

+ 23 - 0
src/views/monitorManage/bindAccount/index.vue

@@ -0,0 +1,23 @@
+<template>
+  <div class="bind-account">
+    <router-view />
+    <template v-if="!$route.params.id">
+      <main-content></main-content>
+    </template>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'SupplierManage',
+  components: {
+    MainContent: () => import('./mainContent')
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.bind-account {
+
+}
+</style>

+ 145 - 0
src/views/monitorManage/bindAccount/mainContent.vue

@@ -0,0 +1,145 @@
+<template>
+  <div class="bindAccount">
+    <div class="search">
+      <div class="left"></div>
+      <div class="right">
+        <div>
+          <el-input
+            v-model="search.keyword"
+            style="width: 250px"
+            placeholder="请输入资方名称 /授信编号"
+            clearable
+          />
+        </div>
+        <div>
+          <el-select
+            v-model="search.capitalStatus"
+            placeholder="请选择资方状态"
+            clearable
+            style="width: 100%"
+          >
+            <el-option
+              v-for="item in constant.capitalStatus"
+              :key="item.code"
+              :label="item.name"
+              :value="item.code"
+            >
+            </el-option>
+          </el-select>
+        </div>
+        <div>
+          <el-date-picker
+            v-model="search.creditStartDate"
+            type="date"
+            placeholder="请选择授信生效日"
+            value-format="yyyy-MM-dd"
+            clearable
+          >
+          </el-date-picker>
+        </div>
+        <div>
+          <el-date-picker
+            v-model="search.creditEndDate"
+            type="date"
+            placeholder="请选择授信到期"
+            value-format="yyyy-MM-dd"
+            clearable
+          >
+          </el-date-picker>
+        </div>
+        <div class="leftBtn">
+          <el-button type="primary" @click="fetchData">查询</el-button>
+        </div>
+      </div>
+    </div>
+    <cy-comm-table
+      ref="commTable"
+      v-loading="loading"
+      parent-component="CapitalManage"
+      :columns="columns"
+      :data="tableData"
+      :count="total"
+      :table-options="{
+        maxHeight: 'calc(100vh - 410px)',
+        height: 'calc(100vh - 410px)'
+      }"
+    />
+  </div>
+</template>
+
+<script>
+import { mapGetters } from 'vuex'
+export default {
+  data() {
+    return {
+      search: {},
+      total: 0,
+      tableData: [],
+      columns: [
+        {
+          label: '序号',
+          index: true
+        },
+        {
+          label: '平台',
+          prop: 'creditNo',
+          showTooltip: true
+        },
+        {
+          label: '店铺ID',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '店铺名称',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '绑定账户名称',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '绑定账户账号',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '账户绑定状态',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '修正原因',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '操作人',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '操作时间',
+          prop: 'capitalName',
+          showTooltip: true
+        },
+        {
+          label: '操作',
+          prop: 'capitalName',
+          showTooltip: true
+        }
+      ]
+    }
+  },
+  computed: {
+    ...mapGetters(['constant'])
+  },
+  created() {
+    this.$store.dispatch('getConstant', ['capitalStatus'])
+  }
+}
+</script>
+
+<style lang="scss" scoped></style>

+ 0 - 0
src/views/monitorManage/blacklist/index.vue