EntryDetails.vue 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747
  1. <template>
  2. <div>
  3. <div class="Entry-all">
  4. <div class="Entry-head">
  5. <div class="Entry-head-li">
  6. <label>团组名称:</label>
  7. <el-select v-model="value" filterable placeholder="请选择">
  8. <el-option
  9. v-for="item in options"
  10. :key="item.id"
  11. :label="item.groupName"
  12. :value="item.id">
  13. </el-option>
  14. </el-select>
  15. </div>
  16. <div class="Entry-head-li">
  17. <el-button type="primary">计算费用</el-button>
  18. <el-button type="primary">全部清空</el-button>
  19. <el-button type="primary">保存</el-button>
  20. <el-button type="primary">导出所选明细表</el-button>
  21. <el-button type="primary">导出下拉所选表格</el-button>
  22. </div>
  23. </div>
  24. <div class="Entry-form">
  25. <div class="Entry-form-li">
  26. <div class="Entry-li-lable">
  27. <div class="li-lable">一、境内费用(其他费用)</div>
  28. <div class="li-lable">
  29. <span class="redzhu">(注:填好数值鼠标点击其他区域计算合计)</span>
  30. <label>合计:</label>
  31. <div class="sub-boxs">{{DomesticFees.total=(DomesticFees.visafees+DomesticFees.vaccinefees+DomesticFees.nucleicfees+DomesticFees.serviceCharge+DomesticFees.insurance+DomesticFees.ticketsExhibitionL)|numFilter}}</div>
  32. <span>元/人</span>
  33. </div>
  34. </div>
  35. <div class="Entry-li-inif">
  36. <div class="Entry-inif-box">
  37. <label>签证费:</label>
  38. <el-input-number size="mini" :controls="false" :precision="2" v-model="DomesticFees.visafees"></el-input-number>
  39. <span>元/人</span>
  40. </div>
  41. <div class="Entry-inif-box">
  42. <label>签证费用描述:</label>
  43. <el-input style="width:250px" size="mini" v-model="DomesticFees.visafeesDescription"></el-input>
  44. <span class="redzhu">* 例:日本:200元/人;加拿大:767.5元/人;</span>
  45. </div>
  46. </div>
  47. <div class="Entry-li-inif">
  48. <div class="Entry-inif-box">
  49. <label>疫苗费:</label>
  50. <el-input-number size="mini" :controls="false" :precision="2" v-model="DomesticFees.vaccinefees"></el-input-number>
  51. <span>元/人</span>
  52. </div>
  53. <div class="Entry-inif-box">
  54. <label>核酸检测费:</label>
  55. <el-input-number size="mini" :controls="false" :precision="2" v-model="DomesticFees.nucleicfees"></el-input-number>
  56. <span>元/人;</span>
  57. </div>
  58. <div class="Entry-inif-box">
  59. <label> 服务费:</label>
  60. <el-input-number size="mini" :controls="false" :precision="2" v-model="DomesticFees.serviceCharge"></el-input-number>
  61. <span>元/人;</span>
  62. </div>
  63. </div>
  64. <div class="Entry-li-inif">
  65. <div class="Entry-inif-box">
  66. <label>保险费:</label>
  67. <el-input-number size="mini" :controls="false" :precision="2" v-model="DomesticFees.insurance"></el-input-number>
  68. <span>元/人</span>
  69. </div>
  70. <div class="Entry-inif-box">
  71. <label>参展门票:</label>
  72. <el-input-number size="mini" :controls="false" :precision="2" v-model="DomesticFees.ticketsExhibitionL"></el-input-number>
  73. <span>元/人;</span>
  74. </div>
  75. </div>
  76. </div>
  77. <div class="Entry-form-li">
  78. <div class="Entry-li-lable">
  79. <div class="li-lable">二、国际旅费合计:</div>
  80. <div style="display: flex;">
  81. <div class="li-lable">
  82. <label>(经济舱)</label>
  83. <div class="sub-boxs">{{TotalExpenses.EconomyClasstotal=(TotalExpenses.EconomyClass+TotalExpenses.TravellingExpenses)|numFilter}}</div>
  84. <span>元/人</span>
  85. </div>
  86. &nbsp;&nbsp;
  87. <div class="li-lable">
  88. <label>(公务舱)</label>
  89. <div class="sub-boxs">{{TotalExpenses.EconomyClasstotal=(TotalExpenses.BusinessClass+TotalExpenses.TravellingExpenses)|numFilter}}</div>
  90. <span>元/人</span>
  91. </div>
  92. </div>
  93. </div>
  94. <div class="Entry-li-inif">
  95. <label>国际机票:&nbsp; &nbsp; &nbsp; </label>
  96. <div class="Entry-inif-box">
  97. <label>(经济舱):</label>
  98. <el-input-number size="mini" :controls="false" :precision="2" v-model="TotalExpenses.EconomyClass"></el-input-number>
  99. <span>元/人</span>
  100. </div>
  101. <div class="Entry-inif-box">
  102. <label>(公务舱):</label>
  103. <el-input-number size="mini" :controls="false" :precision="2" v-model="TotalExpenses.BusinessClass"></el-input-number>
  104. <span>元/人;</span>
  105. </div>
  106. </div>
  107. <div class="Entry-li-inif">
  108. <div class="Entry-inif-box">
  109. <label>城市区间交通费:</label>
  110. <el-input-number size="mini" :controls="false" :precision="2" v-model="TotalExpenses.TravellingExpenses"></el-input-number>
  111. <span>元/人;</span>
  112. </div>
  113. </div>
  114. <div class="Entry-li-inif">
  115. <div v-for="(item,index) in currencys" :key="index" class="Entry-inif-box">
  116. <label>{{item.currencyName}}汇率:</label>
  117. <el-input-number size="mini" :controls="false" :precision="2" v-model="item.rate"></el-input-number>
  118. </div>
  119. </div>
  120. </div>
  121. <div class="Entry-form-li">
  122. <div class="Entry-li-lable">
  123. <div class="li-lable">三、住宿费:</div>
  124. <div style="display: flex;">
  125. <div class="li-lable">
  126. <label>合计:</label>
  127. <div class="sub-boxs">{{TotalExpenses.EconomyClasstotal=(TotalExpenses.EconomyClass+TotalExpenses.TravellingExpenses)|numFilter}}</div>
  128. <span>元/人</span>
  129. </div>
  130. </div>
  131. </div>
  132. <div class="Entry-li-inif">
  133. <el-table
  134. :data="quarterageData"
  135. border
  136. style="width: 100%">
  137. <el-table-column
  138. prop="days"
  139. label="第几晚"
  140. width="180">
  141. <template slot-scope="scope">
  142. <el-input-number size="mini" :controls="false" v-model="scope.row.days"></el-input-number>
  143. </template>
  144. </el-table-column>
  145. <el-table-column
  146. style="position: relative;"
  147. prop="city"
  148. label="城 市"
  149. width="180">
  150. <template slot-scope="scope">
  151. <el-input size="mini" v-model="scope.row.city"></el-input>
  152. </template>
  153. <!-- <template slot-scope="scope">
  154. <el-select size="mini" v-model="scope.row.place" filterable placeholder="请选择">
  155. <el-option
  156. v-for="item in placeinif"
  157. :key="item.id"
  158. :label="item.city=='所有城市'?item.country:item.city"
  159. :value="item.city=='所有城市'?item.country:item.city"
  160. >
  161. <span style="float: left">{{item.city}}</span>
  162. <span style="float: right; color: #8492a6; font-size: 13px">{{item.country}}</span>
  163. </el-option>
  164. </el-select>
  165. </template> -->
  166. </el-table-column>
  167. <el-table-column
  168. prop="cost"
  169. label=" 费用标准"
  170. width="180">
  171. <template slot-scope="scope">
  172. <el-input-number size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
  173. </template>
  174. </el-table-column>
  175. <el-table-column
  176. prop="currencyName"
  177. label=" 币 种"
  178. width="180">
  179. <template slot-scope="scope">
  180. <el-input size="mini" v-model="scope.row.currencyName"></el-input>
  181. </template>
  182. </el-table-column>
  183. <el-table-column
  184. prop="subTotal"
  185. label="费用小计"
  186. width="180">
  187. <template slot-scope="scope">
  188. <div class="sub-boxs">{{scope.row.subTotal|numFilter}}</div>
  189. </template>
  190. </el-table-column>
  191. <el-table-column
  192. prop="address"
  193. label="操 作">
  194. </el-table-column>
  195. </el-table>
  196. </div>
  197. </div>
  198. <div class="Entry-form-li">
  199. <div class="Entry-li-lable">
  200. <div class="li-lable">四、伙食费:</div>
  201. <div style="display: flex;">
  202. <div class="li-lable">
  203. <label>合计:</label>
  204. <div class="sub-boxs">{{TotalExpenses.EconomyClasstotal=(TotalExpenses.EconomyClass+TotalExpenses.TravellingExpenses)|numFilter}}</div>
  205. <span>元/人</span>
  206. </div>
  207. </div>
  208. </div>
  209. <div class="Entry-li-inif">
  210. <el-table
  211. :data="boardWagesData"
  212. border
  213. style="width: 100%">
  214. <el-table-column
  215. prop="days"
  216. label="第几晚"
  217. width="180">
  218. <template slot-scope="scope">
  219. <el-input-number size="mini" :controls="false" v-model="scope.row.days"></el-input-number>
  220. </template>
  221. </el-table-column>
  222. <el-table-column
  223. style="position: relative;"
  224. prop="city"
  225. label="城 市"
  226. width="180">
  227. <template slot-scope="scope">
  228. <el-input size="mini" v-model="scope.row.city"></el-input>
  229. </template>
  230. <!-- <template slot-scope="scope">
  231. <el-select size="mini" v-model="scope.row.place" filterable placeholder="请选择">
  232. <el-option
  233. v-for="item in placeinif"
  234. :key="item.id"
  235. :label="item.city=='所有城市'?item.country:item.city"
  236. :value="item.city=='所有城市'?item.country:item.city"
  237. >
  238. <span style="float: left">{{item.city}}</span>
  239. <span style="float: right; color: #8492a6; font-size: 13px">{{item.country}}</span>
  240. </el-option>
  241. </el-select>
  242. </template> -->
  243. </el-table-column>
  244. <el-table-column
  245. prop="cost"
  246. label=" 费用标准"
  247. width="180">
  248. <template slot-scope="scope">
  249. <el-input-number size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
  250. </template>
  251. </el-table-column>
  252. <el-table-column
  253. prop="currencyName"
  254. label=" 币 种"
  255. width="180">
  256. <template slot-scope="scope">
  257. <el-input size="mini" v-model="scope.row.currencyName"></el-input>
  258. </template>
  259. </el-table-column>
  260. <el-table-column
  261. prop="subTotal"
  262. label="费用小计"
  263. width="180">
  264. <template slot-scope="scope">
  265. <div class="sub-boxs">{{scope.row.subTotal|numFilter}}</div>
  266. </template>
  267. </el-table-column>
  268. <el-table-column
  269. prop="address"
  270. label="操 作">
  271. </el-table-column>
  272. </el-table>
  273. </div>
  274. </div>
  275. <div class="Entry-form-li">
  276. <div class="Entry-li-lable">
  277. <div class="li-lable">五、公杂费:</div>
  278. <div style="display: flex;">
  279. <div class="li-lable">
  280. <label>合计:</label>
  281. <div class="sub-boxs">{{TotalExpenses.EconomyClasstotal=(TotalExpenses.EconomyClass+TotalExpenses.TravellingExpenses)|numFilter}}</div>
  282. <span>元/人</span>
  283. </div>
  284. </div>
  285. </div>
  286. <div class="Entry-li-inif">
  287. <el-table
  288. :data="miscellaneousFeeData"
  289. border
  290. style="width: 100%">
  291. <el-table-column
  292. prop="days"
  293. label="第几晚"
  294. width="180">
  295. <template slot-scope="scope">
  296. <el-input-number size="mini" :controls="false" v-model="scope.row.days"></el-input-number>
  297. </template>
  298. </el-table-column>
  299. <el-table-column
  300. style="position: relative;"
  301. prop="city"
  302. label="城 市"
  303. width="180">
  304. <template slot-scope="scope">
  305. <el-input size="mini" v-model="scope.row.city"></el-input>
  306. </template>
  307. <!-- <template slot-scope="scope">
  308. <el-select size="mini" v-model="scope.row.place" filterable placeholder="请选择">
  309. <el-option
  310. v-for="item in placeinif"
  311. :key="item.id"
  312. :label="item.city=='所有城市'?item.country:item.city"
  313. :value="item.city=='所有城市'?item.country:item.city"
  314. >
  315. <span style="float: left">{{item.city}}</span>
  316. <span style="float: right; color: #8492a6; font-size: 13px">{{item.country}}</span>
  317. </el-option>
  318. </el-select>
  319. </template> -->
  320. </el-table-column>
  321. <el-table-column
  322. prop="cost"
  323. label=" 费用标准"
  324. width="180">
  325. <template slot-scope="scope">
  326. <el-input-number size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
  327. </template>
  328. </el-table-column>
  329. <el-table-column
  330. prop="currencyName"
  331. label=" 币 种"
  332. width="180">
  333. <template slot-scope="scope">
  334. <el-input size="mini" v-model="scope.row.currencyName"></el-input>
  335. </template>
  336. </el-table-column>
  337. <el-table-column
  338. prop="subTotal"
  339. label="费用小计"
  340. width="180">
  341. <template slot-scope="scope">
  342. <div class="sub-boxs">{{scope.row.subTotal|numFilter}}</div>
  343. </template>
  344. </el-table-column>
  345. <el-table-column
  346. prop="address"
  347. label="操 作">
  348. </el-table-column>
  349. </el-table>
  350. </div>
  351. </div>
  352. <div class="Entry-form-li">
  353. <div class="Entry-li-lable">
  354. <div class="li-lable">六、培训费</div>
  355. <div style="display: flex;">
  356. <div class="li-lable">
  357. <label>合计:</label>
  358. <div class="sub-boxs">{{TotalExpenses.EconomyClasstotal=(TotalExpenses.EconomyClass+TotalExpenses.TravellingExpenses)|numFilter}}</div>
  359. <span>元/人</span>
  360. </div>
  361. </div>
  362. </div>
  363. <div class="Entry-li-inif">
  364. <el-table
  365. :data="trainingExpenseData"
  366. border
  367. style="width: 100%">
  368. <el-table-column
  369. prop="days"
  370. label="第几晚"
  371. width="180">
  372. <template slot-scope="scope">
  373. <el-input-number size="mini" :controls="false" v-model="scope.row.days"></el-input-number>
  374. </template>
  375. </el-table-column>
  376. <el-table-column
  377. style="position: relative;"
  378. prop="city"
  379. label="城 市"
  380. width="180">
  381. <template slot-scope="scope">
  382. <el-input size="mini" v-model="scope.row.city"></el-input>
  383. </template>
  384. <!-- <template slot-scope="scope">
  385. <el-select size="mini" v-model="scope.row.place" filterable placeholder="请选择">
  386. <el-option
  387. v-for="item in placeinif"
  388. :key="item.id"
  389. :label="item.city=='所有城市'?item.country:item.city"
  390. :value="item.city=='所有城市'?item.country:item.city"
  391. >
  392. <span style="float: left">{{item.city}}</span>
  393. <span style="float: right; color: #8492a6; font-size: 13px">{{item.country}}</span>
  394. </el-option>
  395. </el-select>
  396. </template> -->
  397. </el-table-column>
  398. <el-table-column
  399. prop="cost"
  400. label=" 费用标准"
  401. width="180">
  402. <template slot-scope="scope">
  403. <el-input-number size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
  404. </template>
  405. </el-table-column>
  406. <el-table-column
  407. prop="currencyName"
  408. label=" 币 种"
  409. width="180">
  410. <template slot-scope="scope">
  411. <el-input size="mini" v-model="scope.row.currencyName"></el-input>
  412. </template>
  413. </el-table-column>
  414. <el-table-column
  415. prop="subTotal"
  416. label="费用小计"
  417. width="180">
  418. <template slot-scope="scope">
  419. <div class="sub-boxs">{{scope.row.subTotal|numFilter}}</div>
  420. </template>
  421. </el-table-column>
  422. <el-table-column
  423. prop="address"
  424. label="操 作">
  425. </el-table-column>
  426. </el-table>
  427. </div>
  428. </div>
  429. </div>
  430. </div>
  431. </div>
  432. </template>
  433. <script>
  434. export default {
  435. data() {
  436. return {
  437. value:'',
  438. options:[],
  439. Visafees:'',
  440. Visadepicted:'',
  441. currencys: [],
  442. DomesticFees:{
  443. visafees:'',//签证费
  444. visafeesDescription:'',//签证费用描述
  445. vaccinefees:0,//疫苗费
  446. nucleicfees:0,//核酸检测费
  447. serviceCharge:0,//服务费
  448. insurance:0,//保险费
  449. ticketsExhibitionL:0,//参展门票
  450. total:0
  451. },
  452. TotalExpenses:{
  453. EconomyClass:0,//经济舱
  454. BusinessClass:0,//公务舱
  455. TravellingExpenses:0,//城市区间交通费
  456. EconomyClasstotal:0,//经济舱合计
  457. BusinessClasstotal:0,//公务舱合计
  458. },
  459. quarterageData: [],
  460. boardWagesData:[],
  461. miscellaneousFeeData:[],
  462. trainingExpenseData:[],
  463. placeinif:[],
  464. //下拉框
  465. treeData: "",
  466. treeDataValue: "",
  467. data: [
  468. {
  469. id: 1,
  470. name: "一级 1",
  471. children: [
  472. {
  473. id: 4,
  474. label: "二级 1-1",
  475. },
  476. ],
  477. },
  478. {
  479. id: 2,
  480. name: "一级 2",
  481. children: [
  482. {
  483. id: 5,
  484. name: "二级 2-1",
  485. },
  486. {
  487. id: 6,
  488. name: "二级 2-2",
  489. },
  490. ],
  491. },
  492. {
  493. id: 3,
  494. name: "一级 3",
  495. children: [
  496. {
  497. id: 7,
  498. name: "二级 3-1",
  499. },
  500. {
  501. id: 8,
  502. name: "二级 3-2",
  503. },
  504. ],
  505. },
  506. ],
  507. defaultProps: {
  508. children: "cityData",
  509. label:"city",
  510. // label: "country",
  511. },
  512. }
  513. },
  514. methods:{
  515. //获取团组
  516. GetEnterExitCostDataSource(){
  517. var url = "/api/Groups/GetEnterExitCostDataSource"
  518. var that = this
  519. this.$axios({
  520. method: 'post',
  521. url: url,
  522. headers: {
  523. Authorization: 'Bearer ' + this.token
  524. },
  525. data:{
  526. portType: 1
  527. }
  528. }).then(function (res) {
  529. console.log(res)
  530. if(res.data.code==200){
  531. that.options=res.data.data.groupNameData;
  532. that.value=res.data.data.groupNameData[0].id;
  533. that.placeinif=res.data.data.nationalTravelFeeData;
  534. that.GetEnterExitCostInfobyDiId()
  535. }
  536. })
  537. },
  538. //获取费用标注
  539. GetNationalTravelFeeData(){
  540. var url = "/api/Groups/GetNationalTravelFeeData"
  541. var that = this
  542. this.$axios({
  543. method: 'post',
  544. url: url,
  545. headers: {
  546. Authorization: 'Bearer ' + this.token
  547. },
  548. data:{
  549. portType: 1
  550. }
  551. }).then(function (res) {
  552. console.log(res)
  553. if(res.data.code==200){
  554. that.placeinif=res.data.data;
  555. console.log(that.placeinif)
  556. }
  557. })
  558. },
  559. GetEnterExitCostInfobyDiId(){
  560. var url = "/api/Groups/GetEnterExitCostInfobyDiId"
  561. var that = this
  562. this.$axios({
  563. method: 'post',
  564. url: url,
  565. headers: {
  566. Authorization: 'Bearer ' + this.token
  567. },
  568. data:{
  569. portType: 1,
  570. diId: that.value
  571. }
  572. }).then(function (res) {
  573. if(res.data.code==200){
  574. console.log(res)
  575. //汇率
  576. that.currencys=res.data.data.currencys;
  577. //境内费用
  578. that.DomesticFees.visafees=res.data.data.visa;
  579. that.DomesticFees.visafeesDescription=res.data.data.visaRemark;
  580. that.DomesticFees.vaccinefees=res.data.data.yiMiao;
  581. that.DomesticFees.nucleicfees=res.data.data.heSuan;
  582. that.DomesticFees.serviceCharge=res.data.data.service;
  583. that.DomesticFees.insurance=res.data.data.safe;
  584. that.DomesticFees.ticketsExhibitionL=res.data.data.ticket;
  585. //国际旅费
  586. that.TotalExpenses.EconomyClass=res.data.data.outsideJJPay;
  587. that.TotalExpenses.BusinessClass=res.data.data.outsaideGWPay;
  588. that.TotalExpenses.TravellingExpenses=res.data.data.cityTranffic;
  589. //住宿费
  590. that.quarterageData=res.data.data.quarterageData;
  591. //伙食费
  592. that.boardWagesData=res.data.data.boardWagesData;
  593. //公杂费
  594. that.miscellaneousFeeData=res.data.data.miscellaneousFeeData;
  595. //培训费
  596. that.trainingExpenseData=res.data.data.trainingExpenseData;
  597. }
  598. })
  599. },
  600. //下拉
  601. handNodeClick(data,node,e){
  602. console.log(data)
  603. console.log(node)
  604. console.log(e)
  605. this.treeDataValue= data.name
  606. this.treeData= data.name
  607. console.log(this.treeData)
  608. }
  609. },
  610. filters: {
  611. numFilter (value) {
  612. // 截取当前数据到小数点后两位
  613. let realVal = parseFloat(value).toFixed(2)
  614. return realVal
  615. }
  616. },
  617. watch: {
  618. //境内费用
  619. DomesticFees: {
  620. handler(newVal, oldVal) {
  621. if(newVal.insurance==undefined){
  622. newVal.insurance=0
  623. }
  624. if(newVal.nucleicfees==undefined){
  625. newVal.nucleicfees=0
  626. }
  627. if(newVal.serviceCharge==undefined){
  628. newVal.serviceCharge=0
  629. }
  630. if(newVal.ticketsExhibitionL==undefined){
  631. newVal.ticketsExhibitionL=0
  632. }
  633. if(newVal.vaccinefees==undefined){
  634. newVal.vaccinefees=0
  635. }
  636. if(newVal.visafees==undefined){
  637. newVal.visafees=0
  638. }
  639. },
  640. immediate: true,
  641. deep: true // 可以深度检测到 person 对象的属性值的变化
  642. },
  643. //国际旅费
  644. TotalExpenses: {
  645. handler(newVal, oldVal) {
  646. if(newVal.EconomyClass==undefined){
  647. newVal.EconomyClass=0
  648. }
  649. if(newVal.BusinessClass==undefined){
  650. newVal.BusinessClass=0
  651. }
  652. if(newVal.TravellingExpenses==undefined){
  653. newVal.TravellingExpenses=0
  654. }
  655. },
  656. immediate: true,
  657. deep: true // 可以深度检测到 person 对象的属性值的变化
  658. }
  659. },
  660. mounted(){
  661. this.GetEnterExitCostDataSource();
  662. this.GetNationalTravelFeeData();
  663. }
  664. }
  665. </script>
  666. <style>
  667. .Entry-all{
  668. background-color: #fff;
  669. padding: 10px;
  670. box-shadow: 0 0 5px #0005;
  671. border-radius: 10px;
  672. height: 100%;
  673. min-height: 840px;
  674. }
  675. .Entry-head-li label{
  676. color: #606266;
  677. font-size: 15px;
  678. font-weight: 600;
  679. }
  680. .Entry-head{
  681. display: flex;
  682. justify-content: space-between;
  683. }
  684. .Entry-form{
  685. margin-top: 10px;
  686. border-top:2px solid #409EFF;
  687. }
  688. .Entry-li-inif{
  689. display: flex;
  690. width: 100%;
  691. border-top:1px solid #ebeef5;
  692. padding: 5px 0;
  693. }
  694. .Entry-li-inif:last-child{
  695. border-bottom:1px solid #ebeef5;
  696. }
  697. .Entry-li-lable{
  698. display: flex;
  699. justify-content: space-between;
  700. margin: 10px 0;
  701. }
  702. .Entry-inif-box .depipt{
  703. display: inline-block;
  704. width: 240px;
  705. }
  706. .Entry-inif-box{
  707. margin-right: 20px;
  708. }
  709. .Entry-li-inif label{
  710. font-size: 14px;
  711. color: #606266;
  712. }
  713. .Entry-li-inif span{
  714. font-size: 14px;
  715. color: #606266;
  716. }
  717. .Entry-form .redzhu{
  718. font-size: 14px;
  719. color: red;
  720. }
  721. .sub-boxs{
  722. -ms-user-select: none;
  723. -khtml-user-select: none;
  724. -webkit-user-select: none;
  725. -moz-user-select: none;
  726. font-size: 14px;
  727. user-select: none;
  728. font-family: cursive;
  729. background-color: #FFF;
  730. background-image: none;
  731. border-radius: 4px;
  732. border: 1px solid #DCDFE6;
  733. -webkit-box-sizing: border-box;
  734. box-sizing: border-box;
  735. color: #606266;
  736. display: inline-block;
  737. height: 28px;
  738. line-height: 28px;
  739. outline: 0;
  740. padding: 0 15px;
  741. -webkit-transition: border-color .2s cubic-bezier(.645,.045,.355,1);
  742. transition: border-color .2s cubic-bezier(.645,.045,.355,1);
  743. }
  744. .opc-city{
  745. }
  746. </style>