quoteDetail.vue 95 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294
  1. <template>
  2. <view :style="getHeight">
  3. <!-- 公共组件-每个页面必须引入 -->
  4. <public-module></public-module>
  5. <!-- 头部 -->
  6. <view class="headers dis f-c j-end">
  7. <view class="price dis a-c j-c">
  8. <image :src="logoimg" mode="" style="width: 20px;height: 20px;">
  9. </image>
  10. <text style="font-weight: bold;margin-left: 6px;font-size: 15px;">{{orderInfo.inscompany}}</text>
  11. </view>
  12. <view style="background-color: #fff;box-shadow: inset rgb(218, 227, 244) 0px 1px 4px 0px;"
  13. class="dis f-c p-2 ">
  14. <view class="" style="border-bottom: 1px dashed #EFEFEF;padding-bottom: 10px;">
  15. <view style="font-size: 16px;" class="dis j-s a-c ">
  16. <text style="color: #232832;font-weight: bold;">{{this.licenseNo}}</text>
  17. <text style="color: #FF5600;">¥{{sumPermium}}</text>
  18. </view>
  19. <text style="color: rgba(51,51,51,0.8);font-size: 14px;">{{carInfo.modelcname}}</text>
  20. </view>
  21. <view class="dis Circle" style="padding-top: 10px;">
  22. <view style="width: 49%;border-right: 1px dashed #EFEFEF;" class="dis f-c a-start ">
  23. <text style="font-size: 15px;font-weight: bold;"
  24. v-if="orderInfo.jqstartdate">{{ orderInfo.jqstartdate }}</text>
  25. <text v-else>-</text>
  26. <text style="font-size: 14px;color: rgba(51,51,51,0.8);">交强险起保日期</text>
  27. </view>
  28. <view style="width: 49%;" class="dis f-c a-end">
  29. <text style="font-size: 15px;font-weight: bold;"
  30. v-if="orderInfo.systartdate">{{ orderInfo.systartdate }}</text>
  31. <text v-else>-</text>
  32. <text style="font-size: 14px;color: rgba(51,51,51,0.8);">商业险起保日期</text>
  33. </view>
  34. </view>
  35. </view>
  36. </view>
  37. <view class="page">
  38. <view class="quotePlan">
  39. <view class="header d-flex a-center j-sb">
  40. <view class="title">报价方案</view>
  41. </view>
  42. <view class="body" style="box-shadow: 0px 4px 10px 0px #DAE3F4;">
  43. <view class="row d-flex a-center j-sb">
  44. <view v-if="sumPermium">总额:</view>
  45. <view>{{sumPermium}}</view>
  46. </view>
  47. <view class="row d-flex a-center j-sb">
  48. <view>车船税:</view>
  49. <view>{{taxAmount}}</view>
  50. </view>
  51. <view v-if="jypremium" class="row d-flex a-center j-sb">
  52. <view>驾意险:</view>
  53. <view>{{jypremium}}</view>
  54. </view>
  55. <view v-if="jqpremium" class="row d-flex a-center j-sb">
  56. <view>交强险:</view>
  57. <view>{{jqpremium}}</view>
  58. </view>
  59. <view v-if="sypremium" class="row dis f-c">
  60. <view class="dis a-c j-s" style="width: 100%;">
  61. <view>商业险:</view>
  62. <view>{{sypremium}}</view>
  63. </view>
  64. <view class="kindList mt-3">
  65. <block v-for="(item,index) in kindList" :key="index">
  66. <template v-if="item.coveragePremium">
  67. <view class="kindItem dis">
  68. <view class="dis j-start" style="width: 33.33%;">
  69. <text>{{item.kindName}}</text>
  70. </view>
  71. <view class="dis a-c j-c" v-if="['A'].includes(item.kindCode)"
  72. style="width: 33.33%;"><text>
  73. {{item.amount}}</text>
  74. </view>
  75. <view class="dis a-c j-c"
  76. v-else-if="['D4', 'SY_FJ_YBW2'].includes(item.kindCode)"
  77. style="width: 33.33%;">
  78. <text>{{toChinesNum(item.unitAmount)}}/座*{{orderInfo.carinfo.seatCount-1}}</text>
  79. </view>
  80. <view class="dis a-c j-c"
  81. v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(item.kindCode)"
  82. style="width: 33.33%;">
  83. <text>{{item.deductibleRate}}%</text>
  84. </view>
  85. <view class="dis a-c j-c" v-else style="width: 33.33%;">
  86. <text>{{toChinesNum(item.amount)}}</text>
  87. </view>
  88. <view class="dis a-c j-end" style="width: 33.33%;">
  89. <text>¥{{item.coveragePremium}}</text>
  90. </view>
  91. </view>
  92. </template>
  93. </block>
  94. </view>
  95. </view>
  96. <view class="addedServices" v-if="roadrescueList.length>0">
  97. <view class="row d-flex a-center j-sb">
  98. <view class="d-flex">增值服务<view class="d-flex a-center"
  99. style="color:#999;margin-left: 10upx;font-size: 24upx;">
  100. 不收费,使用不影响明年保费</view>
  101. </view>
  102. <view>赠送</view>
  103. </view>
  104. <view class="kindList">
  105. <view class="kindItem d-flex a-center j-sb" v-for="(item,index) in roadrescueList"
  106. :key="index">
  107. <view>{{item.kindName}}</view>
  108. <view class="d-flex j-end">{{item.serviceTimes}}次</view>
  109. </view>
  110. </view>
  111. </view>
  112. </view>
  113. </view>
  114. <view class="car">
  115. <view class="header d-flex a-center j-sb" @tap="showextendInfo = !showextendInfo">
  116. <view class="title">保费因素</view>
  117. <view class="adjustPlan d-flex">
  118. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  119. </view>
  120. </view>
  121. <view class="body" v-if="showextendInfo">
  122. <view class="row d-flex a-center j-sb">
  123. <view>评分</view>
  124. <view>{{extendInfo.score}}</view>
  125. </view>
  126. <view class="row d-flex a-center j-sb">
  127. <view>交强评分</view>
  128. <view style="color: #ff9000;">{{extendInfo.jqScore}}</view>
  129. </view>
  130. <view class="row d-flex a-center j-sb">
  131. <view>商业评分</view>
  132. <view style="color: #ff9000;">{{extendInfo.syScore}}</view>
  133. </view>
  134. <view class="row d-flex a-center j-sb">
  135. <view>出险信息</view>
  136. <view style="width: 200px;text-align: right;">
  137. {{extendInfo.accidentInfoStr}}
  138. </view>
  139. </view>
  140. <view class="row d-flex a-center j-sb">
  141. <view>总赔付率</view>
  142. <view>{{extendInfo.lossRation}}</view>
  143. </view>
  144. <view class="row d-flex a-center j-sb">
  145. <view>交强赔付率</view>
  146. <view>{{extendInfo.jqLossRation}}</view>
  147. </view>
  148. <view class="row d-flex a-center j-sb">
  149. <view>商业赔付率</view>
  150. <view>{{extendInfo.syLossRation}}</view>
  151. </view>
  152. <view class="row d-flex a-center j-sb">
  153. <view>总折扣率</view>
  154. <view>{{extendInfo.totalAdjustRate}}</view>
  155. </view>
  156. <view class="row d-flex a-center j-sb">
  157. <view>交强险折扣</view>
  158. <view>{{extendInfo.jqAdjustRate}}</view>
  159. </view>
  160. <view class="row d-flex a-center j-sb">
  161. <view>商业险折扣</view>
  162. <view>{{extendInfo.syAdjustRate}}</view>
  163. </view>
  164. </view>
  165. </view>
  166. <view class="car">
  167. <view class="header d-flex a-center j-sb" @tap="showCarInfo = !showCarInfo">
  168. <view class="title">车辆信息</view>
  169. <view class="adjustPlan d-flex">
  170. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  171. </view>
  172. </view>
  173. <view class="body" v-if="showCarInfo">
  174. <view class="row d-flex a-center j-sb">
  175. <view>车牌号</view>
  176. <view>{{carInfo.licenseNo}}</view>
  177. </view>
  178. <view class="row d-flex a-center j-sb">
  179. <view>品牌型号</view>
  180. <view>{{carInfo.brandName}}</view>
  181. </view>
  182. <view class="row d-flex a-center j-sb">
  183. <view>车辆识别代码</view>
  184. <view>{{carInfo.vinNo}}</view>
  185. </view>
  186. <view class="row d-flex a-center j-sb">
  187. <view>发动机号</view>
  188. <view>{{carInfo.engineNo}}</view>
  189. </view>
  190. <view class="row d-flex a-center j-sb">
  191. <view>注册日期</view>
  192. <view>{{carInfo.registerDate }}</view>
  193. </view>
  194. <view class="row d-flex a-center j-sb">
  195. <view>核定载人数</view>
  196. <view>{{carInfo.seatCount}}</view>
  197. </view>
  198. <view class="row d-flex a-center j-sb">
  199. <view>车主</view>
  200. <view>{{ownerInfo.name}}</view>
  201. </view>
  202. </view>
  203. </view>
  204. <view class="personInfo">
  205. <view class="title d-flex a-center j-sb" @tap="showOwerInfo=!showOwerInfo">
  206. <text style="font-weight: bold;">车主</text>
  207. <view class="adjustPlan d-flex">
  208. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  209. </view>
  210. </view>
  211. <view class="content" v-if="showOwerInfo">
  212. <view class="row d-flex a-center">
  213. <view class="left">姓名:</view>
  214. <view class="right d-flex flex-1">{{ownerInfo.name}}</view>
  215. </view>
  216. <view class="row d-flex a-center">
  217. <view class="left">证件类型:</view>
  218. <view class="right flex-1">{{(policyHolderInfo.identifyType=='01')?'身份证':'其他'}}</view>
  219. </view>
  220. <view class="row d-flex a-center">
  221. <view class="left">手机号:</view>
  222. <view class="right flex-1">{{ownerInfo.mobile}}</view>
  223. </view>
  224. <view class="row d-flex a-center">
  225. <view class="left">证件号:</view>
  226. <view class="right flex-1">{{ownerInfo.identifyNumber}}</view>
  227. </view>
  228. <view class="row d-flex a-center"
  229. style="height:auto;min-height: 80upx;padding: 15upx 0;box-sizing: border-box; ">
  230. <view class="left">地址:</view>
  231. <view class="right flex-1">{{ownerInfo.addr}}</view>
  232. </view>
  233. </view>
  234. </view>
  235. <!-- 投保人信息 -->
  236. <view class="personInfo">
  237. <view class="title d-flex a-center j-sb" @tap="showPolicyHolderInfo=!showPolicyHolderInfo">
  238. <text style="font-weight: bold;">投保人</text>
  239. <view class="adjustPlan d-flex">
  240. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  241. </view>
  242. </view>
  243. <view class="content" v-if="showPolicyHolderInfo">
  244. <view class="row d-flex a-center">
  245. <view class="left">姓名:</view>
  246. <view class="right d-flex flex-1">{{policyHolderInfo.name}}</view>
  247. </view>
  248. <view class="row d-flex a-center">
  249. <view class="left">证件类型:</view>
  250. <view class="right d-flex flex-1">{{(policyHolderInfo.identifyType=='01')?'身份证':'其他'}}
  251. </view>
  252. </view>
  253. <view class="row d-flex a-center">
  254. <view class="left">手机号:</view>
  255. <view class="right d-flex flex-1">{{policyHolderInfo.mobile}}</view>
  256. </view>
  257. <view class="row d-flex a-center">
  258. <view class="left">证件号:</view>
  259. <view class="right d-flex flex-1">{{policyHolderInfo.identifyNumber}}</view>
  260. </view>
  261. <view class="row d-flex a-center"
  262. style="height:auto;min-height: 80upx;padding: 15upx 0;box-sizing: border-box; ">
  263. <view class="left">地址:</view>
  264. <view class="right d-flex flex-1">{{policyHolderInfo.addr}}</view>
  265. </view>
  266. </view>
  267. </view>
  268. <!-- 被保人信息 -->
  269. <view class="personInfo">
  270. <view class="title d-flex a-center j-sb" @tap="showInsuredPersonInfo=!showInsuredPersonInfo">
  271. <text style="font-weight: bold;">被保人</text>
  272. <view class="adjustPlan d-flex">
  273. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  274. </view>
  275. </view>
  276. <view class="content" v-if="showInsuredPersonInfo">
  277. <view class="row d-flex a-center">
  278. <view class="left">姓名:</view>
  279. <view class="right d-flex flex-1">{{insuredPersonInfo.name}}</view>
  280. </view>
  281. <view class="row d-flex a-center">
  282. <view class="left">证件类型:</view>
  283. <view class="right d-flex flex-1">{{(policyHolderInfo.identifyType=='01')?'身份证':'其他'}}
  284. </view>
  285. </view>
  286. <view class="row d-flex a-center">
  287. <view class="left">手机号:</view>
  288. <view class="right d-flex flex-1">{{insuredPersonInfo.mobile}}</view>
  289. </view>
  290. <view class="row d-flex a-center">
  291. <view class="left">证件号:</view>
  292. <view class="right d-flex flex-1">{{insuredPersonInfo.identifyNumber}}</view>
  293. </view>
  294. <view class="row d-flex a-center"
  295. style="height:auto;min-height: 80upx;padding: 15upx 0;box-sizing: border-box; ">
  296. <view class="left">地址:</view>
  297. <view class="right d-flex flex-1">{{insuredPersonInfo.addr}}</view>
  298. </view>
  299. </view>
  300. </view>
  301. <view class="imageInfo">
  302. <view class="title d-flex a-center j-sb" @tap="showCarImageInfo=!showCarImageInfo">
  303. <text style="font-weight: bold;">车辆影像信息</text>
  304. <view class="adjustPlan d-flex">
  305. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  306. </view>
  307. </view>
  308. <view class="uni-uploader" v-if="showCarImageInfo">
  309. <view class="uni-uploader-body dis j-s a-c">
  310. <view class="uni-uploader__files f-c dis ">
  311. <text>行驶证主页</text>
  312. <block v-for="(image,index) in imgList1" :key="index">
  313. <view class="uni-uploader__file">
  314. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  315. @tap="previewImage($event,'imgList1')"></image>
  316. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  317. @tap="delCheckImage(image,'carImageListId','imgList1')"></view>
  318. </view>
  319. </block>
  320. <view v-if="imgList1.length==0" class="uni-uploader__input-box"
  321. style="box-sizing: border-box;">
  322. <view class="uni-uploader__input" @tap="chooseImage('C01','carImageListId','imgList1')">
  323. </view>
  324. </view>
  325. </view>
  326. <view class="uni-uploader__files f-c dis ">
  327. <text>行驶证副本</text>
  328. <block v-for="(image,index) in imgList2" :key="index">
  329. <view class="uni-uploader__file">
  330. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  331. @tap="previewImage($event,'imgList2')"></image>
  332. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  333. @tap="delCheckImage(image,'carImageListId','imgList2')"></view>
  334. </view>
  335. </block>
  336. <view v-if="imgList2.length==0" class="uni-uploader__input-box"
  337. style="box-sizing: border-box;">
  338. <view class="uni-uploader__input" @tap="chooseImage('D01','carImageListId','imgList2')">
  339. </view>
  340. </view>
  341. </view>
  342. </view>
  343. </view>
  344. </view>
  345. <!-- 车辆影像信息End -->
  346. <!-- 车主影像信息Start -->
  347. <view class="imageInfo">
  348. <view class="title d-flex a-center j-sb" @tap="showOwnerImageInfo=!showOwnerImageInfo">
  349. <text style="font-weight: bold;">车主影像信息</text>
  350. <view class="adjustPlan d-flex">
  351. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  352. </view>
  353. </view>
  354. <view class="uni-uploader" v-if="showOwnerImageInfo">
  355. <view class="uni-uploader-body dis ">
  356. <view class="uni-uploader__files dis f-c a-c">
  357. <text>正面</text>
  358. <block v-for="(image,index) in imgList3" :key="index">
  359. <view class="uni-uploader__file">
  360. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  361. @tap="previewImage($event,'imgList3')"></image>
  362. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  363. @tap="delCheckImage(image,'ownerImageListId','imgList3')"></view>
  364. </view>
  365. </block>
  366. <view v-if="imgList3.length==0" class="uni-uploader__input-box"
  367. style="box-sizing: border-box;">
  368. <view class="uni-uploader__input"
  369. @tap="chooseImage('C02','ownerImageListId','imgList3')"></view>
  370. </view>
  371. </view>
  372. <view class="uni-uploader__files dis f-c a-c">
  373. <text>反面</text>
  374. <block v-for="(image,index) in imgList4" :key="index">
  375. <view class="uni-uploader__file">
  376. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  377. @tap="previewImage($event,'imgList4')"></image>
  378. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  379. @tap="delCheckImage(image,'ownerImageListId','imgList4')"></view>
  380. </view>
  381. </block>
  382. <view v-if="imgList4.length==0" class="uni-uploader__input-box"
  383. style="box-sizing: border-box;">
  384. <view class="uni-uploader__input"
  385. @tap="chooseImage('D02','ownerImageListId','imgList4')"></view>
  386. </view>
  387. </view>
  388. </view>
  389. </view>
  390. </view>
  391. <!-- 车主影像信息End -->
  392. <!-- 投保人影像信息Start -->
  393. <view class="imageInfo">
  394. <view class="title d-flex a-center j-sb" @tap="showPolicyImageInfo=!showPolicyImageInfo">
  395. <text style="font-weight: bold;">投保人影像信息</text>
  396. <view class="adjustPlan d-flex">
  397. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  398. </view>
  399. </view>
  400. <view class="uni-uploader" v-if="showPolicyImageInfo">
  401. <view class="uni-uploader-body dis ">
  402. <view class="uni-uploader__files dis f-c a-c">
  403. <text>正面</text>
  404. <block v-for="(image,index) in imgList5" :key="index">
  405. <view class="uni-uploader__file">
  406. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  407. @tap="previewImage($event,'imgList5')"></image>
  408. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  409. @tap="delCheckImage(image,'policyImageListId','imgList5')"></view>
  410. </view>
  411. </block>
  412. <view v-if="imgList5.length==0" class="uni-uploader__input-box"
  413. style="box-sizing: border-box;">
  414. <view class="uni-uploader__input"
  415. @tap="chooseImage('C03','policyImageListId','imgList5')"></view>
  416. </view>
  417. </view>
  418. <view class="uni-uploader__files dis f-c a-c">
  419. <text>反面</text>
  420. <block v-for="(image,index) in imgList6" :key="index">
  421. <view class="uni-uploader__file">
  422. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  423. @tap="previewImage($event,'imgList6')"></image>
  424. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  425. @tap="delCheckImage(image,'policyImageListId','imgList6')"></view>
  426. </view>
  427. </block>
  428. <view v-if="imgList6.length==0" class="uni-uploader__input-box"
  429. style="box-sizing: border-box;">
  430. <view class="uni-uploader__input"
  431. @tap="chooseImage('D03','policyImageListId','imgList6')"></view>
  432. </view>
  433. </view>
  434. </view>
  435. </view>
  436. </view>
  437. <!-- 投保人影像信息End -->
  438. <!-- 被保人影像信息Start -->
  439. <view class="imageInfo">
  440. <view class="title d-flex a-center j-sb" @tap="showInsuredImageInfo=!showInsuredImageInfo">
  441. <text style="font-weight: bold;">被保人影像信息</text>
  442. <view class="adjustPlan d-flex">
  443. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  444. </view>
  445. </view>
  446. <view class="uni-uploader" v-if="showInsuredImageInfo">
  447. <view class="uni-uploader-body dis ">
  448. <view class="uni-uploader__files dis f-c a-c">
  449. <text>正面</text>
  450. <block v-for="(image,index) in imgList7" :key="index">
  451. <view class="uni-uploader__file">
  452. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  453. @tap="previewImage($event,'imgList7')"></image>
  454. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  455. @tap="delCheckImage(image,'insuredImageListId','imgList7')"></view>
  456. </view>
  457. </block>
  458. <view v-if="imgList7.length==0" class="uni-uploader__input-box"
  459. style="box-sizing: border-box;">
  460. <view class="uni-uploader__input"
  461. @tap="chooseImage('C04','insuredImageListId','imgList7')"></view>
  462. </view>
  463. </view>
  464. <view class="uni-uploader__files dis f-c a-c">
  465. <text>反面</text>
  466. <block v-for="(image,index) in imgList8" :key="index">
  467. <view class="uni-uploader__file">
  468. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  469. @tap="previewImage($event,'imgList8')"></image>
  470. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  471. @tap="delCheckImage(image,'insuredImageListId','imgList8')"></view>
  472. </view>
  473. </block>
  474. <view v-if="imgList8.length==0" class="uni-uploader__input-box"
  475. style="box-sizing: border-box;">
  476. <view class="uni-uploader__input"
  477. @tap="chooseImage('D04','insuredImageListId','imgList8')"></view>
  478. </view>
  479. </view>
  480. </view>
  481. </view>
  482. </view>
  483. <!-- 被保人影像信息End -->
  484. <!-- 新车影像信息Start -->
  485. <view class="imageInfo">
  486. <view class="title d-flex a-center j-sb" @tap="showNewCarImageInfo=!showNewCarImageInfo">
  487. <text style="font-weight: bold;">新车照片</text>
  488. <view class="adjustPlan d-flex">
  489. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  490. </view>
  491. </view>
  492. <view class="uni-uploader" v-if="showNewCarImageInfo">
  493. <view class="uni-uploader-body dis ">
  494. <view class="uni-uploader__files dis f-c a-c">
  495. <text>新车合格证</text>
  496. <block v-for="(image,index) in imgNewCarQualified" :key="index">
  497. <view class="uni-uploader__file">
  498. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  499. @tap="previewImage($event,'imgNewCarQualified')"></image>
  500. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  501. @tap="delCheckImage(image,'imgNewCarinvoiceId','imgNewCarQualified')">
  502. </view>
  503. </view>
  504. </block>
  505. <view v-if="imgNewCarQualified.length==0" class="uni-uploader__input-box"
  506. style="box-sizing: border-box;">
  507. <view class="uni-uploader__input"
  508. @tap="chooseImage('XC00','imgNewCarinvoiceId','imgNewCarQualified')"></view>
  509. </view>
  510. </view>
  511. <view class="uni-uploader__files dis f-c a-c">
  512. <text>购车发票</text>
  513. <block v-for="(image,index) in imgNewCarInvoice" :key="index">
  514. <view class="uni-uploader__file">
  515. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  516. @tap="previewImage($event,'imgNewCarInvoice')"></image>
  517. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center"
  518. @tap="delCheckImage(image,'imgNewCarinvoiceId','imgNewCarInvoice')"></view>
  519. </view>
  520. </block>
  521. <view v-if="imgNewCarInvoice.length==0" class="uni-uploader__input-box"
  522. style="box-sizing: border-box;">
  523. <view class="uni-uploader__input"
  524. @tap="chooseImage('GC00','imgNewCarinvoiceId','imgNewCarInvoice')"></view>
  525. </view>
  526. </view>
  527. </view>
  528. </view>
  529. </view>
  530. <!-- 新车影像信息End -->
  531. <!-- 验车照Start -->
  532. <view class="imageInfo">
  533. <view class="title d-flex a-center j-sb" @tap="showCarCheckImageInfo=!showCarCheckImageInfo">
  534. <text style="font-weight: bold;">其他关系证明</text>
  535. <view class="adjustPlan d-flex">
  536. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  537. </view>
  538. </view>
  539. <view class="uni-uploader" v-if="showCarCheckImageInfo">
  540. <view class="uni-uploader-body">
  541. <view class="uni-uploader__files">
  542. <block v-for="(image,index) in imgRelationship" :key="index">
  543. <view class="uni-uploader__file">
  544. <image class="uni-uploader__img" :src="image.url" :data-src="image.url"
  545. @tap="previewImage($event,'imgRelationship')"></image>
  546. <view class="delImgIcon iconfont icon-cuo d-flex a-center j-center "
  547. @tap="delCheckImage('imgRelationship',index)"></view>
  548. </view>
  549. </block>
  550. <view class="uni-uploader__input-box" style="box-sizing: border-box;">
  551. <view class="uni-uploader__input"
  552. @tap="chooseImage('GX00','imgRelationshipid','imgRelationship')"></view>
  553. </view>
  554. </view>
  555. </view>
  556. </view>
  557. </view>
  558. <!-- 特约 -->
  559. <view class="appoint" v-if="['紫金财险','华泰财险'].includes(this.name)">
  560. <view class="title d-flex a-center j-sb" @tap="showAppoint=!showAppoint">
  561. <text style="font-weight: bold;">特约</text>
  562. <view class="adjustPlan d-flex">
  563. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  564. </view>
  565. </view>
  566. <view class=" dis f-c j-c " v-if="showAppoint"
  567. style="background-color: #fff;padding: 8px 15px;border-radius: 6px;">
  568. <template v-if="this.name=='紫金财险'">
  569. <u-button type="warning" size="mini" style="width: 80px;margin-top: 5px;"
  570. @click="ziJinshow=true">特约选择</u-button>
  571. <view class="contributing dis f-c" v-for="(ziJinitem,ziJinindex) in ziJinengageList"
  572. :key="ziJinindex">
  573. <text style="font-size: 14px;">{{ziJinitem.clauseName}}</text>
  574. <u-input v-if="ziJinitem.modifyFlag==1" :border="true" v-model="ziJinitem.clauses"
  575. size="mini" type="textarea" :custom-style="{fontSize:'12px'}" />
  576. <text v-else>{{ziJinitem.clauses}}</text>
  577. </view>
  578. </template>
  579. <template v-if="this.name=='华泰财险'">
  580. <u-button type="warning" size="mini" style="width: 80px;margin-top: 5px;"
  581. @click="huaTaishow=true">特约选择</u-button>
  582. <view class="contributing dis f-c" v-for="(huaTaiitem, huaTaiindex) in huaTaiengageList"
  583. :key="huaTaiindex">
  584. <text style="font-size: 14px;">{{huaTaiitem.engageTitle}}</text>
  585. <u-input v-if="huaTaiitem.modifyFlag==1" :border="true" v-model="huaTaiitem.engageDetail"
  586. size="mini" type="textarea" :custom-style="{fontSize:'12px'}" />
  587. <text v-else>{{huaTaiitem.engageDetail}}</text>
  588. </view>
  589. </template>
  590. </view>
  591. </view>
  592. <view class="personInfo" v-if="!!orderInfo.jqapplyno">
  593. <view class="title d-flex a-center j-sb" @tap="showApplyno=!showApplyno">
  594. <text style="font-weight: bold;">投保单号</text>
  595. <view class="adjustPlan d-flex">
  596. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  597. </view>
  598. </view>
  599. <view class="content" v-if="showApplyno">
  600. <view class="row d-flex a-center" v-if="!!orderInfo.jqapplyno">
  601. <view class="left">交强险:</view>
  602. <view class="right d-flex flex-1">{{orderInfo.jqapplyno}}</view>
  603. </view>
  604. <view class="row d-flex a-center" v-if="!!orderInfo.syapplyno">
  605. <view class="left">商业险:</view>
  606. <view class="right d-flex flex-1">{{orderInfo.syapplyno}}</view>
  607. </view>
  608. </view>
  609. </view>
  610. <view class="personInfo" v-if="!!orderInfo.jqpolicyno">
  611. <view class="title d-flex a-center j-sb" @tap="showPolicyno=!showPolicyno">
  612. <text style="font-weight: bold;">保单号</text>
  613. <view class="adjustPlan d-flex">
  614. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  615. </view>
  616. </view>
  617. <view class="content" v-if="showPolicyno">
  618. <view class="row d-flex a-center" v-if="!!orderInfo.jqpolicyno">
  619. <view class="left">交强险:</view>
  620. <view class="right d-flex flex-1">{{orderInfo.jqpolicyno}}</view>
  621. </view>
  622. <view class="row d-flex a-center" v-if="!!orderInfo.sypolicyno">
  623. <view class="left">商业险:</view>
  624. <view class="right d-flex flex-1">{{orderInfo.sypolicyno}}</view>
  625. </view>
  626. </view>
  627. </view>
  628. <view class="personInfo" v-if="policyList.length>0">
  629. <view class="title d-flex a-center j-sb" @tap="showPolicyFile=!showPolicyFile">
  630. <text style="font-weight: bold;">电子保单(点击即可预览下载)</text>
  631. <view class="adjustPlan d-flex">
  632. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  633. </view>
  634. </view>
  635. <view class="content" v-if="showPolicyFile">
  636. <view class="row d-flex a-center" v-for="(policyListitem,policyListindex) in policyList"
  637. :key="policyListindex">
  638. <view class="left" style="width: 110px;flex-shrink: 0;">{{policyListitem.fileTitle}}:
  639. </view>
  640. <view class="right d-flex flex-1"
  641. style="flex-shrink: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
  642. {{policyListitem.filename}}
  643. </view>
  644. <view class="right d-flex a-center j-center" style="width: 160upx;flex-shrink: 0;">
  645. <text class="checkButton d-flex a-center j-center"
  646. @tap="downloadPolicy(policyListitem.fileurl)">下载</text>
  647. </view>
  648. </view>
  649. </view>
  650. </view>
  651. <view class="personInfo" v-if="policyList1.length>0">
  652. <view class="title d-flex a-center j-sb" @tap="showPolicybzFile=!showPolicybzFile">
  653. <text style="font-weight: bold;">电子标志(点击即可预览下载)</text>
  654. <view class="adjustPlan d-flex">
  655. <view class="icon iconfont icon-xiala" style="font-weight: bold;color: #B3B3B3;"></view>
  656. </view>
  657. </view>
  658. <view class="content" v-if="showPolicybzFile" v-for="(policyListitem1,policyListindex1) in policyList1"
  659. :key="policyListindex1">
  660. <view class="row d-flex a-center">
  661. <view class="left" style="width: 110px;flex-shrink: 0;">{{policyListitem1.fileTitle}}:
  662. </view>
  663. <view class="right d-flex flex-1"
  664. style="flex-shrink: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">
  665. {{policyListitem1.filename}}
  666. </view>
  667. <view class="right d-flex a-center j-center" style="width: 160upx;flex-shrink: 0;">
  668. <text class="checkButton d-flex a-center j-center"
  669. @tap="downloadPolicy(policyListitem1.fileurl)">下载</text>
  670. </view>
  671. </view>
  672. </view>
  673. </view>
  674. </view>
  675. <view class="bottomBtn dis f-c"
  676. v-if="orderstatus==0 && routepage!='pages/orders/subOrders' && routepage!='pages/orders/quoteHistory'">
  677. <view class="agree dis a-c ">
  678. <u-checkbox v-model="agree" active-color="#FF5600" size="28" @change="agreed"
  679. style="display: block;margin-right: 4px;" />
  680. 我已确认并同意 <text class="tip">保险条款</text> | <text class="tip">投保须知</text> | <text class="tip">隐私条款</text>
  681. </view>
  682. <view class="btnView dis a-c">
  683. <view class="btn dis j-start a-c">应付:<text
  684. style="font-size: 14px;font-weight: bold;">¥{{sumPermium}}</text> </view>
  685. <view class="btn dis j-c a-c" @tap="toolPopupshow=true">修改</view>
  686. <view class="btn dis a-c j-c" @tap="submitAudit">确认核保</view>
  687. </view>
  688. </view>
  689. <u-popup v-model="toolPopupshow" mode="bottom" border-radius="10" height="">
  690. <view class="tool">
  691. <!-- <view class="dis j-c a-c" @click="toCarInfo">修改车辆信息</view> -->
  692. <view class="dis j-c a-c" @click="toInsureItems">修改险种配置</view>
  693. </view>
  694. <view class="cancell dis a-c j-c" @click="toolPopupshow=false">取消</view>
  695. </u-popup>
  696. <u-modal v-model="ziJinshow" title="特约保险"
  697. :title-style="{fontWeight: 'bold',borderBottom:'1px solid #f2f2f2',padding:'10px'}"
  698. :scroll-height="{height: '300px'}" :confirm-style="{background:'#E6EEFF',color:'#0052FF'}">
  699. <view class="slot-content">
  700. <u-checkbox-group @change="ziJincontributingChange">
  701. <u-checkbox v-model="item.checked" active-color="rgb(255, 153, 0)"
  702. v-for="(item, index) in ziJinengageListData" :key="index"
  703. :name="item.clauseId">{{item.clauseName}}</u-checkbox>
  704. </u-checkbox-group>
  705. </view>
  706. </u-modal>
  707. <u-modal v-model="huaTaishow" title="华泰特约选择" :title-style="{fontWeight: 'bold'}"
  708. :scroll-height="{height: '300px'}">
  709. <view class="slot-content">
  710. <u-checkbox-group @change="huaTaicontributingChange">
  711. <u-checkbox v-model="item.checked" active-color="rgb(255, 153, 0)"
  712. v-for="(item, index) in huaTaiengageListData" :key="index"
  713. :name="item.engageCode">{{item.engageTitle}}</u-checkbox>
  714. </u-checkbox-group>
  715. </view>
  716. </u-modal>
  717. <previewImage ref="previewImage" :opacity="0.8" :circular="true" :imgs="previewImgs"></previewImage>
  718. </view>
  719. </template>
  720. <script>
  721. import {
  722. mapState,
  723. mapMutations
  724. } from "vuex"
  725. import {
  726. pathToBase64,
  727. base64ToPath
  728. } from '@/common/pdf.js'
  729. import uniPopup from '@/components/uni-popup/uni-popup.vue';
  730. import previewImage from '@/components/common/previewImage/previewImage.vue'; //引用插件
  731. export default {
  732. components: {
  733. uniPopup,
  734. previewImage
  735. },
  736. computed: {
  737. ...mapState(['userInfo', 'token']),
  738. getHeight() {
  739. let height = uni.getSystemInfoSync().windowHeight;
  740. return `minHeight: ${height}px;`;
  741. }
  742. },
  743. data() {
  744. return {
  745. ziJinshow: false, //紫金特约
  746. huaTaishow: false, //紫金特约
  747. toolPopupshow: false, //底部弹窗
  748. agree: false,
  749. logoimg: "",
  750. insCompanyList: [{
  751. name: "中煤财险",
  752. icon: "../../static/insuranceicon/zhongmei.png"
  753. }, //华农
  754. {
  755. name: "恒邦财险",
  756. icon: "../../static/insuranceicon/hengbang.png"
  757. },
  758. {
  759. name: "安盛天平",
  760. icon: "../../static/insuranceicon/ansheng.png"
  761. },
  762. {
  763. name: "中国人寿",
  764. icon: "../../static/insuranceicon/renshou.png"
  765. },
  766. {
  767. name: "众安财险",
  768. icon: "../../static/insuranceicon/zhongan.png"
  769. },
  770. {
  771. name: "永诚财险",
  772. icon: "../../static/insuranceicon/yongcheng.png"
  773. },
  774. {
  775. name: "永安财险",
  776. icon: "../../static/insuranceicon/yongan.png"
  777. },
  778. {
  779. name: "紫金财险",
  780. icon: "../../static/insuranceicon/zijin.png"
  781. },
  782. {
  783. name: "国任财险",
  784. icon: "../../static/insuranceicon/guoren.png"
  785. },
  786. {
  787. name: "华泰财险",
  788. icon: "../../static/insuranceicon/huatai.png"
  789. },
  790. {
  791. name: "大家财险",
  792. icon: "../../static/insuranceicon/dajia.png"
  793. },
  794. {
  795. name: "太平财险",
  796. icon: "../../static/insuranceicon/taiping.png"
  797. },
  798. {
  799. name: "华农财险",
  800. icon: "../../static/insuranceicon/huanong.png"
  801. },
  802. {
  803. name: "渤海财险",
  804. icon: "../../static/insuranceicon/bohai.png"
  805. },
  806. ],
  807. companyId: "", //订单号
  808. orderInfo: {},
  809. licenseNo: "", //车牌号
  810. icon: "", //保险公司logo
  811. name: "", //保险公司名称
  812. carInfo: {}, //车辆信息
  813. ownerInfo: {}, //车主信息
  814. policyHolderInfo: {}, //投保人信息
  815. insuredPersonInfo: {}, //被保人信息
  816. riskList: [], //险种大类信息
  817. kindList: [], //商业险险别
  818. sumPermium: "", //报价金额
  819. taxAmount: "", //车船税金额
  820. jqpremium: "", //交强险金额
  821. sypremium: "", //商业险金额
  822. feerate: "",
  823. disrate: "",
  824. syappoint: "",
  825. orderstatus: "0", //订单状态
  826. CIStartDate: "", //交强险日期
  827. BIStartDate: "", //商业险日期
  828. showCarInfo: false,
  829. showextendInfo: false,
  830. insureList: [{
  831. amount: "0",
  832. coveragePremium: "",
  833. amtList: [{
  834. "label": "投保",
  835. "value": "1"
  836. }],
  837. kindCode: "A",
  838. isMainRisk: true,
  839. kindName: "机动车损失险"
  840. },
  841. {
  842. amount: "0",
  843. coveragePremium: "",
  844. amtList: [{
  845. "label": "10万",
  846. "value": "100000"
  847. }, {
  848. "label": "15万",
  849. "value": "150000"
  850. }, {
  851. "label": "20万",
  852. "value": "200000"
  853. }, {
  854. "label": "30万",
  855. "value": "300000"
  856. }, {
  857. "label": "50万",
  858. "value": "500000"
  859. }, {
  860. "label": "100万",
  861. "value": "1000000"
  862. }, {
  863. "label": "150万",
  864. "value": "1500000"
  865. }, {
  866. "label": "200万",
  867. "value": "2000000"
  868. }, {
  869. "label": "250万",
  870. "value": "2500000"
  871. }, {
  872. "label": "300万",
  873. "value": "3000000"
  874. }, {
  875. "label": "500万",
  876. "value": "5000000"
  877. }, {
  878. "label": "1000万",
  879. "value": "10000000"
  880. }],
  881. kindCode: "B",
  882. isMainRisk: true,
  883. kindName: "第三者责任险"
  884. },
  885. {
  886. amount: "0",
  887. coveragePremium: "",
  888. amtList: [{
  889. "label": "1万",
  890. "value": "10000"
  891. }, {
  892. "label": "2万",
  893. "value": "20000"
  894. }, {
  895. "label": "5万",
  896. "value": "50000"
  897. }, {
  898. "label": "10万",
  899. "value": "100000"
  900. }, {
  901. "label": "15万",
  902. "value": "150000"
  903. }, {
  904. "label": "20万",
  905. "value": "200000"
  906. }],
  907. kindCode: "D3",
  908. isMainRisk: true,
  909. kindName: "司机责任险"
  910. },
  911. {
  912. amount: "0",
  913. coveragePremium: "",
  914. amtList: [{
  915. "label": "1万",
  916. "value": "10000"
  917. }, {
  918. "label": "2万",
  919. "value": "20000"
  920. }, {
  921. "label": "5万",
  922. "value": "50000"
  923. }, {
  924. "label": "10万",
  925. "value": "100000"
  926. }, {
  927. "label": "15万",
  928. "value": "150000"
  929. }, {
  930. "label": "20万",
  931. "value": "200000"
  932. }],
  933. kindCode: "D4",
  934. isMainRisk: true,
  935. kindName: "乘客责任险"
  936. },
  937. {
  938. amount: "0",
  939. coveragePremium: "",
  940. amtList: [{
  941. "label": "2000",
  942. "value": "2000"
  943. }, {
  944. "label": "5000",
  945. "value": "5000"
  946. }, {
  947. "label": "1万",
  948. "value": "10000"
  949. }],
  950. isMainRisk: false,
  951. kindCode: "L",
  952. kindName: "车身划痕险",
  953. mainRiskCodeList: "A"
  954. },
  955. {
  956. amount: "0",
  957. coveragePremium: "",
  958. amtList: [{
  959. "label": "5%",
  960. "value": "5"
  961. }, {
  962. "label": "10%",
  963. "value": "10"
  964. }, {
  965. "label": "15%",
  966. "value": "15"
  967. }, {
  968. "label": "20%",
  969. "value": "20"
  970. }],
  971. isMainRisk: false,
  972. kindCode: "MJ1",
  973. kindName: "绝对免赔率特约险(车损)",
  974. mainRiskCodeList: "A"
  975. },
  976. {
  977. amount: "0",
  978. coveragePremium: "",
  979. amtList: [{
  980. "label": "5%",
  981. "value": "5"
  982. }, {
  983. "label": "10%",
  984. "value": "10"
  985. }, {
  986. "label": "15%",
  987. "value": "15"
  988. }, {
  989. "label": "20%",
  990. "value": "20"
  991. }],
  992. isMainRisk: false,
  993. kindCode: "MJ2",
  994. kindName: "绝对免赔率特约险(三者)",
  995. mainRiskCodeList: "B"
  996. },
  997. {
  998. amount: "0",
  999. coveragePremium: "",
  1000. amtList: [{
  1001. "label": "5%",
  1002. "value": "5"
  1003. }, {
  1004. "label": "10%",
  1005. "value": "10"
  1006. }, {
  1007. "label": "15%",
  1008. "value": "15"
  1009. }, {
  1010. "label": "20%",
  1011. "value": "20"
  1012. }],
  1013. isMainRisk: false,
  1014. kindCode: "MJ3",
  1015. kindName: "绝对免赔率特约险(司机)",
  1016. mainRiskCodeList: "D3"
  1017. },
  1018. {
  1019. amount: "0",
  1020. coveragePremium: "",
  1021. amtList: [{
  1022. "label": "5%",
  1023. "value": "5"
  1024. }, {
  1025. "label": "10%",
  1026. "value": "10"
  1027. }, {
  1028. "label": "15%",
  1029. "value": "15"
  1030. }, {
  1031. "label": "20%",
  1032. "value": "20"
  1033. }],
  1034. isMainRisk: false,
  1035. kindCode: "MJ4",
  1036. kindName: "绝对免赔率特约险(乘客)",
  1037. mainRiskCodeList: "D4"
  1038. },
  1039. {
  1040. amount: "0",
  1041. coveragePremium: "",
  1042. amtList: [{
  1043. "label": "投保",
  1044. "value": "1"
  1045. }],
  1046. isMainRisk: false,
  1047. kindCode: "BD",
  1048. kindName: "法定节假日限额翻倍险",
  1049. mainRiskCodeList: "B"
  1050. },
  1051. {
  1052. amount: "0",
  1053. amountDesc: "不投保",
  1054. coveragePremium: "",
  1055. amtList: [{
  1056. label: "不投保",
  1057. value: "0"
  1058. },
  1059. {
  1060. label: "1万",
  1061. value: "10000"
  1062. },
  1063. {
  1064. label: "2万",
  1065. value: "20000"
  1066. },
  1067. {
  1068. label: "5万",
  1069. value: "50000"
  1070. },
  1071. {
  1072. label: "10万",
  1073. value: "100000"
  1074. }
  1075. ],
  1076. kindCode: "SY_FJ_YBW1",
  1077. isMainRisk: false,
  1078. kindName: "附加医保-三者",
  1079. desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
  1080. },
  1081. {
  1082. amount: "0",
  1083. amountDesc: "不投保",
  1084. coveragePremium: 0,
  1085. amtList: [{
  1086. label: "不投保",
  1087. value: "0"
  1088. },
  1089. {
  1090. label: "1万",
  1091. value: "10000"
  1092. },
  1093. {
  1094. label: "2万",
  1095. value: "20000"
  1096. },
  1097. {
  1098. label: "5万",
  1099. value: "50000"
  1100. },
  1101. {
  1102. label: "10万",
  1103. value: "100000"
  1104. }
  1105. ],
  1106. kindCode: "SY_FJ_YBW2",
  1107. isMainRisk: false,
  1108. kindName: "附加医保-座位险(乘客)",
  1109. desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
  1110. },
  1111. {
  1112. amount: "0",
  1113. amountDesc: "不投保",
  1114. coveragePremium: 0,
  1115. amtList: [{
  1116. label: "不投保",
  1117. value: "0"
  1118. },
  1119. {
  1120. label: "1万",
  1121. value: "10000"
  1122. },
  1123. {
  1124. label: "2万",
  1125. value: "20000"
  1126. },
  1127. {
  1128. label: "5万",
  1129. value: "50000"
  1130. },
  1131. {
  1132. label: "10万",
  1133. value: "100000"
  1134. }
  1135. ],
  1136. kindCode: "SY_FJ_YBW3",
  1137. isMainRisk: false,
  1138. kindName: "附加医保-座位险(司机)",
  1139. desc: "附加医保外医疗费用责任险(机动车第三者责任保险)"
  1140. },
  1141. ],
  1142. bottomData: [
  1143. // #ifdef APP-PLUS
  1144. {
  1145. text: '微信好友',
  1146. icon: '/static/image/share/weixinhaoyou.png',
  1147. name: 'wx'
  1148. },
  1149. {
  1150. text: '短信发送',
  1151. icon: '/static/image/share/shortMessage.png',
  1152. name: 'dx'
  1153. },
  1154. // #endif
  1155. {
  1156. text: '报价单',
  1157. icon: '/static/image/share/shortMessage.png',
  1158. name: 'bjd'
  1159. }
  1160. ],
  1161. vehicleModel: {}, //车型信息
  1162. showOwerInfo: false, //展示车主信息
  1163. showPolicyHolderInfo: false, //展示投保人信息
  1164. showInsuredPersonInfo: false, //展示被保人信息
  1165. showProposalWay: false, //获取保单方式
  1166. showAdvancePayment: false, //展示保费
  1167. showAppoint: false, //展示特约
  1168. showDistribution: false, //展示快递
  1169. showApplyno: false, //展示投保单号
  1170. showPolicyno: false, //展示保单号
  1171. showPolicyFile: false, //展示电子保单
  1172. showPolicybzFile: false, //展示电子保单
  1173. policyList: [], //电子保单文件
  1174. policyList1: [], //电子标志文件
  1175. showCarImageInfo: false, //显示车辆影像
  1176. carImageListId: [],
  1177. showOwnerImageInfo: false, //显示车主影像
  1178. ownerImageListId: [],
  1179. showPolicyImageInfo: false, //显示投保人影像
  1180. policyImageListId: [],
  1181. showInsuredImageInfo: false, //显示被保人影像
  1182. insuredImageListId: [],
  1183. showCarCheckImageInfo: false, //显示验车照影像
  1184. imgRelationshipid: [],
  1185. showNewCarImageInfo: false, //显示新车影像
  1186. imgNewCarinvoiceId: [],
  1187. imgList1: [],
  1188. imgList2: [],
  1189. imgList3: [],
  1190. imgList4: [],
  1191. imgList5: [],
  1192. imgList6: [],
  1193. imgList7: [],
  1194. imgList8: [],
  1195. imgRelationship: [], //其他证明
  1196. imgNewCarQualified: [], //合格证
  1197. imgNewCarInvoice: [], //发票
  1198. previewImgs: [],
  1199. dianzibaodan: "",
  1200. jypremium: "",
  1201. quoteno: "",
  1202. extendInfo: {},
  1203. routepage: "",
  1204. roadrescueList: [],
  1205. companyUnderwriting: "",
  1206. ziJinengageListData: [],
  1207. ziJinengageList: [],
  1208. huaTaiengageListData: [],
  1209. huaTaiengageList: [],
  1210. }
  1211. },
  1212. async onLoad(params) {
  1213. let pages = getCurrentPages(); // 当前页面路由
  1214. if (pages.length > 1) {
  1215. let beforePage = pages[pages.length - 2].route; // 上一个页面路由
  1216. this.routepage = beforePage;
  1217. }
  1218. if (!this.token) {
  1219. document.getElementsByTagName('uni-page-head')[0].style.display = 'none'
  1220. }
  1221. if (!!params.companyId) {
  1222. this.companyId = params.companyId;
  1223. let param = {
  1224. companyId: params.companyId
  1225. };
  1226. let res = await this.$http.post('/insurance/order/getByCompanyId', param);
  1227. if (res.code == 200) {
  1228. this.icon = "";
  1229. this.quoteno = res.data.quoteno;
  1230. this.name = res.data.inscompany;
  1231. this.carInfo = res.data.carinfo;
  1232. this.extendInfo = res.data.extendInfo;
  1233. this.licenseNo = res.data.licenseno;
  1234. if (!!this.carInfo.loanStatus) {
  1235. this.carInfo.loanStatus = 1;
  1236. } else {
  1237. this.carInfo.loanStatus = 0;
  1238. }
  1239. if (!!this.carInfo.registerDate) {
  1240. let year1 = new Date(this.carInfo.registerDate).getFullYear()
  1241. let month1 = new Date(this.carInfo.registerDate).getMonth() + 1
  1242. if (month1 < 10) {
  1243. month1 = '0' + month1;
  1244. }
  1245. let day1 = new Date(this.carInfo.registerDate).getDate()
  1246. if (day1 < 10) {
  1247. day1 = '0' + day1;
  1248. }
  1249. this.carInfo.registerDate = year1 + '-' + month1 + '-' + day1
  1250. }
  1251. if (!!this.carInfo.issueDate) {
  1252. let year2 = new Date(this.carInfo.issueDate).getFullYear()
  1253. let month2 = new Date(this.carInfo.issueDate).getMonth() + 1
  1254. if (month2 < 10) {
  1255. month2 = '0' + month2;
  1256. }
  1257. let day2 = new Date(this.carInfo.issueDate).getDate()
  1258. if (day2 < 10) {
  1259. day2 = '0' + day2;
  1260. }
  1261. this.carInfo.issueDate = year2 + '-' + month2 + '-' + day2
  1262. }
  1263. if (!!this.carInfo.transferDate) {
  1264. let year3 = new Date(this.carInfo.transferDate).getFullYear()
  1265. let month3 = new Date(this.carInfo.transferDate).getMonth() + 1
  1266. if (month3 < 10) {
  1267. month3 = '0' + month3;
  1268. }
  1269. let day3 = new Date(this.carInfo.transferDate).getDate()
  1270. if (day3 < 10) {
  1271. day3 = '0' + day3;
  1272. }
  1273. this.carInfo.transferDate = year3 + '-' + month3 + '-' + day3
  1274. }
  1275. this.ownerInfo = res.data.ownerinfo;
  1276. this.policyHolderInfo = res.data.applyinfo;
  1277. this.insuredPersonInfo = res.data.insureinfo;
  1278. this.riskList = res.data.riskinfo;
  1279. this.kindList = res.data.kindinfo;
  1280. this.roadrescueList = this.kindList.filter((val) => {
  1281. return ["TY1", "TY2", "TY3", "TY4"].includes(val.kindCode)
  1282. })
  1283. this.sumPermium = res.data.sumpremium;
  1284. this.taxAmount = res.data.taxamount;
  1285. this.sypremium = res.data.sypremium;
  1286. this.jqpremium = res.data.jqpremium;
  1287. this.jypremium = res.data.jypremium;
  1288. this.orderstatus = res.data.orderstatus;
  1289. this.feerate = res.data.feerate;
  1290. this.disrate = res.data.disrate;
  1291. this.jqdiscountrate = res.data.jqdiscountrate;
  1292. this.sydiscountrate = res.data.sydiscountrate;
  1293. this.syappoint = res.data.syappoint;
  1294. this.orderInfo = {};
  1295. Object.assign(this.orderInfo, res.data)
  1296. this.imageEcho(this.quoteno) // 影像获取完毕
  1297. switch (this.name) {
  1298. case "永安财险":
  1299. this.yonganprint(); //电子保单
  1300. break;
  1301. case "中煤财险":
  1302. this.zhongMeigetPolicyPrint(); //电子保单
  1303. break;
  1304. case "恒邦财险":
  1305. case "安盛天平":
  1306. case "众安财险":
  1307. case "中国人寿":
  1308. case "太平财险":
  1309. case "华农财险":
  1310. this.pythonprint(); //电子保单
  1311. break;
  1312. case "永诚财险":
  1313. this.yongChenggetPolicyPrint(); //电子保单
  1314. break;
  1315. case "紫金财险":
  1316. this.ziJingetPolicyPrint(); //电子保单
  1317. break;
  1318. case "华泰财险":
  1319. this.huaTaigetPolicyPrint(); //电子保单
  1320. break;
  1321. case "国任财险":
  1322. this.guoRengetPolicyPrint(); //电子保单
  1323. break;
  1324. case "大家财险":
  1325. this.daJiagetPolicyPrint(); //电子保单
  1326. break;
  1327. }
  1328. this.insCompanyList.map(ele => {
  1329. if (ele.name == res.data.inscompany) {
  1330. uni.getImageInfo({
  1331. src: ele.icon,
  1332. success: image => {
  1333. pathToBase64(image.path)
  1334. .then(base64 => {
  1335. this.logoimg = base64;
  1336. })
  1337. .catch(error => {});
  1338. },
  1339. fail: err => {}
  1340. });
  1341. }
  1342. return ele;
  1343. })
  1344. }
  1345. if (this.name == '紫金财险') {
  1346. let Zijinres = await this.$http.post('/order/zijin/queryClauseData', param);
  1347. this.ziJinengageListData = Zijinres.data;
  1348. let data = this.ziJinengageListData.find(val => val.optType == 3)
  1349. if (data) {
  1350. this.ziJinengageList.push({
  1351. clauseCode: data.clauseCode,
  1352. clauseName: data.clauseName,
  1353. clauses: data.clauseContent,
  1354. riskCode: data.riskCode,
  1355. modifyFlag: data.modifyFlag,
  1356. optType: data.optType,
  1357. })
  1358. }
  1359. }
  1360. if (this.name == '华泰财险') {
  1361. let huaTaires = await this.$http.post('/order/huaTaiApi/queryClauseData', param);
  1362. this.huaTaiengageListData = huaTaires.data;
  1363. huaTaires.data.map(val => {
  1364. if (val.optType == '2') {
  1365. this.huaTaiengageList.push({
  1366. engageCode: val.engageCode,
  1367. engageDetail: val.engageDetail,
  1368. engageTitle: val.engageTitle,
  1369. riskCode: val.riskCode,
  1370. modifyFlag: val.modifyFlag,
  1371. })
  1372. }
  1373. })
  1374. }
  1375. } else {
  1376. uni.showModal({
  1377. showCancel: false,
  1378. title: "未查询到该订单"
  1379. })
  1380. }
  1381. },
  1382. methods: {
  1383. ...mapMutations(['setOrderStage', 'setOrderType']),
  1384. ziJincontributingChange(param) {
  1385. this.ziJinengageList = [];
  1386. param.map(val => {
  1387. let list = this.ziJinengageListData.find(item => item.clauseId == val)
  1388. this.ziJinengageList.push({
  1389. clauseCode: list.clauseCode,
  1390. clauseName: list.clauseName,
  1391. clauses: list.clauseContent,
  1392. riskCode: list.riskCode,
  1393. modifyFlag: list.modifyFlag,
  1394. })
  1395. })
  1396. },
  1397. huaTaicontributingChange(param) {
  1398. this.huaTaiengageList = [];
  1399. param.map(val => {
  1400. let list = this.huaTaiengageListData.find(item => item.engageCode == val)
  1401. this.huaTaiengageList.push({
  1402. engageCode: list.engageCode,
  1403. engageDetail: list.engageDetail,
  1404. engageTitle: list.engageTitle,
  1405. riskCode: list.riskCode,
  1406. modifyFlag: list.modifyFlag,
  1407. })
  1408. })
  1409. },
  1410. //阅读并同意协议
  1411. agreed(e) {
  1412. this.agree = e.value;
  1413. },
  1414. toCarInfo() {
  1415. this.navigate({
  1416. url: '/pages/carInsure2/Information',
  1417. success: (res) => {
  1418. res.eventChannel.emit(
  1419. "acceptData", {
  1420. carInfo: this
  1421. .carInfo,
  1422. ownerInfo: this
  1423. .ownerInfo,
  1424. policyHolderInfo: this
  1425. .policyHolderInfo,
  1426. insuredPersonInfo: this
  1427. .insuredPersonInfo,
  1428. riskList: this
  1429. .riskList,
  1430. kindList: this
  1431. .kindList,
  1432. carInfoPositiveList: this
  1433. .carInfoPositiveList, //车辆
  1434. ownerInfoPositiveList: this
  1435. .ownerInfoPositiveList, //车主
  1436. policyHolderInfoPositiveList: this
  1437. .policyHolderInfoPositiveList, //投保
  1438. insuredPersonInfoPositiveList: this
  1439. .insuredPersonInfoPositiveList, //被保人
  1440. })
  1441. }
  1442. }, "navigateTo", true);
  1443. },
  1444. //去选择险种页面
  1445. toInsureItems() {
  1446. this.navigate({
  1447. url: '/pages/carInsure2/insureItems',
  1448. success: (res) => {
  1449. res.eventChannel.emit("acceptData", {
  1450. carInfo: this.carInfo,
  1451. ownerInfo: this.ownerInfo,
  1452. policyHolderInfo: this.policyHolderInfo,
  1453. insuredPersonInfo: this.insuredPersonInfo,
  1454. riskList: this.riskList,
  1455. kindList: this.kindList
  1456. })
  1457. }
  1458. }, "navigateTo", true);
  1459. },
  1460. //删除图片
  1461. delCheckImage(param, IdList, srcList) {
  1462. this[IdList].map((ele, index) => {
  1463. if (param.imageId === ele.imageId) {
  1464. this[IdList].splice(index, 1);
  1465. }
  1466. return ele;
  1467. });
  1468. this[srcList].map((ele, index) => {
  1469. if (param.imageId === ele.imageId) {
  1470. this[srcList].splice(index, 1);
  1471. }
  1472. return ele;
  1473. });
  1474. },
  1475. //影像查询
  1476. async imageEcho(quotenos) {
  1477. let imgres = await this.$http.get('/ins/taskImage/findByQuoteNo?quoteNo=' + quotenos);
  1478. if (imgres.code == "200") {
  1479. Object.keys(imgres.data).forEach((keys) => {
  1480. if (imgres.data[keys].url) {
  1481. imgres.data[keys].url = this.$base.baseUrl + imgres.data[keys].url;
  1482. switch (keys) {
  1483. case 'C01':
  1484. this.carImageListId.push({
  1485. imageId: imgres.data[keys].imageId,
  1486. imageType: imgres.data[keys].imageType,
  1487. })
  1488. this.imgList1.push(imgres.data[keys]);
  1489. break;
  1490. case 'D01':
  1491. this.carImageListId.push({
  1492. imageId: imgres.data[keys].imageId,
  1493. imageType: imgres.data[keys].imageType,
  1494. })
  1495. this.imgList2.push(imgres.data[keys]);
  1496. break;
  1497. case 'C02':
  1498. this.ownerImageListId.push({
  1499. imageId: imgres.data[keys].imageId,
  1500. imageType: imgres.data[keys].imageType,
  1501. })
  1502. this.imgList3.push(imgres.data[keys]);
  1503. break;
  1504. case 'D02':
  1505. this.ownerImageListId.push({
  1506. imageId: imgres.data[keys].imageId,
  1507. imageType: imgres.data[keys].imageType,
  1508. })
  1509. this.imgList4.push(imgres.data[keys]);
  1510. break;
  1511. case 'C03':
  1512. this.policyImageListId.push({
  1513. imageId: imgres.data[keys].imageId,
  1514. imageType: imgres.data[keys].imageType,
  1515. })
  1516. this.imgList5.push(imgres.data[keys]);
  1517. break;
  1518. case 'D03':
  1519. this.policyImageListId.push({
  1520. imageId: imgres.data[keys].imageId,
  1521. imageType: imgres.data[keys].imageType,
  1522. })
  1523. this.imgList6.push(imgres.data[keys]);
  1524. break;
  1525. case 'C04':
  1526. this.insuredImageListId.push({
  1527. imageId: imgres.data[keys].imageId,
  1528. imageType: imgres.data[keys].imageType,
  1529. })
  1530. this.imgList7.push(imgres.data[keys]);
  1531. break;
  1532. case 'D04':
  1533. this.insuredImageListId.push({
  1534. imageId: imgres.data[keys].imageId,
  1535. imageType: imgres.data[keys].imageType,
  1536. })
  1537. this.imgList8.push(imgres.data[keys]);
  1538. break;
  1539. default:
  1540. break;
  1541. }
  1542. }
  1543. });
  1544. }
  1545. },
  1546. // 上传影像并提交核保
  1547. async submitAudit() {
  1548. if (!this.agree) {
  1549. return uni.showToast({
  1550. title: '请阅读并同意协议',
  1551. icon: "none",
  1552. duration: 2000
  1553. });
  1554. }
  1555. const mergedArray = [...this.carImageListId, ...this.ownerImageListId, ...this
  1556. .policyImageListId, ...this.insuredImageListId, ...this.imgRelationshipid
  1557. ];
  1558. if (mergedArray.length > 0) {
  1559. await this.$http.post('/ins/taskImage/uploadImages', {
  1560. imageList: mergedArray,
  1561. quoteNo: this.quoteno,
  1562. })
  1563. }
  1564. uni.showModal({
  1565. content: '是否确认提交核保?',
  1566. success: async (res) => {
  1567. if (res.confirm) {
  1568. switch (this.name) {
  1569. case "永安财险":
  1570. let yaimage = await this.$http.post(
  1571. '/order/yongAn/submitImage', {
  1572. companyId: this.companyId
  1573. });
  1574. if (yaimage.code == '200') {
  1575. let yaaudit = await this.$http.post(
  1576. '/order/yongAn/audit', {
  1577. companyId: this.companyId,
  1578. jqappoint: "",
  1579. syappoint: ""
  1580. });
  1581. if (yaaudit.code == '200') {
  1582. uni.showModal({
  1583. content: '订单自核成功',
  1584. cancelText: '暂不缴费',
  1585. confirmText: '立即缴费',
  1586. success: (res1) => {
  1587. if (res1.confirm) {
  1588. let pro = this.userInfo.sysUser
  1589. .managementSource;
  1590. if (pro == "3") {
  1591. uni.navigateTo({
  1592. url: "/pages/orders1/paymentCode1?companyId=" +
  1593. this
  1594. .companyId
  1595. })
  1596. } else {
  1597. uni.navigateTo({
  1598. url: "/pages/orders1/paymentCode?companyId=" +
  1599. this
  1600. .companyId
  1601. })
  1602. }
  1603. } else {
  1604. this.navigate({
  1605. url: "/pages/orders1/orders"
  1606. }, "switchTab",
  1607. true);
  1608. }
  1609. }
  1610. });
  1611. } else {
  1612. uni.showModal({
  1613. content: '核保失败(' + yaaudit.msg + ')',
  1614. cancelText: '返回订单',
  1615. confirmText: '继续核保',
  1616. success: async (res2) => {
  1617. if (res2.confirm) {
  1618. } else {
  1619. this.navigate({
  1620. url: "/pages/orders1/orders"
  1621. }, "switchTab",
  1622. true);
  1623. }
  1624. }
  1625. });
  1626. }
  1627. } else {
  1628. uni.showModal({
  1629. content: '影像上传失败(' + yaimage.msg + ')',
  1630. cancelText: '返回订单',
  1631. confirmText: '修改',
  1632. success: async (res3) => {
  1633. if (res3.confirm) {
  1634. } else {
  1635. this.navigate({
  1636. url: "/pages/orders1/orders"
  1637. }, "switchTab",
  1638. true);
  1639. }
  1640. }
  1641. });
  1642. }
  1643. break;
  1644. case "中煤财险":
  1645. let zmimage = await this.$http.post(
  1646. '/order/zhongMeiApi/submitImage', {
  1647. companyId: this.companyId
  1648. });
  1649. if (zmimage.code == '200') {
  1650. let zmaudit = await this.$http.post(
  1651. '/order/zhongMeiApi/audit', {
  1652. companyId: this.companyId,
  1653. jqappoint: "",
  1654. syappoint: ""
  1655. });
  1656. if (zmaudit.code == '200') {
  1657. uni.showModal({
  1658. content: '订单自核成功',
  1659. cancelText: '暂不缴费',
  1660. confirmText: '立即缴费',
  1661. success: (res1) => {
  1662. if (res1.confirm) {
  1663. let pro = this.userInfo.sysUser
  1664. .managementSource;
  1665. if (pro == "3") {
  1666. uni.navigateTo({
  1667. url: "/pages/orders1/paymentCode1?companyId=" +
  1668. this
  1669. .companyId
  1670. })
  1671. } else {
  1672. uni.navigateTo({
  1673. url: "/pages/orders1/paymentCode?companyId=" +
  1674. this
  1675. .companyId
  1676. })
  1677. }
  1678. } else {
  1679. this.navigate({
  1680. url: "/pages/orders1/orders"
  1681. }, "switchTab",
  1682. true);
  1683. }
  1684. }
  1685. });
  1686. } else {
  1687. uni.showModal({
  1688. content: '核保失败(' + zmaudit.msg + ')',
  1689. cancelText: '返回订单',
  1690. confirmText: '修改',
  1691. success: async (res2) => {
  1692. if (res2.confirm) {
  1693. } else {
  1694. this.navigate({
  1695. url: "/pages/orders1/orders"
  1696. }, "switchTab",
  1697. true);
  1698. }
  1699. }
  1700. });
  1701. }
  1702. } else {
  1703. uni.showModal({
  1704. content: '影像上传失败(' + zmimage.msg + ')',
  1705. cancelText: '返回订单',
  1706. confirmText: '修改',
  1707. success: async (res3) => {
  1708. if (res3.confirm) {
  1709. } else {
  1710. this.navigate({
  1711. url: "/pages/orders1/orders"
  1712. }, "switchTab",
  1713. true);
  1714. }
  1715. }
  1716. });
  1717. }
  1718. break;
  1719. case "永诚财险":
  1720. let ycimage = await this.$http.post(
  1721. '/api/yongCheng/uploadImage', {
  1722. companyId: this.companyId
  1723. });
  1724. if (ycimage.code == '200') {
  1725. let ycaudit = await this.$http.post(
  1726. '/api/yongCheng/audit', {
  1727. companyId: this.companyId,
  1728. });
  1729. if (ycaudit.code == '200') {
  1730. uni.showModal({
  1731. content: '订单自核成功',
  1732. cancelText: '暂不缴费',
  1733. confirmText: '立即缴费',
  1734. success: (res1) => {
  1735. if (res1.confirm) {
  1736. let pro = this.userInfo.sysUser
  1737. .managementSource;
  1738. if (pro == "3") {
  1739. uni.navigateTo({
  1740. url: "/pages/orders1/paymentCode1?companyId=" +
  1741. this
  1742. .companyId
  1743. })
  1744. } else {
  1745. uni.navigateTo({
  1746. url: "/pages/orders1/paymentCode?companyId=" +
  1747. this
  1748. .companyId
  1749. })
  1750. }
  1751. } else {
  1752. this.navigate({
  1753. url: "/pages/orders1/orders"
  1754. }, "switchTab",
  1755. true);
  1756. }
  1757. }
  1758. });
  1759. } else {
  1760. uni.showModal({
  1761. content: '核保失败(' + ycaudit.msg + ')',
  1762. cancelText: '返回订单',
  1763. confirmText: '修改',
  1764. success: async (res2) => {
  1765. if (res2.confirm) {
  1766. } else {
  1767. this.navigate({
  1768. url: "/pages/orders1/orders"
  1769. }, "switchTab",
  1770. true);
  1771. }
  1772. }
  1773. });
  1774. }
  1775. } else {
  1776. uni.showModal({
  1777. content: '影像上传失败(' + ycimage.msg + ')',
  1778. cancelText: '返回订单',
  1779. confirmText: '修改',
  1780. success: async (res3) => {
  1781. if (res3.confirm) {
  1782. } else {
  1783. this.navigate({
  1784. url: "/pages/orders1/orders"
  1785. }, "switchTab",
  1786. true);
  1787. }
  1788. }
  1789. });
  1790. }
  1791. break;
  1792. case "国任财险":
  1793. let grimage = await this.$http.post(
  1794. '/api/guoRen/uploadImage', {
  1795. companyId: this.companyId
  1796. });
  1797. if (grimage.code == '200') {
  1798. let graudit = await this.$http.post(
  1799. '/api/guoRen/audit', {
  1800. companyId: this.companyId,
  1801. });
  1802. if (graudit.code == '200') {
  1803. uni.showModal({
  1804. content: '订单自核成功',
  1805. cancelText: '暂不缴费',
  1806. confirmText: '立即缴费',
  1807. success: (res1) => {
  1808. if (res1.confirm) {
  1809. let pro = this.userInfo.sysUser
  1810. .managementSource;
  1811. if (pro == "3") {
  1812. uni.navigateTo({
  1813. url: "/pages/orders1/paymentCode1?companyId=" +
  1814. this
  1815. .companyId
  1816. })
  1817. } else {
  1818. uni.navigateTo({
  1819. url: "/pages/orders1/paymentCode?companyId=" +
  1820. this
  1821. .companyId
  1822. })
  1823. }
  1824. } else {
  1825. this.navigate({
  1826. url: "/pages/orders1/orders"
  1827. }, "switchTab",
  1828. true);
  1829. }
  1830. }
  1831. });
  1832. } else {
  1833. uni.showModal({
  1834. content: '核保失败(' + graudit.msg + ')',
  1835. cancelText: '返回订单',
  1836. confirmText: '修改',
  1837. success: async (res2) => {
  1838. if (res2.confirm) {
  1839. } else {
  1840. this.navigate({
  1841. url: "/pages/orders1/orders"
  1842. }, "switchTab",
  1843. true);
  1844. }
  1845. }
  1846. });
  1847. }
  1848. } else {
  1849. uni.showModal({
  1850. content: '影像上传失败(' + grimage.msg + ')',
  1851. cancelText: '返回订单',
  1852. confirmText: '修改',
  1853. success: async (res3) => {
  1854. if (res3.confirm) {
  1855. } else {
  1856. this.navigate({
  1857. url: "/pages/orders1/orders"
  1858. }, "switchTab",
  1859. true);
  1860. }
  1861. }
  1862. });
  1863. }
  1864. break;
  1865. case "大家财险":
  1866. let djimage = await this.$http.post(
  1867. '/api/dajia/submitImage', {
  1868. companyId: this.companyId
  1869. });
  1870. if (djimage.code == '200') {
  1871. let djaudit = await this.$http.post(
  1872. '/api/dajia/audit', {
  1873. companyId: this.companyId,
  1874. });
  1875. if (djaudit.code == '200') {
  1876. uni.showModal({
  1877. content: '订单自核成功',
  1878. cancelText: '暂不缴费',
  1879. confirmText: '立即缴费',
  1880. success: (res1) => {
  1881. if (res1.confirm) {
  1882. let pro = this.userInfo.sysUser
  1883. .managementSource;
  1884. if (pro == "3") {
  1885. uni.navigateTo({
  1886. url: "/pages/orders1/paymentCode1?companyId=" +
  1887. this
  1888. .companyId
  1889. })
  1890. } else {
  1891. uni.navigateTo({
  1892. url: "/pages/orders1/paymentCode?companyId=" +
  1893. this
  1894. .companyId
  1895. })
  1896. }
  1897. } else {
  1898. this.navigate({
  1899. url: "/pages/orders1/orders"
  1900. }, "switchTab",
  1901. true);
  1902. }
  1903. }
  1904. });
  1905. } else {
  1906. uni.showModal({
  1907. content: '核保失败(' + djaudit.msg + ')',
  1908. cancelText: '返回订单',
  1909. confirmText: '修改',
  1910. success: async (res2) => {
  1911. if (res2.confirm) {
  1912. } else {
  1913. this.navigate({
  1914. url: "/pages/orders1/orders"
  1915. }, "switchTab",
  1916. true);
  1917. }
  1918. }
  1919. });
  1920. }
  1921. } else {
  1922. uni.showModal({
  1923. content: '影像上传失败(' + djimage.msg + ')',
  1924. cancelText: '返回订单',
  1925. confirmText: '修改',
  1926. success: async (res3) => {
  1927. if (res3.confirm) {
  1928. } else {
  1929. this.navigate({
  1930. url: "/pages/orders1/orders"
  1931. }, "switchTab",
  1932. true);
  1933. }
  1934. }
  1935. });
  1936. }
  1937. break;
  1938. case "紫金财险":
  1939. let zjimage = await this.$http.post(
  1940. '/order/zijin/submitImage', {
  1941. companyId: this.companyId
  1942. });
  1943. if (zjimage.code == '200') {
  1944. let zjaudit = await this.$http.post(
  1945. '/order/zijin/audit', {
  1946. companyId: this.companyId,
  1947. engageList: this.ziJinengageList,
  1948. });
  1949. if (zjaudit.code == '200') {
  1950. uni.showModal({
  1951. content: '订单自核成功',
  1952. cancelText: '暂不缴费',
  1953. confirmText: '立即缴费',
  1954. success: (res1) => {
  1955. if (res1.confirm) {
  1956. let pro = this.userInfo.sysUser
  1957. .managementSource;
  1958. if (pro == "3") {
  1959. uni.navigateTo({
  1960. url: "/pages/orders1/paymentCode1?companyId=" +
  1961. this
  1962. .companyId
  1963. })
  1964. } else {
  1965. uni.navigateTo({
  1966. url: "/pages/orders1/paymentCode?companyId=" +
  1967. this
  1968. .companyId
  1969. })
  1970. }
  1971. } else {
  1972. this.navigate({
  1973. url: "/pages/orders1/orders"
  1974. }, "switchTab",
  1975. true);
  1976. }
  1977. }
  1978. });
  1979. } else {
  1980. uni.showModal({
  1981. content: '核保失败(' + zjaudit.msg + ')',
  1982. cancelText: '返回订单',
  1983. confirmText: '修改',
  1984. success: async (res2) => {
  1985. if (res2.confirm) {
  1986. } else {
  1987. this.navigate({
  1988. url: "/pages/orders1/orders"
  1989. }, "switchTab",
  1990. true);
  1991. }
  1992. }
  1993. });
  1994. }
  1995. } else {
  1996. uni.showModal({
  1997. content: '影像上传失败(' + zjimage.msg + ')',
  1998. cancelText: '返回订单',
  1999. confirmText: '修改',
  2000. success: async (res3) => {
  2001. if (res3.confirm) {
  2002. } else {
  2003. this.navigate({
  2004. url: "/pages/orders1/orders"
  2005. }, "switchTab",
  2006. true);
  2007. }
  2008. }
  2009. });
  2010. }
  2011. break;
  2012. case "华泰财险":
  2013. let htimage = await this.$http.post(
  2014. '/order/huaTaiApi/submitImage', {
  2015. companyId: this.companyId
  2016. });
  2017. if (htimage.code == '200') {
  2018. let htaudit = await this.$http.post(
  2019. '/order/huaTaiApi/audit', {
  2020. companyId: this.companyId,
  2021. engageList: this.huaTaiengageList,
  2022. });
  2023. if (htaudit.code == '200') {
  2024. uni.showModal({
  2025. content: '订单自核成功',
  2026. cancelText: '暂不缴费',
  2027. confirmText: '立即缴费',
  2028. success: (res1) => {
  2029. if (res1.confirm) {
  2030. let pro = this.userInfo.sysUser
  2031. .managementSource;
  2032. if (pro == "3") {
  2033. uni.navigateTo({
  2034. url: "/pages/orders1/paymentCode1?companyId=" +
  2035. this
  2036. .companyId
  2037. })
  2038. } else {
  2039. uni.navigateTo({
  2040. url: "/pages/orders1/paymentCode?companyId=" +
  2041. this
  2042. .companyId
  2043. })
  2044. }
  2045. } else {
  2046. this.navigate({
  2047. url: "/pages/orders1/orders"
  2048. }, "switchTab",
  2049. true);
  2050. }
  2051. }
  2052. });
  2053. } else {
  2054. uni.showModal({
  2055. content: '核保失败(' + htaudit.msg + ')',
  2056. cancelText: '返回订单',
  2057. confirmText: '修改',
  2058. success: async (res2) => {
  2059. if (res2.confirm) {
  2060. } else {
  2061. this.navigate({
  2062. url: "/pages/orders1/orders"
  2063. }, "switchTab",
  2064. true);
  2065. }
  2066. }
  2067. });
  2068. }
  2069. } else {
  2070. uni.showModal({
  2071. content: '影像上传失败(' + htimage.msg + ')',
  2072. cancelText: '返回订单',
  2073. confirmText: '修改',
  2074. success: async (res3) => {
  2075. if (res3.confirm) {
  2076. } else {
  2077. this.navigate({
  2078. url: "/pages/orders1/orders"
  2079. }, "switchTab",
  2080. true);
  2081. }
  2082. }
  2083. });
  2084. }
  2085. break;
  2086. case "渤海财险":
  2087. let bhimage = await this.$http.post(
  2088. '/order/boHaiApi/submitImage', {
  2089. companyId: this.companyId
  2090. });
  2091. if (bhimage.code == '200') {
  2092. let bhaudit = await this.$http.post(
  2093. '/order/boHaiApi/audit', {
  2094. companyId: this.companyId,
  2095. jqappoint: "",
  2096. syappoint: ""
  2097. });
  2098. if (bhaudit.code == '200') {
  2099. uni.showModal({
  2100. content: '订单自核成功',
  2101. cancelText: '暂不缴费',
  2102. confirmText: '立即缴费',
  2103. success: (res1) => {
  2104. if (res1.confirm) {
  2105. let pro = this.userInfo.sysUser
  2106. .managementSource;
  2107. if (pro == "3") {
  2108. uni.navigateTo({
  2109. url: "/pages/orders1/paymentCode1?companyId=" +
  2110. this
  2111. .companyId
  2112. })
  2113. } else {
  2114. uni.navigateTo({
  2115. url: "/pages/orders1/paymentCode?companyId=" +
  2116. this
  2117. .companyId
  2118. })
  2119. }
  2120. } else {
  2121. this.navigate({
  2122. url: "/pages/orders1/orders"
  2123. }, "switchTab",
  2124. true);
  2125. }
  2126. }
  2127. });
  2128. } else {
  2129. uni.showModal({
  2130. content: '核保失败(' + bhaudit.msg + ')',
  2131. cancelText: '返回订单',
  2132. confirmText: '修改',
  2133. success: async (res2) => {
  2134. if (res2.confirm) {
  2135. } else {
  2136. this.navigate({
  2137. url: "/pages/orders1/orders"
  2138. }, "switchTab",
  2139. true);
  2140. }
  2141. }
  2142. });
  2143. }
  2144. } else {
  2145. uni.showModal({
  2146. content: '影像上传失败(' + bhimage.msg + ')',
  2147. cancelText: '返回订单',
  2148. confirmText: '修改',
  2149. success: async (res3) => {
  2150. if (res3.confirm) {
  2151. } else {
  2152. this.navigate({
  2153. url: "/pages/orders1/orders"
  2154. }, "switchTab",
  2155. true);
  2156. }
  2157. }
  2158. });
  2159. }
  2160. break;
  2161. case "恒邦财险":
  2162. case "安盛天平":
  2163. case "众安财险":
  2164. case "中国人寿":
  2165. case "太平财险":
  2166. case "华农财险":
  2167. let pythonimage = await this.$http.post(
  2168. '/insurance/crawler/submitImage', {
  2169. subOrderNo: this.companyId
  2170. });
  2171. if (pythonimage.code == '200') {
  2172. let pythonaudit = await this.$http.post(
  2173. '/insurance/crawler/audit', {
  2174. subOrderNo: this.companyId,
  2175. });
  2176. if (pythonaudit.code == '200') {
  2177. uni.showModal({
  2178. content: '订单自核成功',
  2179. cancelText: '暂不缴费',
  2180. confirmText: '立即缴费',
  2181. success: (res1) => {
  2182. if (res1.confirm) {
  2183. let pro = this.userInfo.sysUser
  2184. .managementSource;
  2185. if (pro == "3") {
  2186. uni.navigateTo({
  2187. url: "/pages/orders1/paymentCode1?companyId=" +
  2188. this
  2189. .companyId
  2190. })
  2191. } else {
  2192. uni.navigateTo({
  2193. url: "/pages/orders1/paymentCode?companyId=" +
  2194. this
  2195. .companyId
  2196. })
  2197. }
  2198. } else {
  2199. this.navigate({
  2200. url: "/pages/orders1/orders"
  2201. }, "switchTab",
  2202. true);
  2203. }
  2204. }
  2205. });
  2206. } else {
  2207. uni.showModal({
  2208. content: '核保失败(' + pythonaudit.msg + ')',
  2209. cancelText: '返回订单',
  2210. confirmText: '修改',
  2211. success: async (res2) => {
  2212. if (res2.confirm) {
  2213. } else {
  2214. this.navigate({
  2215. url: "/pages/orders1/orders"
  2216. }, "switchTab",
  2217. true);
  2218. }
  2219. }
  2220. });
  2221. }
  2222. } else {
  2223. uni.showModal({
  2224. content: '影像上传失败(' + pythonimage.msg + ')',
  2225. cancelText: '返回订单',
  2226. confirmText: '修改',
  2227. success: async (res3) => {
  2228. if (res3.confirm) {
  2229. } else {
  2230. this.navigate({
  2231. url: "/pages/orders1/orders"
  2232. }, "switchTab",
  2233. true);
  2234. }
  2235. }
  2236. });
  2237. }
  2238. break;
  2239. }
  2240. } else if (res.cancel) {}
  2241. }
  2242. });
  2243. },
  2244. async chooseImage(type, imageIdList, imgurl) {
  2245. let [chooseImageErr, chooseImageRes] = await uni.chooseImage({
  2246. count: 1,
  2247. sizeType: ['compressed']
  2248. });
  2249. chooseImageRes.tempFilePaths.map((ele, index) => {
  2250. uni.uploadFile({
  2251. url: this.$base.baseUrl + '/ins/taskImage/uploadFile',
  2252. filePath: ele,
  2253. name: "multipartFile",
  2254. formData: {
  2255. 'type': 'image',
  2256. },
  2257. header: {
  2258. Authorization: this.token,
  2259. },
  2260. success: async (imgRes) => {
  2261. let data = JSON.parse(imgRes.data);
  2262. data.data.url = this.$base.baseUrl + data.data.url;
  2263. if (data.code == "200") {
  2264. console.log()
  2265. if (this[imageIdList].some(v => v.imageType == type)) {
  2266. this[imageIdList].map(val => {
  2267. if (val.imageType == type) {
  2268. val.imageId = data.data.id;
  2269. }
  2270. })
  2271. } else {
  2272. this[imageIdList].push({
  2273. imageId: data.data.id,
  2274. imageType: type,
  2275. })
  2276. }
  2277. this[imgurl].push(data.data)
  2278. }
  2279. }
  2280. });
  2281. })
  2282. },
  2283. //影像预览
  2284. previewImage(e, type) {
  2285. this.previewImgs = this[type];
  2286. var current = e.currentTarget.dataset.src;
  2287. this.$refs.previewImage.open(current); // 传入当前选中的图片地址或序号
  2288. },
  2289. //查询电子保单
  2290. async yonganprint() {
  2291. this.policyList = [];
  2292. this.policyList1 = [];
  2293. let res = await this.$http.post('/order/yongAn/getPolicyPrint', {
  2294. companyId: this.companyId,
  2295. policytype: "jq"
  2296. }); //永安
  2297. if (res.data) {
  2298. let result = res.data.replace(/[\r\n]/g, "");
  2299. let pdfBase64 = `data:application/pdf;base64,${result}`;
  2300. base64ToPath(pdfBase64)
  2301. .then(path => {
  2302. this.policyList.push({
  2303. fileTitle: "交强电子保单",
  2304. filename: this.orderInfo.jqpolicyno,
  2305. fileurl: path,
  2306. })
  2307. })
  2308. }
  2309. let res1 = await this.$http.post('/order/yongAn/getPolicyPrint2', {
  2310. companyId: this.companyId,
  2311. policytype: "jq"
  2312. }); //永安
  2313. if (res1.data) {
  2314. let result = res1.data.replace(/[\r\n]/g, "");
  2315. let pdfBase64 = `data:application/pdf;base64,${result}`;
  2316. base64ToPath(pdfBase64)
  2317. .then(path => {
  2318. this.policyList1.push({
  2319. fileTitle: "交强电子标志",
  2320. filename: this.orderInfo.jqpolicyno,
  2321. fileurl: path,
  2322. })
  2323. })
  2324. }
  2325. if (this.orderInfo.sypolicyno) {
  2326. let res2 = await this.$http.post('/order/yongAn/getPolicyPrint2', {
  2327. companyId: this.companyId,
  2328. policytype: "sy"
  2329. }); //永安
  2330. if (res2.data) {
  2331. let result = res1.data.replace(/[\r\n]/g, "");
  2332. let pdfBase64 = `data:application/pdf;base64,${result}`;
  2333. base64ToPath(pdfBase64)
  2334. .then(path => {
  2335. this.policyList.push({
  2336. fileTitle: "商业电子保单",
  2337. filename: this.orderInfo.sypolicyno,
  2338. fileurl: path,
  2339. })
  2340. })
  2341. }
  2342. }
  2343. },
  2344. async zhongMeigetPolicyPrint() {
  2345. this.policyList = [];
  2346. this.policyList1 = [];
  2347. if (this.orderInfo.jqpolicyno) {
  2348. let res = await this.$http.post('/order/zhongMeiApi/getPolicyPrint', {
  2349. companyId: this.companyId,
  2350. riskCode: "0507",
  2351. type: '2', //2:保单
  2352. });
  2353. if (res.code == '200') {
  2354. this.policyList.push({
  2355. fileTitle: "交强电子保单",
  2356. filename: this.orderInfo.jqpolicyno,
  2357. fileurl: res.data[0],
  2358. })
  2359. }
  2360. let res1 = await this.$http.post('/order/zhongMeiApi/getPolicyPrint', {
  2361. companyId: this.companyId,
  2362. riskCode: "0507",
  2363. type: '1', //1:标志
  2364. });
  2365. if (res1.code == '200') {
  2366. this.policyList1.push({
  2367. fileTitle: "交强电子标志",
  2368. filename: this.orderInfo.jqpolicyno,
  2369. fileurl: res1.data[0],
  2370. })
  2371. }
  2372. }
  2373. if (this.orderInfo.sypolicyno) {
  2374. let res = await this.$http.post('/order/zhongMeiApi/getPolicyPrint', {
  2375. companyId: this.companyId,
  2376. riskCode: "0510",
  2377. type: '2', //2:标志
  2378. });
  2379. if (res.code == '200') {
  2380. this.policyList.push({
  2381. fileTitle: "商业电子保单",
  2382. filename: this.orderInfo.sypolicyno,
  2383. fileurl: res.data[0],
  2384. })
  2385. }
  2386. }
  2387. },
  2388. async yongChenggetPolicyPrint() {
  2389. this.policyList = [];
  2390. this.policyList1 = [];
  2391. let res = await this.$http.post('/api/yongCheng/getPolicyPrint', {
  2392. companyId: this.companyId,
  2393. riskCode: "0507",
  2394. type: '2', //2:保单
  2395. }); //永诚财险
  2396. if (res.code == '200') {
  2397. this.policyList.push({
  2398. fileTitle: "交强电子保单",
  2399. filename: this.orderInfo.jqpolicyno,
  2400. fileurl: res.data.jqUrl,
  2401. })
  2402. if (res.data.jqFlagUrl) {
  2403. this.policyList1.push({
  2404. fileTitle: "交强电子标志",
  2405. filename: this.orderInfo.jqpolicyno,
  2406. fileurl: res.data.jqFlagUrl,
  2407. })
  2408. }
  2409. }
  2410. if (this.orderInfo.sypolicyno) {
  2411. let res = await this.$http.post('/api/yongCheng/getPolicyPrint', {
  2412. companyId: this.companyId,
  2413. riskCode: "0510",
  2414. type: '2', //2:保单
  2415. }); //永诚财险
  2416. if (res.code == '200') {
  2417. this.policyList.push({
  2418. fileTitle: "商业电子保单",
  2419. filename: this.orderInfo.sypolicyno,
  2420. fileurl: res.data.syUrl,
  2421. });
  2422. }
  2423. }
  2424. if (this.orderInfo.crossInsurance.length > 0) {
  2425. this.orderInfo.crossInsurance.map(async ele => {
  2426. let res = await this.$http.post('/api/yongCheng/getPolicyPrint', {
  2427. companyId: this.companyId,
  2428. policyNumber: ele.policyNumber,
  2429. riskCode: "0513",
  2430. type: '2', //2:保单
  2431. });
  2432. if (res.code == '200') {
  2433. this.policyList.push({
  2434. fileTitle: "驾意险保单",
  2435. filename: ele.policyNumber,
  2436. fileurl: res.data.jyUrl,
  2437. })
  2438. }
  2439. })
  2440. }
  2441. },
  2442. //爬虫电子保单统一调用
  2443. async pythonprint() {
  2444. if (this.orderInfo.jqpolicyno) {
  2445. let params = {
  2446. subOrderNo: this.companyId,
  2447. };
  2448. let res1 = await this.$http.post('/insurance/crawler/getPolicyPrint', params);
  2449. if (res1.code == '200') {
  2450. this.policyList = [];
  2451. this.policyList1 = [];
  2452. this.policyList.push({
  2453. fileTitle: "交强电子保单",
  2454. filename: this.orderInfo.jqpolicyno,
  2455. fileurl: res1.data.jqxPolicyUrl,
  2456. })
  2457. this.policyList1.push({
  2458. fileTitle: "交强电子标志",
  2459. filename: this.orderInfo.jqpolicyno,
  2460. fileurl: res1.data.jqxFlagUrl,
  2461. })
  2462. if (res1.data.syxPolicyUrl) {
  2463. this.policyList.push({
  2464. fileTitle: "商业电子保单",
  2465. filename: this.orderInfo.sypolicyno,
  2466. fileurl: res1.data.syxPolicyUrl,
  2467. });
  2468. }
  2469. if (res1.data.jyxInfoList.length > 0) {
  2470. res1.data.jyxInfoList.map(ele => {
  2471. this.policyList.push({
  2472. fileTitle: "驾意险保单",
  2473. filename: ele.application,
  2474. fileurl: ele.jyx_policy_url,
  2475. });
  2476. return ele;
  2477. })
  2478. }
  2479. }
  2480. }
  2481. },
  2482. async ziJingetPolicyPrint() {
  2483. this.policyList = [];
  2484. this.policyList1 = [];
  2485. if (this.orderInfo.jqpolicyno) {
  2486. let res = await this.$http.post('/order/zijin/getPolicyPrint', {
  2487. companyId: this.companyId,
  2488. riskCode: "0507",
  2489. type: '2', //2:保单
  2490. });
  2491. if (res.code == '200') {
  2492. this.policyList.push({
  2493. fileTitle: "交强电子保单",
  2494. filename: this.orderInfo.jqpolicyno,
  2495. fileurl: res.data,
  2496. })
  2497. }
  2498. let res1 = await this.$http.post('/order/zijin/getPolicyPrint', {
  2499. companyId: this.companyId,
  2500. riskCode: "0507",
  2501. type: '1', //1:标志
  2502. });
  2503. if (res1.code == '200') {
  2504. this.policyList1.push({
  2505. fileTitle: "交强电子标志",
  2506. filename: this.orderInfo.jqpolicyno,
  2507. fileurl: res1.data,
  2508. })
  2509. }
  2510. }
  2511. if (this.orderInfo.sypolicyno) {
  2512. let res = await this.$http.post('/order/zijin/getPolicyPrint', {
  2513. companyId: this.companyId,
  2514. riskCode: "0510",
  2515. type: '2', //2:标志
  2516. });
  2517. if (res.code == '200') {
  2518. this.policyList.push({
  2519. fileTitle: "商业电子保单",
  2520. filename: this.orderInfo.sypolicyno,
  2521. fileurl: res.data,
  2522. })
  2523. }
  2524. }
  2525. if (this.orderInfo.crossInsurance.length > 0) {
  2526. this.orderInfo.crossInsurance.map(async ele => {
  2527. let res = await this.$http.post('/order/zijin/getPolicyPrint', {
  2528. companyId: this.companyId,
  2529. policyNumber: ele.policyNumber,
  2530. riskCode: "0513",
  2531. type: '2', //2:保单
  2532. });
  2533. if (res.code == '200') {
  2534. this.policyList.push({
  2535. fileTitle: "驾意险保单",
  2536. filename: ele.policyNumber,
  2537. fileurl: res.data,
  2538. })
  2539. }
  2540. })
  2541. }
  2542. },
  2543. async daJiagetPolicyPrint() {
  2544. this.policyList = [];
  2545. this.policyList1 = [];
  2546. if (this.orderInfo.jqpolicyno) {
  2547. let res = await this.$http.post('/api/dajia/obtainWarranty', {
  2548. companyId: this.companyId,
  2549. riskCode: "0507",
  2550. type: '2', //2:保单
  2551. });
  2552. if (res.code == '200') {
  2553. this.policyList.push({
  2554. fileTitle: "交强电子保单",
  2555. filename: this.orderInfo.jqpolicyno,
  2556. fileurl: res.data,
  2557. })
  2558. }
  2559. let res1 = await this.$http.post('/api/dajia/obtainWarranty', {
  2560. companyId: this.companyId,
  2561. riskCode: "0507",
  2562. type: '1', //1:标志
  2563. });
  2564. if (res1.code == '200') {
  2565. this.policyList1.push({
  2566. fileTitle: "交强电子标志",
  2567. filename: this.orderInfo.jqpolicyno,
  2568. fileurl: res1.data,
  2569. })
  2570. }
  2571. if (this.orderInfo.sypolicyno) {
  2572. let res = await this.$http.post('/api/dajia/obtainWarranty', {
  2573. companyId: this.companyId,
  2574. riskCode: "0510",
  2575. type: '2', //2:标志
  2576. });
  2577. if (res.code == '200') {
  2578. this.policyList.push({
  2579. fileTitle: "商业电子保单",
  2580. filename: this.orderInfo.sypolicyno,
  2581. fileurl: res.data,
  2582. })
  2583. }
  2584. }
  2585. }
  2586. },
  2587. async huaTaigetPolicyPrint() {
  2588. this.policyList = [];
  2589. this.policyList1 = [];
  2590. if (this.orderInfo.jqpolicyno) {
  2591. let res = await this.$http.post('/order/huaTaiApi/getPolicyPrint', {
  2592. companyId: this.companyId,
  2593. riskCode: "0507",
  2594. });
  2595. if (res.code == '200') {
  2596. this.policyList = [];
  2597. this.policyList1 = [];
  2598. this.policyList.push({
  2599. fileTitle: "交强电子保单",
  2600. filename: this.orderInfo.jqpolicyno,
  2601. fileurl: res.data.jqxPolicyUrl,
  2602. })
  2603. this.policyList1.push({
  2604. fileTitle: "交强电子标志",
  2605. filename: this.orderInfo.jqpolicyno,
  2606. fileurl: res.data.jqxFlagUrl,
  2607. })
  2608. if (res.data.syxPolicyUrl) {
  2609. this.policyList.push({
  2610. fileTitle: "商业电子保单",
  2611. filename: this.orderInfo.sypolicyno,
  2612. fileurl: res.data.syxPolicyUrl,
  2613. });
  2614. }
  2615. }
  2616. }
  2617. },
  2618. async guoRengetPolicyPrint() {
  2619. this.policyList = [];
  2620. this.policyList1 = [];
  2621. if (this.orderInfo.jqpolicyno) {
  2622. let res = await this.$http.post('/api/guoRen/policyPrint', {
  2623. companyId: this.companyId,
  2624. riskCode: "0507",
  2625. type: '2', //2:保单
  2626. });
  2627. if (res.code == '200') {
  2628. this.policyList.push({
  2629. fileTitle: "交强电子保单",
  2630. filename: this.orderInfo.jqpolicyno,
  2631. fileurl: res.data,
  2632. })
  2633. }
  2634. let res1 = await this.$http.post('/api/guoRen/policyPrint', {
  2635. companyId: this.companyId,
  2636. riskCode: "0507",
  2637. type: '1', //1:标志
  2638. });
  2639. if (res1.code == '200') {
  2640. this.policyList1.push({
  2641. fileTitle: "交强电子标志",
  2642. filename: this.orderInfo.jqpolicyno,
  2643. fileurl: res1.data,
  2644. })
  2645. }
  2646. }
  2647. if (this.orderInfo.sypolicyno) {
  2648. let res = await this.$http.post('/api/guoRen/policyPrint', {
  2649. companyId: this.companyId,
  2650. riskCode: "0510",
  2651. type: '2', //2:标志
  2652. });
  2653. if (res.code == '200') {
  2654. this.policyList.push({
  2655. fileTitle: "商业电子保单",
  2656. filename: this.orderInfo.sypolicyno,
  2657. fileurl: res.data,
  2658. })
  2659. }
  2660. }
  2661. if (this.orderInfo.crossInsurance.length > 0) {
  2662. this.orderInfo.crossInsurance.map(async ele => {
  2663. let res = await this.$http.post('/api/guoRen/policyPrint', {
  2664. companyId: this.companyId,
  2665. policyNumber: ele.policyNumber,
  2666. riskCode: "0513",
  2667. type: '2', //2:保单
  2668. });
  2669. if (res.code == '200') {
  2670. this.policyList.push({
  2671. fileTitle: "驾意险保单",
  2672. filename: ele.policyNumber,
  2673. fileurl: res.data,
  2674. })
  2675. }
  2676. })
  2677. }
  2678. },
  2679. downloadPolicy(file) {
  2680. //#ifdef APP-PLUS
  2681. uni.showLoading({
  2682. title: '文件下载中'
  2683. });
  2684. let index = file.lastIndexOf("\/")
  2685. let licensename = file.substring(index + 1, file.length)
  2686. let dtask = plus.downloader.createDownload(file, {
  2687. filename: "_downloads/" + this.name + '-' + this.insuredPersonInfo.name + '-' + licensename
  2688. }, function(d, status) {
  2689. if (status == 200) {
  2690. uni.hideLoading()
  2691. //下载成功,d.filename是文件在保存在本地的相对路径,使用下面的API可转为平台绝对路径
  2692. let fileSaveUrl = plus.io.convertLocalFileSystemURL(d.filename);
  2693. plus.runtime.openFile(d.filename); //选择软件打开文件
  2694. } else {
  2695. uni.hideLoading()
  2696. //下载失败
  2697. plus.downloader.clear(); //清除下载任务
  2698. }
  2699. })
  2700. dtask.start();
  2701. //#endif
  2702. //#ifdef H5
  2703. var win = window.open();
  2704. win.document.write(
  2705. '<body style="margin:0px;"><object data="' +
  2706. file +
  2707. '" type="application/pdf" width="100%" height="100%"><iframe src="' +
  2708. file +
  2709. '" scrolling="no" width="100%" height="100%" frameborder="0" ></iframe></object></body>'
  2710. );
  2711. //#endif
  2712. },
  2713. //选择缴费方式
  2714. openPayWay() {
  2715. this.navigate({
  2716. url: "/pages/carInsure/payWay?orderno=" + this.orderno
  2717. }, 'navigateTo', true)
  2718. },
  2719. cancelShare() {
  2720. this.$refs.showshare.close()
  2721. },
  2722. //控制详情的展开和收起
  2723. controlShow(type) {
  2724. this[type] = !this[type];
  2725. },
  2726. //撤销核保
  2727. cancelUnderwriting() {
  2728. uni.showModal({
  2729. content: '是否确认撤销核保?',
  2730. success: async (res) => {
  2731. if (res.confirm) {
  2732. let param = {
  2733. "auditid": this.userInfo.sysUser.id, //核保人会员号
  2734. "auditopinion": '', //核保意见
  2735. "jqapplyno": "", //交强险投保单号
  2736. "jqappoint": "", //交强特别约定
  2737. "jqpolicyno": "", //交强保单号
  2738. "orderno": this.orderno, //订单号
  2739. "orderstatus": "0", //订单类型
  2740. "syapplyno": "", //商业险投保单号
  2741. "syappoint": "", //商业险特别约定
  2742. "sypolicyno": "" //商业保单号
  2743. }
  2744. let res = await this.$http.post('/insOrder/saveAudit', param);
  2745. uni.showToast({
  2746. title: '撤销成功',
  2747. icon: "none",
  2748. duration: 2000
  2749. });
  2750. setTimeout(() => {
  2751. this.setOrderStage(0);
  2752. this.setOrderType(0);
  2753. this.navigate({
  2754. url: "/pages/orders1/orders"
  2755. }, "switchTab", true);
  2756. }, 2000);
  2757. } else if (res.cancel) {
  2758. console.log('用户点击取消');
  2759. }
  2760. }
  2761. });
  2762. },
  2763. toChinesNum(num) {
  2764. let overWan = Math.floor(num / 10000);
  2765. let result = overWan + "万";
  2766. return result;
  2767. },
  2768. }
  2769. }
  2770. </script>
  2771. <style lang="scss" scoped>
  2772. @import '@/style/mixin.scss';
  2773. .page {
  2774. background: #F8FAFE;
  2775. padding: 0 16px 100px 16px;
  2776. }
  2777. .headers {
  2778. width: 100%;
  2779. height: 198px;
  2780. background: linear-gradient(180deg, #0052FF 0%, #F8FAFE 110%);
  2781. padding: 16px 16px 0 16px;
  2782. .price {
  2783. width: 100%;
  2784. height: 40px;
  2785. background: #FFFFFF;
  2786. border-radius: 6px 6px 0px 0px;
  2787. }
  2788. }
  2789. .header {
  2790. height: 80upx;
  2791. position: relative;
  2792. }
  2793. .header .title {
  2794. font-size: 30upx;
  2795. font-weight: bold;
  2796. }
  2797. .welfare {
  2798. margin-bottom: 20upx;
  2799. width: 100%;
  2800. box-sizing: border-box;
  2801. background: #FFFFFF;
  2802. border-radius: 20upx;
  2803. }
  2804. .welfare .body {
  2805. padding: 0 30upx 30upx;
  2806. box-sizing: border-box;
  2807. flex-wrap: wrap;
  2808. }
  2809. .welfare .body>.welfareItem {
  2810. width: 320upx;
  2811. height: 120upx;
  2812. padding: 10upx 20upx;
  2813. margin: 20upx 10upx 0upx;
  2814. border: 1px solid rgba($themeColor, 0.6);
  2815. box-sizing: border-box;
  2816. background: rgba($themeColor, 0.4);
  2817. border-radius: 10upx;
  2818. }
  2819. .welfare .body>.welfareItem .name {
  2820. color: $themeColor;
  2821. font-size: 30upx;
  2822. width: 210upx;
  2823. overflow: hidden;
  2824. text-overflow: ellipsis;
  2825. white-space: nowrap;
  2826. }
  2827. .welfare .body>.welfareItem .content {
  2828. font-size: 24upx;
  2829. width: 260upx;
  2830. overflow: hidden;
  2831. text-overflow: ellipsis;
  2832. white-space: nowrap;
  2833. }
  2834. /* 报价方案Start */
  2835. .quotePlan {
  2836. margin-bottom: 20upx;
  2837. width: 100%;
  2838. }
  2839. .quotePlan .header .adjustPlan {
  2840. color: $themeColor;
  2841. }
  2842. .quotePlan .body {
  2843. background-color: #fff;
  2844. padding: 10px;
  2845. border-radius: 6px;
  2846. .kindList {
  2847. background-color: #F9F9F9;
  2848. padding: 10px;
  2849. height: auto;
  2850. width: 100%;
  2851. border-radius: 10px;
  2852. font-size: 13px;
  2853. color: rgba(35, 40, 50, 0.8);
  2854. }
  2855. }
  2856. .quotePlan .body .insurance {
  2857. padding-bottom: 20upx;
  2858. }
  2859. .quotePlan .body .row {
  2860. padding: 5px;
  2861. border-bottom: 1px solid #F3F3F3;
  2862. }
  2863. .quotePlan .body .row:last-child {
  2864. border: none;
  2865. }
  2866. .quotePlan .body .row .date {
  2867. color: #A4A4A4;
  2868. font-size: 22upx;
  2869. }
  2870. .quotePlan .body .insurance .kindList {
  2871. background: #F3F3F3;
  2872. padding: 0 10upx;
  2873. }
  2874. .addedServices .kindList {
  2875. background: #F3F3F3;
  2876. padding: 0 10upx;
  2877. }
  2878. .quotePlan .body .insurance .kindList .kindItem {
  2879. padding: 2px 0;
  2880. }
  2881. .quotePlan .body .insurance .kindList .kindItem>view {
  2882. font-size: 24upx;
  2883. }
  2884. .quotePlan .body .insurance .kindList .kindItem>view:nth-of-type(1) {
  2885. width: 310upx;
  2886. }
  2887. .quotePlan .body .insurance .kindList .kindItem>view:nth-of-type(2) {
  2888. width: 170upx;
  2889. }
  2890. .quotePlan .body .insurance .kindList .kindItem>view:nth-of-type(3) {
  2891. width: 170upx;
  2892. }
  2893. .addedServices .kindList .kindItem {
  2894. height: 65upx;
  2895. }
  2896. .addedServices .kindList .kindItem>view {
  2897. font-size: 24upx;
  2898. padding: 0upx 15upx;
  2899. }
  2900. /* 报价方案End */
  2901. .car {
  2902. width: 100%;
  2903. .body {
  2904. padding: 0upx 30upx 0;
  2905. background-color: #fff;
  2906. border-radius: 6px;
  2907. box-shadow: 0px 4px 10px 0px #DAE3F4;
  2908. .row {
  2909. padding: 5px;
  2910. border-bottom: 1px solid #F3F3F3;
  2911. }
  2912. .row:last-child {
  2913. border: none;
  2914. }
  2915. }
  2916. }
  2917. /* 预缴费Start */
  2918. .advancePaymentTotal {
  2919. margin-bottom: 20upx;
  2920. width: 100%;
  2921. box-sizing: border-box;
  2922. background: #FFFFFF;
  2923. border-radius: 20upx;
  2924. }
  2925. .advancePaymentTotal .body {
  2926. padding: 0upx 40upx 10upx;
  2927. }
  2928. .advancePaymentTotal .body .row {
  2929. height: 80upx;
  2930. border-bottom: 1px solid #F3F3F3;
  2931. }
  2932. /* 预缴费End */
  2933. /* 底部按钮Start */
  2934. .bottomBtn {
  2935. position: fixed;
  2936. bottom: 0;
  2937. left: 0;
  2938. right: 0;
  2939. height: auto;
  2940. background-color: #fff;
  2941. .agree {
  2942. padding: 4px 8px;
  2943. font-size: 22rpx;
  2944. color: #858585;
  2945. .tip {
  2946. color: #FF5600;
  2947. margin: 0upx 10upx;
  2948. }
  2949. }
  2950. .btnView {
  2951. width: 100%;
  2952. height: 38px;
  2953. background-color: #fff;
  2954. .btn {
  2955. height: 100%;
  2956. }
  2957. .btn:nth-child(1) {
  2958. width: 40%;
  2959. background-color: #E6EEFF;
  2960. color: #0052FF;
  2961. padding: 8px;
  2962. font-size: 13px;
  2963. }
  2964. .btn:nth-child(2) {
  2965. width: 20%;
  2966. background-color: #0052FF;
  2967. color: #fff;
  2968. font-weight: bold;
  2969. }
  2970. .btn:nth-child(3) {
  2971. width: 40%;
  2972. color: #fff;
  2973. background-color: #0038AF;
  2974. font-weight: bold;
  2975. }
  2976. }
  2977. }
  2978. .tool {
  2979. padding: 10px;
  2980. view {
  2981. width: 100%;
  2982. padding: 8px 0;
  2983. border-bottom: 1px solid #f2f2f2;
  2984. font-size: 14px;
  2985. color: #232832;
  2986. }
  2987. }
  2988. .cancell {
  2989. width: 100%;
  2990. height: 46px;
  2991. background-color: #E6EEFF;
  2992. font-size: 16px;
  2993. color: #0052FF;
  2994. }
  2995. /* 底部按钮End */
  2996. .contributing {
  2997. width: 100%;
  2998. margin: 4px 0;
  2999. font-size: 14px;
  3000. text:nth-child(1) {
  3001. font-weight: bold;
  3002. color: #ff9000;
  3003. }
  3004. }
  3005. /* 人员信息Start */
  3006. .personInfo,
  3007. .advancePayment,
  3008. .imageInfo,
  3009. .appoint {}
  3010. .personInfo,
  3011. .advancePayment,
  3012. .imageInfo,
  3013. .appoint {
  3014. .title {
  3015. height: 80upx;
  3016. font-size: 15px;
  3017. box-shadow: inset 0 -3upx 0px #fafafa;
  3018. }
  3019. .content {
  3020. padding: 0px 15px 0;
  3021. background-color: #fff;
  3022. border-radius: 6px;
  3023. box-shadow: 0px 4px 10px 0px #DAE3F4;
  3024. }
  3025. .uni-uploader {
  3026. padding: 8px;
  3027. background-color: #fff;
  3028. border-radius: 6px;
  3029. height: auto;
  3030. box-shadow: 0px 4px 10px 0px #DAE3F4;
  3031. }
  3032. }
  3033. .uni-uploader__file {
  3034. position: relative;
  3035. }
  3036. .delImgIcon {
  3037. width: 40upx;
  3038. height: 40upx;
  3039. background-color: #999;
  3040. position: absolute;
  3041. right: 0upx;
  3042. top: 0upx;
  3043. color: #FFFFFF;
  3044. }
  3045. .showStatus {
  3046. font-size: 26upx;
  3047. color: #007AFF;
  3048. }
  3049. .personInfo .content .row,
  3050. .advancePayment .content .row {
  3051. height: 80upx;
  3052. border-bottom: 1px solid #F9F9F9;
  3053. flex-wrap: nowrap;
  3054. }
  3055. .personInfo .content .row .left,
  3056. .advancePayment .content .row .left {
  3057. width: 170upx;
  3058. flex-shrink: 0;
  3059. font-size: 28upx;
  3060. }
  3061. .appoint .content .row {
  3062. height: auto;
  3063. margin-top: 10upx;
  3064. }
  3065. .appoint .content .row>view {
  3066. width: 240upx;
  3067. flex-shrink: 1;
  3068. font-size: 28upx;
  3069. }
  3070. .appoint .content .row>textarea {
  3071. /* background: #007AFF; */
  3072. padding: 15upx;
  3073. box-sizing: border-box;
  3074. font-size: 26upx;
  3075. min-height: 160upx;
  3076. height: 100upx;
  3077. border: 1px solid #fafafa;
  3078. /* over */
  3079. }
  3080. .personInfo .content .row .right,
  3081. .advancePayment .content .row .right,
  3082. .appoint .content .row .right {
  3083. font-size: 28upx;
  3084. }
  3085. /* 人员信息End */
  3086. .checkButton {
  3087. margin: 0 20upx 0 20upx;
  3088. font-size: 24upx;
  3089. width: 80upx;
  3090. height: 50upx;
  3091. background: $themeColor;
  3092. font-weight: bold;
  3093. color: #FFFFFF;
  3094. border-radius: 5upx;
  3095. }
  3096. .uni-popup__wrapper-box {
  3097. display: block;
  3098. position: relative;
  3099. }
  3100. .uni-share {
  3101. display: flex;
  3102. flex-direction: column;
  3103. background-color: #fff;
  3104. position: fixed;
  3105. bottom: 0;
  3106. left: 0;
  3107. right: 0;
  3108. }
  3109. .uni-share-title {
  3110. line-height: 30px;
  3111. font-size: 12px;
  3112. padding: 7px 0;
  3113. text-align: center;
  3114. }
  3115. .uni-share-content {
  3116. display: flex;
  3117. flex-direction: row;
  3118. flex-wrap: wrap;
  3119. justify-content: center;
  3120. padding: 15px;
  3121. }
  3122. .uni-share-content-box {
  3123. display: flex;
  3124. flex-direction: column;
  3125. align-items: center;
  3126. width: 100px;
  3127. }
  3128. .uni-share-content-image {
  3129. display: flex;
  3130. flex-direction: row;
  3131. justify-content: center;
  3132. align-items: center;
  3133. width: 30px;
  3134. height: 30px;
  3135. overflow: hidden;
  3136. border-radius: 5px;
  3137. }
  3138. .uni-share-content-text {
  3139. font-size: 13px;
  3140. color: #333;
  3141. padding-top: 5px;
  3142. padding-bottom: 10px;
  3143. }
  3144. .uni-share-btn {
  3145. height: 45px;
  3146. line-height: 45px;
  3147. font-size: 14px;
  3148. border-top-color: #f5f5f5;
  3149. border-top-width: 1px;
  3150. border-top-style: solid;
  3151. text-align: center;
  3152. color: #666;
  3153. }
  3154. uni-image>img {
  3155. display: block;
  3156. position: absolute;
  3157. top: 0;
  3158. left: 0;
  3159. opacity: 0;
  3160. }
  3161. uni-image>div,
  3162. uni-image>img {
  3163. width: 100%;
  3164. height: 100%;
  3165. }
  3166. </style>