detailsDialog.vue 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070
  1. <template>
  2. <div>
  3. <el-dialog :visible.sync="dialogVisible" width="80%" class="details_style">
  4. <div slot="title" class=" dialog-title details-title">
  5. <img src="../../../icon/归属信息.png" alt class="icon-img" />
  6. <span>车辆报价信息详情</span>
  7. </div>
  8. <div class="details-body flex">
  9. <div style="background-color: #fff;">
  10. <ul class="tabLeft">
  11. <!-- <li :class="{ 'li-selected': selectedItem === 'gsxx' }" @click="selectItem('gsxx')">归属信息</li> -->
  12. <li :class="{ 'li-selected': selectedItem === 'cjxx' }" @click="selectItem('cjxx')">投保信息</li>
  13. <li :class="{ 'li-selected': selectedItem === 'bfys' }" @click="selectItem('bfys')">保费因素</li>
  14. <li :class="{ 'li-selected': selectedItem === 'clxx' }" @click="selectItem('clxx')">车辆信息</li>
  15. <li :class="{ 'li-selected': selectedItem === 'czxx' }" @click="selectItem('czxx')">车主信息</li>
  16. <li :class="{ 'li-selected': selectedItem === 'tbrxx' }" @click="selectItem('tbrxx')">投保人信息</li>
  17. <li :class="{ 'li-selected': selectedItem === 'bbrxx' }" @click="selectItem('bbrxx')">被保人信息</li>
  18. <li v-if="orderInfo.kindinfo && orderInfo.kindinfo.length > 0"
  19. :class="{ 'li-selected': selectedItem === 'xzxx' }" @click="selectItem('xzxx')">险种信息</li>
  20. <li v-if="orderInfo.accidentInfo && orderInfo.accidentInfo.length > 0"
  21. :class="{ 'li-selected': selectedItem === 'jyx' }" @click="selectItem('jyx')">驾意险</li>
  22. <li v-if="orderInfo.taxArrears && orderInfo.taxArrears.length > 0"
  23. :class="{ 'li-selected': selectedItem === 'qsxx' }" @click="selectItem('qsxx')">欠税信息</li>
  24. <li :class="{ 'li-selected': selectedItem === 'yxzl' }" @click="selectItem('yxzl')"
  25. v-if="Object.keys(obj).length != 0">影像资料</li>
  26. <li
  27. :class="{ 'li-selected': selectedItem === 'fymx' }" @click="selectItem('fymx')"
  28. v-if="orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee && Feepermissions">费用明细</li>
  29. <li v-if="isAuditing && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.deptManagerFee.length > 0"
  30. :class="{ 'li-selected': selectedItem === 'jgglf' }" @click="selectItem('jgglf')">机构管理费</li>
  31. <li v-if="orderInfo.distributionLevelVoList && orderInfo.distributionLevelVoList.length > 0 "
  32. :class="{ 'li-selected': selectedItem === 'fxmx1' }" @click="selectItem('fxmx1')">分销明细</li>
  33. <li v-if="orderInfo && orderInfo.orderstatus == 4 && orderInfo.auditopinion"
  34. :class="{ 'li-selected': selectedItem === 'shyj' }" @click="selectItem('shyj')">审核意见</li>
  35. <li v-if="orderInfo && orderInfo.orderstatus == 3 && !isAuditing"
  36. :class="{ 'li-selected': selectedItem === 'dzbd' }" @click="selectItem('dzbd')">保单信息</li>
  37. </ul>
  38. </div>
  39. <div style="margin:20px;height: 60vh;overflow-y: auto;width: 100%;">
  40. <!-- <OpenCloseBox id="gsxx">
  41. <span slot="title">归属信息</span>
  42. <div slot="boby">
  43. <el-row class="premium-style " :gutter="20">
  44. <el-col :span="6"><span>工号:</span>{{ orderInfo.userid }}</el-col>
  45. <el-col :span="6"><span>姓名:</span>{{ orderInfo.username }}</el-col>
  46. <el-col :span="6"><span>机构编码:</span>{{ orderInfo.deptid }}</el-col>
  47. <el-col :span="6"><span>机构名称:</span>{{ orderInfo.deptname }}</el-col>
  48. </el-row>
  49. </div>
  50. </OpenCloseBox> -->
  51. <OpenCloseBox id="cjxx">
  52. <span slot="title">投保信息</span>
  53. <div slot="boby">
  54. <div class="m-btn-10">保险公司:{{ orderInfo.inscompany }}</div>
  55. <div class=" quotation-style">
  56. <b>险种</b>
  57. <b>起保日期</b>
  58. <b>终保日期</b>
  59. <b>优惠比例</b>
  60. <b>优惠金额</b>
  61. <b>保费金额</b>
  62. <span>交强险</span>
  63. <span>{{ orderInfo.jqstartdate ? orderInfo.jqstartdate : '-' }}</span>
  64. <span>{{ orderInfo.jqenddate ? orderInfo.jqenddate : '-' }}</span>
  65. <span>{{ orderInfo.jqpremium && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee ?
  66. orderInfo.feeOrderNewVo.exportFee[0].totalProportion + '%' : '-' }}</span>
  67. <span>{{ orderInfo.jqpremium && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee
  68. ? '¥' + orderInfo.feeOrderNewVo.exportFee[0].totalAmount : '-' }}</span>
  69. <span>{{ orderInfo.jqpremium ? '¥' + orderInfo.jqpremium : '-' }}</span>
  70. <span>商业险</span>
  71. <span>{{ orderInfo.systartdate ? orderInfo.systartdate : '-' }}</span>
  72. <span>{{ orderInfo.syenddate ? orderInfo.syenddate : '-' }}</span>
  73. <span>{{ orderInfo.sypremium && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee ?
  74. orderInfo.feeOrderNewVo.exportFee[1].totalProportion + '%' : '-' }}</span>
  75. <span>{{ orderInfo.sypremium && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee
  76. ? '¥' + orderInfo.feeOrderNewVo.exportFee[1].totalAmount : '-' }}</span>
  77. <span>{{ orderInfo.sypremium ? '¥' + orderInfo.sypremium : '-' }}</span>
  78. <span>车船税</span>
  79. <span>-</span>
  80. <span>-</span>
  81. <span>-</span>
  82. <span>-</span>
  83. <span>¥{{ orderInfo.taxamount }}</span>
  84. <span>驾意险</span>
  85. <span>-</span>
  86. <span>-</span>
  87. <span>{{ orderInfo.jypremium && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee ?
  88. orderInfo.feeOrderNewVo.exportFee[2].totalProportion + '%' : '-' }}</span>
  89. <span>{{ orderInfo.jypremium && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee
  90. ? '¥' + orderInfo.feeOrderNewVo.exportFee[2].totalAmount : '-' }}</span>
  91. <span>{{ orderInfo.jypremium ? '¥' + orderInfo.jypremium : '-' }}</span>
  92. <span>总计</span>
  93. <span>-</span>
  94. <span>-</span>
  95. <span>-</span>
  96. <span class="themeColor" style="font-weight: bold;">¥{{ orderInfo.sumFee ? orderInfo.sumFee : 0
  97. }}</span>
  98. <span class="themeColor" style="font-weight: bold;">¥{{ orderInfo.sumpremium }}</span>
  99. </div>
  100. </div>
  101. </OpenCloseBox>
  102. <OpenCloseBox id="bfys">
  103. <span slot="title">保费因素</span>
  104. <div slot="boby">
  105. <el-row class="premium-style " :gutter="20">
  106. <el-col :span="6"><span>评分:</span>{{ orderInfo.extendInfo.score ?orderInfo.extendInfo.score :'' }}</el-col>
  107. <el-col :span="6"><span>总赔付率:</span>{{ orderInfo.extendInfo.lossRation }}</el-col>
  108. <el-col :span="6"><span>总折扣率:</span>{{ orderInfo.extendInfo.totalAdjustRate }}</el-col>
  109. </el-row>
  110. <el-row class="premium-style " :gutter="20">
  111. <el-col :span="6"><span>交强类型评分:</span>{{ orderInfo.extendInfo.jqScore }}</el-col>
  112. <el-col :span="6"><span>交强赔付率:</span>{{ orderInfo.extendInfo.jqLossRation }}</el-col>
  113. <el-col :span="6"><span>交强险折扣:</span>{{ orderInfo.extendInfo.jqAdjustRate }}</el-col>
  114. </el-row>
  115. <el-row class="premium-style " :gutter="20">
  116. <el-col :span="6"><span>商业类型评分:</span>{{ orderInfo.extendInfo.syScore }}</el-col>
  117. <el-col :span="6"><span>商业赔付率:</span>{{ orderInfo.extendInfo.syLossRation }}</el-col>
  118. <el-col :span="6"><span>商业险折扣:</span>{{ orderInfo.extendInfo.syAdjustRate }}</el-col>
  119. </el-row>
  120. <el-row class="premium-style " :gutter="20">
  121. <el-col :span="6"><span>交强续保:</span>{{ orderInfo.extendInfo.jqRenewal }}</el-col>
  122. <el-col :span="6"><span>商业续保:</span>{{ orderInfo.extendInfo.syRenewal }}</el-col>
  123. <el-col :span="6"><span>交强出险次数:</span>{{ orderInfo.extendInfo.jqClaims }}</el-col>
  124. <el-col :span="6"><span>商业出险次数:</span>{{ orderInfo.extendInfo.syClaims }}</el-col>
  125. </el-row>
  126. <el-row class="premium-style " :gutter="20" v-if="orderInfo.ubiPredictedInfoScore">
  127. <el-col :span="6"><span>紫金能源车(鼎然-车辆风险评分):</span>{{ orderInfo.ubiPredictedInfoScore }}</el-col>
  128. </el-row>
  129. </div>
  130. </OpenCloseBox>
  131. <OpenCloseBox id="clxx">
  132. <span slot="title">车辆信息</span>
  133. <div slot="boby">
  134. <el-row class="premium-style " :gutter="20">
  135. <el-col :span="6"><span>车牌号:</span>{{ orderInfo.carinfo.licenseNo }}</el-col>
  136. <el-col :span="6"><span>车辆识别代码:</span>{{ orderInfo.carinfo.vinNo }}</el-col>
  137. <el-col :span="6"><span>品牌型号:</span>{{ orderInfo.carinfo.modelcname }}</el-col>
  138. <el-col :span="6"><span>发动机号:</span>{{ orderInfo.carinfo.engineNo }}</el-col>
  139. </el-row>
  140. <el-row class="premium-style " :gutter="20">
  141. <el-col :span="6"><span>年款:</span>{{ orderInfo.carinfo.caryear }}</el-col>
  142. <el-col :span="6"><span>座位数:</span>{{ orderInfo.carinfo.seatCount }}</el-col>
  143. <el-col :span="6"><span>整备质量:</span>{{ orderInfo.carinfo.completeKerbMass }}</el-col>
  144. <el-col :span="6"><span>核定载质量:</span>{{ orderInfo.carinfo.limitLoad }}</el-col>
  145. </el-row>
  146. <el-row class="premium-style " :gutter="20">
  147. <el-col :span="6"><span>排量:</span>{{ orderInfo.carinfo.enginedesc }}</el-col>
  148. <el-col :span="6"><span>功率:</span>{{ orderInfo.carinfo.powerScale }}</el-col>
  149. <el-col :span="6"><span>新车购置价:</span>{{ orderInfo.carinfo.purchasePrice }}</el-col>
  150. <el-col :span="6"><span>使用性质:</span>{{ orderInfo.carinfo.carnature }}</el-col>
  151. </el-row>
  152. <el-row class="premium-style " :gutter="20">
  153. <el-col :span="6"><span>车辆用途:</span>{{orderInfo.carinfo.vehicleUse }} </el-col>
  154. <el-col :span="6"><span>车辆类型:</span>{{ orderInfo.carinfo.cartype }}</el-col>
  155. <el-col :span="6"><span>车辆种类:</span>{{ orderInfo.carinfo.cimodelclass }}</el-col>
  156. <el-col :span="6"><span>能源种类:</span>{{ orderInfo.carinfo.energyType }}</el-col>
  157. </el-row>
  158. <el-row class="premium-style " :gutter="20">
  159. <el-col :span="6"><span>注册日期:</span>{{ orderInfo.carinfo.registerDate }}</el-col>
  160. <el-col :span="6"><span>发证日期:</span>{{ orderInfo.carinfo.issueDate }}</el-col>
  161. <el-col :span="6"><span>是否过户:</span>{{ orderInfo.carinfo.transferFlag == true ? "是" : "否" }}</el-col>
  162. <el-col :span="6"><span>转移登记日期:</span>{{ orderInfo.carinfo.transferDate }}</el-col>
  163. </el-row>
  164. <el-row class="premium-style " :gutter="20">
  165. <el-col :span="6"><span>商业险是否过户:</span>{{ orderInfo.carinfo.transferFlagBi == true ? "是" : "否" }}</el-col>
  166. <el-col :span="6"><span>是否脱保:</span>{{ orderInfo.carinfo.outOfInsurance == true ? "是" : "否" }}</el-col>
  167. <el-col :span="6"><span>是否二手车:</span>{{ orderInfo.carinfo.usedCar == true ? "是" : "否" }}</el-col>
  168. </el-row>
  169. </div>
  170. </OpenCloseBox>
  171. <OpenCloseBox id="czxx">
  172. <span slot="title">车主信息</span>
  173. <div slot="boby">
  174. <el-row class="premium-style" :gutter="20">
  175. <el-col :span="6"><span>车主姓名:</span>{{ orderInfo.ownerinfo.name }}</el-col>
  176. <el-col :span="6"><span>证件类型:</span>{{ orderInfo.ownerinfo.identifyType }}</el-col>
  177. <el-col :span="6"><span>身份证号:</span>{{ orderInfo.ownerinfo.identifyNumber }}</el-col>
  178. <el-col :span="6"><span>手机号:</span>{{ orderInfo.ownerinfo.mobile }}<el-button style="margin-left:20px" type="text" v-if="isTaskPool && orderInfo.isDial&& orderInfo.isDial=='1'" >拨号</el-button></el-col>
  179. </el-row>
  180. <el-row class="premium-style" :gutter="20">
  181. <el-col :span="6"><span>电子邮箱:</span>{{ orderInfo.ownerinfo.email ? orderInfo.ownerinfo.email : '-'
  182. }}</el-col>
  183. <el-col :span="12"><span>地址:</span>{{ orderInfo.ownerinfo.addr }}</el-col>
  184. </el-row>
  185. </div>
  186. </OpenCloseBox>
  187. <OpenCloseBox id="tbrxx">
  188. <span slot="title">投保人信息</span>
  189. <div slot="boby">
  190. <el-row class="premium-style" :gutter="20">
  191. <el-col :span="6"><span>投保人姓名:</span>{{ orderInfo.applyinfo.name }}</el-col>
  192. <el-col :span="6"><span>证件类型:</span>{{ orderInfo.applyinfo.identifyType }}</el-col>
  193. <el-col :span="6"><span>身份证号:</span>{{ orderInfo.applyinfo.identifyNumber }}</el-col>
  194. <el-col :span="6"><span>手机号:</span>{{ orderInfo.applyinfo.mobile }}<el-button style="margin-left:20px" type="text" v-if="isTaskPool && orderInfo.isDial&& orderInfo.isDial=='1'" >拨号</el-button></el-col>
  195. </el-row>
  196. <el-row class="premium-style" :gutter="20">
  197. <el-col :span="6"><span>电子邮箱:</span>{{ orderInfo.applyinfo.email ? orderInfo.applyinfo.email : '/'
  198. }}</el-col>
  199. <el-col :span="12"><span>地址:</span>{{ orderInfo.applyinfo.addr }}</el-col>
  200. </el-row>
  201. </div>
  202. </OpenCloseBox>
  203. <OpenCloseBox id="bbrxx">
  204. <span slot="title">被保人信息</span>
  205. <div slot="boby">
  206. <el-row class="premium-style" :gutter="20">
  207. <el-col :span="6"><span>被保人姓名:</span>{{ orderInfo.insureinfo.name }}</el-col>
  208. <el-col :span="6"><span>证件类型:</span>{{ orderInfo.insureinfo.identifyType }}</el-col>
  209. <el-col :span="6"><span>身份证号:</span>{{ orderInfo.insureinfo.identifyNumber }}</el-col>
  210. <el-col :span="6"><span>手机号:</span>{{ orderInfo.insureinfo.mobile }}<el-button style="margin-left:20px" type="text" v-if="isTaskPool && orderInfo.isDial&& orderInfo.isDial=='1'" >拨号</el-button></el-col>
  211. </el-row>
  212. <el-row class="premium-style" :gutter="20">
  213. <el-col :span="6"><span>电子邮箱:</span>{{ orderInfo.insureinfo.email ? orderInfo.insureinfo.email : '/'
  214. }}</el-col>
  215. <el-col :span="12"><span>地址:</span>{{ orderInfo.insureinfo.addr }}</el-col>
  216. </el-row>
  217. </div>
  218. </OpenCloseBox>
  219. <OpenCloseBox id="xzxx" v-if="orderInfo.kindinfo && orderInfo.kindinfo.length > 0">
  220. <span slot="title">险种信息</span>
  221. <div slot="boby">
  222. <div class="quotation-style kind-arrears">
  223. <b>商业险险别</b>
  224. <b>保额(元)</b>
  225. <b>保费(元)</b>
  226. <div v-for="(kindinfoitem, kindinfoindex) in orderInfo.kindinfo" :key="kindinfoindex">
  227. <span>{{ kindinfoitem.kindName }}</span>
  228. <span v-if="['D4', 'SY_FJ_YBW2'].includes(kindinfoitem.kindCode)">{{ kindinfoitem.unitAmount }}</span>
  229. <span v-else-if="['MJ1', 'MJ2', 'MJ3', 'MJ4'].includes(kindinfoitem.kindCode)
  230. ">
  231. {{ kindinfoitem.deductibleRate }}
  232. </span>
  233. <span v-else>{{ kindinfoitem.amount }}</span>
  234. <span>{{ kindinfoitem.coveragePremium ? kindinfoitem.coveragePremium : '-' }}</span>
  235. </div>
  236. </div>
  237. </div>
  238. </OpenCloseBox>
  239. <OpenCloseBox id="jyx" v-if="orderInfo.accidentInfo && orderInfo.accidentInfo.length > 0">
  240. <span slot="title">驾意险</span>
  241. <div slot="boby">
  242. <div class="quotation-style driving-style">
  243. <b>产品</b>
  244. <b>份数</b>
  245. <b>价格</b>
  246. <div v-for="(kindinfoitem, taxArrearsindex) in orderInfo.accidentInfo" :key="taxArrearsindex">
  247. <span>{{ kindinfoitem.projectName }}</span>
  248. <span>{{ kindinfoitem.quantity ? kindinfoitem.quantity : '1' }}</span>
  249. <span>{{ kindinfoitem.actualPremium }}/份</span>
  250. </div>
  251. </div>
  252. </div>
  253. </OpenCloseBox>
  254. <OpenCloseBox id="qsxx" v-if="orderInfo.taxArrears && orderInfo.taxArrears.length > 0">
  255. <span slot="title">欠税信息</span>
  256. <div slot="boby">
  257. <div class="quotation-style tax-arrears">
  258. <b>当年应缴(元)</b>
  259. <b>去年补缴(元)</b>
  260. <b>滞纳金(元)</b>
  261. <b>总计</b>
  262. <div v-for="(taxArrearsitem, taxArrearsindex) in orderInfo.taxArrears" :key="taxArrearsindex">
  263. <span>{{ taxArrearsitem.dayYearTax }}</span>
  264. <span>{{ taxArrearsitem.taxDefault }}</span>
  265. <span>{{ taxArrearsitem.lateFee }}</span>
  266. <span>{{ orderInfo.taxamount }}</span>
  267. </div>
  268. </div>
  269. </div>
  270. </OpenCloseBox>
  271. <OpenCloseBox id="yxzl" v-if="Object.keys(obj).length != 0">
  272. <span slot="title">影像资料</span>
  273. <div slot="boby">
  274. <el-row :gutter="20">
  275. <el-col :span="12">
  276. <h4>行驶证影像</h4>
  277. <viewer :images="obj.carImageList">
  278. <img class="imageStyle" v-for="(imageItem, imageIndex) in obj.carImageList" :src="imageItem"
  279. :key="imageIndex" />
  280. </viewer>
  281. </el-col>
  282. <el-col :span="12">
  283. <div v-if="obj.ownerImageList">
  284. <h4>车主身份证影像</h4>
  285. <viewer :images="obj.ownerImageList">
  286. <img class="imageStyle" v-for="(imageItem, imageIndex) in obj.ownerImageList" :src="imageItem"
  287. :key="imageIndex" />
  288. </viewer>
  289. </div>
  290. <div v-else>
  291. <h4>营业执照</h4>
  292. <img class="imageStyle" style="margin-right: 0;" />
  293. </div>
  294. </el-col>
  295. </el-row>
  296. <el-row :gutter="20">
  297. <el-col :span="12">
  298. <div v-if="obj.policyImageList">
  299. <h4>投保人身份证影像</h4>
  300. <viewer :images="obj.policyImageList">
  301. <img class="imageStyle" v-for="(imageItem, imageIndex) in obj.policyImageList" :src="imageItem"
  302. :key="imageIndex" />
  303. </viewer>
  304. </div>
  305. <div v-else>
  306. <h4>营业执照</h4>
  307. <img class="imageStyle" style="margin-right: 0;" />
  308. </div>
  309. </el-col>
  310. <el-col :span="12">
  311. <div v-if="obj.insuredImageList">
  312. <h4>被保人身份证影像</h4>
  313. <viewer :images="obj.insuredImageList">
  314. <img class="imageStyle" v-for="(imageItem, imageIndex) in obj.insuredImageList" :src="imageItem"
  315. :key="imageIndex" />
  316. </viewer>
  317. </div>
  318. <div v-else>
  319. <h4>营业执照</h4>
  320. <img class="imageStyle" style="margin-right: 0;" />
  321. </div>
  322. </el-col>
  323. </el-row>
  324. <el-row :gutter="20" v-if="obj.carCheckImageList && obj.carCheckImageList.length > 0">
  325. <el-col :span="24">
  326. <h4>验车照影像</h4>
  327. <viewer :images="obj.carCheckImageList">
  328. <img class="imageStyle" v-for="(imageItem, imageIndex) in obj.carCheckImageList" :src="imageItem"
  329. :key="imageIndex" />
  330. </viewer>
  331. </el-col>
  332. </el-row>
  333. </div>
  334. </OpenCloseBox>
  335. <OpenCloseBox id="jgglf"
  336. v-if="isAuditing && isAuditing.feeOrderNewVo && orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.deptManagerFee">
  337. <span slot="title">机构管理费</span>
  338. <div slot="boby" style="font-size:12px;width: 100%" class="FeeEnclosure">
  339. <el-table :data="orderInfo.feeOrderNewVo.deptManagerFee" :border="true" width="100%" :stripe="true"
  340. size="mini" :header-cell-style="{
  341. background: '#F7F7F9',
  342. fontWeight: '700',
  343. color: '#606266',
  344. }">
  345. <el-table-column prop="insuranceType" label="险种"></el-table-column>
  346. <el-table-column prop="deptProportionLevelOne" label="一级管理费比例">
  347. <template slot-scope="scope">
  348. <span v-if="!isAuditing.adjustFeeFlag">{{ scope.row.deptProportionLevelOne }} </span>
  349. <el-input v-else v-model="scope.row.deptProportionLevelOne" size="mini"></el-input>
  350. </template>
  351. </el-table-column>
  352. <el-table-column prop="deptProportionLevelTwo" label="二级管理费比例 ">
  353. <template slot-scope="scope">
  354. <span v-if="!isAuditing.adjustFeeFlag">{{ scope.row.deptProportionLevelTwo }} </span>
  355. <el-input v-else v-model="scope.row.deptProportionLevelTwo" size="mini"></el-input>
  356. </template>
  357. </el-table-column>
  358. <el-table-column prop="deptProportionLevelThree" label="三级管理费比例">
  359. <template slot-scope="scope">
  360. <span v-if="!isAuditing.adjustFeeFlag">{{ scope.row.deptProportionLevelThree }} </span>
  361. <el-input v-else v-model="scope.row.deptProportionLevelThree" size="mini"></el-input>
  362. </template>
  363. </el-table-column>
  364. <el-table-column prop="deptProportionLevelFoure" label="四级管理费比例">
  365. <template slot-scope="scope">
  366. <span v-if="!isAuditing.adjustFeeFlag">{{ scope.row.deptProportionLevelFoure }} </span>
  367. <el-input v-else v-model="scope.row.deptProportionLevelFoure" size="mini"></el-input>
  368. </template>
  369. </el-table-column>
  370. <el-table-column prop="deptProportionLevelFive" label="五级管理费比例">
  371. <template slot-scope="scope">
  372. <span v-if="!isAuditing.adjustFeeFlag">{{ scope.row.deptProportionLevelFive }} </span>
  373. <el-input v-else v-model="scope.row.deptProportionLevelFive" size="mini"></el-input>
  374. </template>
  375. </el-table-column>
  376. <el-table-column prop="deptPremiumsLevelOne" label="一级管理费">
  377. </el-table-column>
  378. <el-table-column prop="deptPremiumsLevelTwo" label="二级管理费">
  379. </el-table-column>
  380. <el-table-column prop="deptPremiumsLevelThree" label="三级管理费">
  381. </el-table-column>
  382. <el-table-column prop="deptPremiumsLevelFoure" label="四级管理费">
  383. </el-table-column>
  384. <el-table-column prop="deptPremiumsLevelFive" label="五级管理费">
  385. </el-table-column>
  386. </el-table>
  387. </div>
  388. </OpenCloseBox>
  389. <OpenCloseBox id="shyj" v-if="orderInfo && orderInfo.orderstatus == 4 && orderInfo.auditopinion">
  390. <span slot="title">审核意见</span>
  391. <div slot="boby">
  392. <p style=" padding: 10px 50px">
  393. {{ orderInfo.auditopinion }}
  394. </p>
  395. </div>
  396. </OpenCloseBox>
  397. <OpenCloseBox id="dzbd" v-if="orderInfo && orderInfo.orderstatus == 3 && !isAuditing">
  398. <span slot="title">保单信息</span>
  399. <div slot="boby">
  400. <el-row class="premium-style " :gutter="20">
  401. <el-col :span="12"><span>交强险投保单号:</span>{{ orderInfo.jqapplyno }}</el-col>
  402. <el-col :span="12"><span>交强险保单号:</span>{{ orderInfo.jqpolicyno }}</el-col>
  403. <el-col v-if="orderInfo.syapplyno" :span="12"><span>商业险投保单号:</span>{{ orderInfo.syapplyno }}</el-col>
  404. <el-col v-if="orderInfo.sypolicyno" :span="12"><span>商业险保单号:</span>{{ orderInfo.sypolicyno }}</el-col>
  405. <el-col :span="12" v-for="(oldfileItem, oldfileIndex) in warrantObj.oldfileList" :key="oldfileIndex">
  406. <span>{{ oldfileItem.fileTitle }} :</span>{{ orderInfo.licenseno }}
  407. <el-button style="margin-left:30px" type="text" @click="viewfile(oldfileItem)">下载
  408. </el-button>
  409. </el-col>
  410. <el-col :span="12" v-for="(val, oldfileIndex) in warrantObj.businessList" :key="oldfileIndex">
  411. <span>{{ val.fileTitle }} :</span>{{ orderInfo.licenseno }}
  412. <el-button style="margin-left:30px" type="text" @click="viewfile(val)">下载
  413. </el-button>
  414. </el-col>
  415. </el-row>
  416. <el-row class="premium-style " :gutter="20">
  417. <el-col :span="12" v-for="(oldfileItem, oldfileIndex) in warrantObj.accidentList" :key="oldfileIndex">
  418. <span>{{ oldfileItem.fileTitle }} :</span>{{ orderInfo.licenseno }}
  419. <el-button style="margin-left:30px" type="text" @click="viewfile(oldfileItem)">下载
  420. </el-button>
  421. </el-col>
  422. </el-row>
  423. </div>
  424. </OpenCloseBox>
  425. <OpenCloseBox id="fymx" v-if="orderInfo.feeOrderNewVo && orderInfo.feeOrderNewVo.exportFee && Feepermissions">
  426. <span slot="title">费用明细<el-button v-if="isTaskPool" type="primary" style="margin-left: 30px;" size="mini" @click="agreementProductCostsSaveFun()">匹配费用信息</el-button></span>
  427. <div slot="boby" style="font-size:12px;width: 100%" class="FeeEnclosure">
  428. <el-table :data="orderInfo.feeOrderNewVo.exportFee" :border="true" width="100%"
  429. :stripe="true" size="mini" :header-cell-style="{
  430. background: '#F7F7F9',
  431. fontWeight: '700',
  432. color: '#606266',
  433. }">
  434. <el-table-column prop="insuranceType" label="险种">
  435. </el-table-column>
  436. <el-table-column prop="otherCostsProportion" label="跟单比例">
  437. <template slot-scope="scope" >
  438. <span v-if="!isAuditing || scope.row.type !== '入口费用'">{{ scope.row.otherCostsProportion }} </span>
  439. <el-input v-else v-model="scope.row.otherCostsProportion" size="mini"></el-input>
  440. </template>
  441. </el-table-column>
  442. <el-table-column prop="superviseCosts" label="手续费比例">
  443. <template slot-scope="scope">
  444. <span v-if="!isAuditing || scope.row.type !== '入口费用'">{{ scope.row.superviseCosts }} </span>
  445. <el-input v-else v-model="scope.row.superviseCosts" size="mini"></el-input>
  446. </template>
  447. </el-table-column>
  448. <el-table-column prop="totalProportion" label="总比例">
  449. <template slot-scope="scope">
  450. <span v-if="!isAuditing || scope.row.type !== '入口费用'">{{ scope.row.totalProportion }} </span>
  451. <el-input v-else v-model="scope.row.totalProportion" size="mini"></el-input>
  452. </template>
  453. </el-table-column>
  454. <el-table-column prop="premium" label="保费"></el-table-column>
  455. <el-table-column prop="otherCostsPremiums" label="跟单费"></el-table-column>
  456. <el-table-column prop="superviseCostsPremiums" label="手续费"></el-table-column>
  457. <el-table-column prop="totalAmount" label="总费用"></el-table-column>
  458. </el-table>
  459. </div>
  460. </OpenCloseBox>
  461. <OpenCloseBox id="fxmx1" v-if=" orderInfo.feeOrderNewVo && orderInfo.distributionLevelVoList && Feepermissions">
  462. <span slot="title">分销明细</span>
  463. <div slot="boby" style="font-size:12px;width: 100%" class="FeeEnclosure">
  464. <el-table :data="orderInfo.distributionLevelVoList" :border="true" width="100%" :stripe="true" size="mini"
  465. :header-cell-style="{
  466. background: '#F7F7F9',
  467. fontWeight: '700',
  468. color: '#606266',
  469. }">
  470. <el-table-column prop="distributionLevel" label="等级"></el-table-column>
  471. <el-table-column prop="userName" label="接收人"></el-table-column>
  472. <el-table-column prop="distributionRatio" label="比例"></el-table-column>
  473. <el-table-column prop="amount" label="金额"></el-table-column>
  474. </el-table>
  475. </div>
  476. </OpenCloseBox>
  477. </div>
  478. </div>
  479. <span slot="footer" class="dialog-footer">
  480. <slot v-if="isAuditing" name="footer1"></slot>
  481. <el-button size="small" type="primary" plain @click="dialogVisible = false">关闭</el-button>
  482. </span>
  483. </el-dialog>
  484. <el-dialog title="产品因子录入" :visible.sync="productCostFactorDialogVisible" :close-on-click-modal="false" width="70%"
  485. top="6vh" :fullscreen="true" @close="productCostFactoropenDialog">
  486. <Product-Cost-Form v-if="productCostFactorDialogVisible" :form="orderInfo.agreementProductCostsSave.costsAttrLinks" :operator="operatorlist"
  487. over-size="small" :disabled="true"
  488. @cancelForm="productCostFactorCancelForm"></Product-Cost-Form>
  489. </el-dialog>
  490. <el-dialog title="产品编辑" v-if="orderInfo.agreementProductCostsSave" :visible.sync="productCostAddVehicleFactorVisible" width="80%" top="6vh"
  491. @close="productcloseDialog">
  492. <el-collapse accordion>
  493. <div class="productstitle flex j-s" style="margin-top: 10px">
  494. <div>
  495. <span v-for="(item, index) in orderInfo.agreementProductCostsSave.productName" :key="index">
  496. {{ item }}-
  497. </span>
  498. <span>费用</span>
  499. </div>
  500. </div>
  501. <el-button class="mrgin-1" size="small" type="warning"
  502. @click="productCostFactorDialogVisible = true">产品费用因子</el-button>
  503. <el-form ref="productCostForm" v-if="orderInfo.agreementProductCostsSave" :model="orderInfo.agreementProductCostsSave" label-width="130px" :size="overSize"
  504. :rules="costformRules">
  505. <el-row>
  506. <el-col :span="20" :offset="2">
  507. <el-form-item label="费用描述">
  508. <el-input type="textarea" v-model="orderInfo.agreementProductCostsSave.costsDescription" placeholder="输入费用描述内容"></el-input>
  509. </el-form-item>
  510. </el-col>
  511. <el-col :span="10" :offset="2">
  512. <el-form-item label="费用起期" prop="costsStartDate">
  513. <el-date-picker style="width: 100%" v-model="orderInfo.agreementProductCostsSave.costsStartDate" type="datetime"
  514. placeholder="选择费用开始日期" value-format="yyyy-MM-dd HH:mm:ss" :picker-options="pickerOptions"
  515. @change="cleanEndDate">
  516. </el-date-picker>
  517. </el-form-item>
  518. </el-col>
  519. <el-col :span="10">
  520. <el-form-item label="费用止期" prop="costsEndDate">
  521. <el-date-picker style="width: 100%" v-model="orderInfo.agreementProductCostsSave.costsEndDate" type="datetime"
  522. placeholder="选择费用结束日期" value-format="yyyy-MM-dd HH:mm:ss" @change="checkStartDate">
  523. </el-date-picker>
  524. </el-form-item>
  525. </el-col>
  526. <el-col :span="10" :offset="2">
  527. <el-form-item label="优先级">
  528. <el-input style="width: 100%" v-model="orderInfo.agreementProductCostsSave.priorityLevel"
  529. onkeyup="value=value.replace(/\D/g,'')" placeholder="输入数字"></el-input>
  530. </el-form-item>
  531. </el-col>
  532. </el-row>
  533. <el-row >
  534. <h4 style="color: tomato">交强险费用</h4>
  535. <el-col :span="5" :offset="1">
  536. <el-form-item label="费用比例" prop="jqCarCostsProportion">
  537. <el-input v-model="orderInfo.agreementProductCostsSave.jqCarCostsProportion"
  538. @blur="costRatioInput('jqCostsProportion', 'jqCarCostsProportion', 'jqCarOtherCostsProportion')"
  539. placeholder="请输入费用比例"></el-input>
  540. </el-form-item>
  541. </el-col>
  542. <el-col :span="5" :offset="1" v-if="permissions">
  543. <el-form-item label="其他费用比例">
  544. <el-input disabled v-model="orderInfo.agreementProductCostsSave.jqCarOtherCostsProportion" placeholder="请输入其他费用比例"></el-input>
  545. </el-form-item>
  546. </el-col>
  547. <el-col :span="5" :offset="1" v-if="permissions">
  548. <el-form-item label="总费用比例" prop="jqCostsProportion">
  549. <el-input v-model="orderInfo.agreementProductCostsSave.jqCostsProportion"
  550. @blur="totalCostRatioInput('jqCostsProportion', 'jqCarCostsProportion', 'jqCarOtherCostsProportion')"
  551. placeholder="请输入总费用比例"></el-input>
  552. </el-form-item>
  553. </el-col>
  554. <el-col :span="5" :offset="1">
  555. <el-form-item label="交强管理比例一级 " prop="jqExportRadioLevel1">
  556. <el-input v-model="orderInfo.agreementProductCostsSave.jqExportRadioLevel1" placeholder="请输入管理费比例"></el-input>
  557. </el-form-item>
  558. </el-col>
  559. <el-col :span="5" :offset="1">
  560. <el-form-item label="交强管理比例二级 " prop="jqExportRadioLevel2">
  561. <el-input v-model="orderInfo.agreementProductCostsSave.jqExportRadioLevel2" placeholder="请输入管理费比例"></el-input>
  562. </el-form-item>
  563. </el-col>
  564. <el-col :span="5" :offset="1">
  565. <el-form-item label="交强管理比例三级 " prop="jqExportRadioLevel3">
  566. <el-input v-model="orderInfo.agreementProductCostsSave.jqExportRadioLevel3" placeholder="请输入管理费比例"></el-input>
  567. </el-form-item>
  568. </el-col>
  569. <el-col :span="5" :offset="1">
  570. <el-form-item label="交强管理比例四级 " prop="jqExportRadioLevel4">
  571. <el-input v-model="orderInfo.agreementProductCostsSave.jqExportRadioLevel4" placeholder="请输入管理费比例"></el-input>
  572. </el-form-item>
  573. </el-col>
  574. <el-col :span="5" :offset="1">
  575. <el-form-item label="交强管理比例五级 " prop="jqExportRadioLevel5">
  576. <el-input v-model="orderInfo.agreementProductCostsSave.jqExportRadioLevel5" placeholder="请输入管理费比例"></el-input>
  577. </el-form-item>
  578. </el-col>
  579. <el-col :span="5" :offset="1">
  580. <el-form-item label="交强出口手续比例" prop="jqCostsExportProportion">
  581. <el-input v-model="orderInfo.agreementProductCostsSave.jqCostsExportProportion" placeholder="请输入出口手续费比例"></el-input>
  582. </el-form-item>
  583. </el-col>
  584. </el-row>
  585. <el-row >
  586. <h4 style="color: tomato">商业险费用</h4>
  587. <el-col :span="5" :offset="1">
  588. <el-form-item label="费用比例" prop="syCarCostsProportion">
  589. <el-input v-model="orderInfo.agreementProductCostsSave.syCarCostsProportion"
  590. @blur="totalCostRatioInput('syCostsProportion', 'syCarCostsProportion', 'syCarOtherCostsProportion')"
  591. placeholder="请输入费用比例"></el-input>
  592. </el-form-item>
  593. </el-col>
  594. <el-col :span="5" :offset="1" v-if="permissions">
  595. <el-form-item label="其他费用比例">
  596. <el-input v-model="orderInfo.agreementProductCostsSave.syCarOtherCostsProportion" placeholder="请输入其他费用比例" disabled></el-input>
  597. </el-form-item>
  598. </el-col>
  599. <el-col :span="5" :offset="1" v-if="permissions">
  600. <el-form-item label="总费用比例" prop="syCostsProportion">
  601. <el-input v-model="orderInfo.agreementProductCostsSave.syCostsProportion" placeholder="请输入总费用比例"
  602. @blur="totalCostRatioInput('syCostsProportion', 'syCarCostsProportion', 'syCarOtherCostsProportion')"></el-input>
  603. </el-form-item>
  604. </el-col>
  605. <el-col :span="5" :offset="1">
  606. <el-form-item label="商业手续比例一级 " prop="syExportRadioLevel1">
  607. <el-input v-model="orderInfo.agreementProductCostsSave.syExportRadioLevel1" placeholder="请输入手续费比例"></el-input>
  608. </el-form-item>
  609. </el-col>
  610. <el-col :span="5" :offset="1">
  611. <el-form-item label="商业手续比例二级 " prop="syExportRadioLevel2">
  612. <el-input v-model="orderInfo.agreementProductCostsSave.syExportRadioLevel2" placeholder="请输入手续费比例"></el-input>
  613. </el-form-item>
  614. </el-col>
  615. <el-col :span="5" :offset="1">
  616. <el-form-item label="商业手续比例三级 " prop="syExportRadioLevel3">
  617. <el-input v-model="orderInfo.agreementProductCostsSave.syExportRadioLevel3" placeholder="请输入手续费比例"></el-input>
  618. </el-form-item>
  619. </el-col>
  620. <el-col :span="5" :offset="1">
  621. <el-form-item label="商业手续比例四级 " prop="syExportRadioLevel4">
  622. <el-input v-model="orderInfo.agreementProductCostsSave.syExportRadioLevel4" placeholder="请输入手续费比例"></el-input>
  623. </el-form-item>
  624. </el-col>
  625. <el-col :span="5" :offset="1">
  626. <el-form-item label="商业手续比例五级 " prop="syExportRadioLevel5">
  627. <el-input v-model="orderInfo.agreementProductCostsSave.syExportRadioLevel5" placeholder="请输入手续费比例"></el-input>
  628. </el-form-item>
  629. </el-col>
  630. <el-col :span="5" :offset="1">
  631. <el-form-item label="商业出口手续比例" prop="syCostsExportProportion">
  632. <el-input v-model="orderInfo.agreementProductCostsSave.syCostsExportProportion" placeholder="请输入出口手续费比例"></el-input>
  633. </el-form-item>
  634. </el-col>
  635. </el-row>
  636. <el-row>
  637. <h4 style="color: tomato">非车费用</h4>
  638. <el-col :span="5" :offset="1">
  639. <el-form-item label="费用比例" prop="noCarCostsProportion">
  640. <el-input v-model="orderInfo.agreementProductCostsSave.noCarCostsProportion"
  641. @blur="totalCostRatioInput('noCostsProportion', 'noCarCostsProportion', 'noCarOtherCostsProportion')"
  642. placeholder="请输入费用比例"></el-input>
  643. </el-form-item>
  644. </el-col>
  645. <el-col :span="5" :offset="1" v-if="permissions">
  646. <el-form-item label="其他费用比例">
  647. <el-input v-model="orderInfo.agreementProductCostsSave.noCarOtherCostsProportion" placeholder="请输入其他费用比例" disabled></el-input>
  648. </el-form-item>
  649. </el-col>
  650. <el-col :span="5" :offset="1" v-if="permissions">
  651. <el-form-item label="总费用比例" prop="noCostsProportion">
  652. <el-input v-model="orderInfo.agreementProductCostsSave.noCostsProportion" placeholder="请输入总费用比例"
  653. @blur="totalCostRatioInput('noCostsProportion', 'noCarCostsProportion', 'noCarOtherCostsProportion')"></el-input>
  654. </el-form-item>
  655. </el-col>
  656. <el-col :span="5" :offset="1">
  657. <el-form-item label="非车手续比例一级 " prop="noCarExportRadioLevel1">
  658. <el-input v-model="orderInfo.agreementProductCostsSave.noCarExportRadioLevel1" placeholder="请输入手续费比例"></el-input>
  659. </el-form-item>
  660. </el-col>
  661. <el-col :span="5" :offset="1">
  662. <el-form-item label="非车手续比例二级 " prop="noCarExportRadioLevel2">
  663. <el-input v-model="orderInfo.agreementProductCostsSave.noCarExportRadioLevel2" placeholder="请输入手续费比例"></el-input>
  664. </el-form-item>
  665. </el-col>
  666. <el-col :span="5" :offset="1">
  667. <el-form-item label="非车手续比例三级 " prop="noCarExportRadioLevel3">
  668. <el-input v-model="orderInfo.agreementProductCostsSave.noCarExportRadioLevel3" placeholder="请输入手续费比例"></el-input>
  669. </el-form-item>
  670. </el-col>
  671. <el-col :span="5" :offset="1">
  672. <el-form-item label="非车手续比例四级 " prop="noCarExportRadioLevel4">
  673. <el-input v-model="orderInfo.agreementProductCostsSave.noCarExportRadioLevel4" placeholder="请输入手续费比例"></el-input>
  674. </el-form-item>
  675. </el-col>
  676. <el-col :span="5" :offset="1">
  677. <el-form-item label="非车手续比例五级 " prop="noCarExportRadioLevel5">
  678. <el-input v-model="orderInfo.agreementProductCostsSave.noCarExportRadioLevel5" placeholder="请输入手续费比例"></el-input>
  679. </el-form-item>
  680. </el-col>
  681. <el-col :span="5" :offset="1">
  682. <el-form-item label="非车出口手续比例" prop="noCostsExportProportion">
  683. <el-input v-model="orderInfo.agreementProductCostsSave.noCostsExportProportion" placeholder="请输入出口手续费比例"></el-input>
  684. </el-form-item>
  685. </el-col>
  686. </el-row>
  687. </el-form>
  688. </el-collapse>
  689. <span slot="footer" class="dialog-footer">
  690. <el-button :size="overSize" @click="productCostAddVehicleFactorVisible = false">取 消</el-button>
  691. </span>
  692. </el-dialog>
  693. </div>
  694. </template>
  695. <script>
  696. import OpenCloseBox from './openclose.vue'
  697. import ProductCostForm from '@/components/Form/ProductCostForm.vue';//表单组件
  698. export default {
  699. name: "detailsDialog",
  700. data() {
  701. return {
  702. dialogVisible: false,
  703. obj: {},
  704. warrantObj: {},
  705. operatorlist: [],
  706. selectedItem: null,
  707. productCostAddVehicleFactorVisible: false, //产品费用录入 显示/隐藏
  708. productCostFactorDialogVisible:false,
  709. permissions: null,
  710. overSize:'small',
  711. costformRules: {
  712. costsStartDate: [
  713. { required: true, message: "请选择费用起期", trigger: "change" },
  714. ],
  715. costsEndDate: [
  716. { required: true, message: "请选择费用止期", trigger: "change" },
  717. ],
  718. jqNewCarCostsProportion: [
  719. { required: true, message: "请输入新车费用比例", trigger: "blur" },
  720. {
  721. pattern: /^([0-4])$/,
  722. message: "请输入0-4的整数",
  723. trigger: "blur",
  724. },
  725. ],
  726. jqOldCarCostsProportion: [
  727. { required: true, message: "请输入旧车费用比例", trigger: "blur" },
  728. {
  729. pattern: /^([0-4])$/,
  730. message: "请输入0-4的整数",
  731. trigger: "blur",
  732. },
  733. ],
  734. jqCostsProportion: [
  735. { required: true, message: "请输入总费用比例", trigger: "blur" },
  736. {
  737. pattern: /^100$|^[1-9]?\d(\.\d+)?$|^0(\.\d+)?$/,
  738. message: "请输入0-100数",
  739. trigger: "blur",
  740. },
  741. ],
  742. syNewCarCostsProportion: [
  743. { required: true, message: "请输入新车费用比例", trigger: "blur" },
  744. {
  745. pattern: /^([0-9]{1,2}|100)$/,
  746. message: "请输入0-100的整数",
  747. trigger: "blur",
  748. },
  749. ],
  750. syOldCarCostsProportion: [
  751. { required: true, message: "请输入旧车费用比例", trigger: "blur" },
  752. {
  753. pattern: /^([0-9]{1,2}|100)$/,
  754. message: "请输入0-100的整数",
  755. trigger: "blur",
  756. },
  757. ],
  758. syCostsProportion: [
  759. { required: true, message: "请输入总费用比例", trigger: "blur" },
  760. {
  761. pattern: /^100$|^[1-9]?\d(\.\d+)?$|^0(\.\d+)?$/,
  762. message: "请输入0-100的数",
  763. trigger: "blur",
  764. },
  765. ],
  766. },
  767. dynamicFormArray: [],
  768. };
  769. },
  770. props: {
  771. orderInfo: {
  772. type: Object,
  773. default: {}
  774. },
  775. Feepermissions:{
  776. type:Boolean,
  777. default:true,
  778. },
  779. isAuditing: {
  780. type: Object,
  781. default: () => { }
  782. },
  783. isTaskPool:{
  784. type:Boolean,
  785. default:false,
  786. },
  787. },
  788. computed: {
  789. pickerOptions() {
  790. return {
  791. disabledDate: this.disabledDate,
  792. };
  793. },
  794. },
  795. created(){
  796. //获取操作符
  797. this.$api.dict.findPage(this.operator).then(res => {
  798. this.operatorlist = res.data.content;
  799. })
  800. this.$api.insCompany.shutdown().then((res) => {
  801. this.permissions = res.data;
  802. });
  803. this.getFactorTemplate();
  804. },
  805. components: { OpenCloseBox,ProductCostForm },
  806. methods: {
  807. getFactorTemplate() {
  808. this.$api.insCompany.productConfigItem().then(res => {
  809. if (res.code == '200') {
  810. let data = res.data;
  811. data.map(ele => {
  812. switch (ele.attrType) {
  813. case 'inputNumber':
  814. ele.operator = '1';
  815. break;
  816. }
  817. if (ele.attrName == '车牌号') {
  818. ele.dictLabal = this.areanumberplateList;
  819. }
  820. })
  821. // this.productCostForm.costsAttrLinks = data;
  822. this.dynamicFormArray = data;
  823. }
  824. })
  825. },
  826. productCostFactorCancelForm(data) {
  827. this.productCostFactorDialogVisible = data;
  828. },
  829. productcloseDialog() {
  830. this.productCostAddVehicleFactorVisible=false
  831. },
  832. agreementProductCostsSaveFun() {
  833. if(this.orderInfo.agreementProductCostsSave){
  834. this.productCostAddVehicleFactorVisible=true
  835. }
  836. else{
  837. this.$message.error('暂无费用信息')
  838. }
  839. },
  840. productCostFactoropenDialog() {
  841. this.productCostFactorDialogVisible =false
  842. },
  843. //改变费用起期时,同步清空对应费用止期,重新填写
  844. cleanEndDate() {
  845. this.orderInfo.agreementProductCostsSave.costsEndDate = null;
  846. },
  847. //改变费用止期时,校验必须先填费用起期
  848. checkStartDate() {
  849. let tempStartDate = this.orderInfo.agreementProductCostsSave.costsAttrLinks.costsStartDate;
  850. let tempEndDate = this.orderInfo.agreementProductCostsSave.costsEndDate;
  851. if (!tempStartDate) {
  852. this.orderInfo.agreementProductCostsSave.costsEndDate = null;
  853. this.$message({
  854. message: "请先选择费用起期!",
  855. type: "error",
  856. });
  857. }
  858. if (!this.validateEndDate(tempStartDate, tempEndDate)) {
  859. this.orderInfo.agreementProductCostsSave.costsEndDate = null;
  860. this.$message({
  861. message: "费用止期不能小于/等于费用起期!",
  862. type: "error",
  863. });
  864. }
  865. },
  866. selectItem(item) {
  867. this.selectedItem = item;
  868. document.getElementById(item).scrollIntoView({ behavior: "smooth" });
  869. },
  870. setBackupVisible: function (backupVisible) {
  871. this.selectedItem = 'cjxx'
  872. this.dialogVisible = backupVisible
  873. },
  874. imageFun(param) {
  875. this.obj = param
  876. },
  877. warrantyFun(param) {
  878. this.warrantObj = param
  879. },
  880. saveAs(blob, filename) {
  881. var link = document.createElement("a");
  882. link.href = window.URL.createObjectURL(blob);
  883. link.target = "_ blank";
  884. link.download = filename;
  885. link.click();
  886. },
  887. //预览文件
  888. viewfile(index) {
  889. let name = index.fileurl.lastIndexOf("/");
  890. fetch(index.fileurl)
  891. .then((response) => response.blob())
  892. .then((blob) => {
  893. this.saveAs(
  894. blob,
  895. index.fileurl.substring(name + 1, index.fileurl.length)
  896. );
  897. })
  898. .catch((error) => { });
  899. },
  900. }
  901. };
  902. </script>
  903. <style lang="scss" scoped>
  904. .details-body {
  905. .tabLeft {
  906. list-style: none;
  907. padding-left: 0;
  908. width: 100px;
  909. li {
  910. height: 40px;
  911. line-height: 40px;
  912. font-size: 14px;
  913. font-weight: 500;
  914. padding-left: 20px;
  915. cursor: pointer;
  916. }
  917. li:hover {
  918. color: var(--themeColor);
  919. }
  920. }
  921. .li-selected {
  922. color: var(--themeColor);
  923. background-color: rgba(212, 36, 38, 0.06);
  924. }
  925. }
  926. .icon-img {
  927. width: 30px;
  928. height: 30px;
  929. vertical-align: bottom
  930. }
  931. .details-title {
  932. font-weight: bold;
  933. font-size: 16px;
  934. }
  935. .quotation-style {
  936. font-size: 0;
  937. b {
  938. background: #F7F7F9;
  939. font-size: 14px;
  940. }
  941. b,
  942. span {
  943. display: inline-block;
  944. box-sizing: border-box;
  945. width: 16.66%;
  946. text-align: center;
  947. line-height: 40px;
  948. border: 1px solid #EEF1F6;
  949. font-size: 14px;
  950. }
  951. }
  952. .premium-style {
  953. div {
  954. padding: 5px 0;
  955. }
  956. span {
  957. color: #868B98;
  958. }
  959. }
  960. .driving-style {
  961. span:first-child {
  962. width: 70%;
  963. }
  964. b:first-child {
  965. width: 70%;
  966. }
  967. b,
  968. span {
  969. width: 15%;
  970. }
  971. }
  972. .tax-arrears {
  973. b,
  974. span {
  975. width: 25%;
  976. }
  977. }
  978. .kind-arrears {
  979. b,
  980. span {
  981. width: 33.33%;
  982. }
  983. }
  984. .imageStyle {
  985. display: inline-block;
  986. width: 120px;
  987. height: 120px;
  988. // box-shadow: #ddd 0px 0px 5px;
  989. margin-right: 86px;
  990. border: 1px dashed #CED4DA;
  991. background: #F7F7F9;
  992. }
  993. .FeeEnclosure {
  994. /deep/ table {
  995. width: 100% !important;
  996. }
  997. /deep/ .cell {
  998. text-align: center;
  999. }
  1000. /deep/ .el-table__empty-block {
  1001. width: 100% !important;
  1002. }
  1003. }
  1004. .products>div {
  1005. margin: 5px;
  1006. }
  1007. .productstitle {
  1008. width: 100%;
  1009. border-bottom: 2px solid #409eff;
  1010. text-align: center;
  1011. }
  1012. .productstitle>div {
  1013. width: 100px;
  1014. height: 26px;
  1015. line-height: 30px;
  1016. background: #409eff;
  1017. color: #fff;
  1018. border-top-right-radius: 15px;
  1019. padding: 2px;
  1020. font-size: 12px;
  1021. }
  1022. .details_style /deep/ .el-dialog__body {
  1023. padding-top: 0;
  1024. border-bottom: 1px solid #EEF1F6;
  1025. background-color: rgb(242, 242, 242);
  1026. padding: 0;
  1027. }
  1028. </style>