TellerStatementTB.vue 51 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107
  1. <template>
  2. <div v-loading.fullscreen.lock="fullscreenLoading">
  3. <transition>
  4. <div class="gotop-index" v-show="btnFlag">
  5. <a href="javascript:;" class="gotop-a" @click="backTop"></a>
  6. </div>
  7. </transition>
  8. <div class="reportsbale-all">
  9. <div class="reportsbale-info">
  10. <div style="display: flex;">
  11. <div class="reportsbale-info-li">
  12. <label>团 号:</label>
  13. <span v-if="this.groupInfo.tourCode!=''">{{groupInfo=={}?'暂无':groupInfo.tourCode==""?'暂无':groupInfo.tourCode}}</span>
  14. </div>
  15. <div class="reportsbale-info-li">
  16. <label>团组名:</label>
  17. <span v-if="this.groupInfo.teamName!=''">{{groupInfo=={}?'暂无':groupInfo.teamName==""?'暂无':groupInfo.teamName}}</span>
  18. </div>
  19. <div class="reportsbale-info-li">
  20. <label>客 户:</label>
  21. <span>{{groupInfo=={}?'暂无':groupInfo.clientName==""?'暂无':groupInfo.clientName}}</span>
  22. </div>
  23. <div class="reportsbale-info-li">
  24. <label>出访国家:</label>
  25. <span>{{groupInfo=={}?'暂无':groupInfo.visitCountry==""?'暂无':groupInfo.visitCountry}}</span>
  26. </div>
  27. <div class="reportsbale-info-li">
  28. <label>起止日期:</label>
  29. <span>{{groupInfo.visitStartDate|filter_time}}~{{groupInfo.visitEndDate|filter_time}}</span>
  30. </div>
  31. <div class="reportsbale-info-li">
  32. <label>天数/人数:</label>
  33. <span>{{groupInfo=={}?'暂无':groupInfo.visitDays+'天/'+groupInfo.visitPNumber+'人'}}</span>
  34. </div>
  35. </div>
  36. <div>
  37. <el-button size="mini" type="primary" @click="goback()">返 回</el-button>
  38. </div>
  39. </div>
  40. <!-- <div v-html="feeTotalStr" class="zctitle"></div> -->
  41. <div class="reportsbale-table">
  42. <div class="reportsbale-table-biaoti">
  43. <div>团组收入</div>
  44. </div>
  45. <div class="reportsbale-table-li">
  46. <el-table
  47. :data="extraCostsViews"
  48. border
  49. style="width: 100%;">
  50. <el-table-column
  51. label="超支费用">
  52. <el-table-column
  53. prop="priceName"
  54. label="费用名称">
  55. </el-table-column>
  56. <el-table-column
  57. prop="paymentCurrency"
  58. label="币种"
  59. width="100">
  60. </el-table-column>
  61. <el-table-column
  62. label="费用金额"
  63. width="100">
  64. <template slot-scope="scope">
  65. {{ scope.row.payMoney.toFixed(2)}}
  66. </template>
  67. </el-table-column>
  68. <el-table-column
  69. label="人民币"
  70. width="100">
  71. <template slot-scope="scope">
  72. {{ scope.row.cnyPrice.toFixed(2)}}
  73. </template>
  74. </el-table-column>
  75. <el-table-column
  76. label="当时汇率"
  77. width="100">
  78. <template slot-scope="scope">
  79. {{ scope.row.dayRate.toFixed(4)}}
  80. </template>
  81. </el-table-column>
  82. <el-table-column
  83. prop="payee"
  84. label="收款方"
  85. width="180">
  86. </el-table-column>
  87. <el-table-column
  88. prop="orbitalPrivateTransfer"
  89. label="费用标识"
  90. width="80">
  91. <template slot-scope="scope">
  92. {{ scope.row.orbitalPrivateTransfer==-1?'未选择':scope.row.orbitalPrivateTransfer==0?'公转':'私转' }}
  93. </template>
  94. </el-table-column>
  95. <el-table-column
  96. prop="payWay"
  97. label="支付方式"
  98. width="80">
  99. </el-table-column>
  100. <el-table-column
  101. prop="cardType"
  102. label="卡类型"
  103. width="80">
  104. <template slot-scope="scope">
  105. {{ scope.row.cardType=='其他'?'—':scope.row.cardType==''?'—':scope.row.cardType }}
  106. </template>
  107. </el-table-column>
  108. <el-table-column
  109. label="状态"
  110. width="80">
  111. <template slot-scope="scope">
  112. {{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':'未付款' }}
  113. </template>
  114. </el-table-column>
  115. <el-table-column
  116. prop="applicant"
  117. label="申请人"
  118. width="80">
  119. </el-table-column>
  120. </el-table-column>
  121. </el-table>
  122. <div v-html="extraCostsStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  123. </div>
  124. <div class="reportsbale-table-biaoti">
  125. <div>团组支出</div>
  126. </div>
  127. <div class="reportsbale-table-li">
  128. <el-table
  129. :data="groupHotelFeeViews"
  130. style="width: 100%"
  131. :row-style="TableRowStyle">
  132. <el-table-column
  133. label="酒店预订费用">
  134. <el-table-column
  135. prop="city"
  136. label="城市">
  137. </el-table-column>
  138. <el-table-column
  139. prop="hotelName"
  140. label="酒店名称">
  141. </el-table-column>
  142. <el-table-column
  143. prop="checkInDate"
  144. label="入住时间"
  145. width="78">
  146. </el-table-column>
  147. <el-table-column
  148. prop="checkOutDate"
  149. label="退房时间"
  150. width="78">
  151. </el-table-column>
  152. <!-- <el-table-column
  153. prop="paymentCurrency"
  154. label="币种"
  155. width="40">
  156. </el-table-column> -->
  157. <el-table-column label="费用">
  158. <el-table-column
  159. label="单间">
  160. <el-table-column
  161. label="单价"
  162. width="60">
  163. <template slot-scope="scope">
  164. {{ scope.row.singleRoomPrice.toFixed(2)}}
  165. </template>
  166. </el-table-column>
  167. <el-table-column
  168. prop="singleRoomCount"
  169. label="数量"
  170. width="35">
  171. </el-table-column>
  172. </el-table-column>
  173. <el-table-column
  174. label="双间">
  175. <el-table-column
  176. prop="doubleRoomPrice"
  177. label="单价"
  178. width="60">
  179. <template slot-scope="scope">
  180. {{ scope.row.doubleRoomPrice.toFixed(2)}}
  181. </template>
  182. </el-table-column>
  183. <el-table-column
  184. prop="doubleRoomCount"
  185. label="数量"
  186. width="35">
  187. </el-table-column>
  188. </el-table-column>
  189. <el-table-column
  190. label="套房">
  191. <el-table-column
  192. prop="suiteRoomPrice"
  193. label="单价"
  194. width="60">
  195. <template slot-scope="scope">
  196. {{ scope.row.suiteRoomPrice.toFixed(2)}}
  197. </template>
  198. </el-table-column>
  199. <el-table-column
  200. prop="suiteRoomCount"
  201. label="数量"
  202. width="35">
  203. </el-table-column>
  204. </el-table-column>
  205. <el-table-column
  206. label="其他房型">
  207. <el-table-column
  208. prop="otherRoomPrice"
  209. label="单价"
  210. width="60">
  211. <template slot-scope="scope">
  212. {{ scope.row.otherRoomPrice.toFixed(2)}}
  213. </template>
  214. </el-table-column>
  215. <el-table-column
  216. prop="otherRoomCount"
  217. label="数量"
  218. width="35">
  219. </el-table-column>
  220. </el-table-column>
  221. <el-table-column
  222. label="金额计算">
  223. <el-table-column
  224. label="总房费"
  225. width="100">
  226. <template slot-scope="scope">
  227. <el-popover
  228. placement="top"
  229. trigger="hover">
  230. <div v-html="scope.row.roomInfoTips"></div>
  231. <span slot="reference">{{ scope.row.roomPrice.toFixed(2)+' '+scope.row.roomPriceCurrency}}</span>
  232. </el-popover>
  233. </template>
  234. </el-table-column>
  235. <el-table-column
  236. label="早餐"
  237. width="100">
  238. <template slot-scope="scope">
  239. <el-popover
  240. placement="top"
  241. trigger="hover">
  242. <div v-html="scope.row.breakfastInfoTips"></div>
  243. <span slot="reference">{{ scope.row.breakfastPrice.toFixed(2)+' '+scope.row.breakfastCurrency}}</span>
  244. </el-popover>
  245. </template>
  246. </el-table-column>
  247. <el-table-column
  248. prop="governmentRent"
  249. label="地税"
  250. width="100">
  251. <template slot-scope="scope">
  252. <el-popover
  253. placement="top"
  254. trigger="hover">
  255. <div v-html="scope.row.governmentRentTips"></div>
  256. <span slot="reference">{{ scope.row.governmentRent.toFixed(2)+' '+scope.row.governmentRentCurrency}}</span>
  257. </el-popover>
  258. </template>
  259. </el-table-column>
  260. <el-table-column
  261. prop="cityTax"
  262. label="城市税"
  263. width="100">
  264. <template slot-scope="scope">
  265. <el-popover
  266. placement="top"
  267. trigger="hover">
  268. <div v-html="scope.row.cityTaxTips"></div>
  269. <span slot="reference">{{ scope.row.cityTax.toFixed(2)+' '+scope.row.cityTaxCurrency}}</span>
  270. </el-popover>
  271. </template>
  272. </el-table-column>
  273. </el-table-column>
  274. <el-table-column label="人民币">
  275. <el-table-column
  276. label="总金额">
  277. <template slot-scope="scope">
  278. {{ scope.row.payMoney.toFixed(2)+' '+scope.row.paymentCurrency}}
  279. </template>
  280. </el-table-column>
  281. <el-table-column
  282. label="状态"
  283. width="50">
  284. <template slot-scope="scope">
  285. <el-popover
  286. placement="top"
  287. trigger="hover">
  288. <div v-html="scope.row.payTips"></div>
  289. <span slot="reference">{{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':scope.row.isPay==2?'其它费用子项未付款':'未付款' }}</span>
  290. </el-popover>
  291. </template>
  292. </el-table-column>
  293. <el-table-column
  294. prop="applicant"
  295. label="申请人"
  296. width="50">
  297. </el-table-column>
  298. </el-table-column>
  299. </el-table-column>
  300. </el-table-column>
  301. </el-table>
  302. <div v-html="groupHotelFeeStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  303. </div>
  304. <div class="reportsbale-table-li">
  305. <el-table
  306. :data="groupCTGGRFeeViews"
  307. border
  308. style="width: 100%;"
  309. :row-style="TableRowStyle">
  310. <el-table-column
  311. label="地接费用">
  312. <el-table-column
  313. prop="area"
  314. label="地区"
  315. width="180">
  316. </el-table-column>
  317. <el-table-column
  318. prop="priceName"
  319. label="费用类型"
  320. width="180">
  321. </el-table-column>
  322. <el-table-column
  323. label="费用金额"
  324. width="100">
  325. <template slot-scope="scope">
  326. {{ scope.row.payMoney.toFixed(2)}}
  327. </template>
  328. </el-table-column>
  329. <el-table-column
  330. prop="paymentCurrency"
  331. label="币种"
  332. width="100">
  333. </el-table-column>
  334. <el-table-column
  335. prop="priceContent"
  336. label="费用明细"
  337. width="100">
  338. </el-table-column>
  339. <el-table-column
  340. label="付款百分比%"
  341. width="100">
  342. <template slot-scope="scope">
  343. {{ scope.row.payPercentage+'%'}}
  344. </template>
  345. </el-table-column>
  346. <el-table-column
  347. label="已付金额"
  348. width="100">
  349. <template slot-scope="scope">
  350. {{ scope.row.amountPaid.toFixed(2)}}
  351. </template>
  352. </el-table-column>
  353. <el-table-column
  354. label="尾款"
  355. width="100">
  356. <template slot-scope="scope">
  357. {{ scope.row.balancePayment.toFixed(2)}}
  358. </template>
  359. </el-table-column>
  360. <el-table-column
  361. prop="payee"
  362. label="收款方">
  363. </el-table-column>
  364. <el-table-column
  365. prop="auditGMDate"
  366. label="付款时间"
  367. width="140">
  368. </el-table-column>
  369. <el-table-column
  370. label="费用标识"
  371. width="80">
  372. <template slot-scope="scope">
  373. {{ scope.row.orbitalPrivateTransfer==-1?'未选择':scope.row.orbitalPrivateTransfer==0?'公转':'私转' }}
  374. </template>
  375. </el-table-column>
  376. <el-table-column
  377. prop="payWay"
  378. label="支付方式"
  379. width="80">
  380. </el-table-column>
  381. <el-table-column
  382. label="状态"
  383. width="80">
  384. <template slot-scope="scope">
  385. {{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':'未付款' }}
  386. </template>
  387. </el-table-column>
  388. <el-table-column
  389. prop="applicant"
  390. label="申请人"
  391. width="80">
  392. </el-table-column>
  393. </el-table-column>
  394. </el-table>
  395. <div v-html="groupCTGGRFeeStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  396. </div>
  397. <div class="reportsbale-table-li">
  398. <el-table
  399. :data="groupAirFeeViews"
  400. border
  401. style="width: 100%;"
  402. :row-style="TableRowStyle">
  403. <el-table-column
  404. label="机票费用">
  405. <el-table-column
  406. prop="flightsCode"
  407. label="航班号"
  408. width="120">
  409. </el-table-column>
  410. <el-table-column
  411. prop="flightsCity"
  412. label="城市A-B"
  413. width="120">
  414. </el-table-column>
  415. <el-table-column
  416. prop="flightsDate"
  417. label="航班日期"
  418. width="80">
  419. </el-table-column>
  420. <el-table-column
  421. prop="flightsTime"
  422. label="航班时间"
  423. width="60">
  424. </el-table-column>
  425. <el-table-column
  426. prop="clientName"
  427. label="客人姓名"
  428. width="200">
  429. </el-table-column>
  430. <el-table-column
  431. prop="payMoneyCurrency"
  432. label="币种"
  433. width="50">
  434. </el-table-column>
  435. <el-table-column
  436. label="机票预订费用"
  437. width="100">
  438. <template slot-scope="scope">
  439. {{ scope.row.payMoney.toFixed(2)}}
  440. </template>
  441. </el-table-column>
  442. <el-table-column
  443. label="人民币费用"
  444. width="100">
  445. <template slot-scope="scope">
  446. {{ scope.row.cnyPrice.toFixed(2)+' 当时汇率('+scope.row.dayRate.toFixed(4)+')'}}
  447. </template>
  448. </el-table-column>
  449. <el-table-column
  450. prop="payee"
  451. label="收款方">
  452. </el-table-column>
  453. <el-table-column
  454. prop="auditGMDate"
  455. label="付款时间"
  456. width="140">
  457. </el-table-column>
  458. <el-table-column
  459. label="费用标识"
  460. width="80">
  461. <template slot-scope="scope">
  462. {{ scope.row.orbitalPrivateTransfer==-1?'未选择':scope.row.orbitalPrivateTransfer==0?'公转':'私转' }}
  463. </template>
  464. </el-table-column>
  465. <el-table-column
  466. prop="payWay"
  467. label="支付方式"
  468. width="80">
  469. </el-table-column>
  470. <el-table-column
  471. prop="cardType"
  472. label="卡类型"
  473. width="80">
  474. <template slot-scope="scope">
  475. {{ scope.row.cardType=='其他'?'—':scope.row.cardType==''?'—':scope.row.cardType }}
  476. </template>
  477. </el-table-column>
  478. <el-table-column
  479. label="状态"
  480. width="80">
  481. <template slot-scope="scope">
  482. {{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':'未付款' }}
  483. </template>
  484. </el-table-column>
  485. <el-table-column
  486. prop="applicant"
  487. label="申请人"
  488. width="80">
  489. </el-table-column>
  490. </el-table-column>
  491. </el-table>
  492. <div v-html="groupAirFeeStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  493. </div>
  494. <div class="reportsbale-table-li">
  495. <el-table
  496. :data="groupVisaFeeViews"
  497. border
  498. style="width: 100%;"
  499. :row-style="TableRowStyle">
  500. <el-table-column
  501. label="签证费用">
  502. <el-table-column
  503. prop="visaClient"
  504. label="签证客户">
  505. </el-table-column>
  506. <el-table-column
  507. prop="payMoneyCurrency"
  508. label="币种"
  509. width="100">
  510. </el-table-column>
  511. <el-table-column
  512. label="签证费用"
  513. width="120">
  514. <template slot-scope="scope">
  515. {{ scope.row.payMoney.toFixed(2)}}
  516. </template>
  517. </el-table-column>
  518. <el-table-column
  519. label="当时汇率"
  520. width="100">
  521. <template slot-scope="scope">
  522. {{ scope.row.dayRate.toFixed(4)}}
  523. </template>
  524. </el-table-column>
  525. <el-table-column
  526. prop="payee"
  527. label="收款方"
  528. width="180">
  529. </el-table-column>
  530. <el-table-column
  531. prop="auditGMDate"
  532. label="付款时间"
  533. width="140">
  534. </el-table-column>
  535. <el-table-column
  536. label="费用标识"
  537. width="80">
  538. <template slot-scope="scope">
  539. {{ scope.row.orbitalPrivateTransfer==-1?'未选择':scope.row.orbitalPrivateTransfer==0?'公转':'私转' }}
  540. </template>
  541. </el-table-column>
  542. <el-table-column
  543. prop="payWay"
  544. label="支付方式"
  545. width="80">
  546. </el-table-column>
  547. <el-table-column
  548. prop="cardType"
  549. label="卡类型"
  550. width="80">
  551. <template slot-scope="scope">
  552. {{ scope.row.cardType=='其他'?'—':scope.row.cardType==''?'—':scope.row.cardType }}
  553. </template>
  554. </el-table-column>
  555. <el-table-column
  556. label="状态"
  557. width="80">
  558. <template slot-scope="scope">
  559. {{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':'未付款' }}
  560. </template>
  561. </el-table-column>
  562. <el-table-column
  563. prop="applicant"
  564. label="申请人"
  565. width="80">
  566. </el-table-column>
  567. </el-table-column>
  568. </el-table>
  569. <div v-html="groupVisaFeeStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  570. </div>
  571. <div class="reportsbale-table-li">
  572. <el-table
  573. :data="groupInvitationalFeeViews"
  574. border
  575. style="width: 100%;"
  576. :row-style="TableRowStyle">
  577. <el-table-column
  578. label="邀请/公务活动费用">
  579. <el-table-column
  580. prop="inviterArea"
  581. label="邀请方地区">
  582. </el-table-column>
  583. <el-table-column
  584. prop="inviter"
  585. label="邀请方"
  586. width="100">
  587. </el-table-column>
  588. <el-table-column
  589. prop="inviteTime"
  590. label="邀请时间"
  591. width="80">
  592. </el-table-column>
  593. <el-table-column
  594. label="邀请函费用"
  595. width="120">
  596. <template slot-scope="scope">
  597. {{ scope.row.inviteCost.toFixed(2)}}
  598. </template>
  599. </el-table-column>
  600. <el-table-column
  601. label="快递费用"
  602. width="120">
  603. <template slot-scope="scope">
  604. {{ scope.row.sendCost.toFixed(2)}}
  605. </template>
  606. </el-table-column>
  607. <el-table-column
  608. label="活动费用"
  609. width="120">
  610. <template slot-scope="scope">
  611. {{ scope.row.eventsCost.toFixed(2)}}
  612. </template>
  613. </el-table-column>
  614. <el-table-column
  615. label="翻译费用"
  616. width="120">
  617. <template slot-scope="scope">
  618. {{ scope.row.translateCost.toFixed(2)}}
  619. </template>
  620. </el-table-column>
  621. <el-table-column
  622. label="人民币"
  623. width="120">
  624. <template slot-scope="scope">
  625. {{ scope.row.cnyPrice.toFixed(2)}}
  626. </template>
  627. </el-table-column>
  628. <el-table-column
  629. label="当时汇率"
  630. width="80">
  631. <template slot-scope="scope">
  632. {{ scope.row.currencyRateStr}}
  633. </template>
  634. </el-table-column>
  635. <el-table-column
  636. prop="payee"
  637. label="收款方"
  638. width="120">
  639. </el-table-column>
  640. <el-table-column
  641. prop="auditGMDate"
  642. label="付款时间"
  643. width="140">
  644. </el-table-column>
  645. <el-table-column
  646. label="费用标识"
  647. width="80">
  648. <template slot-scope="scope">
  649. {{ scope.row.orbitalPrivateTransfer==-1?'未选择':scope.row.orbitalPrivateTransfer==0?'公转':'私转' }}
  650. </template>
  651. </el-table-column>
  652. <el-table-column
  653. prop="payWay"
  654. label="支付方式"
  655. width="80">
  656. </el-table-column>
  657. <el-table-column
  658. label="状态"
  659. width="80">
  660. <template slot-scope="scope">
  661. {{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':'未付款' }}
  662. </template>
  663. </el-table-column>
  664. <el-table-column
  665. prop="applicant"
  666. label="申请人"
  667. width="80">
  668. </el-table-column>
  669. </el-table-column>
  670. </el-table>
  671. <div v-html="groupInvitationalFeeStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  672. </div>
  673. <div class="reportsbale-table-li">
  674. <el-table
  675. :data="groupInsuranceFeeViews"
  676. border
  677. style="width: 100%;"
  678. :row-style="TableRowStyle">
  679. <el-table-column
  680. label="保险费用">
  681. <el-table-column
  682. prop="clientName"
  683. label="客户姓名">
  684. </el-table-column>
  685. <el-table-column
  686. prop="payMoneyCurrency"
  687. label="币种"
  688. width="100">
  689. </el-table-column>
  690. <el-table-column
  691. label="保险费用"
  692. width="120">
  693. <template slot-scope="scope">
  694. {{ scope.row.payMoney.toFixed(2)}}
  695. </template>
  696. </el-table-column>
  697. <el-table-column
  698. prop="payee"
  699. label="收款方"
  700. width="200">
  701. </el-table-column>
  702. <el-table-column
  703. prop="auditGMDate"
  704. label="付款时间"
  705. width="140">
  706. </el-table-column>
  707. <el-table-column
  708. label="费用标识"
  709. width="80">
  710. <template slot-scope="scope">
  711. {{ scope.row.orbitalPrivateTransfer==-1?'未选择':scope.row.orbitalPrivateTransfer==0?'公转':'私转' }}
  712. </template>
  713. </el-table-column>
  714. <el-table-column
  715. prop="payWay"
  716. label="支付方式"
  717. width="80">
  718. </el-table-column>
  719. <el-table-column
  720. label="状态"
  721. width="80">
  722. <template slot-scope="scope">
  723. {{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':'未付款' }}
  724. </template>
  725. </el-table-column>
  726. <el-table-column
  727. prop="applicant"
  728. label="申请人"
  729. width="80">
  730. </el-table-column>
  731. </el-table-column>
  732. </el-table>
  733. <div v-html="groupInsuranceFeeStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  734. </div>
  735. <div class="reportsbale-table-li">
  736. <el-table
  737. :data="groupDecreaseFeeViews"
  738. border
  739. style="width: 100%;"
  740. :row-style="TableRowStyle">
  741. <el-table-column
  742. label="其他款项费用">
  743. <el-table-column
  744. prop="priceName"
  745. label="费用名称">
  746. </el-table-column>
  747. <el-table-column
  748. prop="payMoneyCurrency"
  749. label="币种"
  750. width="100">
  751. </el-table-column>
  752. <el-table-column
  753. label="费用金额"
  754. width="120">
  755. <template slot-scope="scope">
  756. {{ scope.row.payMoney.toFixed(2)}}
  757. </template>
  758. </el-table-column>
  759. <el-table-column
  760. label="人民币"
  761. width="120">
  762. <template slot-scope="scope">
  763. {{ scope.row.cnyPrice.toFixed(2)}}
  764. </template>
  765. </el-table-column>
  766. <el-table-column
  767. label="当时汇率"
  768. width="120">
  769. <template slot-scope="scope">
  770. {{ scope.row.dayRate.toFixed(4)}}
  771. </template>
  772. </el-table-column>
  773. <el-table-column
  774. prop="payee"
  775. label="收款方"
  776. width="200">
  777. </el-table-column>
  778. <el-table-column
  779. prop="auditGMDate"
  780. label="付款时间"
  781. width="140">
  782. </el-table-column>
  783. <el-table-column
  784. label="费用标识"
  785. width="80">
  786. <template slot-scope="scope">
  787. {{ scope.row.orbitalPrivateTransfer==-1?'未选择':scope.row.orbitalPrivateTransfer==0?'公转':'私转' }}
  788. </template>
  789. </el-table-column>
  790. <el-table-column
  791. prop="payWay"
  792. label="支付方式"
  793. width="80">
  794. </el-table-column>
  795. <el-table-column
  796. label="状态"
  797. width="80">
  798. <template slot-scope="scope">
  799. {{ scope.row.isPay==-1?'未选择':scope.row.isPay==1?'已付款':'未付款' }}
  800. </template>
  801. </el-table-column>
  802. <el-table-column
  803. prop="applicant"
  804. label="申请人"
  805. width="80">
  806. </el-table-column>
  807. </el-table-column>
  808. </el-table>
  809. <div v-html="groupDecreaseFeeStr.split(/\\r\\n/g).join('<br/>')" class="reportsbale-table-text"></div>
  810. </div>
  811. </div>
  812. </div>
  813. </div>
  814. </template>
  815. <script>
  816. export default {
  817. beforeRouteLeave(to, from, next) {
  818. if(to.name!='TellerStatement'){
  819. localStorage.removeItem('tzbbval');
  820. }
  821. next()
  822. },
  823. data () {
  824. return {
  825. groupInfo:{},
  826. diid:'',
  827. pageId:0,
  828. userid:'',
  829. token:'',
  830. receivables:[],//应收报表
  831. proceedsReceivedViews:[],//已收报表
  832. proceedsReceivedStr:'',//已收报表已收款合计
  833. extraCostsViews:[],//超支费用
  834. extraCostsStr:'',//超支费用 Str
  835. paymentRefundAndOtherMoneyViews:[],// 收款退还Items
  836. paymentRefundAndOtherMoneyStr:'',// 收款退还 Str
  837. groupIncomeStr:'',// 剩余尾款
  838. groupHotelFeeViews:[],//酒店预订费用 Items
  839. groupHotelFeeStr:'',//酒店预订费用 Str
  840. groupCTGGRFeeViews:[],//地接费用 Items
  841. groupCTGGRFeeStr:'',//地接费用 Str
  842. groupAirFeeViews:[],//机票费用 Items
  843. groupAirFeeStr:'',//机票费用 Str
  844. groupVisaFeeViews:[],//签证费用 Items
  845. groupVisaFeeStr:'',//签证费用 Str
  846. groupInvitationalFeeViews:[],//邀请费用 Items
  847. groupInvitationalFeeStr:'',//邀请费用 Str
  848. groupInsuranceFeeViews:[],//保险费用 Items
  849. groupInsuranceFeeStr:'',//保险费用 Str
  850. groupDecreaseFeeViews:[],//其他款项费用 Items
  851. groupDecreaseFeeStr:'',//其他款项费用 Str
  852. feeTotalStr:'',
  853. btnFlag: false,
  854. scrollTop:0,
  855. fullscreenLoading:false
  856. }
  857. },
  858. methods:{
  859. //获取团组详情
  860. PostShareGroupInfo(){
  861. var url = "/api/Business/PostShareGroupInfo"
  862. var that = this
  863. this.$axios({
  864. method: 'post',
  865. url: url,
  866. headers: {
  867. Authorization: 'Bearer ' + that.userid
  868. },
  869. data:{
  870. portType:1,
  871. id: that.diid
  872. }
  873. }).then(function (res) {
  874. console.log(res)
  875. if(res.data.code==200){
  876. that.groupInfo=res.data.data;
  877. that.PostGroupStatementDetails();
  878. }else{
  879. that.$message.error(res.data.msg);
  880. }
  881. }).catch(function (error) {
  882. that.$message.error("获取数据源失败!");
  883. });
  884. },
  885. //获取报表详情
  886. PostGroupStatementDetails(){
  887. this.fullscreenLoading=true;
  888. var url = "/api/Statistics/PostGroupStatementDetails"
  889. var that = this
  890. this.$axios({
  891. method: 'post',
  892. url: url,
  893. headers: {
  894. Authorization: 'Bearer ' + that.token
  895. },
  896. data:{
  897. portType:1,
  898. userId: that.userid,
  899. pageId: that.pageId,
  900. diId: that.diid,
  901. isAudit:false,
  902. }
  903. }).then(function (res) {
  904. var resinif=res.data.data
  905. if(res.data.code==200){
  906. that.feeTotalStr=resinif.feeTotalStr;
  907. that.groupHotelFeeViews=resinif.groupExpenditure.groupHotelFeeViews;
  908. that.groupHotelFeeStr=resinif.groupExpenditure.groupHotelFeeStr;
  909. that.receivables=resinif.groupIncome.receivables;
  910. that.proceedsReceivedViews=resinif.groupIncome.proceedsReceivedViews;
  911. that.proceedsReceivedStr=resinif.groupIncome.proceedsReceivedStr;
  912. that.extraCostsViews=resinif.groupIncome.extraCostsViews;
  913. that.extraCostsStr=resinif.groupIncome.extraCostsStr;
  914. that.paymentRefundAndOtherMoneyViews=resinif.groupIncome.paymentRefundAndOtherMoneyViews;
  915. that.paymentRefundAndOtherMoneyStr=resinif.groupIncome.paymentRefundAndOtherMoneyStr;
  916. that.groupIncomeStr=resinif.groupIncomeStr;
  917. that.groupCTGGRFeeViews=resinif.groupExpenditure.groupCTGGRFeeViews;
  918. that.groupCTGGRFeeStr=resinif.groupExpenditure.groupCTGGRFeeStr;
  919. that.groupAirFeeViews=resinif.groupExpenditure.groupAirFeeViews;
  920. that.groupAirFeeStr=resinif.groupExpenditure.groupAirFeeStr;
  921. that.groupVisaFeeViews=resinif.groupExpenditure.groupVisaFeeViews;
  922. that.groupVisaFeeStr=resinif.groupExpenditure.groupVisaFeeStr;
  923. that.groupInvitationalFeeViews=resinif.groupExpenditure.groupInvitationalFeeViews;
  924. that.groupInvitationalFeeStr=resinif.groupExpenditure.groupInvitationalFeeStr;
  925. that.groupInsuranceFeeViews=resinif.groupExpenditure.groupInsuranceFeeViews;
  926. that.groupInsuranceFeeStr=resinif.groupExpenditure.groupInsuranceFeeStr;
  927. that.groupDecreaseFeeViews=resinif.groupExpenditure.groupDecreaseFeeViews;
  928. that.groupDecreaseFeeStr=resinif.groupExpenditure.groupDecreaseFeeStr;
  929. that.fullscreenLoading=false;
  930. }else{
  931. that.$message.error(res.data.msg);
  932. that.fullscreenLoading=false;
  933. }
  934. }).catch(function (error) {
  935. that.$message.error("获取详情失败!");
  936. that.fullscreenLoading=false;
  937. });
  938. },
  939. backTop() {
  940. const that = this;
  941. let timer = setInterval(() => {
  942. let ispeed = Math.floor(-that.scrollTop / 5);
  943. document.documentElement.scrollTop = document.body.scrollTop =
  944. that.scrollTop + ispeed;
  945. if (that.scrollTop === 0) {
  946. clearInterval(timer);
  947. }
  948. }, 16);
  949. },
  950. TableRowStyle({ row, rowIndex }) {
  951. // 注意,这里返回的是一个对象
  952. let rowBackground = {};
  953. if (row.isPay==1) {
  954. rowBackground.background = "#f0f9ff";
  955. return rowBackground;
  956. }else{
  957. rowBackground.background = "#FFFFFF";
  958. return rowBackground;
  959. }
  960. },
  961. // 为了计算距离顶部的高度,当高度大于60显示回顶部图标,小于60则隐藏
  962. scrollToTop() {
  963. console.log(123);
  964. const that = this;
  965. let scrollTop =
  966. window.pageYOffset ||
  967. document.documentElement.scrollTop ||
  968. document.body.scrollTop;
  969. that.scrollTop = scrollTop;
  970. if (that.scrollTop > 30) {
  971. that.btnFlag = true;
  972. } else {
  973. that.btnFlag = false;
  974. }
  975. },
  976. },
  977. filters:{
  978. filter_time(value){
  979. if(value){
  980. return value.split(' ')[0];
  981. }
  982. return value
  983. },
  984. filter_city(value){
  985. return value
  986. },
  987. title_zc(value){
  988. var a='\\t'
  989. var b='&nbsp;'
  990. return value.replace(/\\t/g," ")
  991. },
  992. title_br(value){
  993. console.log(value)
  994. return value.split(/\\r\\n/g).join('<br/>')
  995. }
  996. },
  997. mounted(){
  998. this.diid = Number(this.$route.query.id);
  999. this.token=JSON.parse(localStorage.getItem('userinif')).token;
  1000. this.pageId=Number(localStorage.getItem('indexs').split('-')[1]);//页面id
  1001. this.userid=JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
  1002. this.PostShareGroupInfo();
  1003. window.addEventListener("scroll", this.scrollToTop, true);
  1004. },
  1005. destroyed() {
  1006. window.removeEventListener("scroll", this.scrollToTop, true);
  1007. },
  1008. }
  1009. </script>
  1010. <style>
  1011. .reportsbale-all{
  1012. background-color: #fff;
  1013. padding: 10px;
  1014. box-shadow: 0 0 5px #0005;
  1015. border-radius: 10px;
  1016. height: 100%;
  1017. min-height: 840px;
  1018. }
  1019. .reportsbale-info{
  1020. display: flex;
  1021. justify-content: space-between;
  1022. margin-top: 10px;
  1023. margin-bottom: 2px;
  1024. }
  1025. .reportsbale-info-li{
  1026. margin-right: 30px;
  1027. }
  1028. .reportsbale-info-li label{
  1029. color: #606266;
  1030. font-size: 15px;
  1031. font-weight: 600;
  1032. }
  1033. .reportsbale-info-li span{
  1034. color: #606266;
  1035. font-size: 14px;
  1036. }
  1037. .reportsbale-table .el-table{
  1038. font-size: 12px;
  1039. }
  1040. .reportsbale-table .el-table .cell{
  1041. padding-right:5px ;
  1042. padding-left: 5px;
  1043. }
  1044. .reportsbale-table .el-table th.el-table__cell>.cell{
  1045. padding-right:5px ;
  1046. padding-left: 5px;
  1047. }
  1048. .reportsbale-table .el-table .el-table__cell{
  1049. padding: 5px 0;
  1050. text-align: center;
  1051. }
  1052. .reportsbale-table .label{
  1053. font-size: 17px;
  1054. font-weight: 600;
  1055. }
  1056. .zctitle{
  1057. color: #606266;
  1058. font-size: 15px;
  1059. font-weight: 600;
  1060. margin-bottom: 10px;
  1061. }
  1062. .reportsbale-table-li{
  1063. margin-bottom: 50px;
  1064. }
  1065. .reportsbale-table-text{
  1066. font-size: 12px;
  1067. font-weight: 600;
  1068. color: #606266;
  1069. }
  1070. .reportsbale-table-biaoti{
  1071. font-size: 22px;
  1072. text-align: center;
  1073. font-weight:600 ;
  1074. color: #606266;
  1075. margin-bottom: 10px;
  1076. }
  1077. /*返回顶部*/
  1078. .gotop-index {
  1079. position: fixed;
  1080. right: 0.6rem;
  1081. bottom: 1.6rem;
  1082. display: block;
  1083. width: 0.8rem;
  1084. height: 0.8rem;
  1085. background: #fff;
  1086. box-shadow: 0px 0px 4px #ff0000;
  1087. display: flex;
  1088. border-radius: 50%;
  1089. z-index: 999;
  1090. }
  1091. .gotop-a {
  1092. display: block;
  1093. width: 0.5rem;
  1094. height: 0.5rem;
  1095. background: url(../../assets/logo.png) no-repeat 0 0;
  1096. background-size: 0.5rem;
  1097. margin: auto;
  1098. }
  1099. </style>