| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008 |
- <template>
- <div class="page">
- <el-form :inline="true" :model="pageRequest" class="demo-form-inline" size="small" label-width="130px"
- style="text-align:center;">
- <el-row>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6" >
- <el-form-item label="订单号">
- <el-input v-model="pageRequest.orderNo" placeholder="请输入车牌号" class="widths"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6">
- <el-form-item label="车牌号">
- <el-input v-model="pageRequest.licenseNo" placeholder="请输入车牌号" class="widths"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6" >
- <el-form-item label="车架号">
- <el-input v-model="pageRequest.frameNo" placeholder="请输入车架号" class="widths"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6" >
- <el-form-item label="投保人姓名">
- <el-input v-model="pageRequest.insuredName" placeholder="请输入投保人姓名" class="widths"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6" >
- <el-form-item label="机构名称">
- <el-cascader
- :options="institutionOptions"
- v-model="pageRequest.deptId"
- :props="{ checkStrictly: true, value: 'id',
- label: 'name', }"
- @change="handleChange"
- clearable></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6" >
- <el-form-item label="订单状态">
- <el-select v-model="pageRequest.orderStatus" class="widths">
- <el-option label="报价中" value="0"></el-option>
- <el-option label="待核保" value="1"></el-option>
- <el-option label="已核保待缴费" value="2"></el-option>
- <el-option label="已承保" value="3"></el-option>
- <el-option label="核保退回" value="4"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="6" >
- <el-form-item label="日期">
- <el-date-picker v-model="value2" type="daterange" @change="monthChange" start-placeholder="开始日期"
- end-placeholder="结束日期" class="widths" value-format="yyyy-MM-dd" style="width: 220px;">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="24" :sm="24" :md="12" :lg="8" :xl="3" >
- <el-button type="primary" size="small" @click="onSubmit">查询</el-button>
- </el-col>
- </el-row>
- </el-form>
- <el-table size="small" :data="pageResult" height="590" border v-loading="loading" highlight-current-row stripe
- @row-click="handleRowClick" ref="expandTable" :row-class-name="getRowClass"
- :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#606266' }">
- <el-table-column type="expand">
- <template slot-scope="scope">
- <div class="demo-table-expand dis align j-s" :style="{ width: width, flexWrap: 'wrap' }"
- v-for="(item, index) in scope.row.insAreaCompanyList" :key="index">
- <div>{{ item.inscompany }}</div>
- <div>总价: <span style="color:#ee7000;">{{ item.sumpremium }}</span></div>
- <div>交强险:<span style="color:#ee7000;">{{ item.jqpremium }}</span> </div>
- <div>商业险:<span style="color:#ee7000;">{{ item.sypremium }}</span></div>
- <div>{{ item.createtime }}</div>
- <div slot="reference" class="name-wrapper">
- <el-tag v-if="item.orderstatus == '0'" type="success" size="medium">报价中</el-tag>
- <el-tag v-if="item.orderstatus == '1'" type="warning" size="medium">待核保</el-tag>
- <el-tag v-if="item.orderstatus == '2'" type="danger" size="medium">已核保待缴费</el-tag>
- <el-tag v-if="item.orderstatus == '3'" type="danger" size="medium">已承保</el-tag>
- <el-tag v-if="item.orderstatus == '4'" type="danger" size="medium">核保退回</el-tag>
- </div>
- <div>
- <el-button size="mini" type="text"
- v-if="item.orderstatus == '2' && ['恒邦财险', '众安财险', '中国人寿', '安盛天平', '紫金财险'].includes(item.inscompany)"
- @click="querystatus(item)" style="color:#f56c6c">缴费状态查询</el-button>
- <el-button size="mini" type="text" v-if="item.orderstatus == '2'" @click="carcode(scope.row, item)"
- style="color:#f56c6c">二维码</el-button>
- <el-button size="mini" type="text" @click="OrderDetails(scope.row, item)">查看详情
- </el-button>
- </div>
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="orderno" label="订单号" width="300" align="center"></el-table-column>
- <el-table-column prop="licenseno" label="车牌号" width="180" align="center"></el-table-column>
- <el-table-column prop="insuredname" label="被保险人姓名" align="center" width="150"></el-table-column>
- <el-table-column prop="product" label="投保险种" align="center" width="200"></el-table-column>
- <el-table-column prop="product" label="投保险种" align="center" width="200"></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 prop="createtime" label="录单日期" align="center" width="200"></el-table-column>
- <el-table-column label="操作" align="center" min-width="100" fixed="right">
- <template slot-scope="scope">
- <el-button size="mini" type="text" @click="CloseEdit(scope.$index, scope.row)">编辑</el-button>
- <!-- <el-button size="mini" type="text" v-if="['0', '5'].includes(scope.row.orderstatus)"
- @click="CloseQoute(scope.$index, scope.row)" style="color:#f56c6c">关闭报价</el-button> -->
- <!-- <el-button size="mini" type="text" v-if="scope.row.orderstatus == '0'"
- @click="underwriting(scope.$index, scope.row)" style="color:#e6a23c">去核保</el-button> -->
- </template>
- </el-table-column>
- </el-table>
- <!-- 分页功能 -->
- <div class="block">
- <el-pagination @size-change="applyhandleSizeChange" @current-change="applyhandleCurrentChange"
- :current-page="pageNum" :page-size="pageSize" :page-sizes="[20, 30, 50, 100]"
- layout="total, sizes, prev, pager, next, jumper" :total="totalSize"></el-pagination>
- </div>
- <el-dialog :visible.sync="codedialogVisible" width="400px" top="10vh" :before-close="handleClose"
- 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-if="['永安财险', '人保财险', '永诚财险', '中煤财险', '众安财险', '紫金财险','中国人寿'].includes(inscompany)" id="qrcode" ref="qrcode">
- </div>
- <img v-if="['恒邦财险', '安盛财险'].includes(inscompany)" :src="paycodeimg" alt="" style="width:100%">
- </div>
- </div>
- </div>
- <div class="ORtitle dis flex 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-if="jqpremium">
- <span>交强:</span>
- <span>{{ jqpremium }}</span>
- </div>
- <div v-if="sypremium">
- <span>商业:</span>
- <span>{{ sypremium }}</span>
- </div>
- <div v-if="taxamount">
- <span>车船税:</span>
- <span>{{ taxamount }}</span>
- </div>
- <div v-if="jqstartdate">
- <span>交强险起保日期:</span>
- <span>{{ jqstartdate }}</span>
- </div>
- <div v-if="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 fullscreen lock-scroll title="车辆报价信息详情" :visible.sync="dialogVisible" width="40%" center>
- <!-- 这是报价信息区域 -->
- <el-container>
- <el-row class="leftContainer">
- <el-col id="level1">
- <a href="#demo1" @click="jump('level1')">
- <i class="el-icon-truck u-f-sa"></i>
- <span class="u-f-ajc">车辆</span>
- </a>
- </el-col>
- <el-col id="level2">
- <a href="#demo2" @click="jump('level2')">
- <i class="el-icon-user u-f-sa"></i>
- <span class="u-f-ajc">关系人</span>
- </a>
- </el-col>
- <el-col id="level3">
- <a href="#demo3" @click="jump('level3')">
- <i class="el-icon-s-custom u-f-sa"></i>
- <span class="u-f-ajc">代理人</span>
- </a>
- </el-col>
- <el-col id="level4">
- <a href="#demo4" @click="jump('level4')">
- <i class="el-icon-goods u-f-sa"></i>
- <span class="u-f-ajc">优惠</span>
- </a>
- </el-col>
- <el-col id="level5">
- <a href="#demo5" @click="jump('level5')">
- <i class="el-icon-goods u-f-sa"></i>
- <span class="u-f-ajc">保单</span>
- </a>
- </el-col>
- <template v-if="(!!(orderInfo.jqappoint)) || (!!(orderInfo.syappoint))">
- <el-col id="level6">
- <a href="#demo6" @click="jump('level6')">
- <i class="el-icon-s-check u-f-sa"></i>
- <span class="u-f-ajc">特约</span>
- </a>
- </el-col>
- </template>
- <el-col id="level7">
- <a href="#demo7" @click="jump('level7')">
- <i class="el-icon-video-camera-solid u-f-sa"></i>
- <span class="u-f-ajc">影像</span>
- </a>
- </el-col>
- <el-col id="level8">
- <a href="#demo8" @click="jump('level8')">
- <i class="el-icon-video-camera-solid u-f-sa"></i>
- <span class="u-f-ajc">投保单号</span>
- </a>
- </el-col>
- <el-col id="level9" v-if="orderInfo.orderstatus == 3">
- <a href="#demo9" @click="jump('level9')">
- <i class="el-icon-video-camera-solid u-f-sa"></i>
- <span class="u-f-ajc">电子保单</span>
- </a>
- </el-col>
- <el-col id="level10">
- <a href="#demo10" @click="jump('level10')">
- <i class="el-icon-video-camera-solid u-f-sa"></i>
- <span class="u-f-ajc">配送信息</span>
- </a>
- </el-col>
- </el-row>
- <el-row class="rightContainer">
- <el-card id="demo1">
- <el-row class="header">
- <el-col>车辆信息</el-col>
- </el-row>
- <el-divider></el-divider>
- <el-row class="body">
- <el-row>
- <el-col :span="2">
- <label>号牌号码</label>
- </el-col>
- <el-col :span="5">
- <el-input size="small" disabled v-model="orderInfo.carinfo.licenseNo"></el-input>
- </el-col>
- <el-col :span="3">
- <label>号牌种类</label>
- </el-col>
- <el-col :span="5">
- <template v-if="orderInfo.carinfo.licenseTypeCode == '02'">
- <el-input size="medium" disabled value="小型汽车号牌"></el-input>
- </template>
- <template v-if="orderInfo.carinfo.licenseTypeCode != '02'">
- <el-input size="medium" disabled :value="'其它号牌' + orderInfo.carinfo.licenseTypeCode"></el-input>
- </template>
- </el-col>
- <el-col :span="3">
- <label>车架号</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.vinNo"></el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>发动机号</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.engineNo"></el-input>
- </el-col>
- <el-col :span="3">
- <label>厂牌型号</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.brandName"></el-input>
- </el-col>
- <el-col :span="3">
- <label>车主</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.ownerinfo.name"></el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>核定载客量</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.seatCount"></el-input>
- </el-col>
- <el-col :span="3">
- <label>是否过户</label>
- </el-col>
- <el-col :span="5">
- <el-select disabled="" v-model="orderInfo.carinfo.transferFlag" placeholder="请选择" style="width: 100%;">
- <el-option label="是" :value="true"></el-option>
- <el-option label="否" :value="false"></el-option>
- </el-select>
- </el-col>
- <el-col :span="3">
- <label>注册日期</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="registerDateFormat"></el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>新车购置价</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.purchasePrice">
- </el-input>
- </el-col>
- <el-col :span="3">
- <label>车型编码</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.modelCode"></el-input>
- </el-col>
- <el-col :span="3">
- <label>发证日期</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="issueDateFormat"></el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>排量(L)</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.exhaustScale">
- </el-input>
- </el-col>
- <el-col :span="3">
- <label>整备质量(KG)</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.completeKerbMass">
- </el-input>
- </el-col>
- <el-col :span="3">
- <label>能源种类</label>
- </el-col>
- <el-col :span="5">
- <el-input size="medium" disabled v-model="orderInfo.carinfo.powertype"></el-input>
- </el-col>
- </el-row>
- </el-row>
- </el-card>
- <!-- 关系人 -->
- <el-card id="demo2">
- <el-row class="header">
- <el-col>关系人信息</el-col>
- </el-row>
- <el-divider></el-divider>
- <div>
- <el-row class="u-f-ac bodyTitle"><label>车主</label></el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="2">
- <label>证件类型</label>
- </el-col>
- <el-col :span="3">
- <template v-if="orderInfo.ownerinfo.identifyType == '01'">
- <el-input size="medium" disabled value="身份证"></el-input>
- </template>
- <template v-if="orderInfo.ownerinfo.identifyType != '01'">
- <el-input size="medium" disabled :value="'其它证件类型' + orderInfo.ownerinfo.identifyType"></el-input>
- </template>
- </el-col>
- <el-col :span="3">
- <label>证件号码</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.ownerinfo.identifyNumber">
- </el-input>
- </el-col>
- <el-col :span="3">
- <label>姓名</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.ownerinfo.name"></el-input>
- </el-col>
- <el-col :span="3">
- <label>手机号</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.ownerinfo.mobile">
- </el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>地址</label>
- </el-col>
- <el-col :span="9">
- <el-input size="medium" disabled v-model="orderInfo.ownerinfo.addr"></el-input>
- </el-col>
- </el-row>
- </el-row>
- <el-row class="u-f-ac bodyTitle"><label>投保人</label></el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="2">
- <label>证件类型</label>
- </el-col>
- <el-col :span="3">
- <template v-if="orderInfo.applyinfo.identifyType == '01'">
- <el-input size="medium" disabled value="身份证"></el-input>
- </template>
- <template v-if="orderInfo.applyinfo.identifyType != '01'">
- <el-input size="medium" disabled :value="'其它证件类型' + orderInfo.applyinfo.identifyType"></el-input>
- </template>
- </el-col>
- <el-col :span="3">
- <label>证件号码</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.applyinfo.identifyNumber">
- </el-input>
- </el-col>
- <el-col :span="3">
- <label>姓名</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.applyinfo.name"></el-input>
- </el-col>
- <el-col :span="3">
- <label>手机号</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.applyinfo.mobile">
- </el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>地址</label>
- </el-col>
- <el-col :span="9">
- <el-input size="medium" disabled v-model="orderInfo.applyinfo.addr"></el-input>
- </el-col>
- </el-row>
- </el-row>
- <el-row class="u-f-ac bodyTitle"><label>被保险人</label></el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="2">
- <label>证件类型</label>
- </el-col>
- <el-col :span="3">
- <template v-if="orderInfo.insureinfo.identifyType == '01'">
- <el-input size="medium" disabled value="身份证"></el-input>
- </template>
- <template v-if="orderInfo.insureinfo.identifyType != '01'">
- <el-input size="medium" disabled :value="'其它证件类型' + orderInfo.insureinfo.identifyType"></el-input>
- </template>
- </el-col>
- <el-col :span="3">
- <label>证件号码</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.insureinfo.identifyNumber">
- </el-input>
- </el-col>
- <el-col :span="3">
- <label>姓名</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.insureinfo.name"></el-input>
- </el-col>
- <el-col :span="3">
- <label>手机号</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.insureinfo.mobile">
- </el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>地址</label>
- </el-col>
- <el-col :span="9">
- <el-input size="medium" disabled v-model="orderInfo.insureinfo.addr"></el-input>
- </el-col>
- </el-row>
- </el-row>
- </div>
- </el-card>
- <!-- 代理人 -->
- <el-card id="demo3">
- <el-row class="header">
- <el-col>代理人信息</el-col>
- </el-row>
- <el-divider></el-divider>
- <el-row class="body">
- <el-row>
- <el-col :span="2">
- <label>代理人工号</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.userid"></el-input>
- </el-col>
- <el-col :span="3">
- <label>代理人姓名</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.username"></el-input>
- </el-col>
- <el-col :span="3">
- <label>代理人电话</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled value="15234685241"></el-input>
- </el-col>
- <el-col :span="3">
- <label>代理人团队</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.deptname"></el-input>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="2">
- <label>代理人状态</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled value="在职"></el-input>
- </el-col>
- <el-col :span="3">
- <label>代理人归属</label>
- </el-col>
- <el-col :span="3">
- <el-input size="medium" disabled v-model="orderInfo.deptid"></el-input>
- </el-col>
- </el-row>
- </el-row>
- </el-card>
- <!-- 优惠政策 -->
- <el-card id="demo4">
- <el-row class="header">
- <el-col>优惠政策</el-col>
- </el-row>
- <el-divider></el-divider>
- <el-row class="body">
- <el-row class="u-f-ac"
- style="border-bottom: 1px solid #DDDDDD;height:40px;margin-bottom: 0;background: #F3F3F3;">
- <el-col class="u-f-ajc" :span="8">险种名称</el-col>
- <el-col class="u-f-ajc" :span="8">优惠比例</el-col>
- <el-col class="u-f-ajc" :span="8">优惠金额</el-col>
- </el-row>
- <el-row v-for="(riskItem) in orderInfo.riskinfo" :key="riskItem.riskCode + '2'"
- v-if="riskItem.riskCode == '0507'" class="u-f-ac"
- style="border-bottom: 1px solid #DDDDDD;height:40px;margin-bottom: 0;">
- <el-col class="u-f-ajc" :span="8">交强险</el-col>
- <el-col class="u-f-ajc" :span="8">{{ orderInfo.jqdiscountrate }}%</el-col>
- <el-col class="u-f-ajc" :span="8">
- {{ (riskItem.premium * orderInfo.jqdiscountrate / 100).toFixed(2) }}</el-col>
- </el-row>
- <el-row v-for="(riskItem) in orderInfo.riskinfo" :key="riskItem.riskCode + '3'"
- v-if="riskItem.riskCode == '0510'" class="u-f-ac"
- style="border-bottom: 1px solid #DDDDDD;height:40px;margin-bottom: 0;">
- <el-col class="u-f-ajc" :span="8">商业险</el-col>
- <el-col class="u-f-ajc" :span="8">{{ orderInfo.sydiscountrate }}%</el-col>
- <el-col class="u-f-ajc" :span="8">
- {{ (riskItem.premium * orderInfo.sydiscountrate / 100).toFixed(2) }}</el-col>
- </el-row>
- </el-row>
- </el-card>
- <!-- 正在报价的保险公司 -->
- <el-card id="demo5">
- <el-row class="header">
- <el-col>报价方案</el-col>
- </el-row>
- <el-divider></el-divider>
- <el-row class="u-f-ac bodyTitle" style="margin-bottom: 20px;"><label>订 单 号
- {{ orderInfo.orderno }}</label></el-row>
- <el-row class="u-f-ac bodyTitle" style="margin-bottom: 20px;"><label
- style="margin: 0px 15px;font-weight: bold;">投保险种
- {{ orderInfo.product }}</label></el-row>
- <el-row class="u-f-ac bodyTitle" style="margin-bottom: 20px;"><label>报价结果</label></el-row>
- <el-row class="body">
- <el-row style="border-bottom: 1px solid #DDDDDD;padding-bottom: 10px;">
- <el-col class="u-f-ajc" :span="2">报价公司</el-col>
- <el-col class="u-f-ajc" :span="5" v-if="orderInfo.product != '单商业'">交强险</el-col>
- <el-col class="u-f-ajc" :span="5" v-if="orderInfo.product != '单商业'">车船税</el-col>
- <el-col class="u-f-ajc" :span="5" v-if="orderInfo.product != '单交强'">商业险</el-col>
- <el-col class="u-f-ajc" :span="5">总价</el-col>
- <el-col class="u-f-ajc" :span="2">操作</el-col>
- </el-row>
- <el-row>
- <el-col class="u-f-ajc" :span="2">{{ orderInfo.inscompany }}
- </el-col>
- <el-col class="u-f-ajc" :span="5" v-if="orderInfo.product != '单商业'">
- {{ orderInfo.jqpremium }}</el-col>
- <el-col class="u-f-ajc" :span="5" v-if="orderInfo.product != '单商业'">
- {{ orderInfo.taxamount }}</el-col>
- <el-col class="u-f-ajc" :span="5" v-if="orderInfo.product != '单交强'">
- {{ orderInfo.sypremium }}</el-col>
- <el-col class="u-f-ajc" :span="5">{{ orderInfo.sumpremium }}</el-col>
- <el-col class="u-f-ajc" :span="2">
- <div class="u-f-ajc" style="color: #0086B3;cursor: pointer; " @click="showInsureList = !showInsureList">
- {{ showInsureList ? "收起" : "展开" }}
- </div>
- </el-col>
- </el-row>
- <template v-if="showInsureList">
- <el-row style="margin: 20px 40px;">
- <el-row class="u-f-ac"
- style="border-bottom: 1px solid #DDDDDD;height:40px;margin-bottom: 0;background: #F3F3F3;">
- <el-col :span="8" class="u-f-ajc">险种名称</el-col>
- <el-col :span="8" class="u-f-ajc">保额</el-col>
- <el-col :span="8" class="u-f-ajc">保费</el-col>
- </el-row>
- <div v-for="(riskItem) in orderInfo.riskinfo" :key="riskItem.riskCode + '4'"
- v-if="riskItem.riskCode == '0507'">
- <el-row class="u-f-ac" style="border-bottom: 1px solid #DDDDDD;height:40px;margin-bottom: 0;">
- <el-col :span="8" class="u-f-ajc">
- <label class="disabledInput">交强险</label>
- </el-col>
- <el-col :span="8" class="u-f-ajc">
- <label class="disabledInput">投保</label>
- </el-col>
- <el-col :span="8" class="u-f-ajc">
- <label class="disabledInput">{{ riskItem.premium }}</label>
- </el-col>
- </el-row>
- <el-row class="u-f-ac" style="border-bottom: 1px solid #DDDDDD;height:40px;margin-bottom: 0;">
- <el-col :span="8" class="u-f-ajc">
- <label class="disabledInput">车船税</label>
- </el-col>
- <el-col :span="8" class="u-f-ajc"> </el-col>
- <el-col :span="8" class="u-f-ajc">
- <label class="disabledInput">{{ orderInfo.taxamount }}</label>
- </el-col>
- </el-row>
- </div>
- <el-row class="u-f-ac" style="border-bottom: 1px solid #DDDDDD;height:40px;margin-bottom: 0;"
- v-for="(insureItem, insureIndex) in global.insureList" :key="insureIndex"
- v-if="insureItem.amount != 0">
- <el-col :span="8" class="u-f-ajc">
- <label class="disabledInput">{{ insureItem.kindName }}</label>
- </el-col>
- <el-col :span="8" class="u-f-ajc" v-for="(amtItem, amtIndex) in insureItem.amtList" :key="amtIndex"
- v-if="amtItem.value == insureItem.amount">
- <label class="disabledInput">{{ amtItem.label }}</label>
- </el-col>
- <el-col :span="8" class="u-f-ajc">
- <label class="disabledInput">{{ insureItem.coveragePremium }}</label>
- </el-col>
- </el-row>
- </el-row>
- </template>
- </el-row>
- <el-row class="u-f-ac bodyTitle"><label>保费合计</label></el-row>
- <el-row class="body">
- <el-row style="margin-top: 20px;" class="u-f u-f-ac">
- <label style="margin: 0px 20px 0 15px;width: 80px;">保费合计</label>
- <el-input style="width:300px" disabled size="medium" v-model="orderInfo.sumpremium">
- </el-input>
- </el-row>
- </el-row>
- </el-card>
- <!-- 特约 -->
- <template v-if="(!!(orderInfo.jqappoint)) || (!!(orderInfo.syappoint))">
- <el-card id="demo6">
- <el-row class="header">
- <el-col>特约</el-col>
- </el-row>
- <el-divider></el-divider>
- <template v-if="!!(orderInfo.jqappoint)">
- <el-row class="u-f-ac bodyTitle">
- <label>交强险特约</label>
- </el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="4">
- <label style="text-align: center;">交强险特别约定</label>
- </el-col>
- <el-col :span="20">
- <el-input type="textarea" :rows="2" disabled placeholder="请输入内容" v-model="orderInfo.jqappoint">
- </el-input>
- </el-col>
- </el-row>
- </el-row>
- </template>
- <template v-if="!!(orderInfo.syappoint)">
- <el-row class="u-f-ac bodyTitle">
- <label>商业险特约</label>
- </el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="4">
- <label style="text-align: center;">商业险特别约定</label>
- </el-col>
- <el-col :span="20">
- <el-input type="textarea" :rows="2" disabled placeholder="请输入内容" v-model="orderInfo.syappoint">
- </el-input>
- </el-col>
- </el-row>
- </el-row>
- </template>
- </el-card>
- </template>
- <!-- 影像 -->
- <el-card id="demo7">
- <el-row class="header">
- <el-col>影像</el-col>
- </el-row>
- <el-divider></el-divider>
- <div style="margin-bottom: 10px;">
- <el-row class="u-f-ac bodyTitle">
- <label @click="pic1Control = !pic1Control">行驶证影像</label>
- </el-row>
- <el-row class="body" v-show="pic1Control">
- <el-row style="padding:10px;">
- <viewer :images="carImageList">
- <img class="imageStyle" v-for="(imageItem, imageIndex) in carImageList" :src="imageItem.url"
- :key="imageIndex" />
- </viewer>
- </el-row>
- </el-row>
- </div>
- <div style="margin-bottom: 10px;">
- <el-row class="u-f-ac bodyTitle">
- <label @click="pic2Control = !pic2Control">车主身份证影像</label>
- </el-row>
- <el-row class="body" v-show="pic2Control">
- <el-row style="padding:10px;">
- <viewer :images="ownerImageList">
- <img class="imageStyle" v-for="(imageItem, imageIndex) in ownerImageList" :src="imageItem.url"
- :key="imageIndex" />
- </viewer>
- </el-row>
- </el-row>
- </div>
- <div style="margin-bottom: 10px;">
- <el-row class="u-f-ac bodyTitle">
- <label @click="pic3Control = !pic3Control">投保人身份证影像</label>
- </el-row>
- <el-row class="body" v-show="pic3Control">
- <el-row style="padding:10px;">
- <viewer :images="policyImageList">
- <img class="imageStyle" v-for="(imageItem, imageIndex) in policyImageList" :src="imageItem.url"
- :key="imageIndex" />
- </viewer>
- </el-row>
- </el-row>
- </div>
- <div style="margin-bottom: 10px;">
- <el-row class="u-f-ac bodyTitle">
- <label @click="pic4Control = !pic4Control">被保人身份证影像</label>
- </el-row>
- <el-row class="body" v-show="pic4Control">
- <el-row style="padding:10px;">
- <viewer :images="insuredImageList">
- <img class="imageStyle" v-for="(imageItem, imageIndex) in insuredImageList" :src="imageItem.url"
- :key="imageIndex" />
- </viewer>
- </el-row>
- </el-row>
- </div>
- <div style="margin-bottom: 10px;">
- <el-row class="u-f-ac bodyTitle">
- <label @click="pic5Control = !pic5Control">验车照影像</label>
- </el-row>
- <el-row class="body" v-show="pic5Control">
- <el-row style="padding:10px;">
- <viewer :images="carCheckImageList">
- <img class="imageStyle" v-for="(imageItem, imageIndex) in carCheckImageList" :src="imageItem.url"
- :key="imageIndex" />
- </viewer>
- </el-row>
- </el-row>
- </div>
- </el-card>
- <el-card id="demo8">
- <el-row class="header">
- <el-col>投保单号</el-col>
- </el-row>
- <el-divider></el-divider>
- <el-row class="u-f-ac bodyTitle">
- <label>投保单号</label>
- </el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="2" v-if="!!orderInfo.jqapplyno">
- <label>交强险投保单号</label>
- </el-col>
- <el-col :span="3" v-if="!!orderInfo.jqapplyno">
- <el-input disabled size="medium" v-model="orderInfo.jqapplyno"></el-input>
- </el-col>
- <el-col :span="3" v-if="!!orderInfo.syapplyno">
- <label>商业险投保单号</label>
- </el-col>
- <el-col :span="3" v-if="!!orderInfo.syapplyno">
- <el-input disabled size="medium" v-model="orderInfo.syapplyno"></el-input>
- </el-col>
- </el-row>
- </el-row>
- <el-row class="u-f-ac bodyTitle">
- <label>保单号</label>
- </el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="2" v-if="!!orderInfo.jqpolicyno">
- <label>交强险保单号</label>
- </el-col>
- <el-col :span="3" v-if="!!orderInfo.jqpolicyno">
- <el-input disabled size="medium" v-model="orderInfo.jqpolicyno"></el-input>
- </el-col>
- <el-col :span="3" v-if="!!orderInfo.sypolicyno">
- <label>商业险保单号</label>
- </el-col>
- <el-col :span="3" v-if="!!orderInfo.sypolicyno">
- <el-input disabled size="medium" v-model="orderInfo.sypolicyno"></el-input>
- </el-col>
- </el-row>
- </el-row>
- </el-card>
- <el-card id="demo9" v-if="orderInfo.orderstatus == 3">
- <el-row class="header">
- <el-col>电子保单</el-col>
- </el-row>
- <el-divider></el-divider>
- <el-row class="u-f-ac bodyTitle">
- <label>电子保单管理</label>
- </el-row>
- <el-row class="body" style="padding:10px 20px;">
- <el-row v-for="(oldfileItem, oldfileIndex) in oldfileList" :key="oldfileIndex">
- <el-col :span="2" style="margin-right: 15px;">
- <label>{{ oldfileItem.fileTitle }}:</label>
- </el-col>
- <el-col :span="6" class="u-f u-f-column">
- <el-row>
- <div class="u-f u-f-jsb u-f-ac" style="width: 170px;">
- <div
- style="height: 36px;line-height: 36px; width: 200px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">
- {{ licenseNo }}</div>
- <el-button style="cursor: pointer;" type="text" @click="viewfile(oldfileItem)">下载
- </el-button>
- </div>
- </el-row>
- </el-col>
- </el-row>
- </el-row>
- </el-card>
- <el-card id="demo10">
- <el-row class="header">
- <el-col>配送信息</el-col>
- </el-row>
- <el-divider></el-divider>
- <el-row class="u-f-ac bodyTitle">
- <label>保单形式</label>
- </el-row>
- <el-row class="body">
- <el-row style="margin-left: 60px;">
- <el-radio-group disabled v-model="orderInfo.policytype">
- <el-radio label="纸质">纸质</el-radio>
- <el-radio label="电子">电子</el-radio>
- </el-radio-group>
- </el-row>
- </el-row>
- <template v-if="orderInfo.policytype == '纸质'">
- <el-row class="u-f-ac bodyTitle">
- <label>配送方式</label>
- </el-row>
- <el-row class="body">
- <el-row style="margin-left: 60px;">
- <el-radio-group disabled v-model="orderInfo.mailtype">
- <el-radio label="邮寄">邮寄</el-radio>
- <!-- <el-radio label="网点自取">网点自取</el-radio> -->
- </el-radio-group>
- </el-row>
- </el-row>
- </template>
- <template
- v-if="(orderInfo.policytype == '电子') || (orderInfo.policytype == '纸质' && orderInfo.mailtype == '邮寄')">
- <el-row class="u-f-ac bodyTitle">
- <label>配送信息</label>
- </el-row>
- <el-row class="body">
- <template v-if="orderInfo.policytype == '电子'">
- <el-row>
- <el-col :span="2">
- <label>邮箱地址</label>
- </el-col>
- <el-col :span="3">
- <el-input disabled size="medium" v-model="orderInfo.mailaddress"></el-input>
- </el-col>
- </el-row>
- </template>
- <template v-if="orderInfo.policytype == '纸质' && orderInfo.mailtype == '邮寄'">
- <el-row>
- <el-col :span="2">
- <label>收件人</label>
- </el-col>
- <el-col :span="3">
- <el-input disabled size="medium" v-model="orderInfo.receiptname"></el-input>
- </el-col>
- <el-col :span="3">
- <label>手机号</label>
- </el-col>
- <el-col :span="3">
- <el-input disabled size="medium" v-model="orderInfo.receiptphone">
- </el-input>
- </el-col>
- <el-col :span="3">
- <label>配送地址</label>
- </el-col>
- <el-col :span="3">
- <el-input disabled size="medium" v-model="orderInfo.mailaddress"></el-input>
- </el-col>
- </el-row>
- <el-row class="u-f-ac bodyTitle" style="margin-bottom: 0;">
- <label>快递公司录入</label>
- </el-row>
- <el-row class="body">
- <el-row>
- <el-col :span="2">
- <label>快递号</label>
- </el-col>
- <el-col :span="3">
- <el-input disabled size="medium" v-model="orderInfo.courierno">
- </el-input>
- </el-col>
- <el-col :span="2">
- <label>快递公司</label>
- </el-col>
- <el-col :span="3">
- <el-input disabled size="medium" v-model="orderInfo.couriercompany">
- </el-input>
- </el-col>
- </el-row>
- </el-row>
- </template>
- </el-row>
- </template>
- </el-card>
- </el-row>
- </el-container>
- <span slot="footer" class="dialog-footer"
- style="position: fixed;bottom: 0px;left:0px;background: #fff;width: 100%;padding: 10px 0px;box-shadow: 0 -1px 0 0 #ddd;">
- <el-button size="small" @click="dialogVisible = false">关 闭</el-button>
- </span>
- </el-dialog>
- </div>
- </template>
- <script>
- import {
- pathToBase64,
- base64ToPath
- } from '@/common/image-tools-base64.js';
- import Cookies from "js-cookie";
- import QRCode from "qrcodejs2";
- export default {
- data() {
- return {
- value2: "",
- dialogVisible: false,
- codedialogVisible: false,
- loading: false,
- pageNum: 1,//页数
- pageSize: 20,//条数
- totalSize: null,//总数
- peopleid: "",//工号
- pageResult: [],//列表
- pageRequest: { //查询的默认条件
- orderNo: "",
- frameNo: "",
- insuredName: "",
- licenseNo: "",
- orderStatus: "",
- userId: "",
- endDate: "",
- startDate: "",
- pageNum: 1,
- pageSize: 20,
- },
- orderInfo: {
- //选中的订单
- ownerinfo: {},
- carinfo: {},
- applyinfo: {},
- insureinfo: {},
- kindinfo: [],
- riskinfo: [],
- ownerinfo: {},
- },
- carImageList: [], //车辆影像
- ownerImageList: [], //车主影像
- policyImageList: [], //投保人影像
- insuredImageList: [], //被保人影像
- carCheckImageList: [], //验车照影像
- // 影像控制
- pic1Control: false,
- pic2Control: false,
- pic3Control: false,
- pic4Control: false,
- pic5Control: false,
- showInsureList: false, //是否展示具体险种信息
- oldfileList: [],//电子保单数据
- inscompany: "", //保险公司名称
- licenseNo: "", //车牌号
- applyName: "", //车主名字
- orderstatus: "", //订单状态
- sumpremium: "", //保费合计
- jqpremium: "",//交强
- sypremium: "",//商业
- taxamount: "",//车船税
- jqstartdate: "",//交强时间
- systartdate: "",//商业时间
- mobile: "",//投保人手机号
- qrcode: null,
- paycodeimg: "",
- userid: "",
- downloadstatus: 0,
- expands: [],
- institutionOptions:[],
- width: document.documentElement.clientWidth,
- }
- },
- created() {
- this.peopleid = Cookies.get('user');
- this.$api.dept.findDeptTree().then((res) => {
- this.institutionOptions = res.data;
- });
- if (this.peopleid != 'admin') {
- this.pageRequest.userId = this.peopleid;
- this.findPage();
- } else {
- this.pageRequest.userId = 'admin';
- }
- },
- mounted() {
- window.addEventListener('resize', this.getDimensions);
- },
- unmounted() {
- window.removeEventListener('resize', this.getDimensions);
- },
- computed: {
- allinsOption() {
- let cloneData = JSON.parse(JSON.stringify(this.allIns)); // 对源数据深度克隆
- return cloneData.filter((father) => {
- // 循环所有项,并添加children属性
- let branchArr = cloneData.filter(
- (child) => father.id == child.parentId
- ); // 返回每一项的子级数组
- branchArr.length > 0 ? (father.children = branchArr) : ""; //给父级添加一个children属性,并赋值
- return father.parentId == 0; //返回第一层
- });
- },
- registerDateFormat() {
- let date = new Date(this.orderInfo.carinfo.registerDate);
- let year = date.getFullYear();
- let month = date.getMonth() + 1;
- let day = date.getDate();
- return year + "-" + month + "-" + day;
- },
- issueDateFormat() {
- let date = new Date(this.orderInfo.carinfo.issueDate);
- let year = date.getFullYear();
- let month = date.getMonth() + 1;
- let day = date.getDate();
- return year + "-" + month + "-" + day;
- },
- },
- methods: {
- getRowClass(scope,rowIndex){
- if(scope.row.insAreaCompanyList.length==0){ //判断当前行是否有子数据或者根据实际情况设置
- return 'row-expand-cover'
- }
- },
- //联级选择器触发事件
- handleChange(val) {
- if (val.length !== 0) {
- this.pageRequest.deptId = val.at(-1);
- }
- else{
- this.pageRequest.deptId = ''
- }
- },
- getDimensions() {
- this.width = document.documentElement.clientWidth - 350 + 'px';
- },
- //表格行点击下拉事件
- handleRowClick(row) {
- row.expanded = !row.expanded;
- this.$refs.expandTable.toggleRowExpansion(row, row.expanded);
- },
- //订单修改
- CloseEdit(index, row) {
- this.$api.letter.getByOrderNo({ orderNo: row.orderno }).then((res) => {
- this.$router.push({ path: '/letter/letter', query: { data: res.data } })
- })
- },
- //关闭报价
- CloseQoute(index, row) {
- this.$confirm("是否确认关闭" + row.orderno + "订单?")
- .then((_) => {
- this.$api.task.closeOrderno({ quoteno: row.orderno }).then((res) => {
- if (res.code == 200) {
- this.findPage();
- this.$message.success("已成功关闭订单");
- }
- });
- })
- .catch((_) => {
- this.$message.info("已取消关闭订单");
- });
- },
- //二维码生成插件
- 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,
- });
- }
- },
- //查询缴费状态
- querystatus(item) {
- if (item.inscompany == '紫金财险') {
- this.$api.letter.getOrderDetail({ companyId: item.id }).then(res => {
- if (res.code == '200') {
- this.$message({ message: res.msg, type: "success" })
- this.loading = true;
- this.$api.letter.queryOrders(this.pageRequest).then((res) => {
- if (res.code == "200") {
- this.loading = false;
- this.pageResult = res.data.content;
- this.pageNum = res.data.pageNum;
- this.totalSize = res.data.totalSize;
- this.pageResult.forEach(val => {
- this.$set(val, "expanded", false);
- });
- } else {
- this.loading = false;
- }
- })
- } else {
- this.$message({ message: res.msg, type: "error" })
- }
- })
- } else {
- this.$api.letter.pychonverifyPayment({ subOrderNo: item.id }).then(res => {
- if (res.code == '200') {
- this.$message({ message: "订单支付成功,正在更改状态", type: "success" })
- this.loading = true;
- this.$api.letter.queryOrders(this.pageRequest).then((res) => {
- if (res.code == "200") {
- this.loading = false;
- this.pageResult = res.data.content;
- this.pageNum = res.data.pageNum;
- this.totalSize = res.data.totalSize;
- this.pageResult.forEach(val => {
- this.$set(val, "expanded", false);
- });
- } else {
- this.loading = false;
- }
- })
- } else {
- this.$message({ message: res.msg, type: "error" })
- }
- })
- }
- },
- //二维码
- carcode(row, item) {
- console.log(item)
- let params = {
- companyId: item.id,
- }
- this.$api.letter.getByCompanyId(params).then(res => {
- if (res.code == '200') {
- this.inscompany = res.data.inscompany;//保险公司
- this.sumpremium = res.data.sumpremium;//总价
- this.licenseNo = res.data.carinfo.licenseNo;//车牌号
- this.applyName = res.data.insuredname;//车主
- this.jqpremium = res.data.jqpremium;//交强
- this.sypremium = res.data.sypremium;//商业
- this.taxamount = res.data.taxamount;//车船税
- this.jqstartdate = res.data.jqstartdate;//交强起保日期
- this.systartdate = res.data.systartdate;//商业起保日期
- this.mobile = res.data.applyinfo.mobile;//投保人手机号
- switch (item.inscompany) {
- case "永安财险":
- let url = this.global.h5BaseUrl + '/#/pages/carInsure1/yonganCode?companyId=' + item.id + '&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;
- case "安盛天平":
- let anresult = res.data.paymentLink.replace(/[\r\n]/g, "");
- let animgBase64 = `data:image/png;base64,${anresult}`;
- base64ToPath(animgBase64)
- .then(path => {
- this.paycodeimg = path;
- })
- break;
- default:
- this.$message({ message: "识别不到保险公司,请检查", type: "warning" })
- }
- this.codedialogVisible = true;
- } else {
- this.$message({ message: res.msg, type: "warning" })
- }
- })
- },
- //应用详情
- OrderDetails(dy, item) {
- this.carImageList = [];
- this.ownerImageList = []; //车主影像
- this.policyImageList = []; //投保人影像
- this.insuredImageList = []; //被保人影像
- this.carCheckImageList = []; //验车照影像
- // 影像控制
- this.pic1Control = false;
- this.pic2Control = false;
- this.pic3Control = false;
- this.pic4Control = false;
- this.pic5Control = false;
- for (let i = 0; i < this.global.insureList.length; i++) {
- this.global.insureList[i].coveragePremium = "";
- this.global.insureList[i].amount = 0;
- }
- let params = {
- companyId: item.id,
- }
- this.$api.letter.getByCompanyId(params).then((res) => {
- if (res.code == 200) {
- this.licenseNo = res.data.licenseno;//车牌号
- this.inscompany = res.data.inscompany;//保险公司
- Object.assign(this.orderInfo, res.data);
- for (let i = 0; i < this.orderInfo.riskinfo.length; i++) {
- if (this.orderInfo.riskinfo[i].riskCode == "0510") {
- for (let j = 0; j < this.orderInfo.kindinfo.length; j++) {
- for (let m = 0; m < this.global.insureList.length; m++) {
- if (
- this.orderInfo.kindinfo[j].kindCode ==
- this.global.insureList[m].kindCode
- ) {
- this.global.insureList[m].coveragePremium =
- this.orderInfo.kindinfo[j].coveragePremium;
- if (this.orderInfo.kindinfo[j].kindCode == "B") {
- this.global.insureList[9].amtList[0].value =
- this.orderInfo.kindinfo[j].amount;
- }
- if (this.orderInfo.kindinfo[j].kindCode == "A") {
- this.global.insureList[m].amount = "1";
- } else if (this.global.insureList[m].kindCode == "D4") {
- this.global.insureList[m].amount =
- this.orderInfo.kindinfo[j].unitAmount;
- } else if (
- this.global.insureList[m].isMainRisk ||
- this.global.insureList[m].kindCode == "BD" ||
- this.global.insureList[m].kindCode == "L"
- ) {
- this.global.insureList[m].amount =
- this.orderInfo.kindinfo[j].amount;
- } else {
- this.global.insureList[m].amount =
- this.orderInfo.kindinfo[j].deductibleRate;
- }
- }
- }
- }
- }
- }
- // 获取影像
- this.$api.letter.findByQuoteNo(dy.quoteno).then((resImage) => {
- for (let key in resImage.data) {
- resImage.data[key].map(ele => {
- ele.url = process.env.BASE_URL + ele.url;
- return ele;
- })
- }
- this.carImageList = resImage.data.C01;
- this.ownerImageList = resImage.data.C02;
- this.policyImageList = resImage.data.C03;
- this.insuredImageList = resImage.data.C04;
- this.carCheckImageList = resImage.data.C05;
- })
- this.pic1Control = false;
- this.pic2Control = false;
- this.pic3Control = false;
- this.pic4Control = false;
- this.pic5Control = false;
- this.oldfileList = [];
- switch (res.data.inscompany) {
- case "永安财险":
- if (this.orderInfo.jqpolicyno) {
- this.$api.letter.getPolicyPrint({
- companyId: item.id,
- policytype: "jq"
- }).then((res) => {//交强保单
- if (res.data) {
- let result = res.data.replace(/[\r\n]/g, "");
- let pdfBase64 = `data:application/pdf;base64,${result}`;
- base64ToPath(pdfBase64).then((path) => {
- this.oldfileList.push({
- fileTitle: "交强电子保单",
- filename: this.orderInfo.jqpolicyno,
- fileurl: path,
- });
- });
- }
- });
- this.$api.letter.getPolicyPrint2({
- companyId: item.id,
- policytype: "jq"
- }).then((res) => {//交强保单
- if (res.data) {
- let result = res.data.replace(/[\r\n]/g, "");
- let pdfBase64 = `data:application/pdf;base64,${result}`;
- base64ToPath(pdfBase64).then((path) => {
- this.oldfileList.push({
- fileTitle: "交强电子标志",
- filename: this.orderInfo.jqpolicyno,
- fileurl: path,
- });
- });
- }
- });
- }
- if (this.orderInfo.sypolicyno) {
- this.$api.letter.getPolicyPrint({
- companyId: item.id,
- policytype: "sy"
- }).then((res) => {//商业保单
- if (res.data) {
- let result = res.data.replace(/[\r\n]/g, "");
- let pdfBase64 = `data:application/pdf;base64,${result}`;
- base64ToPath(pdfBase64).then((path) => {
- this.oldfileList.push({
- fileTitle: "商业电子保单",
- filename: this.orderInfo.sypolicyno,
- fileurl: path,
- });
- });
- }
- });
- }
- break;
- case "中煤财险":
- if (this.orderInfo.jqpolicyno) {
- this.$api.letter.ZhongmeigetPolicyPrint({
- companyId: item.id,
- riskCode: "0507",
- type: '2',//2:保单
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "交强电子保单",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data[0],
- });
- }
- })
- this.$api.letter.ZhongmeigetPolicyPrint({
- companyId: item.id,
- riskCode: "0507",
- type: '1',// 1:标志
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "交强电子标志",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data[0],
- });
- }
- })
- }
- if (this.orderInfo.sypolicyno) {
- this.$api.letter.ZhongmeigetPolicyPrint({
- companyId: item.id,
- riskCode: "0510",
- type: '2',//2:保单
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "商业电子保单",
- filename: this.orderInfo.sypolicyno,
- fileurl: res.data[0],
- });
- }
- })
- }
- break;
- case "永诚财险":
- if (this.orderInfo.jqpolicyno) {
- this.$api.letter.yongchenggetPolicyPrint({
- companyId: item.id,
- riskCode: "0507",
- type: '2',//2:保单
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "交强电子保单",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data.jqUrl,
- });
- if (res.data.jqFlagUrl) {
- this.oldfileList.push({
- fileTitle: "交强电子标志",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data.jqFlagUrl,
- });
- }
- }
- })
- }
- if (this.orderInfo.sypolicyno) {
- this.$api.letter.yongchenggetPolicyPrint({
- companyId: item.id,
- riskCode: "0510",
- type: '2',//2:保单
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "商业电子保单",
- filename: this.orderInfo.sypolicyno,
- fileurl: res.data.syUrl,
- });
- }
- })
- }
- break;
- case "紫金财险":
- if (this.orderInfo.jqpolicyno) {
- this.$api.letter.zijingetPolicyPrint({
- companyId: item.id,
- riskCode: "0507",
- type: '2',//2:保单
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "交强电子保单",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data,
- });
- }
- })
- this.$api.letter.zijingetPolicyPrint({
- companyId: item.id,
- riskCode: "0507",
- type: '1',//2:标志
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "交强电子标志",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data,
- });
- }
- })
- }
- if (this.orderInfo.sypolicyno) {
- this.$api.letter.zijingetPolicyPrint({
- companyId: item.id,
- riskCode: "0510",
- type: '2',//2:标志
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "商业电子保单",
- filename: this.orderInfo.sypolicyno,
- fileurl: res.data,
- });
- }
- })
- }
- break;
- case "恒邦财险":
- case "安盛天平":
- case "中国人寿":
- case "众安财险":
- if (this.orderInfo.jqpolicyno) {
- this.$api.letter.pythongetPolicyPrint({
- subOrderNo: item.id,
- }).then(res => {
- if (res.data) {
- this.oldfileList.push({
- fileTitle: "交强电子保单",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data.jqxPolicyUrl,
- });
- this.oldfileList.push({
- fileTitle: "交强电子标志",
- filename: this.orderInfo.jqpolicyno,
- fileurl: res.data.jqxFlagUrl,
- });
- }
- if (res.data.syxPolicyUrl) {
- this.oldfileList.push({
- fileTitle: "商业电子保单",
- filename: this.orderInfo.sypolicyno,
- fileurl: res.data.syxPolicyUrl,
- });
- }
- if (res.data.jyxPolicyUrl) {
- this.oldfileList.push({
- fileTitle: "驾意险保单",
- filename: 'xxxxxxxxxxxxxxxxxxxxxx',
- fileurl: res.data.jyxPolicyUrl,
- });
- }
- })
- }
- break;
- default:
- }
- this.showInsureList = false;
- this.dialogVisible = true; //在页面上显示订单
- } else {
- this.$message.error("订单获取失败");
- }
- });
- },
- beforeAvatarUpload(file) {
- const isJPG = file.type === "image/jpeg" || file.type === "image/png";
- // const isLt2M = file.size / 1024 / 1024 < 0.2;
- if (!isJPG) {
- this.$message({
- message: "上传图片只能是 JPG 或者 PNG 格式!",
- type: "error",
- duration: 2000,
- });
- }
- return isJPG;
- },
- handleClose(done) {
- this.$confirm("确认关闭?")
- .then((_) => {
- done();
- })
- .catch((_) => { });
- },
- httpRequest(options) {
- let file = options.file;
- let filename = options.filename;
- let reader = new FileReader();
- if (file) {
- reader.readAsDataURL(file);
- }
- reader.onload = () => {
- let base64Str = reader.result;
- this[options.filename].push(base64Str);
- };
- },
- // 设置每页条数
- applyhandleSizeChange(val) {
- this.pageSize = val;
- this.pageNum = 1;
- this.pageRequest.pageNum = 1;
- this.pageRequest.pageSize = val;
- this.findPage();
- },
- // 当前页
- applyhandleCurrentChange(val) {
- this.pageNum = val;
- this.pageRequest.pageNum = val;
- this.findPage();
- },
- //预览文件
- viewfile(index) {
- const a = document.createElement('a')
- a.href = index.fileurl
- a.target = '_ blank';
- a.download = this.licenseNo + '-' + index.filename + '-' + index.fileTitle; // 下载文件的名字
- document.body.appendChild(a)
- a.click()
- },
- //锚链接
- jump(obj) {
- var s = document.getElementById(obj);
- var parent = s.parentNode;
- for (let i = 0; i < parent.childNodes.length; i++) {
- if (parent.childNodes[i].tagName == "DIV") {
- if (parent.childNodes[i].childNodes[0].classList.contains("active")) {
- parent.childNodes[i].childNodes[0].classList.remove("active");
- }
- }
- }
- s.childNodes[0].classList.add("active");
- },
- //数据
- findPage() {
- this.loading = true;
- this.$api.letter.queryOrders(this.pageRequest).then((res) => {
- if (res.code == "200") {
- this.loading = false;
- this.pageResult = res.data.content;
- this.pageNum = res.data.pageNum;
- this.totalSize = res.data.totalSize;
- this.pageResult.forEach(val => {
- this.$set(val, "expanded", false);
- });
- } else {
- this.loading = false;
- }
- })
- },
- //查询
- onSubmit() {
- this.pageRequest.pageNum = 1;
- this.pageRequest.pageSize = 20;
- this.findPage();
- },
- //时间js
- monthChange(e) {
- console.log(e)
- if (e === null) {
- this.pageRequest.startDate = e;
- this.pageRequest.endDate = e;
- } else {
- this.pageRequest.startDate = e[0];
- this.pageRequest.endDate = e[1];
- }
- },
- downloadFile(url, fileName, type) {
- const xhr = new XMLHttpRequest();
- xhr.open('GET', url, true);
- xhr.responseType = 'blob'; // 获取文件blob数据
- xhr.onload = function () {
- if (xhr.status !== 200) {
- this.$notify.error({
- title: '错误',
- message: '下载出现错误'
- });
- return;
- }
- const newUrl = window.URL.createObjectURL(xhr.response); // 生成一个可用的临时url
- const a = document.createElement('a'); // 生成a标签调用点击事件
- a.setAttribute('href', newUrl);
- a.setAttribute('target', '_blank');
- a.setAttribute('download', fileName); // 自定义文件名
- document.body.appendChild(a);
- a.click();
- document.body.removeChild(a);
- };
- xhr.send();
- },
- }
- }
- </script>
- <style scoped>
- .saomazhifucodeClass .el-dialog__body,
- .saomazhifucodeClass .el-dialog__header {
- padding: 0;
- }
- /deep/ .el-table .row-expand-cover .cell .el-table__expand-icon {
- display: none;
- }
- .ORcodebody {
- width: 100%;
- height: auto;
- box-sizing: border-box;
- }
- .code_title {
- width: 100%;
- height: 50px;
- background-color: #fdcb08;
- justify-content: center;
- }
- .code_title>span {
- font-size: 22px;
- color: #000;
- font-weight: bold;
- }
- .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;
- }
- .ORcode>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;
- }
- .ORtitle>div {
- width: 100%;
- margin: 10px 0;
- font-weight: bold;
- font-size: 14px;
- display: flex;
- align-items: center;
- }
- .ORtitle>div>span:nth-child(1) {
- color: #979797;
- text-align: end;
- width: 150px;
- }
- .ORtitle>div>span:nth-child(2) {
- color: #000;
- margin-left: 10px;
- }
- </style>
- <style scoped>
- #qqq {
- background-color: #111;
- width: 300px;
- height: 300px;
- margin: 0 auto;
- /*水平居中*/
- position: relative;
- }
- #qrCode {
- display: inline-block;
- margin: 0 auto;
- /*水平居中*/
- position: relative;
- top: 15%;
- }
- #qrCode img {
- width: 200px;
- height: 200px;
- background-color: #fff;
- padding: 6px;
- }
- .leftContainer {
- width: 80px;
- position: fixed;
- top: 79px;
- left: 30px;
- }
- .leftContainer .el-col {
- width: 80px;
- height: 80px;
- border-bottom: 1px solid #4d5c6f;
- background: #526176;
- cursor: pointer;
- color: #a6aeb9;
- border-radius: 0;
- }
- .leftContainer .el-col a {
- display: block;
- color: #a6aeb9;
- text-decoration: none;
- }
- .leftContainer .el-col a:hover {
- color: #fff;
- }
- .leftContainer .el-col a.active {
- color: #fff;
- }
- .leftContainer .el-col i {
- font-size: 30px;
- margin: 15px 0px 5px;
- }
- .rightContainer {
- width: calc(100vw - 160px);
- margin-left: 100px;
- }
- .rightContainer .header .el-col {
- font-size: 18px;
- font-weight: bold;
- }
- .rightContainer .bodyTitle {
- height: 40px;
- background: #f3f3f3;
- border: 1px solid #dddddd;
- }
- .rightContainer .bodyTitle>label {
- margin: 0px 15px;
- font-weight: bold;
- }
- .rightContainer #demo2 .body,
- .rightContainer #demo6 .body {
- border: 1px solid #ddd;
- padding: 15px;
- border-top: none;
- }
- .rightContainer .el-card {
- margin-bottom: 15px;
- }
- .body .el-row .el-col label {
- text-align: right;
- width: 80px;
- font-size: 14px;
- width: 100%;
- line-height: 36px;
- display: inline-block;
- box-sizing: border-box;
- }
- .disabledInput {
- width: 80% !important;
- background-color: #f5f7fa;
- text-align: center !important;
- max-width: 200px;
- border: 1px solid #e4e7ed;
- color: #c0c4cc;
- cursor: not-allowed;
- border-radius: 4px;
- box-sizing: border-box;
- padding: 0px 10px;
- height: 36px;
- margin: 20px 10%;
- }
- /* 上传图片样式Start */
- .avatar-uploader .el-upload {
- border: 1px dashed #d9d9d9;
- border-radius: 6px;
- cursor: pointer;
- position: relative;
- overflow: hidden;
- }
- .avatar-uploader .el-upload:hover {
- border-color: #409eff;
- }
- .avatar-uploader-icon {
- font-size: 28px;
- color: #8c939d;
- width: 100px;
- height: 100px;
- line-height: 100px;
- text-align: center;
- border: 1px dashed #d9d9d9;
- }
- .avatar {
- border: 1px dashed #d9d9d9;
- padding: 5px;
- border-radius: 6px;
- width: 100px;
- height: 100px;
- display: block;
- }
- .imageStyle {
- display: inline-block;
- width: 100px;
- height: 100px;
- box-shadow: #ddd 0px 0px 5px;
- margin-right: 20px;
- }
- /* 上传图片样式End */
- /deep/ .el-input.is-disabled .el-input__inner {
- color: #333;
- }
- .dis {
- display: flex;
- }
- .align {
- align-items: center;
- }
- .jus {
- justify-content: space-between;
- }
- .display {
- display: flex;
- justify-content: center;
- align-items: center;
- padding: 10px;
- box-sizing: border-box;
- }
- .flex {
- flex-direction: column;
- }
- .block {
- margin-top: 10px;
- }
- .page {
- padding: 14px;
- box-sizing: border-box;
- }
- .el-select--medium {
- vertical-align: bottom !important;
- }
- .widths {
- width: 220px;
- }
- .demo-table-expand {
- width: 100%;
- height: auto;
- padding: 10px 50px;
- font-size: 14px;
- }
- </style>
|