Prechádzať zdrojové kódy

Merge branch 'master' of http://www.baoxianzhanggui.com:8090/sxzgd/vue-insagent-pc

lihongxiao 3 rokov pred
rodič
commit
7ea8c66f81
1 zmenil súbory, kde vykonal 6052 pridanie a 0 odobranie
  1. 6052 0
      src/views/Letter/Letter.vue

+ 6052 - 0
src/views/Letter/Letter.vue

@@ -0,0 +1,6052 @@
+<template>
+  <div class="body">
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c">
+          <img src="../../../src/icon/insurance.png" alt class="icon-img" />
+          <span style="margin-left:10px;">归属信息</span>
+        </div>
+      </div>
+      <el-form class="demo-ruleForm" :model="userform" ref="userform" label-width="130px" size="small"
+        style="margin-top:30px;" disabled>
+        <el-row>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="业务员:">
+              <el-input v-model="userform.name"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="工号:">
+              <el-input v-model="userform.id" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="工号类型:">
+              <el-select v-model="userform.usertype">
+                <el-option label="业务员" value="A"></el-option>
+                <el-option label="代理人" value="B"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="归属:">
+              <el-input v-model="deptName"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c">
+          <img src="../../../src/icon/insurance.png" alt class="icon-img" />
+          <span style="margin-left: 10px">快速查询</span>
+        </div>
+        <el-button size="small" type="warning" @click="continuousquery()">
+          <i class="el-icon-search" style="margin-right: 1px"></i>
+          续保查询
+        </el-button>
+      </div>
+      <el-form class="demo-ruleForm" :model="attributionform" ref="continuousform" label-width="130px" size="small"
+        style="margin-top: 30px">
+        <el-row>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="保险公司:" prop="companyId">
+              <el-select v-model="attributionform.companyId" placeholder="请选择保险公司" @change="continuousChange">
+                <el-option v-for="(item, index) in continuousCompanyList" :key="index" :label="item.namesimple"
+                  :value="item.id"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell"
+            v-for="(domain, index) in attributionform.configure" :key="domain.index">
+            <el-form-item :label="domain.label + ':'" :prop="'configure.' + index + '.value'" :rules="{
+              required: true,
+              message: domain.label + '不能为空',
+              trigger: 'blur',
+            }">
+              <el-input v-model="domain.value" :type="domain.type"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c color" id="Car">
+          <img src="../../../src/icon/car.png" alt class="icon-img" />
+          <span style="margin-left:10px;">车辆信息</span>
+        </div>
+        <el-button size="small" type="warning" @click="uploadcardialogVisible = true">
+          <i class="el-icon-camera-solid" style="margin-right:1px;"></i>
+          证件识别
+        </el-button>
+      </div>
+      <div class="flex j-c a-c" style="margin-bottom: 20px;">
+        <div class="csstool">
+          <span>是否已上牌照</span>
+          <el-switch v-model="licenseplate" active-color="#ee7000"></el-switch>
+        </div>
+        <div class="csstool">
+          <span>是否过户车</span>
+          <el-switch @change="transferFlagChange" v-model="carInfo.transferFlag" active-color="#ee7000"></el-switch>
+        </div>
+      </div>
+      <el-form class="demo-ruleForm" :model="carInfo" ref="carInfo" :rules="rules" label-width="130px" size="small ">
+        <el-row style="flex-wrap: wrap; display: flex;">
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="车牌:" :prop="licenseplate ? 'licenseNo' : ''">
+              <el-input v-model="carInfo.licenseNo" placeholder="请输入车牌号" :disabled="!licenseplate"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="车辆识别代码:" prop="frameNo">
+              <el-input placeholder="请输入车辆识别码" v-model="carInfo.frameNo" maxlength="17" type="text" show-word-limit>
+                <el-button slot="append" icon="el-icon-search" @click="toChooseVin(carInfo.frameNo)"
+                  style="color: #ee6f00ce;"></el-button>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="品牌型号:" prop="modelcname">
+              <el-input v-model="carInfo.modelcname" placeholder="请输入品牌型号" type="text">
+                <el-button slot="append" icon="el-icon-search" @click="toChooseVehicleType(carInfo.modelcname)"
+                  style="color: #ee6f00ce;"></el-button>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="发动机号:" prop="engineNo">
+              <el-input onkeyup="value=value.replace(/[^\w-]/ig,'')" v-model="carInfo.engineNo"
+                placeholder="请输入发动机号"></el-input>
+            </el-form-item>
+          </el-col>
+
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="年款:" prop="caryear">
+              <el-input onkeyup="value=value.replace(/\D/g,'')" v-model="carInfo.caryear" placeholder="请输入年款">
+
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="座位数:" prop="seatCount">
+              <el-input onkeyup="value=value.replace(/\D/g,'')" v-model="carInfo.seatCount" placeholder="请输入座位数">
+                <el-button slot="append">座</el-button></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="排量:" prop="enginedesc">
+              <el-input v-model="carInfo.enginedesc" placeholder="请输入排量">
+                <el-button slot="append">升(L)</el-button>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="功率:" prop="powerScale">
+              <el-input v-model="carInfo.powerScale" placeholder="请输入功率">
+                <el-button slot="append">千瓦(KW)</el-button>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="新车购置价:" prop="purchasePrice">
+              <el-input onkeyup="value=value.replace(/\D/g,'')" v-model="carInfo.purchasePrice" placeholder="请输入新车购置价">
+                <el-button slot="append">元</el-button>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="使用性质:" prop="carnature">
+              <el-select v-model="carInfo.carnature" placeholder="请选择使用性质">
+                <el-option :label="item.label" :value="item.id" v-for="(item, index) in carnatureList"
+                  :key="index"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="车辆类型:" prop="cartype">
+              <el-select v-model="carInfo.cartype" placeholder="请选择车辆种类" filterable clearable>
+                <el-option :label="item.dictValue + item.dictTag" :value="item.dictValue"
+                  v-for="(item, index) in trafficManagementVehicleTypeoptions" :key="index"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="车辆种类:" prop="cimodelclass">
+              <el-select v-model="carInfo.cimodelclass" placeholder="请选择车辆种类" clearable>
+                <el-option :label="item.dictTag" :value="item.dictValue" v-for="(item, index) in vehicleTypeoptions"
+                  :key="index"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="能源种类:" prop="energyType">
+              <el-select v-model="carInfo.energyType" placeholder="请选择能源种类">
+                <el-option :label="item.dictTag" :value="item.dictValue" v-for="(item, index) in energyTypeoptions"
+                  :key="index"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="注册日期:" prop="registerDate">
+              <el-date-picker v-dateFormat v-model="carInfo.registerDate" :picker-options="pickerOptions"
+                value-format="yyyy-MM-dd" type="date" placeholder="选择注册日期" placement="bottom-start"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="发证日期:" prop="issueDate">
+              <el-date-picker v-dateFormat v-model="carInfo.issueDate" :picker-options="issueDateOptions" type="date"
+                placeholder="选择发证日期" value-format="yyyy-MM-dd" placement="bottom-start"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell" v-if="transferDateShow">
+            <el-form-item label="转移登记日期:" prop="transferDate">
+              <el-date-picker v-dateFormat v-model="carInfo.transferDate" :picker-options="pickerOptions" type="date"
+                placeholder="选择日期" value-format="yyyy-MM-dd" placement="bottom-start"></el-date-picker>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c color" id="CheZhu">
+          <img src="../../../src/icon/chezhu.png" alt class="icon-img" />
+          <span style="margin-left:10px;">车主信息</span>
+        </div>
+        <el-button size="small" type="warning" @click="uploaduser(2)">
+          <i class="el-icon-camera-solid" style="margin-right:4px;"></i>证件识别
+        </el-button>
+      </div>
+      <el-form class="demo-ruleForm" :model="ownerInfo" ref="ownerInfo" :rules="rules" label-width="130px" size="small"
+        style="margin-top:30px;">
+        <el-row style="flex-wrap: wrap; display: flex;">
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="车主姓名:" prop="name">
+              <el-input v-model="ownerInfo.name" placeholder="请输入车主姓名"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="证件类型:" prop="identifyType">
+              <el-select v-model="ownerInfo.identifyType" placeholder="身份证" disabled>
+                <el-option label="身份证" value="01"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="证件号码:" prop="identifyNumber">
+              <el-input v-model="ownerInfo.identifyNumber" placeholder="请输入证件号码" type="text" maxlength="18"
+                show-word-limit @blur="identifyblur('ownerInfo')"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="年龄:" prop="age">
+              <el-input v-model="ownerInfo.age" placeholder="请输入年龄" type="text" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="车主手机号:" prop="mobile">
+              <el-input v-model="ownerInfo.mobile" placeholder="请输入车主手机号" maxlength="11" type="text"
+                show-word-limit></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="省市区:">
+              <el-cascader v-model="selectedOptions1" :options="areaOptions"
+                @change="event => areahandleChange(event, 'ownerInfo')"></el-cascader>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="地址:" prop="addr">
+              <el-input v-model="ownerInfo.addr" placeholder="请输入地址" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="有效期起期:" prop="identifyValidDate">
+              <el-date-picker v-dateFormat v-model="ownerInfo.identifyValidDate" value-format="yyyy-MM-dd"
+                :picker-options="pickerOptions" type="date" placeholder="选择注册日期"
+                placement="bottom-start"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="有效期止期:" prop="identifyValidEndDate">
+              <el-date-picker v-dateFormat v-model="ownerInfo.identifyValidEndDate" type="date" value-format="yyyy-MM-dd"
+                placeholder="选择有效期" placement="bottom-start" style="width: calc(100% - 40px);"></el-date-picker>
+              <div class="insure-long-term" @click="insureLongterm('ownerInfo')">长期</div>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="电子邮箱:" prop="email">
+              <el-input v-model="ownerInfo.email" placeholder="请输入电子邮箱"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c">
+          <img src="../../../src/icon/toubaoren.png" alt class="icon-img" />
+          <span style="margin-left:10px;">投保人信息</span>
+        </div>
+        <div class="flex a-c j-c">
+          <div style="font-size:12px;margin:0 10px;">
+            同车主:
+            <el-switch v-model="tbczcarShow" active-color="#ee7000" @change="tbczcarShowChange()"></el-switch>
+          </div>
+          <el-button size="small" type="warning" @click="uploaduser(3)">
+            <i class="el-icon-camera-solid" style="margin-right:4px;"></i>
+            证件识别
+          </el-button>
+        </div>
+      </div>
+      <el-form v-show="!tbczcarShow" class="demo-ruleForm" :model="policyHolderInfo" ref="policyHolderInfo" :rules="rules"
+        label-width="130px" size="small " style="margin-top:30px;">
+        <el-row style="flex-wrap: wrap; display: flex;">
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="投保人姓名:" prop="name">
+              <el-input v-model="policyHolderInfo.name" placeholder="请输入投保人姓名"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="证件类型:" prop="identifyType">
+              <el-select v-model="policyHolderInfo.identifyType" placeholder="身份证" disabled>
+                <el-option label="身份证" value="01"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="证件号码:" prop="identifyNumber">
+              <el-input v-model="policyHolderInfo.identifyNumber" placeholder="请输入证件号码" type="text" maxlength="18"
+                show-word-limit @blur="identifyblur('policyHolderInfo')"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="年龄:" prop="age">
+              <el-input v-model="policyHolderInfo.age" placeholder="请输入年龄" type="text" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="投保人手机号:" prop="mobile">
+              <el-input v-model="policyHolderInfo.mobile" placeholder="请输入投保人手机号" maxlength="11" type="text"
+                show-word-limit></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="省市区:">
+              <el-cascader v-model="selectedOptions2" :options="areaOptions"
+                @change="event => areahandleChange(event, 'policyHolderInfo')"></el-cascader>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="地址:" prop="addr">
+              <el-input v-model="policyHolderInfo.addr" placeholder="请输入地址" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="有效期起期:" prop="identifyValidDate">
+              <el-date-picker v-dateFormat v-model="policyHolderInfo.identifyValidDate" value-format="yyyy-MM-dd"
+                :picker-options="pickerOptions" type="date" placeholder="选择有效期" placement="bottom-start"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="有效期止期:" prop="identifyValidEndDate">
+              <el-date-picker v-dateFormat v-model="policyHolderInfo.identifyValidEndDate" type="date"
+                value-format="yyyy-MM-dd" placeholder="选择有效期" placement="bottom-start"
+                style="width: calc(100% - 40px);"></el-date-picker>
+              <div class="insure-long-term" @click="insureLongterm('policyHolderInfo')">长期</div>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="电子邮箱:" prop="email">
+              <el-input v-model="policyHolderInfo.email" placeholder="请输入电子邮箱"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c">
+          <img src="../../../src/icon/toubaoren.png" alt class="icon-img" />
+          <span style="margin-left:10px;">被保人信息</span>
+        </div>
+        <div class="flex j-s a-c">
+          <div style="font-size:12px;margin:0 10px;">
+            同投保人:
+            <el-switch v-model="bbtbcarShow" active-color="#ee7000" @change="bbtbcarShowChange()"></el-switch>
+          </div>
+          <div style="font-size:12px;margin:0 10px;">
+            同车主:
+            <el-switch v-model="bbczcarShow" active-color="#ee7000" @change="bbczcarShowChange()"></el-switch>
+          </div>
+          <el-button size="small" type="warning" @click="uploaduser(4)">
+            <i class="el-icon-camera-solid" style="margin-right:4px;"></i>
+            证件识别
+          </el-button>
+        </div>
+      </div>
+      <el-form v-show="!bbtbcarShow && !bbczcarShow" class="demo-ruleForm" :model="insuredPersonInfo"
+        ref="insuredPersonInfo" :rules="rules" label-width="130px" size="small" style="margin-top:30px;">
+        <el-row style="flex-wrap: wrap; display: flex;">
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="被保人姓名:" prop="name">
+              <el-input v-model="insuredPersonInfo.name" placeholder="请输入被保人姓名"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="证件类型:" prop="identifyType">
+              <el-select v-model="insuredPersonInfo.identifyType" placeholder="身份证" disabled>
+                <el-option label="身份证" value="01"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="证件号码:" prop="identifyNumber">
+              <el-input v-model="insuredPersonInfo.identifyNumber" placeholder="请输入证件号码" type="text" maxlength="18"
+                show-word-limit @blur="identifyblur('insuredPersonInfo')"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="年龄:" prop="age">
+              <el-input v-model="insuredPersonInfo.age" placeholder="请输入年龄" type="text" disabled></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="被保人手机号:" prop="mobile">
+              <el-input v-model="insuredPersonInfo.mobile" placeholder="请输入被保人手机号" maxlength="11" type="text"
+                show-word-limit></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="省市区:">
+              <el-cascader v-model="selectedOptions3" :options="areaOptions"
+                @change="event => areahandleChange(event, 'insuredPersonInfo')"></el-cascader>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="地址:" prop="addr">
+              <el-input v-model="insuredPersonInfo.addr" placeholder="请输入地址" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="有效期起期:" prop="identifyValidDate">
+              <el-date-picker v-dateFormat v-model="insuredPersonInfo.identifyValidDate" value-format="yyyy-MM-dd"
+                :picker-options="pickerOptions" type="date" placeholder="选择有效期" placement="bottom-start"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="有效期止期:" prop="identifyValidEndDate">
+              <el-date-picker v-dateFormat v-model="insuredPersonInfo.identifyValidEndDate" type="date"
+                value-format="yyyy-MM-dd" placeholder="选择有效期" placement="bottom-start"
+                style="width: calc(100% - 40px);"></el-date-picker>
+              <div class="insure-long-term" @click="insureLongterm('insuredPersonInfo')">长期</div>
+            </el-form-item>
+          </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="电子邮箱:" prop="email">
+              <el-input v-model="insuredPersonInfo.email" placeholder="请输入电子邮箱"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c color" id="insurance">
+          <img src="../../../src/icon/salesman.png" alt class="icon-img" />
+          <span style="margin-left:10px;">投保信息</span>
+        </div>
+      </div>
+      <el-form class="back demo-ruleForm" :inline="true" :model="Carinsurance" label-width="150px" size="small"
+        style="padding:20px;">
+        <div class="flex j-start a-c">
+          <div class="flex j-c a-start">
+            <el-checkbox class="checkbox" v-model="jqchecked" @change="jqcheckedChange"></el-checkbox>
+            <div class="flex f-c a-c">
+              <el-form-item label="交强险起保日期:" prop="identifyNumber">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="jqstartDate" @change="jqChange"
+                  type="datetime" placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
+              <el-form-item label="交强险终保日期:" prop="identifyNumber">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="jqendDate" type="datetime"
+                  placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
+            </div>
+          </div>
+          <div class="flex f-c a-c" style="margin: 0 20px;">
+            <span style="font-size:12px;">同步</span>
+            <svg data-v-7ff62e07 t="1595555843123" viewBox="0 0 1505 1024" version="1.1"
+              xmlns="http://www.w3.org/2000/svg" p-id="7086" width="100" height="100" class="icon">
+              <path data-v-7ff62e07
+                d="M227.83021864 224.558766h537.088236l0.906223-176.562471c0.151037-42.743524 51.956792-64.039767 82.16423-33.83233L1311.06892164 478.30124c18.879648 18.879648 18.728611 49.38916-0.151037 68.268808L843.30675464 1009.952137c-30.509512 30.207437-82.315267 8.458082-82.013192-34.436479l0.755186-170.974095H227.83021864c-26.28047 0-47.425677-21.296243-47.425676-47.425676V271.984443C180.25350564 245.703972 201.54974864 224.558766 227.83021864 224.558766z"
+                p-id="7087" fill="#f05f08" @click="synchronization" />
+            </svg>
+          </div>
+          <div class="flex j-c a-start">
+            <el-checkbox class="checkbox" v-model="sychecked" @change="sycheckedChange"></el-checkbox>
+            <div class="flex f-c a-c">
+              <el-form-item label="商业险起保日期:" prop="name">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="systartDate" @change="syChange"
+                  type="datetime" placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
+              <el-form-item label="商业险终保日期:" prop="name">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="syendDate" type="datetime"
+                  placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
+            </div>
+          </div>
+        </div>
+      </el-form>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c back">
+        <div class="flex j-s a-c color" id="more">
+          <img src="../../../src/icon/more.png" alt class="icon-img" />
+          <span style="margin-left:10px;">险别选择</span>
+        </div>
+      </div>
+      <div class="flex f-c more">
+        <div class="flex j-s a-c more-title back">
+          <div style="width:590px;padding-left:100px;" class="flex j-s a-c">
+            <span>险别</span>
+            <span>保额(元)</span>
+          </div>
+        </div>
+        <div class="flex a-c more-data back" v-for="(insureitem, insureindex) in insureList" :key="insureindex">
+          <div style="width:700px;padding-left: 100px;" class="flex j-s a-c">
+            <div style="width:auto;">
+              <span style="text-align:center;">{{ insureitem.kindName }}<el-input
+                  v-show="insureitem.kindCode == 'D4' || insureitem.kindCode == 'MJ4' || insureitem.kindCode == 'SY_FJ_YBW2'"
+                  v-model="sumseatCount" style="width:40px;margin:0 5px;" size="small" placeholder
+                  disabled></el-input><span
+                  v-show="insureitem.kindCode == 'D4' || insureitem.kindCode == 'MJ4' || insureitem.kindCode == 'SY_FJ_YBW2'">座</span>
+              </span>
+            </div>
+            <el-select filterable v-model="insureitem.amount" placeholder="请选择" @change="insureitemChange" size="small"
+              style="width: 300px;">
+              <el-option :label="item.label" :value="item.value" v-for="(item, index) in insureitem.amtList"
+                :key="index"></el-option>
+            </el-select>
+          </div>
+
+        </div>
+        <!-- <div style="margin:0 auto;font-size: 14px;cursor: pointer;margin-top:15px;">
+          <span v-show="insureMore" @click="selectMore(insureList.length)">
+            查看更多
+            <i class="el-icon-arrow-down"></i>
+          </span>
+          <span v-show="!insureMore" @click="packup()">
+            收起
+            <i class="el-icon-arrow-up"></i>
+          </span>
+        </div> -->
+      </div>
+    </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c color" id="company">
+          <img src="../../../src/icon/company.png" alt class="icon-img" />
+          <span style="margin-left:10px;">保险公司</span>
+        </div>
+        <div class="flex j-s a-c color">
+          <el-button v-show="imageUploadShow" size="small" type="warning" @click="imageUpload()">
+            <i class="el-icon-camera-solid" style="margin-right:4px;"></i>
+            影像上传
+          </el-button>
+        </div>
+      </div>
+      <div style="padding:0 56px;">
+        <div class="flex j-s a-c companyhead">
+          <span>报价结果</span>
+          <span>交强险</span>
+          <span>车船税</span>
+          <span>商业险</span>
+          <span>驾意险</span>
+        </div>
+        <div class="coll">
+          <div v-loading.fullscreen.lock="loading" class="hovers" v-for="(reslistitem, reslistindex) in totalCompanyList"
+            :key="reslistindex">
+            <div class="flex j-s">
+              <div style="width:15%;font-weight: bold;" class="flex j-s a-c">
+                <div class="flex j-c a-c" style="width:50%">
+                  <el-checkbox class="checkbox" v-model="reslistitem.checked"
+                    @change="event => initchange(event, reslistitem.id, reslistitem.cnName, reslistindex)"></el-checkbox>
+                </div>
+                <div class="flex f-c a-c" style="width:50%">
+                  <img :src="reslistitem.logo" alt style="width:30px; height:30px;margin-bottom:10px;" />
+                  <span>{{ reslistitem.namesimple }}</span>
+                </div>
+              </div>
+              <div class="headers" style="width:61%">
+                <div style="color:#ee7000" v-show="reslistitem.quoteCode == '0'">
+                  <span>未报价</span>
+                </div>
+                <div v-show="reslistitem.quoteCode == '1'">
+                  <i style="color:#ee7000" class="el-icon-loading"></i>
+                </div>
+                <span v-show="reslistitem.quoteCode == '200'" style="color:#ee7000;font-weight:bold;">
+                  ¥{{
+                    reslistitem.result.sumPermium
+                  }}
+                </span>
+                <span v-show="reslistitem.quoteCode == '200'" style="color:#ee7000;font-weight:bold;">
+                  ¥{{
+                    reslistitem.result.jqPremium }}
+                </span>
+                <span v-show="reslistitem.quoteCode == '200'" style="color:#ee7000;font-weight:bold;">
+                  ¥{{
+                    reslistitem.result.taxAmount }}
+                </span>
+                <span v-show="reslistitem.quoteCode == '200'" style="color:#ee7000;font-weight:bold;">
+                  ¥{{
+                    reslistitem.result.syPremium }}
+                </span>
+                <span v-if="reslistitem.quoteCode == '200'" style="color:#ee7000;font-weight:bold;">
+                  {{
+                    reslistitem.result.jyPremium ? '¥' + reslistitem.result.jyPremium : '无' }}
+                </span>
+                <span
+                  v-show="(reslistitem.quoteCode != '200') && (reslistitem.quoteCode != '0') && (reslistitem.quoteCode != '1')">
+                  {{
+                    reslistitem.msg.length > 500 ? reslistitem.msg.slice(0, 500) : reslistitem.msg }}
+                </span>
+              </div>
+              <div style="width:15%;" class="flex j-start a-c">
+                <el-button v-show="reslistitem.quoteCode == '200'" type="text" style="color:#ee7000"
+                  @click="hbsubmitdialog(reslistitem)">下单</el-button>
+                <el-button v-show="reslistitem.quoteCode == '200'" type="text"
+                  @click="qoutedetail(reslistitem.result.companyId)">查看详情</el-button>
+                <el-button v-show="reslistitem.quoteCode == '200'" type="text" style="color:rgb(240, 12, 10)"
+                  @click="bjdpreview(reslistitem.result.companyId)">报价单</el-button>
+                <el-button v-show="reslistitem.orderstatus == '2'" type="text" style="color:rgb(240, 12, 10)"
+                  @click="Payment(reslistitem.result.companyId)">付款码</el-button>
+                <el-tooltip class="item" effect="dark" content="上年信息" placement="top">
+                  <i class="el-icon-chat-dot-round" v-show="(reslistitem.quoteCode == '200' && reslistitem.lastYearMsg)"
+                    @click="open2(reslistitem.namesimple, reslistitem.lastYearMsg)"
+                    style="color:rgb(238, 112, 0);font-size:20px;margin-left:10px;"></i>
+                </el-tooltip>
+              </div>
+            </div>
+            <div class="offer-time  " v-show="reslistitem.quoteCode == '200'">
+              <template v-if="reslistitem.namesimple == '永诚财险'">
+                <span v-show="reslistitem.result.startDateJq">交强险:<span>{{ reslistitem.result.startDateJq }} -
+                    {{ reslistitem.result.endDateJq }}</span></span>
+                <span v-show="reslistitem.result.startDateSy">商业险: <span>{{ reslistitem.result.startDateSy }} -
+                    {{ reslistitem.result.endDateSy }}</span></span>
+                <span>光博分:{{ reslistitem.result.ilogPreUdwMess ? reslistitem.result.ilogPreUdwMess : '无' }}</span>
+              </template>
+
+            </div>
+            <div v-if="reslistitem.checked" class="dis a-c Driving-risk" style="margin-top:10px;">
+              <h4>报价协议选择:</h4>
+              <el-select size="small" v-model="reslistitem.agreementId" placeholder="请选择协议" style="width: 200px;"
+                :clearable="true" @change="val => agreementChange(val, reslistitem.agreement, reslistindex, reslistitem)">
+                <div v-for="(agreementitem, agreementindex ) in reslistitem.agreement" :key="agreementindex">
+                  <div
+                    v-if="agreementitem.licenseNo.length > 0 ? agreementitem.licenseNo.includes(carInfo.licenseNo.slice(0, 2)) : 'true'">
+                    <el-option :label="agreementitem.agreementName" :value="agreementitem.id"></el-option>
+                  </div>
+                </div>
+              </el-select>
+            </div>
+            <template v-if="reslistitem.namesimple == '紫金财险' && reslistitem.checked && reslistitem.agreementId">
+              <div class="flex f-c Driving-risk accident-style">
+                <h3>意外险信息</h3>
+                <el-table size="small" :data="ziJinInsuranceData" border v-loading="accidentLoading"
+                  @select="CheckboxChange" ref="expandTable" highlight-current-row
+                  :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#ee7000' }">
+                  <el-table-column type="selection" width="55"></el-table-column>
+                  <el-table-column prop="projectName" label="方案名称" align="center"></el-table-column>
+                  <el-table-column prop="sumAmount" label="总保额 (元)/每份" align="center"></el-table-column>
+                  <el-table-column prop="sumPremium" label="保费 (元)/每份" align="center">
+                  </el-table-column>
+                  <el-table-column prop="quantity" label="份数" align="center">
+                    <template slot-scope="scope">
+                      <el-input-number v-model="scope.row.quantity" :min="1" :max="scope.row.maxQuantity" size="small"
+                        controls-position="right"></el-input-number>
+                    </template>
+                  </el-table-column>
+                  <el-table-column prop="Totalprice" label="总保费 (元)" align="center">
+                    <template slot-scope="scope">
+                      <span v-if="scope.row.quantity">{{ scope.row.sumPremium * scope.row.quantity }}</span>
+                      <span v-else>{{ scope.row.sumPremium }}</span>
+                    </template>
+                  </el-table-column>
+                </el-table>
+              </div>
+            </template>
+            <template v-if="reslistitem.namesimple == '永诚财险' && reslistitem.checked && reslistitem.agreementId">
+              <div class="flex f-c Driving-risk accident-style">
+                <h3>意外险信息</h3>
+                <el-form :inline="true" :model="accidentForm" class="demo-form-inline" size="small">
+                  <el-form-item label="意外险类型:" style="margin-right:30px;">
+                    <el-select clearable v-model="accidentForm.accidentType" placeholder="选择类型" @clear="clearAccidentForm"
+                      @change="ywxxxchange">
+                      <el-option v-for="(item, index) in accidentDataList" :key="index" :label="item.name"
+                        :value="item.id"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label="份数:" style="margin-right:30px;">
+                    <el-input-number v-model="accidentForm.fen" @change="numberCopieschange" :min="1"></el-input-number>
+                    <span style="margin-left: 5px;">份</span>
+                  </el-form-item>
+                  <el-form-item label="保费:">
+                    <el-input-number v-model="accidentForm.premium" :min="1"></el-input-number>
+                    <span style="margin-left: 5px;">元</span>
+                  </el-form-item>
+                </el-form>
+                <el-table v-if="accidentForm.accidentType" size="small" :data="accidenttableData" border
+                  v-loading="accidentLoading" ref="expandTable" highlight-current-row
+                  :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#ee7000' }">
+                  <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
+                  <el-table-column prop="seatSum" label="每座保额 (元)/每份" align="center">
+                    <template slot-scope="scope">
+                      <el-input v-model="scope.row.seatSum" placeholder="请输入内容" size="small"></el-input>
+                    </template>
+                  </el-table-column>
+                  <el-table-column prop="carSum" label="每车保额 (元)/每份" align="center">
+                    <template slot-scope="scope">
+                      <el-input v-model="scope.row.carSum" placeholder="请输入内容" size="small "></el-input>
+                    </template>
+                  </el-table-column>
+                  <el-table-column prop="premium" label="责任保费 (元)/每份" align="center">
+                    <template slot-scope="scope">
+                      <el-input v-model="scope.row.premium" placeholder="请输入内容" size="small "></el-input>
+                    </template>
+                  </el-table-column>
+                </el-table>
+              </div>
+            </template>
+            <template v-if="reslistitem.namesimple == '中煤财险' && reslistitem.checked">
+              <div class="flex f-c Driving-risk">
+                <h4>意外险信息</h4>
+                <el-form :inline="true" :model="zmDrivingForm" class="demo-form-inline" size="small">
+                  <el-form-item label="产品:" style="margin-right:30px;">
+                    <el-select clearable v-model="zmDrivingForm.id" placeholder="选择产品" @change="zmdvchange"
+                      @clear="zmdvclear">
+                      <el-option v-for="(item, index) in zhongmeiDrivinglist" :key="index" :label="item.rideRiskName"
+                        :value="item.id"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label="份数:">
+                    <el-input-number v-model="zmDrivingForm.quantity" @change="quantityhandleChange" :min="1"
+                      :max="DrivingMAXnum"></el-input-number>
+                  </el-form-item>
+                  <el-form-item label="单价:" v-if="unitPrice" style="margin-left:30px;color: #606266;">
+                    <span>{{ unitPrice }}/份</span>
+                  </el-form-item>
+                </el-form>
+              </div>
+            </template>
+          </div>
+        </div>
+      </div>
+    </div>
+    <div class="Enclosure flex f-c">
+      <div class="home flex j-s a-c back">
+        <div class="flex j-s a-c color">
+          <img src="../../../src/icon/salesman.png" alt class="icon-img" />
+          <span style="margin-left:10px;">报价历史</span>
+          <el-radio-group v-model="radio" style="margin-left:30px;" @input="RadioHistoryChange" v-if="orderno">
+            <el-radio label>全部</el-radio>
+            <el-radio :label="0">报价中</el-radio>
+            <el-radio :label="1">待核保</el-radio>
+            <el-radio :label="2">已核保待缴费</el-radio>
+            <el-radio :label="3">已承保</el-radio>
+            <el-radio :label="4">人工核保</el-radio>
+          </el-radio-group>
+        </div>
+      </div>
+      <div style="padding:20px;">
+        <el-table size="small" :data="HistoryList" height="250" border style="width: 100%" v-loading="loading"
+          :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#ee7000' }" highlight-current-row>
+          <el-table-column prop="inscompany" label="保险公司" align="center"></el-table-column>
+          <el-table-column prop="createtime" label="报价时间" align="center"></el-table-column>
+          <el-table-column prop="jqpremium" label="交强险" align="center"></el-table-column>
+          <el-table-column prop="sypremium" label="商业险" align="center"></el-table-column>
+          <el-table-column prop="taxamount" label="车船税" align="center"></el-table-column>
+          <el-table-column prop="sumpremium" label="总保费" align="center"></el-table-column>
+          <el-table-column prop="orderstatus" label="状态" align="center">
+            <template slot-scope="scope">
+              <el-tag v-if="scope.row.orderstatus == '0'" type="success" size="small">报价中</el-tag>
+              <el-tag v-if="scope.row.orderstatus == '1'" type="warning" size="small">待核保</el-tag>
+              <el-tag v-if="scope.row.orderstatus == '2'" type="danger" size="small">已核保待缴费</el-tag>
+              <el-tag v-if="scope.row.orderstatus == '3'" type="danger" size="small">已承保</el-tag>
+              <el-tag v-if="scope.row.orderstatus == '4'" type="danger" size="small">核保退回</el-tag>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" align="center" min-width="200" fixed="right">
+            <template slot-scope="scope">
+              <el-button type="text" size="small" @click="qoutedetail(scope.row.id)">查看详情</el-button>
+              <el-button size="small" type="text" style="color:rgb(240, 12, 10)"
+                @click="bjdpreview(scope.row.id)">报价单</el-button>
+              <el-button size="small" v-show="scope.row.orderstatus == '2'" type="text" style="color:rgb(240, 12, 10)"
+                @click="Payment(scope.row.id)">付款码</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+    </div>
+    <el-dialog title="报价详情" :visible.sync="quotedetailsdialogVisible" width="90%">
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">报价信息</span>
+          </div>
+        </div>
+        <div style="padding:20px;font-weight:bold;font-size:20px;">
+          <span>总保费</span>
+          <span style="color:#ff7612;">¥{{ queryOrders.sumpremium }}</span>
+        </div>
+        <div class="headers headers_Custom" style="padding:20px;">
+          <div v-show="queryOrders.jqpremium">
+            交强险金额:
+            <span>
+              ¥{{
+                queryOrders.jqpremium }}
+            </span>
+          </div>
+          <div v-show="queryOrders.sypremium">
+            商业险金额:
+            <span>¥{{ queryOrders.sypremium }}</span>
+          </div>
+          <div v-show="queryOrders.taxamount">
+            车船税:
+            <span>¥{{ queryOrders.taxamount }}</span>
+          </div>
+          <div v-if="queryOrders.accidentInfo">
+            驾意险:
+            <span>¥{{ queryOrders.accidentInfo.sumPremium }}</span>
+          </div>
+          <div v-show="queryOrders.jqstartdate">
+            交强险起保日期:
+            <span>{{ queryOrders.jqstartdate }}</span>
+          </div>
+          <div v-show="queryOrders.systartdate">
+            商业险起保日期:
+            <span>{{ queryOrders.systartdate }}</span>
+          </div>
+        </div>
+      </div>
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">保费因素</span>
+          </div>
+        </div>
+        <el-descriptions size="small">
+          <el-descriptions-item label="商业险折扣比例">{{ queryOrders.extendInfo.nirrratio }}</el-descriptions-item>
+          <el-descriptions-item label="交强险折扣比例">{{ queryOrders.extendInfo.nirrratioCI }}</el-descriptions-item>
+          <el-descriptions-item label="自主定价系数">{{ queryOrders.extendInfo.pricingAdjustValue }}</el-descriptions-item>
+          <el-descriptions-item label="业务员交强险销售费用浮动率">
+            {{ queryOrders.extendInfo.jqFeeSaleChangeRateA4
+            }}
+          </el-descriptions-item>
+          <el-descriptions-item label="交强深度定价分档">{{ queryOrders.extendInfo.deepPriceGradeCI }}</el-descriptions-item>
+          <el-descriptions-item label="业务员商业险销售费用浮动率">
+            {{ queryOrders.extendInfo.syFeeSaleChangeRateA4
+            }}
+          </el-descriptions-item>
+          <el-descriptions-item label="商业深度定价分档">{{ queryOrders.extendInfo.deepPriceGradeBI }}</el-descriptions-item>
+        </el-descriptions>
+      </div>
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">车辆信息</span>
+          </div>
+        </div>
+        <el-descriptions size="small">
+          <el-descriptions-item label="车牌号">{{ queryOrders.carinfo.licenseNo }}</el-descriptions-item>
+          <el-descriptions-item label="车牌号">{{ queryOrders.carinfo.licenseTypeCode }}</el-descriptions-item>
+          <el-descriptions-item label="车辆识别代码">{{ queryOrders.carinfo.vinNo }}</el-descriptions-item>
+          <el-descriptions-item label="品牌型号">{{ queryOrders.carinfo.modelcname }}</el-descriptions-item>
+          <el-descriptions-item label="发动机号">{{ queryOrders.carinfo.engineNo }}</el-descriptions-item>
+          <el-descriptions-item label="年款">{{ queryOrders.carinfo.caryear }}</el-descriptions-item>
+          <el-descriptions-item label="座位数">{{ queryOrders.carinfo.seatCount }}</el-descriptions-item>
+          <el-descriptions-item label="新车购置价">{{ queryOrders.carinfo.purchasePrice }}</el-descriptions-item>
+          <el-descriptions-item label="使用性质">
+            {{ queryOrders.carinfo.carnature == '8A' ? '家庭自用' : ''
+            }}
+          </el-descriptions-item>
+          <el-descriptions-item label="注册日期">{{ queryOrders.carinfo.registerDate }}</el-descriptions-item>
+          <el-descriptions-item label="发证日期">{{ queryOrders.carinfo.issueDate }}</el-descriptions-item>
+          <el-descriptions-item label="是否过户">
+            {{ queryOrders.carinfo.transferFlag == true ? '是' : '否'
+            }}
+          </el-descriptions-item>
+        </el-descriptions>
+      </div>
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">车主信息</span>
+          </div>
+        </div>
+        <el-descriptions size="small">
+          <el-descriptions-item label="车主姓名">{{ queryOrders.ownerinfo.name }}</el-descriptions-item>
+          <el-descriptions-item label="证件类型">
+            {{ queryOrders.ownerinfo.identifyType == '01' ? '身份证' : ''
+            }}
+          </el-descriptions-item>
+          <el-descriptions-item label="身份证号">{{ queryOrders.ownerinfo.identifyNumber }}</el-descriptions-item>
+          <el-descriptions-item label="手机号">{{ queryOrders.ownerinfo.mobile }}</el-descriptions-item>
+          <el-descriptions-item label="地址">{{ queryOrders.ownerinfo.addr }}</el-descriptions-item>
+          <el-descriptions-item label="电子邮箱">{{ queryOrders.ownerinfo.email }}</el-descriptions-item>
+        </el-descriptions>
+      </div>
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">投保人信息</span>
+          </div>
+        </div>
+        <el-descriptions size="small">
+          <el-descriptions-item label="投保人姓名">{{ queryOrders.applyinfo.name }}</el-descriptions-item>
+          <el-descriptions-item label="证件类型">
+            {{ queryOrders.applyinfo.identifyType == '01' ? '身份证' : ''
+            }}
+          </el-descriptions-item>
+          <el-descriptions-item label="身份证号">{{ queryOrders.applyinfo.identifyNumber }}</el-descriptions-item>
+          <el-descriptions-item label="手机号">{{ queryOrders.applyinfo.mobile }}</el-descriptions-item>
+          <el-descriptions-item label="地址">{{ queryOrders.applyinfo.addr }}</el-descriptions-item>
+          <el-descriptions-item label="电子邮箱">{{ queryOrders.applyinfo.email }}</el-descriptions-item>
+        </el-descriptions>
+      </div>
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">被保人信息</span>
+          </div>
+        </div>
+        <el-descriptions size="small">
+          <el-descriptions-item label="被保人姓名">{{ queryOrders.insureinfo.name }}</el-descriptions-item>
+          <el-descriptions-item label="证件类型">
+            {{ queryOrders.insureinfo.identifyType == '01' ? '身份证' : ''
+            }}
+          </el-descriptions-item>
+          <el-descriptions-item label="身份证号">{{ queryOrders.insureinfo.identifyNumber }}</el-descriptions-item>
+          <el-descriptions-item label="手机号">{{ queryOrders.insureinfo.mobile }}</el-descriptions-item>
+          <el-descriptions-item label="地址">{{ queryOrders.insureinfo.addr }}</el-descriptions-item>
+          <el-descriptions-item label="电子邮箱">{{ queryOrders.insureinfo.email }}</el-descriptions-item>
+        </el-descriptions>
+      </div>
+
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">险种信息</span>
+          </div>
+        </div>
+        <div style="font-size:12px">
+          <div class="headers kindinfocss" style="justify-content: space-around">
+            <span>商业险险别</span>
+            <span>保额(元)</span>
+            <span>保费(元)</span>
+          </div>
+          <div class="headers kindinfocss" style="color:rgb(255, 118, 18); justify-content:space-around;"
+            v-for="(kindinfoitem, kindinfoindex) in queryOrders.kindinfo" :key="kindinfoindex">
+            <template v-if="kindinfoitem.coveragePremium">
+              <span>{{ kindinfoitem.kindName }}</span>
+              <span v-if="['D4', 'SY_FJ_YBW2'].includes(kindinfoitem.kindCode)">{{ kindinfoitem.unitAmount }}</span>
+              <span v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(kindinfoitem.kindCode)">
+                {{
+                  kindinfoitem.deductibleRate
+                }}
+              </span>
+              <span v-else>{{ kindinfoitem.amount }}</span>
+              <span>{{ kindinfoitem.coveragePremium }}</span>
+            </template>
+          </div>
+        </div>
+      </div>
+      <div class="Enclosure" v-if="queryOrders.accidentInfo">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">驾意险</span>
+          </div>
+        </div>
+        <el-descriptions size="small">
+          <el-descriptions-item label="产品">{{ queryOrders.accidentInfo.rideRiskName }}</el-descriptions-item>
+          <el-descriptions-item label="份数">{{ queryOrders.accidentInfo.quantity }}</el-descriptions-item>
+          <el-descriptions-item label="价格">{{ queryOrders.accidentInfo.unitPremium }}/份</el-descriptions-item>
+        </el-descriptions>
+      </div>
+      <div class="Enclosure" v-if="queryOrders">
+        <div class="home flex j-s a-c back">
+          <div class="flex j-s a-c color">
+            <img src="../../../src/icon/company.png" alt class="icon-img" />
+            <span style="margin-left:10px;">欠税明细</span>
+          </div>
+        </div>
+        <div style="font-size:12px">
+          <div class="headers kindinfocss" style="justify-content: space-around;">
+            <span>日期</span>
+            <span>欠费(元)</span>
+            <span>滞纳金(元)</span>
+          </div>
+          <div class="headers kindinfocss" style="color:rgb(255, 118, 18); justify-content:space-around;"
+            v-for="(taxArrearsitem, taxArrearsindex) in queryOrders.taxArrears" :key="taxArrearsindex">
+            <span>{{ taxArrearsitem.years }}</span>
+            <span>{{ taxArrearsitem.taxDefault }}</span>
+            <span>{{ taxArrearsitem.lateFee }}</span>
+          </div>
+        </div>
+      </div>
+
+      <span slot="footer" class="dialog-footer">
+        <el-button size="small" @click="quotedetailsdialogVisible = false">关闭</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog title="车型选择" :visible.sync="chexingdialogVisible" width="1300px">
+      <el-table size="small" :data="reslist" height="690" border style="width: 100%" v-loading="loading"
+        :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#ee7000' }" highlight-current-row
+        @row-dblclick="reslistCurrentChange">
+        <el-table-column prop="modelCode" label="厂牌型号代码" align="center" width="200"></el-table-column>
+        <el-table-column prop="modelName" label="厂牌型号" align="center" width="300"></el-table-column>
+        <el-table-column prop="replacementValue" label="新车购置价" align="center" width="100"></el-table-column>
+        <el-table-column prop="marketYear" label="年款" align="center" width="100"></el-table-column>
+        <el-table-column prop="ratedPassengerCapacity" label="座位数" align="center" width="80"></el-table-column>
+        <el-table-column prop="displacement" label="排量" align="center" width="100"></el-table-column>
+        <el-table-column prop="remark" label="配置" align="center"></el-table-column>
+      </el-table>
+    </el-dialog>
+    <el-dialog :visible.sync="bjddialogVisible" width="570px" top="1vh" v-if="queryOrders">
+      <div class="bjdbody">
+        <div class="bjdCarMessage">
+          <div class="bjdCarMessage1">
+            <img src="../../../static/bjdcar.png" class="align" alt style="width:60px;height:60px;" />
+            <div class="dis f-c" style="height:100%">
+              <span>{{ queryOrders.carinfo.licenseNo }}</span>
+              <span>{{ queryOrders.carinfo.modelcname }}</span>
+            </div>
+          </div>
+          <div class="bjdCarMessage2">
+            <ul>
+              <li>
+                <div class="bjdCarMessage2_car dis">
+                  <span>订单号:</span>
+                  <span>{{ queryOrders.orderno }}</span>
+                </div>
+              </li>
+              <li>
+                <div class="bjdCarMessage2_car dis">
+                  <span>车主姓名:</span>
+                  <span>{{ queryOrders.ownerinfo.name }}</span>
+                </div>
+              </li>
+              <li>
+                <div class="bjdCarMessage2_car dis">
+                  <span>投保人姓名:</span>
+                  <span>{{ queryOrders.applyinfo.name }}</span>
+                </div>
+              </li>
+              <li>
+                <div class="bjdCarMessage2_car dis">
+                  <span>发动机号:</span>
+                  <span>{{ queryOrders.carinfo.engineNo }}</span>
+                </div>
+              </li>
+              <li>
+                <div class="bjdCarMessage2_car dis">
+                  <span>车架号:</span>
+                  <span>{{ queryOrders.carinfo.vinNo }}</span>
+                </div>
+              </li>
+              <li v-show="queryOrders.jqstartdate">
+                <div class="bjdCarMessage2_car" style="flex-direction: column;">
+                  <span>车辆交强险保险期间:</span>
+                  <span style="margin-top:5px;">{{ queryOrders.jqstartdate }} 至 {{ queryOrders.jqenddate }}</span>
+                </div>
+              </li>
+              <li v-show="queryOrders.systartdate">
+                <div class="bjdCarMessage2_car" style="flex-direction: column;">
+                  <span>车辆商业险保险期间:</span>
+                  <span style="margin-top:5px;">{{ queryOrders.systartdate }} 至 {{ queryOrders.syenddate }}</span>
+                </div>
+              </li>
+            </ul>
+          </div>
+        </div>
+        <div class="bjdCarSum">
+          <div class="dis align jus">
+            <span>应缴金额</span>
+            <span style="color:rgb(255, 30, 7);font-size:16px;">¥{{ queryOrders.sumpremium }}</span>
+          </div>
+          <div class="dis align jus" v-show="queryOrders.jqpremium">
+            <span>交强险</span>
+            <span>¥{{ queryOrders.jqpremium }}</span>
+          </div>
+          <div class="dis align jus" v-show="queryOrders.sypremium">
+            <span>车辆商业险</span>
+            <span>¥{{ queryOrders.sypremium }}</span>
+          </div>
+          <div class="dis align jus" v-show="queryOrders.taxamount">
+            <span>车船税</span>
+            <span>¥{{ queryOrders.taxamount }}</span>
+          </div>
+          <div class="dis align jus" v-show="queryOrders.jqdiscountrate">
+            <span>交强险优惠比例</span>
+            <span style="color:#ff8605;">{{ queryOrders.jqdiscountrate }}%</span>
+          </div>
+          <div class="dis align jus" v-show="queryOrders.sydiscountrate">
+            <span>商业险优惠比例</span>
+            <span style="color:#ff8605;">{{ queryOrders.sydiscountrate }}%</span>
+          </div>
+          <div style="border:none;" v-show="queryOrders.sypremium">
+            <div class="Risk">
+              <div class="Risk_title dis align jus">
+                <div>
+                  <span>商业险险别</span>
+                </div>
+                <div>
+                  <span>保险金额</span>
+                </div>
+                <div>
+                  <span>保费</span>
+                </div>
+              </div>
+              <div class="Risk_data dis align jus" v-for="(kindinfoitem, kindinfoindex) in queryOrders.kindinfo"
+                :key="kindinfoindex">
+                <template>
+                  <div>
+                    <span>{{ kindinfoitem.kindName }}</span>
+                  </div>
+                  <div v-if="['D4', 'SY_FJ_YBW2'].includes(kindinfoitem.kindCode)">
+                    <span>{{ kindinfoitem.unitAmount }}</span>/<span>{{ queryOrders.carinfo.seatCount - 1 }}座</span>
+                  </div>
+                  <div v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(kindinfoitem.kindCode)">
+                    <span>{{ kindinfoitem.deductibleRate }}</span>
+                  </div>
+                  <div v-else>
+                    <span>{{ kindinfoitem.amount }}</span>
+                  </div>
+                  <div>
+                    <span>¥{{ kindinfoitem.coveragePremium }}</span>
+                  </div>
+                </template>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="flex f-c" style="padding:5px 0; color:#fff;margin-bottom:15px;">
+          <span style="margin-bottom:10px;">报价时间:</span>
+          <span>注:本报价单仅供参考,最终以出单价格为准。</span>
+        </div>
+        <div class="bjdfooter dis align">
+          <img :src="logoImg" class="align" alt style="width:60px;height:60px;" />
+          <div class="dis f-c jus" style="height:100%">
+            <span>{{ queryOrders.inscompany }}</span>
+          </div>
+        </div>
+      </div>
+      <div class="display">
+        <el-button size="small" style="width:100px;" @click="bjddialogVisible = false">关闭</el-button>
+      </div>
+    </el-dialog>
+    <el-dialog :visible.sync="codedialogVisible" width="400px" top="10vh" class="saomazhifucodeClass">
+      <div class="ORcodebody">
+        <div class="code_title dis align">
+          <span>扫码付款</span>
+        </div>
+        <div style="padding:0 20px">
+          <div class="ORcode">
+            <div style="padding:5px;position: relative;">
+              <div v-show="['永安财险', '人保财险', '永诚财险', '中煤财险', '众安财险', '紫金财险'].includes(inscompany)" id="qrcode"
+                ref="qrcode">
+              </div>
+              <img v-show="['恒邦财险'].includes(inscompany)" :src="paycodeimg" alt style="width:100%" />
+            </div>
+          </div>
+        </div>
+        <div class="ORtitle dis f-c align">
+          <div>
+            <span>保险公司:</span>
+            <span>{{ inscompany }}</span>
+          </div>
+          <div>
+            <span>车牌号:</span>
+            <span>{{ licenseNo }}</span>
+          </div>
+          <div>
+            <span>投保人:</span>
+            <span>{{ applyName }}</span>
+          </div>
+          <div>
+            <span style="color:#f75c00">总金额:</span>
+            <span style="color:#f75c00">{{ sumpremium }}</span>
+          </div>
+          <div v-show="jqpremium">
+            <span>交强:</span>
+            <span>{{ jqpremium }}</span>
+          </div>
+          <div v-show="sypremium">
+            <span>商业:</span>
+            <span>{{ sypremium }}</span>
+          </div>
+          <div v-show="taxamount">
+            <span>车船税:</span>
+            <span>{{ taxamount }}</span>
+          </div>
+          <div v-show="jqstartdate">
+            <span>交强险起保日期:</span>
+            <span>{{ jqstartdate }}</span>
+          </div>
+          <div v-show="systartdate">
+            <span>商业险起保日期:</span>
+            <span>{{ systartdate }}</span>
+          </div>
+        </div>
+        <div class="display">
+          <el-button size="small" style="width:100px;" @click="codedialogVisible = false">关闭</el-button>
+        </div>
+      </div>
+    </el-dialog>
+    <el-dialog title="行驶证识别" :visible.sync="uploadcardialogVisible" width="960px"
+      style="padding:10px 20px;box-sizing: border-box;" @open="closeDialog(0)">
+      <el-row :gutter="20">
+        <div class="bodys1">
+          <div>
+            <div class="flex a-c">
+              <div class="OCR" style="text-align:center;">行驶证主页</div>
+              <div style="text-align:center;margin: 20px;" @drop="reportDrop">
+                <el-upload drag action="#" :show-file-list="false" :auto-upload="false" :on-change="carfrontChange">
+                  <img v-show="carfrontImg" :src="carfrontImg" style="width:100%;height:100%" />
+                  <img v-show="!carfrontImg" src="../../../static/carfront.png" style="width:100%;height:100%" />
+                  <span class="slot" v-show="carfrontImg" @click.stop>
+                    <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(carfrontImg)"></i>
+                    <i class="el-icon-delete" @click.stop="handleRemove('carfrontImg')"></i>
+                  </span>
+                </el-upload>
+              </div>
+            </div>
+            <div class="flex a-c">
+              <div class="OCR" style="text-align:center;">行驶证副页</div>
+              <div style="text-align:center;margin: 20px;" @drop="reportDrop">
+                <el-upload drag action="#" :show-file-list="false" :auto-upload="false" :on-change="carbackChange">
+                  <img v-show="carbackImg" :src="carbackImg" style="width:100%;height:100%" />
+                  <img v-show="!carbackImg" src="../../../static/carback.png" style="width:100%;height:100%" />
+                  <span class="slot" v-show="carbackImg" @click.stop>
+                    <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(carbackImg)"></i>
+                    <i class="el-icon-delete" @click.stop="handleRemove('carbackImg')"></i>
+                  </span>
+                </el-upload>
+              </div>
+            </div>
+          </div>
+          <div style="text-align:center;">
+            <el-form :model="carform" label-width="130px" size="small">
+              <el-form-item label="车牌号">
+                <el-input v-model="carform.licenseNo" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="车架号">
+                <el-input v-model="carform.frameNo" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="品牌型号">
+                <el-input v-model="carform.modelcname" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="发动机号">
+                <el-input v-model="carform.engineNo" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="总质量">
+                <el-input v-model="carform.grossMass" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="整备质量">
+                <el-input v-model="carform.unladenMass" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="核定载客数">
+                <el-input v-model="carform.approvedPassengersCapacity" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="发证日期">
+                <el-input v-model="carform.issueDate" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="注册日期">
+                <el-input v-model="carform.registerDate" autocomplete="off"></el-input>
+              </el-form-item>
+            </el-form>
+          </div>
+        </div>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button type="warning" @click="CarOCRdiscern()" size="small">识 别</el-button>
+        <el-button @click="CarOCRconfirm()" size="small">确 认</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog title="身份证识别" :visible.sync="uploaduserdialogVisible" width="960px"
+      style="padding:10px 20px;box-sizing: border-box;" @open="closeDialog(userIndex)">
+      <el-row :gutter="20">
+        <div class="bodys1">
+          <div>
+            <div class="flex a-c">
+              <div class="OCR" style="text-align:center;">身份证主页</div>
+              <div style="text-align:center;margin: 20px;" @drop="reportDrop">
+                <el-upload class="upload-demo" drag action="#" :show-file-list="false" :auto-upload="false"
+                  :on-change="userfrontChange">
+                  <img v-show="userfrontImg" :src="userfrontImg" style="width:100%;height:100%" />
+                  <img v-show="!userfrontImg" src="../../../static/userfront.png" style="width:100%;height:100%" />
+                  <span class="slot" v-show="userfrontImg" @click.stop>
+                    <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(userfrontImg)"></i>
+                    <i class="el-icon-delete" @click.stop="handleRemove('userfrontImg')"></i>
+                  </span>
+                </el-upload>
+              </div>
+            </div>
+            <div class="flex a-c">
+              <div class="OCR" style="text-align:center;">身份证副页</div>
+              <div style="text-align:center;margin: 20px;" @drop="reportDrop">
+                <el-upload class="upload-demo" drag action="#" :show-file-list="false" :auto-upload="false"
+                  :on-change="userbackChange">
+                  <img v-show="userbackImg" :src="userbackImg" style="width:100%;height:100%" />
+                  <img v-show="!userbackImg" src="../../../static/userback.png" style="width:100%;height:100%" />
+                  <span class="slot" v-show="userbackImg" @click.stop>
+                    <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(userbackImg)"></i>
+                    <i class="el-icon-delete" @click.stop="handleRemove('userbackImg')"></i>
+                  </span>
+                </el-upload>
+              </div>
+            </div>
+          </div>
+          <div style="text-align:center;">
+            <el-form :model="ownerInfoform" label-width="130px" size="small">
+              <el-form-item label="姓名">
+                <el-input v-model="ownerInfoform.name" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="证件类型">
+                <el-input v-model="ownerInfoform.identifyType" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="证件号码">
+                <el-input v-model="ownerInfoform.identifyNumber" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="车主手机号">
+                <el-input v-model="ownerInfoform.mobile" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="地址">
+                <el-input v-model="ownerInfoform.addr" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="有效期起期">
+                <el-input disabled v-model="ownerInfoform.identifyValidDate" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="有效期止期">
+                <el-input disabled v-model="ownerInfoform.identifyValidEndDate" autocomplete="off"></el-input>
+              </el-form-item>
+              <el-form-item label="电子邮箱">
+                <el-input v-model="ownerInfoform.email" autocomplete="off"></el-input>
+              </el-form-item>
+            </el-form>
+          </div>
+        </div>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button type="warning" @click="userOCRdiscern()" size="small">识 别</el-button>
+        <el-button @click="userOCRconfirm()" size="small">确 认</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog title="影像上传" :visible.sync="imageUploaddialogVisible" width="1070px">
+      <el-row style="padding: 10px;">
+        <el-col :span="12" style="margin-bottom:30px;">
+          <div class="flex f-c j-s">
+            <div class="image-title ">
+              行驶证照片
+            </div>
+            <div class="flex a-c">
+              <div class="flex f-c ">
+                <span style="margin:10px 0">1. 行驶证主页</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1"
+                  :on-change="file => drivingupload(file, 'imageList1', 'imgList1', 'C01')" :file-list="imgList1"
+                  style="margin-right:50px;" ref="upload1" :class="{ styleB: imgList1.length == 1 }">
+                  <img v-show="imgList1.length == 0" src="../../../static/carfront.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList1', 'imgList1')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+              <div class="flex f-c ">
+                <span style="margin:10px 0">2. 行驶证副本</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1"
+                  :on-change="file => drivingupload(file, 'imageList1', 'imgList2', 'D01')" :file-list="imgList2"
+                  ref="upload2" :class="{ styleB: imgList2.length === 1 }">
+                  <img v-show="imgList2.length == 0" src="../../../static/carback.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList1', 'imgList2')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+            </div>
+          </div>
+
+        </el-col>
+        <el-col :span="12" style="margin-bottom:30px;">
+          <div class="flex f-c j-s">
+            <div class="image-title ">
+              车主照片
+            </div>
+            <div class="flex a-c">
+              <div class="flex f-c ">
+                <span style="margin:10px 0">1. 证件正面</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" style="margin-right:50px;"
+                  :on-change="file => drivingupload(file, 'imageList2', 'imgList3', 'C02')" :file-list="imgList3" multiple
+                  ref="upload3" :class="{ styleB: imgList3.length === 1 }">
+                  <img v-show="imgList3.length == 0" src="../../../static/userfront.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList2', 'imgList3')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+              <div class="flex f-c ">
+                <span style="margin:10px 0">2. 证件反面</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1"
+                  :on-change="file => drivingupload(file, 'imageList2', 'imgList4', 'D02')" :file-list="imgList4" multiple
+                  ref="upload4" :class="{ styleB: imgList4.length === 1 }">
+                  <img v-show="imgList4.length == 0" src="../../../static/userback.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList2', 'imgList4')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+            </div>
+          </div>
+        </el-col>
+        <el-col :span="12" style="margin-bottom:30px;">
+          <div class="flex f-c j-s">
+            <div class="image-title ">
+              投保人照片
+            </div>
+            <div class="flex a-c">
+              <div class="flex f-c ">
+                <span style="margin:10px 0">1. 证件正面</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" style="margin-right:50px;"
+                  :on-change="file => drivingupload(file, 'imageList3', 'imgList5', 'C03')" :file-list="imgList5" multiple
+                  ref="upload5" :class="{ styleB: imgList5.length === 1 }">
+                  <img v-show="imgList5.length == 0" src="../../../static/userfront.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList3', 'imgList5')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+              <div class="flex f-c ">
+                <span style="margin:10px 0">2. 证件反面</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1"
+                  :on-change="file => drivingupload(file, 'imageList3', 'imgList6', 'D03')" :file-list="imgList6" multiple
+                  ref="upload6" :class="{ styleB: imgList6.length === 1 }">
+                  <img v-show="imgList6.length == 0" src="../../../static/userback.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList3', 'imgList6')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+            </div>
+          </div>
+        </el-col>
+        <el-col :span="12" style="margin-bottom:30px;">
+          <div class="flex f-c j-s">
+            <div class="image-title ">
+              被保人照片
+            </div>
+            <div class="flex a-c">
+              <div class="flex f-c ">
+                <span style="margin:10px 0">1. 证件正面</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" style="margin-right:50px;"
+                  :on-change="file => drivingupload(file, 'imageList4', 'imgList7', 'C04')" :file-list="imgList7" multiple
+                  ref="upload7" :class="{ styleB: imgList7.length === 1 }">
+                  <img v-show="imgList7.length == 0" src="../../../static/userfront.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList4', 'imgList7')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+              <div class="flex f-c ">
+                <span style="margin:10px 0">2. 证件反面</span>
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1"
+                  :on-change="file => drivingupload(file, 'imageList4', 'imgList8', 'D04')" :file-list="imgList8" multiple
+                  ref="upload8" :class="{ styleB: imgList8.length === 1 }">
+                  <img v-show="imgList8.length == 0" src="../../../static/userback.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList4', 'imgList8')">
+                        <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(file.url)"></i>
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+            </div>
+          </div>
+        </el-col>
+        <el-col :span="24">
+          <div class="flex f-c j-s">
+            <div class="image-title ">
+              验车照片
+            </div>
+            <div class="flex a-c">
+              <div class="flex f-c ">
+                <el-upload action="#" list-type="picture-card" :auto-upload="false" ref="upload8">
+                  <img v-show="imgList8.length == 0" src="../../../static/yanche.png" style="width:100%;height:100%" />
+                  <div slot="file" slot-scope="{file}">
+                    <img class="el-upload-list__item-thumbnail" :src="file.url" alt />
+                    <span class="el-upload-list__item-actions">
+                      <span class="el-upload-list__item-delete" @click="handleRemove1(file, 'imageList4', 'imgList8')">
+                        <i class="el-icon-delete"></i>
+                      </span>
+                    </span>
+                  </div>
+                </el-upload>
+              </div>
+            </div>
+          </div>
+        </el-col>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="small" @click="imageUploaddialogVisible = false">取 消</el-button>
+        <el-button size="small" type="warning" @click="uploadinformation">上传资料</el-button>
+      </span>
+    </el-dialog>
+    <div class=" flex j-c a-c" :class="{
+      'footer': true,
+      'shadow': !isBottom
+    }">
+      <el-button size="small" @click="add()">录下一单</el-button>
+      <el-button type="warning" size="small" @click="quote()">保费计算</el-button>
+    </div>
+    <div class="Anchor-link flex f-c j-s a-c">
+      <div>
+        <img src="../../../src/icon/car.png" alt class="icon-img" @click="handleScroll('Car')" />
+      </div>
+      <div>
+        <img src="../../../src/icon/salesman.png" alt class="icon-img" @click="handleScroll('insurance')" />
+      </div>
+      <div>
+        <img src="../../../src/icon/more.png" alt class="icon-img" @click="handleScroll('more')" />
+      </div>
+      <div>
+        <img src="../../../src/icon/company.png" alt class="icon-img" @click="handleScroll('company')" />
+      </div>
+    </div>
+    <el-dialog title="核保信息" :visible.sync="underwritingdialogVisible" width="30%">
+      <div class="flex j-s f-c">
+        <div style="font-size: 18px;color: #ee7000;font-weight:700;padding: 10px 30px;" v-if="orderstatus == '2'">
+          订单状态:已核保待缴费</div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button style="width: 100px;" type="primary" size="small" @click="Payment(companyId)">缴费二维码</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog title="转保确认码" :visible.sync="renewalCodedialogVisible" width="400px" style="font-weight: bold">
+      <div class="flex a-c u-f-sa" v-if="renewalCodeJqImg">
+        <span>交强转保确认码</span>
+        <div class="flex a-c f-c">
+          <img :src="renewalCodeJqImg" alt style="width: 150px; height: 40px; margin-bottom: 5px" />
+          <el-input v-model="renewalCodeJq" placeholder="请输入确认码" style="width: 150px"></el-input>
+        </div>
+      </div>
+      <div class="flex a-c u-f-sa" v-if="renewalCodeSyImg">
+        <span>商业转保确认码</span>
+        <div class="flex a-c f-c">
+          <img :src="renewalCodeSyImg" alt style="width: 150px; height: 40px; margin-bottom: 5px" />
+          <el-input v-model="renewalCodeSy" placeholder="请输入确认码" style="width: 150px"></el-input>
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="small" @click="renewalCodedialogVisible = false">取 消</el-button>
+        <el-button size="small" type="primary" @click="renewalCodeconfirm">确 定</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog title="提交核保" :visible.sync="hbsubmitdialogVisible" width="1200px">
+      <div style="margin-bottom: 20px;font-weight: bold;">特约选择</div>
+      <el-table size="small" :data="zijinengageListData" border v-loading="accidentLoading" @select="zijinengageChange"
+        ref="expandTable" highlight-current-row
+        :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#ee7000' }">
+        <el-table-column type="selection" width="55"></el-table-column>
+        <el-table-column prop="clauseCode" label="特约代码" align="center"></el-table-column>
+        <el-table-column prop="clauseName" label="特约名称" align="center"></el-table-column>
+        <el-table-column prop="clauseContent" label="特约内容"></el-table-column>
+      </el-table>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="small" @click="hbsubmitdialogVisible = false">取 消</el-button>
+        <el-button size="small" type="warning" @click="hbsubmit">提交核保</el-button>
+      </span>
+    </el-dialog>
+    <el-image-viewer v-if="showViewer" :on-close="closeViewer" :z-index="2100" :url-list="[ProViewImg]" />
+  </div>
+</template>
+<script>
+import QRCode from "qrcodejs2";
+import Cookies from "js-cookie";
+import CommonUtil from "@/utils/comutil.js";
+import { getAgeByIdCard } from "@/utils/validate.js";
+import { regionData, codeToText } from "element-china-area-data";
+export default {
+  inject: ["reload"],
+  name: "qrCode",
+  data() {
+    var checkpurchasePrice = (rule, value, callback) => {
+      if (!value) {
+        callback(new Error("新车购置价不能为空"));
+      } else if (value == 0) {
+        callback(new Error("新车购置价不能为零"));
+      } else {
+        callback();
+      }
+    };
+    var checkframeNo = (rule, value, callback) => {
+      if (value.length < 17) {
+        callback(new Error("车架号不足17位"));
+      } else if (
+        value.indexOf("I") != "-1" ||
+        value.indexOf("O") != "-1" ||
+        value.indexOf("Q") != "-1"
+      ) {
+        callback(new Error("车架号不能包含(I O Q)三个字母"));
+      } else {
+        callback();
+      }
+    };
+    return {
+      xlcell: 6,
+      lgcell: 12,
+      mdcell: 12,
+      smcell: 24,
+      xscell: 24,
+      areaOptions: regionData,
+      selectedOptions1: [],
+      selectedOptions2: [],
+      selectedOptions3: [],
+      // ------------紫金意外险
+      ziJinInsuranceData: [],
+      accidentalDrivingVo: [],
+      zijinengageListData: [],
+      zijinengageList: [],
+      // ------------紫金意外险
+      licenseplate: true,
+      accidentForm: {
+        fen: "1"
+      }, //意外险内容
+      accidentDataList: [], //永诚意外险
+      accidenttableData: [],
+      accidentLoading: false,
+      accidentPremium: "",
+      pickerOptions: {
+        disabledDate(time) {
+          //若选择的日期小于当前日期(包含今天)
+          return time.getTime() > Date.now();
+          //若选择的日期大于当前日期(不包含今天): time.getTime() < Date.now()
+          //若选择的日期小于当前日期(不包含今天): time.getTime() > Date.now() - 8.64e7
+          //若选择的日期小于等于当前日期(包含今天): time.getTime() > Date.now()
+        }
+      },
+      attributionform: {
+        //续保查询数据
+        configure: [],
+        companyId: ""
+      },
+      continuousAction: [], //续保配置项
+      //永诚转保确认码
+      cqryCdeJq: "",
+      cqryCdeSy: "",
+      renewalCodeJq: "", //交强确认码
+      renewalCodeSy: "", //商业确认码
+      renewalCodeJqImg: "", //交强图片
+      renewalCodeSyImg: "", //商业图片
+      //-----------------
+      showViewer: false,
+      transferDateShow: false, //转移登记日期
+      yonganchecked: false, //永安驾意险
+      renbaochecked: false, //人保驾意险
+      zhongmeichecked: false, //中煤驾意险
+      hengbangchecked: false, //恒邦驾意险
+      yongchengchecked: false, //永诚驾意险
+      yonganDrivinglist: [],
+      renbaoDrivinglist: [],
+      zhongmeiDrivinglist: [],
+      hengbangDrivinglist: [],
+      yongchengDrivinglist: [],
+      unitPrice: "", //驾意险单价
+      DrivingMAXnum: 0, //驾意险份数最大值
+      zmDrivingForm: {},
+      tbczcarShow: true, //投保人同车主
+      bbczcarShow: false, //被保人同车主
+      bbtbcarShow: true, //被保人同投保人
+      imageUploadShow: true, //上传影像显示
+      ProViewImg: "", //预览图片
+      carfrontImg: "", //行驶证正面
+      carbackImg: "", //行驶证背面
+      userfrontImg: "", //身份证正面
+      userbackImg: "", //身份证背面
+      CarFrontFile: "", //车正面文件流
+      CarBackFile: "", //车背面文件流
+      C02File: "",
+      D02File: "",
+      C03File: "",
+      D03File: "",
+      C04File: "",
+      D04File: "",
+      userIndex: 1, //区分三种人员
+      TabName: "car", //默认选项卡
+      value1: "",
+      chexingdialogVisible: false, //车型选择     显示/隐藏
+      quotedetailsdialogVisible: false, //报价详情     显示/隐藏
+      bjddialogVisible: false, //报价单     显示/隐藏
+      codedialogVisible: false, //二维码     显示/隐藏
+      uploadcardialogVisible: false, //行驶证识别     显示/隐藏
+      uploaduserdialogVisible: false, //身份证识别     显示/隐藏
+      imageUploaddialogVisible: false, //影像上传     显示/隐藏
+      underwritingdialogVisible: false, //核保信息   显示/隐藏
+      renewalCodedialogVisible: false, //转保确认码输入
+      hbsubmitdialogVisible: false,//核保弹框
+      Carinsurance: {
+        jqinsurance: "1", //交强险
+        syinsurance: "1" //商业险
+      },
+      jqchecked: true,
+      sychecked: false,
+      jqstartDate: "", //交强时间
+      jqendDate: "", //交强时间
+      systartDate: "", //商业时间
+      syendDate: "", //商业时间
+      loading: false, //加载事件
+      reslist: [], //车型列表
+      userId: "", //出单工号
+      carInfo: {
+        powerScale: "", ///功率
+        licenseNo: "", //车牌号
+        brandName: "", //车辆品牌型号
+        vinNo: "", //车架号
+        engineNo: "", //发动机号
+        modelCode: "", //车型编码
+        seatCount: null, //核定载客量 核定载人数
+        purchasePrice: null, //新车购置价最低,行业实际价值,协商价值
+        carBrand: "", //车型品牌
+        ciCarName: "", //行业车型名称
+        ciModelCode: "", //行业车型编码
+        completeKerbMass: "", //整备质量
+        exhaustScale: "", //排量
+        factory: "", //工厂名称
+        factoryid: "", //工厂编码
+        frameNo: "", //车架号
+        licenseTypeCode: "02", //号牌种类
+        vehicleclass: "", //车辆类型
+        familyName: "", //车型
+        modelcname: "", //车型名称
+        powertypecode: "", //燃料类型编码
+        vehicleweight: "", //总质量
+        limitLoad: "", //核定载质量
+        caryear: null, //年款
+        cimodelclass: "A0", //车辆种类
+        powertype: "汽油", //
+        energyType: "0", //能源类型
+        enginedesc: "", //排量
+        registerDate: "", //注册日期
+        issueDate: "", //发证日期
+        transferFlag: 0, //过户标志
+        transferDate: "", //过户日期
+        loanStatus: 0, //贷款标志
+        firstBeneMan: "", //第一受益人
+        noLicenseFlag: false, //是否新车
+        cartype: "", //客车A0 货车H0
+        carnature: "8A", //使用性质 家庭自用8A  非营业企业8B   非营业党政机关,事业团体8C  非营业货车8D
+        property: "1" //所属性质 1个人 2企业 3个人
+      },
+      carform: {
+        licenseNo: "", //车牌号
+        modelcname: "", //车辆品牌型号
+        frameNo: "", //车架号
+        engineNo: "", //发动机号
+        registerDate: "", //注册日期
+        issueDate: "", //发证日期
+        grossMass: "", //总质量
+        unladenMass: "", //整备质量
+        approvedPassengersCapacity: "" //核定载客数
+      },
+      ownerInfoform: {
+        name: "",
+        identifyType: "",
+        identifyNumber: "",
+        age: "",//年龄
+        addr: "",
+        email: "",
+        mobile: "",
+        identifyValidDate: "", //有效期起期
+        identifyValidEndDate: "", //有效期止期
+        province: "",//省
+        city: "",//市
+        county: "",//县
+      },
+      riskList: [], //险种大类信息
+      kindList: [], //商业险险别
+      ownerInfo: {
+        //车主
+        name: "", //姓名
+        identifyType: "01", //身份证类型
+        identifyNumber: "", //身份证号
+        age: "",//年龄
+        addr: "", //地址
+        email: "", //邮箱
+        mobile: "", //电话
+        identifyValidDate: "", //有效期起期
+        identifyValidEndDate: "", //有效期止期
+        province: "",//省
+        city: "",//市
+        county: "",//县
+      },
+      policyHolderInfo: {
+        //投保人
+        name: "", //姓名
+        identifyType: "01", //身份证类型
+        identifyNumber: "", //身份证号
+        age: "",//年龄
+        addr: "", //地址
+        email: "", //邮箱
+        mobile: "", //电话
+        identifyValidDate: "", //有效期起期
+        identifyValidEndDate: "", //有效期止期
+        province: "",//省
+        city: "",//市
+        county: "",//县
+      },
+      insuredPersonInfo: {
+        //被保人
+        name: "", //姓名
+        identifyType: "01", //身份证类型
+        identifyNumber: "", //身份证号
+        age: "",//年龄
+        addr: "", //地址
+        email: "", //邮箱
+        mobile: "", //电话
+        identifyValidDate: "", //有效期起期
+        identifyValidEndDate: "", //有效期止期
+        province: "",//省
+        city: "",//市
+        county: "",//县
+      },
+      //使用性质列表
+      carnatureList: [{ label: "家庭自用", id: "8A" }],
+      //能源种类列表
+      rules: {
+        energyType: [
+          { required: true, message: "请选择能源种类", trigger: "blur" }
+        ],
+        cimodelclass: [
+          { required: true, message: "请选择车辆种类", trigger: "blur" }
+        ],
+        cartype: [
+          { required: true, message: "请选择车辆类型", trigger: "blur" }
+        ],
+        brandName: [
+          { required: true, message: "请填写品牌型号", trigger: "blur" }
+        ],
+        licenseNo: [{ max: 8, message: "最多八个字符", trigger: "blur" },
+        { required: true, message: "请输入车牌号", trigger: "blur" }],
+        frameNo: [{ validator: checkframeNo, trigger: "blur" }],
+        engineNo: [
+          { required: true, message: "请填写发动机号", trigger: "blur" }
+        ],
+        purchasePrice: [
+          { required: true, validator: checkpurchasePrice, trigger: "blur" }
+        ],
+        registerDate: [
+          { required: true, message: "请选择注册时间", trigger: "blur" }
+        ],
+        issueDate: [
+          { required: true, message: "请选择发证日期", trigger: "blur" }
+        ],
+        transferDate: [
+          { required: true, message: "请选择转移登记日期", trigger: "blur" }
+        ],
+        name: [{ required: true, message: "请填写姓名", trigger: "blur" }],
+
+        identifyNumber: [
+          { required: true, message: "请填写证件号", trigger: "blur" },
+          { min: 18, max: 18, message: "长度在18个字符", trigger: "blur" },
+          {
+            pattern: /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9xX]$/,
+            message: "请输入正确的证件号",
+            trigger: "blur"
+          }
+        ],
+        identifyValidDate: [
+          { required: true, message: "请选择起期", trigger: "blur" }
+        ],
+        identifyValidEndDate: [
+          { required: true, message: "请选择止期", trigger: "blur" }
+        ],
+        addr: [
+          { required: true, message: "请填写地址", trigger: "blur" },
+          { min: 8, message: "最少8个字符", trigger: "blur" }
+        ],
+        mobile: [
+          { required: true, message: "请填写手机号", trigger: "blur" },
+          { min: 11, max: 11, message: "长度在11个字符", trigger: "blur" },
+          {
+            pattern: /^(13[0-9]|14[01456879]|15[0-3,5-9]|16[2567]|17[0-8]|18[0-9]|19[0-3,5-9])\d{8}$/,
+            message: "请输入正确的手机号",
+            trigger: "blur"
+          }
+        ],
+        email: [
+          { min: 10, max: 20, message: "最少10个字符", trigger: "blur" },
+          {
+            pattern: /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
+            message: "请输入正确的邮箱",
+            trigger: "blur"
+          }
+        ]
+      },
+      CIInsureList: {
+        //交强险
+        amount: "1",
+        amountDesc: "投保",
+        amtList: [
+          {
+            label: "不投保",
+            value: "0"
+          },
+          {
+            label: "投保",
+            value: "1"
+          }
+        ],
+        kindCode: "0507",
+        kindName: "交强险",
+        desc: "国家强制规定购买的险种,对第三方的人身或财产损失提供基本保障"
+      },
+      BIInsureList: {
+        //商业险
+        amount: "0",
+        amountDesc: "投保",
+        amtList: [
+          {
+            label: "不投保",
+            value: "0"
+          },
+          {
+            label: "投保",
+            value: "1"
+          }
+        ],
+        kindCode: "0510",
+        kindName: "商业险",
+        desc: "国家强制规定购买的险种,对第三方的人身或财产损失提供基本保障"
+      },
+      insureList: [
+        {
+          amount: "0",
+          amountDesc: "投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "投保",
+              value: "1"
+            }
+          ],
+          kindCode: "A",
+          isMainRisk: true,
+          kindName: "机动车损失险",
+          desc:
+            "保险期间内,被保险人或被保险机动车驾驶人在使用被保险机动车过程中,因自然灾害、意外事故、机动车被盗窃、抢劫、抢夺等情况(详见保险条款)造成被保险机动车直接损失,且不属于免除保险人责任的范围,保险人依照本保险合同的约定负责赔偿的险种。"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "10万",
+              value: "100000"
+            },
+            {
+              label: "15万",
+              value: "150000"
+            },
+            {
+              label: "20万",
+              value: "200000"
+            },
+            {
+              label: "30万",
+              value: "300000"
+            },
+            {
+              label: "50万",
+              value: "500000"
+            },
+            {
+              label: "100万",
+              value: "1000000"
+            },
+            {
+              label: "150万",
+              value: "1500000"
+            },
+            {
+              label: "200万",
+              value: "2000000"
+            },
+            {
+              label: "250万",
+              value: "2500000"
+            },
+            {
+              label: "300万",
+              value: "3000000"
+            },
+            {
+              label: "400万",
+              value: "4000000"
+            },
+            {
+              label: "500万",
+              value: "5000000"
+            },
+            {
+              label: "600万",
+              value: "6000000"
+            },
+            {
+              label: "800万",
+              value: "8000000"
+            },
+            {
+              label: "1000万",
+              value: "10000000"
+            }
+          ],
+          kindCode: "B",
+          isMainRisk: true,
+          kindName: "第三者责任险",
+          desc:
+            "保险期间内,被保险人或其允许的驾驶人在使用被保险机动车过程中发生意外事故,致使第三者遭受人身伤亡或财产直接损毁,依法应当对第三者承担的损害赔偿责任,且不属于免除保险人责任的范围,保险人依照本保险合同的约定,对于超过机动车交通事故责任强制保险各分项赔偿限额的部分负责赔偿的险种。"
+        },
+        {
+          amount: "0",
+          amountDesc: "1万",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "1万",
+              value: "10000"
+            },
+            {
+              label: "2万",
+              value: "20000"
+            },
+            {
+              label: "3万",
+              value: "30000"
+            },
+            {
+              label: "4万",
+              value: "40000"
+            },
+            {
+              label: "5万",
+              value: "50000"
+            },
+            {
+              label: "6万",
+              value: "60000"
+            },
+            {
+              label: "7万",
+              value: "70000"
+            },
+            {
+              label: "8万",
+              value: "80000"
+            },
+            {
+              label: "9万",
+              value: "90000"
+            },
+            {
+              label: "10万",
+              value: "100000"
+            },
+            {
+              label: "15万",
+              value: "150000"
+            },
+            {
+              label: "20万",
+              value: "200000"
+            },
+            {
+              label: "25万",
+              value: "250000"
+            },
+            {
+              label: "30万",
+              value: "300000"
+            },
+            {
+              label: "35万",
+              value: "350000"
+            },
+            {
+              label: "40万",
+              value: "400000"
+            },
+            {
+              label: "45万",
+              value: "450000"
+            },
+            {
+              label: "50万",
+              value: "500000"
+            },
+
+          ],
+          kindCode: "D3",
+          isMainRisk: true,
+          kindName: "司机责任险",
+          desc:
+            "保险期间内,被保险人或其允许的驾驶人在使用被保险机动车过程中发生意外事故,致使车上人员遭受人身伤亡,且不属于免除保险人责任的范围,依法应当对车上人员承担的损害赔偿责任,保险人依照本保险合同的约定负责赔偿的险种。"
+        },
+        {
+          amount: "0",
+          amountDesc: "1万",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "1万",
+              value: "10000"
+            },
+            {
+              label: "2万",
+              value: "20000"
+            },
+            {
+              label: "3万",
+              value: "30000"
+            },
+            {
+              label: "4万",
+              value: "40000"
+            },
+            {
+              label: "5万",
+              value: "50000"
+            },
+            {
+              label: "6万",
+              value: "60000"
+            },
+            {
+              label: "7万",
+              value: "70000"
+            },
+            {
+              label: "8万",
+              value: "80000"
+            },
+            {
+              label: "9万",
+              value: "90000"
+            },
+            {
+              label: "10万",
+              value: "100000"
+            },
+            {
+              label: "15万",
+              value: "150000"
+            },
+            {
+              label: "20万",
+              value: "200000"
+            },
+            {
+              label: "25万",
+              value: "250000"
+            },
+            {
+              label: "30万",
+              value: "300000"
+            },
+            {
+              label: "35万",
+              value: "350000"
+            },
+            {
+              label: "40万",
+              value: "400000"
+            },
+            {
+              label: "45万",
+              value: "450000"
+            },
+            {
+              label: "50万",
+              value: "500000"
+            },
+          ],
+          kindCode: "D4",
+          isMainRisk: true,
+          kindName: "乘客责任险",
+          desc:
+            "保险期间内,被保险人或其允许的驾驶人在使用被保险机动车过程中发生意外事故,致使车上人员遭受人身伤亡,且不属于免除保险人责任的范围,依法应当对车上人员承担的损害赔偿责任,保险人依照本保险合同的约定负责赔偿的险种。"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "2千",
+              value: "2000"
+            },
+            {
+              label: "5千",
+              value: "5000"
+            },
+            {
+              label: "1万",
+              value: "10000"
+            },
+            {
+              label: "2万",
+              value: "20000"
+            }
+          ],
+          desc:
+            "保险期间内,被保险机动车在被保险人或被保险机动车驾驶人使用过程中,发生无明显碰撞痕迹的车身划痕损失,保险人按照保险合同约定负责赔偿的险种",
+          isMainRisk: false,
+          kindCode: "L",
+          kindName: "车身划痕险",
+          mainRiskCodeList: "A"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "5%",
+              value: "5"
+            },
+            {
+              label: "10%",
+              value: "10"
+            },
+            {
+              label: "15%",
+              value: "15"
+            },
+            {
+              label: "20%",
+              value: "20"
+            }
+          ],
+          desc:
+            "被保险机动车发生主险约定的保险事故,保险人按照主险的约定计算赔款后,扣减本特约条款约定的免赔的险种。",
+          isMainRisk: false,
+          kindCode: "MJ1",
+          kindName: "绝对免赔率特约险(车损)",
+          mainRiskCodeList: "A"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "5%",
+              value: "5"
+            },
+            {
+              label: "10%",
+              value: "10"
+            },
+            {
+              label: "15%",
+              value: "15"
+            },
+            {
+              label: "20%",
+              value: "20"
+            }
+          ],
+          desc:
+            "被保险机动车发生主险约定的保险事故,保险人按照主险的约定计算赔款后,扣减本特约条款约定的免赔的险种。",
+          isMainRisk: false,
+          kindCode: "MJ2",
+          kindName: "绝对免赔率特约险(三者)",
+          mainRiskCodeList: "B"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "5%",
+              value: "5"
+            },
+            {
+              label: "10%",
+              value: "10"
+            },
+            {
+              label: "15%",
+              value: "15"
+            },
+            {
+              label: "20%",
+              value: "20"
+            }
+          ],
+          desc:
+            "被保险机动车发生主险约定的保险事故,保险人按照主险的约定计算赔款后,扣减本特约条款约定的免赔的险种。",
+          isMainRisk: false,
+          kindCode: "MJ3",
+          kindName: "绝对免赔率特约险(司机)",
+          mainRiskCodeList: "D3"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "5%",
+              value: "5"
+            },
+            {
+              label: "10%",
+              value: "10"
+            },
+            {
+              label: "15%",
+              value: "15"
+            },
+            {
+              label: "20%",
+              value: "20"
+            }
+          ],
+          desc:
+            "被保险机动车发生主险约定的保险事故,保险人按照主险的约定计算赔款后,扣减本特约条款约定的免赔的险种。",
+          isMainRisk: false,
+          kindCode: "MJ4",
+          kindName: "绝对免赔率特约险(乘客)",
+          mainRiskCodeList: "D4"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "1万",
+              value: "10000"
+            },
+            {
+              label: "2万",
+              value: "20000"
+            },
+            {
+              label: "4万",
+              value: "40000"
+            },
+            {
+              label: "5万",
+              value: "50000"
+            },
+            {
+              label: "8万",
+              value: "80000"
+            },
+            {
+              label: "10万",
+              value: "100000"
+            },
+            {
+              label: "20万",
+              value: "200000"
+            },
+            {
+              label: "30万",
+              value: "300000"
+            },
+            {
+              label: "50万",
+              value: "500000"
+            },
+            {
+              label: "100万",
+              value: "1000000"
+            },
+            {
+              label: "200万",
+              value: "2000000"
+            },
+            {
+              label: "300万",
+              value: "3000000"
+            },
+          ],
+          kindCode: "SY_FJ_YBW1",
+          isMainRisk: true,
+          kindName: "附加医保-三者",
+          desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "1万",
+              value: "10000"
+            },
+            {
+              label: "2万",
+              value: "20000"
+            },
+            {
+              label: "5万",
+              value: "50000"
+            },
+            {
+              label: "10万",
+              value: "100000"
+            }
+          ],
+          kindCode: "SY_FJ_YBW2",
+          isMainRisk: true,
+          kindName: "附加医保-座位险(乘客)",
+          desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "1万",
+              value: "10000"
+            },
+            {
+              label: "2万",
+              value: "20000"
+            },
+            {
+              label: "5万",
+              value: "50000"
+            },
+            {
+              label: "10万",
+              value: "100000"
+            }
+          ],
+          kindCode: "SY_FJ_YBW3",
+          isMainRisk: true,
+          kindName: "附加医保-座位险(司机)",
+          desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
+        },
+        {
+          amount: "0",
+          amountDesc: "不投保",
+          coveragePremium: 0,
+          amtList: [
+            {
+              label: "不投保",
+              value: "0"
+            },
+            {
+              label: "50万",
+              value: "500000"
+            },
+            {
+              label: "100万",
+              value: "1000000"
+            },
+            {
+              label: "150万",
+              value: "1500000"
+            },
+            {
+              label: "200万",
+              value: "2000000"
+            },
+            {
+              label: "250万",
+              value: "2500000"
+            },
+            {
+              label: "300万",
+              value: "3000000"
+            },
+            {
+              label: "500万",
+              value: "5000000"
+            },
+            {
+              label: "1000万",
+              value: "10000000"
+            }
+          ],
+          desc:
+            "保险期间内,被保险人或其允许的驾驶人在法定节假日期间使用被保险机动车发生机动车第三者责任保险范围内的事故,并经公安部门或保险人查勘确认的,被保险机动车第三者责任保险所适用的责任限额在保险单载明的基础上增加一倍的险种",
+          isMainRisk: false,
+          kindCode: "BD",
+          kindName: "法定节假日限额翻倍险",
+          mainRiskCodeList: "B"
+        }
+      ],
+      totalCompanyList: [], //报价保险公司
+      continuousCompanyList: [], //续保保险公司
+      quoteno: "", //报价号
+      orderno: "", //订单号
+      queryOrders: "", //核保详情
+      inscompany: "", //保险公司名称
+      licenseNo: "", //车牌号
+      applyName: "", //车主名字
+      orderstatus: "", //订单状态
+      sumpremium: "", //保费合计
+      jqpremium: "", //交强
+      sypremium: "", //商业
+      taxamount: "", //车船税
+      jqstartdate: "", //交强时间
+      systartdate: "", //商业时间
+      mobile: "", //投保人手机号
+      //影像回显列表
+      imgList1: [],
+      imgList2: [],
+      imgList3: [],
+      imgList4: [],
+      imgList5: [],
+      imgList6: [],
+      imgList7: [],
+      imgList8: [],
+      //影像上传列表
+      imageList1: [],
+      imageList2: [],
+      imageList3: [],
+      imageList4: [],
+      // 是否禁用上传
+      uploadDisabled: false,
+      href: "",
+      pageRequest: {
+        //归属查询
+        pageNum: 1,
+        pageSize: 20,
+        columnFilters: {
+          deptId: {
+            name: "deptId",
+            value: "9"
+          },
+          containsSubDept: {
+            name: "containsSubDept",
+            value: 1
+          },
+          usertype: {
+            name: "usertype",
+            value: null
+          },
+          status: {
+            name: "status",
+            value: "1"
+          },
+          id: {
+            name: "id",
+            value: ""
+          },
+          name: {
+            name: "name",
+            value: ""
+          },
+          mobile: {
+            name: "mobile",
+            value: ""
+          }
+        }
+      },
+      userform: {},
+      qrcode: null,
+      paycodeimg: "", //展示二维码
+      ImageUrldialogVisible: false,
+      paramsEdit: "",
+      companyId: "",
+      apiType: "",
+      insureMore: true,
+      // insureLength: 5,
+      HistoryList: [], //历史记录数据
+      image1: "",
+      image2: "",
+      radio: 0,
+      sumseatCount: "", // 投保险种座位数
+      deptName: "",
+      isBottom: true,
+      logoImg: "",//报价单保险公司logo图
+      vehicleTypeoptions: [],//车辆种类
+      trafficManagementVehicleTypeoptions: [],//车辆类型
+      energyTypeoptions: [],//能源种类
+    };
+  },
+  watch: {
+    "carInfo.licenseNo": {
+      handler(val) {
+        if (val) {
+          this.carInfo.licenseNo = val.toUpperCase();
+        }
+      },
+      deep: true
+    },
+    "carInfo.frameNo": {
+      handler(val) {
+        if (val) {
+          this.carInfo.frameNo = val.toUpperCase();
+
+        }
+      },
+      deep: true
+    },
+    "carInfo.engineNo": {
+      handler(val) {
+        if (val) {
+          this.carInfo.engineNo = val.toUpperCase();
+        }
+      },
+      deep: true
+    },
+    "carInfo.seatCount": {
+      handler(val) {
+        if (val) {
+          this.sumseatCount = val - 1;
+        }
+      },
+      deep: true
+    },
+
+  },
+  components: {
+    "el-image-viewer": () =>
+      import("element-ui/packages/image/src/image-viewer")
+  },
+  created() {
+    this.getDicType("vehicleType");//车辆种类
+    this.getDicType("trafficManagementVehicleType");//车辆类型
+    this.getDicType("energyType");//能源种类
+    this.$api.letter.queryCompany().then(res => {
+      this.continuousCompanyList = res.data;
+    });
+    this.commpanyList(); //获取保险公司
+    this.defaultcarInfo = JSON.parse(JSON.stringify(this.carInfo));
+    this.defaultownerInfo = JSON.parse(JSON.stringify(this.ownerInfo));
+    this.defaultpolicyHolderInfo = JSON.parse(
+      JSON.stringify(this.policyHolderInfo)
+    );
+    this.defaultinsuredPersonInfo = JSON.parse(
+      JSON.stringify(this.insuredPersonInfo)
+    );
+    this.defaultinsureList = JSON.parse(JSON.stringify(this.insureList));
+    //--归属信息获取--
+    var userId = Cookies.get("user");
+    if (userId == "admin") {
+      this.userId = "admin";
+    } else {
+      // this.userId = userId;
+      this.$api.user.getLoginUser().then(res => {
+        if (res.code == 200) {
+          this.userform = res.data
+          this.$api.dept.getDeptById(res.data.deptId).then(res => {
+            this.deptName = res.data.name;
+          });
+        }
+
+      });
+    }
+    //--订单编辑回显--
+    this.paramsEdit = this.$route.query.data; //接收参数
+    if (this.paramsEdit) {
+      var _this = this;
+      this.tbczcarShow = false;
+      this.bbtbcarShow = false;
+      this.bbczcarShow = false;
+      const { carinfo, ownerinfo, applyinfo, insureinfo, quoteno, orderno } = _this.paramsEdit;
+      _this.carInfo = carinfo;
+      _this.ownerInfo = ownerinfo;
+      _this.policyHolderInfo = applyinfo;
+      _this.insuredPersonInfo = insureinfo;
+      _this.quoteno = quoteno;
+      _this.orderno = orderno;
+      _this.ownerInfo.age = getAgeByIdCard(_this.ownerInfo.identifyNumber)
+      _this.policyHolderInfo.age = getAgeByIdCard(_this.policyHolderInfo.identifyNumber)
+      _this.insuredPersonInfo.age = getAgeByIdCard(_this.insuredPersonInfo.identifyNumber)
+      if (_this.paramsEdit.carinfo.transferFlag) {
+        this.transferDateShow = true;
+      }
+      _this.paramsEdit.risk.map(ele => {
+        if (ele.riskCode == "0507") {
+          _this.jqchecked = true;
+          _this.jqstartDate = ele.startDate;
+          _this.jqendDate = ele.endDate;
+        } else if (ele.riskCode == "0510") {
+          _this.sychecked = true;
+          _this.systartDate = ele.startDate;
+          _this.syendDate = ele.endDate;
+          _this.insureList.map(eleA => {
+            _this.paramsEdit.king.map(eleB => {
+              if (eleA.kindCode == eleB.kindCode) {
+                eleA.amount = JSON.stringify(eleB.amount);
+              }
+            });
+          });
+        }
+      });
+      // this.HistoryList = this.paramsEdit.insAreaCompanyList;
+      let params = {
+        orderNo: this.paramsEdit.orderno,
+        orderStatus: ""
+      };
+      this.$api.letter.queryQuoteHistory(params).then(res => {
+        this.HistoryList = res.data;
+      });
+
+      //--获取影像信息--
+      _this.imageEcho(this.quoteno);
+      //--显示影像按钮--
+      _this.imageUploadShow = true;
+    } else {
+      this.jqstartDate = this.transformTime1();
+      this.jqendDate = this.oneYearPast1(this.jqstartDate);
+      this.systartDate = this.transformTime1();
+      this.syendDate = this.oneYearPast1(this.systartDate);
+    }
+  },
+  mounted() {
+    this.onScroll()
+    window.addEventListener('scroll', this.onScroll)
+  },
+  destroyed() {
+    window.removeEventListener('scroll', this.onScroll)
+  },
+  computed: {
+    issueDateOptions() {
+      return {
+        disabledDate: this.disabledDate,
+      }
+
+    },
+  },
+  methods: {
+    //--数据字典 begin --
+    getDicType(type) {
+      this.$api.insCompany.dicType(type).then(res => {
+        if (res.code == 200) {
+          this[type + 'options'] = res.data.ddList;
+        }
+      })
+    },
+    //身份证失去焦点
+    identifyblur(info) {
+      this[info].age = getAgeByIdCard(this[info].identifyNumber)
+    },
+    //省市区
+    areahandleChange(event, info) {
+      if (event[0] != null && event[1] != null && event[2] != null) {
+        this[info].province = codeToText[event[0]]
+        this[info].city = codeToText[event[1]]
+        this[info].county = codeToText[event[2]]
+      }
+    },
+    iconfftter(icon) {
+      return CommonUtil.getDataName({
+        dataList: this.global.insCompanyList,
+        value: "name",
+        label: "icon",
+        data: icon,
+      });
+    },
+    disabledDate(time) {
+      let datetime = this.carInfo.registerDate
+      return time.getTime() < new Date(datetime).getTime();
+    },
+
+    onScroll() {
+      // 变量scrollTop是滚动条滚动时,滚动条上端距离顶部的距离
+      var scrollTop = document.documentElement.scrollTop || document.body.scrollTop
+      // 变量windowHeight是可视区的高度
+      var windowHeight = document.documentElement.clientHeight || document.body.clientHeight
+      // 变量scrollHeight是滚动条的总高度(当前可滚动的页面的总高度)
+      var scrollHeight = document.documentElement.scrollHeight || document.body.scrollHeight
+      // 滚动条到底部
+      if (Math.ceil(scrollTop + windowHeight) >= scrollHeight) {
+        this.isBottom = true
+      } else {
+        this.isBottom = false
+      }
+    },
+    // 选择意外险类型
+    async ywxxxchange(index) {
+      this.accidentForm = Object.assign(
+        this.accidentForm,
+        this.accidentDataList.find(val => val.id == index)
+      );
+      this.accidentForm.fen = "1";
+      this.accidentPremium = this.accidentForm.premium;
+      this.accidentLoading = true;
+      let data = await this.$api.letter.ycgainAccidentSchemeList({
+        accidentId: index
+      });
+      if (data.code == 200) {
+        this.accidentLoading = false;
+        this.accidenttableData = data.data;
+      }
+    },
+    numberCopieschange(index) {
+      this.accidentForm.premium = Number(this.accidentPremium) * index;
+    },
+    continuousChange(id) {
+      this.continuousCompanyList.map(ele => {
+        if (ele.id == id) {
+          this.attributionform.configure = [];
+          ele.configure.map((ele, index) => {
+            this.attributionform.configure.push({
+              field: ele.field,
+              isEdit: ele.isEdit,
+              label: ele.label,
+              type: ele.type,
+              value: ""
+            });
+          });
+        }
+      });
+    },
+    //续保查询
+    continuousquery() {
+      this.$api.letter.queryRenewal(this.attributionform).then(res => {
+        if (res.code == "200") {
+          this.carInfo = res.data.carInfo;
+          this.ownerInfo = res.data.ownerInfo;
+          this.policyHolderInfo = res.data.policyHolderInfo;
+          this.insuredPersonInfo = res.data.insuredPersonInfo;
+          res.data.riskList.map(ele => {
+            if (ele.riskCode == "0507") {
+              this.jqchecked = true;
+              this.jqstartDate = ele.startDate;
+              this.jqendDate = ele.endDate;
+            } else if (ele.riskCode == "0510") {
+              this.sychecked = true;
+              this.systartDate = ele.startDate;
+              this.syendDate = ele.endDate;
+            }
+          });
+        }
+        else {
+          this.$message({
+            message: res.msg,
+            type: 'error',
+            duration: 2000
+          })
+        }
+      });
+    },
+    //永诚转保
+    renewalCodeconfirm() {
+      this.renewalCodedialogVisible = false;
+      this.quote();
+    },
+    //报价轨迹查询
+    RadioHistoryChange(e) {
+
+      let params = {
+        orderNo: this.orderno,
+        orderStatus: e
+      };
+      this.$api.letter.queryQuoteHistory(params).then(res => {
+        this.HistoryList = res.data;
+      });
+    },
+    //获取保险公司列表
+    commpanyList() {
+      this.$api.letter.gainAllowQuoteList().then(res => {
+        res.data.map(ele => {
+          ele["result"] = {};
+          ele["quoteCode"] = 0;
+          ele["checked"] = false;
+          ele["msg"] = "";
+          ele["lastYearMsg"] = "";
+          ele["agreementId"] = "";
+          ele["apiType"] = "";
+          ele["orderstatus"] = 0;
+        });
+        this.totalCompanyList = res.data;
+      });
+    },
+    Payment(id) {
+      this.carcode(id);
+    },
+    //选择协议  val:协议id  row:协议列表  index:下标  item:保险公司数据集合
+    agreementChange(val, row, index, item) {
+      let obj = {};
+      obj = row.find(item => {
+        return item;
+      })
+      this.totalCompanyList[index].apiType = obj.apiType;
+      switch (item.namesimple) {
+        case '永诚财险':
+          this.accidentForm.agreementId = item.agreementId
+          this.$api.letter.ycgainAccidentList({ companyCode: item.id, agreementId: item.agreementId }).then(res => {
+            if (res.code == 200) {
+              this.accidentDataList = res.data;
+            }
+          });
+          break;
+        case '紫金财险':
+          this.$api.letter.zijinqueryVehicleProducts({ agreementId: val, seatCount: Number(this.carInfo.seatCount) }).then(res => {
+            if (res.code == 200) {
+              let data = res.data;
+              data.map(ele => {
+                ele.quantity = 1;
+                return ele;
+              })
+              this.ziJinInsuranceData = data;
+            }
+          });
+          break;
+        default:
+          break;
+      }
+    },
+    CheckboxChange(select, row) {
+      this.accidentalDrivingVo = [];
+      select.map(val => {
+        this.accidentalDrivingVo.push(val)
+        return val;
+      })
+    },
+    zijinengageChange(select, row) {
+      this.zijinengageList = [];
+      select.map(val => {
+        this.zijinengageList.push({
+          clauseCode: val.clauseCode,
+          clauseName: val.clauseName,
+          clauses: val.clauseContent,
+          riskCode: val.riskCode,
+        })
+        return val;
+      })
+    },
+    //勾选保险公司
+    initchange(e, code, name, index) {
+      this.totalCompanyList[index].agreementId = "";
+      this.totalCompanyList[index].checked = e;
+    },
+    clearAccidentForm() {
+      this.accidentForm = {
+        fen: "1"
+      };
+    },
+    //身份证有效期长期
+    insureLongterm(e) {
+      this[e].identifyValidEndDate = "9999-12-31";
+    },
+    //较强起保日期事件
+    jqChange(e) {
+      this.jqendDate = this.oneYearPast1(e);
+    },
+    //商业起保日期事件
+    syChange(e) {
+      this.syendDate = this.oneYearPast1(e);
+    },
+    // //查看更多
+    // selectMore(leg) {
+    //   this.insureMore = false;
+    //   this.insureLength = leg;
+    // },
+    // //收起
+    // packup() {
+    //   this.insureMore = true;
+    //   this.insureLength = 5;
+    // },
+    //险别选择框事件
+    insureitemChange(e) {
+      if (e != 0) {
+        this.sychecked = true;
+      }
+    },
+    //获取产品id
+    zmdvchange(e) {
+      var data = this.zhongmeiDrivinglist;
+      data.map(ele => {
+        if (ele.id == e) {
+          this.zmDrivingForm.id = ele.id;
+          this.zmDrivingForm.rideRiskCode = ele.rideRiskCode;
+          this.zmDrivingForm.rideRiskName = ele.rideRiskName;
+          this.zmDrivingForm.quantity = 1;
+          this.DrivingMAXnum = ele.maxNum;
+          this.unitPrice = ele.unitPremium;
+        }
+        return ele;
+      });
+    },
+    //清空单选
+    zmdvclear() {
+      this.zmDrivingForm = {};
+      this.DrivingMAXnum = null;
+      this.unitPrice = "";
+    },
+    //获取驾意险份数
+    quantityhandleChange(e) {
+      this.zmDrivingForm.quantity = e;
+    },
+    all() {
+      this.quotedetailsdialogVisible = true;
+    },
+    base64ToBlob(code) {
+      code = code.replace(/[\n\r]/g, "");
+      // atob() 方法用于解码使用 base-64 编码的字符串。
+      const raw = window.atob(code);
+      const rawLength = raw.length;
+      const uInt8Array = new Uint8Array(rawLength);
+      for (let i = 0; i < rawLength; ++i) {
+        uInt8Array[i] = raw.charCodeAt(i);
+      }
+      return new Blob([uInt8Array], { type: "application/pdf" });
+    },
+    viewPdf(content) {
+      if (!content) {
+        this.$message.error("暂无文件");
+        return;
+      }
+      const blob = this.base64ToBlob(content);
+      this.href = blob;
+      if (window.navigator && window.navigator.msSaveOrOpenBlob) {
+        window.navigator.msSaveOrOpenBlob(blob);
+      } else {
+        const fileURL = URL.createObjectURL(blob);
+        window.open(fileURL);
+      }
+    },
+    creatQrCode(text) {
+      if (this.qrcode) {
+        this.qrcode.clear();
+        this.qrcode.makeCode(text);
+      } else {
+        this.qrcode = new QRCode("qrcode", {
+          text: text,
+          width: 180,
+          height: 180,
+          colorDark: "#000000",
+          colorLight: "#ffffff",
+          correctLevel: QRCode.CorrectLevel.H
+        });
+      }
+    },
+    //人工核保
+    underwriting(id) {
+      let param = {
+        companyId: id
+      };
+      this.$api.letter.manualUnderwriting(param).then(res => {
+        if (res.code == "200") {
+          this.Payment(id);
+        }
+      });
+    },
+    jqcheckedChange(e) {
+      if (e) {
+        this.jqstartDate = this.transformTime1();
+        this.jqendDate = this.oneYearPast1(this.jqstartDate);
+      } else {
+        this.jqstartDate = "";
+        this.jqendDate = "";
+      }
+    },
+    sycheckedChange(e) {
+      if (e) {
+        this.systartDate = this.transformTime1();
+        this.syendDate = this.oneYearPast1(this.systartDate);
+      } else {
+        this.systartDate = "";
+        this.syendDate = "";
+      }
+    },
+    //报价
+    quote() {
+      let starttime = new Date(this.carInfo.registerDate)
+      let endtime = new Date(this.carInfo.issueDate)
+      if (endtime < starttime) {
+        this.$message({ message: "发证日期早于初登日期", type: "error" });
+        return;
+      }
+      this.$refs["carInfo"].validate(valid => {
+        if (valid) {
+          var _this = this;
+          _this.$refs["ownerInfo"].validate(valid1 => {
+            if (valid1) {
+              if (_this.tbczcarShow == true) {
+                _this.policyHolderInfo = JSON.parse(
+                  JSON.stringify(_this.ownerInfo)
+                );
+              }
+              if (_this.bbczcarShow == true) {
+                _this.insuredPersonInfo = JSON.parse(
+                  JSON.stringify(_this.ownerInfo)
+                );
+              }
+              if (_this.bbtbcarShow == true) {
+                _this.insuredPersonInfo = JSON.parse(
+                  JSON.stringify(_this.policyHolderInfo)
+                );
+              }
+              _this.carInfo.vinNo = _this.carInfo.frameNo;
+              _this.riskList = []; //险种大类
+              _this.kindList = []; //商业险险别
+              if (
+                (!_this.jqstartDate || !_this.jqendDate) &&
+                (!_this.systartDate || !_this.syendDate)
+              ) {
+                this.$message({ message: "投保日期不能为空", type: "warning" });
+              } else {
+                if (_this.jqchecked) {
+                  //交强
+                  _this.jqstartDate = this.transformTime(_this.jqstartDate);
+                  _this.jqendDate = this.transformTime(_this.jqendDate);
+                  _this.riskList.push({
+                    amount: "200000",
+                    premium: "0",
+                    riskCode: "0507",
+                    endDate: _this.jqendDate,
+                    startDate: _this.jqstartDate,
+                    instantFlag: "0"
+                  });
+                }
+                if (_this.sychecked) {
+                  _this.systartDate = this.transformTime(_this.systartDate);
+                  _this.syendDate = this.transformTime(_this.syendDate);
+                  //商业
+                  _this.riskList.push({
+                    premium: "0",
+                    riskCode: "0510",
+                    quotePreceptCode: "",
+                    quotePreceptName: "",
+                    endDate: _this.syendDate,
+                    startDate: _this.systartDate,
+                    instantFlag: "0"
+                  });
+                  _this.insureList.map((ele, index) => {
+                    if (
+                      ele.amount != "0" &&
+                      (ele.kindCode == "D4" || ele.kindCode == "SY_FJ_YBW2")
+                    ) {
+                      _this.kindList.push({
+                        unitAmount: _this.insureList[index].amount,
+                        kindCode: _this.insureList[index].kindCode,
+                        kindName: _this.insureList[index].kindName
+                      });
+                    } else if (
+                      ele.amount != "0" &&
+                      (ele.kindCode == "MJ1" ||
+                        ele.kindCode == "MJ2" ||
+                        ele.kindCode == "MJ3" ||
+                        ele.kindCode == "MJ4")
+                    ) {
+                      _this.kindList.push({
+                        deductibleRate: _this.insureList[index].amount,
+                        kindCode: _this.insureList[index].kindCode,
+                        kindName: _this.insureList[index].kindName
+                      });
+                    } else if (ele.amount != "0") {
+                      _this.kindList.push({
+                        amount: _this.insureList[index].amount,
+                        kindCode: _this.insureList[index].kindCode,
+                        kindName: _this.insureList[index].kindName
+                      });
+                    }
+                    return ele;
+                  });
+                } else {
+                  _this.kindList = [];
+                }
+                if (_this.orderno) {
+                  this.OrderStageProcessing();
+                } else {
+                  _this.$api.letter.getquote().then(res => {
+                    _this.quoteno = res.data; //获取报价号
+                    this.OrderStageProcessing();
+                  });
+                }
+              }
+            } else {
+              document.getElementById("CheZhu").scrollIntoView();
+              _this.$message({ message: "请检查人员信息", type: "warning" });
+            }
+          });
+        } else {
+          document.getElementById("Car").scrollIntoView();
+          this.$message({ message: "请检查车辆信息", type: "warning" });
+          return false;
+        }
+      });
+    },
+    //动态函数
+    ToolClickFun(MethodName, Parameter, companyId, companyName) {
+      this[`${MethodName}`](Parameter, companyId, companyName);
+    },
+
+    //更新报价历史
+    QuotationHistory() {
+      let params = {
+        orderNo: this.orderno,
+        orderStatus: ""
+      };
+      this.$api.letter.queryQuoteHistory(params).then(res => {
+        this.HistoryList = res.data;
+      });
+    },
+    open2(Name, Msg) {
+      this.$notify.info({
+        title: Name,
+        dangerouslyUseHTMLString: true,
+        type: 'warning',
+        message: Msg,
+        customClass: "customNotifyClass",
+        duration: 7000,
+      });
+    },
+    //订单生成前数据处理事件
+    OrderStageProcessing() {
+      this.imageList3 = this.tbczcarShow ? JSON.parse(JSON.stringify(this.imageList2)) : this.imageList3;//投保人同车主
+      this.imageList4 = this.bbczcarShow ? JSON.parse(JSON.stringify(this.imageList2)) : this.imageList4;//被保人同车主
+      this.imageList4 = this.bbtbcarShow ? JSON.parse(JSON.stringify(this.imageList3)) : this.imageList4; //被保人同投保人
+      if (this.imageList2.length > 1) {
+        this.imageList3[1].imageType = "D03";
+        this.imageList4[1].imageType = "D04";
+      }
+      this.imageList3[0].imageType = "C03";
+      this.imageList4[0].imageType = "C04";
+      //上传图片
+      const mergedArray = [...this.imageList1, ...this.imageList2, ...this.imageList3, ...this.imageList4];
+      let imageparam = {
+        imageList: mergedArray,
+        quoteNo: this.quoteno
+      }
+      this.$api.letter.uploadImages(imageparam).then(responses => {
+        this.imageEcho(this.quoteno); // 获取图片
+      });
+      // 上传图片
+      //日期长度<10处理
+      const formatDate = (date) => {
+        if (date.length < 10) {
+          return this.timeformat(date);
+        }
+        return date;
+      };
+      if (this.carInfo.registerDate.length < 10) {
+        this.carInfo.registerDate = formatDate(this.carInfo.registerDate);
+      }
+      if (this.carInfo.issueDate.length < 10) {
+        this.carInfo.issueDate = formatDate(this.carInfo.issueDate);
+      }
+      if (this.carInfo.transferDate.length < 10 && this.carInfo.transferDate !== "") {
+        this.carInfo.transferDate = formatDate(this.carInfo.transferDate);
+      }
+      //日期长度<10处理
+      //提交身份证/驾驶证  ——————————————————
+      let param = {
+        userId: this.userId,
+        quoteno: this.quoteno,
+        orderNo: this.paramsEdit ? this.orderno : "",
+        carInfo: this.carInfo,
+        insuredPersonInfo: this.insuredPersonInfo,
+        ownerInfo: this.ownerInfo,
+        policyHolderInfo: this.policyHolderInfo,
+        kindList: this.kindList,
+        riskList: this.riskList,
+      };
+      this.$api.letter.generateOrder(param).then(res => {
+        if (res.code == "200") {
+          this.orderno = res.data.orderno;
+          this.totalCompanyList.map((ele, index) => {
+            if (ele.checked) {
+              //动态调用报价接口
+              ele.quoteCode = 1;
+              this.ToolClickFun(ele.cnName, index, ele.id, ele.namesimple);
+            }
+          });
+        } else {
+          this.$message({ message: res.msg, type: "warning" });
+        }
+      });
+      document.getElementById("company").scrollIntoView();
+      this.imageUploadShow = true;
+    },
+    //永安报价
+    yongan(num, id) {
+      let params = {
+        orderNo: this.orderno,
+        companyId: id,
+        agreementId: this.totalCompanyList[num].agreementId,
+      };
+      this.$api.letter.yonganquote(params).then(res => {
+        this.totalCompanyList[num].msg = res.msg;
+        if (res.msg == "重复投保" && res.code == "501") {
+          if (!!res.data.jqStartDate && !res.data.syStartDate) {
+            this.jqstartDate = res.data.jqStartDate;
+            this.jqendDate = res.data.jqEndDate;
+            this.updateRiskDates("0507", res.data.jqStartDate, res.data.jqEndDate);
+            let param = {
+              userId: this.userId,
+              quoteno: this.quoteno,
+              orderNo: this.orderno,
+              carInfo: this.carInfo,
+              insuredPersonInfo: this.insuredPersonInfo,
+              ownerInfo: this.ownerInfo,
+              policyHolderInfo: this.policyHolderInfo,
+              kindList: this.kindList,
+              riskList: this.riskList
+            };
+            return this.$api.letter.generateOrder(param).then(res => {
+              this.yongan(num, id);
+            });
+          } else if (!!res.data.syStartDate && !res.data.jqStartDate) {
+            this.systartDate = res.data.syStartDate;
+            this.syendDate = res.data.syEndDate;
+            this.updateRiskDates("0510", res.data.syStartDate, res.data.syEndDate);
+            let param = {
+              userId: this.userId,
+              quoteno: this.quoteno,
+              orderNo: this.orderno,
+              carInfo: this.carInfo,
+              insuredPersonInfo: this.insuredPersonInfo,
+              ownerInfo: this.ownerInfo,
+              policyHolderInfo: this.policyHolderInfo,
+              kindList: this.kindList,
+              riskList: this.riskList
+            };
+            return this.$api.letter.generateOrder(param).then(res => {
+              this.yongan(num, id);
+            });
+          } else if (!!res.data.syStartDate && !!res.data.jqStartDate) {
+            this.jqstartDate = res.data.jqStartDate;
+            this.jqendDate = res.data.jqEndDate;
+            this.systartDate = res.data.syStartDate;
+            this.syendDate = res.data.syEndDate;
+            this.updateRiskDates("0507", res.data.jqStartDate, res.data.jqEndDate);
+            this.updateRiskDates("0510", res.data.syStartDate, res.data.syEndDate);
+            let param = {
+              userId: this.userId,
+              quoteno: this.quoteno,
+              orderNo: this.orderno,
+              carInfo: this.carInfo,
+              insuredPersonInfo: this.insuredPersonInfo,
+              ownerInfo: this.ownerInfo,
+              policyHolderInfo: this.policyHolderInfo,
+              kindList: this.kindList,
+              riskList: this.riskList
+            };
+            return this.$api.letter.generateOrder(param).then(res => {
+              this.yongan(num, id);
+            });
+          } else {
+            this.totalCompanyList[num].quoteCode = "3";
+            this.totalCompanyList[num].msg = "重复投保";
+          }
+        } else if (
+          res.code == "500" ||
+          res.code == "502" ||
+          res.code == "-9999"
+        ) {
+          this.totalCompanyList[num].quoteCode = "-9999";
+          this.totalCompanyList[num].msg = res.msg;
+        } else {
+          this.totalCompanyList[num].quoteCode = 200;
+          this.totalCompanyList[num].result = res.data;
+          this.QuotationHistory();
+        }
+      });
+    },
+    updateRiskDates(riskCode, startDate, endDate) {
+      for (let i = 0; i < this.riskList.length; i++) {
+        if (this.riskList[i].riskCode == riskCode) {
+          this.riskList[i].startDate = startDate;
+          this.riskList[i].endDate = endDate;
+        }
+      }
+    },
+    //中煤报价
+    zhongmei(num, id) {
+      let params = {
+        accidentalDrivingVo: this.zmDrivingForm,
+        orderNo: this.orderno,
+        companyId: id,
+        agreementId: this.totalCompanyList[num].agreementId,
+      };
+      this.$api.letter.zhongmeiquote(params).then(res => {
+        this.totalCompanyList[num].msg = res.msg;
+        if (!!res.msg && res.msg.indexOf("不存在有效协议") >= 0) {
+          this.totalCompanyList[num].quoteCode = "4";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        } else if (res.data == null && res.msg.indexOf("交强险平台返回") > -1 && res.msg.indexOf(";终保日期") > -1) {
+          this.totalCompanyList[num].lastYearMsg = "<b>交强险</b><br>" + res.msg.slice(res.msg.indexOf("起保日期 "), res.msg.indexOf("地区 山西。") + 6);
+          let time =
+            res.msg.substr(res.msg.indexOf(";终保日期 ") + 6, 16) + ":00";
+          this.jqstartDate = time;
+          this.jqendDate = this.oneYearPast1(time);
+          if (this.riskList.length > 0) {
+            for (let i = 0; i < this.riskList.length; i++) {
+              if (this.riskList[i].riskCode == "0507") {
+                this.riskList[i].startDate = time;
+                this.riskList[i].endDate = this.oneYearPast1(time);
+              }
+            }
+          }
+          let param = {
+            userId: this.userId,
+            quoteno: this.quoteno,
+            orderNo: this.orderno,
+            carInfo: this.carInfo,
+            insuredPersonInfo: this.insuredPersonInfo,
+            ownerInfo: this.ownerInfo,
+            policyHolderInfo: this.policyHolderInfo,
+            kindList: this.kindList,
+            riskList: this.riskList
+          };
+          return this.$api.letter.generateOrder(param).then(res => {
+            this.zhongmei(num, id);
+          });
+        } else if (!!res.data) {
+          this.totalCompanyList[num].quoteCode = 200;
+          this.totalCompanyList[num].result = res.data;
+          this.QuotationHistory();
+        } else {
+          this.totalCompanyList[num].quoteCode = "3";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        }
+      });
+    },
+    //紫金报价
+    zijin(num, id) {
+      let params = {
+        accidentalDrivingVo: this.accidentalDrivingVo,
+        orderNo: this.orderno,
+        companyId: id,
+        agreementId: this.totalCompanyList[num].agreementId,
+      };
+      this.$api.letter.zijinquote(params).then(res => {
+        this.totalCompanyList[num].msg = res.msg;
+        if (!!res.msg && res.msg.indexOf("不存在有效协议") >= 0) {
+          this.totalCompanyList[num].quoteCode = "4";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        } else if (
+          res.data == null &&
+          res.msg.indexOf("交强险平台返回") > -1 &&
+          res.msg.indexOf(";终保日期") > -1
+        ) {
+          let time =
+            res.msg.substr(res.msg.indexOf(";终保日期 ") + 6, 16) + ":00";
+          this.jqstartDate = time;
+          this.jqendDate = this.oneYearPast1(time);
+          this.systartDate = time;
+          this.syendDate = this.oneYearPast1(time);
+          if (this.riskList.length > 0) {
+            for (let i = 0; i < this.riskList.length; i++) {
+              if (this.riskList[i].riskCode == "0507") {
+                this.riskList[i].startDate = time;
+                this.riskList[i].endDate = this.oneYearPast1(time);
+              } else if (this.riskList[i].riskCode == "0510") {
+                this.riskList[i].startDate = time;
+                this.riskList[i].endDate = this.oneYearPast1(time);
+              }
+            }
+          }
+          let param = {
+            userId: this.userId,
+            quoteno: this.quoteno,
+            orderNo: this.orderno,
+            carInfo: this.carInfo,
+            insuredPersonInfo: this.insuredPersonInfo,
+            ownerInfo: this.ownerInfo,
+            policyHolderInfo: this.policyHolderInfo,
+            kindList: this.kindList,
+            riskList: this.riskList
+          };
+          return this.$api.letter.generateOrder(param).then(res => {
+            this.zijin(num, id);
+          });
+        } else if (!!res.data) {
+          this.totalCompanyList[num].quoteCode = 200;
+          this.totalCompanyList[num].result = res.data;
+          this.QuotationHistory();
+        } else {
+          this.totalCompanyList[num].quoteCode = "3";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        }
+      });
+    },
+    //永诚报价
+    yongcheng(num, id) {
+      let accidentalDrivingVo = {};
+      if (this.accidentForm.id) {
+        let data = this.accidentDataList.find(
+          val => val.id == this.accidentForm.accidentType
+        );
+        accidentalDrivingVo = {
+          rideRiskCode: data.code ? data.code : "",
+          rideRiskName: data.name ? data.name : "",
+          quantity: this.accidentForm.fen ? this.accidentForm.fen : ""
+        };
+      }
+      let params = {
+        accidentalDrivingVo,
+        orderNo: this.orderno,
+        companyId: id,
+        cqryCdeJq: this.cqryCdeJq,
+        cqryCdeSy: this.cqryCdeSy,
+        renewalCodeJq: this.renewalCodeJq,
+        renewalCodeSy: this.renewalCodeSy,
+        agreementId: this.totalCompanyList[num].agreementId,
+      };
+      this.$api.letter.yongchengquote(params).then(res => {
+        this.totalCompanyList[num].msg = res.msg;
+        if (
+          res.data == null &&
+          res.msg.indexOf("车险平台返回") > -1 &&
+          res.msg.indexOf(";终保日期") > -1
+        ) {
+          let time =
+            res.msg.substr(res.msg.indexOf(";终保日期 ") + 6, 16) + ":00";
+          this.jqstartDate = time;
+          this.jqendDate = this.oneYearPast1(time);
+
+          if (this.riskList.length > 0) {
+            for (let i = 0; i < this.riskList.length; i++) {
+              if (this.riskList[i].riskCode == "0507") {
+                this.riskList[i].startDate = time;
+                this.riskList[i].endDate = this.oneYearPast1(time);
+              }
+            }
+          }
+          let param = {
+            userId: this.userId,
+            quoteno: this.quoteno,
+            orderNo: this.orderno,
+            carInfo: this.carInfo,
+            insuredPersonInfo: this.insuredPersonInfo,
+            ownerInfo: this.ownerInfo,
+            policyHolderInfo: this.policyHolderInfo,
+            kindList: this.kindList,
+            riskList: this.riskList
+          };
+          return this.$api.letter.generateOrder(param).then(res => {
+            this.yongcheng(num, id);
+          });
+        } else if (res.code == "200") {
+          if (res.data.warnMessageList.length > 0) {
+            this.totalCompanyList[num].lastYearMsg = "";
+            let dat = res.data.warnMessageList;
+            dat.map(ele => {
+              this.totalCompanyList[num].lastYearMsg += ele + '<br>';
+            })
+          }
+          this.totalCompanyList[num].quoteCode = 200;
+          this.totalCompanyList[num].result = res.data;
+          this.QuotationHistory();
+        } else if (res.code == "101") {
+          this.totalCompanyList[num].quoteCode = "101";
+          this.totalCompanyList[num].msg = res.msg;
+          this.cqryCdeJq = res.data.cqryCdeJq;
+          this.cqryCdeSy = res.data.cqryCdeSy;
+          let jq = res.data.renewalCodeJq.replace(/[\r\n]/g, "");
+          let jqBase64 = `data:image/png;base64,${jq}`;
+          this.renewalCodeJqImg = jqBase64;
+          if (res.data.renewalCodeSy) {
+            let sy = res.data.renewalCodeSy.replace(/[\r\n]/g, "");
+            let syBase64 = `data:image/png;base64,${sy}`;
+            this.renewalCodeSyImg = syBase64;
+          }
+          this.renewalCodedialogVisible = true;
+        } else {
+          this.totalCompanyList[num].quoteCode = "3";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        }
+      });
+    },
+    //国任报价
+    guoRen(num, id) {
+      let accidentalDrivingVo = {};
+      if (this.accidentForm.id) {
+        let data = this.accidentDataList.find(
+          val => val.id == this.accidentForm.accidentType
+        );
+        accidentalDrivingVo = {
+          rideRiskCode: data.code ? data.code : "",
+          rideRiskName: data.name ? data.name : "",
+          quantity: this.accidentForm.fen ? this.accidentForm.fen : ""
+        };
+      }
+      let params = {
+        accidentalDrivingVo,
+        orderNo: this.orderno,
+        companyId: id,
+        cqryCdeJq: this.cqryCdeJq,
+        cqryCdeSy: this.cqryCdeSy,
+        renewalCodeJq: this.renewalCodeJq,
+        renewalCodeSy: this.renewalCodeSy,
+        agreementId: this.totalCompanyList[num].agreementId,
+      };
+      this.$api.letter.guorenquote(params).then(res => {
+        this.totalCompanyList[num].msg = res.msg;
+        if (!!res.msg && res.msg.indexOf("不存在有效协议") >= 0) {
+          this.totalCompanyList[num].quoteCode = "4";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        } else if (
+          res.data == null &&
+          res.msg.indexOf("车险平台返回") > -1 &&
+          res.msg.indexOf(";终保日期") > -1
+        ) {
+          let time =
+            res.msg.substr(res.msg.indexOf(";终保日期 ") + 6, 16) + ":00";
+          this.jqstartDate = time;
+          this.jqendDate = this.oneYearPast1(time);
+          this.systartDate = time;
+          this.syendDate = this.oneYearPast1(time);
+          if (this.riskList.length > 0) {
+            for (let i = 0; i < this.riskList.length; i++) {
+              if (this.riskList[i].riskCode == "0507") {
+                this.riskList[i].startDate = time;
+                this.riskList[i].endDate = this.oneYearPast1(time);
+              } else if (this.riskList[i].riskCode == "0510") {
+                this.riskList[i].startDate = time;
+                this.riskList[i].endDate = this.oneYearPast1(time);
+              }
+            }
+          }
+          let param = {
+            userId: this.userId,
+            quoteno: this.quoteno,
+            orderNo: this.orderno,
+            carInfo: this.carInfo,
+            insuredPersonInfo: this.insuredPersonInfo,
+            ownerInfo: this.ownerInfo,
+            policyHolderInfo: this.policyHolderInfo,
+            kindList: this.kindList,
+            riskList: this.riskList
+          };
+          return this.$api.letter.generateOrder(param).then(res => {
+            this.guoRen(num, id);
+          });
+        } else if (res.code == "200") {
+          this.totalCompanyList[num].quoteCode = 200;
+          this.totalCompanyList[num].result = res.data;
+          this.QuotationHistory();
+        } else if (res.code == "101") {
+          this.totalCompanyList[num].quoteCode = "101";
+          this.totalCompanyList[num].msg = res.msg;
+          this.cqryCdeJq = res.data.cqryCdeJq;
+          this.cqryCdeSy = res.data.cqryCdeSy;
+          let jq = res.data.renewalCodeJq.replace(/[\r\n]/g, "");
+          let jqBase64 = `data:image/png;base64,${jq}`;
+          this.renewalCodeJqImg = jqBase64;
+          if (res.data.renewalCodeSy) {
+            let sy = res.data.renewalCodeSy.replace(/[\r\n]/g, "");
+            let syBase64 = `data:image/png;base64,${sy}`;
+            this.renewalCodeSyImg = syBase64;
+          }
+          this.renewalCodedialogVisible = true;
+        } else {
+          this.totalCompanyList[num].quoteCode = "3";
+          this.totalCompanyList[num].msg = res.msg;
+          return;
+        }
+      });
+    },
+
+    // 爬虫对接
+    quoteInsurance(num, id, namesimple, apiType) {
+      let api = apiType === 2 ? "pythonquote" : "anshengquote";
+      let params = {
+        orderNo: this.orderno,
+        companyId: id,
+        agreementId: this.totalCompanyList[num].agreementId,
+      };
+      this.$api.letter[api](params).then(res => {
+        this.totalCompanyList[num].msg = res.msg;
+        switch (namesimple) {
+          case '安盛天平':
+            if (res.data == null && res.msg.indexOf("交强险重复投保") > -1 && res.msg.indexOf(";终保日期") > -1) {
+              this.totalCompanyList[num].lastYearMsg = "<b>交强险</b><br>" + res.msg.slice(res.msg.indexOf("起保日期 "), res.msg.indexOf("地区 山西。") + 6);
+              let time = res.msg.substr(res.msg.indexOf(";终保日期 ") + 6, 16) + ":00";
+              this.jqstartDate = time;
+              this.jqendDate = this.oneYearPast1(time);
+              if (this.riskList.length > 0) {
+                for (let i = 0; i < this.riskList.length; i++) {
+                  if (this.riskList[i].riskCode == "0507") {
+                    this.riskList[i].startDate = time;
+                    this.riskList[i].endDate = this.oneYearPast1(time);
+                  }
+                }
+              }
+              let param = {
+                userId: this.userId,
+                quoteno: this.quoteno,
+                orderNo: this.orderno,
+                carInfo: this.carInfo,
+                insuredPersonInfo: this.insuredPersonInfo,
+                ownerInfo: this.ownerInfo,
+                policyHolderInfo: this.policyHolderInfo,
+                kindList: this.kindList,
+                riskList: this.riskList
+              };
+              return this.$api.letter.generateOrder(param).then(res => {
+                this.quoteInsurance(num, id, namesimple, apiType);
+              });
+            } else if (res.data == null && res.msg.indexOf("上年保险止期(") > -1 && res.msg.indexOf("重复投保情况") > -1) {
+              this.totalCompanyList[num].lastYearMsg += "<br><b>商业险</b><br>" + res.msg;
+              let time = res.msg.substr(res.msg.indexOf("上年保险止期(") + 7, 17) + ":00";
+              time = time.substring(0, 4) + "-" + time.substring(5, 7) + "-" + time.substring(8, 10) + " " + time.substring(12, 14) + ":" + time.substring(15, 17) + ":00"
+              this.systartDate = time;
+              this.syendDate = this.oneYearPast1(time);
+              if (this.riskList.length > 0) {
+                for (let i = 0; i < this.riskList.length; i++) {
+                  if (this.riskList[i].riskCode == "0510") {
+                    this.riskList[i].startDate = time;
+                    this.riskList[i].endDate = this.oneYearPast1(time);
+                  }
+                }
+              }
+              let param = {
+                userId: this.userId,
+                quoteno: this.quoteno,
+                orderNo: this.orderno,
+                carInfo: this.carInfo,
+                insuredPersonInfo: this.insuredPersonInfo,
+                ownerInfo: this.ownerInfo,
+                policyHolderInfo: this.policyHolderInfo,
+                kindList: this.kindList,
+                riskList: this.riskList
+              };
+              return this.$api.letter.generateOrder(param).then(res => {
+                this.quoteInsurance(num, id, namesimple, apiType);
+              });
+            } else if (!!res.data) {
+              this.totalCompanyList[num].quoteCode = 200;
+              this.totalCompanyList[num].result = res.data;
+              this.QuotationHistory();
+            } else {
+              this.totalCompanyList[num].quoteCode = "3";
+              this.totalCompanyList[num].msg = res.msg;
+              return;
+            }
+            break;
+          case '中国人寿':
+            if (res.data == null && res.msg.indexOf("交强险") > -1 && res.msg.indexOf(";终保日期") > -1) {
+              this.totalCompanyList[num].lastYearMsg = "<b>交强险</b><br>" + res.msg.slice(res.msg.indexOf("起保日期 "), res.msg.indexOf("地区 山西。") + 6);
+              let time = res.msg.substr(res.msg.indexOf(";终保日期") + 6, 16) + ":00";
+              this.jqstartDate = time;
+              this.jqendDate = this.oneYearPast1(time);
+              if (this.riskList.length > 0) {
+                for (let i = 0; i < this.riskList.length; i++) {
+                  if (this.riskList[i].riskCode == "0507") {
+                    this.riskList[i].startDate = time;
+                    this.riskList[i].endDate = this.oneYearPast1(time);
+                  }
+                }
+              }
+              let param = {
+                userId: this.userId,
+                quoteno: this.quoteno,
+                orderNo: this.orderno,
+                carInfo: this.carInfo,
+                insuredPersonInfo: this.insuredPersonInfo,
+                ownerInfo: this.ownerInfo,
+                policyHolderInfo: this.policyHolderInfo,
+                kindList: this.kindList,
+                riskList: this.riskList
+              };
+              return this.$api.letter.generateOrder(param).then(res => {
+                this.quoteInsurance(num, id, namesimple, apiType);
+              });
+            } else if (res.data == null && res.msg.indexOf("商业险-平台返回") > -1 && res.msg.indexOf("保险期间:") > -1) {
+              this.totalCompanyList[num].lastYearMsg += "<br><b>商业险</b><br>" + res.msg.slice(res.msg.indexOf("保险期间:"), -1);
+              let time = res.msg.substr(res.msg.indexOf("保险期间:") + 18, 12) + "00";
+              time = time.substring(0, 4) + "-" + time.substring(4, 6) + "-" + time.substring(6, 8) + " " + time.substring(8, 10) + ":" + time.substring(10, 12) + ":" + time.substring(12, 14);
+              this.systartDate = time;
+              this.syendDate = this.oneYearPast1(time);
+              if (this.riskList.length > 0) {
+                for (let i = 0; i < this.riskList.length; i++) {
+                  if (this.riskList[i].riskCode == "0510") {
+                    this.riskList[i].startDate = time;
+                    this.riskList[i].endDate = this.oneYearPast1(time);
+                  }
+                }
+              }
+              let param = {
+                userId: this.userId,
+                quoteno: this.quoteno,
+                orderNo: this.orderno,
+                carInfo: this.carInfo,
+                insuredPersonInfo: this.insuredPersonInfo,
+                ownerInfo: this.ownerInfo,
+                policyHolderInfo: this.policyHolderInfo,
+                kindList: this.kindList,
+                riskList: this.riskList
+              };
+              return this.$api.letter.generateOrder(param).then(res => {
+                this.quoteInsurance(num, id, namesimple, apiType);
+              });
+            } else if (!!res.data) {
+              this.totalCompanyList[num].quoteCode = 200;
+              this.totalCompanyList[num].result = res.data;
+              this.QuotationHistory();
+            } else {
+              this.totalCompanyList[num].quoteCode = "3";
+              this.totalCompanyList[num].msg = res.msg;
+              return;
+            }
+            break;
+          case '恒邦财险':
+            if (res.data == null && res.msg.indexOf("交强险平台返回") > -1 && res.msg.indexOf(";终保日期") > -1) {
+              this.totalCompanyList[num].lastYearMsg = "<b>交强险</b><br>" + res.msg.slice(res.msg.indexOf("起保日期 "), -1);
+              let time = res.msg.substr(res.msg.indexOf(";终保日期") + 6, 16) + ":00";
+              this.jqstartDate = time;
+              this.jqendDate = this.oneYearPast1(time);
+              if (this.riskList.length > 0) {
+                for (let i = 0; i < this.riskList.length; i++) {
+                  if (this.riskList[i].riskCode == "0507") {
+                    this.riskList[i].startDate = time;
+                    this.riskList[i].endDate = this.oneYearPast1(time);
+                  }
+                }
+              }
+              let param = {
+                userId: this.userId,
+                quoteno: this.quoteno,
+                orderNo: this.orderno,
+                carInfo: this.carInfo,
+                insuredPersonInfo: this.insuredPersonInfo,
+                ownerInfo: this.ownerInfo,
+                policyHolderInfo: this.policyHolderInfo,
+                kindList: this.kindList,
+                riskList: this.riskList
+              };
+              return this.$api.letter.generateOrder(param).then(res => {
+                this.quoteInsurance(num, id, namesimple, apiType);
+              });
+            } else if (res.data == null && res.msg.indexOf("平台校验,重复投保") > -1 && res.msg.indexOf("终保日期:") > -1) {
+              this.totalCompanyList[num].lastYearMsg += "<br><b>商业险</b><br>" + res.msg.slice(res.msg.indexOf("起保日期"), res.msg.indexOf("签单日期"));
+              let time = res.msg.substr(res.msg.indexOf("终保日期:") + 5, 10) + " 00:00:00";
+              this.systartDate = time;
+              this.syendDate = this.oneYearPast1(time);
+              if (this.riskList.length > 0) {
+                for (let i = 0; i < this.riskList.length; i++) {
+                  if (this.riskList[i].riskCode == "0510") {
+                    this.riskList[i].startDate = time;
+                    this.riskList[i].endDate = this.oneYearPast1(time);
+                  }
+                }
+              }
+              let param = {
+                userId: this.userId,
+                quoteno: this.quoteno,
+                orderNo: this.orderno,
+                carInfo: this.carInfo,
+                insuredPersonInfo: this.insuredPersonInfo,
+                ownerInfo: this.ownerInfo,
+                policyHolderInfo: this.policyHolderInfo,
+                kindList: this.kindList,
+                riskList: this.riskList
+              };
+              return this.$api.letter.generateOrder(param).then(res => {
+                this.quoteInsurance(num, id, namesimple, apiType);
+              });
+            } else if (!!res.data) {
+              this.totalCompanyList[num].quoteCode = 200;
+              this.totalCompanyList[num].result = res.data;
+              this.QuotationHistory();
+            } else {
+              this.totalCompanyList[num].quoteCode = "3";
+              this.totalCompanyList[num].msg = res.msg;
+              return;
+            }
+            break;
+          case '众安财险':
+            if (!!res.data) {
+              this.totalCompanyList[num].quoteCode = 200;
+              this.totalCompanyList[num].result = res.data;
+              this.QuotationHistory();
+            } else {
+              this.totalCompanyList[num].quoteCode = "3";
+              this.totalCompanyList[num].msg = res.msg;
+              return;
+            }
+            break;
+          default:
+            break;
+        }
+
+      });
+    },
+    //安盛天平
+    ansheng(num, id, namesimple) {
+      this.quoteInsurance(num, id, namesimple, this.totalCompanyList[num].apiType);
+    },
+    //众安
+    zhongan(num, id, namesimple) {
+      this.quoteInsurance(num, id, namesimple, this.totalCompanyList[num].apiType);
+    },
+    //人寿
+    renshou(num, id, namesimple) {
+      this.quoteInsurance(num, id, namesimple, this.totalCompanyList[num].apiType);
+    },
+    //恒邦
+    hengbang(num, id, namesimple) {
+      this.quoteInsurance(num, id, namesimple, this.totalCompanyList[num].apiType);
+    },
+    // 爬虫对接
+    qoutedetail(companyId) {
+      let params = {
+        companyId: companyId
+      };
+      this.$api.letter.getByCompanyId(params).then(res => {
+        if (res.code == "200") {
+          var data = res.data;
+          data.kindinfo.map((ele, index) => {
+            switch (ele.kindCode) {
+              case "A":
+                ele.amount = "投保";
+                break;
+              case "D4":
+              case "SY_FJ_YBW2":
+                ele.unitAmount = this.toChinesNum(ele.unitAmount);
+                break;
+              case "MJ1":
+              case "MJ2":
+              case "MJ3":
+              case "MJ4":
+                ele.deductibleRate = ele.deductibleRate + "%";
+                break;
+              default:
+                ele.amount = this.toChinesNum(ele.amount);
+            }
+            return ele;
+          });
+          this.queryOrders = data;
+        }
+      });
+      this.quotedetailsdialogVisible = true;
+    },
+    imageUpload() {
+      this.imageUploaddialogVisible = true;
+    },
+    imageEcho(quotenos) {
+      //影像查询
+      this.$api.letter.findByQuoteNo(quotenos)
+        .then(res => {
+          if (res.code == "200") {
+            this.imageList1 = [];
+            this.imageList2 = [];
+            this.imageList3 = [];
+            this.imageList4 = [];
+            Object.keys(res.data).forEach((keys) => {
+              if (res.data[keys].url) {
+                res.data[keys].url = process.env.BASE_URL + res.data[keys].url;
+                switch (keys) {
+                  case 'C01':
+                    this.imageList1.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList1.push(res.data[keys]);
+                    break;
+                  case 'D01':
+                    this.imageList1.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList2.push(res.data[keys]);
+
+                    break;
+                  case 'C02':
+                    this.imageList2.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList3.push(res.data[keys]);
+
+                    break;
+                  case 'D02':
+                    this.imageList2.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList4.push(res.data[keys]);
+
+                    break;
+                  case 'C03':
+                    this.imageList3.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList5.push(res.data[keys]);
+
+                    break;
+                  case 'D03':
+                    this.imageList3.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList6.push(res.data[keys]);
+
+                    break;
+                  case 'C04':
+                    this.imageList4.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList7.push(res.data[keys]);
+
+                    break;
+                  case 'D04':
+                    this.imageList4.push({
+                      imageId: res.data[keys].imageId,
+                      imageType: res.data[keys].imageType,
+                    })
+                    this.imgList8.push(res.data[keys]);
+
+                    break;
+                  default:
+                    break;
+                }
+              }
+            });
+
+          } else {
+            this.$message({ message: res.msg, type: "info" });
+          }
+        });
+
+    },
+    hbsubmitdialog(data) {
+      this.companyId = data.result.companyId;
+      this.apiType = data.apiType;
+      this.hbsubmitdialogVisible = true;
+      switch (data.namesimple) {
+        case "紫金财险":
+          this.$api.letter.zijinqueryClauseData({ companyId: this.companyId }).then(res => {
+            this.zijinengageListData = res.data;
+          });
+          break;
+        default:
+
+          break;
+      }
+
+    },
+    hbsubmit() {
+      this.hbsubmitdialogVisible = false;
+      this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(async res => {
+        if (res.code == 200) {
+          var data = res.data;
+          this.queryOrders = data;
+          const loading = this.$loading({
+            lock: true,
+            text: "Loading",
+            spinner: "el-icon-loading",
+            background: "rgba(0, 0, 0, 0.7)"
+          });
+          switch (this.queryOrders.inscompany) {
+            case "永安财险":
+              let api = "";
+              api = this.apiType == 2 ? "pythonsubmitImage" : "insyongansubmitImage"
+              await this.$api.letter[api]({
+                companyId: this.companyId
+              })
+                .then(res => {
+                  if (res.code == "200") {
+                    var _this = this;
+                    let api1 = "";
+                    api1 = this.apiType == 2 ? "pythonaudit" : "yonganaudit"
+                    this.$api.letter[api1]({
+                      companyId: this.companyId,
+                    })
+                      .then(res => {
+                        var _this = this;
+                        if (res.code == "200") {
+                          loading.close();
+                          this.$message({
+                            message: "核保成功",
+                            type: "success"
+                          });
+                          this.QuotationHistory();
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                            _this.underwritingdialogVisible = true;
+                          });
+                        } else {
+                          loading.close();
+                          this.$message({
+                            showClose: true,
+                            message: this.queryOrders.inscompany + "提核--:" + res.msg,
+                            type: "error",
+                            duration: 0
+                          });
+                        }
+                      });
+                  } else {
+                    this.$message({
+                      message: this.queryOrders.inscompany + "影像:" + res.msg,
+                      type: "error",
+                      duration: 7000
+                    });
+                    loading.close();
+                  }
+                });
+
+              break;
+            case "中煤财险":
+              await this.$api.letter
+                .insZhongmeisubmitImage({
+                  companyId: this.companyId
+                })
+                .then(res => {
+                  if (res.code == "200") {
+                    var _this = this;
+                    _this.$api.letter
+                      .Zhongmeiaudit({
+                        companyId: this.companyId,
+                        jqappoint: "",
+                        syappoint: ""
+                      })
+                      .then(res => {
+                        if (res.code == "200") {
+                          loading.close();
+                          _this.$message({
+                            message: "核保成功",
+                            type: "success"
+                          });
+                          this.QuotationHistory();
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                            _this.underwritingdialogVisible = true;
+                          });
+                        } else {
+                          loading.close();
+                          _this.$message({
+                            showClose: true,
+                            message: this.queryOrders.inscompany + "提核--:" + res.msg,
+                            type: "error",
+                            duration: 0
+                          });
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                          });
+                        }
+                      });
+                  } else {
+                    this.$message({
+                      message: this.queryOrders.inscompany + "影像--:" + res.msg,
+                      type: "error",
+                      duration: 7000
+                    });
+                    loading.close();
+                  }
+                });
+              break;
+            case "紫金财险":
+              await this.$api.letter
+                .zijinsubmitImage({
+                  companyId: this.companyId
+                })
+                .then(res => {
+                  if (res.code == "200") {
+                    var _this = this;
+                    _this.$api.letter
+                      .zijinaudit({
+                        companyId: this.companyId,
+                        engageList: this.zijinengageList,
+                      })
+                      .then(res => {
+                        if (res.code == "200") {
+                          loading.close();
+                          _this.$message({
+                            message: "核保成功",
+                            type: "success"
+                          });
+                          this.QuotationHistory();
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                            _this.underwritingdialogVisible = true;
+                          });
+                        } else {
+                          loading.close();
+                          _this.$message({
+                            showClose: true,
+                            message: this.queryOrders.inscompany + "提核--:" + res.msg,
+                            type: "error",
+                            duration: 0
+                          });
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                          });
+                        }
+                      });
+                  } else {
+                    this.$message({
+                      message: this.queryOrders.inscompany + "影像--:" + res.msg,
+                      type: "error",
+                      duration: 7000
+                    });
+                    loading.close();
+                  }
+                });
+              break;
+            case "国任财险":
+              await this.$api.letter
+                .insguorensubmitImage({
+                  companyId: this.companyId
+                })
+                .then(res => {
+                  if (res.code == "200") {
+                    var _this = this;
+                    _this.$api.letter
+                      .gunrenaudit({
+                        companyId: this.companyId
+                      })
+                      .then(res => {
+                        if (res.code == "200") {
+                          loading.close();
+                          _this.cqryCdeJq = "";
+                          _this.cqryCdeSy = "";
+                          _this.renewalCodeJq = "";
+                          _this.renewalCodeSy = "";
+                          this.$message({
+                            message: "核保成功",
+                            type: "success"
+                          });
+                          this.QuotationHistory();
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                            _this.underwritingdialogVisible = true;
+                          });
+                        } else {
+                          loading.close();
+                          this.$message({
+                            showClose: true,
+                            message: res.msg,
+                            type: "error",
+                            duration: 0
+                          });
+                        }
+                      });
+                  } else {
+                    loading.close();
+                    this.$message({
+                      message: res.msg,
+                      type: "error",
+                      duration: 7000
+                    });
+                  }
+                });
+              break;
+            case "恒邦财险":
+            case "安盛天平":
+            case "众安财险":
+            case "中国人寿":
+              let hengbangapi = "";
+              hengbangapi = this.apiType == 2 ? "pythonsubmitImage" : "anshengsubmitImage"
+              await this.$api.letter[hengbangapi]({
+                subOrderNo: this.companyId
+              })
+                .then(res => {
+                  if (res.code == "200") {
+                    var _this = this;
+                    let hengbangapi1 = "";
+                    hengbangapi1 = this.apiType == 2 ? "pythonaudit" : "anshengaudit"
+                    _this.$api.letter
+                    [hengbangapi1]({
+                      subOrderNo: this.companyId,
+                    })
+                      .then(res => {
+                        if (res.code == "200") {
+                          loading.close();
+                          this.$message({
+                            message: "核保成功",
+                            type: "success"
+                          });
+                          this.QuotationHistory();
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                            _this.underwritingdialogVisible = true;
+                          });
+                        } else {
+                          loading.close();
+                          this.$message({
+                            showClose: true,
+                            message: this.queryOrders.inscompany + "提核--:" + res.msg,
+                            type: "error",
+                            duration: 0
+                          });
+                        }
+                      });
+                  } else {
+                    loading.close();
+                    this.$message({
+                      message: this.queryOrders.inscompany + "影像--:" + res.msg,
+                      type: "error",
+                      duration: 7000
+                    });
+                  }
+                });
+              break;
+            case "永诚财险":
+              await this.$api.letter
+                .insyongchengsubmitImage({
+                  companyId: this.companyId
+                })
+                .then(res => {
+                  if (res.code == "200") {
+                    var _this = this;
+                    _this.$api.letter
+                      .yongchengaudit({
+                        companyId: this.companyId
+                      })
+                      .then(res => {
+                        if (res.code == "200") {
+                          loading.close();
+                          _this.cqryCdeJq = "";
+                          _this.cqryCdeSy = "";
+                          _this.renewalCodeJq = "";
+                          _this.renewalCodeSy = "";
+                          this.$message({
+                            message: "核保成功",
+                            type: "success"
+                          });
+                          this.QuotationHistory();
+                          _this.$api.letter.getByCompanyId({ companyId: this.companyId }).then(res => {
+                            _this.orderstatus = res.data.orderstatus; //订单状态
+                            _this.underwritingdialogVisible = true;
+                          });
+                        } else {
+                          loading.close();
+                          this.$message({
+                            showClose: true,
+                            message: this.queryOrders.inscompany + "提核--:" + res.msg,
+                            type: "error",
+                            duration: 0
+                          });
+                        }
+                      });
+                  } else {
+                    loading.close();
+                    this.$message({
+                      message: this.queryOrders.inscompany + "影像--:" + res.msg,
+                      type: "error",
+                      duration: 7000
+                    });
+                  }
+                });
+              break;
+          }
+        }
+      });
+    },
+    //当前日期的次日
+    transformTime1() {
+      var date = new Date();
+      date.setFullYear(date.getFullYear());
+      date.setTime(date.getTime() + 24 * 60 * 60 * 1000);
+      var strYear = date.getFullYear();
+      var strDay = date.getDate();
+      var strMonth = date.getMonth() + 1;
+      var hh = date.getHours();
+      if (hh < 10) {
+        hh = "0" + hh;
+      }
+      if (strMonth < 10) {
+        strMonth = "0" + strMonth;
+      }
+      if (strDay < 10) {
+        strDay = "0" + strDay;
+      }
+      var datastr = strYear + "-" + strMonth + "-" + strDay + " " + "00:00:00";
+      return datastr;
+    },
+    //传入日期的次日
+    transformTime2(time) {
+      var date = new Date(time);
+      date.setFullYear(date.getFullYear());
+      date.setTime(date.getTime() + 24 * 60 * 60 * 1000); //一年后的前一天
+      var strYear = date.getFullYear();
+      var strDay = date.getDate();
+      var strMonth = date.getMonth() + 1;
+      var hh = date.getHours();
+      if (hh < 10) {
+        hh = "0" + hh;
+      }
+      if (strMonth < 10) {
+        strMonth = "0" + strMonth;
+      }
+      if (strDay < 10) {
+        strDay = "0" + strDay;
+      }
+      var datastr = strYear + "-" + strMonth + "-" + strDay + " " + "00:00:00";
+      return datastr;
+    },
+    //时间转换
+    transformTime(date) {
+      var d = new Date(date);
+      var strYear = d.getFullYear();
+      var strMonth = d.getMonth() + 1;
+      var strDay = d.getDate();
+      var hh = d.getHours();
+      var minutes = d.getMinutes(); // 分
+      var Seconds = d.getSeconds();
+      if (hh < 10) {
+        hh = "0" + hh;
+      }
+      if (minutes < 10) {
+        minutes = "0" + minutes;
+      }
+      if (Seconds < 10) {
+        Seconds = "0" + Seconds;
+      }
+      if (strMonth < 10) {
+        strMonth = "0" + strMonth;
+      }
+      if (strDay < 10) {
+        strDay = "0" + strDay;
+      }
+      var datetime =
+        strYear + "-" + strMonth + "-" + strDay + " " + hh + ":" + minutes + ":" + Seconds;
+      return datetime;
+    },
+    timeformat(date) {
+      var d = new Date(date);
+      var strYear = d.getFullYear();
+      var strMonth = d.getMonth() + 1;
+      var strDay = d.getDate();
+      var hh = d.getHours();
+      if (hh < 10) {
+        hh = "0" + hh;
+      }
+      if (strMonth < 10) {
+        strMonth = "0" + strMonth;
+      }
+      if (strDay < 10) {
+        strDay = "0" + strDay;
+      }
+      var datetime = strYear + "-" + strMonth + "-" + strDay;
+      return datetime;
+    },
+    oneYearPast1(time) {//明年减一秒
+      var date = new Date(time);
+      date.setSeconds(date.getSeconds() - 1);
+      date.setFullYear(date.getFullYear() + 1); //一年后
+      date.setTime(date.getTime()); //一年后的前一天
+      var strYear = date.getFullYear();
+      var strDay = date.getDate();
+      var strMonth = date.getMonth() + 1;
+      var hh = date.getHours();
+      var minutes = date.getMinutes(); // 分
+      var Seconds = date.getSeconds();
+      if (hh < 10) {
+        hh = "0" + hh;
+      }
+      if (minutes < 10) {
+        minutes = "0" + minutes;
+      }
+      if (Seconds < 10) {
+        Seconds = "0" + Seconds;
+      }
+      if (strMonth < 10) {
+        strMonth = "0" + strMonth;
+      }
+      if (strDay < 10) {
+        strDay = "0" + strDay;
+      }
+      var datastr =
+        strYear + "-" + strMonth + "-" + strDay + " " + hh + ":" + minutes + ":" + Seconds;
+      return datastr;
+    },
+    tbczcarShowChange() {
+      //投保人同车主
+      switch (this.tbczcarShow) {
+        case true:
+          this.policyHolderInfo = JSON.parse(JSON.stringify(this.ownerInfo));
+          break;
+        default:
+          for (let key in this.policyHolderInfo) {
+            this.policyHolderInfo[key] = "";
+            this.selectedOptions2 = [];
+          }
+      }
+    },
+    bbczcarShowChange() {
+      //被保人同车主
+      switch (this.bbczcarShow) {
+        case true:
+          this.bbtbcarShow = false;
+          this.insuredPersonInfo = JSON.parse(JSON.stringify(this.ownerInfo));
+          break;
+        default:
+          for (let key in this.insuredPersonInfo) {
+            this.insuredPersonInfo[key] = "";
+            this.selectedOptions3 = [];
+          }
+      }
+    },
+    bbtbcarShowChange() {
+      //被保人同投保人
+      switch (this.bbtbcarShow) {
+        case true:
+          this.bbczcarShow = false;
+          this.insuredPersonInfo = JSON.parse(
+            JSON.stringify(this.policyHolderInfo)
+          );
+          break;
+        default:
+          for (let key in this.insuredPersonInfo) {
+            this.insuredPersonInfo[key] = "";
+          }
+      }
+    },
+    //VIN查询
+    toChooseVin(cartype) {
+      if (cartype == "" || cartype == null) {
+        this.$message({
+          message: "请输入车架号",
+          type: "warning"
+        });
+      } else {
+        const loading = this.$loading({
+          lock: true,
+          text: "Loading",
+          spinner: "el-icon-loading",
+          background: "rgba(0, 0, 0, 0.7)"
+        });
+        this.$api.letter.insZhongmeiVIN(this.carInfo.frameNo).then(res => {
+          if (res.code == "200") {
+            this.reslist = res.data;
+            loading.close();
+            this.chexingdialogVisible = true;
+          } else {
+            loading.close();
+            this.$message.error(res.msg);
+          }
+        });
+      }
+    },
+    //品牌型号查询
+    toChooseVehicleType(cartype) {
+      if (cartype == "" || cartype == null) {
+        this.$message({
+          message: "请输入车型名称",
+          type: "warning"
+        });
+      } else {
+        const loading = this.$loading({
+          lock: true,
+          text: "Loading",
+          spinner: "el-icon-loading",
+          background: "rgba(0, 0, 0, 0.7)"
+        });
+        let param = {
+          modelName: cartype
+        };
+        this.$api.letter.ModelsQuery(param).then(res => {
+          if (res.code == "200") {
+            loading.close();
+            this.reslist = res.data;
+            this.chexingdialogVisible = true;
+          } else {
+            loading.close();
+            this.$message.error(res.msg);
+          }
+        });
+      }
+    },
+    //车型列表双击选中事件
+    reslistCurrentChange(row, column, event) {
+      this.carInfo.brandName = row.brandCN; //品牌型号
+      this.carInfo.modelcname = row.modelName; //品牌型号
+      this.carInfo.caryear = row.marketYear; //年款
+      this.carInfo.seatCount = row.ratedPassengerCapacity; //座位数
+      this.carInfo.purchasePrice = row.replacementValue; //购置价
+      this.carInfo.modelCode = row.modelCode; //型号代码
+      this.carInfo.familyName = row.series; //系列
+      this.carInfo.enginedesc = row.displacement; //排量
+      this.carInfo.powertype = row.fuelType; //燃油种类
+      this.carInfo.powerScale = row.powerScale; //功率
+      this.chexingdialogVisible = false;
+    },
+    //是否过户事件
+    transferFlagChange(e) {
+      if (e) {
+        this.transferDateShow = true;
+      } else {
+        this.transferDateShow = false;
+      }
+    },
+
+    //影像上传
+    drivingupload(file, imageIdList, imgurl, type) {
+      this[imgurl].push(file)
+      var file = file.raw;
+      const params = new FormData(); // 声明formData数据类型
+      params.append("multipartFile", file);
+      params.append("type", "image");
+      this.$api.letter.uploadFile(params).then(res => {
+        if (res.code == "200") {
+          if (this[imageIdList].some(v => v.imageType == type)) {
+            this[imageIdList].map(val => {
+              if (val.imageType == type) {
+                val.imageId = res.data.id;
+              }
+            })
+          } else {
+            this[imageIdList].push({
+              imageId: res.data.id,
+              imageType: type,
+            })
+          }
+        }
+      });
+    },
+    handleRemove1(file, imageIdList, imgList) {
+      this[imageIdList].map((ele, index) => {
+        if (file.imageId === ele.imageId) {
+          this[imageIdList].splice(index, 1);
+        }
+        return ele;
+      });
+      if (file.imageId) {
+        this[imgList].map((ele, index) => {
+          if (file.imageId === ele.imageId) {
+            this[imgList].splice(index, 1);
+          }
+          return ele;
+        });
+      } else {
+        this[imgList].map((ele, index) => {
+          if (file.uid === ele.uid) {
+            this[imgList].splice(index, 1);
+          }
+          return ele;
+        });
+      }
+    },
+    carfrontChange(file) {
+      //选择行驶证正面
+      var file = file.raw;
+      let files = window.URL.createObjectURL(file); //转临时路径
+      this.carfrontImg = files;
+      const params = new FormData(); // 声明formData数据类型
+      params.append("multipartFile", file);
+      params.append("type", "image");
+      this.$api.letter.uploadFile(params).then(res => {
+        if (res.code == "200") {
+          this.CarFrontFile = file;//文件流
+          if (this.imageList1.some(v => v.imageType == 'C01')) {
+            this.imageList1.map(val => {
+              if (val.imageType == 'C01') {
+                val.imageId = res.data.id;
+              }
+            })
+          } else {
+            this.imageList1.push({
+              imageId: res.data.id,
+              imageType: "C01",
+            })
+          }
+        } else {
+          this.$message({ message: res.msg, type: "warning" });
+        }
+      });
+
+    },
+    carbackChange(file) {
+      //选择行驶证反面
+      var file = file.raw;
+      let files = window.URL.createObjectURL(file); //转临时路径
+      this.carbackImg = files;
+      const params = new FormData(); // 声明formData数据类型
+      params.append("multipartFile", file);
+      params.append("type", "image");
+      this.$api.letter.uploadFile(params).then(res => {
+        if (res.code == "200") {
+          this.CarBackFile = file;
+          if (this.imageList1.some(v => v.imageType == 'D01')) {
+            this.imageList1.map(val => {
+              if (val.imageType == 'D01') {
+                val.imageId = res.data.id;
+              }
+            })
+          } else {
+            this.imageList1.push({
+              imageId: res.data.id,
+              imageType: "D01",
+            })
+          }
+        } else {
+          this.$message({ message: res.msg, type: "warning" });
+        }
+      });
+    },
+    userfrontChange(file) {
+      //选择身份证正面
+      var file = file.raw;
+      let files = window.URL.createObjectURL(file); //转链接
+      this.userfrontImg = files;
+      const params = new FormData(); // 声明formData数据类型
+      params.append("multipartFile", file);
+      params.append("type", "image");
+      this.$api.letter.uploadFile(params).then(res => {
+        if (res.code == "200") {
+          let type = 'C0' + this.userIndex;
+          if (this['imageList' + this.userIndex].some(v => v.imageType == type)) {
+            this['imageList' + this.userIndex].map(val => {
+              if (val.imageType == type) {
+                val.imageId = res.data.id;
+              }
+            })
+          } else {
+            this['imageList' + this.userIndex].push({
+              imageId: res.data.id,
+              imageType: type,
+            })
+          }
+          this[type + 'File'] = file;
+        } else {
+          this.$message({ message: res.msg, type: "warning" });
+        }
+      });
+    },
+    userbackChange(file) {
+      //选择身份证背面
+      var file = file.raw;
+      let files = window.URL.createObjectURL(file); //转链接
+      this.userbackImg = files;
+      const params = new FormData(); // 声明formData数据类型
+      params.append("multipartFile", file);
+      params.append("type", "image");
+      this.$api.letter.uploadFile(params).then(res => {
+        if (res.code == "200") {
+          let type = 'D0' + this.userIndex;
+          if (this['imageList' + this.userIndex].some(v => v.imageType == type)) {
+            this['imageList' + this.userIndex].map(val => {
+              if (val.imageType == type) {
+                val.imageId = res.data.id;
+              }
+            })
+          } else {
+            this['imageList' + this.userIndex].push({
+              imageId: res.data.id,
+              imageType: type,
+            })
+          }
+          this[type + 'File'] = file;
+        } else {
+          this.$message({ message: res.msg, type: "warning" });
+        }
+      });
+    },
+    CarOCRdiscern() {
+      //car识别
+      const loading = this.$loading({
+        lock: true,
+        text: "Loading",
+        spinner: "el-icon-loading",
+        background: "rgba(0, 0, 0, 0.7)"
+      });
+      const params = new FormData(); // 声明formData数据类型
+      params.append("image1", this.CarFrontFile);
+      params.append("image2", this.CarBackFile);
+      this.$api.letter.drivingPermit(params).then(res => {
+        loading.close();
+        if (res.msg == "201") {
+          this.$message({ message: "请正确选择驾驶证", type: "warning" });
+        }
+        var carInfo = res.data.carInfo;
+        carInfo.issueDate =
+          carInfo.issueDate.substring(0, 4) +
+          "-" +
+          carInfo.issueDate.substring(4, 6) +
+          "-" +
+          carInfo.issueDate.substring(6, 8);
+        carInfo.registerDate =
+          carInfo.registerDate.substring(0, 4) +
+          "-" +
+          carInfo.registerDate.substring(4, 6) +
+          "-" +
+          carInfo.registerDate.substring(6, 8);
+        this.carform.licenseNo = carInfo.plateNo; //车牌号
+        this.carform.modelcname = carInfo.backOcrID; //品牌型号
+        this.carform.frameNo = carInfo.vIN; //车架号
+        this.carform.engineNo = carInfo.engine; //发动机号
+        this.carform.registerDate = carInfo.registerDate; //车牌号
+        this.carform.issueDate = carInfo.issueDate; //车牌号
+        this.carform.grossMass = carInfo.grossMass; //总质量
+        this.carform.unladenMass = carInfo.unladenMass; //整备质量
+        this.carform.approvedPassengersCapacity =
+          carInfo.approvedPassengersCapacity; //核定载客数
+      });
+    },
+    CarOCRconfirm() {
+      //传参
+      this.carInfo.licenseNo = this.carform.licenseNo; //车牌号
+      this.carInfo.modelcname = this.carform.modelcname; //品牌型号
+      this.carInfo.vinNo = this.carform.frameNo; //车架号
+      this.carInfo.frameNo = this.carform.frameNo; //车架号
+      this.carInfo.engineNo = this.carform.engineNo; //发动机号
+      this.carInfo.registerDate = this.carform.registerDate; //车牌号
+      this.carInfo.issueDate = this.carform.issueDate; //车牌号
+      this.carInfo.seatCount = this.carform.approvedPassengersCapacity; //核定载客数
+      this.carInfo.vehicleweight = this.carform.grossMass; //总质量
+      this.carInfo.completeKerbMass = this.carform.unladenMass; //整备质量
+      this.uploadcardialogVisible = false;
+    },
+    handleRemove(e) {
+      //删除图片
+      this[e] = "";
+    },
+    //预览图片
+    handlePictureCardPreview(img) {
+      this.ProViewImg = img;
+      this.showViewer = true;
+    },
+    // 关闭查看器
+    closeViewer() {
+      this.showViewer = false;
+    },
+    uploaduser(index) {
+      this.userIndex = index;
+      this.uploaduserdialogVisible = true;
+    },
+    userOCRdiscern() {
+      //OCR识别
+      switch (this.userIndex) {
+        case 2:
+          const params1 = new FormData(); // 声明formData数据类型
+          params1.append("image1", this.C02File);
+          params1.append("image2", this.D02File);
+          this.userOCRjoggle(params1);
+          break;
+        case 3:
+          const params2 = new FormData(); // 声明formData数据类型
+          params2.append("image1", this.C03File);
+          params2.append("image2", this.D03File);
+          this.userOCRjoggle(params2);
+          break;
+        case 4:
+          const params3 = new FormData(); // 声明formData数据类型
+          params3.append("image1", this.C04File);
+          params3.append("image2", this.D04File);
+          this.userOCRjoggle(params3);
+          break;
+        default:
+      }
+    },
+    userOCRjoggle(param) {
+      const loading = this.$loading({
+        lock: true,
+        text: "Loading",
+        spinner: "el-icon-loading",
+        background: "rgba(0, 0, 0, 0.7)"
+      });
+      this.$api.letter.idCard(param).then(res => {
+        loading.close();
+        if (res.msg == "201") {
+          this.$message({ message: "请正确选择身份证", type: "warning" });
+        }
+        var customerInfo = res.data.customerInfo;
+        if (customerInfo) {
+          this.ownerInfoform.name = customerInfo.name;
+          if (customerInfo.identifyType == '01') {
+            this.ownerInfoform.identifyType = '身份证';
+          } else {
+            this.ownerInfoform.identifyType = "未知";
+          }
+
+          this.ownerInfoform.identifyNumber = customerInfo.identifyNumber;
+          this.ownerInfoform.addr = customerInfo.addr;
+          this.ownerInfoform.age = getAgeByIdCard(customerInfo.identifyNumber)
+          this.ownerInfoform.identifyValidDate =
+            customerInfo.identifyValidDate.substring(0, 4) +
+            "-" +
+            customerInfo.identifyValidDate.substring(4, 6) +
+            "-" +
+            customerInfo.identifyValidDate.substring(6, 8);
+          this.ownerInfoform.identifyValidEndDate =
+            customerInfo.identifyValidEndDate.substring(0, 4) +
+            "-" +
+            customerInfo.identifyValidEndDate.substring(4, 6) +
+            "-" +
+            customerInfo.identifyValidEndDate.substring(6, 8);
+        }
+      });
+    },
+    userOCRconfirm() {
+      //传参
+      switch (this.userIndex) {
+        case 2:
+          this.ownerInfo = JSON.parse(JSON.stringify(this.ownerInfoform));
+
+          break;
+        case 3:
+          this.policyHolderInfo = JSON.parse(
+            JSON.stringify(this.ownerInfoform)
+          );
+
+          break;
+        case 4:
+          this.insuredPersonInfo = JSON.parse(
+            JSON.stringify(this.ownerInfoform)
+          );
+
+          break;
+      }
+      this.uploaduserdialogVisible = false;
+    },
+    closeDialog(index) {
+      //  0:车辆  1:车主  2:投保人  3:被保人
+      switch (index) {
+        case 0:
+          this.carfrontImg = '';
+          this.carbackImg = '';
+          this.CarFrontFile = ''; // 行驶证正面base64
+          this.CarBackFile = ''; // 行驶证背面base64
+          Object.keys(this.carform).forEach((key) => {
+            this.carform[key] = '';
+          });
+          break;
+        case 2:
+          this.userfrontImg = '';
+          this.userbackImg = '';
+          this.C02File = ''; // 车主正面base64
+          this.D02File = '';  // 车主背面base64
+          Object.keys(this.ownerInfoform).forEach((key) => {
+            this.ownerInfoform[key] = '';
+          });
+          break;
+
+        case 3:
+          this.userfrontImg = '';
+          this.userbackImg = '';
+          this.C03File = ''; // 投保人正面base64
+          this.D03File = '';  // 投保人背面base64
+          Object.keys(this.ownerInfoform).forEach((key) => {
+            this.ownerInfoform[key] = '';
+          });
+          break;
+
+        case 4:
+          this.userfrontImg = '';
+          this.userbackImg = '';
+          this.C04File = ''; // 被保人正面base64
+          this.D04File = '';  // 被保人背面base64
+          Object.keys(this.ownerInfoform).forEach((key) => {
+            this.ownerInfoform[key] = '';
+          });
+          break;
+
+        default:
+      }
+    },
+    bjdpreview(companyId) {
+      let params = {
+        companyId: companyId
+      };
+      this.$api.letter.getByCompanyId(params).then(res => {
+        if (res.code == "200") {
+          var data = res.data;
+          if (data.kindinfo != null) {
+            data.kindinfo.map((ele, index) => {
+              switch (ele.kindCode) {
+                case "A":
+                  ele.amount = "投保";
+                  break;
+                case "D4":
+                case "SY_FJ_YBW2":
+                  ele.unitAmount = this.toChinesNum(ele.unitAmount);
+                  break;
+                case "MJ1":
+                case "MJ2":
+                case "MJ3":
+                case "MJ4":
+                  ele.deductibleRate = ele.deductibleRate + "%";
+                  break;
+                default:
+                  ele.amount = this.toChinesNum(ele.amount);
+              }
+              return ele;
+            });
+          }
+
+          this.queryOrders = data;
+          this.logoImg = this.iconfftter(res.data.inscompany)
+          this.bjddialogVisible = true;
+        }
+      });
+    },
+    //返回上一步
+    Back() { },
+    carcode(id) {
+      let params = {
+        companyId: id
+      };
+      this.$api.letter.getByCompanyId(params).then(res => {
+        if (res.code == "200") {
+          const { inscompany, sumpremium, carinfo, insuredname, jqpremium, sypremium, taxamount, jqstartdate, systartdate, applyinfo } = res.data;
+          this.inscompany = inscompany; // 保险公司
+          this.sumpremium = sumpremium; // 总价
+          this.licenseNo = carinfo.licenseNo; // 车牌号
+          this.applyName = insuredname; // 车主
+          this.jqpremium = jqpremium; // 交强
+          this.sypremium = sypremium; // 商业
+          this.taxamount = taxamount; // 车船税
+          this.jqstartdate = jqstartdate; // 交强起保日期
+          this.systartdate = systartdate; // 商业起保日期
+          this.mobile = applyinfo.mobile; // 投保人手机号
+          switch (this.inscompany) {
+            case "永安财险":
+              let url =
+                this.global.h5BaseUrl +
+                "/#/pages/carInsure1/yonganCode?companyId=" +
+                this.companyId +
+                "&mobile=" +
+                this.mobile;
+              this.$nextTick(() => {
+                this.creatQrCode(url);
+              });
+              break;
+            case "人保财险":
+            case "中煤财险":
+            case "永诚财险":
+            case "众安财险":
+            case "紫金财险":
+            case "中国人寿":
+              this.$nextTick(() => {
+                this.creatQrCode(res.data.paymentLink);
+              });
+              break;
+            case "恒邦财险":
+              this.paycodeimg = res.data.paymentLink;
+              break;
+            default:
+              this.$message({
+                message: "识别不到保险公司,请检查",
+                type: "warning"
+              });
+          }
+          this.codedialogVisible = true;
+        } else {
+          this.$message({ message: res.msg, type: "warning" });
+        }
+      });
+    },
+    //同步
+    synchronization() {
+      this.systartDate = this.jqstartDate;
+      this.syendDate = this.jqendDate;
+    },
+    //影像上传
+    uploadinformation() {
+      // //上传图片
+      const mergedArray = [...this.imageList1, ...this.imageList2, ...this.imageList3, ...this.imageList4];
+      let imageparam = {
+        imageList: mergedArray,
+        quoteNo: this.quoteno
+      }
+      this.$api.letter.uploadImages(imageparam).then(responses => {
+        if(responses.code=='200'){
+          this.imageEcho(this.quoteno);
+          this.$message({ message: responses.msg, type: "success" });
+        }else{
+          this.$message({ message: responses.msg, type: "error" });
+        }
+      });
+    },
+    add() {
+      this.carInfo = { ...this.defaultcarInfo };
+      this.ownerInfo = { ...this.defaultownerInfo };
+      this.policyHolderInfo = { ...this.defaultpolicyHolderInfo };
+      this.insuredPersonInfo = { ...this.defaultinsuredPersonInfo };
+      this.insureList = [...this.defaultinsureList];
+      this.sychecked = false;
+      this.yonganchecked = false;
+      this.zhongmeichecked = false;
+      this.transferDateShow = false;
+      this.imgList1 = [];
+      this.imgList2 = [];
+      this.imgList3 = [];
+      this.imgList4 = [];
+      this.imgList5 = [];
+      this.selectedOptions1 = [];
+      this.selectedOptions2 = [];
+      this.selectedOptions3 = [];
+      this.orderno = "";
+      this.quoteno = "";
+      this.jqstartDate = this.transformTime1();
+      this.jqendDate = this.oneYearPast1(this.jqstartDate);
+      this.systartDate = this.transformTime1();
+      this.syendDate = this.oneYearPast1(this.jqstartDate);
+      this.commpanyList(); // 获取保险公司
+    },
+    toChinesNum(num) {
+      let changeNum = [
+        "零", "1", "2", "3", "4", "5", "6", "7", "8", "9"
+      ];
+      let unit = ["", "0", "00", "000", "0000"];
+      num = parseInt(num);
+      let getWan = temp => {
+        let strArr = temp
+          .toString()
+          .split("")
+          .reverse();
+        let newNum = "";
+        let newArr = [];
+        strArr.forEach((item, index) => {
+          newArr.unshift(
+            item === "0" ? changeNum[item] : changeNum[item] + unit[index]
+          );
+        });
+        let numArr = [];
+        newArr.forEach((m, n) => {
+          if (m !== "零") numArr.push(n);
+        });
+        if (newArr.length > 1) {
+          newArr.forEach((m, n) => {
+            if (newArr[newArr.length - 1] === "零") {
+              if (n <= numArr[numArr.length - 1]) {
+                newNum += m;
+              }
+            } else {
+              newNum += m;
+            }
+          });
+        } else {
+          newNum = newArr[0];
+        }
+        return newNum;
+      };
+      let overWan = Math.floor(num / 10000);
+      let noWan = num % 10000;
+      if (noWan.toString().length < 4) {
+        noWan = "0" + noWan;
+      }
+      return overWan ? getWan(overWan) + "万" + getWan(noWan) : getWan(num);
+    },
+    reportDrop(event) {
+      event.preventDefault();
+      event.stopPropagation();
+    },
+    handleScroll(id) {
+      document.getElementById(id).scrollIntoView();
+    }
+  }
+};
+</script>
+<style>
+.customNotifyClass {
+  word-break: break-all;
+  width: 600px;
+}
+</style>
+<style lang="scss" scoped>
+/deep/.accident-style .el-table {
+  .el-table__body-wrapper {
+    height: 245px;
+    overflow-y: auto;
+  }
+}
+
+.styleB .el-upload--picture-card {
+  // display: none;
+  opacity: 0;
+}
+
+.saomazhifucodeClass .el-dialog__body,
+.saomazhifucodeClass .el-dialog__header {
+  padding: 0;
+}
+
+.ORcodebody {
+  width: 100%;
+  height: auto;
+  box-sizing: border-box;
+}
+
+.code_title {
+  width: 100%;
+  height: 50px;
+  background-color: #fdcb08;
+  justify-content: center;
+
+  &>span {
+    font-size: 22px;
+    color: #000;
+    font-weight: bold;
+  }
+}
+
+.csstool {
+  font-weight: 600;
+  color: #606266;
+  font-size: 14px;
+  margin: 0 20px;
+
+  span {
+    margin-right: 5px;
+  }
+}
+
+.ORcode {
+  width: 100%;
+  background: #fff;
+  height: auto;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  padding: 30px;
+  box-sizing: border-box;
+  border-bottom: 6px dotted #fdcb08;
+
+  &>div {
+    width: 180px;
+    height: 180px;
+    border: 1px solid #000;
+    border-radius: 5px;
+  }
+}
+
+.ORtitle {
+  background: #fff;
+  width: 100%;
+  padding: 20px;
+  box-sizing: border-box;
+  border-bottom: 1px solid #f2f2f2;
+
+  &>div {
+    width: 100%;
+    margin: 10px 0;
+    font-weight: bold;
+    font-size: 14px;
+    display: flex;
+    align-items: center;
+
+    &>span {
+      &:nth-child(1) {
+        color: #979797;
+        text-align: end;
+        width: 150px;
+      }
+
+      &:nth-child(2) {
+        color: #000;
+        margin-left: 10px;
+      }
+    }
+  }
+}
+
+.Risk {
+  width: 100%;
+  height: auto;
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  font-size: 12px;
+}
+
+.Risk_title {
+  width: 100%;
+  height: 40px;
+
+  &>div {
+    background: rgb(199, 20, 45);
+    color: rgb(255, 255, 255);
+    height: 100%;
+    font-weight: 500;
+    width: 33.3%;
+    padding: 10px 20px;
+    box-sizing: border-box;
+    border: #fff solid 1px;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    border-bottom: none;
+
+    &:nth-child(1) {
+      border-top-left-radius: 10px;
+    }
+
+    &:nth-child(2) {
+      border-left: none;
+      border-right: none;
+    }
+
+    &:nth-child(3) {
+      border-top-right-radius: 10px;
+    }
+  }
+}
+
+.Risk_data {
+  width: 100%;
+  height: 40px;
+
+  &>div {
+    background: #fbf6f7;
+    color: rgb(51, 51, 51);
+    height: 100%;
+    font-weight: 500;
+    width: 33.3%;
+    padding: 10px 20px;
+    box-sizing: border-box;
+    border: #fff solid 1px;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    border-bottom: none;
+
+    &:nth-child(2) {
+      border-left: none;
+      border-right: none;
+    }
+  }
+}
+
+.hebaozhuangtai {
+  padding: 10px 50px;
+  box-sizing: border-box;
+  border: 4px solid #08283524;
+}
+
+.hebaozhuangtai_data {
+  font-size: 20px;
+  font-weight: bold;
+  color: #000;
+  padding: 20px;
+
+  &>span {
+    &:nth-child(2) {
+      color: #ff7612;
+    }
+  }
+}
+
+.kindinfocss {
+  &>span {
+    width: 200px;
+    text-align: center;
+  }
+}
+
+.headers1 {
+  &>div {
+    padding: 30px;
+
+    &>span {
+      color: #ff7612;
+    }
+  }
+}
+
+.dis {
+  display: flex;
+}
+
+.align {
+  align-items: center;
+}
+
+.jus {
+  justify-content: space-between;
+}
+
+.bjdbody {
+  width: 100%;
+  height: auto;
+  background-color: rgb(199, 20, 45);
+  padding: 20px 10px 0 10px;
+  box-sizing: border-box;
+  border-radius: 8px;
+}
+
+.bjdCarMessage,
+.bjdCarSum {
+  width: 100%;
+  height: auto;
+  background-color: #fff;
+  border-radius: 8px;
+  margin-bottom: 10px;
+  padding-bottom: 10px;
+}
+
+.bjdfooter {
+  border-top: 1px solid #fff;
+  padding: 10px;
+  box-sizing: border-box;
+  color: #fff;
+}
+
+.bjdCarSum {
+  &>div {
+    width: 100%;
+    padding: 15px 20px;
+    box-sizing: border-box;
+    font-weight: bold;
+    color: #000;
+    border-bottom: 1px solid #f2f2f2;
+  }
+}
+
+.bjdCarMessage1 {
+  height: 80px;
+  padding: 16px;
+  box-sizing: border-box;
+  border-bottom: 1px solid #f2f2f2;
+  display: flex;
+  align-items: center;
+  color: #000;
+
+  .f-c {
+    &>span {
+      &:nth-child(1) {
+        font-size: 18px;
+        font-weight: bold;
+      }
+    }
+  }
+}
+
+.bjdCarMessage1>img,
+.bjdfooter>img {
+  margin-right: 30px;
+}
+
+.bjdCarMessage1 .f-c>span:nth-child(2),
+.bjdCarMessage1 .f-c>span:nth-child(3) {
+  font-size: 12px;
+  margin-top: 5px;
+}
+
+.bjdCarMessage2_car {
+  &>span {
+    &:nth-child(1) {
+      color: #000;
+      font-weight: bold;
+    }
+
+    &:nth-child(2) {
+      color: #999;
+    }
+  }
+}
+
+.bjdCarMessage2 {
+  &>ul {
+    li {
+      margin: 20px 0;
+    }
+  }
+}
+
+.shangyexian {
+  padding-left: 100px;
+}
+
+.headertotal {
+  padding: 30px;
+}
+
+.my-label {
+  background: #e1f3d8;
+}
+
+.my-content {
+  background: #fde2e2;
+  color: aqua;
+}
+
+.el-button--mini {
+  padding: 5px;
+}
+
+#qqq {
+  background-color: #111;
+  width: 300px;
+  height: 300px;
+  margin: 0 auto;
+  position: relative;
+}
+
+#qrCode {
+  display: inline-block;
+  margin: 0 auto;
+  position: relative;
+  top: 15%;
+
+  img {
+    width: 200px;
+    height: 200px;
+    background-color: #fff;
+    padding: 6px;
+  }
+}
+
+.code {
+  box-sizing: border-box;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  align-items: center;
+
+  &>span {
+    margin-bottom: 10px;
+  }
+}
+
+.code_name {
+  width: 350px;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  font-weight: bold;
+
+  &>span {
+    &:nth-child(1) {
+      color: #979797;
+      width: 120px;
+      text-align: right;
+    }
+
+    &:nth-child(2) {
+      color: #2d2d2d;
+      width: 120px;
+      text-align: left;
+    }
+  }
+}
+
+.header {
+  font-size: 18px;
+  font-weight: bold;
+}
+
+.body {
+  border-top: none;
+  padding-bottom: 100px;
+  box-sizing: border-box;
+}
+
+.u-f-ac {
+  -webkit-box-align: center;
+  align-items: center;
+  padding: 10px;
+}
+
+.bodyTitle {
+  height: 45px;
+  background: #f3f3f3;
+  border: 1px solid #dddddd;
+  line-height: 45px;
+  padding: 0 20px;
+  box-sizing: border-box;
+}
+
+.start {
+  justify-content: flex-start;
+}
+
+.end {
+  justify-content: flex-end;
+}
+
+.descriptions {
+  padding: 20px;
+  box-sizing: border-box;
+  display: flex;
+  flex-direction: column;
+}
+
+.bodys {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  flex-wrap: wrap;
+}
+
+.bodys1 {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  flex-wrap: wrap;
+}
+
+.widths {
+  width: 230px;
+}
+
+.widths1 {
+  width: 300px;
+}
+
+.back {
+  color: #303133;
+  font-weight: 700;
+}
+
+.home {
+  padding-left: 10px;
+  box-sizing: border-box;
+
+  &>span {
+    margin-right: 10px;
+  }
+}
+
+.hovers {
+  margin: 10px 0;
+  cursor: pointer;
+  padding: 10px 20px;
+  box-sizing: border-box;
+  border-bottom: 1px solid #f2f2f2;
+
+  .offer-time {
+    padding: 5px 0 5px 100px;
+    box-sizing: border-box;
+    color: #6495ed;
+
+    &>span {
+      margin: 0 10px;
+
+      &>span {
+        font-weight: 500;
+      }
+    }
+  }
+}
+
+/* 内容待定 */
+.coll {
+  font-size: 14px;
+}
+
+.headers {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  flex-wrap: wrap;
+  margin: 5px 0;
+  font-weight: bold;
+  color: #333;
+}
+
+/* 内容待定 */
+.headers_Custom {
+  div {
+    padding: 20px 40px;
+    font-size: 16px;
+
+    &>span {
+      color: rgb(226, 118, 10);
+    }
+  }
+}
+
+.display {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  padding: 10px;
+  box-sizing: border-box;
+}
+
+.black {
+  color: #000;
+}
+
+.gray {
+  color: #999;
+}
+
+.OCR {
+  font-size: 16px;
+  font-weight: bold;
+  color: #333;
+  margin: 20px;
+}
+
+.slot {
+  position: absolute;
+  width: 100%;
+  height: 100%;
+  left: 0;
+  top: 0;
+  cursor: default;
+  text-align: center;
+  color: #fff;
+  opacity: 0;
+  font-size: 20px;
+  background-color: rgba(0, 0, 0, 0.5);
+  transition: opacity 0.3s;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+
+  &>i {
+    margin: 10px;
+    color: #fff;
+    font-size: 30px;
+    font-weight: bold;
+    cursor: pointer;
+  }
+
+  &:hover {
+    opacity: 1;
+  }
+}
+
+.companyhead {
+  width: 60%;
+  margin: 0 auto;
+  padding: 10px;
+  color: #333;
+  font-weight: bold;
+  font-size: 14px;
+}
+
+.footer {
+  width: calc(100% - 200px);
+  position: fixed;
+  bottom: 0;
+  right: 0;
+  background-color: #fff;
+  z-index: 9;
+  padding: 20px;
+  box-sizing: border-box;
+  box-shadow: 0 0 1px 0 #ccc;
+  transition: all 0.3s, box-shadow 0.5s;
+
+  &.shadow {
+    box-shadow: 0 -10px 10px -10px #ccc;
+  }
+}
+
+.Enclosure {
+  width: 100%;
+  background-color: #fff;
+  padding: 20px;
+  box-sizing: border-box;
+  margin-bottom: 15px;
+  border-radius: 6px;
+  border: 1px solid #ebeef5;
+  transition: all 0.2s ease-in-out;
+  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
+}
+
+.icon-img {
+  display: block;
+  width: 30px;
+  height: 30px;
+}
+
+.Anchor-link {
+  width: 40px;
+  background-color: #fff;
+  box-shadow: #ccc 0 0px 3px 0;
+  border-radius: 6px;
+  position: fixed;
+  top: 50%;
+  right: 0;
+  z-index: 99;
+
+  div {
+    margin: 5px;
+    border-bottom: 1px solid #f2f2f2;
+    cursor: pointer;
+    display: block;
+  }
+}
+
+.color {
+  padding-top: 150px;
+  margin-top: -150px;
+}
+
+.more {
+  width: 100%;
+  padding: 20px;
+  box-sizing: border-box;
+}
+
+.more-title {
+  padding: 10px;
+  border-bottom: 1px solid #e3e3e3;
+  font-size: 14px;
+}
+
+.more-data {
+  padding: 10px;
+  border-bottom: 1px solid #f2f2f2;
+  color: #ee7000;
+  font-size: 14px;
+}
+
+.Driving-risk {
+  padding: 0 50px;
+}
+
+.checkbox {
+  transform: scale(1.2);
+}
+
+.insure-long-term {
+  display: inline-flex;
+  padding-left: 8px;
+  padding-right: 8px;
+  background: #ee7000;
+  color: #fff;
+  font-size: 12px;
+  margin-left: -5px;
+  border-radius: 0px 5px 5px 0px;
+  cursor: pointer;
+}
+
+.textareaSty {
+  width: 160px;
+  height: 210px;
+  border: 1px solid #d2d2d2;
+  border-radius: 4px;
+
+  img {
+    width: 50px;
+    height: 50px;
+  }
+}
+
+.image-title {
+  width: 100px;
+  height: 30px;
+  color: #fff;
+  text-align: center;
+  line-height: 30px;
+  font-weight: bold;
+  margin-bottom: 15px;
+  background: #fc4a1a;
+  background: #F2994A;
+  /* fallback for old browsers */
+  background: -webkit-linear-gradient(to left, #F2C94C, #F2994A);
+  /* Chrome 10-25, Safari 5.1-6 */
+  background: linear-gradient(to left, #F2C94C, #F2994A);
+  /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
+}
+
+/* 清除图片上传动画bug */
+/deep/ {
+  .el-upload-list__item {
+    transition: none !important;
+  }
+
+  .el-checkbox__input {
+    &.is-checked {
+      .el-checkbox__inner {
+        background-color: #ee7000;
+        border-color: #ee7000;
+      }
+    }
+  }
+
+  .el-checkbox__inner {
+    border: 1px solid #ff7000;
+
+    &:hover {
+      border-color: #ee7000;
+    }
+  }
+
+  .el-upload .el-upload-dragger {
+    height: 250px;
+    width: 400px;
+    border: 2px solid #f2870c42;
+    padding: 10px;
+  }
+
+  .el-upload--picture-card {
+    width: 198px;
+    height: 128px;
+  }
+
+  .el-upload-list__item {
+    width: 198px;
+    height: 128px;
+    margin: 0;
+    display: block;
+  }
+
+  .el-upload-list--picture-card .el-upload-list__item-thumbnail {
+    width: 198px;
+    height: 128px;
+  }
+
+  .el-button--warning {
+    color: #fff;
+    background-color: #ee7000;
+    border-color: #ee7000;
+
+    &:hover {
+      color: #fff;
+      background-color: #ee6f00ce;
+      border-color: #ee6f00ce;
+    }
+  }
+
+  .el-descriptions-item__label {
+    &:not(.is-bordered-label) {
+      color: #333;
+    }
+  }
+
+  .el-descriptions__body {
+    padding: 10px 50px;
+    box-sizing: border-box;
+    color: rgb(226, 118, 10);
+  }
+
+  .el-radio__input.is-checked+.el-radio__label {
+    color: #ff7000;
+  }
+
+  .el-radio__input.is-checked .el-radio__inner {
+    border-color: #ff7000;
+    background: #ff7000;
+  }
+
+  .el-radio__inner {
+    &:hover {
+      border-color: #ff7000;
+    }
+  }
+
+  .el-input--small .el-icon-date {
+    color: #ee6f00ce;
+  }
+
+  .el-select {
+    width: 100%;
+  }
+
+  .el-date-editor.el-input {
+    width: 100%;
+  }
+
+  .el-cascader--small {
+    width: 100%;
+  }
+
+  .styleB .el-upload--picture-card {
+    display: none;
+  }
+}</style>