| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220 |
- <template>
- <div class="body">
- <div class="Enclosure flex f-c back" v-if="isLetter == '1'">
- <div class="home flex j-s a-c">
- <div class="flex j-s a-c">
- <img src="../../../../src/icon/归属信息.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: 15px" disabled label-position="top">
- <el-row :gutter="colgutter">
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="业务员">
- <el-input v-model="userform.name"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="工号">
- <el-input v-model="userform.id" type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="工号类型">
- <el-select v-model="userform.usertype" style="width: 100%;">
- <el-option label="业务员" value="A"></el-option>
- <el-option label="代理人" value="B"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <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" v-if="isLetter == '1'">
- <div class="home flex j-s a-c">
- <div class="flex j-s a-c">
- <img src="../../../../src/icon/快速查询.png" alt class="icon-img" />
- <span style="margin-left: 10px">快速查询</span>
- </div>
- <el-button size="small" type="primary" @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: 15px" label-position="top">
- <el-row :gutter="colgutter">
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <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="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- 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/车辆信息.png" alt class="icon-img" />
- <span style="margin-left: 10px">车辆信息</span>
- </div>
- <el-button size="small" type="primary" @click="uploadcardialogVisible = true">
- <i class="el-icon-camera-solid" style="margin-right: 1px"></i>
- 证件识别
- </el-button>
- </div>
- <el-form class="demo-ruleForm" :model="carInfo" ref="carInfo" :rules="rules" label-width="130px" size="small"
- label-position="top" style="margin-top: 15px">
- <el-row :gutter="colgutter">
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车牌" :prop="licenseplate ? 'licenseNo' : ''">
- <div style="display: flex">
- <el-input style="width: 75%; margin-right: 13px" v-model="carInfo.licenseNo" placeholder="请输入车牌号"
- :disabled="!licenseplate" @blur="getCompanyList">
- <el-button slot="append" type="primary" icon="el-icon-search"
- @click="toCheckLicenseNo(carInfo.licenseNo)" style="color: #fff;"></el-button>
- </el-input>
- <el-checkbox v-model="licenseplate">已上牌</el-checkbox>
- </div>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车辆识别代码" prop="frameNo" class="red-btn">
- <el-input placeholder="请输入车辆识别码" v-model="carInfo.frameNo" maxlength="17" type="text" show-word-limit
- @blur="getCompanyList">
- <el-button slot="append" type="primary" icon="el-icon-search" @click="toChooseVin(carInfo.frameNo)"
- style="color: #fff;"></el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="品牌型号" prop="modelcname" class="red-btn">
- <el-input v-model="carInfo.modelcname" placeholder="请输入品牌型号" type="text" @blur="getCompanyList">
- <el-button slot="append" icon="el-icon-search" type="primary"
- @click="toChooseVehicleType(carInfo.modelcname)" style="color: #fff;"></el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="发动机号" prop="engineNo">
- <el-input v-model="carInfo.engineNo" placeholder="请输入发动机号" @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="年款" prop="caryear">
- <el-input onkeyup="value=value.replace(/\D/g,'')" @blur="getCompanyList" v-model="carInfo.caryear"
- placeholder="请输入年款"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="座位数" prop="seatCount">
- <el-input onkeyup="value=value.replace(/\D/g,'')" v-model="carInfo.seatCount" placeholder="请输入座位数"
- @blur="getCompanyList">
- <el-button slot="append">座</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="整备质量" prop="completeKerbMass">
- <el-input v-model="carInfo.completeKerbMass" placeholder="请输入整备质量" @blur="getCompanyList">
- <el-button slot="append">千克(KG)</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="核定载质量" prop="limitLoad">
- <el-input v-model="carInfo.limitLoad" placeholder="请输入核定载质量">
- <el-button slot="append">千克(KG)</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="排量" prop="enginedesc">
- <el-input v-model="carInfo.enginedesc" placeholder="请输入排量" @blur="getCompanyList">
- <el-button slot="append">升(L)</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="功率" prop="powerScale">
- <el-input v-model="carInfo.powerScale" placeholder="请输入功率" @blur="getCompanyList">
- <el-button slot="append">千瓦(KW)</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="新车购置价" prop="purchasePrice">
- <el-input onkeyup="value=value.replace(/\D/g,'')" v-model="carInfo.purchasePrice" placeholder="请输入新车购置价"
- @blur="getCompanyList">
- <el-button slot="append">元</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="使用性质" prop="carnature">
- <el-select v-model="carInfo.carnature" placeholder="请选择使用性质" @change="natureFun" @blur="getCompanyList">
- <el-option :label="item.dictTag" :value="item.dictValue"
- v-for="(item, index) in natureOfVehicleUseoptions" :key="index"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车辆用途" prop="vehicleUse">
- <el-select v-if="carInfo.carnature == '02'" v-model="carInfo.vehicleUse" placeholder="请选择使车辆用途"
- @change="vehicleUseChange" @blur="getCompanyList">
- <el-option :label="item.dictTag" :value="item.dictValue"
- v-for="(item, index) in outOfBusinessVehicleUseoptions" :key="index"></el-option>
- </el-select>
- <el-select v-if="carInfo.carnature == '01'" v-model="carInfo.vehicleUse" placeholder="请选择使车辆用途"
- @blur="getCompanyList">
- <el-option :label="item.dictTag" :value="item.dictValue"
- v-for="(item, index) in businessVehicleUseoptions" :key="index"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车辆类型" prop="cartype">
- <el-select v-model="carInfo.cartype" placeholder="请选择车辆种类" filterable clearable @blur="getCompanyList">
- <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="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车辆种类" prop="cimodelclass">
- <el-select v-model="carInfo.cimodelclass" placeholder="请选择车辆种类" clearable @blur="getCompanyList">
- <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="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="能源种类" prop="energyType">
- <el-select v-model="carInfo.energyType" placeholder="请选择能源种类" @blur="getCompanyList">
- <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="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="所属性质 " prop="property">
- <el-select v-model="carInfo.property" placeholder="请选择所属性质" @change="getCompanyListProperty">
- <el-option :label="item.label" :value="item.value" v-for="(item, index) in propertyoptions" :key="index"
- :disabled="propertyDisable(item)"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="注册日期" prop="registerDate" class="red-btn">
- <el-date-picker v-dateFormat v-model="carInfo.registerDate" :picker-options="pickerOptions"
- @blur="getCompanyList" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择注册日期"
- placement="bottom-start" @change="(e) => carInfo.registerDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="发证日期" prop="issueDate" class="red-btn" @blur="getCompanyList">
- <el-date-picker v-dateFormat v-model="carInfo.issueDate" :picker-options="issueDateOptions" type="date"
- placeholder="选择发证日期" value-format="yyyy-MM-dd" placement="bottom-start"
- @change="(e) => carInfo.issueDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="transferDateShow">
- <el-form-item label="转移登记日期" prop="transferDate">
- <el-date-picker v-dateFormat v-model="carInfo.transferDate" :picker-options="pickerOptions" type="date"
- @blur="getCompanyList" placeholder="选择日期" value-format="yyyy-MM-dd" placement="bottom-start"
- @change="(e) => carInfo.transferDate = changeDate(e)"></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/车主信息.png" alt class="icon-img" />
- <span style="margin-left: 10px">车主信息</span>
- </div>
- <el-button size="small" type="primary" @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: 15px" label-position="top">
- <el-row :gutter="colgutter">
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车主姓名" prop="name">
- <el-input v-model="ownerInfo.name" placeholder="请输入车主姓名" @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车主类型">
- <el-select v-model="ownerInfo.property" placeholder="车主类型" @change="propertyTpe('ownerInfo')">
- <el-option label="法人" value="0" :disabled="carInfo.property == '1'"></el-option>
- <el-option label="个人" value="1" :disabled="carInfo.property == '2'"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="证件类型" prop="identifyType">
- <el-select v-model="ownerInfo.identifyType" placeholder="身份证" @blur="getCompanyList" disabled>
- <el-option label="身份证" value="01"></el-option>
- <el-option label="统一社会信用代码" value="10"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '1'">
- <el-form-item label="证件号码" prop="identifyNumber">
- <el-input v-model="ownerInfo.identifyNumber" placeholder="请输入证件号码" type="text" maxlength="18"
- show-word-limit @blur="identifyblur('ownerInfo'); getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '0'">
- <el-form-item label="证件号码" prop="organizationCode">
- <el-input v-model="ownerInfo.organizationCode" placeholder="请输入证件号码" type="text" maxlength="18"
- show-word-limit @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '0'">
- <el-form-item label="注册资金" prop="registeredCapital">
- <el-input v-model="ownerInfo.registeredCapital" placeholder="请输入注册资金" type="text" show-word-limit
- @blur="getCompanyList">
- <el-button slot="append">万元</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <!-- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl" v-if="ownerInfo.property=='0'">
- <el-form-item label="税务号">
- <el-input v-model="ownerInfo.revenueCode" placeholder="请输入税务号" type="text" ></el-input>
- </el-form-item>
- </el-col> -->
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '1'">
- <el-form-item label="年龄" prop="age">
- <el-input v-model="ownerInfo.age" placeholder="请输入年龄" type="text" disabled
- @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '1'">
- <el-form-item label="性别" prop="gender">
- <el-select @change="genderChange" v-model="ownerInfo.gender" placeholder="请选择性别" @blur="getCompanyList">
- <el-option label="男" value="男"></el-option>
- <el-option label="女" value="女"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="车主手机号" prop="mobile">
- <el-input v-model="ownerInfo.mobile" placeholder="请输入车主手机号" type="text" maxlength="11"
- @blur="getCompanyList" @paste.native="handlePaste($event, 'ownerInfo')" show-word-limit></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '0'">
- <el-form-item label="车主座机" prop="tel">
- <el-input v-model="ownerInfo.tel" placeholder="请输入车主座机" type="text" @blur="getCompanyList"
- show-word-limit></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '0'">
- <el-form-item label="车主联系人">
- <el-input v-model="ownerInfo.legalPerson" placeholder="请输入车主联系人" type="text" maxlength="5"
- @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '0'">
- <el-form-item label="联系人证件号码">
- <el-input v-model="ownerInfo.leaderIdentifyNumber" placeholder="请输入车主证件号码" type="text" maxlength="18"
- @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '0'">
- <el-form-item label="联系人有效期止期" prop="leaderOtherEffectiveDate" class="red-btn">
- <el-date-picker v-dateFormat v-model="ownerInfo.leaderOtherEffectiveDate" type="date"
- value-format="yyyy-MM-dd" @blur="getCompanyList" placeholder="选择有效期止期" placement="bottom-start"
- style="width: calc(100% - 40px)"
- @change="(e) => ownerInfo.leaderOtherEffectiveDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="ownerInfo.property == '0'">
- <el-form-item label="省市区">
- <el-cascader v-model="selectedOptions1" :options="areaOption"
- :props="{ value: 'code', label: 'name', children: 'sub' }"
- @change="event => areahandleChange(event, 'ownerInfo')"></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="地址" prop="addr">
- <el-input v-model="ownerInfo.addr" placeholder="请输入地址" type="text" @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="有效期起期" prop="identifyValidDate">
- <el-date-picker v-dateFormat v-model="ownerInfo.identifyValidDate" value-format="yyyy-MM-dd"
- @blur="getCompanyList" :picker-options="pickerOptions" type="date" placeholder="选择有效期起期"
- placement="bottom-start" @change="(e) => ownerInfo.identifyValidDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="有效期止期" prop="identifyValidEndDate" class="red-btn">
- <el-date-picker v-dateFormat v-model="ownerInfo.identifyValidEndDate" type="date"
- value-format="yyyy-MM-dd" @blur="getCompanyList" placeholder="选择有效期止期" placement="bottom-start"
- style="width: calc(100% - 40px)"
- @change="(e) => ownerInfo.identifyValidEndDate = changeDate(e)"></el-date-picker>
- <div class="insure-long-term" @click="insureLongterm('ownerInfo')">
- 长期
- </div>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <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" id="toubaor">
- <img src="../../../../src/icon/投保人信息.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="#D42426" @change="tbczcarShowChange()"></el-switch>
- </div>
- <el-button size="small" type="primary" @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: 15px" label-position="top">
- <el-row :gutter="colgutter">
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="投保人姓名" prop="name">
- <el-input v-model="policyHolderInfo.name" placeholder="请输入投保人姓名" @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="投保人类型" prop="property">
- <el-select v-model="policyHolderInfo.property" placeholder="投保人类型"
- @change="propertyTpe('policyHolderInfo')">
- <el-option label="个人" value="1"></el-option>
- <el-option label="法人" value="0"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="证件类型" prop="identifyType">
- <el-select v-model="policyHolderInfo.identifyType" placeholder="身份证" disabled @blur="getCompanyList">
- <el-option label="身份证" value="01"></el-option>
- <el-option label="统一社会信用代码" value="10"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '0'">
- <el-form-item label="证件号码" prop="organizationCode">
- <el-input v-model="policyHolderInfo.organizationCode" placeholder="请输入证件号码" type="text" maxlength="18"
- show-word-limit @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '1'">
- <el-form-item label="证件号码" prop="identifyNumber">
- <el-input v-model="policyHolderInfo.identifyNumber" placeholder="请输入证件号码" type="text" maxlength="18"
- show-word-limit @blur="identifyblur('policyHolderInfo'); getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '0'">
- <el-form-item label="注册资金" prop="registeredCapital">
- <el-input v-model="policyHolderInfo.registeredCapital" placeholder="请输入注册资金" type="text" show-word-limit
- @blur="getCompanyList">
- <el-button slot="append">万元</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <!-- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl" v-if="ownerInfo.property=='0'">
- <el-form-item label="税务号">
- <el-input v-model="policyHolderInfo.revenueCode" placeholder="请输入税务号" type="text" ></el-input>
- </el-form-item>
- </el-col> -->
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '1'">
- <el-form-item label="年龄" prop="age">
- <el-input v-model="policyHolderInfo.age" placeholder="请输入年龄" type="text" disabled
- @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '1'">
- <el-form-item label="性别" prop="gender">
- <el-select v-model="policyHolderInfo.gender" placeholder="请选择性别" @blur="getCompanyList">
- <el-option label="男" value="男"></el-option>
- <el-option label="女" value="女"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="投保人手机号" prop="mobile">
- <el-input v-model="policyHolderInfo.mobile" placeholder="请输入投保人手机号" maxlength="11" type="text"
- @blur="getCompanyList" @paste.native="handlePaste($event, 'policyHolderInfo')"
- show-word-limit></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '0'">
- <el-form-item label="投保人座机" prop="tel">
- <el-input v-model="policyHolderInfo.tel" placeholder="请输入投保人座机" type="text" @blur="getCompanyList"
- show-word-limit></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '0'">
- <el-form-item label="投保人联系人">
- <el-input v-model="policyHolderInfo.legalPerson" placeholder="请输入投保人联系人" type="text"
- maxlength="5"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '0'">
- <el-form-item label="联系人证件号码">
- <el-input v-model="policyHolderInfo.leaderIdentifyNumber" placeholder="请输入车主证件号码" type="text"
- maxlength="18" @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '0'">
- <el-form-item label="联系人有效期止期" prop="leaderOtherEffectiveDate" class="red-btn">
- <el-date-picker v-dateFormat v-model="policyHolderInfo.leaderOtherEffectiveDate" type="date"
- value-format="yyyy-MM-dd" @blur="getCompanyList" placeholder="选择有效期止期" placement="bottom-start"
- style="width: calc(100% - 40px)"
- @change="(e) => policyHolderInfo.leaderOtherEffectiveDatee = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="policyHolderInfo.property == '0'">
- <el-form-item label="省市区">
- <el-cascader v-model="selectedOptions2" :options="areaOption"
- :props="{ value: 'code', label: 'name', children: 'sub' }"
- @change="event => areahandleChange(event, 'policyHolderInfo')"></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="地址" prop="addr">
- <el-input v-model="policyHolderInfo.addr" placeholder="请输入地址" type="text"
- @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="有效期起期" prop="identifyValidDate">
- <el-date-picker v-dateFormat v-model="policyHolderInfo.identifyValidDate" value-format="yyyy-MM-dd"
- @blur="getCompanyList" :picker-options="pickerOptions" type="date" placeholder="选择有效期起期"
- placement="bottom-start"
- @change="(e) => policyHolderInfo.identifyValidDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="有效期止期" prop="identifyValidEndDate">
- <el-date-picker v-dateFormat v-model="policyHolderInfo.identifyValidEndDate" type="date"
- @blur="getCompanyList" value-format="yyyy-MM-dd" placeholder="选择有效期止期" placement="bottom-start"
- style="width: calc(100% - 40px)"
- @change="(e) => policyHolderInfo.identifyValidEndDate = changeDate(e)"></el-date-picker>
- <div class="insure-long-term" @click="insureLongterm('policyHolderInfo')">
- 长期
- </div>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="电子邮箱" prop="email">
- <el-input v-model="policyHolderInfo.email" placeholder="请输入电子邮箱"></el-input>
- </el-form-item>
- </el-col>
- <!-- <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell" v-if="isApplicantShow">
- <el-form-item label="省市区:">
- <el-cascader v-model="policyHolderInfo.provinceData" :options="areaOption" :props="{ value: 'code',label: 'name',children: 'sub'}"></el-cascader>
- </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" id="beitoubaoren">
- <img src="../../../../src/icon/被投保人信息.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" v-show="!bbtbcarShow && !bbczcarShow">
- <el-button size="small" type="primary" @click="clearBbxx">清空被保人信息</el-button>
- </div>
- <div style="font-size: 12px; margin: 0 10px">
- 同投保人
- <el-switch v-model="bbtbcarShow" active-color="#D42426" @change="bbtbcarShowChange()"></el-switch>
- </div>
- <div style="font-size: 12px; margin: 0 10px">
- 同车主
- <el-switch v-model="bbczcarShow" active-color="#D42426" @change="bbczcarShowChange()"></el-switch>
- </div>
- <el-button size="small" type="primary" @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: 15px"
- label-position="top">
- <el-row :gutter="colgutter">
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="被保人姓名" prop="name">
- <el-input v-model="insuredPersonInfo.name" placeholder="请输入被保人姓名" @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="被保人类型" prop="property">
- <el-select v-model="insuredPersonInfo.property" placeholder="被保人类型"
- @change="propertyTpe('insuredPersonInfo')">
- <el-option label="个人" value="1"></el-option>
- <el-option label="法人" value="0"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="证件类型" prop="identifyType">
- <el-select v-model="insuredPersonInfo.identifyType" placeholder="身份证" disabled @blur="getCompanyList">
- <el-option label="身份证" value="01"></el-option>
- <el-option label="统一社会信用代码" value="10"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '1'">
- <el-form-item label="证件号码" prop="identifyNumber">
- <el-input v-model="insuredPersonInfo.identifyNumber" placeholder="请输入证件号码" type="text" maxlength="18"
- show-word-limit @blur="identifyblur('insuredPersonInfo'); getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '0'">
- <el-form-item label="证件号码" prop="organizationCode">
- <el-input v-model="insuredPersonInfo.organizationCode" placeholder="请输入证件号码" type="text" maxlength="18"
- show-word-limit @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '0'">
- <el-form-item label="注册资金" prop="registeredCapital">
- <el-input v-model="insuredPersonInfo.registeredCapital" placeholder="请输入注册资金" type="text" show-word-limit
- @blur="getCompanyList">
- <el-button slot="append">万元</el-button>
- </el-input>
- </el-form-item>
- </el-col>
- <!-- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl" v-if="ownerInfo.property=='0'">
- <el-form-item label="税务号">
- <el-input v-model="insuredPersonInfo.revenueCode" placeholder="请输入税务号" type="text" ></el-input>
- </el-form-item>
- </el-col> -->
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '1'">
- <el-form-item label="年龄" prop="age">
- <el-input v-model="insuredPersonInfo.age" placeholder="请输入年龄" type="text" disabled
- @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '1'">
- <el-form-item label="性别" prop="gender">
- <el-select v-model="insuredPersonInfo.gender" placeholder="请选择性别" @blur="getCompanyList">
- <el-option label="男" value="男"></el-option>
- <el-option label="女" value="女"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="被保人手机号" prop="mobile">
- <el-input v-model="insuredPersonInfo.mobile" placeholder="请输入被保人手机号" maxlength="11" type="text"
- @blur="getCompanyList" @paste.native="handlePaste($event, 'insuredPersonInfo')"
- show-word-limit></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '0'">
- <el-form-item label="被保人座机" prop="tel">
- <el-input v-model="insuredPersonInfo.tel" placeholder="请输入被保人座机" type="text" @blur="getCompanyList"
- show-word-limit></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '0'">
- <el-form-item label="被保人联系人">
- <el-input v-model="insuredPersonInfo.legalPerson" placeholder="请输入被保人联系人" type="text"
- maxlength="5"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '0'">
- <el-form-item label="联系人证件号码">
- <el-input v-model="insuredPersonInfo.leaderIdentifyNumber" placeholder="请输入车主证件号码" type="text"
- maxlength="18" @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '0'">
- <el-form-item label="联系人有效期止期" prop="leaderOtherEffectiveDate" class="red-btn">
- <el-date-picker v-dateFormat v-model="insuredPersonInfo.leaderOtherEffectiveDate" type="date"
- value-format="yyyy-MM-dd" @blur="getCompanyList" placeholder="选择有效期止期" placement="bottom-start"
- style="width: calc(100% - 40px)"
- @change="(e) => insuredPersonInfo.leaderOtherEffectiveDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl"
- v-if="insuredPersonInfo.property == '0'">
- <el-form-item label="省市区">
- <el-cascader v-model="selectedOptions3" :options="areaOption"
- :props="{ value: 'code', label: 'name', children: 'sub' }"
- @change="event => areahandleChange(event, 'insuredPersonInfo')"></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="地址" prop="addr">
- <el-input v-model="insuredPersonInfo.addr" placeholder="请输入地址" type="text"
- @blur="getCompanyList"></el-input>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="有效期起期" prop="identifyValidDate">
- <el-date-picker v-dateFormat v-model="insuredPersonInfo.identifyValidDate" value-format="yyyy-MM-dd"
- @blur="getCompanyList" :picker-options="pickerOptions" type="date" placeholder="选择有效期起期"
- placement="bottom-start"
- @change="(e) => insuredPersonInfo.identifyValidDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="有效期止期" prop="identifyValidEndDate">
- <el-date-picker v-dateFormat v-model="insuredPersonInfo.identifyValidEndDate" type="date"
- @blur="getCompanyList" value-format="yyyy-MM-dd" placeholder="选择有效期止期" placement="bottom-start"
- style="width: calc(100% - 40px)"
- @change="(e) => insuredPersonInfo.identifyValidEndDate = changeDate(e)"></el-date-picker>
- <div class="insure-long-term" @click="insureLongterm('insuredPersonInfo')">
- 长期
- </div>
- </el-form-item>
- </el-col>
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="电子邮箱" prop="email">
- <el-input v-model="insuredPersonInfo.email" placeholder="请输入电子邮箱"></el-input>
- </el-form-item>
- </el-col>
- <!-- <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell" v-if="isInsuredShow">
- <el-form-item label="省市区:">
- <el-cascader v-model="insuredPersonInfo.provinceData" :options="areaOption" :props="{ value: 'code',label: 'name',children: 'sub'}"></el-cascader>
- </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/车船税.png" alt class="icon-img" />
- <span style="margin-left: 10px">车船税</span>
- </div>
- </div>
- <el-form class="demo-ruleForm" :model="vehicleAndVesselTaxForm" ref="vehicleAndVesselTaxForm" :rules="rules"
- label-width="160px" size="small" style="margin-top: 15px" label-position="top">
- <el-row :gutter="colgutter">
- <el-col :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="纳税类型:" prop="taxRelifFlag">
- <el-select @change="taxRelifFlagChange" v-model="vehicleAndVesselTaxForm.taxRelifFlag" placeholder="纳税类型">
- <el-option v-for="(item, index) in taxRelifFlagoptions" :key="index" :label="item.dictTag"
- :value="item.dictValue"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 1 && policyHolderInfo.property == '1'"
- :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="纳税人识别号:" prop="identifyNumber">
- <el-input v-model="vehicleAndVesselTaxForm.identifyNumber" placeholder="请输入纳税人识别号" type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 1 && policyHolderInfo.property == '0'"
- :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="纳税人识别号:" prop="organizationCode">
- <el-input v-model="vehicleAndVesselTaxForm.organizationCode" placeholder="请输入纳税人识别号"
- type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 1" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="纳税人名称:" prop="taxpayerName">
- <el-input v-model="vehicleAndVesselTaxForm.taxpayerName" placeholder="请输入纳税人名称" type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 1" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="证件类型:" prop="taxpayerIdentifier">
- <el-select v-model="vehicleAndVesselTaxForm.taxpayerIdentifier" placeholder="证件类型" clearable>
- <el-option v-for="(item, index) in taxpayerIdentifieroptions" :key="index" :label="item.dictTag"
- :value="item.dictValue"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 2 ||
- vehicleAndVesselTaxForm.taxRelifFlag == 3
- " :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="减免税凭证号:" prop="extendChar2">
- <el-input v-model="vehicleAndVesselTaxForm.extendChar2" placeholder="请输入减免税凭证号" type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 4" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="完税凭证号:" prop="paidFreeCertificate">
- <el-input v-model="vehicleAndVesselTaxForm.paidFreeCertificate" placeholder="请输入完税凭证号"
- type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 2 ||
- vehicleAndVesselTaxForm.taxRelifFlag == 3
- " :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md" :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="减免税原因:" prop="relifReason">
- <el-select v-model="vehicleAndVesselTaxForm.relifReason" placeholder="减免税原因" clearable>
- <el-option v-for="(item, index) in relifReasonoptions" :key="index" :label="item.dictTag"
- :value="item.dictValue"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag != 1" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="税务机关代码:" prop="taxComCode">
- <el-input v-model="vehicleAndVesselTaxForm.taxComCode" placeholder="请输入税务机关代码" type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag != 1" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="税务机关名称:" prop="taxComName">
- <el-input v-model="vehicleAndVesselTaxForm.taxComName" placeholder="请输入税务机关名称" type="text"></el-input>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 4" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="完税凭证填发日期:" prop="taxDocumentDate">
- <el-date-picker v-model="vehicleAndVesselTaxForm.taxDocumentDate" value-format="yyyy-MM-dd" type="date"
- placeholder="完税凭证填发日期" placement="bottom-start"
- @change="(e) => vehicleAndVesselTaxForm.taxDocumentDate = changeDate(e)"></el-date-picker>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 4" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="完税凭证地区:" prop="taxPaidAreaCode">
- <el-select v-model="vehicleAndVesselTaxForm.taxPaidAreaCode" placeholder="完税凭证地区" clearable>
- <el-option v-for="(item, index) in provinceSelect" :key="index" :label="item.name"
- :value="item.code"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 3" :xs="colSpan.xs" :sm="colSpan.sm" :md="colSpan.md"
- :lg="colSpan.lg" :xl="colSpan.xl">
- <el-form-item label="减税比例:" prop="taxRelief">
- <el-input v-model="vehicleAndVesselTaxForm.taxRelief" placeholder="请输入0~1的数值" type="text"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- </div>
- <!-- 险别选择 -->
- <div class="Enclosure flex f-c back xianbie">
- <div class="home flex j-s a-c back">
- <div class="flex j-s a-c" id="more">
- <img src="../../../../src/icon/险别选择.png" alt class="icon-img" />
- <span style="margin-left: 15px; width: 120px">险种选择</span>
- <!-- <el-select size="small" style="width: 70%" v-model="packageValue" placeholder="请选择套餐" @change="packageChange">
- <el-option v-for="item in packageOptions" :key="item.id" :label="item.title" :value="item.id"></el-option>
- </el-select> -->
- <el-radio-group v-model="productId" @change="productIdChange">
- <el-radio v-for="(item, index) in productList" :key="index" :label="item.code">{{ item.desc }}</el-radio>
- </el-radio-group>
- </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 v-if="insureitem.amtList" filterable v-model="insureitem.amount" placeholder="请选择"
- @change="insureitemChange($event, insureitem)" 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>
- <span v-else>
- <el-input-number size="small" style="width: 280px; margin-right: 10px" v-model="insureitem.amount"
- :min="0"></el-input-number>次
- </span>
- </div>
- </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="insurance">
- <img src="../../../../src/icon/投保信息.png" alt class="icon-img" />
- <span style="margin-left: 10px">投保信息</span>
- <el-switch style="margin: 0 10px 0 30px" @change="immediatelyChange" v-model="immediatelyValue"
- active-color="#D42426"></el-switch>
- <span style="font-weight: normal; font-size: 13px">即时投保</span>
- </div>
- </div>
- <el-form class="back demo-ruleForm" :inline="true" :model="Carinsurance" label-width="150px" size="small"
- style="margin-top: 15px" label-position="top">
- <div class="flex j-start a-c">
- <div class="flex j-c a-start">
- <el-checkbox class="checkbox" style="margin-right: 20px" v-model="jqchecked" disabled></el-checkbox>
- <div class="flex f-c a-c">
- <el-form-item label="交强险起保日期" prop="identifyNumber" class="red-btn">
- <el-date-picker 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" class="red-btn">
- <el-date-picker value-format="yyyy-MM-dd HH:mm:ss" v-model="jqendDate" type="datetime"
- placeholder="选择日期时间" placement="bottom-start"
- @change="(e) => jqendDate = quotechangeDate(e)"></el-date-picker>
- </el-form-item>
- </div>
- </div>
- <div class="synchronous" style="margin: 0 50px" @click="synchronization">
- <img src="@/icon/Union2.png">
- <div>同步</div>
- </div>
- <div class="flex j-c a-start">
- <el-checkbox class="checkbox" style="margin-right: 20px" v-model="sychecked" disabled
- @change="sycheckedChange"></el-checkbox>
- <div class="flex f-c a-c">
- <el-form-item label="商业险起保日期" prop="name" class="red-btn">
- <el-date-picker 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" class="red-btn">
- <el-date-picker value-format="yyyy-MM-dd HH:mm:ss" v-model="syendDate" type="datetime"
- placeholder="选择日期时间" placement="bottom-start"
- @change="(e) => syendDate = quotechangeDate(e)"></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">
- <div class="flex j-s a-c" id="company">
- <img src="../../../../src/icon/保险公司.png" alt class="icon-img" />
- <span style="margin-left: 10px">保险公司</span>
- <div class="csstool">
- <span>是否过户车</span>
- <el-switch @change="transferFlagChange" v-model="carInfo.transferFlag" active-color="#D42426"></el-switch>
- </div>
- <div class="csstool">
- <span>商业险是否过户</span>
- <el-switch v-model="carInfo.transferFlagBi" active-color="#D42426"></el-switch>
- </div>
- <div class="csstool">
- <span>是否脱保</span>
- <el-switch v-model="carInfo.outOfInsurance" active-color="#D42426"></el-switch>
- </div>
- <div class="csstool">
- <span>是否二手车</span>
- <el-switch v-model="carInfo.usedCar" active-color="#D42426"></el-switch>
- </div>
- </div>
- <div class="flex j-c a-c">
- <el-button v-show="imageUploadShow" size="small" type="primary" @click="imageUpload()">
- <i class="el-icon-camera-solid" style="margin-right: 4px"></i>
- 影像上传
- </el-button>
- </div>
- </div>
- <div>
- <!-- <div class="companyhead">
- <el-row>
- <el-col :span="1">
- <span style="font-size: 14px">选择</span>
- </el-col>
- <el-col :span="2" style="margin: 0 42px 0 35px">
- <span>保险公司</span>
- </el-col>
- <el-col :span="3">
- <span>报价协议</span>
- </el-col>
- <el-col :span="3" v-if="isLetter !== '3'">
- <span>报价结果</span>
- </el-col>
- <el-col :span="3">
- <span>交强险</span>
- </el-col>
- <el-col :span="3">
- <span>车船税</span>
- </el-col>
- <el-col :span="3">
- <span>商业险</span>
- </el-col>
- <el-col :span="2">
- <span>驾意险</span>
- </el-col>
- <el-col :span="2">
- <span>操作</span>
- </el-col>
- </el-row>
- </div>
- -->
- <div class="coll">
- <div v-loading="showLoading" class="hovers" :class="reslistitem.checked ? 'border-red' : 'border-blue'"
- v-for="(reslistitem, reslistindex) in totalCompanyList" :key="reslistindex">
- <el-row v-show="reslistitem.checked || reslistindex == 0" class="companyhead" style="margin-bottom: 20px;">
- <el-col :span="1">
- <span style="font-size: 14px">选择</span>
- </el-col>
- <el-col :span="2" style="margin: 0 42px 0 35px">
- <span>保险公司</span>
- </el-col>
- <el-col :span="3">
- <span>报价协议</span>
- </el-col>
- <el-col :span="3" v-if="isLetter !== '3'">
- <span>报价结果</span>
- </el-col>
- <el-col :span="3">
- <span>交强险</span>
- </el-col>
- <el-col :span="3">
- <span>车船税</span>
- </el-col>
- <el-col :span="3">
- <span>商业险</span>
- </el-col>
- <el-col :span="2">
- <span>驾意险</span>
- </el-col>
- <el-col :span="2">
- <span>操作</span>
- </el-col>
- </el-row>
- <el-row class="bxgs-list">
- <el-col :span="1" style="margin-left: 20px">
- <el-checkbox v-model="reslistitem.checked" :disabled="reslistitem.disabled" @change="(event) =>
- initchange(
- event,
- reslistitem.id,
- reslistitem.cnName,
- reslistindex
- )
- "></el-checkbox>
- </el-col>
- <el-col :span="2">
- <img :src="reslistitem.logo" alt style="
- width: 30px;
- height: 30px;
- vertical-align: middle;
- margin-left: 20px;
- " />
- <span>{{ reslistitem.namesimple }}</span>
- </el-col>
- <el-col :span="4">
- <el-select size="small" v-if="reslistitem.isTaxSource && reslistitem.isTaxSource == '1'
- " :disabled="true" placeholder="默认" style="width: 230px" v-model="isTaxSourceModel"
- :clearable="true"></el-select>
- <el-select size="small" v-else :disabled="!reslistitem.checked" v-model="reslistitem.agreementId"
- placeholder="请选择协议" style="width: 230px" :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 &&
- agreementitem.licenseNo.length > 0 &&
- carInfo.licenseNo.length > 0
- ? agreementitem.licenseNo.includes(
- carInfo.licenseNo.slice(0, 2)
- )
- : 'true'
- ">
- <el-option
- :label="agreementitem.jobDescription ? agreementitem.businessDescription + '(' + agreementitem.jobDescription + ')' : agreementitem.businessDescription"
- :value="agreementitem.id" :disabled="agreementitem.disabled">{{ agreementitem.jobDescription ?
- agreementitem.businessDescription + '(' + agreementitem.jobDescription + ')' :
- agreementitem.businessDescription }}</el-option>
- </div>
- </div>
- </el-select>
- </el-col>
- <el-col :span="3">
- <div v-show="reslistitem.quoteCode == '0'">
- <span style="line-height: auto;">未报价</span>
- </div>
- <div class="loader" v-show="reslistitem.quoteCode == '1'">
- <!-- <i style="color: #d42426" class="el-icon-loading"></i> -->
- <p class="text">
- <span class="letter letter1">掌</span>
- <span class="letter letter2">柜</span>
- <span class="letter letter3">正</span>
- <span class="letter letter4">在</span>
- <span class="letter letter5">为</span>
- <span class="letter letter6">您</span>
- <span class="letter letter7">报</span>
- <span class="letter letter8">价</span>
- <span class="letter letter9">.</span>
- <span class="letter letter10">.</span>
- <span class="letter letter11">.</span>
- </p>
- </div>
- <div class="dis f-c"
- v-show="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus != '10' && reslistitem.result.orderstatus != '11'">
- <span style="color: #d42426; font-weight: bold">
- ¥{{ reslistitem.result.sumPermium }}
- </span>
- <!-- <span style="font-size: 13px; color: #2d4d89" class="m-top-5">{{ reslistitem.result.feeView ? '总科技币:' : '优惠:' }}{{ reslistitem.result.sumExportFee}}</span> -->
- </div>
- <div class="dis f-c"
- v-show="reslistitem.quoteCode == '200' && (reslistitem.result.orderstatus == '10' || reslistitem.result.orderstatus == '11')">
- <span style="color: #d42426; font-weight: bold">
- {{ reslistitem.result.orderStatusInfo }}
- </span>
- </div>
- </el-col>
- <el-col :span="3"
- v-show="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus != '10' && reslistitem.result.orderstatus != '11'">
- <div class="dis f-c">
- <span style="color: #d42426; font-weight: bold">
- ¥{{ reslistitem.result.jqPremium }}
- </span>
- <!-- <span v-if="reslistitem.result.jqPremium" style="font-size: 13px; color: #2d4d89" class="m-top-5">{{ reslistitem.result.feeView ? '掌柜科技币:' : '优惠:' }}{{ reslistitem.result.jqExportFee }}</span> -->
- </div>
- </el-col>
- <el-col :span="3"
- v-show="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus != '10' && reslistitem.result.orderstatus != '11'">
- <span style="color: #d42426; font-weight: bold">
- ¥{{ reslistitem.result.taxAmount }}
- </span>
- </el-col>
- <el-col :span="3"
- v-show="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus != '10' && reslistitem.result.orderstatus != '11'">
- <div class="dis f-c">
- <span style="color: #d42426; font-weight: bold">
- ¥{{ reslistitem.result.syPremium }}
- </span>
- <!-- <span v-if="reslistitem.result.syPremium" style="font-size: 13px; color: #2d4d89" class="m-top-5">{{ reslistitem.result.feeView ? '掌柜科技币:' : '优惠:' }}{{ reslistitem.result.syExportFee }}</span> -->
- </div>
- </el-col>
- <el-col :span="2"
- v-if="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus != '10' && reslistitem.result.orderstatus != '11'"
- style="">
- <div class="dis f-c">
- <span style="color: #d42426; font-weight: bold">
- {{
- reslistitem.result.jyPremium
- ? "¥" + reslistitem.result.jyPremium
- : "无"
- }}
- </span>
- <!-- <span v-if="reslistitem.result.jyPremium" style="font-size: 13px; color: #2d4d89" class="m-top-5">{{ reslistitem.result.feeView ? '掌柜科技币:' : '优惠:' }}{{ reslistitem.result.noExportFee }}</span> -->
- </div>
- </el-col>
- <el-col :span="24" v-show="reslistitem.quoteCode == '200' &&
- reslistitem.result.feeNoDescription
- ">
- <div class="flex offer-time" style="color: #d42426">
- <span>该车未匹配销管费用,不建议投保!</span>
- <el-tooltip class="item" effect="dark" content="费用匹配错误信息" placement="top">
- <i class="el-icon-s-goods" @click="
- open3(
- reslistitem.namesimple + '优惠信息',
- reslistitem.result.feeNoDescription
- )
- " style="
- font-size: 20px;
- transform: scale(0.8);
- vertical-align: middle;
- " :disabled="reslistitem.quoteCode == '200' &&
- reslistitem.result.feeNoDescription
- "></i>
- </el-tooltip>
- </div>
- </el-col>
- <el-col :span="24" v-show="reslistitem.quoteCode != '200' &&
- reslistitem.quoteCode != '0' &&
- reslistitem.quoteCode != '1'
- ">
- <div class="flex j-s offer-time" style="color: #d42426">
- 错误提示:
- {{
- reslistitem.msg.length > 500
- ? reslistitem.msg.slice(0, 500)
- : reslistitem.msg
- }}
- </div>
- </el-col>
- <el-col :span="24" v-show="reslistitem.quoteCode == '200' &&
- (reslistitem.result.orderstatus == '10' || reslistitem.result.orderstatus == '11')">
- <div class="flex j-s offer-time" style="color: #d42426">
- {{ reslistitem.result.quoteErrMsg }}
- </div>
- </el-col>
- <div class="baofeijisuan flex a-c" >
- <el-button size="mini" type="text" class="blue_color" v-if="reslistitem.result.orderstatus=='10'"
- @click="supplementOrder(reslistitem.result.companyId)">补录订单</el-button>
- <div class="btn" @click="handleListJisuan(reslistitem, reslistindex)">计算保费</div>
- </div>
- </el-row>
- <!-- 选中-方案选择 -->
- <div v-show="reslistitem.checked" :gutter="20" class="company-checked">
- <el-row class="width1280">
- <el-col :span="24">
- <el-row type="flex" align="middle" class="left-title" v-if="reslistitem.programme">
- <el-col :span="2">方案选择</el-col>
- <div style="margin-right: 20px;" v-for="(item, index) in reslistitem.schemes" :key="index"
- @click="checkedPopover(reslistindex, index, item)">
- <el-popover placement="top-start" trigger="hover" width="660">
- <!-- :disabled="reslistitem.checkedProgramme == index" -->
- <!-- <div>弹出</div> -->
- <Ktletter1Popover :data="item" :programme="reslistitem.programme" :productId="productId">
- </Ktletter1Popover>
- <el-col class="gray-style" :class="reslistitem.checkedProgramme == index ? 'blue-style' : ''"
- slot="reference">
- <!-- <i v-show="reslistitem.checkedProgramme == index" class="el-icon-circle-check"></i> -->
- {{ item.schemeName }}
- <img v-show="reslistitem.checkedProgramme == index" src="@/assets/Frame.png" />
- </el-col>
- </el-popover>
- </div>
- <div @click="checkedPopover(reslistindex, 99)" style="margin-right: 20px;"
- v-show="reslistitem.programme99 && reslistitem.programme99.schemeId">
- <el-popover placement="top-start" width="660" :disabled="reslistitem.checkedProgramme == 99"
- trigger="hover">
- <Ktletter1Popover :data="reslistitem.programme99" :programme="reslistitem.programme"
- :productId="productId"></Ktletter1Popover>
- <el-col class="gray-style" :class="reslistitem.checkedProgramme == 99 ? 'blue-style' : ''"
- slot="reference">
- <!-- <i v-show="reslistitem.checkedProgramme == 99" class="el-icon-circle-check"></i> -->
- 自选方案
- <img v-show="reslistitem.checkedProgramme == 99" src="@/assets/Frame.png" />
- </el-col>
- </el-popover>
- </div>
- <div v-show="reslistitem.checkedProgramme == 99" style="margin-right: 20px;" class="juse-style">
- <span @click="showTypeDialog(reslistitem, reslistindex)">调整险种</span>
- </div>
- <!-- <el-popover placement="top-start" width="450" style="margin-right: 20px;" trigger="hover">
- <Ktletter1Popover></Ktletter1Popover>
- <el-col class="gray-style" slot="reference">服务方案</el-col>
- </el-popover> -->
- </el-row>
- </el-col>
- <el-col :span="2" v-if="reslistitem.programme" class="card-bg">
- <div class="card-xianzhong">
- <div>已选险种</div>
- <div class="card-btn" v-show="reslistitem.programme.description">{{
- reslistitem.programme.description }}</div>
- <!-- <div v-if="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus">{{ reslistitem.result.orderstatus | cap }}</div> -->
- </div>
- </el-col>
- <!-- 险种明细 -->
- <el-col :span="8" class="card-bg" style="padding-left: 0;"
- v-if="reslistitem.programme && reslistitem.programme.kinds">
- <div class="card-mingxi">
- <div class="card-mingxi-title">险种明细:
- <span v-show="reslistitem.checkedProgramme != 99"
- @click="showDetailJiaYi(reslistitem, reslistindex)">查看详情</span>
- <!-- <span v-show="reslistitem.checkedProgramme == 99" @click="showTypeDialog(reslistitem, reslistindex)">调整险种</span> -->
- </div>
- <div class="card-table"
- v-show="reslistitem.programme.description != '单商' && reslistitem.programme.description != '单三'">
- <div class="table-title">交强险</div>
- <div class="table-list" v-if="reslistitem.programme.kinds">
- <div class="table-list-title">
- <div class="flex-1">产品名称</div>
- </div>
- <div class="table-list-content">
- <div class="flex-1">
- <img src="@/icon/icon-chengse.png">
- <!-- <span>{{ reslistitem.programme.jqx.name }}</span> -->
- <span>交通事故强制责任险</span>
- </div>
- </div>
- </div>
- </div>
- <div class="card-table" v-show="reslistitem.programme.description != '单交'">
- <div class="table-title">商业险</div>
- <div class="table-list" v-if="reslistitem.programme && reslistitem.programme.kinds">
- <div class="table-list-title">
- <div class="flex-1">产品名称</div>
- <div class="w-60">保额(元)</div>
- </div>
- <div v-for="(kinds, kindIndex) in reslistitem.programme.kinds.main" :key="kindIndex + 'main'">
- <div class="table-list-content" v-if="kinds.amount != 0">
- <div class="flex-1">
- <img src="@/icon/icon-chengse.png">
- <span>{{ kinds.kindName }}</span>
- </div>
- <div v-if="kinds.kindCode != 'A'" class="w-60"> {{ toWan(kinds.amount) }}</div>
- <div v-else class="w-60">{{ toWan(kinds.amount) }}</div>
- </div>
- </div>
- <div v-for="(kinds, kindIndex) in reslistitem.programme.kinds.additional" :key="kindIndex">
- <div class="table-list-content" v-if="kinds.amount != 0">
- <div class="flex-1">
- <img src="@/icon/icon-chengse.png">
- <span>{{ kinds.kindName }}</span>
- </div>
- <div class="w-60"> {{ toWan(kinds.amount) }}</div>
- </div>
- </div>
- <div class="table-list-content"
- v-if="reslistitem.programme && reslistitem.programme.kinds && !reslistitem.programme.kinds.main.length && !reslistitem.programme.kinds.additional.length">
- 暂无</div>
- </div>
- </div>
- <div class="card-table"
- v-if="reslistitem.programme && reslistitem.programme.drivingList && reslistitem.programme.drivingList.length > 0">
- <div class="table-title">驾意险</div>
- <div class="table-list" v-if="reslistitem.programme.kinds">
- <div class="table-list-title">
- <div class="flex-1">产品名称</div>
- <div class="w-60">份数</div>
- <div class="w-60">保费</div>
- </div>
- <div class="table-list-content"
- v-for="(driving, drivingIndex) in reslistitem.programme.drivingList" :key="drivingIndex"
- @click="showDetailJiaYi(reslistitem, reslistindex, 'jiayi')">
- <div class="flex-1">
- <img src="@/icon/icon-chengse.png">
- <span>
- <!-- <span style="margin-right: 0;" v-if="reslistitem.cnName == 'guoRen' || reslistitem.cnName == 'ansheng'">{{ driving.select }}</span> -->
- {{ driving.alias || driving.projectName }}
- </span>
- </div>
- <div class="w-60">{{ driving.quantity }}份</div>
- <div class="w-60">¥{{ Number(driving.sumPremium) * driving.quantity }}
- <span v-show="reslistitem.checkedProgramme == 99"><i class="el-icon-delete"
- @click="deleteJiaYi(reslistindex, drivingIndex)"></i></span>
- </div>
- </div>
- <div class="table-list-content"
- v-if="reslistitem.programme && reslistitem.programme.drivingList && !reslistitem.programme.drivingList.length">
- 暂无</div>
- </div>
- </div>
- <div class="card-table" v-show="reslistitem.cnName == 'guoRen'">
- <!-- reslistitem.checkedProgramme == 99 && -->
- <div class="table-title">其他</div>
- <div class="table-list">
- <!-- v-if="reslistitem.programme.kinds" -->
- <div style="color: #FD9A25;" @click="contributingGuoRen(reslistitem.agreementId, reslistindex)">
- 选择特约</div>
- <div class="table-list-title"
- v-show="reslistitem.programme && reslistitem.programme.teyue && reslistitem.programme.teyue.length">
- <div class="flex-1">特约名称</div>
- </div>
- <div class="table-list-content" v-for="(teyueitem, teyueindex) in reslistitem.programme.teyue"
- :key="teyueindex">
- <div class="flex-1">
- <img src="@/icon/icon-chengse.png">
- {{ teyueitem.clauseName }}
- </div>
- </div>
- <!-- <div class="table-list-content" v-if="!reslistitem.programme.teyue.length">暂无</div> -->
- </div>
- </div>
- <div class="card-table" v-show="reslistitem.cnName == 'zijin' || reslistitem.cnName == 'yangguang'
- // || reslistitem.cnName == 'taishan'
- ">
- <div class="table-title">其他</div>
- <div>自定义系数:
- <el-input v-model="reslistitem.coefficient" size="mini" class="coefficient"
- placeholder="请输入"></el-input>
- </div>
- </div>
- <div class="card-table flex a-c j-s" v-show="reslistitem.cnName == 'chengtai'">
- <div class="table-title">其他</div>
- <div class="flex f-wrap a-c ">
- <div class="flex a-c mrgin-5">
- <span style="margin-right: 5px;">初始折扣:</span>
- <el-input v-model="reslistitem.result.initialProposalDiscount" disabled size="mini"
- class="coefficient" placeholder="请输入"></el-input>
- </div>
- <div class="flex a-c mrgin-5">
- <span style="margin-right: 5px;">自定义系数:</span>
- <el-input v-model="reslistitem.result.pricingCoefficient" size="mini" class="coefficient"
- placeholder="请输入"></el-input>
- </div>
- <div class="flex a-c mrgin-5">
- <span style="margin-right: 5px;">期望折扣:</span>
- <el-input v-model="reslistitem.result.expectedDiscount" size="mini" class="coefficient"
- placeholder="请输入"></el-input>
- </div>
- </div>
- </div>
- </div>
- </el-col>
- <!-- 服务明细 -->
- <el-col :span="4" class="card-bg" style="padding-left: 0;"
- v-if="reslistitem.programme && reslistitem.programme.kinds">
- <div class="card-mingxi fuwu">
- <div class="card-mingxi-title">服务明细:</div>
- <div class="card-table">
- <div class="table-list">
- <div class="table-list-title">
- <div class="flex-1">增值服务</div>
- <div class="w-50">次数</div>
- </div>
- <div class="table-list-content"
- v-for="(kinds, kindIndex) in reslistitem.programme.kinds.service" :key="kindIndex">
- <div class="flex-1">
- <img src="@/icon/icon-lanse.png">
- <span style="margin-left: 0;">{{ kinds.alias || kinds.kindName }}</span>
- </div>
- <div class="w-50 w-55">{{ toWan(kinds.amount, 'fw') }}</div>
- </div>
- <div class="table-list-content"
- v-if="reslistitem.programme && reslistitem.programme.kinds && !reslistitem.programme.kinds.service.length">
- 暂无</div>
- </div>
- </div>
- </div>
- </el-col>
- <!-- 优惠明细 -->
- <el-col :span="4" class="card-bg" style="padding-left: 0;"
- v-if="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus != '10' && reslistitem.result.orderstatus != '11'">
- <div class="card-mingxi youhui">
- <div class="card-mingxi-title">优惠明细:</div>
- <div class="card-table">
- <div class="table-list">
- <div class="table-list-title" style="padding-left: 0;">
- <div class="w-50" style="width: 40px;">险种</div>
- <div class="w-50" style="width: 50px; font-size: 10px;">优惠比例</div>
- <div class="w-60" style=" font-size: 10px;">优惠金额(元)</div>
- <div class="w-60" style="width: 50px; font-size: 10px;">合计优惠</div>
- </div>
- <div class="table-list-content" v-if="reslistitem.programme">
- <div class="w-50" style="width: 40px;">
- <div class="table-list-line" style="border-right: none; padding-left: 0;"
- v-show="reslistitem.programme.description != '单商' && reslistitem.programme.description != '单三'">
- <span style="margin-left: 0; font-size: 10px;">交强险</span>
- </div>
- <div class="table-list-line" style="border-right: none; padding-left: 0;"
- v-show="reslistitem.programme.description != '单交'">
- <span style="margin-left: 0; font-size: 10px;">商业险</span>
- </div>
- <div class="table-list-line table-list-line-last"
- style="border-right: none; padding-left: 0;" v-show="reslistitem.result.jyPremium">
- <span style="margin-left: 0; font-size: 10px;">驾意险</span>
- </div>
- </div>
- <div class="w-50" style="width: 50px;">
- <div class="table-list-line" style="border-right: none;"
- v-show="reslistitem.programme.description != '单商' && reslistitem.programme.description != '单三'">
- <span style="margin-left: 0;">{{ reslistitem.result.jqExportFee ?
- reslistitem.result.jqExportRadio : '无' }}</span>
- </div>
- <div class="table-list-line" style="border-right: none;"
- v-show="reslistitem.programme.description != '单交'">
- <span style="margin-left: 0;">{{ reslistitem.result.syExportFee ?
- reslistitem.result.syExportRadio : '无' }}</span>
- </div>
- <div class="table-list-line table-list-line-last" style="border-right: none;"
- v-show="reslistitem.result.jyPremium">
- <span style="margin-left: 0;">{{ reslistitem.result.noExportRadio }}</span>
- </div>
- </div>
- <div class="w-60">
- <div class="table-list-line"
- v-show="reslistitem.programme.description != '单商' && reslistitem.programme.description != '单三'">
- <span style="margin-left: 0;">{{ reslistitem.result.jqExportFee ?
- reslistitem.result.jqExportFee : '无' }}</span>
- </div>
- <div class="table-list-line" v-show="reslistitem.programme.description != '单交'">
- <span style="margin-left: 0;">{{ reslistitem.result.syExportFee ?
- reslistitem.result.syExportFee : '无' }}</span>
- </div>
- <div class="table-list-line table-list-line-last" v-show="reslistitem.result.jyPremium">
- <span style="margin-left: 0;">{{ reslistitem.result.noExportFee ?
- reslistitem.result.noExportFee : '无' }}</span>
- </div>
- </div>
- <div class="w-50 w-66"><span v-show="reslistitem.result.sumExportFee">¥</span>{{
- reslistitem.result.sumExportFee }}</div>
- </div>
- </div>
- </div>
- <div class="card-mingxi-title" style="margin-top: 10px; border-top: 1px solid #fabdae;">返还测算:</div>
- <div class="card-table">
- <div class="table-list">
- <div class="table-list-title" style="padding-left: 0;">
- <div class="w-50" style="width: 40px;">险种</div>
- <div class="w-50" style="width: 50px; font-size: 10px;">返还比例</div>
- <div class="w-60" style=" font-size: 10px;">返还金额(元)</div>
- <div class="w-60" style="width: 50px; font-size: 10px;">合计返还</div>
- </div>
- <div class="table-list-content" v-if="reslistitem.programme">
- <div class="w-50" style="width: 40px;">
- <div class="table-list-line" style="border-right: none; padding-left: 0;"
- v-show="reslistitem.programme.description != '单商' && reslistitem.programme.description != '单三'">
- <span style="margin-left: 0; font-size: 10px;">交强险</span>
- </div>
- <div class="table-list-line" style="border-right: none; padding-left: 0;"
- v-show="reslistitem.programme.description != '单交'">
- <span style="margin-left: 0; font-size: 10px;">商业险</span>
- </div>
- <div class="table-list-line table-list-line-last"
- style="border-right: none; padding-left: 0;" v-show="reslistitem.result.jyPremium">
- <span style="margin-left: 0; font-size: 10px;">驾意险</span>
- </div>
- </div>
- <div class="w-50" style="width: 50px;">
- <div class="table-list-line" style="border-right: none; padding-left: 0;"
- v-show="reslistitem.programme.description != '单商' && reslistitem.programme.description != '单三'">
- <span style="margin-left: 0;">
- <el-input size="mini" style="width: 40px;" v-model="reslistitem.result.jqInput"
- class="mini-input"></el-input>
- </span>
- </div>
- <div class="table-list-line" style="border-right: none; padding-left: 0;"
- v-show="reslistitem.programme.description != '单交'">
- <span style="margin-left: 0;">
- <el-input size="mini" style="width: 40px;" v-model="reslistitem.result.syInput"
- class="mini-input"></el-input>
- </span>
- </div>
- <div class="table-list-line table-list-line-last"
- style="border-right: none; padding-left: 0;" v-show="reslistitem.result.jyPremium">
- <span style="margin-left: 0;">
- <el-input size="mini" style="width: 40px;" v-model="reslistitem.result.jyInput"
- class="mini-input"></el-input>
- </span>
- </div>
- </div>
- <div class="w-60">
- <div class="table-list-line"
- v-show="reslistitem.programme.description != '单商' && reslistitem.programme.description != '单三'">
- <span style="margin-left: 0;">{{ reslistitem.result.jqInput ?
- (reslistitem.result.jqPremium * (reslistitem.result.jqInput / 100)).toFixed(2) : 0
- }}</span>
- </div>
- <div class="table-list-line" v-show="reslistitem.programme.description != '单交'">
- <span style="margin-left: 0;">{{ reslistitem.result.syInput ?
- (reslistitem.result.syPremium * (reslistitem.result.syInput / 100)).toFixed(2) : 0
- }}</span>
- </div>
- <div class="table-list-line table-list-line-last" v-show="reslistitem.result.jyPremium">
- <span style="margin-left: 0;">{{ reslistitem.result.jyInput ?
- (reslistitem.result.jyPremium * (reslistitem.result.jyInput / 100)).toFixed(2) : 0
- }}</span>
- </div>
- </div>
- <div class="w-60 w-66">{{ (
- (reslistitem.result.jqInput ? reslistitem.result.jqPremium * (reslistitem.result.jqInput /
- 100) : 0) +
- (reslistitem.result.syInput ? reslistitem.result.syPremium * (reslistitem.result.syInput /
- 100) : 0) +
- (reslistitem.result.jyInput ? reslistitem.result.jyPremium * (reslistitem.result.jyInput /
- 100) : 0)
- ).toFixed(2)
- }}</div>
- </div>
- </div>
- </div>
- </div>
- </el-col>
- <!-- 保险期限 -->
- <el-col :span="6" class="card-bg" style="padding-left: 0;"
- v-if="reslistitem.quoteCode == '200' && reslistitem.result.orderstatus != '10' && reslistitem.result.orderstatus != '11'">
- <div class="card-mingxi baoxian">
- <div class="card-mingxi-title">保险期限:
- <div @click="syncData(reslistitem.result)">
- <el-tooltip class="item" effect="dark" content="使用此时间" placement="top">
- <i style="color: red" class="el-icon-time"></i>
- </el-tooltip>
- </div>
- </div>
- <div class="card-table">
- <div class="table-list">
- <div class="table-list-title">
- <div class="w-40">险种</div>
- <div class="flex-1">起保日期</div>
- <div class="flex-1">终保日期</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.startDateJq">
- <div class="w-40">交强险</div>
- <div class="flex-1">{{ reslistitem.result.startDateJq }}</div>
- <div class="flex-1">{{ reslistitem.result.endDateJq }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.startDateSy">
- <div class="w-40">商业险</div>
- <div class="flex-1">{{ reslistitem.result.startDateSy }}</div>
- <div class="flex-1">{{ reslistitem.result.endDateSy }}</div>
- </div>
- </div>
- </div>
- <div class="card-table">
- <div class="table-list">
- <div class="table-list-title">
- <div class="flex-1">类型</div>
- <div class="flex-1">评分</div>
- </div>
- <!-- <div class="table-list-content" v-show="reslistitem.result.JqExportFee">
- <div class="flex-1">交强出口费用</div>
- <div class="flex-1">{{ reslistitem.result.JqExportFee }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.syExportFee">
- <div class="flex-1">商业出口费用</div>
- <div class="flex-1">{{ reslistitem.result.syExportFee }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.noExportFee">
- <div class="flex-1">非车出口费用</div>
- <div class="flex-1">{{ reslistitem.result.noExportFee }}</div>
- </div> -->
- <div class="table-list-content" v-show="reslistitem.result.jqScore">
- <div class="flex-1">交强类型评分:</div>
- <div class="flex-1">{{ reslistitem.result.jqScore }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.syScore">
- <div class="flex-1">商业类型评分:</div>
- <div class="flex-1">{{ reslistitem.result.syScore }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.lossRation">
- <div class="flex-1">总赔付率:</div>
- <div class="flex-1">{{ reslistitem.result.lossRation }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.jqLossRation">
- <div class="flex-1">交强赔付率:</div>
- <div class="flex-1">{{ reslistitem.result.jqLossRation }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.syLossRation">
- <div class="flex-1">商业赔付率:</div>
- <div class="flex-1">{{ reslistitem.result.syLossRation }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.totalAdjustRate">
- <div class="flex-1">自主定价系数:</div>
- <div class="flex-1">{{ reslistitem.result.totalAdjustRate }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.jgAdjustRate">
- <div class="flex-1">交强折扣系数:</div>
- <div class="flex-1">{{ reslistitem.result.jgAdjustRate }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.syAdjustRate">
- <div class="flex-1">商业折扣系数:</div>
- <div class="flex-1">{{ reslistitem.result.syAdjustRate }}</div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.jqRenewal">
- <div class="flex-1">交强续保:</div>
- <div class="flex-1">{{ reslistitem.result.jqRenewal ? reslistitem.result.jqRenewal : "无" }}
- </div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.syRenewal">
- <div class="flex-1">商业续保:</div>
- <div class="flex-1">{{ reslistitem.result.syRenewal ? reslistitem.result.syRenewal : "无" }}
- </div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.jqClaims">
- <div class="flex-1">交强出险次数:</div>
- <div class="flex-1">{{ reslistitem.result.jqClaims ? reslistitem.result.jqClaims : "无" }}
- </div>
- </div>
- <div class="table-list-content" v-show="reslistitem.result.syClaims">
- <div class="flex-1">商业出险次数:</div>
- <div class="flex-1">{{ reslistitem.result.syClaims ? reslistitem.result.syClaims : "无" }}
- </div>
- </div>
- <div class="table-list-content" v-if="reslistitem.namesimple == '紫金财险' &&
- reslistitem.result.ubiPredictedInfoScore">
- <div class="flex-1">紫金能源车(鼎然-车辆风险评分):</div>
- <div class="flex-1">{{ reslistitem.result.ubiPredictedInfoScore }}</div>
- </div>
- <div class="table-list-content"
- v-if="reslistitem.result.iszdj && reslistitem.result.iszdj == '1'">
- <div class="flex-1">真单交</div>
- </div>
- <div class="table-list-content"
- v-if="reslistitem.result.iszdj && reslistitem.result.iszdj == '0'">
- <div class="flex-1">假单交</div>
- </div>
- <div class="table-list-content" v-if="reslistitem.namesimple == '永诚财险'">
- <div class="flex-1">光博分:</div>
- <div class="flex-1">{{ reslistitem.result.ilogPreUdwMess ? reslistitem.result.ilogPreUdwMess :
- "无" }}</div>
- </div>
- <div class="table-list-content" v-if="reslistitem.namesimple == '阳光财险'">
- <div class="flex-1">交商合并经营成本率:</div>
- <div class="flex-1">{{ reslistitem.result.mergeCostRate ? reslistitem.result.mergeCostRate :
- "无" }}</div>
- </div>
- <div class="table-list-content" v-else>
- <div class="flex-1">评分:</div>
- <div class="flex-1">{{ reslistitem.result.ilogPreUdwMess ? reslistitem.result.ilogPreUdwMess :
- "无" }}</div>
- </div>
- </div>
- </div>
- <div style="flex: 1;"></div>
- <div style="display: flex; align-items: center;">
- <div style="flex: 1;"></div>
- <div style="color: #2d4d89">
- <el-tooltip class="item" effect="dark" content="上年信息" placement="top">
- <i class="el-icon-chat-dot-round" @click="
- open2(reslistitem.namesimple, reslistitem.lastYearMsg)
- " style="
- font-size: 20px;
- transform: scale(0.8);
- vertical-align: middle;
- " :disabled="reslistitem.namesimple == '众安财险' &&
- reslistitem.result.tips == '需要验车'
- " v-show="reslistitem.quoteCode == '200' &&
- reslistitem.lastYearMsg
- "></i>
- </el-tooltip>
- <el-tooltip class="item" effect="dark" content="预核保信息" placement="top">
- <i class="el-icon-chat-dot-round" @click="
- openPredictInfo(
- reslistitem.namesimple,
- reslistitem.predictInfo
- )
- " style="
- font-size: 20px;
- transform: scale(0.8);
- vertical-align: middle;
- " v-show="reslistitem.quoteCode == '200' &&
- reslistitem.predictInfo &&
- reslistitem.predictInfo.length > 0 &&
- reslistitem.namesimple == '中国人寿'
- "></i>
- </el-tooltip>
- </div>
- <el-button :disabled="reslistitem.namesimple == '众安财险' &&
- reslistitem.result.tips == '需要验车'
- " v-show="reslistitem.quoteCode == '200' &&
- !('editStatus' in reslistitem.result)
- " type="text" size="small" style="color: #2d4d89; font-size: 14px"
- @click="hbsubmitdialog(reslistitem, reslistindex)">下单</el-button>
- <el-button v-show="reslistitem.quoteCode == '200'" type="text" size="small"
- style="color: #2d4d89; font-size: 14px"
- @click="qoutedetail(reslistitem.result.companyId)">查看详情</el-button>
- <el-button v-show="reslistitem.quoteCode == '200'" type="text" size="small"
- style="font-size: 14px" @click="bjdpreview(reslistitem.result.companyId)">报价单</el-button>
- <el-button type="text" size="small" style="font-size: 14px"
- @click="Payment(reslistitem.result.companyId, reslistitem)" v-show="reslistitem.orderstatus == '2' &&
- !('editStatus' in reslistitem.result) && reslistitem.namesimple !== '平安财险'
- ">付款码</el-button>
- <el-button type="text" size="small" style="font-size: 14px"
- @click="signature(reslistitem.result.companyId)" v-show="reslistitem.orderstatus == '2' &&
- !('editStatus' in reslistitem.result) && reslistitem.namesimple == '平安财险'
- ">生成签章</el-button>
- <el-button v-if="vehicleInspectionUrl" type="text" size="small" style="font-size: 14px"
- @click="validateCarCode">验车二维码</el-button>
- </div>
- </div>
- <!-- <div style="line-height: 25px">
- 保险期限:
- <span v-show="reslistitem.result.startDateJq">
- 【交强险】
- <span>
- {{ reslistitem.result.startDateJq }} -
- {{ reslistitem.result.endDateJq }}
- </span>
- <br />
- </span>
- <span v-show="reslistitem.result.startDateSy">
- 【商业险】
- <span>
- {{ reslistitem.result.startDateSy }} -
- {{ reslistitem.result.endDateSy }}
- </span>
- <br />
- </span>
- <span @click="syncData(reslistitem.result)">
- <el-tooltip class="item" effect="dark" content="使用此时间" placement="top">
- <i style="color: red" class="el-icon-time"></i>
- </el-tooltip>
- </span>
- <div>
- <span v-show="reslistitem.result.JqExportFee">
- 交强出口费用<span>{{
- reslistitem.result.JqExportFee
- }}</span>
- <br />
- </span>
- <span v-show="reslistitem.result.syExportFee">
- 商业出口费用<span>{{
- reslistitem.result.syExportFee
- }}</span>
- <br />
- </span>
- <span v-show="reslistitem.result.noExportFee">
- 非车出口费用<span>
- {{ reslistitem.result.noExportFee }}</span>
- </span>
- <br />
- </div>
- <div>
- <span v-if="reslistitem.result.jqScore" class="marginL">
- 交强类型评分:
- <span>{{ reslistitem.result.jqScore }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.syScore" class="marginL">
- 商业类型评分:
- <span>{{ reslistitem.result.syScore }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.lossRation" class="marginL">
- 总赔付率:
- <span>{{ reslistitem.result.lossRation }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.jqLossRation" class="marginL">
- 交强赔付率:
- <span>{{ reslistitem.result.jqLossRation }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.syLossRation" class="marginL">
- 商业赔付率:
- <span>{{ reslistitem.result.syLossRation }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.totalAdjustRate" class="marginL">
- 自主定价系数:
- <span>{{ reslistitem.result.totalAdjustRate }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.jgAdjustRate" class="marginL">
- 交强折扣系数:
- <span>{{ reslistitem.result.jgAdjustRate }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.syAdjustRate" class="marginL">
- 商业折扣系数:
- <span>{{ reslistitem.result.syAdjustRate }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.jqRenewal" class="marginL">
- 交强续保:
- <span>
- {{
- reslistitem.result.jqRenewal
- ? reslistitem.result.jqRenewal
- : "无"
- }}
- </span>
- <br />
- </span>
- <span v-if="reslistitem.result.syRenewal" class="marginL">
- 商业续保:
- <span>
- {{
- reslistitem.result.syRenewal
- ? reslistitem.result.syRenewal
- : "无"
- }}
- </span>
- <br />
- </span>
- <span v-if="reslistitem.result.jqClaims" class="marginL">
- 交强出险次数:
- <span>
- {{
- reslistitem.result.jqClaims
- ? reslistitem.result.jqClaims
- : "无"
- }}
- </span>
- <br />
- </span>
- <span v-if="reslistitem.result.syClaims" class="marginL">
- 商业出险次数:
- <span>
- {{
- reslistitem.result.syClaims
- ? reslistitem.result.syClaims
- : "无"
- }}
- </span>
- <br />
- </span>
- <span v-if="reslistitem.namesimple == '紫金财险' &&
- reslistitem.result.ubiPredictedInfoScore
- " class="marginL">
- 紫金能源车(鼎然-车辆风险评分):
- <span>{{ reslistitem.result.ubiPredictedInfoScore }}</span>
- <br />
- </span>
- <span v-if="reslistitem.result.iszdj &&
- reslistitem.result.iszdj == '1'
- ">真单交</span>
- <span v-if="reslistitem.result.iszdj &&
- reslistitem.result.iszdj == '0'
- ">假单交</span>
- <span v-if="reslistitem.namesimple == '永诚财险'">
- 光博分:
- <span>
- {{
- reslistitem.result.ilogPreUdwMess
- ? reslistitem.result.ilogPreUdwMess
- : "无"
- }}
- </span>
- <br />
- </span>
- <span v-else>
- 评分:
- <span>
- {{
- reslistitem.result.ilogPreUdwMess
- ? reslistitem.result.ilogPreUdwMess
- : "无"
- }}
- </span>
- <br />
- </span>
- </div>
- </div> -->
- </el-col>
- <!-- <el-col :gutter="20" :span="24" class="company-checked-left">
- <div class="company-checked-card" v-if="reslistitem.programme">
- <div>
- <div class="checked-card-title">险种</div>
- <div class="checked-card-content">
- <span class="blue-style" v-show="reslistitem.programme.description">{{ reslistitem.programme.description }}</span>
- <span v-show="reslistitem.checkedProgramme == 99" class="blue-button" @click="showTypeDialog(reslistitem, reslistindex)">调整险种</span>
- </div>
- </div>
- <div>
- <div class="checked-card-title">主险</div>
- <div class="checked-card-content" v-if="reslistitem.programme.kinds">
- <span class="blue-text" v-for="(kinds, kindIndex) in reslistitem.programme.kinds.main" :key="kindIndex">{{ kinds.alias || kinds.kindName }} {{ toWan(kinds.amount) }}</span>
- <span style="color: rgba(51,51,51,0.65);" v-if="reslistitem.programme.kinds.main.length == 0">暂无</span>
- </div>
- </div>
- <div>
- <div class="checked-card-title">附加险</div>
- <div class="checked-card-content" v-if="reslistitem.programme.kinds">
- <span v-for="(kinds, kindIndex) in reslistitem.programme.kinds.additional" :key="kindIndex">{{ kinds.alias || kinds.kindName }} {{ toWan(kinds.amount) }}</span>
- <span style="color: rgba(51,51,51,0.65);" v-if="reslistitem.programme.kinds.additional.length == 0">暂无</span>
- </div>
- </div>
- <div>
- <div class="checked-card-title">驾意险</div>
- <div class="checked-card-content" v-if="reslistitem.programme.kinds">
- <div v-for="(driving, drivingIndex) in reslistitem.programme.drivingList" :key="drivingIndex" style="margin-bottom: 10px;">
- <span style="margin-right: 0;" v-if="reslistitem.cnName == 'guoRen' || reslistitem.cnName == 'ansheng'">{{ driving.select }}</span>
- <span>{{ driving.alias || driving.projectName }} {{ driving.quantity }}份 ¥{{ Number(driving.sumPremium) * driving.quantity }}</span>
- <span v-show="reslistitem.checkedProgramme == 99"><i class="el-icon-delete" @click="deleteJiaYi(reslistindex, drivingIndex)"></i></span>
- <span class="blue-button" @click="showDetailJiaYi(reslistindex, driving)">查看详情</span>
- <span class="blue-button" @click="addJiaYi(reslistitem)" v-show="drivingIndex == 0 && reslistitem.checkedProgramme == 99">+驾意险</span>
- </div>
- <span class="blue-button" @click="addJiaYi(reslistitem)" v-show="!reslistitem.programme.drivingList.length && reslistitem.checkedProgramme == 99">+驾意险</span>
- </div>
- </div>
- <div style="margin-top: -10px;">
- <div class="checked-card-title">服务</div>
- <div class="checked-card-content" v-if="reslistitem.programme.kinds">
- <span v-for="(kinds, kindIndex) in reslistitem.programme.kinds.service" :key="kindIndex">{{ kinds.alias || kinds.kindName }} {{ toWan(kinds.amount, 'fw') }}</span>
- <span style="color: rgba(51,51,51,0.65);" v-if="reslistitem.programme.kinds.service.length == 0">暂无</span>
- </div>
- </div>
- <div>
- <div class="checked-card-title">其他</div>
- <div class="checked-card-content" v-show="reslistitem.checkedProgramme == 99 && reslistitem.cnName == 'guoRen'">
- <div v-if="reslistitem.programme">
- <div v-for="(teyueitem, teyueindex) in reslistitem.programme.teyue" :key="teyueindex">{{ teyueitem.clauseName }}</div>
- <span style="color: #F96646;" @click="contributingGuoRen(reslistitem.agreementId, reslistindex)">选择特约</span>
- </div>
- </div>
- <el-col :span="20" v-show="reslistitem.cnName == 'zijin'">
- <div v-show="reslistitem.cnName == 'zijin'">自定义系数:
- <el-input v-model="reslistitem.coefficient" size="mini" class="coefficient" placeholder="请输入"></el-input>
- </div>
- </el-col>
- </div>
- </div>
- </el-col> -->
- </el-row>
- </div>
- <!--
- <div class="flex j-s offer-time" v-if="reslistitem.quoteCode == '200'">
- <div style="line-height: 25px">
- 保险期限:
- <span v-show="reslistitem.result.startDateJq">
- 【交强险】
- <span>
- {{ reslistitem.result.startDateJq }} -
- {{ reslistitem.result.endDateJq }}
- </span>
- </span>
- <span v-show="reslistitem.result.startDateSy" style="margin-left: 20px">
- 【商业险】
- <span>
- {{ reslistitem.result.startDateSy }} -
- {{ reslistitem.result.endDateSy }}
- </span>
- </span>
- <span @click="syncData(reslistitem.result)">
- <el-tooltip class="item" effect="dark" content="使用此时间" placement="top">
- <i style="color: red" class="el-icon-time"></i>
- </el-tooltip>
- </span>
- <div>
- <span v-show="reslistitem.result.JqExportFee">
- 交强出口费用<span>{{
- reslistitem.result.JqExportFee
- }}</span>
- </span>
- <span v-show="reslistitem.result.syExportFee">
- 商业出口费用<span>{{
- reslistitem.result.syExportFee
- }}</span>
- </span>
- <span v-show="reslistitem.result.noExportFee">
- 非车出口费用<span>
- {{ reslistitem.result.noExportFee }}</span>
- </span>
- </div>
- <div>
- <span v-if="reslistitem.namesimple == '永诚财险'">
- 光博分:
- <span>
- {{
- reslistitem.result.ilogPreUdwMess
- ? reslistitem.result.ilogPreUdwMess
- : "无"
- }}
- </span>
- </span>
- <span v-else>
- 评分:
- <span>
- {{
- reslistitem.result.ilogPreUdwMess
- ? reslistitem.result.ilogPreUdwMess
- : "无"
- }}
- </span>
- </span>
- <span v-if="reslistitem.result.jqScore" class="marginL">
- 交强类型评分:
- <span>{{ reslistitem.result.jqScore }}</span>
- </span>
- <span v-if="reslistitem.result.syScore" class="marginL">
- 商业类型评分:
- <span>{{ reslistitem.result.syScore }}</span>
- </span>
- <span v-if="reslistitem.result.lossRation" class="marginL">
- 总赔付率:
- <span>{{ reslistitem.result.lossRation }}</span>
- </span>
- <span v-if="reslistitem.result.jqLossRation" class="marginL">
- 交强赔付率:
- <span>{{ reslistitem.result.jqLossRation }}</span>
- </span>
- <span v-if="reslistitem.result.syLossRation" class="marginL">
- 商业赔付率:
- <span>{{ reslistitem.result.syLossRation }}</span>
- </span>
- <span v-if="reslistitem.result.totalAdjustRate" class="marginL">
- 自主定价系数:
- <span>{{ reslistitem.result.totalAdjustRate }}</span>
- </span>
- <span v-if="reslistitem.result.jgAdjustRate" class="marginL">
- 交强折扣系数:
- <span>{{ reslistitem.result.jgAdjustRate }}</span>
- </span>
- <span v-if="reslistitem.result.syAdjustRate" class="marginL">
- 商业折扣系数:
- <span>{{ reslistitem.result.syAdjustRate }}</span>
- </span>
- <span v-if="reslistitem.result.jqRenewal" class="marginL">
- 交强续保:
- <span>
- {{
- reslistitem.result.jqRenewal
- ? reslistitem.result.jqRenewal
- : "无"
- }}
- </span>
- </span>
- <span v-if="reslistitem.result.syRenewal" class="marginL">
- 商业续保:
- <span>
- {{
- reslistitem.result.syRenewal
- ? reslistitem.result.syRenewal
- : "无"
- }}
- </span>
- </span>
- <span v-if="reslistitem.result.jqClaims" class="marginL">
- 交强出险次数:
- <span>
- {{
- reslistitem.result.jqClaims
- ? reslistitem.result.jqClaims
- : "无"
- }}
- </span>
- </span>
- <span v-if="reslistitem.result.syClaims" class="marginL">
- 商业出险次数:
- <span>
- {{
- reslistitem.result.syClaims
- ? reslistitem.result.syClaims
- : "无"
- }}
- </span>
- </span>
- <span v-if="reslistitem.namesimple == '紫金财险' &&
- reslistitem.result.ubiPredictedInfoScore
- " class="marginL">
- 紫金能源车(鼎然-车辆风险评分):
- <span>{{ reslistitem.result.ubiPredictedInfoScore }}</span>
- </span>
- <span v-if="reslistitem.result.iszdj &&
- reslistitem.result.iszdj == '1'
- ">真单交</span>
- <span v-if="reslistitem.result.iszdj &&
- reslistitem.result.iszdj == '0'
- ">假单交</span>
- </div>
- </div>
- <div style="text-align: right">
- <div style="color: #2d4d89">
- <el-tooltip class="item" effect="dark" content="上年信息" placement="top">
- <i class="el-icon-chat-dot-round" @click="
- open2(reslistitem.namesimple, reslistitem.lastYearMsg)
- " style="
- font-size: 20px;
- transform: scale(0.8);
- vertical-align: middle;
- " :disabled="reslistitem.namesimple == '众安财险' &&
- reslistitem.result.tips == '需要验车'
- " v-show="reslistitem.quoteCode == '200' &&
- reslistitem.lastYearMsg
- "></i>
- </el-tooltip>
- <el-tooltip class="item" effect="dark" content="预核保信息" placement="top">
- <i class="el-icon-chat-dot-round" @click="
- openPredictInfo(
- reslistitem.namesimple,
- reslistitem.predictInfo
- )
- " style="
- font-size: 20px;
- transform: scale(0.8);
- vertical-align: middle;
- " v-show="reslistitem.quoteCode == '200' &&
- reslistitem.predictInfo &&
- reslistitem.predictInfo.length > 0 &&
- reslistitem.namesimple == '中国人寿'
- "></i>
- </el-tooltip>
- <el-button :disabled="reslistitem.namesimple == '众安财险' &&
- reslistitem.result.tips == '需要验车'
- " v-show="reslistitem.quoteCode == '200' &&
- !('editStatus' in reslistitem.result)
- " type="text" size="small" style="color: #2d4d89; font-size: 14px"
- @click="hbsubmitdialog(reslistitem)">下单</el-button>
- <el-button v-show="reslistitem.quoteCode == '200'" type="text" size="small"
- style="color: #2d4d89; font-size: 14px"
- @click="qoutedetail(reslistitem.result.companyId)">查看详情</el-button>
- </div>
- <div>
- <el-button v-show="reslistitem.quoteCode == '200'" type="text" size="small" style="font-size: 14px"
- @click="bjdpreview(reslistitem.result.companyId)">报价单</el-button>
- <el-button type="text" size="small" style="font-size: 14px"
- @click="Payment(reslistitem.result.companyId, reslistitem)" v-show="reslistitem.orderstatus == '2' &&
- !('editStatus' in reslistitem.result) && reslistitem.namesimple !== '平安财险'
- ">付款码</el-button>
- <el-button type="text" size="small" style="font-size: 14px"
- @click="signature(reslistitem.result.companyId)" v-show="reslistitem.orderstatus == '2' &&
- !('editStatus' in reslistitem.result) && reslistitem.namesimple == '平安财险'
- ">生成签章</el-button>
- </div>
- </div>
- </div>
- <template>
- <span v-if="reslistitem.checked &&
- reslistitem.agreementId &&
- reslistitem.underwritingDescription
- " style="margin: 20px 20px 0 100px; display: inline-block">{{ reslistitem.underwritingDescription}}</span>
- </template>
- <template v-if="reslistitem.namesimple == '平安财险' &&
- reslistitem.checked &&
- reslistitem.agreementId
- ">
- <div class="flex f-c Driving-risk">
- <div v-for="(val, index) in pinganInsuranceData" :key="index" >
- <el-form :inline="true" :model="accidentFormPA[index-1]" class="demo-form-inline" size="small"
- style="font-weight: bold;margin-top:15px ">
- <el-form-item :label="index=='1'?'财意险':index=='2'?'小微险':'组合险'" style="margin-right: 30px">
- <el-select clearable v-model="accidentFormPA[index-1].pingantemplateSelection" placeholder="未选择" @clear="clearAccidentFormPA(index-1,)"
- @change="pinganInsuranceChange($event,index-1,val)">
- <el-option v-for="(item, index1) in val" :key="index1" :label="item.projectName"
- :value="item.projectName"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="选择份数" style="margin-right: 50px" v-if="index ==1||index ==2">
- <el-input-number v-model="accidentFormPA[index-1].quantity" :disabled="!accidentFormPA[index-1].pinganInsurancetype" @change="numberCopieschangePA($event,index-1)" :min="1" :max="accidentFormPA[index-1].sellListSize"
- controls-position="right"></el-input-number>
- </el-form-item>
- <el-form-item label="保费:" v-if="index ==1||index ==2">
- <span>{{ accidentFormPA[index-1].premium || 0 }} 元</span>
- </el-form-item>
- </el-form>
- <el-table class="pinganTable" style="margin-top: 20px" size="small" :data="accidentFormPA[index-1].pinganInsuranceDataTable" border
- v-if="accidentFormPA[index-1].pingantemplateSelection" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }" ref="RsTable" @select="(selections,row)=>{PADrivingCheckbox(selections,row,reslistitem.agreementId,index-1)}">
- <el-table-column align="center" width="55" label="选择" v-if="index ==1||index ==2">
- <template slot-scope="scope">
- <el-radio class="radio" v-model="accidentFormPA[index-1].pinganInsurancetype" :label="scope.row.code"
- @click.native.stop.prevent="PADrivingRadio(scope.row,reslistitem.agreementId,index-1)"> </el-radio>
- </template>
- </el-table-column>
- <el-table-column type="selection" v-else width="55">
- </el-table-column>
- <el-table-column prop="name" label="方案名称" align="center"></el-table-column>
- <el-table-column prop="code" label="方案代码" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费 (元)/每份" align="center">
- </el-table-column>
- <el-table-column prop="quantity" label="份数" align="center" v-if="index ==3">
- <template slot-scope="scope">
- <el-input-number size='small' v-model="scope.row.quantity" :min="1" :max="Number(scope.row.sellListSize)"
- controls-position="right"></el-input-number>
- </template>
- </el-table-column>
- <el-table-column label="操作" width="100">
- <template slot-scope="scope">
- <el-button type="text" size="small" @click="pinganDetail(scope.row,reslistitem.agreementId)">查看</el-button>
- </template>
- </el-table-column>
- </el-table>
- </div>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '泰康财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <el-form :inline="true" :model="accidentFormTk" class="demo-form-inline" size="small"
- style="font-weight: bold; margin-top: 15px">
- <el-form-item label="意外险类型" style="margin-right: 30px">
- <el-select clearable v-model="taikangtemplateSelection" placeholder="未选择" @clear="clearAccidentFormTk"
- @change="taikangInsuranceChange">
- <el-option v-for="(item, index) in taikangaccidentDataList" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="选择份数" style="margin-right: 50px">
- <el-input-number v-model="accidentFormTk.quantity" @change="numberCopieschangeTk" :min="1"
- controls-position="right"></el-input-number>
- </el-form-item>
- <el-form-item label="保费:">
- <span>{{ accidentFormTk.sumPremium }} 元</span>
- </el-form-item>
- </el-form>
- <el-table v-if="taikangtemplateSelection" size="small" :data="taikangInsuranceDataTable" border
- ref="expandTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="amount" label="每座保额 (元)/每份" align="center"></el-table-column>
- <el-table-column prop="sumAmount" label="每车保额 (元)/每份" align="center"></el-table-column>
- <el-table-column prop="premium" label="责任保费 (元)/每份" align="center"></el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '恒邦财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <div class="dis a-c" style="margin: 15px 0">
- <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
- <el-select style="width: 250px; margin-right: 60px" filterable size="small" clearable
- v-model="hengbangtemplateSelection" placeholder="未选择" @clear="clearAccidentFormHB"
- @change="hengbangInsuranceChange">
- <el-option v-for="(item, index) in hengbangInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- 保费:
- <b>{{
- hengbangaccidentalDrivingVo.sumPremium || 0
- }} 元</b>
- </div>
- <el-table size="small" :data="hengbangInsuranceDataTable" border v-if="hengbangtemplateSelection"
- ref="RsTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="险种名称" align="center"></el-table-column>
- <el-table-column prop="amount" label="保额" align="center"></el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '华农财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <el-form :inline="true" :model="accidentFormHN" class="demo-form-inline"
- style="font-weight: bold; margin-top: 15px" size="small">
- <el-form-item label="意外险类型:" style="margin-right: 30px">
- <el-select clearable v-model="accidentFormHN.accidentType" placeholder="未选择"
- @clear="clearAccidentFormHN" @change="huanongInsuranceChange">
- <el-option v-for="(item, index) in huanongInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="选择份数" style="margin-right: 30px">
- <el-input-number v-model="accidentFormHN.quantity" :min="1"
- controls-position="right"></el-input-number>
- </el-form-item>
- </el-form>
- <el-table v-if="accidentFormHN.accidentType" size="small" :data="huanongInsuranceDataTable" border
- ref="expandTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="amount" label="保额" align="center">
- <template slot-scope="scope">
- <el-input v-model="scope.row.amount" placeholder="请输入内容" size="small" disabled></el-input>
- </template>
- </el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '太平财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <div class="dis a-c" style="margin: 15px 0">
- <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
- <el-select style="width: 250px; margin-right: 60px" filterable size="small" clearable
- v-model="taipingtemplateSelection" placeholder="未选择" @clear="clearAccidentFormTP"
- @change="taipingInsuranceChange">
- <el-option v-for="(item, index) in taipingInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- 每份价税合计:
- <b>{{ taipingaccidentalDrivingVo.sumPremium || 0 }} 元</b>
- </div>
- <el-table size="small" :data="taipingInsuranceDataTable" border v-if="taipingtemplateSelection"
- ref="RsTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="险种名称" align="center"></el-table-column>
- <el-table-column prop="amount" label="险种金额" align="center"></el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '安盛天平' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <div class="dis a-c" style="margin-top: 15px">
- <span style="margin-right: 15px; font-weight: bold">意外险类型</span>
- <el-select style="width: 250px" size="small" clearable v-model="anshengtemplateSelection"
- placeholder="未选择" @clear="clearAccidentFormAS" @change="anshengInsuranceChange">
- <el-option v-for="(item, index) in anshengInsuranceData" :key="index"
- :label="item.projectCode + ' ' + item.projectName" :value="item.projectCode"></el-option>
- </el-select>
- </div>
- <el-table style="margin-top: 20px" size="small" :data="anshengInsuranceDataTable" border
- v-if="anshengtemplateSelection" ref="RsTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column align="center" width="55" label="选择">
- <template slot-scope="scope">
- <el-radio class="radio" v-model="anshengInsurancetype" :label="scope.row.projectCode"
- @click.native.stop.prevent="ASDrivingRadio(scope.row)"> </el-radio>
- </template>
- </el-table-column>
- <el-table-column prop="projectName" label="方案名称" align="center"></el-table-column>
- <el-table-column prop="projectCode" label="方案代码" align="center"></el-table-column>
- <el-table-column prop="quantity" label="份数" align="center">
- </el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '中国人寿' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div style="margin: 15px 0 15px 100px">
- <span>商业险折扣:</span>
- <el-input style="width: 220px" :disabled="!lastCompanyId" size="small" v-model="reslistitem.discount"
- placeholder="请输入内容" @input="
- reslistitem.discount = reslistitem.discount.replace(
- /[^\d.]/g,
- ''
- )
- "></el-input>
- </div>
- <div class="flex f-c Driving-risk">
- <div class="dis a-c">
- <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
- <el-select style="width: 250px" filterable size="small" clearable v-model="renshoutemplateSelection"
- placeholder="未选择" @clear="clearAccidentFormRS" @change="renshouInsuranceChange">
- <el-option v-for="(item, index) in renshouInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </div>
- <el-table size="small" style="margin-top: 20px" :data="renshouInsuranceDataTable" border
- v-if="renshoutemplateSelection" @row-click="RSDrivingChange" ref="RsTable" highlight-current-row
- :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="方案名称" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费 (元)起" align="center">
- <template slot-scope="scope">
- <span>¥{{ scope.row.premium }}</span>
- </template>
- </el-table-column>
- <el-table-column label="份数" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.quantity }}</span>
- </template>
- </el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '众安财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <div class="dis a-c" style="margin: 15px 0">
- <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
- <el-select style="width: 250px" filterable size="small" clearable v-model="zhongantemplateSelection"
- placeholder="未选择" @clear="clearAccidentFormZA" @change="zhonganInsuranceChange">
- <el-option v-for="(item, index) in zhonganInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </div>
- <el-table size="small" :data="zhonganInsuranceDataTable" border v-if="zhongantemplateSelection"
- @row-click="ZADrivingChange" ref="RsTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="险种名称" align="center"></el-table-column>
- <el-table-column prop="amount" label="险种金额" align="center"></el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '紫金财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div style="margin: 15px 0 15px 100px">
- <span>自主定价系数:</span>
- <el-input style="width: 220px" size="small" v-model="reslistitem.coefficient"
- placeholder="请输入内容"></el-input>
- </div>
- <div class="flex f-c Driving-risk">
- <div class="dis a-c" style="margin-bottom: 15px">
- <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
- <el-select style="width: 250px" filterable multiple size="small" clearable
- v-model="zijintemplateSelection" placeholder="未选择" @clear="clearAccidentFormZJ"
- @change="zijinInsuranceChange">
- <el-option v-for="(item, index) in ziJinInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </div>
- <el-table size="small" :data="zijinInsuranceDataTable" border v-if="zijintemplateSelection"
- @select="CheckboxChange" filterable ref="expandTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <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">
- <template slot-scope="scope">
- <span>¥{{ scope.row.sumPremium }}</span>
- </template>
- </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" 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 &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <el-form :inline="true" :model="accidentForm" class="demo-form-inline" size="small"
- style="font-weight: bold; margin-top: 15px">
- <el-form-item label="意外险类型" style="margin-right: 30px">
- <el-select clearable v-model="yongchengtemplateSelection" placeholder="未选择" @clear="clearAccidentForm"
- @change="yongchengInsuranceChange">
- <el-option v-for="(item, index) in yongchengaccidentDataList" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="选择份数" style="margin-right: 50px">
- <el-input-number v-model="accidentForm.quantity" @change="numberCopieschange" :min="1"
- controls-position="right"></el-input-number>
- </el-form-item>
- <el-form-item label="保费:">
- <span>{{ accidentForm.sumPremium }} 元</span>
- </el-form-item>
- </el-form>
- <el-table v-if="yongchengtemplateSelection" size="small" :data="yongchengInsuranceDataTable" border
- ref="expandTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="amount" label="每座保额 (元)/每份" align="center"></el-table-column>
- <el-table-column prop="sumAmount" label="每车保额 (元)/每份" align="center"></el-table-column>
- <el-table-column prop="premium" label="责任保费 (元)/每份" align="center"></el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '国任财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <el-button type="text" style="margin: 10px 0 0 100px"
- @click="contributingGuoRen(reslistitem.agreementId)">选择特约</el-button>
- <div class="flex f-c Driving-risk">
- <el-form :inline="true" :model="guoRenaccidentForm" class="demo-form-inline" size="small">
- <el-form-item label="意外险类型" style="margin-right: 30px">
- <el-select clearable placeholder="未选择" @clear="clearAccidentFormGr" @change="grcxchange"
- v-model="guoRenaccidentForm.goodsCode">
- <el-option v-for="(item, index) in guoRenaccidentDataList" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label=" ">
- <el-select clearable v-model="guoRenaccidentForm.prodCode" @change="grcxchangeChild">
- <el-option v-for="(item) in guoRenaccidentDataListChild" :key="item.projectCode"
- :label="item.projectName" :value="item.projectCode"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="选择份数" style="margin-right: 30px">
- <el-input-number v-model="guoRenaccidentForm.quantity" :min="1" controls-position="right"
- @change="numberCopieschangeGR"></el-input-number>
- </el-form-item>
- <el-form-item label="保费:">
- <span>{{ guoRenaccidentForm.sumPremium }} 元</span>
- </el-form-item>
- </el-form>
- <el-table v-if="guoRenaccidentForm.prodCode" size="small" :data="guoRenInsuranceDataTable" border
- ref="expandTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="amount" label="保额 (元)" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费 (元)" align="center">
- <template slot-scope="scope">¥{{ scope.row.premium }}</template>
- </el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '中煤财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk accident-style zmDriving">
- <el-form :inline="true" :model="accidentFormZM" class="demo-form-inline" size="small"
- style="font-weight: bold; margin-top: 15px">
- <el-form-item label="意外险类型" style="margin-right: 30px">
- <el-select style="width: 250px" size="small" clearable v-model="zhongmeitemplateSelection"
- placeholder="未选择" @clear="numberCopieschangeZM" @change="zhongmeiInsuranceChange">
- <el-option v-for="(item, index) in zhongmeiInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="选择份数" style="margin-right: 30px">
- <el-input-number v-model="accidentFormZM.quantity" @change="numberCopieschangeZM" :min="1"
- controls-position="right"></el-input-number>
- </el-form-item>
- <el-form-item label="保费:">
- <span>{{ accidentFormZM.sumPremium }} 元</span>
- </el-form-item>
- </el-form>
- <el-table size="small" :data="zhongmeiInsuranceDataTable" border ref="ZmMultipleTable"
- v-if="zhongmeitemplateSelection" :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="保险责任名称" align="center"></el-table-column>
- <el-table-column prop="amount" label="保险责任对应保额" align="center"></el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '大家财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk">
- <div class="dis a-c" style="margin-top: 15px">
- <span style="margin-right: 15px; font-weight: bold">选择意外险</span>
- <el-select style="width: 250px" v-if="reslistitem.apiType == 1" filterable size="small" clearable
- v-model="dajiatemplateSelection" placeholder="未选择" @clear="clearAccidentFormDJ"
- @change="dajiaInsuranceChange">
- <el-option v-for="(item, index) in dajiaInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- <div v-else>
- <el-select size="small" style="width: 250px" clearable placeholder="未选择" @change="djcxchange"
- v-model="dajiaaccidentForm.parentCode" @clear="clearAccidentFormDJ">
- <el-option v-for="(item, index) in dajiaInsuranceData" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- <el-select size="small" style="width: 250px" clearable v-model="dajiaaccidentForm.projectCode"
- @change="djcxchangeChild">
- <el-option v-for="(item) in dajiaaccidentDataListChild" :key="item.projectCode"
- :label="item.projectName" :value="item.projectCode"></el-option>
- </el-select>
- </div>
- </div>
- <el-table size="small" :data="dajiaInsuranceDataTable" border ref="RsTable" highlight-current-row
- :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="保险责任名称" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费 (元)/每份" align="center">
- <template slot-scope="scope">¥{{ scope.row.premium }}</template>
- </el-table-column>
- </el-table>
- </div>
- </template>
- <template v-if="reslistitem.namesimple == '渤海财险' &&
- reslistitem.checked &&
- reslistitem.agreementId &&
- isLetter !== '3'
- ">
- <div class="flex f-c Driving-risk" style="margin-top: 15px">
- <el-form :inline="true" :model="boHaiaccidentForm" class="demo-form-inline" size="small">
- <el-form-item label="意外险类型" style="margin-right: 30px">
- <el-select clearable placeholder="未选择" @clear="clearAccidentFormBh" @change="bohaiInsuranceChange"
- v-model="boHaiaccidentForm.projectCode">
- <el-option v-for="(item, index) in boHaiaccidentDataList" :key="index" :label="item.projectName"
- :value="item.projectCode"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="选择份数" style="margin-right: 30px">
- <el-input-number v-model="boHaiaccidentForm.copies" :min="1"
- controls-position="right"></el-input-number>
- </el-form-item>
- <el-form-item label="保费:">
- <span>{{
- boHaiaccidentForm.premium * boHaiaccidentForm.copies
- }} 元</span>
- </el-form-item>
- </el-form>
- <el-table v-if="boHaiaccidentForm.projectCode" size="small" :data="bohaiInsuranceDataTable" border
- ref="expandTable" highlight-current-row :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column prop="name" label="保险责任名称" align="center"></el-table-column>
- <el-table-column prop="amount" label="保额 (元)" align="center">
- <template slot-scope="scope">¥{{ scope.row.amount }}</template>
- </el-table-column>
- </el-table>
- </div>
- </template> -->
- </div>
- </div>
- </div>
- </div>
- <!-- 报价历史 -->
- <div class="Enclosure flex f-c" v-if="isLetter == '1'">
- <div class="home flex j-s a-c back">
- <div class="flex j-s a-c color">
- <img src="../../../../src/icon/报价历史.png" alt class="icon-img" />
- <span style="margin-left: 10px">报价历史</span>
- <div v-if="orderno">
- <el-radio-group v-model="historyRadio" style="margin-left: 30px" @input="RadioHistoryChange"
- v-for="item in insOrderStatusoptions" :key="item.dictValue">
- <el-radio :label="item.dictValue">{{ item.dictTag }}</el-radio>
- </el-radio-group>
- </div>
- </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: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }" highlight-current-row>
- <el-table-column prop="inscompany" label="保险公司" align="center"></el-table-column>
- <el-table-column prop="username" label="业务员" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.userName }}({{ scope.row.userId }})</span>
- </template>
- </el-table-column>
- <el-table-column prop="licenseno" label="车牌号" align="center"></el-table-column>
- <el-table-column prop="product" 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 style="
- color: #33a08d;
- border-color: #33a08d;
- background: rgba(51, 160, 141, 0.1);
- " v-if="scope.row.orderstatus == '0' || scope.row.orderstatus == '1'
- " size="small">{{ scope.row.orderstatus | cap }}</el-tag>
- <el-tag type="danger" style="border-color: #e75b5d" v-else-if="scope.row.orderstatus == '3'"
- size="small">{{
- scope.row.orderstatus | cap }}</el-tag>
- <el-tag v-else style="
- color: #2d4d89;
- border-color: #2d4d89;
- background: rgba(45, 77, 137, 0.1);
- " size="small">{{ scope.row.orderstatus | cap }}</el-tag>
- </template>
- </el-table-column>
- <el-table-column label="操作" align="center" min-width="180" fixed="right">
- <template slot-scope="scope">
- <el-button v-if="scope.row.orderstatus == '10'" type="text" style="color: #2d4d89" size="small"
- @click="supplementOrder(scope.row.id)">补录订单</el-button>
- <el-button type="text" style="color: #2d4d89" size="small"
- @click="qoutedetail(scope.row.id)">查看详情</el-button>
- <el-button size="small" type="text" @click="bjdpreview(scope.row.id)">报价单</el-button>
- <el-button size="small" v-show="scope.row.orderstatus == '2' && scope.row.inscompany !== '平安财险'"
- type="text" @click="Payment(scope.row.id, scope.row)">付款码</el-button>
- <el-button size="small" v-show="scope.row.orderstatus == '2' && scope.row.inscompany == '平安财险'"
- type="text" @click="signature(scope.row.id)">生成签章</el-button>
- <el-button size="mini" type="text" v-if="(scope.row.orderstatus == '1' ||
- scope.row.orderstatus == '2' ||
- scope.row.orderstatus == '4') &&
- ['紫金财险', '诚泰财险', '阳光财险'].includes(scope.row.inscompany)
- " @click="cancelorder(scope.row)">撤单</el-button>
- <el-button type="text" size="mini" style="color: #2d4d89"
- v-if="scope.row.orderstatus == '2' && scope.row.inscompany !== '平安财险'"
- @click="revokeCode(scope.row.id)">撤销二维码</el-button>
- </template>
- </el-table-column>
- </el-table>
- </div>
- </div>
- <!-- 查看详情 -->
- <detailsDialog ref="detailsDialog" :orderInfo.sync="queryOrders" :Feepermissions="false"></detailsDialog>
- <el-dialog title="车型选择" :visible.sync="chexingdialogVisible" width="1300px">
- <el-form :inline="true" class="demo-form-inline" size="small">
- <el-form-item label="厂牌型号">
- <el-input v-model="carInfo.modelcname" placeholder="厂牌型号" style="width: 500px"></el-input>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" size="small" @click="toChooseVehicleType(carInfo.modelcname)">查询</el-button>
- </el-form-item>
- </el-form>
- <el-table size="small" :data="reslist" height="690" border style="width: 100%" v-loading="loading"
- :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }" 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="200"></el-table-column>
- <el-table-column prop="importFlag" 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 title="车辆识别代码" :visible.sync="sbdmdialogVisible" width="1300px">
- <el-form :inline="true" class="demo-form-inline" size="small">
- <el-form-item label="车辆识别代码">
- <el-input v-model="carInfo.frameNo" placeholder="车辆识别代码" style="width: 500px"></el-input>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" size="small" @click="toChooseVin(carInfo.frameNo)">查询</el-button>
- </el-form-item>
- </el-form>
- <el-table size="small" :data="reslist" height="690" border style="width: 100%" v-loading="loading"
- :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }" 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="importFlag" label="车辆类型" align="center" width="100"></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="codedialogVisible" width="430px" top="10vh" class="saomazhifucodeClass">
- <div class="ORcodebody" v-watermark="userform.id || userId">
- <div slot="title" class="dialog-title">
- <span>扫码付款</span>
- </div>
- <div class="ORcode">
- <div style="padding: 13px; position: relative">
- <div id="qrcode" ref="qrcode"></div>
- </div>
- </div>
- <img style="margin-left: -16px" src="../../../assets/image/divider.png" alt />
- <div style="
- font-size: 32px;
- text-align: center;
- color: #d42426;
- margin-top: 20px;
- ">
- <span style="font-size: 24px; font-weight: bold">¥</span>
- {{ sumpremium }}
- </div>
- <div class="ORtitle">
- <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 v-if="jypremium">
- <span>驾意险:</span>
- <span>{{ jypremium }}</span>
- </div>
- <div v-if="jypremium">
- <span>驾意险险起保日期:</span>
- <span>{{ systartdate || jqstartdate }}</span>
- </div>
- </div>
- <!-- <div class="display">
- <el-button size="small" style="width:100px;" @click="codedialogVisible = false">关闭</el-button>
- </div>-->
- </div>
- <span slot="footer" class="dialog-footer display">
- <el-button size="small" style="width: 100px; border-color: #d42426; color: #d42426"
- @click="codedialogVisible = false">关闭</el-button>
- </span>
- </el-dialog>
- <!--第二种 二维码 -->
- <el-dialog :visible.sync="codedialogVisiblePro" width="660px" class="proSaomazhifucodeClass" top="10vh"
- title="扫码付款">
- <div class="flex j-s">
- <div class="scan-code">
- <div style="font-weight: bold">
- 总金额:
- <span style="color: #2d4d89">{{ sumpremium }}</span>
- </div>
- <div>交强险:{{ jqpremium }}</div>
- <div>车船税:{{ taxamount }}</div>
- <div>商业险:{{ sypremium }}</div>
- <div>驾意险:{{ jypremium }}</div>
- </div>
- <div id="qrcode" ref="qrcode"></div>
- <div class="scan-code">
- <div>保险公司:{{ inscompany }}</div>
- <div>车牌号:{{ licenseNo }}</div>
- <div>投保人:{{ applyName }}</div>
- <div>交强险起保日期:{{ jqstartdate }}</div>
- <div>商业险起保日期:{{ systartdate }}</div>
- <div>驾意险起保日期:{{ systartdate || jqstartdate }}</div>
- </div>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button size="small" style="
- width: 100px;
- background: #eaedf1;
- border-color: #eaedf1;
- color: #2d4d89;
- " @click="codedialogVisiblePro = false">关闭</el-button>
- </span>
- </el-dialog>
- <el-dialog :visible.sync="uploadcardialogVisible" width="960px" style="padding: 10px 20px; box-sizing: border-box"
- @open="closeDialog(0)">
- <div slot="title" class="dialog-title">
- <span>行驶证识别</span>
- </div>
- <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.carOwner" autocomplete="off"></el-input>
- </el-form-item>
- <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.limitLoad" 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.registerDate" 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>
- </div>
- </div>
- </el-row>
- <span slot="footer" class="dialog-footer">
- <el-button type="primary" @click="CarOCRdiscern()" size="small">识 别</el-button>
- <el-button type="primary" @click="CarOCRconfirm()" size="small">确 认</el-button>
- </span>
- </el-dialog>
- <el-dialog :visible.sync="uploaduserdialogVisible" width="960px" style="padding: 10px 20px; box-sizing: border-box"
- @open="closeDialog(userIndex)">
- <el-tabs v-model="activeName">
- <el-tab-pane label="身份证识别" name="1">
- <el-row :gutter="20">
- <div class="bodys1">
- <div>
- <div class="flex">
- <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">
- <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.gender" 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>
- </el-tab-pane>
- <el-tab-pane label="营业执照" name="2">
- <el-row :gutter="20">
- <div class="bodys1">
- <div>
- <div class="flex">
- <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="businessChange">
- <img v-show="businessImg" :src="businessImg" style="width: 100%; height: 100%" />
- <img v-show="!businessImg" src="../../../../static/userfront.png"
- style="width: 100%; height: 100%" />
- <span class="slot" v-show="businessImg" @click.stop>
- <i class="el-icon-zoom-in" @click.stop="handlePictureCardPreview(businessImg)"></i>
- <i class="el-icon-delete" @click.stop="handleRemove('businessImg')"></i>
- </span>
- </el-upload>
- </div>
- </div>
- </div>
- <div style="text-align: center">
- <el-form :model="businessform" label-width="130px" size="small">
- <el-form-item label="单位名称">
- <el-input autocomplete="off" v-model="businessform.name"></el-input>
- </el-form-item>
- <el-form-item label="法人">
- <el-input autocomplete="off" v-model="businessform.legalPerson"></el-input>
- </el-form-item>
- <el-form-item label="社会信用代码">
- <el-input autocomplete="off" v-model="businessform.organizationCode"></el-input>
- </el-form-item>
- <el-form-item label="地址">
- <el-input autocomplete="off" v-model="businessform.addr"></el-input>
- </el-form-item>
- <el-form-item label="注册资本">
- <el-input autocomplete="off" v-model="businessform.registeredCapital"></el-input>
- </el-form-item>
- <el-form-item label="经营范围">
- <el-input autocomplete="off" type="textarea" v-model="businessform.scope"></el-input>
- </el-form-item>
- </el-form>
- </div>
- </div>
- </el-row>
- </el-tab-pane>
- </el-tabs>
- <span slot="footer" class="dialog-footer">
- <el-button type="primary" @click="userOCRdiscern()" size="small">识 别</el-button>
- <el-button type="primary" @click="userOCRconfirm()" size="small">确 认</el-button>
- </span>
- </el-dialog>
- <el-dialog :visible.sync="pinganDataDetailVisible" width="40%" title="责任明细">
- <el-table :data="pinganDataDetail" border style="width: 100%">
- <el-table-column prop="insuranceCoverage" label="责任名称">
- </el-table-column>
- <el-table-column prop="unitInsuredAmount" label="每份保额">
- </el-table-column>
- </el-table>
- </el-dialog>
- <div v-if="isLetter == '1'" class="flex j-c a-c footer" :class="$store.state.app.collapse ? 'position-collapse-left' : 'position-left'
- ">
- <el-button size="small" @click="add()">录下一单</el-button>
- <el-button type="primary" :loading="calculateLoading" size="small" @click="quote1()">保费计算</el-button>
- </div>
- <div v-if="isLetter == '2'" style="text-align: center">
- <el-button type="primary" :loading="calculateLoading" size="small" @click="quote1()">保费计算</el-button>
- </div>
- <div class="Anchor-link flex f-c j-s a-c" v-if="isLetter == '1'">
- <div>
- <img src="../../../../src/icon/车辆信息.png" alt class="icon-img" @click="handleScroll('Car')" />
- </div>
- <div>
- <img src="../../../../src/icon/投保信息.png" alt class="icon-img" @click="handleScroll('insurance')" />
- </div>
- <div>
- <img src="../../../../src/icon/险别选择.png" alt class="icon-img" @click="handleScroll('more')" />
- </div>
- <div>
- <img src="../../../../src/icon/保险公司.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: #d42426;
- 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"
- v-if="orderstatus == '2' && queryOrders.inscompany !== '平安财险'"
- @click="Payment(companyId, queryOrders)">缴费二维码</el-button>
- <el-button style="width: 100px" type="primary" size="small"
- v-if="orderstatus == '2' && queryOrders.inscompany == '平安财险'" @click="signature(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="contributingState ? '选择特约' : '提交核保'" :visible.sync="hbsubmitdialogVisible" width="1200px">
- <div style="margin-bottom: 20px; font-weight: bold">特约选择</div>
- <el-table size="small" :data="zijinengageListData" border v-loading="contributingLoading"
- @select="zijinengageChange" @select-all="zijinengageChangeAll" ref="expandTablePro" highlight-current-row
- @cell-dblclick="zijincellDblclick" :cell-class-name="tableCellClassName" :header-cell-style="{
- background: '#F7F7F9 ',
- fontWeight: '700',
- color: '#333333',
- }">
- <el-table-column type="selection" width="55"></el-table-column>
- <el-table-column prop="clauseCode" :width="80" label="特约代码" align="center"></el-table-column>
- <el-table-column v-if="contributingState" :width="100" prop="riskCode" label="特约险种"
- align="center"></el-table-column>
- <el-table-column prop="clauseName" label="特约名称" align="center"></el-table-column>
- <!-- <el-table-column prop="replaceContent" label="特约内容" align="center"></el-table-column> -->
- <el-table-column prop="clauseContent" label="特约内容">
- <template slot-scope="scope">
- <el-input @blur="hideInput" size="small" type="textarea" :ref="scope.row.index + ',' + scope.column.index"
- v-model="scope.row.clauseContent" v-if="scope.row.index + ',' + scope.column.index == currentCell &&
- scope.row.modifyFlag == '1'
- "></el-input>
- <span v-else>{{ scope.row.clauseContent }}</span>
- </template>
- </el-table-column>
- </el-table>
- <span slot="footer" class="dialog-footer">
- <el-button size="small" @click="hbsubmitdialogVisible = false">取 消</el-button>
- <el-button v-if="contributingState" size="small" type="primary"
- @click="hbsubmitdialogVisible = false">确定</el-button>
- <el-button v-else size="small" type="primary" @click="hbsubmit">提交核保</el-button>
- </span>
- </el-dialog>
- <!-- <imageDialog ref="imageDialog" :quoteno="quoteno"></imageDialog>-->
- <!-- 报价单 -->
- <quotationDialog ref="quotationDialog" :queryOrders="queryOrders"></quotationDialog>
- <quotationDialogPro ref="quotationDialogPro" :queryOrders="queryOrders"></quotationDialogPro>
- <el-image-viewer v-if="showViewer" :on-close="closeViewer" :z-index="9999" :url-list="[ProViewImg]" />
- <el-dialog :visible.sync="redictInfodialogVisible" width="70%">
- <el-table :data="redictInfoMsg" style="width: 100%">
- <el-table-column prop="description" label="审核意见"></el-table-column>
- <el-table-column prop="opinion" label="备注"></el-table-column>
- </el-table>
- </el-dialog>
- <!-- 生成签章 -->
- <el-dialog :visible.sync="signaturedialogVisible" title="生成签章" width="14%">
- <div>
- <img :src="resultMessageImg" alt style="width: 100%" />
- <!-- <div id="signaturecode" ref="signaturecode"></div> -->
- </div>
- </el-dialog>
- <!-- 保单上传 -->
- <el-dialog :visible.sync="policyUploaddialogVisible" width="30%">
- <div slot="title" class="dialog-title">
- <span>保单上传</span>
- </div>
- <el-form :model="policyNumberForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
- <el-form-item label="交强保单:" prop="jqPolicy">
- <el-upload class="upload-demo" ref="jqPolicyupload" action="#" :limit="1" :auto-upload="false"
- :on-remove="(file) => removePhoto(file, policyNumberForm.jqPolicyList, 'jqPolicyList')"
- :file-list="policyNumberForm.jqPolicyList" :on-change="(file) => policydrivingupload(file, 'jqPolicy')">
- <el-button size="small" type="primary">点击上传</el-button>
- <el-button size="small" type="primary" @click.stop="policyNumberForm.jqPolicyList = []">清空</el-button>
- </el-upload>
- </el-form-item>
- <el-form-item label="商业保单:" prop="syPolicy">
- <el-upload class="upload-demo" ref="syPolicyupload" action="#" :limit="1" :auto-upload="false"
- :on-remove="(file) => removePhoto(file, policyNumberForm.syPolicyList, 'syPolicyList')"
- :file-list="policyNumberForm.syPolicyList" :on-change="(file) => policydrivingupload(file, 'syPolicy')">
- <el-button size="small" type="primary">点击上传</el-button>
- <el-button size="small" type="primary" @click.stop="policyNumberForm.syPolicyList = []">清空</el-button>
- </el-upload>
- </el-form-item>
- <el-form-item label="非车保单:" prop="noPolicy">
- <el-upload class="upload-demo" ref="noPolicyupload" action="#" :limit="1" :auto-upload="false"
- :on-remove="(file) => removePhoto(file, policyNumberForm.noPolicyList, 'noPolicyList')"
- :file-list="policyNumberForm.noPolicyList" :on-change="(file) => policydrivingupload(file, 'noPolicy')">
- <el-button size="small" type="primary">点击上传</el-button>
- <el-button size="small" type="primary" @click.stop="policyNumberForm.noPolicyList = []">清空</el-button>
- </el-upload>
- </el-form-item>
- <el-form-item label="交强电子标志:" prop="jqSign">
- <el-upload class="upload-demo" ref="jqSignupload" action="#" :limit="1" :auto-upload="false"
- :on-remove="(file) => removePhoto(file, policyNumberForm.jqSignList, 'jqSignList')"
- :file-list="policyNumberForm.jqSignList" :on-change="(file) => policydrivingupload(file, 'jqSign')">
- <el-button size="small" type="primary">点击上传</el-button>
- <el-button size="small" type="primary" @click.stop="policyNumberForm.jqSignList = []">清空</el-button>
- </el-upload>
- </el-form-item>
- </el-form>
- <span slot="footer" class="dialog-footer">
- <el-button size="small" @click="policyUploaddialogVisible = false">取 消</el-button>
- <el-button size="small" type="primary" @click="policyUploaddialogVisible = false">确 定</el-button>
- </span>
- </el-dialog>
- <!-- 影像上传 -->
- <el-dialog :visible.sync="imageUploaddialogVisible" width="1070px">
- <div slot="title" class="dialog-title">
- <span>影像上传</span>
- </div>
- <el-row>
- <el-col :span="4">
- <div class="tab-style">
- <li class="liMenu" :class="idx == tabLiIndex ? 'tabLi-style' : ''" @click="tabLiScroll(item.scroll, idx)"
- v-for="(item, idx) in tabLimenu" :key="idx">
- {{ item.name }}
- </li>
- </div>
- </el-col>
- <el-col :span="20" style="height: 320px; overflow-y: auto">
- <div class="flex f-wrap" id="vehicle">
- <div class="aaa">
- <span>1.行驶证主页</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList1', 'imgList1', 'C01')
- " :file-list="imgList1" 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 }" v-if="imgList1.length > 0">
- <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="aaa">
- <span>2.行驶证副页</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :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 class="aaa">
- <span>3.机动车辆登记证书</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList1', 'imgList12', 'TAR05')
- " :file-list="imgList12" ref="upload2" :class="{ styleB: imgList12.length === 1 }">
- <img v-show="imgList12.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', 'imgList12')">
- <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="aaa">
- <span>4.新车合格证</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList5', 'imgList9', 'XC00')
- " :file-list="imgList9" multiple ref="upload3" :class="{ styleB: imgList9.length === 1 }">
- <img v-show="imgList9.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, 'imageList5', 'imgList9')">
- <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="aaa">
- <span>5.购车发票</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList5', 'imgList10', 'GC00')
- " :file-list="imgList10" multiple ref="upload4" :class="{ styleB: imgList10.length === 1 }">
- <img v-show="imgList10.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, 'imageList5', 'imgList10')">
- <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 class="flex f-wrap" id="owner">
- <div class="aaa">
- <span>1.车主身份证(正面)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :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="aaa">
- <span>2.车主身份证(反面)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :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 class="aaa">
- <span>3.车主营业执照</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag multiple
- :on-change="(file) => drivingupload(file, 'imageList2', 'imgList26', 'Y02')" ref="upload4"
- :file-list="imgList26" :class="{ styleB: imgList26.length === 1 }">
- <img v-show="imgList26.length == 0" src="../../../../static/userfront.png"
- style="width: 100%; height: 100%" :class="{ styleB: imgList26.length === 1 }" />
- <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', 'imgList26')">
- <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 class="flex f-wrap" id="applicant">
- <div class="aaa">
- <span>1.投保人身份证(正面)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :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="aaa">
- <span>2.投保人身份证(反面)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :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 class="aaa">
- <span>3.投保人营业执照</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList3', 'imgList27', 'Y03')
- " :file-list="imgList27" multiple ref="upload6" :class="{ styleB: imgList27.length === 1 }">
- <img v-show="imgList27.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', 'imgList27')">
- <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 class="flex f-wrap">
- <div class="aaa">
- <span id="insured">1.被保人身份证(正面)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :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="aaa">
- <span>2.被保人身份证(反面)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :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 class="aaa">
- <span>3.被保人营业执照</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) => drivingupload(file, 'imageList4', 'imgList28', 'Y04')
- " :file-list="imgList28" multiple ref="upload8" :class="{ styleB: imgList28.length === 1 }">
- <img v-show="imgList28.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', 'imgList28')">
- <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 class="flex f-wrap" id="relationship">
- <div class="aaa">
- <span>1.关系证明</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList5', 'imgList11', 'GX00')
- " :file-list="imgList11" multiple ref="upload3" :class="{ styleB: imgList11.length === 1 }">
- <img v-show="imgList11.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, 'imageList5', 'imgList11')">
- <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 class="flex f-wrap" id="yanchezhao">
- <div class="aaa">
- <span>1.验车照(车架)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList13', 'C0500')
- " :file-list="imgList13" multiple ref="upload3" :class="{ styleB: imgList13.length === 1 }">
- <img v-show="imgList13.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, 'imageList6', 'imgList13')">
- <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="aaa">
- <span>2.验车照(后左)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList14', 'C0501')
- " :file-list="imgList14" multiple ref="upload3" :class="{ styleB: imgList14.length === 1 }">
- <img v-show="imgList14.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, 'imageList6', 'imgList14')">
- <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="aaa">
- <span>3.验车照(后右)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList15', 'C0502')
- " :file-list="imgList15" multiple ref="upload3" :class="{ styleB: imgList15.length === 1 }">
- <img v-show="imgList15.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, 'imageList6', 'imgList15')">
- <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="aaa">
- <span>4.验车照(前右)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList16', 'C0503')
- " :file-list="imgList16" multiple ref="upload3" :class="{ styleB: imgList16.length === 1 }">
- <img v-show="imgList16.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, 'imageList6', 'imgList16')">
- <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="aaa">
- <span>5.验车照(前左)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList17', 'C0504')
- " :file-list="imgList17" multiple ref="upload3" :class="{ styleB: imgList17.length === 1 }">
- <img v-show="imgList17.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, 'imageList6', 'imgList17')">
- <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="aaa">
- <span>6.验车照(正前)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList18', 'C0506')
- " :file-list="imgList18" multiple ref="upload3" :class="{ styleB: imgList18.length === 1 }">
- <img v-show="imgList18.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, 'imageList6', 'imgList18')">
- <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="aaa">
- <span>7.验车照(正后)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList19', 'C0507')
- " :file-list="imgList19" multiple ref="upload3" :class="{ styleB: imgList19.length === 1 }">
- <img v-show="imgList19.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, 'imageList6', 'imgList19')">
- <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="aaa">
- <span>8.验车照(人车合影)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList20', 'C0505')
- " :file-list="imgList20" multiple ref="upload3" :class="{ styleB: imgList20.length === 1 }">
- <img v-show="imgList20.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, 'imageList6', 'imgList20')">
- <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="aaa">
- <span>9.验车照(地标合影)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList21', 'C0508')
- " :file-list="imgList21" multiple ref="upload3" :class="{ styleB: imgList21.length === 1 }">
- <img v-show="imgList21.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, 'imageList6', 'imgList21')">
- <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="aaa">
- <span>10.验车照(工作台)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList22', 'C0509')
- " :file-list="imgList22" multiple ref="upload3" :class="{ styleB: imgList22.length === 1 }">
- <img v-show="imgList22.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, 'imageList6', 'imgList22')">
- <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="aaa">
- <span>11.验车照(天窗)</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList23', 'C0510')
- " :file-list="imgList23" multiple ref="upload3" :class="{ styleB: imgList23.length === 1 }">
- <img v-show="imgList23.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, 'imageList6', 'imgList23')">
- <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 class="flex f-wrap" id="snbaodan">
- <div class="aaa">
- <span>1.上年商业险保单</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList24', 'LAST_INSURANCE_POLICY')
- " :file-list="imgList24" multiple ref="upload3" :class="{ styleB: imgList24.length === 1 }">
- <img v-show="imgList24.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, 'imageList6', 'imgList24')">
- <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 class="flex f-wrap" id="shouquanshu">
- <div class="aaa">
- <span>1.授权书</span>
- <el-upload action="#" list-type="picture-card" :auto-upload="false" :limit="1" drag :on-change="(file) =>
- drivingupload(file, 'imageList6', 'imgList25', 'SQ00')
- " :file-list="imgList25" multiple ref="upload3" :class="{ styleB: imgList25.length === 1 }">
- <img v-show="imgList25.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, 'imageList6', 'imgList25')">
- <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>
- </el-col>
- </el-row>
- <span slot="footer" class="dialog-footer">
- <el-button size="small" @click="imageUploaddialogVisible = false">取 消</el-button>
- <el-button size="small" type="primary" @click="uploadinformation">上传资料</el-button>
- </span>
- </el-dialog>
- <!-- 调整险种弹窗 -->
- <el-dialog title="调整险种" :visible.sync="typeDialogVisible" width="60%" top="5vh" :before-close="handleCloseType">
- <div class="typedialog-style addyiwai typedialog-style1" v-if="productId != '034001' && productId != '034002'">
- <div class="typedialog-title"><i class="el-icon-circle-check"
- style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>交通事故强制责任险:</div>
- <el-table :data="typeJqTable" border style="width: 100%" stripe header-cell-class-name="table-header">
- <el-table-column prop="date" label="保障范围" align="center"></el-table-column>
- <el-table-column prop="date1" label="保额(元)" align="center"></el-table-column>
- <!-- <el-table-column prop="date2" label="总计" align="center"></el-table-column> -->
- </el-table>
- </div>
- <div class="typedialog-style addyiwai typedialog-style2" v-if="productId != '0330'">
- <!-- 商业险 -->
- <div class="typedialog-title"><i class="el-icon-circle-check"
- style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>商业险详情:</div>
- <div class="flex f-c">
- <div class="flex j-s a-c more-title back">
- <div style="width: 550px; padding-left: 100px" class="flex j-s a-c">
- <span>险别</span>
- <span>保额(元)</span>
- </div>
- </div>
- <div class="a-c back" v-for="(insureitem, insureindex) in typeDialogData.kinds" :key="insureindex">
- <el-row style="background: #FFF;" type="flex" align="middle">
- <el-col :span="10" class="more-data-left">
- <div class="zhuxian" v-if="insureitem.grouping == 'main'" style="background: #Y0282A">主险</div>
- <div class="zhuxian" v-if="insureitem.grouping == 'additional'">附加险</div>
- <div class="zhuxian" v-if="insureitem.grouping == 'service'">增值服务</div>
- <span>
- <el-checkbox v-model="insureitem.checked" :disabled="insureitem.Required">
- <!-- <span :class="insureitem.grouping != 'additional' ? 'opacity1' : 'opacity0'">{{ insureitem.kindName }}</span> -->
- <span class="opacity1">{{ insureitem.kindName }}</span>
- <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>
- </el-checkbox>
- </span>
- </el-col>
- <el-col :span="14" class="more-data-right">
- <el-select v-if="insureitem.amtList" filterable v-model="insureitem.amount" placeholder="请选择"
- @change="insureitemChange($event, insureitem)" 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>
- <span v-else>
- <el-input-number size="small" style="width: 280px; margin-right: 10px" v-model="insureitem.amount"
- :min="0"></el-input-number>次
- </span>
- </el-col>
- </el-row>
- </div>
- </div>
- </div>
- <div class="typedialog-style addyiwai typedialog-style3">
- <!-- <div class="typedialog-title"><i class="el-icon-circle-check" style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>驾意险详情:</div> -->
- <div class="typedialog-style">
- <div class="flex a-c" style="margin-bottom: 20px;">
- <div class="typedialog-title addyiwai-title"><i class="el-icon-circle-check"
- style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>驾意险方案配置:</div>
- <div v-if="false" class="addyiwai-title-btn">添加配置</div>
- </div>
- <div v-if="true">
- <div v-for="(listItem, listIndex) in jiayiDialogData.drivingTypeList" :key="listIndex"
- v-show="listIndex == 0">
- <el-checkbox-group v-model="checkList" @change="handleChangeJiayi(listItem, listIndex)">
- <el-checkbox v-for="(item, index) in listItem.children" :key="index" :label="item">{{ item.typeName
- }}</el-checkbox>
- </el-checkbox-group>
- <div v-for="(item, index) in checkList" :key="index" style="margin-bottom: 20px;">
- <div v-if="totalCompanyList[typeDialogIndex].cnName == 'zijin'">
- <el-row style="margin-bottom: 20px;">
- <el-col :span="10">
- {{ item.typeName }}
- <el-select v-if="item.detail" style="width: 300px;" v-model="item.selectList" clearable multiple
- @change="handleChangeSelect(index)" size="small" placeholder="请选择">
- <el-option v-for="(i, ind) in item.detail" :key="ind" :label="i.alias" :value="i.alias">
- </el-option>
- </el-select>
- </el-col>
- </el-row>
- <div v-for="(dataItem, dataIndex) in item.tableData" :key="dataIndex">
- <el-col :span="6">
- 份数
- <el-input v-model="dataItem.quantity" style="width: 120px;" size="small"
- @input="(e) => { changeInput(e, listIndex, index, 'minus', item.tableData.minQuantity) }">
- <template slot="prepend"><i class="el-icon-minus"
- @click="numberChange(listIndex, index, 'minus', dataItem.minQuantity, dataIndex)"></i></template>
- <template slot="append"><i class="el-icon-plus"
- @click="numberChange(listIndex, index, 'plus', dataItem.minQuantity, dataIndex)"></i></template>
- </el-input>
- 份
- </el-col>
- <el-col v-if="item.tableData" :span="4" class="flex a-c">保费:{{ Number(dataItem.sumPremium) *
- dataItem.quantity }}元</el-col>
- </div>
- <el-table v-if="item.tableData && item.tableData.length" :data="item.tableData" border
- style="width: 100%; margin-top: 20px;" stripe header-cell-class-name="table-header">
- <el-table-column prop="name" label="保险责任" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.insDrivingIntentionInsuranceSon[0].name }}</span>
- </template>
- </el-table-column>
- <el-table-column prop="amount" label="保险金额" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.insDrivingIntentionInsuranceSon[0].amount }}</span>
- </template>
- </el-table-column>
- <el-table-column prop="premium" label="保费(元)" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.insDrivingIntentionInsuranceSon[0].premium }}</span>
- </template>
- </el-table-column>
- <el-table-column prop="quantity" label="份数" align="center"></el-table-column>
- <el-table-column prop="sumPremium" label="总保费" align="center"></el-table-column>
- </el-table>
- </div>
- <div v-else>
- <!-- totalCompanyList[typeDialogIndex].cnName == 'guoRen' || totalCompanyList[typeDialogIndex].cnName == 'ansheng' || totalCompanyList[typeDialogIndex].cnName == 'dajia' -->
- <el-row v-if="false">
- <el-col :span="8">
- {{ item.typeName }}
- <el-select v-model="item.select" style="width: 400px;" clearable
- @change="handleChangeSelectGuoren(index)" size="small" placeholder="请选择" v-if="item.detail">
- <el-option v-for="(i, ind) in item.detail" :key="ind" :label="i.alias" :value="i.alias">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="5">
- <el-select v-model="item.select1" clearable @change="handleChangeSelect(index)" size="small"
- placeholder="请选择" v-if="item.tableData1">
- <el-option v-for="(i, ind) in item.tableData1" :key="ind" :label="i.alias" :value="i.alias">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="6" v-if="item.tableData">
- 份数
- <!-- <el-input-number v-model="item.tableData.quantity" :step="1" :min="1" :max="10" @change="numberChange(listIndex, index)" size="small"></el-input-number> -->
- <el-input v-model="item.tableData.quantity" style="width: 120px;" size="small"
- @input="(e) => { changeInput(e, listIndex, index, 'minus', item.tableData.minQuantity) }">
- <template slot="prepend"><i class="el-icon-minus"
- @click="numberChange(listIndex, index, 'minus', item.tableData.minQuantity)"></i></template>
- <template slot="append"><i class="el-icon-plus"
- @click="numberChange(listIndex, index, 'plus', item.tableData.minQuantity)"></i></template>
- </el-input>
- 份
- </el-col>
- <el-col v-if="item.tableData" :span="4">保费:{{ Number(item.tableData.sumPremium) *
- item.tableData.quantity }}元</el-col>
- <!-- <el-col :span="1"><i class="el-icon-delete"></i></el-col> -->
- </el-row>
- <el-row v-else>
- <el-col :span="12">
- {{ item.typeName }}
- <el-select v-model="item.select" style="width: 400px;" clearable
- @change="handleChangeSelect(index)" size="small" placeholder="请选择" v-if="item.detail">
- <el-option v-for="(i, ind) in item.detail" :key="ind" :label="i.alias" :value="i.alias">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="6" v-if="item.tableData">
- 份数
- <!-- <el-input-number v-model="item.tableData.quantity" :step="1" :min="1" :max="10" @change="numberChange(listIndex, index)" label="描述文字" size="small"></el-input-number> -->
- <el-input v-model="item.tableData.quantity" style="width: 120px;" size="small"
- @input="(e) => { changeInput(e, listIndex, index, 'minus', item.tableData.minQuantity) }">
- <template slot="prepend"><i class="el-icon-minus"
- @click="numberChange(listIndex, index, 'minus', item.tableData.minQuantity)"></i></template>
- <template slot="append"><i class="el-icon-plus"
- @click="numberChange(listIndex, index, 'plus', item.tableData.minQuantity)"></i></template>
- </el-input>
- 份
- </el-col>
- <el-col v-if="item.tableData" :span="4" class="flex a-c">保费:{{ Number(item.tableData.sumPremium) *
- item.tableData.quantity }}元</el-col>
- <!-- <el-col :span="1"><i class="el-icon-delete"></i></el-col> -->
- </el-row>
- <el-table v-if="item.tableData" :data="item.tableData.insDrivingIntentionInsuranceSon" border
- style="width: 100%; margin-top: 20px;" stripe header-cell-class-name="table-header">
- <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="amount" label="保险金额" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费(元)" align="center"></el-table-column>
- </el-table>
- </div>
- </div>
- </div>
- </div>
- <div v-else>
- <div v-for="(item, index) in 3" :key="index" style="margin-bottom: 20px;">
- <el-row style="margin-bottom: 20px;">
- <el-col :span="10">
- 驾意选择
- <!-- v-model="value" -->
- <el-select size="small" clearable placeholder="请选择">
- <el-option v-for="item in 3" :key="item.value" :label="22" :value="22">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="9">
- 份数
- <el-input-number label="描述文字" size="small"></el-input-number>
- 份
- </el-col>
- <el-col :span="4">保费:15元</el-col>
- <el-col :span="1"><i class="el-icon-delete"></i></el-col>
- </el-row>
- <el-table :data="item.table" border style="width: 100%" stripe header-cell-class-name="table-header">
- <el-table-column prop="date" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="date1" label="保险金额" align="center"></el-table-column>
- <el-table-column prop="date2" label="保费(元)" align="center"></el-table-column>
- </el-table>
- </div>
- </div>
- </div>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button size="small" @click="handleCloseType">取 消</el-button>
- <el-button size="small" type="primary" @click="subTypeDialog">确 定</el-button>
- </span>
- </el-dialog>
- <!-- 驾意险 -->
- <el-dialog title="驾意险" :visible.sync="addYiwaiDialogVisible" width="60%" top="5vh"
- :before-close="handleCloseAddYiwai" class="addyiwai">
- <div class="typedialog-style">
- <el-card>
- <div class="flex a-c" style="margin-bottom: 20px;">
- <div class="addyiwai-title">驾意险方案配置</div>
- <div v-if="false" class="addyiwai-title-btn">添加配置</div>
- </div>
- <div v-if="true">
- <div v-for="(listItem, listIndex) in jiayiDialogData.drivingTypeList" :key="listIndex">
- <el-checkbox-group v-model="checkList" @change="handleChangeJiayi(listItem, listIndex)">
- <el-checkbox v-for="(item, index) in listItem.children" :key="index" :label="item">{{ item.typeName
- }}</el-checkbox>
- </el-checkbox-group>
- <div v-for="(item, index) in checkList" :key="index" style="margin-bottom: 20px;">
- <div v-if="totalCompanyList[typeDialogIndex].cnName == 'zijin'">
- <el-row style="margin-bottom: 20px;">
- <el-col :span="10">
- {{ item.typeName }}
- <el-select v-if="item.detail" v-model="item.selectList" clearable multiple
- @change="handleChangeSelect(index)" size="small" placeholder="请选择">
- <el-option v-for="(i, ind) in item.detail" :key="ind" :label="i.projectName"
- :value="i.projectName">
- </el-option>
- </el-select>
- </el-col>
- </el-row>
- <el-table v-if="item.tableData" :data="item.tableData" border style="width: 100%; margin-top: 20px;"
- stripe header-cell-class-name="table-header">
- <el-table-column prop="name" label="保险责任" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.insDrivingIntentionInsuranceSon[0].name }}</span>
- </template>
- </el-table-column>
- <el-table-column prop="amount" label="保险金额" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.insDrivingIntentionInsuranceSon[0].amount }}</span>
- </template>
- </el-table-column>
- <el-table-column prop="premium" label="保费(元)" align="center">
- <template slot-scope="scope">
- <span>{{ scope.row.insDrivingIntentionInsuranceSon[0].premium }}</span>
- </template>
- </el-table-column>
- <el-table-column prop="quantity" label="份数" align="center"></el-table-column>
- <el-table-column prop="sumPremium" label="总保费" align="center"></el-table-column>
- </el-table>
- </div>
- <div v-else>
- <!-- totalCompanyList[typeDialogIndex].cnName == 'guoRen' || totalCompanyList[typeDialogIndex].cnName == 'ansheng' -->
- <el-row v-if="false">
- <el-col :span="8">
- {{ item.typeName }}
- <el-select v-model="item.select" clearable @change="handleChangeSelectGuoren(index)" size="small"
- placeholder="请选择" v-if="item.detail">
- <el-option v-for="(i, ind) in item.detail" :key="ind" :label="i.alias" :value="i.alias">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="5">
- <el-select v-model="item.select1" clearable @change="handleChangeSelect(index)" size="small"
- placeholder="请选择" v-if="item.tableData1">
- <el-option v-for="(i, ind) in item.tableData1" :key="ind" :label="i.alias" :value="i.alias">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="6" v-if="item.tableData">
- 份数
- <!-- <el-input-number v-model="item.tableData.quantity" :step="1" :min="1" :max="10" @change="numberChange(listIndex, index)" size="small"></el-input-number> -->
- <el-input v-model="item.tableData.quantity" style="width: 120px;" size="small"
- @input="(e) => { changeInput(e, listIndex, index, 'minus', item.tableData.minQuantity) }">
- <template slot="prepend"><i class="el-icon-minus"
- @click="numberChange(listIndex, index, 'minus', item.tableData.minQuantity)"></i></template>
- <template slot="append"><i class="el-icon-plus"
- @click="numberChange(listIndex, index, 'plus', item.tableData.minQuantity)"></i></template>
- </el-input>
- 份
- </el-col>
- <el-col v-if="item.tableData" :span="4">保费:{{ Number(item.tableData.sumPremium) *
- item.tableData.quantity }}元</el-col>
- <!-- <el-col :span="1"><i class="el-icon-delete"></i></el-col> -->
- </el-row>
- <el-row v-else>
- <el-col :span="10">
- {{ item.typeName }}
- <el-select v-model="item.select" clearable @change="handleChangeSelect(index)" size="small"
- placeholder="请选择" v-if="item.detail">
- <el-option v-for="(i, ind) in item.detail" :key="ind" :label="i.projectName"
- :value="i.projectName">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="9" v-if="item.tableData">
- 份数
- <!-- <el-input-number v-model="item.tableData.quantity" :step="1" :min="1" :max="10" @change="numberChange(listIndex, index)" label="描述文字" size="small"></el-input-number> -->
- <el-input v-model="item.tableData.quantity" style="width: 120px;" size="small"
- @input="(e) => { changeInput(e, listIndex, index, 'minus', item.tableData.minQuantity) }">
- <template slot="prepend"><i class="el-icon-minus"
- @click="numberChange(listIndex, index, 'minus', item.tableData.minQuantity)"></i></template>
- <template slot="append"><i class="el-icon-plus"
- @click="numberChange(listIndex, index, 'plus', item.tableData.minQuantity)"></i></template>
- </el-input>
- 份
- </el-col>
- <el-col v-if="item.tableData" :span="4">保费:{{ Number(item.tableData.sumPremium) *
- item.tableData.quantity }}元</el-col>
- <!-- <el-col :span="1"><i class="el-icon-delete"></i></el-col> -->
- </el-row>
- <el-table v-if="item.tableData" :data="item.tableData.insDrivingIntentionInsuranceSon" border
- style="width: 100%; margin-top: 20px;" stripe header-cell-class-name="table-header">
- <el-table-column prop="name" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="amount" label="保险金额" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费(元)" align="center"></el-table-column>
- </el-table>
- </div>
- </div>
- </div>
- </div>
- <div v-else>
- <div v-for="(item, index) in 3" :key="index" style="margin-bottom: 20px;">
- <el-row style="margin-bottom: 20px;">
- <el-col :span="10">
- 驾意选择
- <!-- v-model="value" -->
- <el-select size="small" clearable placeholder="请选择">
- <el-option v-for="item in 3" :key="item.value" :label="22" :value="22">
- </el-option>
- </el-select>
- </el-col>
- <el-col :span="9">
- 份数
- <el-input-number label="描述文字" size="small"></el-input-number>
- 份
- </el-col>
- <el-col :span="4">保费:15元</el-col>
- <el-col :span="1"><i class="el-icon-delete"></i></el-col>
- </el-row>
- <el-table :data="item.table" border style="width: 100%" stripe header-cell-class-name="table-header">
- <el-table-column prop="date" label="保险责任" align="center"></el-table-column>
- <el-table-column prop="date1" label="保险金额" align="center"></el-table-column>
- <el-table-column prop="date2" label="保费(元)" align="center"></el-table-column>
- </el-table>
- </div>
- </div>
- </el-card>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button size="small" @click="handleCloseAddYiwai">取 消</el-button>
- <el-button size="small" type="primary" @click="handleAddYiWai">确 定</el-button>
- </span>
- </el-dialog>
- <!-- 详情 -->
- <el-dialog :title="detailJiaYiTitle" :visible.sync="showDetailJiaYiVisible" width="60%" top="5vh"
- :before-close="handleCloseShowDetailJiaYi">
- <div class="typedialog-style addyiwai typedialog-style1"
- v-if="productId != '034001' && productId != '034002' && detailJiaYiTitle == '查看详情'">
- <div class="typedialog-title"><i class="el-icon-circle-check"
- style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>交通事故强制责任险:</div>
- <el-table :data="typeJqTable" border style="width: 100%" stripe header-cell-class-name="table-header">
- <el-table-column prop="date" label="保障范围" align="center"></el-table-column>
- <el-table-column prop="date1" label="保额(元)" align="center"></el-table-column>
- </el-table>
- </div>
- <div class="typedialog-style typedialog-style2" v-if="productId != '0330' && detailJiaYiTitle == '查看详情'">
- <div class="typedialog-title"><i class="el-icon-circle-check"
- style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>商业险详情:</div>
- <div class="a-c back">
- <el-row style="background: #F7F7F9;">
- <el-col :span="10" class="more-data-left">险别</el-col>
- <el-col :span="14" class="more-data-right">保额(元)</el-col>
- </el-row>
- <el-row style="background: #FFF;" v-for="(insureitem, insureindex) in typeDialogData.shangyeList"
- :key="insureindex">
- <el-col :span="10" class="more-data-left">
- <div class="zhuxian" v-if="insureitem.grouping == 'main'" style="background: #Y0282A">主险</div>
- <div class="zhuxian" v-if="insureitem.grouping == 'additional'">附加险</div>
- <div class="zhuxian" v-if="insureitem.grouping == 'service'">增值服务</div>
- <span>
- <span class="opacity1">{{ insureitem.kindName }}</span>
- <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="mini" placeholder
- disabled></el-input>
- <span v-show="insureitem.kindCode == 'D4' ||
- insureitem.kindCode == 'MJ4' ||
- insureitem.kindCode == 'SY_FJ_YBW2'
- ">座</span>
- </span>
- </el-col>
- <el-col :span="14" class="more-data-right">
- {{ toWan(insureitem.amount) }}
- </el-col>
- </el-row>
- <div v-show="typeDialogData && typeDialogData.shangyeList && !typeDialogData.shangyeList.length">暂无</div>
- </div>
- </div>
- <div class="typedialog-style typedialog-style3" v-if="showDetailtable && showDetailtable.length">
- <div class="typedialog-title" style="display: flex; justify-content: space-between;">
- <div><i class="el-icon-circle-check" style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>驾意险详情:
- </div>
- <div class="typedialog-title">( 驾驶人意外单份保额 )如下</div>
- </div>
- <el-table v-for="(item, index) in showDetailtable" :key="index" :data="item" border style="width: 100%" stripe
- header-cell-class-name="table-header">
- <el-table-column prop="name" label="保险责任名称" align="center"></el-table-column>
- <el-table-column prop="amount" label="保额(元)" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费(元)" align="center"></el-table-column>
- </el-table>
- <div v-if="showDetailtable && !showDetailtable.length">暂无</div>
- <div class="typedialog-title" v-if="detailJiaYiTitle == '查看详情'">已选份数:</div>
- <div class="jiayi-style" v-if="detailJiaYiTitle == '查看详情'">
- <el-row v-for="(item, index) in typeDialogData.drivingList" :key="index">
- <el-col :span="10">
- <div class="jiayi-style-title">产品名称</div>
- <div class="jiayi-style-line">{{ item.alias || item.projectName }}</div>
- </el-col>
- <!-- <el-col :span="6">
- <div class="jiayi-style-title">座位数</div>
- <div class="jiayi-style-line">{{ }}</div>
- </el-col> -->
- <el-col :span="6">
- <div class="jiayi-style-title">份数</div>
- <div class="jiayi-style-line">{{ item.quantity }}</div>
- </el-col>
- <el-col :span="3">
- <div class="jiayi-style-title">每份</div>
- <div class="jiayi-style-line">{{ item.sumPremium }}</div>
- </el-col>
- <el-col :span="3">
- <div class="jiayi-style-title">合计</div>
- <div class="jiayi-style-line">{{ Number(item.sumPremium) * item.quantity }}</div>
- </el-col>
- </el-row>
- <div v-if="typeDialogData && typeDialogData.drivingList && !typeDialogData.drivingList.length">暂无</div>
- </div>
- </div>
- <span slot="footer" class="dialog-footer">
- <!-- <el-button size="small" @click="handleCloseShowDetailJiaYi">取 消</el-button> -->
- <el-button size="small" type="primary" @click="handleCloseShowDetailJiaYi">确 定</el-button>
- </span>
- </el-dialog>
- <!-- 驾意险详情 -->
- <el-dialog :title="detailJiaYiTitle" :visible.sync="showDetailJiaYiVisible1" width="60%" top="5vh" v-dialogDrag
- :before-close="handleCloseShowDetailJiaYi">
- <div class="typedialog-style typedialog-style3" v-if="showDetailtable && showDetailtable.length">
- <div class="typedialog-title" style="display: flex; justify-content: space-between;">
- <div><i class="el-icon-circle-check" style="color: #D42426; font-size: 20px; margin-right: 10px;"></i>驾意险详情:
- </div>
- <div class="typedialog-title">( 驾驶人意外单份保额 )如下</div>
- </div>
- <el-table v-for="(item, index) in showDetailtable" :key="index" :data="item" border style="width: 100%" stripe
- header-cell-class-name="table-header">
- <el-table-column prop="name" label="保险责任名称" align="center"></el-table-column>
- <el-table-column prop="amount" label="保额(元)" align="center"></el-table-column>
- <el-table-column prop="premium" label="保费(元)" align="center"></el-table-column>
- </el-table>
- <div v-if="showDetailtable && !showDetailtable.length">暂无</div>
- </div>
- <span slot="footer" class="dialog-footer">
- <!-- <el-button size="small" @click="handleCloseShowDetailJiaYi">取 消</el-button> -->
- <el-button size="small" type="primary" @click="handleCloseShowDetailJiaYi">确 定</el-button>
- </span>
- </el-dialog>
- <!-- 选择特约 showTeYueVisible -->
- <el-dialog title="选择特约" :visible.sync="showTeYueVisible" width="40%" top="5vh" :before-close="handleCloseTeYue"
- class="teYuedialog-style">
- <div>
- <!-- <el-input placeholder="请输入内容" style="margin-bottom: 20px;">
- <el-button type="primary" slot="append" icon="el-icon-search"></el-button>
- </el-input> -->
- <el-table :data="teYueTable" style="width: 100%" stripe header-cell-class-name="table-header">
- <el-table-column type="selection" width="55"></el-table-column>
- <el-table-column type="expand">
- <!-- <template slot-scope="props">
- <div class="table-title">特约内容</div>
- <div class="table-title">保险公司温馨提示:根据车船税征收管理规定,次年生效交强险业务如本年提前续保,请您仍须在下一年度年底前完成跨年提前续保并缴纳车船税,否则会产生车船税滞纳金。</div>
- </template> -->
- </el-table-column>
- <el-table-column prop="date" label="特约名称" align="center">
- </el-table-column>
- <el-table-column prop="date1" label="特约险种" align="center"></el-table-column>
- <el-table-column prop="date2" label="特约代码" align="center"></el-table-column>
- </el-table>
- </div>
- <span slot="footer" class="dialog-footer">
- <span>已选择了 <b style="color: #F96646;"> 1</b> 条特约</span>
- <span style="flex: 1;"></span>
- <el-button size="small" @click="showTeYueVisible = false">取 消</el-button>
- <el-button size="small" type="primary" @click="showTeYueVisible = false">确 定</el-button>
- </span>
- </el-dialog>
- <floatingBar />
- <!-- 生成验车二维码 -->
- <el-dialog :visible.sync="validateCarCodeShow" width="30%" title="验车二维码">
- <div class="QRCode" ref="myQrcode"></div>
- </el-dialog>
- </div>
- </template>
- <script>
- import QrCode from "qrcodejs2";
- let _self;
- import Cookies from "js-cookie";
- import CommonUtil from "@/utils/comutil.js";
- import floatingBar from "@/components/customerService/floatingBar.vue";
- import {
- getAgeByIdCard,
- searchkey,
- addressCode,
- getGenderByIdCard
- } from "@/utils/validate.js";
- import citydata from "@/assets/js/citydata.js";
- import yongchengData from "../../../assets/js/yongchengData";
- import { regionData, codeToText } from "element-china-area-data";
- import { base64ToPath } from "@/common/image-tools-base64.js";
- import quotationDialog from "@/views/Core/components/quotationDialog.vue";
- import quotationDialogPro from "@/views/Core/components/quotationDialogPro.vue";
- import detailsDialog from "@/views/Core/components/detailsDialog.vue";
- import imageDialog from "@/views/Core/components/imageDialog.vue";
- import { mapState } from "vuex";
- import Ktletter1Popover from "./components/LetterPopover.vue";
- import dayjs from "dayjs";
- 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();
- }
- };
- var carPhoneValid = (rule, value, callback) => {
- const plateNumber = /^([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF])|([DF]([A-HJ-NP-Z0-9])[0-9]{4})))|([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1})$/;
- if (!value) {
- callback(new Error("请输入车牌号"));
- } else if (plateNumber.test(value)) {
- callback();
- } else {
- callback(new Error("请输入正确的车牌号"));
- }
- };
- var validateRight = (rule, value, callback) => {
- if (!value) {
- callback(new Error("请选择能源种类"));
- } else if (this.carInfo.licenseNo.length === 8 && value === "0") {
- callback(new Error("能源类型错误,请重新选择!"));
- } else {
- callback();
- }
- };
- return {
- validateCarCodeShow: false,
- vehicleInspectionUrl: "",
- colSpan: {
- xs: 24, // 超小屏幕
- sm: 12, // 小屏幕
- md: 12, // 中屏幕
- lg: 6, // 大屏幕
- xl: 6 // 超大屏幕
- },
- colgutter: 80,
- productList: [], // 产品id列表
- productId: "", // 产品id
- // 选择特约
- teYueTable: [{}, {}],
- showTeYueVisible: false,
- // 驾意险详情
- jiayiDialogData: {},
- showDetailJiaYiVisible: false,
- showDetailJiaYiVisible1: false,
- showDetailtable: [],
- // 添加驾意险
- checkList: [],
- addYiwaiDialogVisible: false,
- typeJqTable: [
- { date: "死亡伤残赔偿", date1: 180000 },
- { date: "医疗费用赔偿", date1: 18000 },
- { date: "财产损失赔偿", date1: 2000 }
- ], // 调整险种交强险表格
- typeDialogVisible: false, // 调整险种弹窗
- typeDialogData: [], // 调整险种弹窗商业险
- typeDialogIndex: 0, // 当前 调整险种弹窗 index
- inquiryNowList: [], // 现询列表
- isInquiryNowDisable: false,
- taikangtemplateSelection: [], // 泰康
- taikangInsuranceDataTable: [],
- taikangaccidentDataList: [],
- accidentPremiumTk: "",
- accidentPremiumPA: "",
- accidentFormTk: {
- quantity: "1",
- sumPremium: 0
- },
- pinganDataDetail: [],
- pinganDataDetailVisible: false,
- accidentFormPA: [
- {
- quantity: "1",
- premium: 0,
- pingantemplateSelection: "",
- pinganInsuranceDataTable: [],
- pinganInsurancetype: ""
- },
- {
- quantity: "1",
- premium: 0,
- pingantemplateSelection: "",
- pinganInsuranceDataTable: [],
- pinganInsurancetype: ""
- },
- {
- quantity: "1",
- premium: 0,
- pingantemplateSelection: "",
- pinganInsuranceDataTable: [],
- pinganInsurancetype: ""
- }
- ],
- taikangaccidentalDrivingVo: {},
- pinganaccidentalDrivingVo: {
- 0: {},
- 1: {},
- 2: []
- },
- nowCostsId: undefined, // 现询
- policyNumberForm: {
- jqpolicyno: "",
- sypolicyno: "",
- jypolicyno: "",
- jqpremium: "",
- sypremium: "",
- jypremium: "",
- taxamount: "",
- commissionFeevalue: "",
- otherFeevalue: "",
- jqSuperviseCostsProportion: "",
- sySuperviseCostsProportion: "",
- noSuperviseCostsProportion: "",
- jqOtherCostsProportion: "",
- syOtherCostsProportion: "",
- noOtherCostsProportion: "",
- jqReceivableProportion: "",
- syReceivableProportion: "",
- noReceivableProportion: "",
- jqPolicyList: [],
- syPolicyList: [],
- jqSignList: [],
- noPolicyList: [],
- noCostsProportion: "",
- jqCostsProportion: "",
- syCostsProportion: ""
- },
- watermarkedImage: "",
- redictInfoMsg: [],
- redictInfodialogVisible: false,
- qrcodeWidth: "180",
- qrcodeHeight: "180",
- activeName: "1",
- isTaxSourceModel: "",
- tabLiIndex: 0,
- tabLimenu: [
- {
- name: "车辆信息",
- scroll: "vehicle"
- },
- {
- name: "车主信息",
- scroll: "owner"
- },
- {
- name: "投保人信息",
- scroll: "applicant"
- },
- {
- name: "被保人信息",
- scroll: "insured"
- },
- {
- name: "关系证明",
- scroll: "relationship"
- },
- {
- name: "验车照",
- scroll: "yanchezhao"
- },
- {
- name: "上年商业险保单",
- scroll: "snbaodan"
- },
- {
- name: "授权书",
- scroll: "shouquanshu"
- }
- ],
- packageValue: "",
- packageOptions: [],
- zhongmeitemplateSelection: "", //中煤驾意险产品选中值
- zhongmeiInsuranceData: [], //中煤驾意险产品列表数据
- zhongmeiInsuranceDataTable: [], //中煤驾意险产品明细方案数据
- zhongmeiaccidentalDrivingVo: {}, //中煤驾意险最终选中字段
- pinganInsuranceData: [], //平安驾意险产品列表数据
- currentCell: null,
- feeDetailInfo: [], //费用明细信息
- immediatelyValue: false,
- isRetractZJ: false,
- isRetractHB: false,
- isRetractZM: false,
- isRetractASTP: false,
- isRetractZA: false,
- isRetractYC: false,
- isRetractRS: false,
- anshengInsurancetype: "",
- iscCrownerShow: false,
- isApplicantShow: false,
- isInsuredShow: false,
- formInline: {},
- anshengtemplateSelection: "", //安盛
- anshengInsuranceData: [], //安盛驾意险
- anshengInsuranceDataTable: [], //安盛驾意险
- anshengaccidentalDrivingVo: {}, //安盛驾意险
- hengbangtemplateSelection: "", //恒邦
- hengbangInsuranceData: [], //恒邦驾意险
- hengbangInsuranceDataTable: [],
- hengbangaccidentalDrivingVo: {}, //太平洋驾意险
- taipingyangtemplateSelection: "", //太平洋
- taipingyangInsuranceData: [], //太平洋驾意险
- taipingyangInsuranceDataTable: [],
- taipingyangaccidentalDrivingVo: {}, //太平洋驾意险
- insuranceHN: "", //华农
- huanongInsuranceData: [], //华农驾意险
- huanongInsuranceDataTable: [],
- huanongaccidentalDrivingVo: {}, //华农驾意险
- renshouaccidentalDrivingVo: {}, //人寿意外险
- renshouInsuranceData: [], //-人寿意外险list
- ziJinInsuranceData: [], //-紫金意外险list
- zhonganInsuranceData: [], //众安驾意险
- zhonganaccidentalDrivingVo: {}, //众安驾意险
- zijinInsuranceDataTable: [],
- zijintemplateSelection: "",
- accidentalDrivingVo: [], //-紫金意外险传参
- zijinengageListData: [], //紫金特约
- zijinengageList: [], //紫金特约
- // ------------紫金意外险
- renshoutemplateSelection: "", //人寿
- renshouInsuranceDataTable: [],
- zhongantemplateSelection: "", //众安
- zhonganInsuranceDataTable: [],
- taipingtemplateSelection: "", //太平
- taipingInsuranceData: [], //太平驾意险
- TPDrivingChangeInsuranceData: [],
- taipingaccidentalDrivingVo: {}, //太平驾意险
- licenseplate: true,
- calculateLoading: false, //保费计算按钮 节流
- preserveQuoteLoading: false, //保存按钮
- emporaryLoading: false,
- accidentForm: {
- quantity: "1",
- sumPremium: 0
- }, //永诚意外险内容
- accidentFormHN: {
- allQuantity: "1",
- quantity: "1"
- }, //华农意外险内容
- yongchengaccidentDataList: [], //永诚意外险
- yongchengtemplateSelection: "",
- guoRenaccidentDataList: [], //国任意外险
- guoRenInsuranceDataTable: [],
- guoRenaccidentDataListChild: [],
- guoRenaccidentalDrivingVo: {}, //国任驾意险
- dajiatemplateSelection: "",
- dajiaaccidentDataListChild: [],
- dajiaaccidentForm: {},
- dajiaInsuranceData: [], //大家意外险
- dajiaInsuranceDataTable: [],
- dajiaaccidentalDrivingVo: {},
- yongchengInsuranceDataTable: [],
- guoRenaccidentLoading: false,
- contributingLoading: false,
- guoRenaccidentPremium: "",
- guoRenaccidentForm: {
- quantity: "1",
- sumPremium: 0
- }, //国任意外险内容
- accidentFormZM: {
- quantity: "1",
- sumPremium: 0
- }, //中煤意外险内容
- boHaiaccidentDataList: [], //渤海意外险
- boHaigtemplateSelection: "",
- boHaiaccidentForm: {
- copies: "1",
- policyNum: 0
- },
- bohaiInsuranceDataTable: [],
- accidentPremium: "",
- accidentPremiumZM: "",
- contributingState: false, //是否为国任特约
- 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, //恒邦驾意险
- taipingyangchecked: false, //太平洋驾意险
- yongchengchecked: false, //永诚驾意险
- yonganDrivinglist: [],
- renbaoDrivinglist: [],
- zhongmeiDrivinglist: [],
- hengbangDrivinglist: [],
- taipingyangDrivinglist: [],
- yongchengDrivinglist: [],
- tbczcarShow: true, //投保人同车主
- bbczcarShow: false, //被保人同车主
- bbtbcarShow: true, //被保人同投保人
- imageUploadShow: true, //上传影像显示
- ProViewImg: "", //预览图片
- carfrontImg: "", //行驶证正面
- carbackImg: "", //行驶证背面
- userfrontImg: "", //身份证正面
- userbackImg: "", //身份证背面
- businessImg: "",
- CarFrontFile: "", //车正面文件流
- CarBackFile: "", //车背面文件流
- // C02File: "",
- // D02File: "",
- // C03File: "",
- // D03File: "",
- // C04File: "",
- // D04File: "",
- userIndex: 1, //区分三种人员
- TabName: "car", //默认选项卡
- value1: "",
- chexingdialogVisible: false, //车型选择 显示/隐藏
- sbdmdialogVisible: false, //车型车辆识别代码选择 显示/隐藏
- codedialogVisible: false, //二维码 显示/隐藏
- codedialogVisiblePro: false,
- uploadcardialogVisible: false, //行驶证识别 显示/隐藏
- uploaduserdialogVisible: false, //身份证识别 显示/隐藏
- imageUploaddialogVisible: false, //影像上传 显示/隐藏
- policyUploaddialogVisible: false, //保单上传
- underwritingdialogVisible: false, //核保信息 显示/隐藏
- renewalCodedialogVisible: false, //转保确认码输入
- hbsubmitdialogVisible: false, //核保弹框
- signaturedialogVisible: false, //生成签章
- signaturecode: null,
- Carinsurance: {
- jqinsurance: "1", //交强险
- syinsurance: "1" //商业险
- },
- jqchecked: true,
- sychecked: false,
- jqstartDate: "", //交强时间
- jqendDate: "", //交强时间
- systartDate: "", //商业时间
- syendDate: "", //商业时间
- loading: false, //加载事件
- reslist: [], //车型列表
- userId: "", //出单工号
- carInfo: {
- importFlag:"",//特种车类
- 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", //车辆种类
- energyType: "0", //能源类型
- enginedesc: "", //排量
- registerDate: "", //注册日期
- issueDate: "", //发证日期
- transferFlag: 0, //过户标志
- transferFlagBi: false, //商业险是否过户
- transferDate: "", //过户日期
- loanStatus: 0, //贷款标志
- firstBeneMan: "", //第一受益人
- noLicenseFlag: false, //是否新车
- cartype: "", //客车A0 货车H0
- carnature: "02", //使用性质
- vehicleUse: "05",
- property: "1" //所属性质 1个人 2企业 3机关
- },
- carform: {
- carOwner: "", //车主
- licenseNo: "", //车牌号
- modelcname: "", //车辆品牌型号
- frameNo: "", //车架号
- engineNo: "", //发动机号
- registerDate: "", //注册日期
- issueDate: "", //发证日期
- grossMass: "", //总质量
- unladenMass: "", //整备质量
- limitLoad: "", //核定载质量
- approvedPassengersCapacity: "" //核定载客数
- },
- ownerInfoform: {
- name: "",
- identifyType: "",
- identifyNumber: "",
- age: "", //年龄
- gender: "", //性别
- addr: "",
- email: "",
- mobile: "",
- identifyValidDate: "", //有效期起期
- identifyValidEndDate: "", //有效期止期
- organizationCode: ""
- // province: "",//省
- // city: "",//市
- // county: "",//县
- },
- riskList: [], //险种大类信息
- kindList: [], //商业险险别
- ownerInfo: {
- //车主
- name: "", //姓名
- identifyType: "01", //身份证类型
- identifyNumber: "", //身份证号
- age: "", //年龄
- gender: "", //性别
- addr: "", //地址
- email: "", //邮箱
- mobile: "", //电话
- organizationCode: "",
- identifyValidDate: "", //有效期起期
- identifyValidEndDate: "", //有效期止期
- // revenueCode: "", //税务号
- leaderIdentifyNumber: "", //联系人证件号码
- leaderOtherEffectiveDate: "", //联系人有效期止期
- property: "1",
- // province: "",//省
- // city: "",//市
- // county: "",//县
- provinceData: [] //省市区
- },
- policyHolderInfo: {
- //投保人
- name: "", //姓名
- identifyType: "01", //身份证类型
- identifyNumber: "", //身份证号
- age: "", //年龄
- gender: "", //性别
- addr: "", //地址
- email: "", //邮箱
- mobile: "", //电话
- property: "1",
- identifyValidDate: "", //有效期起期
- identifyValidEndDate: "", //有效期止期
- // revenueCode: "", //税务号
- leaderIdentifyNumber: "", //联系人证件号码
- leaderOtherEffectiveDate: "", //联系人有效期止期
- organizationCode: "",
- // province: "",//省
- // city: "",//市
- // county: "",//县
- provinceData: [] //省市区
- },
- insuredPersonInfo: {
- //被保人
- name: "", //姓名
- identifyType: "01", //身份证类型
- identifyNumber: "", //身份证号
- age: "", //年龄
- gender: "", //性别
- addr: "", //地址
- email: "", //邮箱
- mobile: "", //电话
- property: "1",
- identifyValidDate: "", //有效期起期
- identifyValidEndDate: "", //有效期止期
- // revenueCode: "", //税务号
- leaderIdentifyNumber: "", //联系人证件号码
- leaderOtherEffectiveDate: "", //联系人有效期止期
- provinceData: [] //省市区
- // province: "",//省
- // city: "",//市
- // county: "",//县
- },
- //车船税form
- vehicleAndVesselTaxForm: {
- taxRelifFlag: "1", //类型
- identifyNumber: "", //纳税人识别号
- taxpayerIdentifier: "01", //纳税人证件类型
- taxpayerName: "", //纳税人名称
- extendChar2: "", //减免税凭证号
- paidFreeCertificate: "", //完税凭证号
- relifReason: "", //减免税原因
- taxComCode: "", //税务机关代码
- taxComName: "", ///税务机关名称
- taxDocumentDate: "", //完税日期
- taxPaidAreaCode: "", //完税凭证地区代码
- taxRelief: "" //减税比例
- },
- //车辆用途列表
- vehicleList: [],
- //能源种类列表
- rules: {
- extendChar2: [
- { required: true, message: "请输入减免税凭证号", trigger: "blur" }
- ],
- paidFreeCertificate: [
- { required: true, message: "请输入完税凭证号", trigger: "blur" }
- ],
- relifReason: [
- { required: true, message: "请输入减免税原因", trigger: "blur" }
- ],
- taxComCode: [
- { required: true, message: "请输入税务机关代码", trigger: "blur" }
- ],
- taxComName: [
- { required: true, message: "请输入税务机关名称", trigger: "blur" }
- ],
- taxDocumentDate: [
- { required: true, message: "请输入完税日期", trigger: "blur" }
- ],
- taxPaidAreaCode: [
- { required: true, message: "请选择完税地区", trigger: "blur" }
- ],
- taxRelief: [
- { required: true, message: "请输入减税比例", trigger: "blur" }
- ],
- taxpayerName: [
- { required: true, message: "请输入纳税人名称", trigger: "blur" }
- ],
- taxpayerIdentifier: [
- { required: true, message: "请选择证件类型", trigger: "blur" }
- ],
- taxRelifFlag: [
- { required: true, message: "请选择纳税类型", trigger: "blur" }
- ],
- energyType: [
- { required: true, validator: validateRight, trigger: "blur" }
- ],
- cimodelclass: [
- { required: true, message: "请选择车辆种类", trigger: "blur" }
- ],
- carnature: [
- { required: true, message: "请选择使用性质", trigger: "blur" }
- ],
- cartype: [
- { required: true, message: "请选择车辆类型", trigger: "blur" }
- ],
- vehicleUse: [
- { required: true, message: "请选择车辆用途", trigger: "blur" }
- ],
- brandName: [
- { required: true, message: "请填写品牌型号", trigger: "blur" }
- ],
- licenseNo: [
- { max: 8, message: "最多八个字符", trigger: "blur" },
- { required: true, validator: carPhoneValid, 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" }
- ],
- seatCount: [
- { required: true, message: "请输入座位数", trigger: "blur" }
- ],
- completeKerbMass: [
- { required: true, message: "请输入整备质量", trigger: "blur" }
- ],
- name: [{ required: true, message: "请填写姓名", trigger: "blur" }],
- taxamount: [
- { required: true, message: "请填写车船税", trigger: "blur" }
- ],
- signDate: [
- { 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"
- }
- ],
- property: [
- { required: true, 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"
- },
- {
- amount: "0",
- amountDesc: "不投保",
- coveragePremium: 0,
- amtList: [
- {
- label: "不投保",
- value: "0"
- },
- {
- label: "2次",
- value: "2"
- },
- {
- label: "7次",
- value: "7"
- },
- {
- label: "12次",
- value: "12"
- },
- {
- label: "17次",
- value: "17"
- },
- {
- label: "22次",
- value: "22"
- }
- ],
- desc: "道路救援服务特约条款",
- isMainRisk: false,
- kindCode: "TY1",
- kindName: "道路救援服务特约条款"
- },
- {
- amount: "0",
- amountDesc: "不投保",
- coveragePremium: 0,
- desc: "车辆安全检测特约条款",
- isMainRisk: false,
- kindCode: "TY2",
- kindName: "车辆安全检测特约条款"
- },
- {
- amount: "0",
- amountDesc: "不投保",
- coveragePremium: 0,
- desc: "代为驾驶服务特约条款",
- isMainRisk: false,
- kindCode: "TY3",
- kindName: "代为驾驶服务特约条款"
- },
- {
- amount: "0",
- amountDesc: "不投保",
- coveragePremium: 0,
- desc: "代为送检服务特约条款",
- isMainRisk: false,
- kindCode: "TY4",
- kindName: "代为送检服务特约条款"
- }
- ],
- totalCompanyList: [], //报价保险公司
- continuousCompanyList: [], //续保保险公司
- quoteno: "", //报价号
- orderno: "", //订单号
- queryOrders: {
- extendInfo: {},
- carinfo: {},
- ownerinfo: {},
- applyinfo: {},
- insureinfo: {}
- }, //核保详情
- inscompany: "", //保险公司名称
- licenseNo: "", //车牌号
- applyName: "", //车主名字
- orderstatus: "", //订单状态
- sumpremium: "", //保费合计
- jqpremium: "", //交强
- sypremium: "", //商业
- jypremium: "", //驾意险
- taxamount: "", //车船税
- jqstartdate: "", //交强时间
- systartdate: "", //商业时间
- mobile: "", //投保人手机号
- //影像回显列表
- // 是否禁用上传
- 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: "",
- historyRadio: "888",
- sumseatCount: "", // 投保险种座位数
- deptName: "",
- isBottom: true,
- logoImg: "", //报价单保险公司logo图
- vehicleTypeoptions: [], //车辆种类
- trafficManagementVehicleTypeoptions: [], //车辆类型
- energyTypeoptions: [], //能源种类
- taxRelifFlagoptions: [], //车船税类型
- taxpayerIdentifieroptions: [], //纳税人证件类型
- propertyoptions: [
- {
- value: "1",
- label: "个人"
- },
- {
- value: "2",
- label: "企业"
- }
- ],
- relifReasonoptions: [], //减免税原因代码
- relifReasonoptions: [], //减免税原因代码
- provinceSelect: [],
- natureOfVehicleUseoptions: [],
- businessVehicleUseoptions: [],
- outOfBusinessVehicleUseoptions: [],
- insOrderStatusoptions: [],
- lastCompanyId: "",
- apiInterfaceName: "generateOrder",
- isLetter3Arr: [],
- isLetter3agreementId: "",
- editorInfo: {},
- resultMessageImg: "",
- tabLiIndex: 0,
- tabLimenu: [
- {
- name: "车辆信息",
- scroll: "vehicle"
- },
- {
- name: "车主信息",
- scroll: "owner"
- },
- {
- name: "投保人信息",
- scroll: "applicant"
- },
- {
- name: "被保人信息",
- scroll: "insured"
- },
- {
- name: "关系证明",
- scroll: "relationship"
- },
- {
- name: "验车照",
- scroll: "yanchezhao"
- },
- {
- name: "上年商业险保单",
- scroll: "snbaodan"
- },
- {
- name: "授权书",
- scroll: "shouquanshu"
- }
- ],
- ProViewImg: "", //预览图片
- carfrontImg: "", //行驶证正面
- carbackImg: "", //行驶证背面
- userfrontImg: "", //身份证正面
- userbackImg: "", //身份证背面
- businessImg: "",
- CarFrontFile: "", //车正面文件流
- CarBackFile: "", //车背面文件流
- C02File: "",
- D02File: "",
- C03File: "",
- D03File: "",
- C04File: "",
- D04File: "",
- Y02File: "",
- Y03File: "",
- Y04File: "",
- //影像回显列表
- imgList1: [],
- imgList2: [],
- imgList3: [],
- imgList4: [],
- imgList5: [],
- imgList6: [],
- imgList7: [],
- imgList8: [],
- imgList9: [],
- imgList10: [],
- imgList11: [],
- imgList12: [],
- imgList13: [],
- imgList14: [],
- imgList15: [],
- imgList16: [],
- imgList17: [],
- imgList18: [],
- imgList19: [],
- imgList20: [],
- imgList21: [],
- imgList22: [],
- imgList23: [],
- imgList24: [],
- imgList25: [],
- imgList26: [],
- imgList27: [],
- imgList28: [],
- //影像上传列表
- imageList1: [],
- imageList2: [],
- imageList3: [],
- imageList4: [],
- imageList5: [],
- imageList6: [],
- showLoading: false,
- detailJiaYiTitle: "查看详情",
- oldData: {}, // 旧获取公司参数
- myQrCode: null,
- businessform: {
- name: "", //姓名
- identifyType: "02", //身份证类型
- legalRepresentative: "", //法人
- identifyNumber: "", //社会信用代码
- addr: "", //地址
- registeredCapital: "", //注册资本
- businessScope: "" //经营范围
- },
- areaOption: yongchengData.data,
- selectedOptions1: [],
- selectedOptions2: [],
- selectedOptions3: []
- };
- },
- 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.enginedesc": {
- handler(val) {
- if (val) {
- this.carInfo.enginedesc = val.replace(/[A-Za-z]/g, "");
- }
- },
- deep: true
- },
- "ownerInfo.mobile": {
- handler(val) {
- if (val) {
- this.ownerInfo.mobile = val.replace(/\s/g, "");
- }
- },
- deep: true
- },
- "policyHolderInfo.mobile": {
- handler(val) {
- if (val) {
- this.policyHolderInfo.mobile = val.replace(/\s/g, "");
- }
- },
- deep: true
- },
- "insuredPersonInfo.mobile": {
- handler(val) {
- if (val) {
- this.insuredPersonInfo.mobile = val.replace(/\s/g, "");
- }
- },
- deep: true
- },
- "carInfo.engineNo": {
- handler(val) {
- if (val) {
- this.carInfo.engineNo = val.replace(/[^\w-]/gi, "").toUpperCase();
- }
- },
- deep: true
- },
- "carInfo.seatCount": {
- handler(val) {
- if (val) {
- this.sumseatCount = val - 1;
- }
- },
- deep: true
- },
- "policyHolderInfo.identifyNumber": {
- handler(val) {
- if (val) {
- this.vehicleAndVesselTaxForm.identifyNumber = val;
- }
- },
- deep: true
- },
- "policyHolderInfo.organizationCode": {
- handler(val) {
- if (val) {
- this.vehicleAndVesselTaxForm.organizationCode = val;
- }
- },
- deep: true
- },
- "policyHolderInfo.name": {
- handler(val) {
- if (val) {
- this.vehicleAndVesselTaxForm.taxpayerName = val;
- }
- },
- deep: true
- },
- ownerInfo: {
- handler(val) {
- if (this.tbczcarShow) {
- this.policyHolderInfo = { ...val };
- }
- if (this.bbczcarShow) {
- this.insuredPersonInfo = { ...val };
- }
- },
- deep: true
- },
- policyHolderInfo: {
- handler(val) {
- if (this.bbtbcarShow) {
- this.insuredPersonInfo = { ...val };
- }
- },
- deep: true
- }
- },
- props: {
- isdisabled: {
- type: Boolean,
- default: true
- },
- isLetter: {
- type: String,
- default: "1"
- }
- },
- components: {
- detailsDialog,
- quotationDialog,
- quotationDialogPro,
- imageDialog,
- Ktletter1Popover,
- floatingBar,
- "el-image-viewer": () =>
- import("element-ui/packages/image/src/image-viewer")
- },
- created() {
- if (this.isLetter == "2") {
- this.apiInterfaceName = "ordergenerateOrder";
- }
- if (this.isLetter == "1") {
- this.$api.user.sysMenuRecordAdd(2, 1).then(res => { });
- }
- // this.commpanyList(); //获取保险公司
- this.getDicType("taxRelifFlag"); //车船税类型
- this.getDicType("taxpayerIdentifier"); //纳税人证件类型
- this.getDicType("relifReason"); //减免税原因代码
- this.getDicType("vehicleType"); //车辆种类
- this.getDicType("trafficManagementVehicleType"); //车辆类型
- this.getDicType("energyType"); //能源种类
- this.getDicType("natureOfVehicleUse"); //车辆使用性质
- this.getDicType("businessVehicleUse"); //(车辆用途)营业
- this.getDicType("outOfBusinessVehicleUse"); //(车辆用途)非营业
- this.getDicType("insOrderStatus"); //状态
- this.$api.letter.queryCompany().then(res => {
- this.continuousCompanyList = res.data;
- });
- this.$api.letter.packageQuery().then(res => {
- this.packageOptions = res.data;
- });
- localStorage.setItem("carInfo", JSON.stringify(this.carInfo));
- localStorage.setItem("insureList", JSON.stringify(this.insureList));
- //--归属信息获取--
- if (this.isLetter == 1 || this.isLetter == 2) {
- 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.userId = res.data.id;
- }
- });
- }
- }
- //--订单编辑回显--
- // this.paramsEdit = this.$route.query.data; //接收参数
- // this.obtainProtocol(this.$route.query.data);
- this.getProductId(); // 获取险别
- // this.editingWay(this.$route.query.data)
- if (this.$route.query.data) {
- this.editingWay(this.$route.query.data);
- }
- },
- mounted() {
- this.getCompanyList(this.$route.query.data);
- this.onScroll();
- if (this.$route.query.data) {
- if (this.isDateBeforeToday(this.$route.query.data.jqstartdate)) {
- this.jqstartDate = this.transformTime1();
- this.jqendDate = this.oneYearPast1(this.jqstartDate);
- } else {
- this.jqstartDate = this.$route.query.data.jqstartdate;
- this.jqendDate = this.$route.query.data.jqenddate;
- }
- if (this.$route.query.data.jqstartdate.split(" ")[1] == "00:00:00") {
- this.immediatelyValue = false;
- } else {
- this.immediatelyValue = true;
- }
- }
- window.addEventListener("scroll", this.onScroll);
- },
- destroyed() {
- window.removeEventListener("scroll", this.onScroll);
- },
- beforeCreate() {
- _self = this;
- },
- computed: {
- ...mapState({
- collapse: state => state.app.collapse
- }),
- issueDateOptions() {
- return {
- disabledDate: this.disabledDate
- };
- }
- },
- filters: {
- cap(ele) {
- return _self.insOrderStatusoptions.find(item => {
- return item.dictValue === ele;
- }).dictTag;
- }
- },
- methods: {
- //补录订单
- supplementOrder(id) {
- let params = {
- companyId: id,
- };
- this.$api.letter.getByCompanyId(params).then((res) => {
- if (res.code == "200") {
- this.$router.push({
- path: "/task/external/externalOrders",
- query: { data: res.data },
- });
- }
- })
- },
- quotechangeDate(value){
- return dayjs(value).format("YYYY-MM-DD HH:mm:ss");
- },
- changeDate(value) {
- return dayjs(value).format("YYYY-MM-DD");
- },
- vehicleUseChange(value) {
- if ((value = "05")) {
- this.carInfo.property = "1";
- this.ownerInfo.property = "1";
- this.ownerInfo.identifyType = "01";
- }
- },
- propertyDisable(item) {
- if (this.carInfo.vehicleUse == "05" && item.label == "企业") {
- return true;
- } else {
- return false;
- }
- },
- deleteJiaYi(reslistindex, drivingIndex) {
- this.totalCompanyList[reslistindex].programme.drivingList.splice(
- drivingIndex,
- 1
- );
- this.$forceUpdate();
- },
- toWan(num, type) {
- if (type == "fw") {
- return num + "次";
- }
- if (num > 10000) {
- if (num % 10000 == 0) {
- return num / 10000 + "万";
- } else {
- return (num / 10000).toFixed(4) + "万";
- }
- } else if (num == 1) {
- return "投保";
- } else {
- return num;
- }
- },
- // 所属性质字段
- getCompanyListProperty(data) {
- if (data == "1") {
- this.ownerInfo.property = "1";
- this.policyHolderInfo.property = "1";
- this.insuredPersonInfo.property = "1";
- this.ownerInfo.identifyType = "01";
- this.policyHolderInfo.identifyType = "01";
- this.insuredPersonInfo.identifyType = "01";
- } else {
- this.ownerInfo.property = "0";
- this.policyHolderInfo.property = "0";
- this.insuredPersonInfo.property = "0";
- this.ownerInfo.identifyType = "10";
- this.policyHolderInfo.identifyType = "10";
- this.insuredPersonInfo.identifyType = "10";
- }
- this.getCompanyList();
- },
- // 获取新公司列表
- getCompanyList(data) {
- var _this = this;
- if (!this.productId) {
- this.$message.warning("请选择险种");
- return;
- }
- let starttime = new Date(this.carInfo.registerDate);
- let endtime = new Date(this.carInfo.issueDate);
- if (endtime < starttime) {
- this.$message({ message: "发证日期早于初登日期", type: "error" });
- return;
- }
- this.policyHolderInfovalidate();
- this.$refs["carInfo"].validate(valid => {
- if (valid) {
- _this.$refs["ownerInfo"].validate(async valid1 => {
- if (valid1) {
- if (!this.bbczcarShow && !this.bbtbcarShow) {
- this.$refs["insuredPersonInfo"].validate(valid2 => {
- if (!valid2) {
- document.getElementById("toubaor").scrollIntoView();
- this.$message({
- message: "请检查被投保人信息",
- type: "warning"
- });
- return;
- }
- });
- }
- if (!_this.productId) {
- _this.$message.warning("请选择险别");
- return;
- }
- let res = {};
- let param = {
- productId: this.productId,
- carInfo: this.carInfo,
- ownerInfo: this.ownerInfo,
- applyInfo: this.policyHolderInfo,
- insureInfo: this.insuredPersonInfo,
- userId: this.isLetter == 2 ? this.userId : ""
- };
- if (JSON.stringify(param) === this.oldData) {
- return;
- } else {
- this.oldData = JSON.stringify(param);
- }
- this.showLoading = true;
- // this.$api.letter.getAllAgreement().then((res) => {
- this.$api.letter.ruleFilterCompany(param).then(res => {
- if (res.code == 200) {
- res.data.map(ele => {
- ele["result"] = {};
- ele["quoteCode"] = 0;
- ele["checked"] = false;
- ele["msg"] = "";
- ele["lastYearMsg"] = "";
- ele["agreementId"] = "";
- ele["apiType"] = "";
- ele["orderstatus"] = 0;
- ele.coefficient = "";
- ele.underwritingDescription =
- ele.agreement[0].underwritingDescription;
- if (
- ele.isTaxSource &&
- ele.isTaxSource == "1" &&
- ele.agreement
- ) {
- ele.agreement.forEach(val => {
- if (val.isTaxSource && val.isTaxSource == "1") {
- ele.agreementId = val.id;
- ele.apiType = val.apiType;
- }
- });
- }
- });
- if (this.$route.query.data) {
- data = data || this.$route.query.data;
- }
- if (data) {
- this.selectedOptions1 = _this.ownerInfo.province
- ? [
- Number(_this.ownerInfo.province),
- Number(_this.ownerInfo.city),
- Number(_this.ownerInfo.county)
- ]
- : [];
- this.selectedOptions2 = _this.policyHolderInfo.province
- ? [
- Number(_this.policyHolderInfo.province),
- Number(_this.policyHolderInfo.city),
- Number(_this.policyHolderInfo.county)
- ]
- : [];
- this.selectedOptions13 = _this.insuredPersonInfo.province
- ? [
- Number(_this.insuredPersonInfo.province),
- Number(_this.insuredPersonInfo.city),
- Number(_this.insuredPersonInfo.county)
- ]
- : [];
- this.productId = this.productId || data.productid;
- res.data.forEach((val, index) => {
- if (!data.insAreaCompanyEditingDtos) {
- return;
- }
- data.insAreaCompanyEditingDtos.forEach(ele => {
- if (val.namesimple == ele.inscompany) {
- if (ele.inscompany == "中国人寿" && ele.companyId) {
- this.lastCompanyId = ele.companyId;
- }
- res.data[index].quoteCode = 200;
- res.data[index].result = ele;
- }
- });
- });
- }
- // //险种合并集合
- } else {
- this.$message.error(res.msg);
- }
- const combinedArray = [
- ...this.riskList.map(item => item.riskCode),
- ...this.kindList.map(item => item.kindCode)
- ];
- if (res.data) {
- res.data = res.data.filter(obj => {
- obj.agreement = obj.agreement.filter(agreementObj => {
- // 险种配置为空,则过滤掉该协议
- if (agreementObj.productsCodes == null) {
- return true;
- } else {
- // 检查是否包含 A 的特殊处理
- if (
- combinedArray.includes("A") &&
- !agreementObj.productsCodes.includes("A")
- ) {
- return false;
- }
- return agreementObj.productsCodes.some(item =>
- combinedArray.includes(item)
- );
- }
- });
- return obj.agreement.length > 0; // 返回true保留,返回false移除该保险公司
- });
- res.data.forEach(e => {
- if (e.agreement) {
- e.agreement.forEach(el => (el.disabled = false));
- }
- });
- }
- this.totalCompanyList = res.data;
- this.showLoading = false;
- });
- } else {
- document.getElementById("CheZhu").scrollIntoView();
- _this.$message({ message: "请检查人员信息", type: "warning" });
- }
- });
- } else {
- document.getElementById("Car").scrollIntoView();
- this.$message({ message: "请检查车辆信息", type: "warning" });
- return false;
- }
- });
- },
- // 保费计算(报价)按钮
- handleListJisuan(item, index) {
- this.quote(index);
- },
- // 修改险别
- productIdChange() {
- if (this.productId != "0330") {
- this.sychecked = true;
- this.sycheckedChange(true);
- } else {
- this.sychecked = false;
- this.sycheckedChange(false);
- }
- if (this.productId == "034001" || this.productId == "034002") {
- this.jqchecked = false;
- this.jqcheckedChange(false);
- } else {
- this.jqchecked = true;
- this.jqcheckedChange(true);
- }
- this.getCompanyList();
- if (this.policyHolderInfo.property == "0") {
- this.vehicleAndVesselTaxForm.taxpayerIdentifier = "10";
- }
- if (this.policyHolderInfo.property == "1") {
- this.vehicleAndVesselTaxForm.taxpayerIdentifier = "01";
- }
- this.totalCompanyList.forEach(val => {
- val.checked = false;
- });
- },
- // 选择方案
- checkedPopover(reslistindex, index, item) {
- if (index == 99) {
- if (
- this.totalCompanyList[reslistindex].programme99 &&
- !this.totalCompanyList[reslistindex].programme99.schemeId
- ) {
- return;
- }
- if (!this.totalCompanyList[reslistindex].zxProgramme) {
- this.totalCompanyList[reslistindex].zxProgramme = {
- // 自选方案详情
- description: "",
- drivingList: [],
- jqx: {
- name: "交通事故强制责任险"
- },
- kinds: {
- additional: [],
- main: [],
- service: []
- }
- };
- }
- this.typeDialogIndex = reslistindex; // 当前的公司index
- this.totalCompanyList[reslistindex].programme = this.totalCompanyList[
- reslistindex
- ].zxProgramme; // 选中的自定义方案详情
- } else {
- this.totalCompanyList[reslistindex].programme = item; // 选中的方案详情
- }
- this.totalCompanyList[reslistindex].checkedProgramme = index; // 选中的方案
- this.productList.forEach(val => {
- if (val.code == this.productId) {
- this.totalCompanyList[reslistindex].programme.description = val.desc;
- }
- });
- this.$forceUpdate();
- },
- // 获取方案信息
- getCompanyProgramme(e, code, name, index) {
- this.totalCompanyList[index].checked = false;
- this.$api.letter
- .getAllSchemeList({
- companyId: code,
- productId: this.productId,
- seatNum: this.carInfo.seatCount,
- vehicleType: this.carInfo.cimodelclass,
- energyType: this.carInfo.energyType,
- carnature: this.carInfo.carnature
- })
- .then(res => {
- if (res.code == 200) {
- this.totalCompanyList[index].schemes = res.data.schemes;
- this.totalCompanyList[index].programme99 = res.data
- .optionalScheme || { kinds: [] }; // 获取自选方案弹窗信息
- if (res.data.schemes[0]) {
- this.checkedPopover(index, 0, res.data.schemes[0]);
- } else {
- this.checkedPopover(index, 99);
- }
- this.totalCompanyList[index].checked = true;
- }
- });
- },
- // 获取险别
- getProductId() {
- // /plt/scheme/getProductInfo
- this.$api.letter.getProductInfo().then(res => {
- this.productList = res.data;
- });
- },
- // 选择特约
- handleCloseTeYue() {
- this.showTeYueVisible = false;
- },
- checkTeYue(item) {
- this.showTeYueVisible = true;
- },
- // 驾意险详情
- handleCloseShowDetailJiaYi() {
- this.showDetailJiaYiVisible = false;
- this.showDetailJiaYiVisible1 = false;
- this.showDetailtable = [];
- this.typeDialogData = {};
- },
- // 确认驾意
- handleAddYiWai() {
- let arr = [];
- this.checkList.forEach(val => {
- if (this.totalCompanyList[this.typeDialogIndex].cnName == "zijin") {
- if (val.tableData) arr.push(...val.tableData);
- // } else if (this.totalCompanyList[this.typeDialogIndex].cnName == 'guoRen' || this.totalCompanyList[this.typeDialogIndex].cnName == 'ansheng') {
- // arr.push({...val.tableData, select: val.select})
- } else {
- if (val.tableData) arr.push(val.tableData);
- }
- });
- this.totalCompanyList[this.typeDialogIndex].zxProgramme.drivingList = arr;
- this.totalCompanyList[this.typeDialogIndex].programme.drivingList = arr;
- this.handleCloseAddYiwai();
- },
- // 驾意输入框按钮
- numberChange(listIndex, index, type, minquantity, dataIndex) {
- if (dataIndex >= 0) {
- if (type == "plus") {
- // if (this.jiayiDialogData.drivingTypeList[listIndex].children[index].tableData[dataIndex].quantity < 100) {
- this.jiayiDialogData.drivingTypeList[listIndex].children[index]
- .tableData[dataIndex].quantity++;
- // }
- } else {
- if (
- this.jiayiDialogData.drivingTypeList[listIndex].children[index]
- .tableData[dataIndex].quantity > minquantity
- ) {
- this.jiayiDialogData.drivingTypeList[listIndex].children[
- index
- ].tableData[dataIndex].quantity -= 1;
- }
- }
- } else {
- if (type == "plus") {
- // if (this.jiayiDialogData.drivingTypeList[listIndex].children[index].tableData.quantity < 100) {
- this.jiayiDialogData.drivingTypeList[listIndex].children[index]
- .tableData.quantity++;
- // }
- } else {
- if (
- this.jiayiDialogData.drivingTypeList[listIndex].children[index]
- .tableData.quantity > minquantity
- ) {
- this.jiayiDialogData.drivingTypeList[listIndex].children[
- index
- ].tableData.quantity -= 1;
- }
- }
- }
- this.$forceUpdate();
- },
- // 选中驾意一层
- handleChangeSelectGuoren(index) {
- this.checkList[index].tableData1 = undefined;
- this.checkList[index].detail.forEach(val => {
- if (val.projectName == this.checkList[index].select) {
- this.checkList[index].tableData1 = val.insDrivingIntentionInsurances;
- }
- });
- },
- changeInput(e, listIndex, index, type, minquantity, dataIndex) {
- let num = Number(e);
- if (dataIndex >= 0) {
- this.jiayiDialogData.drivingTypeList[listIndex].children[
- index
- ].tableData[dataIndex].quantity = num < minquantity ? minquantity : num;
- } else {
- this.jiayiDialogData.drivingTypeList[listIndex].children[
- index
- ].tableData.quantity = num < minquantity ? minquantity : num;
- }
- this.$forceUpdate();
- },
- // 选中驾意
- handleChangeSelect(index) {
- if (this.totalCompanyList[this.typeDialogIndex].cnName == "zijin") {
- this.checkList[index].tableData = [];
- this.checkList[index].detail.forEach(val => {
- this.checkList[index].selectList.forEach(value => {
- if (val.alias == value) {
- this.checkList[index].tableData.push(val);
- this.$forceUpdate();
- }
- });
- });
- // } else if (this.totalCompanyList[this.typeDialogIndex].cnName == 'guoRen' || this.totalCompanyList[this.typeDialogIndex].cnName == 'ansheng' || this.totalCompanyList[this.typeDialogIndex].cnName == 'ansheng') {
- // this.checkList[index].tableData1.forEach((val) => {
- // if (val.projectName == this.checkList[index].select1) {
- // this.checkList[index].tableData = val
- // }
- // })
- } else {
- this.checkList[index].detail.forEach(val => {
- val.quantity = val.minQuantity ? val.minQuantity : val.quantity;
- if (val.alias == this.checkList[index].select) {
- this.checkList[index].tableData = val;
- }
- });
- }
- },
- handleChangeJiayi(listItem, listIndex) {
- if (this.checkList.length) {
- this.checkList.forEach(val => {
- this.$api.letter
- .getDriving({
- schemeId: this.jiayiDialogData.schemeId,
- seatNum: this.carInfo.seatCount
- // companyId: this.totalCompanyList[this.typeDialogIndex].id,
- // type: val.id,
- // productId: this.productId,
- // vehicleType: this.carInfo.cimodelclass,
- // energyType: this.carInfo.energyType,
- // carnature: this.carInfo.carnature
- })
- .then(res => {
- if (res.code == 200) {
- val.detail = res.data;
- this.$forceUpdate();
- }
- });
- });
- }
- },
- propertyTpe(val) {
- this[val].identifyType = this[val].property == "0" ? "10" : "01";
- },
- showDetailJiaYi(item, index, type) {
- this.showDetailtable = [];
- item.programme.drivingList.forEach(val => {
- this.$api.letter
- .getDrivingSon({
- companyId: this.totalCompanyList[index].id,
- projectCode: val.projectCode
- })
- .then(res => {
- if (res.code == 200) {
- this.showDetailtable.push(res.data);
- }
- });
- });
- if (type) {
- this.detailJiaYiTitle = "驾意险详情";
- this.showDetailJiaYiVisible1 = true;
- } else {
- this.detailJiaYiTitle = "查看详情";
- this.showDetailJiaYiVisible = true;
- }
- this.typeDialogData = item.programme;
- this.typeDialogData.shangyeList = [
- ...item.programme.kinds.main,
- ...item.programme.kinds.additional,
- ...item.programme.kinds.service
- ];
- },
- // 添加驾意险
- addJiaYi(item) {
- this.jiayiDialogData = item.programme99;
- this.addYiwaiDialogVisible = true;
- },
- handleCloseAddYiwai() {
- this.jiayiDialogData = {};
- this.checkList = [];
- this.addYiwaiDialogVisible = false;
- },
- // 调整险种
- // 确定险种
- subTypeDialog() {
- // this.totalCompanyList[this.typeDialogIndex].zxProgramme = {}
- // this.totalCompanyList[reslistindex].zxProgramme
- let main = [];
- let additional = [];
- let service = [];
- this.typeDialogData.kinds.forEach((val, index) => {
- if (val.checked) {
- if (val.grouping == "main") {
- main.push(val);
- }
- if (val.grouping == "additional") {
- additional.push(val);
- }
- if (val.grouping == "service") {
- service.push(val);
- }
- }
- });
- this.totalCompanyList[this.typeDialogIndex].zxProgramme.kinds = {
- main,
- additional,
- service
- };
- this.totalCompanyList[this.typeDialogIndex].programme.kinds = {
- main,
- additional,
- service
- };
- this.handleAddYiWai();
- this.handleCloseType();
- },
- showTypeDialog(item, index) {
- item.programme99.kinds.map(item => {
- const itemamtList = item.amtList.map(val => {
- return val.label;
- });
- if (!itemamtList.includes("不投保")) {
- item.checked = true;
- item.Required = true;
- item.amount = item.amtList.length ? item.amtList[0].value : item.max;
- }
- return item;
- });
- this.typeDialogData = item.programme99;
- this.jiayiDialogData = item.programme99;
- this.typeDialogVisible = true;
- },
- handleCloseType() {
- this.typeDialogVisible = false;
- this.typeDialogData = [];
- this.jiayiDialogData = {};
- this.checkList = [];
- },
- //清空保单图片
- removePhoto(file, fileList, type) {
- this.policyNumberForm[type] = [];
- },
- editingWay(paramsEdit) {
- // console.log(paramsEdit)
- if (paramsEdit) {
- var _this = this;
- this.jqchecked = false;
- this.tbczcarShow = false;
- this.bbtbcarShow = false;
- this.bbczcarShow = false;
- const {
- carinfo,
- ownerinfo,
- applyinfo,
- insureinfo,
- quoteno,
- orderno
- } = paramsEdit;
- this.editorInfo = { ...paramsEdit };
- // this.vehicleAndVesselTaxForm = { ...paramsEdit.vehicleAndVesselTax };
- // console.log(paramsEdit.jqstartdate, 6666);
- if (paramsEdit.jqstartdate) {
- if (paramsEdit.jqstartdate.split(" ")[1] == "00:00:00") {
- this.immediatelyValue = false;
- } else {
- this.immediatelyValue = true;
- }
- } else {
- this.immediatelyValue = true;
- }
- _this.carInfo = carinfo;
- if (_this.carInfo.carnature == "8A") {
- _this.carInfo.carnature = "02";
- _this.carInfo.vehicleUse = "05";
- } else {
- _this.carInfo.carnature;
- _this.carInfo.vehicleUse;
- }
- _this.ownerInfo = ownerinfo;
- _this.policyHolderInfo = applyinfo;
- _this.insuredPersonInfo = insureinfo;
- _this.quoteno = quoteno;
- _this.orderno = orderno;
- _this.productId = paramsEdit.productid;
- _this.tbczcarShow = applyinfo.owner;
- _this.bbczcarShow = insureinfo.owner;
- _this.kindList = paramsEdit.king;
- _this.bbtbcarShow = insureinfo.insuranceHolder;
- _this.ownerInfo.age = _this.ownerInfo.age
- ? getAgeByIdCard(_this.ownerInfo.identifyNumber)
- : "";
- _this.policyHolderInfo.age = _this.policyHolderInfo.age
- ? getAgeByIdCard(_this.policyHolderInfo.identifyNumber)
- : "";
- _this.insuredPersonInfo.age = _this.policyHolderInfo.age
- ? getAgeByIdCard(_this.insuredPersonInfo.identifyNumber)
- : "";
- _this.ownerInfo.property = _this.ownerInfo.property
- ? _this.ownerInfo.property
- : "1";
- _this.policyHolderInfo.property = _this.policyHolderInfo.property
- ? _this.policyHolderInfo.property
- : "1";
- _this.insuredPersonInfo.property = _this.insuredPersonInfo.property
- ? _this.insuredPersonInfo.property
- : "1";
- if (paramsEdit.carinfo.transferFlag) {
- this.transferDateShow = true;
- } else {
- this.transferDateShow = false;
- this.carInfo.transferDate = ''
- }
- paramsEdit.risk.map(ele => {
- if (ele.riskCode == "0507") {
- _this.jqchecked = true;
- this.protocolJudge("0507", true);
- _this.riskList.push({
- riskCode: "0507"
- });
- // _this.jqstartDate = ele.startDate;
- // _this.jqendDate = ele.endDate;
- // this.jqstartDate = this.$route.query.data.jqstartdate
- // this.jqendDate = this.$route.query.data.jqenddate
- _this.jqstartDate = this.transformTime1();
- _this.jqendDate = this.oneYearPast1(this.jqstartDate);
- } else if (ele.riskCode == "0510") {
- _this.sychecked = true;
- this.protocolJudge("0510", true);
- _this.riskList.push({
- riskCode: "0510"
- });
- // _this.systartDate = ele.startDate;
- // _this.syendDate = ele.endDate;
- if (new Date(ele.startDate).getTime() > new Date().getTime()) {
- _this.systartDate = ele.startDate;
- _this.syendDate = ele.endDate;
- } else {
- _this.systartDate = this.transformTime1();
- _this.syendDate = this.oneYearPast1(this.systartDate);
- }
- _this.insureList.map(eleA => {
- paramsEdit.king.map(eleB => {
- if (eleA.kindCode == eleB.kindCode) {
- switch (eleB.kindCode) {
- case "D4":
- case "SY_FJ_YBW2":
- eleA.amount = JSON.stringify(eleB.unitAmount);
- break;
- case "MJ1":
- case "MJ2":
- case "MJ3":
- case "MJ4":
- eleA.amount = eleB.deductibleRate;
- case "A":
- eleA.amount = JSON.stringify(eleB.amount);
- this.protocolJudge("A", true);
- break;
- default:
- eleA.amount = JSON.stringify(eleB.amount);
- }
- }
- });
- });
- }
- });
- // this.HistoryList = this.paramsEdit.insAreaCompanyList;
- let params = {
- orderNo: paramsEdit.orderno,
- orderStatus: ""
- };
- this.$api.letter.queryQuoteHistory(params).then(res => {
- res.data.forEach(item => {
- if (item.accidentInfo) {
- item.accidentInfo.constructor === Object
- ? [item.accidentInfo]
- : item.accidentInfo;
- }
- });
- this.HistoryList = res.data;
- });
- //--获取影像信息--
- _this.imageEcho(this.quoteno);
- // this.$refs.imageDialog.imageEcho(this.quoteno)
- // this.commpanyList()
- //--显示影像按钮--
- _this.imageUploadShow = true;
- this.$forceUpdate();
- _this.obtainProtocol(paramsEdit);
- } else {
- this.jqstartDate = this.transformTime1();
- this.jqendDate = this.oneYearPast1(this.jqstartDate);
- this.systartDate = this.transformTime1();
- this.syendDate = this.oneYearPast1(this.systartDate);
- }
- },
- 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;
- });
- }
- },
- uploadinformation() {
- // //上传图片
- const mergedArray = [
- ...this.imageList1,
- ...this.imageList2,
- ...this.imageList3,
- ...this.imageList4,
- ...this.imageList5,
- ...this.imageList6
- ];
- 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" });
- }
- });
- this.imageUploaddialogVisible = false;
- },
- repairinformation() {
- // //上传图片
- const mergedArray = [
- ...this.imageList1,
- ...this.imageList2,
- ...this.imageList3,
- ...this.imageList4,
- ...this.imageList5,
- ...this.imageList6
- ];
- let imageparam = {
- imageList: mergedArray,
- companyId: this.companyId
- };
- this.$api.letter.additionalInformation(imageparam).then(responses => {
- if (responses.code == "200") {
- this.imageUploaddialogVisible = false;
- this.$message({ message: responses.msg, type: "success" });
- } else {
- this.$message({ message: responses.msg, type: "error" });
- }
- });
- },
- //手机号复制粘贴处理
- handlePaste(e, mobileKey) {
- e.preventDefault(); //阻止默认行为
- const clipboardData = e.clipboardData || window.clipboardData; //获取剪切板内容
- let pastedText = clipboardData.getData("text").replace(/\s+/g, ""); //获取纯文本并处理空格
- // 截取前11个字符,以确保不会超过手机号长度限制
- pastedText = pastedText.substring(0, 11);
- // 使用Vue.nextTick确保更新发生在DOM更新之后
- this.$nextTick(() => {
- this[mobileKey].mobile = pastedText;
- });
- },
- // licenseNoFun(data){
- // if(data && this.carInfo.enginedesc){
- // this.obtainProtocol()
- // }
- // },
- // enginedescFun(data){
- // if(data && this.carInfo.licenseNo){
- // this.obtainProtocol()
- // }
- // },
- packageChange(val) {
- let arr = this.packageOptions.find(ele => ele.id == val).kind;
- if (arr.length > 0) {
- this.insureList.map(eleA => {
- arr.map(eleB => {
- if (eleA.kindCode == eleB.kindCode) {
- switch (eleB.kindCode) {
- case "D4":
- case "SY_FJ_YBW2":
- eleA.amount = JSON.stringify(eleB.unitAmount);
- break;
- case "MJ1":
- case "MJ2":
- case "MJ3":
- case "MJ4":
- eleA.amount = eleB.deductibleRate;
- break;
- case "TY2":
- case "TY3":
- case "TY4":
- eleA.amount = eleB.serviceTimes;
- break;
- default:
- eleA.amount = JSON.stringify(eleB.amount);
- }
- }
- });
- });
- } else {
- this.insureList.map(eleA => {
- eleA.amount = "0";
- });
- }
- },
- capType(val) {
- if (val == "0") {
- return "success";
- }
- if (val == "1") {
- return "warning";
- }
- if (val == "2" || val == "3" || val == "4") {
- return "danger";
- }
- },
- handleCheckAllChange(ele) {
- this.totalCompanyList.forEach((val, index) => {
- ele ? (val.checked = true) : (val.checked = false);
- // this.initchange(ele, val.id, val.cnName, index);
- });
- },
- retractFun() {
- this.isRetract = this.isRetract == false ? true : false;
- },
- //中煤意外险调整份数事件
- ZMhandleChange(val) {
- if (!val) {
- this.$refs.ZmMultipleTable[0].clearSelection(); //清除
- }
- },
- //中煤意外险选中对应意外险方案
- // ZMHandleSelectionChange(val) {
- // // if(val.length > 0&& val[0].quantity==undefined){
- // // this.$message({ message: "请先填写投保份数再勾选!", type: "error", });
- // // this.$refs.ZmMultipleTable[0].clearSelection(); //清除
- // // return false;
- // // }
- // if (val.length > 1) {
- // this.$refs.ZmMultipleTable[0].clearSelection(); //清除
- // this.$refs.ZmMultipleTable[0].toggleRowSelection(val.pop()); //pop:最后一个
- // } else {
- // this.zhongmeiaccidentalDrivingVo = val[0]; //multipleSelection:当前选择的数组
- // }
- // },
- //中煤意外险选中对应产品带出方案明细
- zhongmeiInsuranceChange(index) {
- //每次选中产品,清空之前选中的数据
- this.zhongmeitemplateSelection = index;
- this.zhongmeiaccidentalDrivingVo = {};
- this.zhongmeiInsuranceDataTable = [];
- let data = this.zhongmeiInsuranceData.find(
- val => val.projectCode == index
- );
- //把返回的方案明细放入展示数据对象中
- this.accidentFormZM = Object.assign(this.accidentFormZM, data);
- this.accidentFormZM.quantity = "1";
- if (data && data.son) {
- this.accidentPremiumZM = data.sumPremium;
- this.zhongmeiInsuranceDataTable = data.son;
- }
- },
- // 截图粘贴
- copybjd() {
- let that = this;
- html2Canvas(document.getElementById("pdfContentsDiv"), {
- allowTaint: true,
- taintTest: false
- }).then(function (canvas) {
- let base64Data = "";
- // let blob = null
- base64Data = canvas.toDataURL("image/png", 1);
- const date = new Date();
- const saveInfo = {
- download: date.getTime() + `.png`,
- href: base64Data
- };
- const element = document.createElement("a");
- element.style.display = "none";
- for (const key in saveInfo) {
- element.setAttribute(key, saveInfo[key]);
- }
- document.body.appendChild(element);
- element.click();
- setTimeout(() => {
- document.body.removeChild(element);
- }, 300);
- // var format = 'image/png'
- // //将Base64图片编码转换成blob
- // var base64 = base64Data
- // var code = window.atob(base64.split(',')[1])
- // var aBuffer = new window.ArrayBuffer(code.length)
- // var uBuffer = new window.Uint8Array(aBuffer)
- // for (var i = 0; i < code.length; i++) {
- // uBuffer[i] = code.charCodeAt(i) & 0xff
- // }
- // try {
- // blob = new Blob([uBuffer], { type: format })
- // } catch (e) {
- // window.BlobBuilder =
- // window.BlobBuilder ||
- // window.WebKitBlobBuilder ||
- // window.MozBlobBuilder ||
- // window.MSBlobBuilder
- // if (e.name == 'TypeError' && window.BlobBuilder) {
- // var bb = new window.BlobBuilder()
- // bb.append(uBuffer.buffer)
- // blob = bb.getBlob('image/png')
- // } else if (e.name == 'InvalidStateError') {
- // blob = new Blob([aBuffer], { type: format })
- // }
- // }
- // const clipboardItemInput = new ClipboardItem({
- // 'image/png': blob,
- // })
- // that.$copyText({
- // 'image/png': blob,
- // }).then(
- // function(e) {
- // console.log("copy arguments e:", e);
- // alert("复制成功!");
- // },
- // function(e) {
- // console.log("copy arguments e:", e);
- // alert("复制失败!");
- // }
- // ),
- // navigator.clipboard.write([clipboardItemInput])
- // that.$message({
- // message: '已截图并复制到粘贴板!',
- // type: 'success'
- // });
- });
- },
- // 即时起保
- immediatelyChange(e) {
- if (e) {
- this.immediatelyValue = true;
- const date = new Date();
- date.setHours(date.getHours() + 2);
- date.setMinutes(0);
- date.setSeconds(0);
- this.jqstartDate = date;
- this.jqendDate = this.oneYearPast1(date);
- } else {
- this.immediatelyValue = false;
- this.jqstartDate = this.transformTime1();
- this.jqendDate = this.oneYearPast1(this.jqstartDate);
- }
- },
- // 使用性质方法
- natureFun() {
- if (this.carInfo.carnature == "01") {
- this.carInfo.vehicleUse = "";
- }
- },
- // 点击同步报价后的时间
- syncData(item) {
- this.jqstartDate = item.startDateJq ? item.startDateJq : this.jqstartDate;
- this.jqendDate = item.endDateJq ? item.endDateJq : this.endDateJq;
- this.systartDate = item.startDateSy ? item.startDateSy : this.systartDate;
- this.syendDate = item.endDateSy ? item.endDateSy : this.syendDate;
- },
- //纳税类型事件
- taxRelifFlagChange(val) {
- if (val == 4) {
- citydata.rawCitiesData.map(val => {
- this.provinceSelect.push({
- name: val.name,
- code: val.code
- });
- return val;
- });
- }
- },
- //身份证前六位识别地区
- // getAreaByCode(code) {
- // let list = regionData;
- // let provinceCode = code.substring(0, 2);
- // let cityCode = code.substring(0, 4);
- // let areaCode = code.substring(0, 6);
- // // 获取省份信息
- // let province = list.filter(function (item) {
- // return item.value === provinceCode;
- // });
- // // 获取城市信息
- // let city = province[0].children.filter(function (item) {
- // return item.value === cityCode;
- // });
- // if (city.length > 0) {
- // // 获取区/县信息
- // let area = city[0].children.filter(function (item) {
- // return item.value === areaCode;
- // });
- // return province[0].label + city[0].label + area[0].label;
- // }
- // },
- //--数据字典 begin --
- getDicType(type) {
- this.$api.insCompany.dicType(type).then(res => {
- if (res.code == 200) {
- if (type == "insOrderStatus") {
- let data = JSON.parse(JSON.stringify(res.data.ddList));
- data.unshift({
- dictTag: "全部",
- dictValue: "888"
- });
- this[type + "options"] = data;
- } else {
- this[type + "options"] = res.data.ddList;
- }
- }
- });
- },
- //身份证失去焦点
- identifyblur(info) {
- // console.log(getAgeByIdCard(this[info].identifyNumber))
- this[info].age =
- typeof getAgeByIdCard(this[info].identifyNumber) == "number"
- ? getAgeByIdCard(this[info].identifyNumber)
- : "";
- this[info].gender = getGenderByIdCard(this[info].identifyNumber);
- },
- //车主信息选择性别
- genderChange(e) {
- if (this.tbczcarShow) {
- this.policyHolderInfo.gender = e;
- } else if (this.bbczcarShow) {
- this.insuredPersonInfo.gender = e;
- }
- },
- //省市区
- areahandleChange(event, info) {
- if (event[0] != null && event[1] != null && event[2] != null) {
- this[info].province = event[0];
- this[info].provinceName = this.getSelectedNames(event)[0];
- this[info].city = event[1];
- this[info].cityName = this.getSelectedNames(event)[1];
- this[info].county = event[2];
- this[info].countyName = this.getSelectedNames(event)[2];
- }
- },
- getSelectedNames(codes) {
- const names = [];
- const findNames = (options, codes) => {
- options.forEach(option => {
- if (codes.includes(option.code)) {
- names.push(option.name);
- if (option.sub) {
- findNames(option.sub, codes);
- }
- }
- });
- };
- findNames(this.areaOption, codes);
- return names;
- },
- 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() - 8.64e7;
- },
- 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;
- }
- },
- pinganInsuranceChange(index, index1, val) {
- if (!index) {
- return;
- }
- this.accidentFormPA[index1].pingantemplateSelection = index;
- this.accidentFormPA[index1].projectName = index;
- val.map(val1 => {
- if (val1.projectName == index) {
- val1.son.forEach(val3 => {
- val3.quantity = "1";
- });
- this.accidentFormPA[index1].pinganInsuranceDataTable = val1.son;
- this.accidentFormPA[index1].projectCode = val1.projectCode;
- }
- });
- // this.accidentFormPA[index1].projectCode=this.pinganInsuranceData.find(val1=>{
- // // val1.map(
- // // (val) => val.projectName == index
- // // ).projectCode
- // }
- // )
- // this.accidentFormPA[index1].pinganInsuranceDataTable = this.pinganInsuranceData.find(
- // (val) => val.projectName == index
- // ).son;
- },
- taikangInsuranceChange(index) {
- if (index) {
- this.TkDrivingChange(
- this.taikangaccidentDataList.find(val => val.projectCode == index)
- );
- }
- if (!index) {
- return;
- }
- this.taikangtemplateSelection = index;
- this.accidentFormTk = Object.assign(
- this.accidentFormTk,
- this.taikangaccidentDataList.find(val => val.projectCode == index)
- );
- this.taikangaccidentDataList
- .find(val => val.projectCode == index)
- .son.forEach(item => {
- item.sumAmount =
- Number(item.amount) * Number(this.accidentFormTk.seatNum);
- });
- this.taikangInsuranceDataTable = this.taikangaccidentDataList.find(
- val => val.projectCode == index
- ).son;
- this.accidentPremiumTk = this.accidentFormTk.premium;
- },
- anshengInsuranceChange(index) {
- this.anshengtemplateSelection = index;
- let data = this.anshengInsuranceData.find(
- val => val.projectCode == index
- );
- this.anshengaccidentalDrivingVo.parentName = data.projectName;
- this.anshengaccidentalDrivingVo.parentCode = data.projectCode;
- this.anshengInsuranceDataTable = [];
- this.anshengInsuranceDataTable = data.children;
- this.anshengInsuranceDataTable.forEach(e => (e.quantity = "1"));
- },
- hengbangInsuranceChange(index) {
- this.hengbangInsuranceDataTable = this.hengbangInsuranceData.find(
- val => val.projectCode == index
- ).son;
- this.hengbangtemplateSelection = index;
- if (this.hengbangInsuranceDataTable.length) {
- this.hengbangaccidentalDrivingVo = this.hengbangInsuranceData.find(
- val => val.projectCode == index
- );
- }
- },
- taipingyangInsuranceChange(index) {
- this.taipingyangInsuranceDataTable = this.taipingyangInsuranceData.find(
- val => val.projectCode == index
- ).son;
- this.taipingyangtemplateSelection = index;
- if (this.taipingyangInsuranceDataTable.length) {
- this.taipingyangaccidentalDrivingVo = this.taipingyangInsuranceData.find(
- val => val.projectCode == index
- );
- }
- },
- huanongInsuranceChange(index) {
- this.huanongInsuranceDataTable = this.huanongInsuranceData.find(
- val => val.projectCode == index
- ).son;
- this.accidentFormHN.accidentType = index;
- this.huanongaccidentalDrivingVo = Object.assign(
- this.huanongInsuranceData.find(val => val.projectCode == index),
- this.accidentFormHN
- );
- },
- taipingInsuranceChange(index) {
- this.taipingtemplateSelection = index;
- this.taipingInsuranceDataTable = this.taipingInsuranceData.find(
- val => val.projectCode == index
- ).son;
- if (
- this.taipingInsuranceDataTable &&
- this.taipingInsuranceDataTable.length
- ) {
- this.taipingaccidentalDrivingVo = this.taipingInsuranceData.find(
- val => val.projectCode == index
- );
- }
- },
- zijinInsuranceChange(index) {
- this.zijintemplateSelection = index;
- this.zijinInsuranceDataTable = [];
- this.$refs.expandTable[0].clearSelection();
- index.forEach(item => {
- this.zijinInsuranceDataTable.push(
- this.ziJinInsuranceData.find(val => val.projectCode == item)
- );
- });
- this.zijinInsuranceDataTable.forEach(item => {
- this.$nextTick(() => {
- this.$refs.expandTable[0].toggleRowSelection(item);
- });
- });
- this.CheckboxChange(this.zijinInsuranceDataTable);
- },
- renshouInsuranceChange(index) {
- // this.renshouInsuranceDataTable = [
- // this.renshouInsuranceData.find(val => val.projectCode == index)
- // ];
- this.renshoutemplateSelection = index;
- this.renshouInsuranceDataTable = this.renshouInsuranceData.find(
- val => val.projectCode == index
- ).son;
- if (index) {
- this.RSDrivingChange(
- this.renshouInsuranceData.find(val => val.projectCode == index)
- );
- }
- },
- async dajiaInsuranceChange(index) {
- this.dajiaaccidentalDrivingVo = {};
- let data = await this.$api.letter.accidentalDrivingInfo(index);
- if (data.code == 200) {
- this.dajiaaccidentalDrivingVo = {
- rideRiskCode: index,
- rideRiskName: this.dajiaInsuranceData.find(val => val.id == index)
- .productName,
- quantity: "1"
- };
- this.dajiaInsuranceDataTable = data.data;
- }
- },
- zhonganInsuranceChange(index) {
- this.zhongantemplateSelection = index;
- this.zhonganInsuranceDataTable = this.zhonganInsuranceData.find(
- val => val.projectCode == index
- ).son;
- if (index) {
- this.ZADrivingChange(
- this.zhonganInsuranceData.find(val => val.projectCode == index)
- );
- }
- },
- // 渤海选择意外险类型
- async bohaiInsuranceChange(index) {
- if (index) {
- this.boHaiaccidentForm.projectCode = index;
- // this.boHaiaccidentForm.projectName = this.dajiaInsuranceData.find(
- // (e) => e.projectCode == index
- // ).projectName;
- this.boHaiaccidentForm.copies = "1";
- this.boHaiaccidentForm.premium = Number(
- this.boHaiaccidentDataList.find(e => e.projectCode == index)
- .sumPremium
- );
- this.bohaiInsuranceDataTable = this.boHaiaccidentDataList.find(
- e => e.projectCode == index
- ).son;
- // let data = await this.$api.letter.productDetailsQueryboHai({
- // projectCode: index,
- // productCode: this.boHaiaccidentDataList.find(
- // (e) => e.packageCode == index
- // ).productCode,
- // agreementId: this.boHaiaccidentForm.agreementId,
- // });
- // if (data.code == 200 && data.data) {
- // this.accidentLoadingbh = false;
- // this.bohaiInsuranceDataTable = data.data;
- // } else {
- // this.$message.error(data.msg);
- // this.bohaiInsuranceDataTable = [];
- // }
- }
- },
- djcxchange(index) {
- if (index) {
- this.dajiaaccidentForm.parentCode = index;
- this.dajiaaccidentForm.quantity = "1";
- this.dajiaaccidentForm.prodCode = "";
- this.dajiaaccidentDataListChild = this.dajiaInsuranceData.find(
- e => e.projectCode == index
- ).children;
- this.dajiaaccidentalDrivingVo.parentName = this.dajiaInsuranceData.find(
- e => e.projectCode == index
- ).projectName;
- this.dajiaaccidentalDrivingVo.parentCode = this.dajiaInsuranceData.find(
- e => e.projectCode == index
- ).projectCode;
- }
- },
- djcxchangeChild(index) {
- if (index) {
- let list = this.dajiaaccidentDataListChild.find(
- val => val.projectCode == index
- );
- this.dajiaaccidentForm = {
- ...this.dajiaaccidentForm,
- prodCode: index,
- projectName: list.projectName,
- sumAmount: Number(list.sumAmount),
- riskCode: list.riskCode,
- sumPremium: Number(list.sumPremium)
- };
- list.productId = list.id;
- this.dajiaInsuranceDataTable = list.son;
- this.dajiaaccidentalDrivingVo = Object.assign({
- ...this.dajiaaccidentalDrivingVo,
- ...list
- });
- } else {
- this.dajiaInsuranceDataTable = [];
- }
- },
- // 国任选择意外险类型
- async grcxchange(index) {
- if (index) {
- this.accidentLoading = true;
- this.guoRenaccidentForm.goodsCode = index;
- this.guoRenaccidentForm.quantity = "1";
- this.guoRenaccidentForm.prodCode = "";
- this.guoRenaccidentDataListChild = this.guoRenaccidentDataList.find(
- e => e.projectCode == index
- ).children;
- this.guoRenaccidentalDrivingVo.parentName = this.guoRenaccidentDataList.find(
- e => e.projectCode == index
- ).projectName;
- this.guoRenaccidentalDrivingVo.parentCode = this.guoRenaccidentDataList.find(
- e => e.projectCode == index
- ).projectCode;
- // let data = await this.$api.letter.syncNonAutoInsGuoren({
- // goodsCode: index,
- // agreementId: this.guoRenaccidentForm.agreementId
- // });
- // if (data.code == 200) {
- // let num = 0;
- // data.data.forEach(item => {
- // num += Number(item.premium);
- // });
- // this.accidentLoading = false;
- // } else {
- // this.accidentLoading = false;
- // this.$message.error(data.msg);
- // this.guoRenaccidentDataListChild = [];
- // }
- }
- },
- // 国任选择意外险子级类型
- async grcxchangeChild(index) {
- let list = this.guoRenaccidentDataListChild.find(
- val => val.projectCode == index
- );
- this.guoRenaccidentForm = {
- ...this.guoRenaccidentForm,
- prodCode: index,
- policyNum: Number(list.sumPremium),
- riskCode: list.riskCode,
- // amount: list.amount,
- sumPremium: Number(list.sumPremium)
- // appnum:Number(list.appnum)
- };
- this.guoRenInsuranceDataTable = list.son;
- this.guoRenaccidentalDrivingVo = Object.assign({
- ...list,
- ...this.guoRenaccidentalDrivingVo
- });
- },
- // 选择意外险类型
- async yongchengInsuranceChange(index) {
- if (!index) {
- return;
- }
- this.yongchengtemplateSelection = index;
- this.accidentForm = Object.assign(
- this.accidentForm,
- this.yongchengaccidentDataList.find(val => val.projectCode == index)
- );
- this.yongchengaccidentDataList
- .find(val => val.projectCode == index)
- .son.forEach(item => {
- item.sumAmount =
- Number(item.amount) * Number(this.accidentForm.seatNum);
- });
- this.yongchengInsuranceDataTable = this.yongchengaccidentDataList.find(
- val => val.projectCode == index
- ).son;
- this.accidentPremium = this.accidentForm.sumPremium;
- // this.accidentForm.fen = "1";
- // let data = await this.$api.letter.ycgainAccidentSchemeList({
- // companyCode: this.accidentForm.companyId,
- // code: index,
- // agreementId: this.accidentForm.agreementId,
- // seatNum: Number(this.carInfo.seatCount)
- // });
- // if (data.code == 200) {
- // let num = 0;
- // data.data.forEach(item => {
- // num += Number(item.premium);
- // });
- // this.accidentPremium = num;
- // this.accidentForm.premium = num;
- // this.accidenttableData = data.data;
- // }
- },
- numberCopieschange(index) {
- this.accidentForm.sumPremium = Number(this.accidentPremium) * index;
- },
- numberCopieschangeTk(index) {
- this.accidentFormTk.sumPremium = Number(this.accidentPremiumTk) * index;
- },
- numberCopieschangePA(index, index1) {
- this.accidentFormPA.premium =
- Number(this.accidentFormPA[index1].accidentPremiumPA) * index;
- },
- numberCopieschangeZM(index) {
- this.accidentFormZM.sumPremium = Number(this.accidentPremiumZM) * index;
- },
- numberCopieschangeGR(index) {
- this.guoRenaccidentForm.sumPremium =
- Number(this.guoRenaccidentForm.policyNum) * 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.carInfo.frameNo = res.data.carInfo.vinNo;
- 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;
- }
- county;
- });
- } 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 == 888 ? "" : e
- };
- this.$api.letter.queryQuoteHistory(params).then(res => {
- res.data.forEach(item => {
- if (item.accidentInfo) {
- item.accidentInfo.constructor === Object
- ? [item.accidentInfo]
- : item.accidentInfo;
- }
- });
- this.HistoryList = res.data;
- });
- },
- protocolJudge(val, val1) {
- if (val1) {
- this.totalCompanyList.forEach(e => {
- if (
- e.agreement.find(
- el => el.productsCode && el.productsCode.includes(val)
- )
- ) {
- e.agreement.find(
- el => el.productsCode && el.productsCode.includes(val)
- ).disabled = true;
- }
- });
- } else {
- this.totalCompanyList.forEach(e => {
- if (
- e.agreement.find(
- el => el.productsCode && el.productsCode.includes(val)
- )
- ) {
- e.agreement.find(
- el => el.productsCode && el.productsCode.includes(val)
- ).disabled = false;
- }
- });
- }
- },
- // 回显
- async obtainProtocol(data) {
- let res = {};
- if (this.isLetter == "1") {
- this.getCompanyList(data);
- // res = await this.$api.letter.getAllAgreement();
- }
- if (this.isLetter == "2") {
- setTimeout(() => {
- this.getCompanyList(data);
- }, 500);
- }
- },
- //获取保险公司列表
- // 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;
- // ele.coefficient = "";
- // // ele.agreementId = ele.agreement[0].id;
- // ele.apiType = ele.agreement[0].apiType;
- // ele.underwritingDescription =
- // ele.agreement[0].underwritingDescription;
- // });
- // if (this.$route.query.data) {
- // res.data.forEach((val, index) => {
- // this.$route.query.data.insAreaCompanyEditingDtos.forEach(ele => {
- // if (val.namesimple == ele.inscompany) {
- // res.data[index].quoteCode = 200;
- // res.data[index].result = ele;
- // }
- // });
- // });
- // }
- // this.totalCompanyList = res.data;
- // });
- // },
- Payment(id, item) {
- this.carcode(id, item);
- },
- // 现询
- getInquiryNowList(agreementId, riskList, kindList) {
- let productId = "";
- this.inquiryNowList = [];
- this.$api.letter
- .getProductId({
- riskList: riskList,
- kindList: kindList
- })
- .then(res => {
- if (res.code == 200) {
- productId = res.data;
- this.$api.letter
- .getInquiryNowFee({
- agreementId: agreementId,
- productId: productId
- })
- .then(resp => {
- if (resp.code == 200) {
- this.inquiryNowList = resp.data;
- }
- });
- }
- });
- },
- inquiryNowListChange(data) {
- if (data) {
- this.nowCostsId = data; // 现询id
- this.isInquiryNowDisable = true;
- this.inquiryNowList.forEach(val => {
- if (val.id == data) {
- this.policyNumberForm.jqCostsProportion = val.jqCostsProportion;
- this.policyNumberForm.noCostsProportion = val.noCostsProportion;
- this.policyNumberForm.syCostsProportion = val.syCostsProportion;
- }
- });
- } else {
- this.nowCostsId = "";
- this.isInquiryNowDisable = false;
- this.policyNumberForm.jqCostsProportion = "";
- this.policyNumberForm.noCostsProportion = "";
- this.policyNumberForm.syCostsProportion = "";
- }
- },
- //选择协议 val:协议id row:协议列表 index:下标 item:保险公司数据集合
- agreementChange(val, row, index, item) {
- this.getInquiryNowList(val, this.riskList, this.kindList);
- this.kindListFun(index);
- let obj = {};
- obj = row.find(item => {
- return item;
- });
- let selectRow = row.find(item => {
- return item.id == val;
- });
- let info = row.find(ele => ele.id == val);
- this.totalCompanyList[index].apiType = info.apiType;
- this.totalCompanyList[index].underwritingDescription = val
- ? selectRow.underwritingDescription
- : ""; //重新赋值修改选中协议承保描述
- if (this.$route.path != "/task/external/externalOrders")
- if (item.namesimple == "平安财险") {
- this.$api.letter
- .getPingAnDrivingInsuranceRule({
- cimodelclass: this.carInfo.cimodelclass,
- isUseCombine: "Y",
- tonNumber: this.carInfo.limitLoad,
- ownAttribute: "03",
- useAttribute: this.carInfo.carnature,
- ruleSeatNum: Number(this.carInfo.seatCount),
- agreementId: item.agreementId
- })
- .then(res => {
- this.pinganInsuranceData = res.data;
- });
- return;
- }
- this.$api.letter
- .getDrivingInsuranceRule({
- companyCode: item.id,
- agreementId: item.agreementId,
- seatNum:
- item.namesimple == "永诚财险" || item.namesimple == "中煤财险"
- ? Number(this.carInfo.seatCount)
- : "",
- ruleUseNature: this.carInfo.carnature,
- ruleSeatNum: Number(this.carInfo.seatCount),
- risk: this.riskList,
- kind: this.kindList,
- ruleThirdPartyInsurance: this.insureList[1].amount
- })
- .then(res => {
- if (res.code == 200) {
- this.nonVehicle(res.data, item.cnName);
- switch (item.namesimple) {
- case "永诚财险":
- this.yongchengaccidentDataList = res.data;
- break;
- case "国任财险":
- this.guoRenaccidentDataList = res.data;
- break;
- case "渤海财险":
- this.boHaiaccidentDataList = res.data;
- break;
- case "中煤财险":
- this[item.cnName + +"InsuranceData"] = res.data;
- break;
- case "紫金财险":
- let data = res.data;
- data.map(ele => {
- ele.quantity = 1;
- return ele;
- });
- this.ziJinInsuranceData = data;
- break;
- case "大家财险":
- this.dajiaInsuranceData = res.data;
- break;
- case "泰康财险":
- this.taikangaccidentDataList = res.data;
- break;
- case "中国人寿":
- case "人保财险":
- case "恒邦财险":
- case "太平财险":
- case "安盛天平":
- case "华农财险":
- case "华安财险":
- case "泰山财险":
- case "众安财险":
- case "太平洋财险":
- res.data.map(ele => {
- ele.quantity = 1;
- return ele;
- });
- this[item.cnName + "InsuranceData"] = res.data;
- break;
- }
- } else {
- this.$message.error(res.msg);
- }
- });
- // switch (item.namesimple) {
- // case "永诚财险":
- // this.accidentForm.agreementId = item.agreementId;
- // this.$api.letter
- // .ycgainAccidentList({
- // companyCode: item.id,
- // agreementId: item.agreementId,
- // seatNum: Number(this.carInfo.seatCount)
- // })
- // .then(res => {
- // if (res.code == 200) {
- // this.accidentDataList = res.data;
- // }
- // });
- // break;
- // case "国任财险":
- // this.guoRenaccidentForm.agreementId = item.agreementId;
- // this.$api.letter
- // .syncNonAutoInsGuoren({ agreementId: item.agreementId })
- // .then(res => {
- // if (res.code == 200) {
- // this.guoRenaccidentDataList = res.data;
- // } else {
- // this.guoRenaccidentDataList = [];
- // }
- // });
- // break;
- // case "渤海财险":
- // this.boHaiaccidentForm.agreementId = item.agreementId;
- // let policyHolderInfo = this.tbczcarShow
- // ? this.ownerInfo
- // : this.policyHolderInfo;
- // let productQueryVo = {
- // agreementId: item.agreementId,
- // carnature: this.carInfo.carnature,
- // cimodelclass: this.carInfo.cimodelclass,
- // exhaustScale: this.carInfo.enginedesc,
- // limitLoad: this.carInfo.limitLoad,
- // powerScale: this.carInfo.powerScale,
- // seatCount: this.carInfo.seatCount,
- // vehicleUse: this.carInfo.vehicleUse,
- // policyHolderInfo,
- // insuredPersonInfo: this.bbczcarShow
- // ? this.ownerInfo
- // : this.bbtbcarShow
- // ? policyHolderInfo
- // : this.insuredPersonInfo
- // };
- // this.$api.letter.productQueryboHai(productQueryVo).then(res => {
- // if (res.code == 200) {
- // this.boHaiaccidentDataList = res.data;
- // } else {
- // this.boHaiaccidentDataList = [];
- // }
- // });
- // 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;
- // } else {
- // this.$message.error(res.msg);
- // }
- // });
- // break;
- // case "中国人寿":
- // case "恒邦财险":
- // case "太平财险":
- // case "安盛天平":
- // case "华农财险":
- // case "众安财险":
- // this.$api.letter.pythongetDriving({ agreementId: val }).then(res => {
- // if (res.code == 200) {
- // let data = res.data;
- // data.map(ele => {
- // ele.quantity = 1;
- // return ele;
- // });
- // this[item.cnName + "InsuranceData"] = data;
- // }
- // });
- // break;
- // case "大家财险":
- // this.$api.letter
- // .dajiagetDriving({ agreementId: item.agreementId })
- // .then(res => {
- // if (res.code == 200) {
- // this.dajiaInsuranceData = res.data;
- // }
- // });
- // break;
- // default:
- // break;
- // }
- },
- nonVehicle(data, type) {
- if (data.some(e => e.isDefault)) {
- if (type == "guoRen") {
- this.grcxchange(data.find(ele => ele.isDefault).projectCode);
- this.grcxchangeChild(
- data.find(ele => ele.isDefault).children.find(ele => ele.isDefault)
- .projectCode
- );
- }
- if (type == "ansheng") {
- this.anshengInsuranceChange(
- data.find(ele => ele.isDefault).projectCode
- );
- this.ASDrivingRadio(
- data.find(ele => ele.isDefault).children.find(ele => ele.isDefault)
- );
- }
- if (type == "zijin") {
- this[type + "InsuranceChange"]([
- data.find(ele => ele.isDefault).projectCode
- ]);
- } else {
- this[type + "InsuranceChange"](
- data.find(ele => ele.isDefault).projectCode
- );
- }
- }
- },
- CheckboxChange(select, row) {
- this.accidentalDrivingVo = [];
- select.map(val => {
- this.accidentalDrivingVo.push(val);
- return val;
- });
- },
- //人寿驾意险选择
- RSDrivingChange(row) {
- this.renshouaccidentalDrivingVo = row;
- },
- TkDrivingChange(row) {
- this.taikangaccidentalDrivingVo = row;
- },
- //众安驾意险选择
- ZADrivingChange(row) {
- this.zhonganaccidentalDrivingVo = row;
- },
- RSDrivingRadio(row) {
- this.RSDrivingChange(row);
- },
- //安盛驾意险选择
- ASDrivingRadio(row) {
- this.anshengInsurancetype = row.projectCode;
- this.anshengaccidentalDrivingVo = Object.assign({
- ...this.anshengaccidentalDrivingVo,
- ...row
- });
- // this.anshengaccidentalDrivingVo.projectCode = row.projectCode;
- // this.anshengaccidentalDrivingVo.projectName = row.projectName;
- },
- pinganDetail(row, agreementId) {
- this.pinganDataDetailVisible = false;
- this.$api.letter
- .productDetailsQuery({
- agreementId,
- packageCode: row.code,
- productCode: row.productCode,
- version: row.version
- })
- .then(res => {
- if (res.code == 200) {
- this.pinganDataDetailVisible = true;
- this.pinganDataDetail = res.data;
- } else {
- this.$message.err(res.msg);
- }
- });
- },
- sameItem(array1, array2) {
- return array2.find(item => {
- array1.some(innerItem => innerItem.code === item.code);
- });
- },
- PADrivingCheckbox(event, row, agreementId, index) {
- // const checkedVal = this.accidentFormPA[index].pinganInsuranceDataTable.find(x => x.cameraId === item.cameraId)
- const isSelected = event.some(
- selectedRow => selectedRow.code == row.code
- );
- let isIndex = null;
- let amount = null;
- event.find((selectedRow, selectedIndex) => {
- if (selectedRow.code == row.code) {
- isIndex = selectedIndex;
- }
- });
- if (event.length > 0 && isSelected) {
- this.$api.letter
- .productDetailsQuery({
- agreementId,
- packageCode: row.code,
- productCode: row.productCode,
- version: row.version
- })
- .then(res => {
- if (res.code == 200) {
- res.data.forEach(ele => {
- amount += Number(ele.unitInsuredAmount)
- ? Number(ele.unitInsuredAmount)
- : 0;
- });
- event[isIndex].amount = amount;
- } else {
- this.$message.err(res.msg);
- }
- });
- }
- event.forEach((res, indexOf) => {
- res.projectName = this.accidentFormPA[index].projectName;
- res.projectCode = this.accidentFormPA[index].projectCode;
- res.combineProductType = this.accidentFormPA[index].combineProductType;
- });
- this.pinganaccidentalDrivingVo[index] = event;
- },
- //平安驾意险选择
- PADrivingRadio(row, agreementId, index) {
- // this.accidentPremiumPA = row.premium;
- this.accidentFormPA[index].quantity = "1";
- this.accidentFormPA[index].sellListSize = Number(row.sellListSize);
- this.accidentFormPA[index].premium = row.premium;
- this.accidentFormPA[index].combineProductType = row.combineProductType;
- this.accidentFormPA[index].accidentPremiumPA = row.premium;
- this.accidentFormPA[index].pinganInsurancetype = row.code;
- this.$api.letter
- .productDetailsQuery({
- agreementId,
- packageCode: row.code,
- productCode: row.productCode,
- version: row.version
- })
- .then(res => {
- if (res.code == 200) {
- this.accidentFormPA[index].amount = 0;
- res.data.forEach(e => {
- this.accidentFormPA[index].amount += Number(e.unitInsuredAmount)
- ? Number(e.unitInsuredAmount)
- : 0;
- });
- this.pinganaccidentalDrivingVo[index] = {
- ...row,
- ...this.accidentFormPA[index]
- };
- } else {
- this.$message.err(res.msg);
- this.pinganaccidentalDrivingVo[index] = {
- ...row,
- ...this.accidentFormPA[index]
- };
- }
- });
- },
- ZADrivingRadio(row) {
- this.ZADrivingChange(row);
- },
- // 获取特约
- getClauseData(id, index) {
- this.ownerInfo.owner = this.tbczcarShow;
- this.insuredPersonInfo.owner = this.bbczcarShow;
- this.insuredPersonInfo.insuranceHolder = this.bbtbcarShow;
- let data = {
- 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,
- isExternal: "1",
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- // this.typeDialogIndex = index
- // this.zijinengageListData = [];
- // this.contributingLoading = true;
- // this.contributingState = true;
- // this.hbsubmitdialogVisible = true;
- this.$api.letter
- .getClauseByCompanyId({
- productCode: this.productId,
- companyId: this.totalCompanyList[index].id,
- quoteInfoVo: data
- })
- .then(res => {
- this.contributingLoading = false;
- if (res.data) {
- // res.data.forEach((val) => {
- // val.clauseName = val.clauses;
- // val.clauseContent = val.clausesContext;
- // });
- this.zijinengageListData = res.data;
- }
- });
- },
- // 国任特约选择
- contributingGuoRen(id, index) {
- this.typeDialogIndex = index;
- this.zijinengageListData = [];
- this.contributingLoading = true;
- this.contributingState = true;
- this.hbsubmitdialogVisible = true;
- this.getClauseData(id, index);
- return;
- this.$api.letter.guorenqueryClauseData({ agreementId: id }).then(res => {
- this.contributingLoading = false;
- if (res.data) {
- res.data.forEach(val => {
- val.clauseName = val.clauses;
- val.clauseContent = val.clausesContext;
- });
- this.zijinengageListData = res.data;
- }
- });
- },
- //紫金特约选择
- zijinengageChange(select, row) {
- this.zijinengageList = [];
- if (!this.totalCompanyList[this.typeDialogIndex].zxProgramme) {
- this.totalCompanyList[this.typeDialogIndex].zxProgramme = {
- // 自选方案详情
- description: "",
- drivingList: [],
- jqx: {
- name: "交通事故强制责任险"
- },
- kinds: {
- additional: [],
- main: [],
- service: []
- },
- teyue: []
- };
- }
- // this.totalCompanyList[this.typeDialogIndex].programme = {}
- this.totalCompanyList[this.typeDialogIndex].programme.teyue = [];
- select.map(val => {
- this.zijinengageList.push({
- clauseCode: val.clauseCode,
- clauseName: val.clauseName,
- clauses: val.clauseContent,
- riskCode: val.riskCode
- });
- this.totalCompanyList[
- this.typeDialogIndex
- ].zxProgramme.teyue = this.zijinengageList;
- this.totalCompanyList[
- this.typeDialogIndex
- ].programme.teyue = this.zijinengageList;
- return val;
- });
- },
- zijinengageChangeAll(row) {
- if (row) {
- this.zijinengageChange(row);
- } else {
- this.$refs.expandTablePro.clearSelection();
- this.zijinengageList = [];
- }
- },
- //紫金特约内容编辑
- zijincellDblclick(row, column) {
- this.currentCell = row.index + "," + column.index;
- if (
- !["clauseContent"].includes(column.property) &&
- row.modifyFlag == "1"
- ) {
- setTimeout(() => {
- this.$refs[row.index + "," + column.index].focus();
- });
- }
- },
- tableCellClassName({ row, column, rowIndex, columnIndex }) {
- row.index = rowIndex;
- column.index = columnIndex;
- },
- hideInput() {
- this.currentCell = null;
- },
- updateArray(arr, value, condition) {
- if (condition) {
- arr.push(value);
- } else {
- const index = arr.indexOf(value);
- if (index !== -1) {
- arr.splice(index, 1);
- }
- }
- if (arr.length == 0) {
- this.totalCompanyList.forEach(e => {
- e.disabled = false;
- });
- } else {
- this.totalCompanyList.forEach(e => {
- e.disabled = e.id == arr[0] ? false : true;
- });
- }
- },
- //勾选保险公司
- initchange(e, code, name, index) {
- if (e) {
- this.totalCompanyList[index].checked = e;
- this.getCompanyProgramme(e, code, name, index);
- this.kindListFun();
- let ins = this.totalCompanyList[index].namesimple;
- this.totalCompanyList[
- index
- ].underwritingDescription = this.totalCompanyList[
- index
- ].agreement[0].underwritingDescription;
- if (this.$route.path != "/task/external/externalOrders")
- this.$api.letter
- .getDrivingInsuranceRule({
- agreementId: this.totalCompanyList[index].agreement[0].id,
- seatNum:
- ins == "永诚财险" || ins == "中煤财险"
- ? Number(this.carInfo.seatCount)
- : "",
- ruleUseNature: this.carInfo.carnature,
- ruleSeatNum: Number(this.carInfo.seatCount),
- risk: this.riskList,
- kind: this.kindList,
- ruleThirdPartyInsurance: this.insureList[1].amount,
- cimodelclass: ins == "平安财险" ? this.carInfo.cimodelclass : "",
- isUseCombine: ins == "平安财险" ? "Y" : "",
- tonNumber: ins == "平安财险" ? this.carInfo.limitLoad : "",
- ownAttribute: ins == "平安财险" ? "03" : "",
- useAttribute: ins == "平安财险" ? this.carInfo.carnature : ""
- })
- .then(res => {
- if (res.code == 200) {
- switch (ins) {
- case "永诚财险":
- this.yongchengaccidentDataList = res.data;
- break;
- case "国任财险":
- this.guoRenaccidentDataList = res.data;
- break;
- case "渤海财险":
- this.boHaiaccidentDataList = res.data;
- break;
- case "中煤财险":
- case "平安财险":
- this[name + "InsuranceData"] = res.data;
- break;
- case "紫金财险":
- let data = res.data;
- data.map(ele => {
- ele.quantity = 1;
- return ele;
- });
- this.ziJinInsuranceData = data;
- break;
- case "大家财险":
- this.dajiaInsuranceData = res.data;
- break;
- case "中国人寿":
- case "人保财险":
- case "恒邦财险":
- case "太平财险":
- case "华农财险":
- case "华安财险":
- case "泰山财险":
- case "安盛天平":
- case "众安财险":
- case "太平洋财险":
- res.data.map(ele => {
- ele.quantity = 1;
- return ele;
- });
- this[name + "InsuranceData"] = res.data;
- break;
- }
- this.nonVehicle(res.data, name);
- } else {
- this.$message.error(res.msg);
- }
- });
- // switch (ins) {
- // case "永诚财险":
- // this.accidentForm.agreementId = this.totalCompanyList[
- // index
- // ].agreement[0].id;
- // this.$api.letter
- // .ycgainAccidentList({
- // companyCode: this.totalCompanyList[index].id,
- // agreementId: this.totalCompanyList[index].agreement[0].id,
- // seatNum: Number(this.carInfo.seatCount)
- // })
- // .then(res => {
- // if (res.code == 200) {
- // this.accidentDataList = res.data;
- // } else {
- // this.accidentDataList = [];
- // }
- // });
- // break;
- // case "国任财险":
- // this.guoRenaccidentForm.agreementId = this.totalCompanyList[
- // index
- // ].agreement[0].id;
- // this.$api.letter
- // .syncNonAutoInsGuoren({
- // goodsCode: "",
- // agreementId: this.totalCompanyList[index].agreement[0].id
- // })
- // .then(res => {
- // if (res.code == 200) {
- // this.guoRenaccidentDataList = res.data;
- // } else {
- // this.guoRenaccidentDataList = [];
- // }
- // });
- // break;
- // case "紫金财险":
- // this.$api.letter
- // .zijinqueryVehicleProducts({
- // agreementId: this.totalCompanyList[index].agreement[0].id,
- // 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;
- // } else {
- // this.$message.error(res.msg);
- // }
- // });
- // break;
- // case "安盛天平":
- // this.$api.letter
- // .pythongetDriving({
- // agreementId: this.totalCompanyList[index].agreement[0].id
- // })
- // .then(res => {
- // if (res.code == 200) {
- // let data = res.data;
- // data.map(ele => {
- // ele.departmentProductList.map(val => {
- // val.quantity = 1;
- // });
- // return ele;
- // });
- // this[name + "InsuranceData"] = data;
- // } else {
- // this.$message.error(res.msg);
- // }
- // });
- // break;
- // case "中国人寿":
- // case "恒邦财险":
- // case "太平财险":
- // case "华农财险":
- // case "众安财险":
- // this.$api.letter
- // .pythongetDriving({
- // agreementId: this.totalCompanyList[index].agreement[0].id
- // })
- // .then(res => {
- // if (res.code == 200) {
- // let data = res.data;
- // data.map(ele => {
- // ele.quantity = 1;
- // return ele;
- // });
- // this[name + "InsuranceData"] = data;
- // } else {
- // this.$message.error(res.msg);
- // }
- // });
- // break;
- // case "中煤财险":
- // this.accidentFormZM.agreementId = this.totalCompanyList[
- // index
- // ].agreement[0].id;
- // this.$api.letter
- // .zmGetDrivingPro({
- // agreementId: this.totalCompanyList[index].agreement[0].id,
- // seatNum: this.carInfo.seatCount
- // })
- // .then(res => {
- // if (res.code == 200) {
- // let data = res.data;
- // this[name + "InsuranceData"] = data;
- // } else {
- // this.$message.error(res.msg);
- // }
- // });
- // break;
- // case "大家财险":
- // this.$api.letter
- // .dajiagetDriving({
- // agreementId: this.totalCompanyList[index].agreement[0].id
- // })
- // .then(res => {
- // if (res.code == 200) {
- // this.dajiaInsuranceData = res.data;
- // } else {
- // this.$message.error(res.msg);
- // }
- // });
- // break;
- // default:
- // break;
- // }
- } else {
- }
- },
- clearAccidentForm() {
- this.yongchengInsuranceDataTable = [];
- this.accidentForm = {};
- this.accidentForm.fen = 1;
- this.accidentForm.premium = 0;
- },
- clearAccidentFormPA(index) {
- // this.accidentFormPA[index]={
- // quantity: 1,
- // premium: 0,
- // pingantemplateSelection:'',
- // pinganInsuranceDataTable:[],
- // pinganInsurancetype:'',
- // }
- this.pinganaccidentalDrivingVo[index] = {};
- },
- clearAccidentFormTk() {
- this.taikangaccidentalDrivingVo = {};
- this.taikangInsuranceDataTable = [];
- this.accidentFormTk = {};
- this.accidentFormTk.fen = 1;
- this.accidentFormTk.premium = 0;
- },
- clearAccidentFormGr() {
- (this.guoRenInsuranceDataTable = []),
- (this.guoRenaccidentDataListChild = []);
- this.guoRenaccidentForm = {
- quantity: "1",
- premium: 0
- };
- },
- clearAccidentFormBh() {
- this.bohaiInsuranceDataTable = [];
- this.boHaiaccidentForm = {
- copies: "1",
- premium: 0
- };
- // this.bohaiaccidentalDrivingVo={};
- },
- clearAccidentFormHN() {
- this.huanongaccidentalDrivingVo = {};
- },
- clearAccidentFormHB() {
- this.hengbangaccidentalDrivingVo = {};
- },
- clearAccidentFormTP() {
- this.taipingaccidentalDrivingVo = {};
- },
- clearAccidentFormDJ() {
- this.dajiaaccidentalDrivingVo = {};
- },
- clearAccidentFormZM() {
- this.zhongmeiaccidentalDrivingVo = {};
- },
- clearAccidentFormZJ() {
- this.accidentalDrivingVo = [];
- },
- clearAccidentFormZA() {
- this.zhonganaccidentalDrivingVo = {};
- },
- clearAccidentFormRS() {
- this.renshouaccidentalDrivingVo = {};
- },
- clearAccidentFormAS() {
- this.anshengaccidentalDrivingVo = {};
- },
- //身份证有效期长期
- 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, item) {
- // if (e != 0) {
- // this.sychecked = true;
- // this.systartDate = this.transformTime1();
- // this.syendDate = this.oneYearPast1(this.systartDate);
- // this.kindList.push(item)
- // this.obtainProtocol();
- // } else {
- // let list = this.kindList.filter(item => item.kindCode !== item.kindCode);
- // this.kindList = list;
- // this.obtainProtocol();
- // }
- },
- all() {
- this.$refs.detailsDialog.setBackupVisible(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) {
- // 查找并删除旧的二维码DOM元素
- let element = document.getElementById("qrcode");
- while (element.firstChild) {
- element.removeChild(element.firstChild);
- }
- // 创建新的QRCode实例
- this.qrcode = new QrCode("qrcode", {
- text: text,
- width: this.qrcodeWidth,
- height: this.qrcodeHeight,
- 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);
- }
- });
- },
- signature(companyId) {
- this.$api.letter.pingAnsignEleApply({ companyId }).then(res => {
- if (res.code == 200 && res.data) {
- this.resultMessageImg = process.env.BASE_URL + res.data.resultMessage;
- this.signaturedialogVisible = true;
- // 查找并删除旧的二维码DOM元素
- // let element = document.getElementById("signaturecode");
- // while (element.firstChild) {
- // element.removeChild(element.firstChild);
- // }
- // this.signaturecode = new QRCode("signaturecode", {
- // text: resultMessage,
- // width: 180,
- // height: 180,
- // colorDark: "#000000",
- // colorLight: "#ffffff",
- // correctLevel: QRCode.CorrectLevel.H,
- // });
- // this.signaturedialogVisible = true;
- // this.$api.letter.pingAnsignEleApply({companyId}).then((res) => {
- // if (res.code == 200 && res.data) {
- // // 查找并删除旧的二维码DOM元素
- // let element = document.getElementById("signaturecode");
- // while (element.firstChild) {
- // element.removeChild(element.firstChild);
- // }
- // this.signaturecode = new QRCode("signaturecode", {
- // text: res.data.resultMessage,
- // width: 180,
- // height: 180,
- // colorDark: "#000000",
- // colorLight: "#ffffff",
- // correctLevel: QRCode.CorrectLevel.H,
- // });
- } else {
- this.$message({
- message: res.msg || "暂无数据!",
- type: "warning"
- });
- }
- });
- },
- jqcheckedChange(e) {
- if (e) {
- this.jqstartDate = this.transformTime1();
- this.jqendDate = this.oneYearPast1(this.jqstartDate);
- this.riskList.push({
- riskCode: "0507"
- });
- // this.obtainProtocol();
- } else {
- this.jqstartDate = "";
- this.jqendDate = "";
- let list = this.riskList.filter(item => item.riskCode !== "0507");
- this.riskList = list;
- // this.obtainProtocol();
- }
- },
- sycheckedChange(e) {
- if (e) {
- this.systartDate = this.transformTime1();
- this.syendDate = this.oneYearPast1(this.systartDate);
- this.riskList.push({
- riskCode: "0510"
- });
- // this.obtainProtocol();
- } else {
- this.systartDate = "";
- this.syendDate = "";
- let list = this.riskList.filter(item => item.riskCode !== "0510");
- this.riskList = list;
- // this.obtainProtocol();
- }
- },
- //订单生成后保存接口
- preserveOrderStageProcessing(type, btnLoading) {
- // console.log(this.editorInfo);
- // debugger;
- //同车主的选择框
- this[btnLoading] = true;
- if (this.tbczcarShow && this.imageList2.length > 0) {
- //投保人同车主
- this.imageList3 = JSON.parse(JSON.stringify(this.imageList2));
- if (this.imageList3.length == 1) {
- this.imageList3[0].imageType = this.imageList3[0].imageType.includes(
- "C0"
- )
- ? "C03"
- : "D03";
- } else {
- this.imageList3.forEach(e => {
- e.imageType = e.imageType.includes("C0") ? "C03" : "D03";
- });
- }
- }
- if (this.bbczcarShow && this.imageList2.length > 0) {
- //被保人同车主
- this.imageList4 = JSON.parse(JSON.stringify(this.imageList2));
- if (this.imageList4.length == 1) {
- this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- "C0"
- )
- ? "C04"
- : "D04";
- } else {
- this.imageList4.forEach(e => {
- e.imageType = e.imageType.includes("C0") ? "C04" : "D04";
- });
- }
- }
- if (this.bbtbcarShow && this.imageList3.length > 0) {
- //被保人同投保人
- this.imageList4 = JSON.parse(JSON.stringify(this.imageList3));
- if (this.imageList4.length == 1) {
- this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- "C0"
- )
- ? "C04"
- : "D04";
- } else {
- this.imageList4.forEach(e => {
- e.imageType = e.imageType.includes("C0") ? "C04" : "D04";
- });
- }
- }
- //日期长度<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 &&
- this.carInfo.transferDate.length < 10 &&
- this.carInfo.transferDate !== ""
- ) {
- this.carInfo.transferDate = formatDate(this.carInfo.transferDate);
- }
- //日期长度<10处理
- //提交身份证/驾驶证 ——————————————————
- this.policyHolderInfo.owner = this.tbczcarShow;
- this.insuredPersonInfo.owner = this.bbczcarShow;
- this.insuredPersonInfo.insuranceHolder = this.bbtbcarShow;
- if (typeof this.ownerInfo.provinceData == "string") {
- this.ownerInfo.provinceData = [];
- }
- if (typeof this.insuredPersonInfo.provinceData == "string") {
- this.insuredPersonInfo.provinceData = [];
- }
- if (typeof this.policyHolderInfo.provinceData == "string") {
- this.policyHolderInfo.provinceData = [];
- }
- if (this.$route.query.data) {
- const mergedArray = [
- ...this.imageList1,
- ...this.imageList2,
- ...this.imageList3,
- ...this.imageList4,
- ...this.imageList5,
- ...this.imageList6
- ];
- if (mergedArray.length > 0) {
- let imageparam = {
- imageList: mergedArray,
- quoteNo: this.$route.query.data.quoteno
- };
- this.$api.letter.uploadImages(imageparam).then(responses => {
- // this.$refs.imageDialog.imageEcho(this.$route.query.data.quoteno)
- this.imageEcho(this.$route.query.data.quoteno); // 获取图片
- });
- }
- this.editorInfo.applyinfo.owner = this.tbczcarShow;
- this.editorInfo.insureinfo.owner = this.bbczcarShow;
- this.editorInfo.insureinfo.insuranceHolder = this.bbtbcarShow;
- let params = {
- orderNo: this.$route.query.data.orderno,
- ...this.policyNumberForm,
- agreementId: this.isLetter3agreementId,
- stageFlag: type,
- jqstartdate: this.jqstartDate,
- jqenddate: this.jqendDate,
- systartdate: this.systartDate,
- syenddate: this.syendDate,
- kind: this.kindList,
- risk: this.riskList,
- kindList: this.kindList,
- riskList: this.riskList,
- carInfo: this.carInfo,
- insuredPersonInfo: this.insuredPersonInfo,
- ownerInfo: this.ownerInfo,
- policyHolderInfo: this.policyHolderInfo,
- isExternal: "1",
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- // debugger;
- this.$api.letter.updateExternalOrder(params).then(res => {
- if (res.code == "200") {
- this[btnLoading] = false;
- this.$message({
- message: res.msg || "编辑成功",
- type: "success"
- });
- this.add();
- } else {
- this[btnLoading] = false;
- this.$message.error(res.msg);
- }
- });
- } else {
- this.ownerInfo.owner = this.tbczcarShow;
- this.insuredPersonInfo.owner = this.bbczcarShow;
- this.insuredPersonInfo.insuranceHolder = this.bbtbcarShow;
- 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,
- isExternal: "1",
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- this.$api.letter.generateOrder(param).then(res => {
- if (res.code == "200") {
- //上传图片
- const mergedArray = [
- ...this.imageList1,
- ...this.imageList2,
- ...this.imageList3,
- ...this.imageList4,
- ...this.imageList5,
- ...this.imageList6
- ];
- if (mergedArray.length > 0) {
- let imageparam = {
- imageList: mergedArray,
- quoteNo: res.data.quoteno
- };
- this.$api.letter.uploadImages(imageparam).then(responses => {
- this.imageEcho(res.data.quoteno); // 获取图片
- // this.$refs.imageDialog.imageEcho(res.data.quoteno)
- });
- }
- let params1 = {
- orderNo: res.data.orderno,
- ...this.policyNumberForm,
- agreementId: this.isLetter3agreementId,
- stageFlag: type,
- nowCostsId: this.nowCostsId
- };
- // debugger
- this.$api.letter.saveSubOrder(params1).then(res => {
- if (res.code == "200") {
- this[btnLoading] = false;
- this.$message({
- message: res.msg || "录入成功",
- type: "success"
- });
- this.add();
- } else {
- this[btnLoading] = false;
- this.$message.error(res.msg);
- }
- });
- } else {
- this[btnLoading] = false;
- this.$message.error(res.msg);
- }
- });
- }
- // document.getElementById("company").scrollIntoView();
- this.imageUploadShow = true;
- },
- policyHolderInfovalidate() {
- let _this = this;
- // tbczcarShow 同车主
- if (_this.tbczcarShow == true) {
- // 投保人信息 policyHolderInfo
- _this.policyHolderInfo = { ..._this.ownerInfo };
- } else {
- _this.$refs["policyHolderInfo"].validate(valid2 => {
- if (valid2) {
- } else {
- document.getElementById("toubaor").scrollIntoView();
- _this.$message({ message: "请检查投保人信息", type: "warning" });
- }
- });
- }
- this.bbtbcarShowChange();
- this.bbczcarShowChange();
- },
- validateCarCode() {
- this.validateCarCodeShow = true;
- if (this.myQrCode) {
- this.myQrCode.clear();
- }
- this.$nextTick(() => {
- this.myQrCode = new QrCode(this.$refs.myQrcode, {
- // text 需要转二维码的内容 可以是文本也可以是一个链接 是链接会直接跳走
- text: this.vehicleInspectionUrl,
- width: 200,
- height: 200,
- colorDark: "#333", //二维码颜色
- colorLight: "#fff", //二维码背景颜色
- correctLevel: QrCode.CorrectLevel.L //容错率,L/M/H
- });
- });
- },
- //报价
- quote(index) {
- let starttime = new Date(this.carInfo.registerDate);
- let endtime = new Date(this.carInfo.issueDate);
- if (endtime < starttime) {
- this.$message({ message: "发证日期早于初登日期", type: "error" });
- return;
- }
- this.policyHolderInfovalidate();
- this.$refs["carInfo"].validate(valid => {
- if (valid) {
- var _this = this;
- // this.policyHolderInfovalidate()
- if (_this.tbczcarShow == true) {
- _this.policyHolderInfo = { ..._this.ownerInfo };
- }
- _this.$refs["ownerInfo"].validate(valid1 => {
- if (valid1) {
- if (_this.bbczcarShow == true) {
- _this.insuredPersonInfo = { ..._this.ownerInfo };
- }
- if (_this.bbtbcarShow == true) {
- _this.insuredPersonInfo = { ..._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.totalCompanyList[index].isTaxSource != 1 &&
- this.totalCompanyList[index].agreementId == ""
- ) {
- this.$message.warning("请选择协议");
- return;
- }
- this.calculateLoading = true;
- setInterval(() => {
- this.calculateLoading = false;
- }, 3000);
- _this.totalCompanyList[index].kindList = [];
- let kinds = [
- ..._this.totalCompanyList[index].programme.kinds.main,
- ..._this.totalCompanyList[index].programme.kinds.additional,
- ..._this.totalCompanyList[index].programme.kinds.service
- ];
- kinds.forEach(value => {
- _this.totalCompanyList[index].kindList.push({
- amount: value.amount,
- serviceTimes: value.amount,
- unitAmount: value.amount,
- kindCode: value.kindCode,
- kindName: value.kindName
- });
- });
- 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.totalCompanyList.forEach((val) => {
- // if (val.checked) {
- // console.log(val.programme, 'programmeeeeeeee')
- // let kinds = [...val.programme.kinds.additional, ...val.programme.kinds.main, ...val.programme.kinds.service]
- // kinds.forEach((value) => {
- // _this.kindList.push({
- // amount: value.amount,
- // kindCode: value.kindCode,
- // kindName: value.kindName
- // })
- // })
- // }
- // })
- _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" &&
- // (ele.kindCode == "TY1" ||
- // ele.kindCode == "TY2" ||
- // ele.kindCode == "TY3" ||
- // ele.kindCode == "TY4")
- // ) {
- // _this.kindList.push({
- // serviceTimes: _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(index);
- // } 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;
- }
- });
- },
- quote1() {
- let starttime = new Date(this.carInfo.registerDate);
- let endtime = new Date(this.carInfo.issueDate);
- if (endtime < starttime) {
- this.$message({ message: "发证日期早于初登日期", type: "error" });
- return;
- }
- if (
- this.carInfo.licenseNo.length === 8 &&
- this.carInfo.energyType === "0"
- ) {
- this.$message.error("能源类型错误,请重新选择!");
- return;
- }
- this.policyHolderInfovalidate();
- var _this = this;
- this.$refs["carInfo"].validate(valid => {
- if (valid) {
- // this.policyHolderInfovalidate()
- if (_this.tbczcarShow == true) {
- _this.policyHolderInfo = { ..._this.ownerInfo };
- }
- _this.$refs["ownerInfo"].validate(valid1 => {
- if (valid1) {
- if (_this.bbczcarShow == true) {
- _this.insuredPersonInfo = { ..._this.ownerInfo };
- }
- if (_this.bbtbcarShow == true) {
- _this.insuredPersonInfo = { ..._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 {
- this.calculateLoading = true;
- setInterval(() => {
- this.calculateLoading = false;
- }, 3000);
- try {
- this.totalCompanyList.forEach((val, index) => {
- if (val.checked) {
- val.kindList = [];
- if (!val.programme) {
- // throw Error("没有方案")
- return;
- }
- let kinds = [
- ...val.programme.kinds.main,
- ...val.programme.kinds.additional,
- ...val.programme.kinds.service
- ];
- kinds.forEach(value => {
- this.totalCompanyList[index].kindList.push({
- amount: value.amount,
- serviceTimes: value.amount,
- unitAmount: value.amount,
- kindCode: value.kindCode,
- kindName: value.kindName
- });
- });
- if (val.isTaxSource != 1 && val.agreementId == "") {
- this.$message.warning("请选择协议");
- throw Error("请选择协议");
- }
- }
- });
- } catch (error) {
- return console.log(error);
- }
- 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"
- });
- } 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;
- }
- });
- },
- kindListFun(index) {
- var _this = this;
- _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" &&
- // (ele.kindCode == "TY1" ||
- // ele.kindCode == "TY2" ||
- // ele.kindCode == "TY3" ||
- // ele.kindCode == "TY4")
- // ) {
- // _this.kindList.push({
- // serviceTimes: _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 = [];
- }
- }
- },
- //动态函数
- ToolClickFun(MethodName, Parameter, companyId, companyName, index) {
- this[`${MethodName}`](Parameter, companyId, companyName, index);
- },
- //更新报价历史
- QuotationHistory() {
- let params = {
- orderNo: this.orderno,
- orderStatus: ""
- };
- this.$api.letter.queryQuoteHistory(params).then(res => {
- res.data.forEach(item => {
- if (item.accidentInfo) {
- item.accidentInfo.constructor === Object
- ? [item.accidentInfo]
- : item.accidentInfo;
- }
- });
- this.HistoryList = res.data;
- });
- },
- open2(Name, Msg) {
- this.$notify.info({
- title: Name,
- dangerouslyUseHTMLString: true,
- type: "warning",
- message: Msg,
- customClass: "customNotifyClass",
- duration: 7000
- });
- },
- open3(Name, Msg) {
- this.$notify.info({
- title: Name,
- dangerouslyUseHTMLString: true,
- type: "warning",
- message: `<p>${Msg.replace(/\n/g, "<br>")}</p>`,
- customClass: "customNotifyClass",
- duration: 7000
- });
- },
- openPredictInfo(Name, Msg) {
- this.redictInfoMsg = Msg;
- this.redictInfodialogVisible = true;
- },
- //订单生成前数据处理事件
- OrderStageProcessing(index) {
- if (this.tbczcarShow && this.imageList2.length > 0) {
- //投保人同车主
- this.imageList3 = JSON.parse(JSON.stringify(this.imageList2));
- if (this.imageList3.length == 1) {
- if (this.imageList3[0].imageType.includes("C0")) {
- this.imageList3[0].imageType = this.imageList3[0].imageType.includes(
- "C0"
- )
- ? "C03"
- : "D03";
- }
- if (this.imageList3[0].imageType.includes("Y0")) {
- this.imageList3[0].imageType = this.imageList3[0].imageType.includes(
- "Y0"
- )
- ? "Y03"
- : "";
- }
- } else {
- this.imageList3.forEach(e => {
- e.imageType = e.imageType.includes("C0") ? "C03" : "D03";
- });
- }
- }
- if (this.bbczcarShow && this.imageList2.length > 0) {
- //被保人同车主
- this.imageList4 = JSON.parse(JSON.stringify(this.imageList2));
- if (this.imageList4.length == 1) {
- // this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- // "C0"
- // )
- // ? "C04"
- // : "D04";
- if (this.imageList4[0].imageType.includes("C0")) {
- this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- "C0"
- )
- ? "C04"
- : "D04";
- }
- if (this.imageList4[0].imageType.includes("Y0")) {
- this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- "Y0"
- )
- ? "Y04"
- : "";
- }
- } else {
- this.imageList4.forEach(e => {
- e.imageType = e.imageType.includes("C0") ? "C04" : "D04";
- });
- }
- // if (this.imageList4.length == 1) {
- // this.imageList4[0].imageType = "C04";
- // }
- // else {
- // this.imageList4[0].imageType = "C04";
- // this.imageList4[1].imageType = "D04";
- // }
- }
- if (this.bbtbcarShow && this.imageList3.length > 0) {
- //被保人同投保人
- this.imageList4 = JSON.parse(JSON.stringify(this.imageList3));
- if (this.imageList4.length == 1) {
- // this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- // "C0"
- // )
- // ? "C04"
- // : "D04";
- if (this.imageList4[0].imageType.includes("C0")) {
- this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- "C0"
- )
- ? "C04"
- : "D04";
- }
- if (this.imageList4[0].imageType.includes("Y0")) {
- this.imageList4[0].imageType = this.imageList4[0].imageType.includes(
- "Y0"
- )
- ? "Y04"
- : "";
- }
- } else {
- this.imageList4.forEach(e => {
- e.imageType = e.imageType.includes("C0") ? "C04" : "D04";
- });
- }
- // if (this.imageList4.length == 1) {
- // this.imageList4[0].imageType = "C04";
- // } else {
- // this.imageList4[0].imageType = "C04";
- // this.imageList4[1].imageType = "D04";
- // }
- }
- //日期长度<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 &&
- this.carInfo.transferDate.length < 10 &&
- this.carInfo.transferDate !== ""
- ) {
- this.carInfo.transferDate = formatDate(this.carInfo.transferDate);
- }
- //日期长度<10处理
- //提交身份证/驾驶证 ——————————————————
- this.policyHolderInfo.owner = this.tbczcarShow;
- this.insuredPersonInfo.owner = this.bbczcarShow;
- this.insuredPersonInfo.insuranceHolder = this.bbtbcarShow;
- if (typeof this.ownerInfo.provinceData == "string") {
- this.ownerInfo.provinceData = [];
- }
- if (typeof this.insuredPersonInfo.provinceData == "string") {
- this.insuredPersonInfo.provinceData = [];
- }
- if (typeof this.policyHolderInfo.provinceData == "string") {
- this.policyHolderInfo.provinceData = [];
- }
- let param = {
- userId: this.userId,
- quoteno: this.quoteno,
- orderNo: this.orderno,
- carInfo: this.carInfo,
- insuredPersonInfo: this.insuredPersonInfo,
- ownerInfo: this.ownerInfo,
- policyHolderInfo: this.policyHolderInfo,
- riskList: this.riskList,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm,
- productId: this.productId
- };
- this.$api.letter[this.apiInterfaceName](param).then(res => {
- if (res.code == "200") {
- //上传图片
- const mergedArray = [
- ...this.imageList1,
- ...this.imageList2,
- ...this.imageList3,
- ...this.imageList4,
- ...this.imageList5,
- ...this.imageList6
- ];
- if (mergedArray.length > 0) {
- let imageparam = {
- imageList: mergedArray,
- quoteNo: res.data.quoteno
- };
- this.$api.letter.uploadImages(imageparam).then(responses => {
- this.imageEcho(res.data.quoteno); // 获取图片
- // this.$refs.imageDialog.imageEcho(res.data.quoteno)
- });
- }
- this.quoteno = res.data.quoteno;
- this.orderno = res.data.orderno;
- if (index >= 0) {
- this.totalCompanyList[index].quoteCode = 1;
- this.ToolClickFun(
- this.totalCompanyList[index].cnName,
- index,
- this.totalCompanyList[index].id,
- this.totalCompanyList[index].namesimple
- );
- } else {
- this.totalCompanyList.map((ele, index) => {
- if (ele.checked) {
- //动态调用报价接口
- if (ele.programme) {
- ele.quoteCode = 1;
- ele.orderstatus = 0;
- this.ToolClickFun(ele.cnName, index, ele.id, ele.namesimple);
- }
- }
- });
- }
- } else if (res.code == 1001) {
- this.$confirm("是否生成新订单?", "提示", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning"
- })
- .then(() => {
- this.orderno = "";
- this.quoteno = "";
- this.quote(index);
- })
- .catch(() => { });
- } else {
- this.$message({ message: res.msg, type: "warning" });
- }
- });
- // document.getElementById("company").scrollIntoView();
- this.imageUploadShow = true;
- },
- // 泰康报价--11
- taikang(num, id, namesimple) {
- this.quoteInsurance(
- num,
- id,
- namesimple,
- this.totalCompanyList[num].apiType
- );
- },
- // 平安报价
- pingan(num, id) {
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let accidentalDrivingVo = [];
- if (this.pinganaccidentalDrivingVo) {
- accidentalDrivingVo = this.pinganaccidentalDrivingVo;
- // accidentalDrivingVo = Object.assign({
- // ...this.pinganaccidentalDrivingVo,
- // ...this.accidentFormPA,
- // });
- }
- let params = {
- accidentalDrivingVo,
- orderNo: this.orderno,
- companyId: id,
- agreementId: this.totalCompanyList[num].agreementId,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList,
- productId: this.productId
- };
- this.$api.letter.pinganquote(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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.pingan(num, id);
- });
- } else if (!!res.data) {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- this.QuotationHistory();
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- });
- },
- //永安报价
- yongan(num, id) {
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let params = {
- orderNo: this.orderno,
- companyId: id,
- agreementId: this.totalCompanyList[num].agreementId,
- kindList: this.totalCompanyList[num].kindList,
- riskList: this.riskList,
- productId: this.productId
- };
- 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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null
- };
- return this.$api.letter[this.apiInterfaceName](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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](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 {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- 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 accidentalDrivingVo = {};
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let type = this.totalCompanyList[num].apiType;
- let api = type == 2 ? "pythonquote" : "zhongmeiquote";
- // if (this.accidentFormZM.projectCode) {
- // accidentalDrivingVo = {
- // projectCode: this.accidentFormZM.projectCode,
- // projectName: this.accidentFormZM.projectName,
- // quantity: this.accidentFormZM.quantity
- // ? this.accidentFormZM.quantity
- // : "1"
- // };
- // }
- if (this.accidentFormZM.projectCode) {
- accidentalDrivingVo = {
- ...this.zhongmeiInsuranceData.find(
- e => e.projectCode == this.accidentFormZM.projectCode
- ),
- quantity: this.accidentFormZM.quantity
- ? this.accidentFormZM.quantity
- : "1"
- };
- }
- accidentalDrivingVo =
- this.totalCompanyList[num].programme.drivingList[0] || {};
- let params = {
- accidentalDrivingVo,
- orderNo: this.orderno,
- companyId: id,
- agreementId: this.totalCompanyList[num].agreementId,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList,
- productId: this.productId
- };
- this.$api.letter.zhongmeiquote(params).then(res => {
- // this.$api.letter[api](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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.zhongmei(num, id);
- });
- } else if (!!res.data) {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- this.QuotationHistory();
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- });
- },
- // 大家报价
- dajia(num, id) {
- // let accidentalDrivingVo=[]
- // if(this.dajiaaccidentalDrivingVo){
- // accidentalDrivingVo.rideRiskCode=this.dajiaaccidentalDrivingVo.schemeNo;
- // accidentalDrivingVo.rideRiskName=this.dajiaaccidentalDrivingVo.cvrgName;
- // accidentalDrivingVo.quantity=this.dajiaaccidentalDrivingVo.quantity;
- // }
- let type = this.totalCompanyList[num].apiType;
- let api = type == 2 ? "pythonquote" : "dajiaquote";
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let accidentalDrivingVo =
- this.totalCompanyList[num].programme.drivingList[0] || {};
- let params = {
- accidentalDrivingVo: accidentalDrivingVo,
- orderNo: this.orderno,
- companyId: id,
- agreementId: this.totalCompanyList[num].agreementId,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList || [],
- risks: this.riskList || []
- };
- this.$api.letter[api](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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.dajia(num, id);
- });
- } else if (!!res.data) {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- this.QuotationHistory();
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- });
- },
- //华泰报价
- huatai(num, id) {
- let type = this.totalCompanyList[num].apiType;
- let api = type == 2 ? "pythonquote" : "huataiquote";
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let params = {
- accidentalDrivingVo: {},
- orderNo: this.orderno,
- companyId: id,
- agreementId: this.totalCompanyList[num].agreementId,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList || [],
- risks: this.riskList || []
- };
- this.$api.letter[api](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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm,
- kinds: this.totalCompanyList[num].kindList || [],
- risks: this.riskList || []
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.huatai(num, id);
- });
- } else if (!!res.data) {
- this.totalCompanyList[num].quoteCode = 200;
- this.totalCompanyList[num].result = res.data;
- this.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- this.QuotationHistory();
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- });
- },
- //紫金报价
- zijin(num, id) {
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let params = {
- accidentalDrivingVo:
- this.totalCompanyList[num].programme.drivingList || [],
- orderNo: this.orderno,
- companyId: id,
- agreementId: this.totalCompanyList[num].agreementId,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- coefficient: this.totalCompanyList[num].coefficient,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList,
- productId: this.productId
- };
- 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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.zijin(num, id);
- });
- } else if (!!res.data) {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- this.QuotationHistory();
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- });
- },
- yangguang(num, id) {
- let accidentalDrivingVo = {};
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- accidentalDrivingVo =
- this.totalCompanyList[num].programme.drivingList[0] || {};
- let params = {
- accidentalDrivingVo,
- orderNo: this.orderno,
- companyId: id,
- cqryCdeJq: this.cqryCdeJq,
- cqryCdeSy: this.cqryCdeSy,
- renewalCodeJq: this.renewalCodeJq,
- renewalCodeSy: this.renewalCodeSy,
- coefficient: this.totalCompanyList[num].coefficient,
- agreementId: this.totalCompanyList[num].agreementId,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList
- };
- this.$api.letter.yangGuangquote(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.totalCompanyList[num].kindList,
- riskList: this.riskList,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.yangguang(num, id);
- });
- } else if (res.code == "200") {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- 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 if (res.code == "500") {
- // this.iscCrownerShow=res.msg.indexOf("车主地区自动解析失败")!=-1?true:false
- // this.isInsuredShow=res.msg.indexOf("被保人地区自动解析失败")!=-1?true:false
- // this.isApplicantShow=res.msg.indexOf("投保人地区自动解析失败")!=-1?true:false
- // this.ownerInfo.provinceData= this.iscCrownerShow?[]: this.ownerInfo.provinceData
- // this.insuredPersonInfo.provinceData= this.isInsuredShow?[]: this.insuredPersonInfo.provinceData
- // this.policyHolderInfo.provinceData= this.isApplicantShow?[]: this.policyHolderInfo.provinceData
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- });
- },
- //永诚报价
- yongcheng(num, id) {
- this.iscCrownerShow = false;
- this.isInsuredShow = false;
- this.isApplicantShow = false;
- let accidentalDrivingVo = {};
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- if (this.accidentForm.projectCode) {
- let data = this.yongchengaccidentDataList.find(
- val => val.projectCode == this.yongchengtemplateSelection
- );
- accidentalDrivingVo = {
- ...data,
- quantity: this.accidentForm.quantity ? this.accidentForm.quantity : ""
- };
- }
- accidentalDrivingVo =
- this.totalCompanyList[num].programme.drivingList[0] || {};
- 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,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList
- };
- 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.totalCompanyList[num].kindList,
- riskList: this.riskList,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.yongcheng(num, id);
- });
- } else if (res.code == "200") {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- 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 if (res.code == "500") {
- // this.iscCrownerShow=res.msg.indexOf("车主地区自动解析失败")!=-1?true:false
- // this.isInsuredShow=res.msg.indexOf("被保人地区自动解析失败")!=-1?true:false
- // this.isApplicantShow=res.msg.indexOf("投保人地区自动解析失败")!=-1?true:false
- // this.ownerInfo.provinceData= this.iscCrownerShow?[]: this.ownerInfo.provinceData
- // this.insuredPersonInfo.provinceData= this.isInsuredShow?[]: this.insuredPersonInfo.provinceData
- // this.policyHolderInfo.provinceData= this.isApplicantShow?[]: this.policyHolderInfo.provinceData
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- });
- },
- //国任报价
- guoRen(num, id) {
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let guoRenSpecialAgreementVo = [];
- this.zijinengageList.forEach(val => {
- guoRenSpecialAgreementVo.push({
- clauses: val.clauseName,
- clausesContext: val.clauses,
- clauseCode: val.clauseCode,
- riskCode: val.riskCode,
- riskName: val.riskName
- });
- });
- let accidentalDrivingVo = {};
- if (this.guoRenaccidentForm.goodsCode) {
- accidentalDrivingVo = this.guoRenaccidentalDrivingVo;
- }
- accidentalDrivingVo =
- this.totalCompanyList[num].programme.drivingList[0] || {};
- 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,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- guoRenSpecialAgreementVo,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList,
- productId: this.productId
- };
- this.$api.letter.pythonquote(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.totalCompanyList[num].kindList,
- riskList: this.riskList,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.guoRen(num, id);
- });
- } else if (res.code == "200") {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- 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;
- }
- });
- },
- //渤海报价
- bohai(num, id) {
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- let accidentalDrivingVo = {};
- if (this.boHaiaccidentForm.projectCode) {
- accidentalDrivingVo = {
- // packageCode: this.boHaiaccidentForm.packageCode,
- // productCode: this.boHaiaccidentDataList.find(
- // (e) => e.packageCode == this.boHaiaccidentForm.packageCode
- // ).productCode,
- // copies: this.boHaiaccidentForm.copies,
- ...this.boHaiaccidentDataList.find(
- e => e.projectCode == this.boHaiaccidentForm.projectCode
- ),
- quantity: this.boHaiaccidentForm.copies
- ? this.boHaiaccidentForm.copies
- : "1"
- };
- }
- accidentalDrivingVo =
- this.totalCompanyList[num].programme.drivingList[0] || {};
- 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,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList,
- risks: this.riskList,
- userId: this.userId
- };
- this.$api.letter.bohaiquote(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,
- vehicleAndVesselTax: this.vehicleAndVesselTaxForm
- };
- return this.$api.letter[this.apiInterfaceName](param).then(res => {
- this.bohai(num, id);
- });
- } else if (res.code == "200") {
- if (res.data.warnMessageList && 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- 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" : "";
- if (namesimple == "诚泰财险") {
- api = "pythonquote";
- }
- let ccidenttype = this.totalCompanyList[num].cnName;
- let isTaxSource = this.totalCompanyList[num].isTaxSource;
- // accidentalDrivingVo = this.totalCompanyList[num].programme.drivingList[0] || {}
- let params = {
- // accidentalDrivingVo: this[ccidenttype + "accidentalDrivingVo"],
- accidentalDrivingVo:
- this.totalCompanyList[num].programme.drivingList[0] || {},
- orderNo: this.orderno,
- companyId: id,
- userId: this.userId,
- agreementId: this.totalCompanyList[num].agreementId,
- isTaxSource: isTaxSource == 1 ? isTaxSource : null,
- kinds: this.totalCompanyList[num].kindList || [],
- risks: this.riskList || [],
- productId: this.productId,
- // coefficient:this.totalCompanyList[num].coefficient,
- };
- if (namesimple == "中国人寿" && this.lastCompanyId) {
- params.discount = this.totalCompanyList[num].discount;
- params.lastCompanyId = this.lastCompanyId;
- }
- if (
- namesimple == "华农财险" &&
- this.huanongaccidentalDrivingVo.quantity
- ) {
- params.accidentalDrivingVo.quantity = this.accidentFormHN.quantity;
- // params.accidentalDrivingVo.allQuantity = this.accidentFormHN.allQuantity;
- }
- if (namesimple == "诚泰财险" && this.totalCompanyList[num].result.initialProposalDiscount) {
- params.discount = this.totalCompanyList[num].result.expectedDiscount;
- params.coefficient = this.totalCompanyList[num].result.pricingCoefficient;
- }
- this.$api.letter[api](params).then(res => {
- this.totalCompanyList[num].msg = res.msg;
- switch (namesimple) {
- case "安盛天平":
- case "诚泰财险":
- case "泰康财险":
- case "中国人寿":
- case "人保财险":
- case "恒邦财险":
- case "华农财险":
- case "华安财险":
- case "泰山财险":
- case "太平财险":
- case "太平洋财险":
- if (!!res.data) {
- if (
- res.data.warnMessageList &&
- res.data.warnMessageList.length > 0
- ) {
- this.totalCompanyList[num].lastYearMsg = "";
- let dat = res.data.warnMessageList;
- dat.map(ele => {
- this.totalCompanyList[num].lastYearMsg += ele + "<br>";
- });
- }
- if (res.data.predictInfo && res.data.predictInfo.length > 0) {
- this.totalCompanyList[num].predictInfo = res.data.predictInfo;
- }
- this.totalCompanyList[num].quoteCode = 200;
- this.totalCompanyList[num].result = res.data;
- this.vehicleInspectionUrl = this.totalCompanyList[
- num
- ].result.vehicleInspectionUrl;
- if (namesimple == "中国人寿" && res.data.companyId) {
- this.lastCompanyId = res.data.companyId;
- }
- this.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- this.QuotationHistory();
- } else {
- this.totalCompanyList[num].quoteCode = "3";
- this.totalCompanyList[num].msg = res.msg;
- return;
- }
- break;
- case "众安财险":
- if (!!res.data) {
- if (res.data.tips == "需要验车") {
- this.$notify.error({
- title: "通融单",
- duration: 0,
- dangerouslyUseHTMLString: true,
- message: `<div> ${res.data.warnMessageList
- .map(item => {
- return `<p>${item}</p>`;
- })
- .join("")}
- </div>`
- });
- }
- if (
- res.data.warnMessageList &&
- 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.jqstartDate = res.data.startDateJq;
- this.jqendDate = res.data.endDateJq;
- this.systartDate = res.data.startDateSy;
- this.syendDate = res.data.endDateSy;
- 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
- );
- },
- //人保
- renbao(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
- );
- },
- //太平洋
- taipingyang(num, id, namesimple) {
- this.quoteInsurance(
- num,
- id,
- namesimple,
- this.totalCompanyList[num].apiType
- );
- },
- //诚泰
- chengtai(num, id, namesimple) {
- this.quoteInsurance(
- num,
- id,
- namesimple,
- this.totalCompanyList[num].apiType
- );
- },
- //太平
- taiping(num, id, namesimple) {
- this.quoteInsurance(
- num,
- id,
- namesimple,
- this.totalCompanyList[num].apiType
- );
- },
- //华农
- huanong(num, id, namesimple) {
- this.quoteInsurance(
- num,
- id,
- namesimple,
- this.totalCompanyList[num].apiType
- );
- },
- huaan(num, id, namesimple) {
- this.quoteInsurance(
- num,
- id,
- namesimple,
- this.totalCompanyList[num].apiType
- );
- },
- taishan(num, id, namesimple) {
- this.quoteInsurance(
- num,
- id,
- namesimple,
- this.totalCompanyList[num].apiType
- );
- },
- capTypedictTag(val, option) {
- if (option.find(item => item.dictValue == val)) {
- return option.find(item => item.dictValue == val).dictTag;
- } else {
- return "-";
- }
- },
- // 爬虫对接
- 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;
- });
- if (
- (data.carinfo.carnature && data.carinfo.carnature == "02") ||
- data.carinfo.carnature == "非营业"
- ) {
- data.carinfo.vehicleUse = this.capTypedictTag(
- data.carinfo.vehicleUse,
- this.outOfBusinessVehicleUseoptions
- );
- } else {
- data.carinfo.vehicleUse = this.capTypedictTag(
- data.carinfo.vehicleUse,
- this.businessVehicleUseoptions
- );
- }
- data.carinfo.carnature = this.capTypedictTag(
- data.carinfo.carnature,
- this.natureOfVehicleUseoptions
- );
- data.carinfo.cartype = data.carinfo.cartype
- ? this.capTypedictTag(
- data.carinfo.cartype,
- this.trafficManagementVehicleTypeoptions
- )
- : "";
- data.carinfo.cimodelclass = data.carinfo.cimodelclass
- ? this.capTypedictTag(
- data.carinfo.cimodelclass,
- this.vehicleTypeoptions
- )
- : "";
- data.carinfo.energyType = data.carinfo.energyType
- ? this.capTypedictTag(
- data.carinfo.energyType,
- this.energyTypeoptions
- )
- : "";
- this.queryOrders = data;
- //赋值费用信息
- // this.feeDetailInfo=data.orderFeeResult;
- }
- });
- this.$refs.detailsDialog.setBackupVisible(true);
- },
- imageUpload() {
- this.imageUploaddialogVisible = true;
- // this.$refs.imageDialog.setBackupVisible(true);
- },
- tabLiScroll(id, idx) {
- this.tabLiIndex = idx;
- document.getElementById(id).scrollIntoView({ behavior: "smooth" });
- },
- //影像上传
- drivingupload(file, imageIdList, imgurl, type) {
- let that = this;
- let size = file.size / 1024 / 1024 < 5;
- const isJPG =
- file.raw.type === "image/jpeg" || file.raw.type === "image/png";
- if (!size) {
- this.$message.error("上传图片大小不能超过 5MB!");
- this[imgurl] = [];
- return false;
- }
- if (!isJPG) {
- this.$message.error("上传图片只能是 JPG、PNG 格式!");
- this[imgurl] = [];
- return false;
- }
- 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
- });
- }
- }
- });
- },
- imageEcho(quotenos) {
- //影像查询
- this.$api.letter.findByQuoteNo(quotenos).then(res => {
- if (res.code == "200") {
- this.imageList1 = [];
- this.imageList2 = [];
- this.imageList3 = [];
- this.imageList4 = [];
- this.imageList5 = [];
- this.imageList6 = [];
- this.imgList1 = [];
- this.imgList2 = [];
- this.imgList3 = [];
- this.imgList4 = [];
- this.imgList5 = [];
- this.imgList6 = [];
- this.imgList7 = [];
- this.imgList8 = [];
- this.imgList9 = [];
- this.imgList10 = [];
- this.imgList11 = [];
- this.imgList12 = [];
- this.imgList13 = [];
- this.imgList14 = [];
- this.imgList15 = [];
- this.imgList16 = [];
- this.imgList17 = [];
- this.imgList18 = [];
- this.imgList19 = [];
- this.imgList20 = [];
- this.imgList21 = [];
- this.imgList22 = [];
- this.imgList23 = [];
- this.imgList24 = [];
- this.imgList25 = [];
- this.imgList26 = [];
- this.imgList27 = [];
- this.imgList28 = [];
- 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 "Y02":
- this.imageList2.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList26.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 "Y03":
- this.imageList3.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList27.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;
- case "Y04":
- this.imageList4.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList28.push(res.data[keys]);
- break;
- case "XC00":
- this.imageList5.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList9.push(res.data[keys]);
- break;
- case "GC00":
- this.imageList5.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList10.push(res.data[keys]);
- break;
- case "GX00":
- this.imageList5.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList11.push(res.data[keys]);
- break;
- case "TAR05":
- this.imageList1.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList12.push(res.data[keys]);
- break;
- case "C0500":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList13.push(res.data[keys]);
- break;
- case "C0501":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList14.push(res.data[keys]);
- break;
- case "C0502":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList15.push(res.data[keys]);
- break;
- case "C0503":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList16.push(res.data[keys]);
- break;
- case "C0504":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList17.push(res.data[keys]);
- break;
- case "C0506":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList18.push(res.data[keys]);
- break;
- case "C0507":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList19.push(res.data[keys]);
- break;
- case "C0505":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList20.push(res.data[keys]);
- break;
- case "C0508":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList21.push(res.data[keys]);
- break;
- case "C0509":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList22.push(res.data[keys]);
- break;
- case "C0510":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList23.push(res.data[keys]);
- break;
- case "LAST_INSURANCE_POLICY":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList24.push(res.data[keys]);
- break;
- case "SQ00":
- this.imageList6.push({
- imageId: res.data[keys].imageId,
- imageType: res.data[keys].imageType
- });
- this.imgList25.push(res.data[keys]);
- break;
- default:
- break;
- }
- }
- });
- } else {
- this.$message({ message: res.msg, type: "info" });
- }
- });
- },
- policyUpload() {
- this.policyNumberForm.jqPolicyList = !this.policyNumberForm.jqPolicyList
- ? []
- : this.policyNumberForm.jqPolicyList;
- this.policyNumberForm.jqSignList = !this.policyNumberForm.jqSignList
- ? []
- : this.policyNumberForm.jqSignList;
- this.policyNumberForm.syPolicyList = !this.policyNumberForm.syPolicyList
- ? []
- : this.policyNumberForm.syPolicyList;
- this.policyNumberForm.noPolicyList = !this.policyNumberForm.noPolicyList
- ? []
- : this.policyNumberForm.noPolicyList;
- this.policyUploaddialogVisible = true;
- },
- cancelorder(item) {
- if (item.inscompany == "紫金财险") {
- this.$api.letter.zijincancelorder({ companyId: item.id }).then(res => {
- if (res.code == 200) {
- this.$message({
- message: res.msg,
- type: "success"
- });
- this.QuotationHistory();
- }
- });
- } else if (item.inscompany == "诚泰财险") {
- this.$api.letter
- .chengtaicancelorder({ companyId: item.id })
- .then(res => {
- if (res.code == 200) {
- this.$message({
- message: res.msg,
- type: "success"
- });
- this.findPage();
- }
- });
- } else if (item.inscompany == "阳光财险") {
- this.$api.letter
- .yangGuangautoWriteOff({ companyId: item.id })
- .then(res => {
- if (res.code == 200) {
- this.$message({
- message: res.msg,
- type: "success"
- });
- this.findPage();
- }
- });
- }
- },
- hbsubmitdialog(data, index) {
- this.typeDialogIndex = index; // 当前的公司index
- if (this.imageList1.length == 0 && this.imageList2.length == 0) {
- this.$message({ message: "影像不全,先上传影像", type: "error" });
- return;
- }
- this.companyId = data.result.companyId;
- this.apiType = data.result.apiType;
- this.hbsubmitdialogVisible = true;
- this.contributingState = false;
- if (data.namesimple == "紫金财险") {
- // this.getClauseData(this.companyId, index)
- this.$api.letter
- .zijinqueryClauseData({ companyId: this.companyId })
- .then(res => {
- this.zijinengageListData = res.data;
- });
- }
- if (data.namesimple == "华泰财险") {
- this.zijinengageList = [];
- // this.getClauseData(this.companyId, index)
- this.$api.letter
- .huataiqueryClauseData({ companyId: this.companyId })
- .then(res => {
- res.data.forEach(val => {
- val.clauseCode = val.engageCode;
- val.clauseName = val.engageTitle;
- val.clauseContent = val.engageDetail;
- val.clauses = val.engageDetail;
- });
- this.zijinengageListData = res.data;
- this.zijinengageListData.forEach(val => {
- this.$nextTick(() => {
- if (val.optType == "2") {
- this.zijinengageList.push(val);
- this.$refs.expandTablePro.toggleRowSelection(val, true);
- }
- });
- });
- });
- } else {
- this.zijinengageListData = [];
- }
- // 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.contributingState = 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple == this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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 "中煤财险":
- let ZMApiImage = "";
- ZMApiImage =
- this.apiType == 2
- ? "pythonsubmitImage"
- : "insZhongmeisubmitImage";
- await this.$api.letter[ZMApiImage]({
- [this.apiType == 2 ? "subOrderNo" : "companyId"]: this
- .companyId
- }).then(res => {
- // await this.$api.letter
- // .insZhongmeisubmitImage({
- // companyId: this.companyId,
- // })
- // .then((res) => {
- if (res.code == "200") {
- var _this = this;
- let ZMApiaudit = "";
- ZMApiaudit =
- this.apiType == 2 ? "pythonaudit" : "Zhongmeiaudit";
- _this.$api.letter[ZMApiaudit]({
- // _this.$api.letter
- // .Zhongmeiaudit({
- [this.apiType == 2 ? "subOrderNo" : "companyId"]: this
- .companyId,
- // 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple == this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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 "诚泰财险":
- let CtApiImage = "";
- CtApiImage =
- this.apiType == 2
- ? "pythonsubmitImage"
- : "chengtaisubmitImage";
- await this.$api.letter[CtApiImage]({
- [this.apiType == 2 ? "subOrderNo" : "companyId"]: this
- .companyId
- }).then(res => {
- if (res.code == "200") {
- var _this = this;
- let CtApiaudit = "";
- CtApiaudit =
- this.apiType == 2 ? "pythonaudit" : "chengtaiaudit";
- let engageList = [];
- this.zijinengageList.forEach(val => {
- engageList.push({
- engageCode: val.clauseCode,
- engageDetail: val.clauses,
- engageTitle: val.clauseName,
- riskCode: val.riskCode
- });
- });
- _this.$api.letter[CtApiaudit]({
- [this.apiType == 2 ? "subOrderNo" : "companyId"]: this
- .companyId,
- engageList
- }).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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple == this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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 "华泰财险":
- let HtApiImage = "";
- HtApiImage =
- this.apiType == 2
- ? "pythonsubmitImage"
- : "insHuataisubmitImage";
- await this.$api.letter[HtApiImage]({
- [this.apiType == 2 ? "subOrderNo" : "companyId"]: this
- .companyId
- }).then(res => {
- if (res.code == "200") {
- var _this = this;
- let HtApiaudit = "";
- HtApiaudit =
- this.apiType == 2 ? "pythonaudit" : "huataiaudit";
- let engageList = [];
- this.zijinengageList.forEach(val => {
- engageList.push({
- engageCode: val.clauseCode,
- engageDetail: val.clauses,
- engageTitle: val.clauseName,
- riskCode: val.riskCode
- });
- });
- _this.$api.letter[HtApiaudit]({
- [this.apiType == 2 ? "subOrderNo" : "companyId"]: this
- .companyId,
- engageList
- }).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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple == this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple ==
- this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } else {
- loading.close();
- _this.$message({
- showClose: true,
- dangerouslyUseHTMLString: 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple ==
- this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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 "渤海财险":
- await this.$api.letter
- .insbohaisubmitImage({
- companyId: this.companyId
- })
- .then(res => {
- if (res.code == "200") {
- var _this = this;
- _this.$api.letter
- .bohaiaudit({
- 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple ==
- this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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 "阳光财险":
- await this.$api.letter
- .yangGuangImage({
- companyId: this.companyId
- })
- .then(res => {
- if (res.code == "200") {
- var _this = this;
- _this.$api.letter
- .yangGuangSubmit({
- 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple ==
- this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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 "泰山财险":
- case "太平财险":
- case "安盛天平":
- case "众安财险":
- case "中国人寿":
- 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple == this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } else {
- loading.close();
- this.$message({
- showClose: true,
- dangerouslyUseHTMLString: true,
- message:
- this.queryOrders.inscompany +
- "提核--:" +
- res.msg.replace(/\n/g, "<br><br>"),
- 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple ==
- this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } else {
- loading.close();
- this.$message({
- showClose: true,
- message:
- this.queryOrders.inscompany +
- "提核--:" +
- res.msg,
- customClass: "customNotifyClass",
- type: "error",
- duration: 0
- });
- }
- });
- } else {
- loading.close();
- this.$message({
- message:
- this.queryOrders.inscompany + "影像--:" + res.msg,
- type: "error",
- duration: 7000
- });
- }
- });
- break;
- case "大家财险":
- let DJApiImage = "";
- DJApiImage =
- this.apiType == 2 ? "pythonsubmitImage" : "dajiasubmitImage";
- await this.$api.letter[DJApiImage]({
- [this.apiType == 2 ? "subOrderNo" : "companyId"]: this
- .companyId
- }).then(res => {
- if (res.code == "200") {
- var _this = this;
- let DJApiaudit = "";
- DJApiaudit =
- this.apiType == 2 ? "pythonaudit" : "dajiaaudit";
- _this.$api.letter[DJApiaudit]({
- [this.apiType == 2 ? "subOrderNo" : "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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple == this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } else {
- loading.close();
- this.$message({
- showClose: true,
- message:
- this.queryOrders.inscompany + "提核--:" + res.msg,
- customClass: "customNotifyClass",
- 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
- .pingansubmitImage({
- companyId: this.companyId
- })
- .then(res => {
- if (res.code == "200") {
- var _this = this;
- _this.$api.letter
- .pinganaudit({
- 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;
- let indexid = this.totalCompanyList.findIndex(
- item =>
- item.namesimple ==
- this.queryOrders.inscompany
- );
- this.totalCompanyList[indexid].orderstatus =
- res.data.orderstatus;
- });
- } 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;
- }
- }
- });
- },
- //当前日期的次日
- 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;
- },
- isDateBeforeToday(date) {
- const inputDate = new Date(date); // 将输入的日期转换为 Date 对象
- const today = new Date(); // 获取当前日期
- // 比较日期是否小于当前日期
- if (inputDate < today) {
- return true; // 输入日期小于当前日期
- } else {
- return false; // 输入日期大于等于当前日期
- }
- },
- //时间转换
- 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 = { ...this.ownerInfo };
- break;
- default:
- for (let key in this.policyHolderInfo) {
- this.policyHolderInfo[key] = "";
- this.policyHolderInfo.provinceData = [];
- this.selectedOptions2 = [];
- }
- this.policyHolderInfo = {};
- }
- this.$forceUpdate();
- },
- bbczcarShowChange() {
- if (this.bbczcarShow) {
- this.bbtbcarShow = false;
- }
- //被保人同车主
- if (this.bbczcarShow && !this.bbtbcarShow) {
- this.insuredPersonInfo = { ...this.ownerInfo };
- this.bbtbcarShow = false;
- }
- // if (!this.bbczcarShow && !this.bbtbcarShow) {
- // for (let key in this.insuredPersonInfo) {
- // this.insuredPersonInfo[key] = "";
- // this.insuredPersonInfo.provinceData = [];
- // // this.selectedOptions3 = [];
- // }
- // this.insuredPersonInfo = {}
- // }
- // if (this.bbtbcarShow) {
- // return
- // }
- // switch (this.bbczcarShow) {
- // case true:
- // this.insuredPersonInfo = JSON.parse(JSON.stringify(this.ownerInfo));
- // this.bbtbcarShow = false;
- // console.log( '车主信息111111', this.ownerInfo, '投保人信息', this.policyHolderInfo, '被保人信息', this.insuredPersonInfo, '被保人同车主', this.bbczcarShow)
- // break;
- // default:
- // for (let key in this.insuredPersonInfo) {
- // this.insuredPersonInfo[key] = "";
- // this.insuredPersonInfo.provinceData = [];
- // // this.selectedOptions3 = [];
- // }
- // }
- this.$forceUpdate();
- },
- bbtbcarShowChange() {
- if (this.bbtbcarShow) {
- this.bbczcarShow = false;
- }
- if (this.bbtbcarShow && !this.bbczcarShow) {
- this.insuredPersonInfo = { ...this.policyHolderInfo };
- this.bbczcarShow = false;
- }
- this.$forceUpdate();
- },
- // 清空被保人信息
- clearBbxx() {
- for (let key in this.insuredPersonInfo) {
- this.insuredPersonInfo[key] = "";
- this.insuredPersonInfo.provinceData = [];
- }
- },
- // 查询车牌信息
- toCheckLicenseNo(licenseNo) {
- if (licenseNo) {
- this.$api.letter
- .licenseSearch({
- licenseNo: licenseNo
- })
- .then(res => {
- if (res.code == 200) {
- {
- this.carInfo.engineNo = res.data.engineNo;
- this.carInfo.vinNo = res.data.vinNo;
- this.carInfo.frameNo = res.data.vinNo;
- this.carInfo.registerDate = res.data.registerDate;
- this.$forceUpdate();
- }
- }
- });
- }
- },
- //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.sbdmdialogVisible = true;
- } else {
- loading.close();
- this.$message.error(res.msg);
- }
- });
- }
- },
- // 撤销二维码
- revokeCode(id) {
- this.$confirm("确定撤销二维码?", "提示", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning"
- })
- .then(() => {
- this.$api.letter.getRevokeQrCode(id).then(res => {
- if (res.code == 200) {
- this.$message({
- message: res.msg,
- type: "success"
- });
- this.QuotationHistory();
- }
- });
- })
- .catch(() => {
- this.$message({
- type: "info",
- message: "已取消撤销二维码"
- });
- });
- },
- //品牌型号查询
- 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.replace(/[^u4e00-u9fa5|,]+/gi, "")
- };
- 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.importFlag=row.importFlag;//特种车标识
- 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.energyType =this.carInfo.licenseNo && this.carInfo.licenseNo.length==7? row.energyTypes:'1';//能源种类
- this.carInfo.powerScale = row.powerScale; //功率
- this.chexingdialogVisible = false;
- this.sbdmdialogVisible = false;
- },
- //是否过户事件
- transferFlagChange(e) {
- if (e) {
- this.transferDateShow = true;
- this.carInfo.transferDate = this.carInfo.issueDate;
- } else {
- this.transferDateShow = false;
- this.carInfo.transferDate = "";
- }
- },
- //影像上传
- drivingupload(file, imageIdList, imgurl, type) {
- let that = this;
- let size = file.size / 1024 / 1024 < 5;
- const isJPG =
- file.raw.type === "image/jpeg" || file.raw.type === "image/png";
- if (!size) {
- this.$message.error("上传图片大小不能超过 5MB!");
- this[imgurl] = [];
- return false;
- }
- if (!isJPG) {
- this.$message.error("上传图片只能是 JPG、PNG 格式!");
- this[imgurl] = [];
- return false;
- }
- 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
- });
- }
- }
- });
- },
- policydrivingupload(file, val) {
- // this.policyNumberForm[val + 'List'] = []
- switch (val) {
- case "jqPolicy":
- this.policyNumberForm.jqPolicyList = [];
- break;
- case "syPolicy":
- this.policyNumberForm.syPolicyList = [];
- break;
- case "noPolicy":
- this.policyNumberForm.noPolicyList = [];
- break;
- case "jqSign":
- this.policyNumberForm.jqSignList = [];
- break;
- default:
- break;
- }
- var file = file.raw;
- const params = new FormData(); // 声明formData数据类型
- params.append("multipartFile", file);
- params.append("type", "file");
- this.$api.letter.uploadFile(params).then(res => {
- if (res.code == "200") {
- res.data.name = res.data.fileName;
- this.policyNumberForm[val + "List"].push(res.data);
- }
- });
- },
- 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;
- });
- }
- },
- compress(img, width, height, ratio) {
- var canvas, ctx, img64;
- canvas = document.createElement("canvas");
- canvas.width = width;
- canvas.height = height;
- ctx = canvas.getContext("2d");
- ctx.drawImage(img, 0, 0, width, height);
- img64 = canvas.toDataURL("image/jpeg", ratio);
- return img64;
- },
- base64ToFile(base64, fileName) {
- let data = base64.split(",");
- let type = data[0].match(/:(.*?);/)[1]; // let suffix = type.split('/')[1];
- const bstr = window.atob(data[1]);
- let n = bstr.length;
- const u8arr = new Uint8Array(n);
- while (n--) {
- u8arr[n] = bstr.charCodeAt(n);
- } // const file = new File([u8arr], `${fileName}.${suffix}`, {
- const file = new File([u8arr], `${fileName}`, {
- type: type
- });
- return file;
- },
- carfrontChange(file) {
- //选择行驶证正面
- let that = this;
- let size = file.size / 1024 / 1024 < 5;
- const isJPG =
- file.raw.type === "image/jpeg" || file.raw.type === "image/png";
- if (!size) {
- this.$message.error("上传图片大小不能超过 5MB!");
- return false;
- }
- if (!isJPG) {
- this.$message.error("上传图片只能是 JPG、PNG 格式!");
- return false;
- }
- // let name=file.raw.name
- // var image = new Image();
- // image.src = window.URL.createObjectURL(file.raw);
- // that.carfrontImg = image.src
- // image.onload = function(){
- // let aaa= that.base64ToFile(that.compress(image, 500, 400, 0.7),name)
- // that.carfrontImg = image.src;
- // const params = new FormData(); // 声明formData数据类型
- // params.append("multipartFile", aaa);
- // params.append("type", "image");
- // that.$api.letter.uploadFile(params).then(res => {
- // if (res.code == "200") {
- // that.CarFrontFile = aaa;//文件流
- // if (that.imageList1.some(v => v.imageType == 'C01')) {
- // that.imageList1.map(val => {
- // if (val.imageType == 'C01') {
- // val.imageId = res.data.id;
- // }
- // })
- // } else {
- // that.imageList1.push({
- // imageId: res.data.id,
- // imageType: "C01",
- // })
- // }
- // } else {
- // that.$message({ message: res.msg, type: "warning" });
- // }
- // });
- // }
- 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) {
- let that = this;
- let size = file.size / 1024 / 1024 < 2;
- const isJPG =
- file.raw.type === "image/jpeg" || file.raw.type === "image/png";
- if (!size) {
- this.$message.error("上传图片大小不能超过 5MB!");
- return false;
- }
- if (!isJPG) {
- this.$message.error("上传图片只能是 JPG、PNG 格式!");
- return false;
- }
- // let name=file.raw.name
- // var image = new Image();
- // image.src = window.URL.createObjectURL(file.raw);
- // image.onload = function(){
- // let aaa= that.base64ToFile(that.compress(image, 500, 400, 0.7),name)
- // that.carbackImg = image.src;
- // const params = new FormData(); // 声明formData数据类型
- // params.append("multipartFile", aaa);
- // params.append("type", "image");
- // that.$api.letter.uploadFile(params).then(res => {
- // if (res.code == "200") {
- // that.CarBackFile = aaa;//文件流
- // if (that.imageList1.some(v => v.imageType == 'D01')) {
- // that.imageList1.map(val => {
- // if (val.imageType == 'D01') {
- // val.imageId = res.data.id;
- // }
- // })
- // } else {
- // that.imageList1.push({
- // imageId: res.data.id,
- // imageType: "D01",
- // })
- // }
- // } else {
- // that.$message({ message: res.msg, type: "warning" });
- // }
- // });
- // }
- //选择行驶证反面
- 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) {
- let that = this;
- let size = file.size / 1024 / 1024 < 5;
- const isJPG =
- file.raw.type === "image/jpeg" || file.raw.type === "image/png";
- if (!size) {
- this.$message.error("上传图片大小不能超过 5MB!");
- return false;
- }
- if (!isJPG) {
- this.$message.error("上传图片只能是 JPG、PNG 格式!");
- return false;
- }
- // let name=file.raw.name
- // var image = new Image();
- // image.src = window.URL.createObjectURL(file.raw);
- // image.onload = function(){
- // let aaa= that.base64ToFile(that.compress(image, 500, 400, 0.7),name)
- // that.userfrontImg = image.src;
- // const params = new FormData(); // 声明formData数据类型
- // params.append("multipartFile", aaa);
- // params.append("type", "image");
- // that.$api.letter.uploadFile(params).then(res => {
- // if (res.code == "200") {
- // let type = 'C0' + that.userIndex;
- // if (that['imageList' + that.userIndex].some(v => v.imageType == type)) {
- // that['imageList' + that.userIndex].map(val => {
- // if (val.imageType == type) {
- // val.imageId = res.data.id;
- // }
- // })
- // } else {
- // that['imageList' + that.userIndex].push({
- // imageId: res.data.id,
- // imageType: type,
- // })
- // }
- // that[type + 'File'] = aaa;
- // } else {
- // that.$message({ message: res.msg, type: "warning" });
- // }
- // });
- // }
- //选择身份证正面
- 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) {
- let that = this;
- let size = file.size / 1024 / 1024 < 5;
- const isJPG =
- file.raw.type === "image/jpeg" || file.raw.type === "image/png";
- if (!size) {
- this.$message.error("上传图片大小不能超过 5MB!");
- return false;
- }
- if (!isJPG) {
- this.$message.error("上传图片只能是 JPG、PNG 格式!");
- return false;
- }
- // let name=file.raw.name
- // var image = new Image();
- // image.src = window.URL.createObjectURL(file.raw);
- // image.onload = function(){
- // let aaa= that.base64ToFile(that.compress(image, 500, 400, 0.7),name)
- // that.userbackImg = image.src;
- // const params = new FormData(); // 声明formData数据类型
- // params.append("multipartFile", aaa);
- // params.append("type", "image");
- // that.$api.letter.uploadFile(params).then(res => {
- // if (res.code == "200") {
- // let type = 'D0' + that.userIndex;
- // if (that['imageList' + that.userIndex].some(v => v.imageType == type)) {
- // that['imageList' + that.userIndex].map(val => {
- // if (val.imageType == type) {
- // val.imageId = res.data.id;
- // }
- // })
- // } else {
- // that['imageList' + that.userIndex].push({
- // imageId: res.data.id,
- // imageType: type,
- // })
- // }
- // that[type + 'File'] = aaa;
- // } else {
- // that.$message({ message: res.msg, type: "warning" });
- // }
- // });
- // }
- //选择身份证背面
- 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" });
- }
- });
- },
- businessChange(file) {
- let size = file.size / 1024 / 1024 < 5;
- const isJPG =
- file.raw.type === "image/jpeg" || file.raw.type === "image/png";
- if (!size) {
- this.$message.error("上传图片大小不能超过 5MB!");
- return false;
- }
- if (!isJPG) {
- this.$message.error("上传图片只能是 JPG、PNG 格式!");
- return false;
- }
- var file = file.raw;
- let files = window.URL.createObjectURL(file); //转链接
- this.businessImg = 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 = "Y0" + 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() {
- // if (!this.CarFrontFile || !this.CarBackFile) {
- // this.$message.warning('请上传行驶证主页和副页')
- // return
- // }
- //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;
- if (carInfo.issueDate) {
- carInfo.issueDate =
- carInfo.issueDate.substring(0, 4) +
- "-" +
- carInfo.issueDate.substring(4, 6) +
- "-" +
- carInfo.issueDate.substring(6, 8);
- }
- if (carInfo.registerDate) {
- carInfo.registerDate =
- carInfo.registerDate.substring(0, 4) +
- "-" +
- carInfo.registerDate.substring(4, 6) +
- "-" +
- carInfo.registerDate.substring(6, 8);
- }
- this.carform.carOwner = carInfo.carOwner; //车主
- 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.limitLoad = carInfo.limitLoad; //核定载质量
- this.carform.category = carInfo.category; //车辆类型
- this.carform.carnature = carInfo.useNature; //使用性质
- this.carform.vehicleUse = carInfo.vehicleUse; //车辆用途
- this.carform.plateType = carInfo.plateType; //车辆种类
- this.carform.approvedPassengersCapacity =
- carInfo.approvedPassengersCapacity; //核定载客数
- });
- },
- CarOCRconfirm() {
- //传参 carnature
- this.ownerInfo.name = this.carform.carOwner; //车主
- this.carInfo.cartype = "K33";
- 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.seatCount = this.carform.approvedPassengersCapacity; //核定载客数
- this.carInfo.vehicleweight = this.carform.grossMass; //总质量
- this.carInfo.completeKerbMass = this.carform.unladenMass; //整备质量
- this.carInfo.limitLoad = this.carform.limitLoad; //核定载质量
- this.carInfo.cartype = this.carform.category; //车辆类型
- this.carInfo.carnature = this.carform.carnature
- ? this.carform.carnature
- : "02"; //使用性质
- this.carInfo.vehicleUse = this.carform.vehicleUse
- ? this.carform.vehicleUse
- : "05"; //车辆用途
- this.carInfo.cimodelclass = this.carform.plateType; //车辆种类
- if (this.timeformat(this.carform.registerDate) != "NaN-NaN-NaN") {
- this.carInfo.registerDate = this.carform.registerDate; //车牌号
- }
- if (this.timeformat(this.carform.issueDate) != "NaN-NaN-NaN") {
- this.carInfo.issueDate = this.carform.issueDate; //车牌号
- }
- if (this.carform.registerDate.length < 10) {
- this.$message.warning("检查注册日期");
- return;
- }
- if (this.carform.issueDate.length < 10) {
- this.$message.warning("检查发证日期");
- return;
- }
- this.uploadcardialogVisible = false;
- },
- handleRemove(e) {
- //删除图片
- this[e] = "";
- switch (this.userIndex) {
- case 0:
- this.carfrontImg = "";
- this.carbackImg = "";
- this.CarFrontFile = ""; // 行驶证正面base64
- this.CarBackFile = ""; // 行驶证背面base64
- break;
- case 2:
- this.userfrontImg = "";
- this.userbackImg = "";
- this.businessImg = "";
- this.C02File = ""; // 车主正面base64
- this.D02File = ""; // 车主背面base64
- this.Y02File = ""; // 车主营业执照
- break;
- case 3:
- this.userfrontImg = "";
- this.userbackImg = "";
- this.businessImg = "";
- this.C03File = ""; // 投保人正面base64
- this.D03File = ""; // 投保人背面base64
- this.Y03File = ""; // 投保人营业执照
- break;
- case 4:
- this.userfrontImg = "";
- this.userbackImg = "";
- this.businessImg = "";
- this.C04File = ""; // 被保人正面base64
- this.D04File = ""; // 被保人背面base64
- this.Y04File = ""; // 被保人营业执照
- break;
- default:
- }
- },
- //预览图片
- handlePictureCardPreview(img) {
- this.ProViewImg = img;
- this.showViewer = true;
- },
- // 关闭查看器
- closeViewer() {
- this.showViewer = false;
- },
- uploaduser(index) {
- this.userIndex = index;
- this.uploaduserdialogVisible = true;
- },
- userOCRdiscern() {
- //OCR识别
- if (this.activeName == "1") {
- switch (this.userIndex) {
- case 2:
- // if (!this.C02File || !this.D02File) {
- // this.$message.warning('请上传照片')
- // return
- // }
- const params1 = new FormData(); // 声明formData数据类型
- params1.append("image1", this.C02File);
- params1.append("image2", this.D02File);
- this.userOCRjoggle(params1);
- break;
- case 3:
- // if (!this.C03File || !this.D03File) {
- // this.$message.warning('请上传照片')
- // return
- // }
- const params2 = new FormData(); // 声明formData数据类型
- params2.append("image1", this.C03File);
- params2.append("image2", this.D03File);
- this.userOCRjoggle(params2);
- break;
- case 4:
- // if (!this.C04File || !this.D04File) {
- // this.$message.warning('请上传照片')
- // return
- // }
- const params3 = new FormData(); // 声明formData数据类型
- params3.append("image1", this.C04File);
- params3.append("image2", this.D04File);
- this.userOCRjoggle(params3);
- break;
- default:
- }
- } else {
- switch (this.userIndex) {
- case 2:
- const params1 = new FormData(); // 声明formData数据类型
- params1.append("image1", this.Y02File);
- this.businessjoggle(params1);
- break;
- case 3:
- const params2 = new FormData(); // 声明formData数据类型
- params2.append("image1", this.Y03File);
- this.businessjoggle(params2);
- break;
- case 4:
- const params3 = new FormData(); // 声明formData数据类型
- params3.append("image1", this.Y04File);
- this.businessjoggle(params3);
- break;
- default:
- }
- }
- },
- businessjoggle(param) {
- const loading = this.$loading({
- lock: true,
- text: "Loading",
- spinner: "el-icon-loading",
- background: "rgba(0, 0, 0, 0.7)"
- });
- this.$api.letter.businessLicense(param).then(res => {
- loading.close();
- if (res.msg == "201") {
- this.$message({ message: "请正确选择营业执照", type: "warning" });
- }
- if (res.code == 200 && res.data) {
- if (res.data) {
- this.businessform = {
- ...res.data,
- name: res.data.company,
- organizationCode: res.data.socialCreditCode,
- addr: res.data.address,
- identifyType: "10",
- scope: res.data.businessScope,
- legalPerson: res.data.legalRepresentative,
- registeredCapital: parseInt(res.data.registeredCapital)
- };
- }
- }
- });
- },
- 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.gender = customerInfo.identifyIssuedCom;
- this.ownerInfoform.addr = customerInfo.addr;
- if (customerInfo.identifyNumber) {
- this.ownerInfoform.age = getAgeByIdCard(
- customerInfo.identifyNumber
- );
- }
- if (
- customerInfo.identifyValidDate ||
- customerInfo.identifyValidEndDate
- ) {
- 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);
- if (customerInfo.identifyValidEndDate == "长期") {
- this.ownerInfoform.identifyValidEndDate = "9999-12-31";
- }
- }
- // let values = addressCode(this.ownerInfoform.addr);
- // this.ownerInfoform.province = codeToText[values[0]]
- // this.ownerInfoform.city = codeToText[values[1]]
- // this.ownerInfoform.county = codeToText[values[2]]
- }
- });
- },
- userOCRconfirm() {
- //传参
- if (this.activeName == "1") {
- this.ownerInfoform.property = "1";
- switch (this.userIndex) {
- case 2:
- // this.selectedOptions1 = addressCode(this.ownerInfoform.addr);
- this.ownerInfo = JSON.parse(JSON.stringify(this.ownerInfoform));
- break;
- case 3:
- // this.selectedOptions2 = addressCode(this.ownerInfoform.addr);
- this.policyHolderInfo = JSON.parse(
- JSON.stringify(this.ownerInfoform)
- );
- break;
- case 4:
- // this.selectedOptions3 = addressCode(this.ownerInfoform.addr);
- this.insuredPersonInfo = JSON.parse(
- JSON.stringify(this.ownerInfoform)
- );
- break;
- }
- } else {
- this.businessform.property = "0";
- switch (this.userIndex) {
- case 2:
- this.ownerInfo = { ...this.ownerInfo, ...this.businessform };
- break;
- case 3:
- this.policyHolderInfo = {
- ...this.policyHolderInfo,
- ...this.businessform
- };
- break;
- case 4:
- this.insuredPersonInfo = {
- ...this.insuredPersonInfo,
- ...this.businessform
- };
- 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.businessImg = "";
- this.Y02File = ""; // 营业执照
- this.C02File = ""; // 车主正面base64
- this.D02File = ""; // 车主背面base64
- Object.keys(this.ownerInfoform).forEach(key => {
- this.ownerInfoform[key] = "";
- });
- Object.keys(this.businessform).forEach(key => {
- this.businessform[key] = "";
- });
- break;
- case 3:
- this.userfrontImg = "";
- this.userbackImg = "";
- this.businessImg = "";
- this.Y03File = ""; // 营业执照
- this.C03File = ""; // 投保人正面base64
- this.D03File = ""; // 投保人背面base64
- Object.keys(this.ownerInfoform).forEach(key => {
- this.ownerInfoform[key] = "";
- });
- Object.keys(this.businessform).forEach(key => {
- this.businessform[key] = "";
- });
- break;
- case 4:
- this.userfrontImg = "";
- this.userbackImg = "";
- this.businessImg = "";
- this.Y04File = ""; // 营业执照
- this.C04File = ""; // 被保人正面base64
- this.D04File = ""; // 被保人背面base64
- Object.keys(this.ownerInfoform).forEach(key => {
- this.ownerInfoform[key] = "";
- });
- Object.keys(this.businessform).forEach(key => {
- this.businessform[key] = "";
- });
- break;
- default:
- }
- },
- bjdpreview(id) {
- let params = {
- companyId: id
- };
- 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":
- if (ele.amount == 1) {
- ele.amount = "投保";
- } else {
- ele.amount = 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;
- });
- }
- data.logoImg = this.iconfftter(res.data.inscompany);
- this.queryOrders = data;
- this.$api.letter.getThemeByUserId(this.userId).then(res => {
- if (res.code == 200) {
- if (res.data[0] == "GD") {
- this.$refs.quotationDialogPro.setBackupVisible(true);
- } else {
- this.$refs.quotationDialog.setBackupVisible(true);
- }
- }
- });
- // if (
- // this.$store.state.user.roles.managementSource &&
- // this.$store.state.user.roles.managementSource == "3"
- // ) {
- // this.$refs.quotationDialogPro.setBackupVisible(true);
- // } else {
- // this.$refs.quotationDialog.setBackupVisible(true);
- // }
- }
- });
- },
- //返回上一步
- Back() { },
- carcode(id, item) {
- this.$api.letter.getQrCode(id).then(res => {
- if (res.code == "200") {
- this.inscompany = res.data.inscompany; //保险公司
- this.sumpremium = res.data.sumpremium; //总价
- this.licenseNo = res.data.cPlateNo; //车牌号
- this.applyName = res.data.cApplyNme; //车主
- this.jqpremium = res.data.jqpremium; //交强
- this.sypremium = res.data.sypremium; //商业
- this.taxamount = res.data.taxamount; //车船税
- this.jypremium = res.data.jypremium; //驾意险
- this.jqstartdate = res.data.jqStartDate; //交强起保日期
- this.systartdate = res.data.syStartDate; //商业起保日期
- // this.mobile = res.data.applyinfo.mobile;//投保人手机号
- let qrCodeUrl = res.data.qrCodeUrl;
- this.$api.letter.getThemeByUserId(this.userId).then(res => {
- if (res.code == 200) {
- if (res.data[0] == "GD") {
- this.codedialogVisiblePro = true;
- this.qrcodeWidth = "154";
- this.qrcodeHeight = "154";
- } else {
- this.codedialogVisible = true;
- }
- this.$nextTick(function () {
- this.creatQrCode(qrCodeUrl);
- });
- }
- });
- } else {
- this.$message({ message: res.msg, type: "warning" });
- }
- });
- },
- //同步
- synchronization() {
- this.systartDate = this.jqstartDate;
- this.syendDate = this.jqendDate;
- },
- add() {
- // this.obtainProtocol();
- if (this.isLetter == "1") {
- this.$router.push({ path: "/letter/letter" });
- }
- for (let key in this.ownerInfo) {
- this.ownerInfo[key] = "";
- }
- for (let key in this.policyHolderInfo) {
- this.policyHolderInfo[key] = "";
- }
- for (let key in this.insuredPersonInfo) {
- this.insuredPersonInfo[key] = "";
- }
- this.vehicleAndVesselTaxForm = {
- taxRelifFlag: "1",
- taxpayerIdentifier: "01"
- };
- // 清空保险公司列表
- this.totalCompanyList = [];
- this.ownerInfo.provinceData = [];
- this.insuredPersonInfo.provinceData = [];
- this.policyHolderInfo.provinceData = [];
- this.carInfo = JSON.parse(localStorage.getItem("carInfo"));
- this.insureList = JSON.parse(localStorage.getItem("insureList"));
- this.sychecked = false;
- this.yonganchecked = false;
- this.zhongmeichecked = false;
- this.transferDateShow = false;
- this.tbczcarShow = true; //投保人同车主
- // this.bbczcarShow = false, //被保人同车主
- this.bbtbcarShow = true; //被保人同投保人
- // this.$refs.imageDialog.emptyList()
- this.imageList1 = [];
- this.imageList2 = [];
- this.imageList3 = [];
- this.imageList4 = [];
- this.imageList5 = [];
- this.imageList6 = [];
- this.imgList1 = [];
- this.imgList2 = [];
- this.imgList3 = [];
- this.imgList4 = [];
- this.imgList5 = [];
- this.imgList6 = [];
- this.imgList7 = [];
- this.imgList8 = [];
- this.imgList9 = [];
- this.imgList10 = [];
- this.imgList11 = [];
- this.imgList12 = [];
- this.imgList13 = [];
- this.imgList14 = [];
- this.imgList15 = [];
- this.imgList16 = [];
- this.imgList17 = [];
- this.imgList18 = [];
- this.imgList19 = [];
- this.imgList20 = [];
- this.imgList21 = [];
- this.imgList22 = [];
- this.imgList23 = [];
- this.imgList24 = [];
- this.imgList25 = [];
- this.imgList26 = [];
- this.imgList28 = [];
- this.imgList27 = [];
- // 清空保险公司选中的意外险
- this.zijintemplateSelection = "";
- this.zhongantemplateSelection = "";
- this.hengbangtemplateSelection = "";
- this.taipingyangtemplateSelection = "";
- this.taipingtemplateSelection = "";
- this.insuranceHN = "";
- this.renshoutemplateSelection = "";
- this.dajiatemplateSelection = "";
- this.accidentForm = {
- fen: "1",
- premium: 0
- };
- this.accidentFormHN = {
- allQuantity: "1",
- quantity: "1"
- };
- this.productId = "";
- this.hengbangaccidentalDrivingVo = {};
- this.taipingyangaccidentalDrivingVo = {};
- this.huanongaccidentalDrivingVo = {};
- this.taipingaccidentalDrivingVo = {};
- this.zhongmeiaccidentalDrivingVo = {};
- this.accidentalDrivingVo = [];
- this.zhonganaccidentalDrivingVo = {};
- this.renshouaccidentalDrivingVo = {};
- this.anshengaccidentalDrivingVo = {};
- this.dajiaaccidentalDrivingVo = {};
- this.selectedOptions1 = [];
- this.selectedOptions2 = [];
- this.selectedOptions3 = [];
- this.orderno = "";
- this.quoteno = "";
- this.lastCompanyId = "";
- this.HistoryList = [];
- this.jqstartDate = this.transformTime1();
- this.jqendDate = this.oneYearPast1(this.jqstartDate);
- this.systartDate = this.transformTime1();
- this.syendDate = this.oneYearPast1(this.jqstartDate);
- this.policyNumberForm = {
- jqpolicyno: "",
- sypolicyno: "",
- jypolicyno: "",
- jqpremium: "",
- sypremium: "",
- jypremium: "",
- taxamount: "",
- commissionFeevalue: "",
- otherFeevalue: "",
- jqSuperviseCostsProportion: "",
- sySuperviseCostsProportion: "",
- noSuperviseCostsProportion: "",
- jqOtherCostsProportion: "",
- syOtherCostsProportion: "",
- noOtherCostsProportion: "",
- jqReceivableProportion: "",
- syReceivableProportion: "",
- noReceivableProportion: "",
- jqPolicyList: [],
- syPolicyList: [],
- jqSignList: [],
- noPolicyList: [],
- noCostsProportion: "",
- jqCostsProportion: "",
- syCostsProportion: ""
- };
- },
- toChinesNum(num) {
- if (num.toString().length == 4) {
- let overQian = Math.floor(num / 1000);
- let result = overQian + "千";
- return result;
- } else {
- let overWan = Math.floor(num / 10000);
- let result = overWan + "万";
- return result;
- }
- },
- reportDrop(event) {
- event.preventDefault();
- event.stopPropagation();
- },
- tabLiScroll(id, idx) {
- this.tabLiIndex = idx;
- document.getElementById(id).scrollIntoView({ behavior: "smooth" });
- },
- handleScroll(id) {
- document.getElementById(id).scrollIntoView({ behavior: "smooth" });
- }
- }
- };
- </script>
- <style>
- /* .customNotifyClass {
- word-break: break-all;
- width: 600px;
- } */
- </style>
- <style lang="scss" scoped>
- .el-row {
- display: flex;
- flex-wrap: wrap;
- align-content: flex-start;
- }
- // .marginL {
- // margin-left: 10px;
- // }
- .el-notification {
- width: 600px;
- }
- .styleB .el-upload--picture-card {
- // display: none;
- opacity: 0;
- }
- .ORcodebody {
- height: auto;
- background-color: #fff;
- //background: url(../../../assets/image/group.png) #fff;
- padding: 16px;
- }
- .csstool {
- font-weight: 600;
- color: #606266;
- font-size: 14px;
- margin: 0 20px;
- span {
- margin-right: 5px;
- }
- }
- .ORcode {
- width: 100%;
- height: auto;
- display: flex;
- justify-content: center;
- align-items: center;
- padding: 30px;
- box-sizing: border-box;
- &>div {
- width: 176px;
- height: 176px;
- border: 1px solid var(--themeColor);
- border-radius: 5px;
- }
- }
- .ORtitle {
- width: 100%;
- padding-bottom: 20px;
- box-sizing: border-box;
- &>div {
- width: 100%;
- margin: 10px 0;
- font-size: 14px;
- &>span {
- &:nth-child(1) {
- color: #868b98;
- text-align: end;
- width: 150px;
- }
- &:nth-child(2) {
- color: #333333;
- }
- }
- }
- }
- .Risk {
- width: 100%;
- height: auto;
- display: flex;
- flex-direction: column;
- align-items: center;
- font-size: 12px;
- }
- .dis {
- display: flex;
- }
- .align {
- align-items: center;
- }
- .jus {
- justify-content: space-between;
- }
- .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: #333333;
- // font-weight: 700;
- }
- .home {
- // padding-left: 10px;
- box-sizing: border-box;
- padding-bottom: 10px;
- border-bottom: 1px solid #eef1f6;
- &>span {
- margin-right: 10px;
- }
- }
- .border-red {
- border: 1px solid #ff0606;
- }
- .border-blue {
- border: 1px solid #0634ff;
- }
- .hovers {
- margin: 20px 0;
- cursor: pointer;
- padding: 10px 0;
- box-sizing: border-box;
- box-shadow: 0 2px 8px 0 rgba(231, 163, 36, 0.205);
- border-radius: 8px;
- .offer-time {
- margin: 20px 0 0px 100px;
- padding: 10px;
- background: rgba(45, 77, 137, 0.06);
- &>span {
- margin: 0 10px;
- }
- }
- }
- /* 内容待定 */
- .coll {
- font-size: 14px;
- }
- .display {
- display: flex;
- justify-content: center;
- align-items: center;
- box-sizing: border-box;
- }
- .black {
- color: #000;
- }
- .gray {
- color: #999;
- }
- .OCR {
- 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: 100%;
- margin: 0 auto;
- padding: 15px 10px;
- color: #333;
- font-weight: bold;
- font-size: 14px;
- background-color: rgba(0, 89, 255, 0.1);
- }
- .position-left {
- width: calc(100% - 220px);
- }
- .position-collapse-left {
- width: calc(100% - 80px);
- }
- .footer {
- 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.1s, 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);
- }
- .Enclosure:hover {
- box-shadow: 0 0 10px 0 #d42427;
- }
- .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: 15px 10px;
- background-color: #f7f7f9;
- // border-bottom: 1px solid #e3e3e3;
- font-size: 14px;
- }
- .more-data {
- padding: 10px;
- border-bottom: 1px solid #f2f2f2;
- color: #333;
- font-size: 14px;
- }
- .Driving-risk {
- padding-left: 100px;
- // padding-top:20px
- }
- .checkbox {
- transform: scale(1.2);
- margin-right: 20px;
- line-height: 32px;
- }
- .insure-long-term {
- display: inline-flex;
- padding-left: 8px;
- padding-right: 8px;
- background: var(--themeColor);
- 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+ */
- }
- .aaa {
- /deep/ {
- margin-bottom: 20px;
- margin-right: 30px;
- span {
- display: inline-block;
- margin-bottom: 10px;
- }
- .el-upload .el-upload-dragger {
- width: 180px;
- height: 120px;
- border: 1px dashed #c0ccda;
- padding: 0;
- }
- .el-upload-list--picture-card .el-upload-list__item {
- width: 180px;
- height: 120px;
- }
- .el-upload-list__item:first-child {
- margin-top: 0;
- }
- .el-upload--picture-card {
- width: 180px;
- height: 120px;
- }
- .el-upload-list__item {
- width: 180px;
- height: 120px;
- margin: 0 !important;
- display: block !important;
- }
- .el-upload-list--picture-card .el-upload-list__item-thumbnail {
- width: 180px;
- height: 120px;
- }
- }
- }
- .jyxStyle>span {
- display: inline-block;
- text-align: center;
- }
- .tab-style {
- width: 120px;
- li {
- text-align: right;
- padding-right: 20px;
- line-height: 40px;
- cursor: pointer;
- box-sizing: border-box;
- border-right: 1px solid #e2e5eb;
- }
- li:focus {
- background: rgba(212, 36, 38, 0.1);
- border-right: 2px solid var(--themeColor);
- color: var(--themeColor);
- }
- }
- .tabLi-style {
- background: rgba(212, 36, 38, 0.1);
- border-right: 2px solid var(--themeColor);
- color: var(--themeColor);
- }
- .scan-code {
- div {
- margin-top: 10px;
- }
- }
- /* 清除图片上传动画bug */
- /deep/ {
- .proSaomazhifucodeClass .el-dialog__header {
- background: rgba(45, 77, 137, 0.1);
- font-weight: bold;
- }
- .proSaomazhifucodeClass .el-dialog__footer {
- border-top: 1px solid #eef1f6;
- }
- .el-upload-list__item {
- transition: none !important;
- }
- .el-checkbox__input {
- &.is-checked {
- .el-checkbox__inner {
- background-color: #d42426;
- border-color: #d42426;
- }
- }
- }
- .el-checkbox__inner {
- border: 1px solid var(--themeColor);
- &:hover {
- border-color: var(--themeColorHover);
- }
- &:focus {
- border-color: var(--themeColor);
- }
- }
- .el-upload .el-upload-dragger {
- height: 250px;
- width: 400px;
- border: 1px dashed #ced4da;
- }
- // .el-button--warning {
- // color: #fff;
- // background-color: #D42426;
- // border-color: #D42426;
- // &:hover {
- // color: #fff;
- // background-color: #ee6f00ce;
- // border-color: #ee6f00ce;
- // }
- // }
- .el-descriptions-item__label {
- &:not(.is-bordered-label) {
- color: #333;
- }
- }
- // .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 {
- height: 128px;
- }
- .styleB .el-upload--picture-card {
- display: none;
- }
- .saomazhifucodeClass .el-dialog__body,
- .saomazhifucodeClass .el-dialog__header,
- .saomazhifucodeClass .el-dialog__footer {
- padding: 0;
- background: #f4e9e9;
- }
- .saomazhifucodeClass .el-dialog__body {
- padding: 15px;
- }
- .saomazhifucodeClass .el-dialog__footer {
- background: #f4e9e9;
- padding-bottom: 15px;
- }
- .saomazhifucodeClass .el-dialog__headerbtn {
- margin-top: 10px;
- }
- .zmDriving {
- thead .el-table-column--selection .cell {
- display: none !important;
- }
- }
- .line_style {
- margin-top: 20px;
- }
- .el-input-group__append {
- vertical-align: baseline;
- border-color: #d42426;
- background: #d42426;
- color: #fff;
- }
- .pinganTable .el-table__header-wrapper .el-checkbox {
- display: none;
- }
- }
- </style>
- <style lang="scss" scoped>
- .company-checked {
- background: rgba(45, 77, 137, 0.15);
- padding: 12px 20px;
- box-sizing: border-box;
- margin-top: 10px;
- font-size: 13px;
- color: #333;
- line-height: 24px;
- overflow-x: auto;
- .width1280 {
- min-width: 1576px;
- }
- .bg-white {
- background: #fff;
- padding: 10px 12px;
- border-radius: 4px;
- width: 100%;
- }
- .flex-1 {
- flex: 1;
- }
- .w-60 {
- box-sizing: border-box;
- width: 60px;
- text-align: center;
- border-left: 1px solid #fce5bd;
- }
- .w-50 {
- box-sizing: border-box;
- width: 60px;
- text-align: center;
- border-left: 1px solid #fce5bd;
- }
- .card-bg {
- background: #fff;
- padding: 10px;
- display: flex;
- }
- .card-xianzhong {
- border: 1px solid #2ab79e;
- flex: 1;
- background: rgba(42, 183, 158, 0.15);
- border-radius: 0;
- text-align: center;
- color: #2ab79e;
- // border: 10px solid #FFF;
- font-size: 15px;
- padding: 0 18px;
- display: flex;
- flex-direction: column;
- justify-content: center;
- .card-btn {
- margin-top: 20px;
- border-radius: 2px;
- border: 1px solid #2ab79e;
- background: #fff;
- padding: 4px 8px;
- font-size: 16px;
- font-weight: 600;
- }
- }
- .card-table {
- margin-top: 12px;
- .table-title {
- color: #333;
- width: 58px;
- font-size: 14px;
- }
- .table-list {
- flex: 1;
- .table-list-title {
- background: #fdedc2;
- border: 1px solid #fce5bd;
- color: #333;
- line-height: 28px;
- padding-left: 12px;
- display: flex;
- }
- .table-list-content {
- line-height: 28px;
- padding-left: 12px;
- display: flex;
- align-items: center;
- border: 1px solid #fdedc2;
- border-top: none;
- background: #fff;
- img {
- width: 14px;
- height: 14px;
- transform: translateY(2px);
- }
- span {
- margin-left: 8px;
- font-size: 14px;
- }
- }
- }
- }
- .card-mingxi {
- border: 1px solid #fd9a25;
- flex: 1;
- background: rgba(253, 154, 37, 0.15);
- padding: 8px 12px;
- font-size: 13px;
- .card-mingxi-title {
- color: #fd9a25;
- font-size: 15px;
- span {
- color: #fff;
- background: linear-gradient(90deg, #ff981f 0%, #ff5c00 100%);
- padding: 4px 8px;
- border-radius: 2px;
- }
- }
- }
- .fuwu {
- background: #e9f1ff;
- border: 1px solid #315ba9;
- .card-mingxi-title {
- color: #315ba9;
- }
- .table-list-title {
- background: #c1daff !important;
- border: 1px solid #c1daff !important;
- }
- .table-list-content {
- border-color: #c1daff !important;
- }
- .w-50 {
- border-color: #afccfa !important;
- }
- .flex-1 {
- border-right: 1px solid #afccfa;
- }
- .w-55 {
- border-left: none !important;
- }
- }
- .baoxian {
- padding: 10px;
- border: 1px solid rgba(45, 77, 137, 0.5);
- // background: #F2F4F8;
- background: #f3f3f3;
- display: flex;
- flex-direction: column;
- .card-mingxi-title {
- color: #333;
- display: flex;
- }
- .table-list-title {
- background: #dcdce8 !important;
- }
- .table-list-title,
- .table-list-content {
- padding-left: 0 !important;
- text-align: center;
- border-color: #dcdce8 !important;
- }
- .table-list-title {
- padding-left: 0 !important;
- text-align: center;
- border: 1px solid #dcdce8 !important;
- }
- .flex-1 {
- border-left: 1px solid #dcdce8;
- }
- .w-40 {
- box-sizing: border-box;
- width: 50px;
- text-align: center;
- }
- }
- .youhui {
- background: #feeeec;
- border: 1px solid #ed5626;
- .card-mingxi-title {
- color: #ed5626;
- }
- .table-list-title {
- background: #ffd2c8 !important;
- border: 1px solid #ffd2c8 !important;
- }
- .table-list-content {
- border-color: #ffd2c8 !important;
- padding-left: 0 !important;
- }
- .table-list-line {
- border-bottom: 1px solid #ffd2c8;
- border-right: 1px solid #ffd2c8;
- padding-left: 6px;
- }
- .table-list-line-last {
- border-bottom: none !important;
- }
- .w-60 {
- width: 70px !important;
- border-color: #fabdae !important;
- }
- .w-66 {
- border-left: none !important;
- }
- }
- .el-popover {
- margin-right: 20px;
- padding: 0 !important;
- }
- .gray-style {
- border: 1px solid #333333;
- border-radius: 2px;
- color: #333;
- text-align: center;
- line-height: 24px;
- box-sizing: border-box;
- padding: 4px 8px;
- margin-right: 10px;
- opacity: 0.65;
- // transition: all ease .3s;
- img {
- margin-bottom: -4px;
- }
- &:hover {
- opacity: 1;
- }
- }
- .juse-style {
- color: #fff;
- background: linear-gradient(90deg, #ff981f 0%, #ff5c00 100%);
- padding: 4px 8px;
- border-radius: 2px;
- }
- .blue-style {
- // background: #2D4D89;
- background: linear-gradient(270deg, #0052ff 0%, #6899ff 100%);
- // border: 1px solid #2D4D89;
- border: none;
- color: #fff;
- border-radius: 2px;
- padding: 4px 8px;
- text-align: center;
- line-height: 24px;
- box-sizing: border-box;
- opacity: 1;
- position: relative;
- // ::after {
- // content: '✔';
- // color: red;
- // position: absolute;
- // bottom: 0;
- // right: 0;
- // width: 4px;
- // height: 4px;
- // }
- }
- .blue-text {
- color: #2d4d89;
- }
- .left-title {
- font-size: 14px;
- margin-bottom: 12px;
- }
- .blue-button {
- background: #2d4d89;
- color: #fff;
- padding: 4px 8px;
- line-height: 24px;
- border: 1px solid #2d4d89;
- border-radius: 2px;
- }
- .company-checked-card {
- background: #fff;
- padding: 12px;
- margin-top: 12px;
- >div {
- display: flex;
- margin: 10px;
- }
- .checked-card-title {
- width: 60px;
- }
- span {
- margin-right: 20px;
- }
- }
- .company-checked-right {
- padding: 0 12px;
- color: #333;
- line-height: 22px;
- font-size: 14px;
- position: relative;
- .btn-list {
- display: flex;
- justify-content: right;
- align-items: center;
- span {
- margin: 0 10px;
- color: #2d4d89;
- font-size: 12px;
- }
- }
- }
- }
- .typedialog-style {
- .typedialog-title {
- font-size: 15px;
- line-height: 30px;
- font-weight: 700;
- margin: 10px 0;
- color: #000;
- }
- >>>.table-header {
- background: #f7f7f9;
- color: #333333;
- }
- .el-checkbox-group {
- font-size: 16px;
- color: #333;
- margin-bottom: 20px;
- }
- .more-data-left {
- border: 1px solid #f5f5f8;
- line-height: 48px;
- padding: 0 20px;
- border-top: none;
- position: relative;
- .zhuxian {
- position: absolute;
- top: 0;
- right: 0;
- padding: 4px 12px;
- color: #fff;
- background: #ed9e23;
- font-size: 13px;
- line-height: 12px;
- }
- }
- .more-data-right {
- border: 1px solid #f5f5f8;
- line-height: 48px;
- padding: 0 20px;
- border-top: none;
- border-left: none;
- }
- >>>.is-checked,
- >>>.is-indeterminate {
- .el-checkbox__inner {
- background: #2d4d89 !important;
- border-color: #2d4d89 !important;
- }
- .el-checkbox__label {
- color: #2d4d89;
- }
- }
- .opacity1 {
- opacity: 1;
- }
- .opacity0 {
- opacity: 0.65;
- }
- .jiayi-style {
- font-size: 13px;
- text-align: center;
- .el-col {
- border: 1px solid #2d4d89;
- margin: 0 1px;
- background: rgba(45, 77, 137, 0.05);
- }
- .jiayi-style-title {
- background: #2d4d89;
- color: #fff;
- line-height: 40px;
- }
- .jiayi-style-line {
- color: #333;
- padding: 16px 20px;
- }
- }
- }
- .typedialog-style1 {
- background: rgba(42, 183, 158, 0.15);
- padding: 20px;
- margin-bottom: 20px;
- border-radius: 10px;
- }
- .typedialog-style2 {
- background: rgba(253, 154, 37, 0.15);
- padding: 20px;
- margin-bottom: 20px;
- border-radius: 10px;
- }
- .typedialog-style3 {
- background: #e9f1ff;
- padding: 20px;
- border-radius: 10px;
- }
- .addyiwai {
- >>>.el-input-group__append,
- >>>.el-input-group__prepend {
- padding: 0 10px;
- }
- >>>.el-dialog__body {
- padding: 24px;
- background: #f2f2f2;
- }
- .addyiwai-title {
- color: #262626;
- font-size: 16px;
- line-height: 24px;
- margin-right: 10px;
- }
- .addyiwai-title-btn {
- background: #eaedf1;
- box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.02);
- border-radius: 2px 2px 2px 2px;
- border: 1px solid #d9d9d9;
- font-size: 14px;
- color: #2d4d89;
- padding: 4px 10px;
- cursor: pointer;
- }
- .el-select {
- width: 200px;
- }
- }
- .teYuedialog-style {
- >>>.el-dialog__body {
- padding: 10px 20px;
- }
- >>>.el-input__inner:focus {
- border-color: #f96646;
- }
- >>>.el-input-group__append,
- .el-input-group__prepend,
- >>>.el-button--primary,
- .el-button--primary:focus {
- border-color: #f96646;
- background: linear-gradient(90deg, #f6734a 0%, #f14b3a 100%);
- color: #fff;
- }
- >>>.is-checked,
- >>>.is-indeterminate {
- .el-checkbox__inner {
- background: #f96646 !important;
- border-color: #f96646 !important;
- }
- .el-checkbox__label {
- color: #f96646;
- }
- }
- >>>.table-header {
- background: #f7f7f9;
- color: #333333;
- }
- .table-title {
- font-size: 12px;
- color: #333;
- line-height: 20px;
- padding: 2px 20px;
- }
- .dialog-footer {
- display: flex;
- align-items: center;
- >span {
- color: #333;
- font-size: 13px;
- }
- }
- }
- .red-btn {
- >>>.el-input-group__append {
- border-color: #d42426;
- background: #d42426;
- }
- >>>.el-input__prefix {
- color: #d42426;
- }
- .insure-long-term {
- position: relative;
- top: 1px;
- }
- >>>.input {
- border-radius: 4px 0 0 4px;
- }
- }
- .synchronous {
- width: 75px;
- height: 45px;
- line-height: 45px;
- color: #fff;
- position: relative;
- img {
- position: absolute;
- top: 0;
- left: 0;
- width: 75px;
- height: 45px;
- z-index: 0;
- }
- >div {
- width: 75px;
- height: 45px;
- line-height: 45px;
- color: #fff;
- cursor: pointer;
- position: relative;
- text-align: center;
- font-size: 14px;
- }
- }
- .bxgs-list {
- position: relative;
- .baofeijisuan {
- position: absolute;
- right: 5.333%;
- top: 0;
- // border: 1px solid rgb(26, 77, 219);
- // color: rgb(26, 77, 219);
- .btn{
- background: linear-gradient(270deg, #0052ff 0%, #6899ff 100%);
- border-radius: 4px;
- color: #fff;
- font-size: 14px;
- line-height: 20px;
- padding: 4px 8px;
- font-weight: 700;
- margin-right: 10px;
- }
- }
- }
- .coefficient {
- width: 100px;
- >>>.el-input__inner {
- border: none;
- }
- }
- .loader {
- /* Wave text loader made by: csozi | Website: english.csozi.hu*/
- height: 30px;
- .text {
- margin: 0;
- line-height: 24px;
- color: red;
- font-weight: bolder;
- background: -webkit-linear-gradient(45deg,
- orange,
- orangered);
- /* Chrome, Safari */
- background: linear-gradient(45deg, orange, orangered);
- /* Standard syntax */
- -webkit-background-clip: text;
- /* Chrome, Safari */
- background-clip: text;
- -webkit-text-fill-color: transparent;
- /* Chrome, Safari */
- color: transparent;
- /* Standard syntax (currently not supported by browsers) */
- font-family: "'Gill Sans', 'Gill Sans MT', 'Calibri', 'Trebuchet MS', sans-serif'";
- }
- @keyframes letter {
- 0% {
- font-size: 14px;
- }
- 50% {
- font-size: 15px;
- }
- 100% {
- font-size: 14px;
- }
- }
- .letter {
- animation: letter 1s infinite;
- }
- .letter1 {
- animation-delay: 0s;
- }
- .letter2 {
- animation-delay: -0.9s;
- }
- .letter3 {
- animation-delay: -0.8s;
- }
- .letter4 {
- animation-delay: -0.7s;
- }
- .letter5 {
- animation-delay: -0.6s;
- }
- .letter6 {
- animation-delay: -0.5s;
- }
- .letter7 {
- animation-delay: -0.4s;
- }
- .letter8 {
- animation-delay: -0.3s;
- }
- .letter9 {
- animation-delay: -0.2s;
- }
- .letter10 {
- animation-delay: -0.1s;
- }
- }
- .xianbie {
- // border: 5px dashed #D42426;
- background: #d4242734;
- .home {
- border-bottom: none !important;
- }
- }
- .mini-input {
- >>>.el-input__inner {
- padding: 0 4px !important;
- text-align: center;
- }
- }
- .QRCode {
- position: relative;
- width: 200px;
- height: 200px;
- overflow: hidden;
- margin: 0 auto;
- }
- </style>
|