companybill.vue 23 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031
  1. <template>
  2. <view class="">
  3. <view class="topname">
  4. <view class="topname1" @click="goback">
  5. <u-icon name="arrow-left" color="#000000" size="36"></u-icon>
  6. </view>
  7. <view class="topname2">
  8. {{ this.fatherparameter.name}}
  9. </view>
  10. </view>
  11. <view class="subsection">
  12. <u-subsection :list="list" :current="current" @change="sectionChange"></u-subsection>
  13. </view>
  14. <!-- 列表 -->
  15. <!-- 账单明细 -->
  16. <view class="" v-show="cdshow==true">
  17. <!-- 日期选择器 -->
  18. <view class="topbilledit">
  19. <view class="changetime1">
  20. <picker mode="date" :value="dataForm.costCycle" fields="month" @change="dateChange">
  21. <view class="selestDate">{{dataForm.costCycle}}</view>
  22. </picker>
  23. </view>
  24. <view class="changetime2">
  25. <u-icon name="arrow-down-fill" color="#666666" size="20"></u-icon>
  26. </view>
  27. </view>
  28. <view class="nodata" v-if="nodata==true" >
  29. 暂无数据
  30. </view>
  31. <view class="yesdata" v-if="nodata==false">
  32. <view class="onerecord">
  33. 共有 <span>1</span>条记录
  34. </view>
  35. <view class="records">
  36. <view class="records1">
  37. 待支付
  38. </view>
  39. <view class="Currentamount">
  40. 物业费: <span>¥{{zddata.amount}}</span>
  41. </view>
  42. <view class="Currentamount">
  43. 管理费:¥ {{zddata.glf}}
  44. </view>
  45. <view class="Currentamount">
  46. 中央空调使用费:¥ {{zddata.ktf}}
  47. </view>
  48. <view class="Currentamount">
  49. 电梯费:¥ {{zddata.dtf}}
  50. </view>
  51. </view>
  52. </view>
  53. </view>
  54. <!-- 缴费记录 -->
  55. <view class="" v-show="cdshow==false">
  56. <view class="topbilledit" @click="typechange">
  57. <view class="changetime1">
  58. {{expensedata}}
  59. </view>
  60. <view class="changetime2">
  61. <u-icon name="arrow-down-fill" color="#666666" size="20"></u-icon>
  62. </view>
  63. </view>
  64. <!-- 列表 -->
  65. <view class="nodata" v-if="jfnodata==true" >
  66. 暂无数据
  67. </view>
  68. <view class="u-listdata" v-if="jfnodata==false">
  69. <view style="padding:10rpx 0 0 30rpx">
  70. 共有 <span style="color: red">{{totalnumber}}</span>条记录
  71. </view>
  72. <u-list @scrolltolower="scrolltolower" :pagingEnabled='true'>
  73. <u-list-item v-for="(item, index) in indexList" :key="index">
  74. <view class="companylist" >
  75. <view class="settled" v-if="item.status==1">
  76. 预存
  77. </view>
  78. <h3>{{item.tenantInfo.name}}</h3>
  79. <view class="Currentamount1">
  80. 扣缴金额: <span>¥{{item.amount}}</span>
  81. </view>
  82. <view class="Currentamount1">
  83. 账户余额: {{item.surplus}}
  84. </view>
  85. <view class="Currentamount1">
  86. 租户电话:¥{{item.tenantInfo.tel}}
  87. </view>
  88. <view class="Currentamount1">
  89. 操作人: {{item.creator}}
  90. </view>
  91. <view class="Currentamount1">
  92. 扣缴时间: {{item.createDate}}
  93. </view>
  94. </view>
  95. </u-list-item>
  96. </u-list>
  97. </view>
  98. </view>
  99. <view class="dibu" v-show="dibucaidan">
  100. <view class="yucun">
  101. <u-button type="success" text="预存" @click="prestore('预存')"></u-button>
  102. </view>
  103. <view class="yucun">
  104. <u-button type="primary" text="补助" @click="prestore('补助')"></u-button>
  105. </view>
  106. <!-- <view class="yucun">
  107. <u-button type="error" text="退费" @click="prestore('退费')"></u-button>
  108. </view> -->
  109. </view>
  110. <u-picker :show="showtype" :columns="columnstype" keyName="dictLabel" @confirm="confirmtype" @cancel='canceltype'> </u-picker>
  111. <u-popup :show="showpayjine" @close="closepay1" @open="openpay1" mode="bottom" :round="10" :closeable=true :closeOnClickOverlay=true>
  112. <view class="paytall1">
  113. <!-- <text>请选择支付方式</text> -->
  114. <view class="hejitop">
  115. {{prestorename}}
  116. </view>
  117. <view class="zhifufs">
  118. <u--form
  119. labelWidth="100"
  120. labelPosition="left"
  121. :model="model1"
  122. :rules="rules"
  123. ref="uForm"
  124. >
  125. <u-form-item
  126. label="金额"
  127. prop="userInfo.amount"
  128. borderBottom
  129. ref="item1"
  130. >
  131. <u--input
  132. v-model="model1.userInfo.amount"
  133. border="none"
  134. ></u--input>
  135. </u-form-item>
  136. </u--form>
  137. </view>
  138. <view style="margin: 0 30rpx;">
  139. <u-button type="primary" text="确定" @click="Confirmationpaymentjine"></u-button>
  140. </view>
  141. </view>
  142. </u-popup>
  143. <view class="canys" v-if="zhifucanvas">
  144. <h4>请用微信扫码二维码</h4>
  145. <canvas class="zhifucanvas" canvas-id='canvas'></canvas>
  146. <view class="guanbi">
  147. <u-button type="primary" :plain="true" text="关闭" @click="guanbi"></u-button>
  148. </view>
  149. </view>
  150. <u-notify ref="uNotify" message="" ></u-notify>
  151. </view>
  152. </template>
  153. <script>
  154. var QRCode = require('@/utils/qrcode.js');
  155. const BaseApi = require("@/http/baseApi.js");
  156. export default {
  157. data() {
  158. return {
  159. zhifucanvas: false,
  160. dibucaidan:true,
  161. prestorename:'',
  162. model1: {
  163. userInfo: {
  164. amount: '',
  165. },
  166. },
  167. rules: {
  168. 'userInfo.amount': {
  169. type: 'string',
  170. required: true,
  171. message: '请填写预存金额',
  172. trigger: ['blur', 'change']
  173. },
  174. },
  175. showpayjine: false,
  176. totalnumber:0,
  177. jfnodata:false,
  178. showtype: false,
  179. cdshow: true,
  180. fatherparameter: {},
  181. expensedata:'全部',
  182. list: ['账单明细', '缴费记录', ],
  183. current: 0,
  184. dataForm: {
  185. tenantId: "",
  186. costCycle: "",
  187. type: "",
  188. page: 1,
  189. limit: 10,
  190. },
  191. indexList: [],
  192. payStatusList: [],
  193. zddata:{
  194. amount:'',
  195. dtf:'',
  196. ktf:'',
  197. glf:'',
  198. },
  199. nodata:true,
  200. pd:true,
  201. columnstype: [],
  202. jfpost: {
  203. tenantId: "",
  204. costCycle: "",
  205. type: "",
  206. page: 1,
  207. limit: 10,
  208. },
  209. }
  210. },
  211. //监听页面加载,其参数为上个页面传递的数据,参数类型为 Object(用于页面传参
  212. onLoad: function(options) {
  213. //option为object类型,会序列化上个页面传递的参数
  214. // console.log(options); //打印出上个页面传递的参数。
  215. this.fatherparameter = JSON.parse(decodeURIComponent(options.para));
  216. let getDictDataList=uni.getStorageSync('getDictDataList');
  217. // console.log('111111111111111111',getDictDataList)
  218. for(let i=0;i<getDictDataList.length;i++){
  219. if(getDictDataList[i].dictType=='PayType'){
  220. this.columnstype=[getDictDataList[i].dataList]
  221. }
  222. if(getDictDataList[i].dictType=='PayStatus'){
  223. this.payStatusList=[getDictDataList[i].dataList]
  224. }
  225. }
  226. this.dataForm.tenantId = this.fatherparameter.id;
  227. this.dataForm.costCycle = this.fatherparameter.cycle;
  228. this.dataForm.page = 1;
  229. this.jfpost.tenantId = this.fatherparameter.id;
  230. this.jfpost.costCycle = this.fatherparameter.cycle;
  231. this.jfpost.page = 1;
  232. this.getalldata();
  233. // this.getPayStatusList();
  234. //this.getPayTypeList();
  235. },
  236. //监听页面初次渲染完成。注意如果渲染速度快,会在页面进入动画完成前触发
  237. onReady() {},
  238. //监听页面隐藏
  239. onHide() {},
  240. //监听窗口尺寸变化
  241. onResize() {},
  242. //监听页面卸载
  243. onUnload() {},
  244. //监听用户下拉动作,一般用于下拉刷新
  245. onPullDownRefresh() {},
  246. methods: {
  247. prestore(e){
  248. // console.log('111111111111111111',e)
  249. this.showpayjine=true;
  250. this.dibucaidan=false;
  251. this.prestorename=e;
  252. },
  253. Confirmationpaymentjine() {
  254. this.$refs.uForm.validate().then(res => {
  255. // uni.$u.toast('校验通过')
  256. // console.log('111111111111111111', this.model1.userInfo.amount)
  257. this.showpayjine=false;
  258. this.Predepositshow=false;
  259. this.dibucaidan=true;
  260. if(this.prestorename=='预存'){
  261. this.prestoredata(this.model1.userInfo.amount)
  262. }else if(this.prestorename=='补助'){
  263. this.subsidydata(this.model1.userInfo.amount)
  264. }else if(this.prestorename=='退费'){
  265. this.refunddata(this.model1.userInfo.amount)
  266. }
  267. // let postdata = {
  268. // totalFee: '0.01',
  269. // tenantId: Math.floor(this.dataForm.tenantId),
  270. // tradeType: 'NATIVE',
  271. // billIds: ''
  272. // }
  273. }).catch(errors => {
  274. uni.$u.toast('校验失败')
  275. })
  276. },
  277. //预存
  278. prestoredata(e){
  279. this.zhifucanvas=true;
  280. // console.log('11',e)
  281. //this.fatherparameter.id
  282. let postdata = {
  283. totalFee: e,
  284. tenantId: Math.floor(this.fatherparameter.id),
  285. tradeType: 'NATIVE',
  286. billIds: ''
  287. }
  288. uni.request({
  289. url: BaseApi.BaseApi + '/pay/createOrder',
  290. method: "POST",
  291. data: postdata,
  292. header: {
  293. 'content-type': 'application/x-www-form-urlencoded',
  294. "token": uni.getStorageSync('tokendata'),
  295. },
  296. success: (res) => {
  297. // window.open(res.codeUrl, '_blank);
  298. let qrcode = new QRCode('canvas', {
  299. text: res.data.codeUrl, // weixin://wxpay/bizpayurl?pr=sZz****
  300. width: 213,
  301. height: 213,
  302. colorDark: "black",
  303. colorLight: "white",
  304. correctLevel: QRCode.CorrectLevel.H,
  305. });
  306. // 10秒之后调取查询订单
  307. let that = this;
  308. setTimeout(function () {
  309. that.zhifucanvas = false;
  310. that.zddata={};
  311. that.dataForm.page = 1;
  312. that.getalldata();
  313. this.jfpost.page = 1;
  314. this.indexList=[];
  315. this.getjfdata();
  316. }, 15000);
  317. }
  318. });
  319. },
  320. //补助
  321. subsidydata(e){
  322. console.log('22',e)
  323. //this.zhifucanvas=true;
  324. // console.log('11',e)
  325. //this.fatherparameter.id
  326. let postdata = {
  327. totalFee: e,
  328. tenantId: Math.floor(this.fatherparameter.id),
  329. tradeType: 'NATIVE',
  330. billIds: ''
  331. }
  332. uni.request({
  333. url: BaseApi.BaseApi + '/pay/createOrder',
  334. method: "POST",
  335. data: postdata,
  336. header: {
  337. 'content-type': 'application/x-www-form-urlencoded',
  338. "token": uni.getStorageSync('tokendata'),
  339. },
  340. success: (res) => {
  341. this.$refs.uNotify.success('补助成功')
  342. }
  343. });
  344. },
  345. //退费
  346. refunddata(e){
  347. console.log('33',e)
  348. let postdata = {
  349. amount: e,
  350. id:Math.floor(this.fatherparameter.id),
  351. orderId: 0,
  352. refundReason: ''
  353. }
  354. this.$api.post('/refundinfo',postdata)
  355. .then(res=>{
  356. if(res.data.code==0){
  357. this.$refs.uNotify.success('退费成功')
  358. }else{
  359. this.$refs.uNotify.error(res.data.msg)
  360. }
  361. })
  362. },
  363. closepay1() {
  364. this.showpayjine = false
  365. // console.log('close');
  366. this.dibucaidan=true;
  367. },
  368. openpay1() {
  369. console.log('open');
  370. },
  371. goback() {
  372. uni.navigateBack({
  373. delta: 1
  374. });
  375. },
  376. guanbi(){
  377. this.zhifucanvas=false;
  378. this.Predepositshow=true;
  379. this.getalldata();
  380. this.getjfdata();
  381. },
  382. canceltype() {
  383. this.showtype = false;
  384. },
  385. confirmtype(e) {
  386. //console.log('111111111111111111', e.value[0])
  387. this.showtype = false;
  388. this.expensedata = e.value[0].dictLabel;
  389. if( e.value[0].dictLabel=='全部'){
  390. this.jfpost.type= '';
  391. } else{
  392. this.jfpost.type= e.value[0].dictValue;
  393. }
  394. this.indexList=[];
  395. this.jfpost.page = 1;
  396. this.getjfdata();
  397. },
  398. typechange() {
  399. this.showtype = true;
  400. },
  401. sectionChange(index) {
  402. this.current = index;
  403. if (index == 0) {
  404. this.cdshow = true;
  405. this.dataForm.page = 1;
  406. this.getalldata();
  407. } else {
  408. this.cdshow = false;
  409. this.jfpost.page = 1;
  410. this.indexList=[];
  411. this.getjfdata();
  412. }
  413. },
  414. scrolltolower() {
  415. if(this.pd){
  416. this.getjfdata();
  417. }else{
  418. return
  419. }
  420. },
  421. getjfdata(){
  422. this.$api.get('/payrecord/page', this.jfpost)
  423. .then(res => {
  424. this.totalnumber=res.data.data.total;
  425. // console.log('111111111111111111',res.data.data.list)
  426. if (res.data.data.list.length != 0) {
  427. this.indexList.push(...res.data.data.list);
  428. this.jfpost.page = this.jfpost.page + 1;
  429. this.pd=true;
  430. this.jfnodata=false;
  431. } else {
  432. uni.showToast({
  433. title:'暂无更多数据了',
  434. icon: 'none',
  435. duration: 1500
  436. })
  437. this.pd=false;
  438. //this.jfnodata=true
  439. }
  440. })
  441. },
  442. dateChange(e) {
  443. this.myday = e.target.value;
  444. this.dataForm.costCycle = e.target.value;
  445. this.jfpost.costCycle = e.target.value;
  446. this.zddata={};
  447. this.dataForm.page = 1;
  448. this.getalldata();
  449. },
  450. getalldata() {
  451. this.$api.post('/billinfo/billDetail', this.dataForm)
  452. .then(res => {
  453. //console.log('111111111111111111', res.data)
  454. // this.indexList = [];
  455. // this.indexList = res.data.data;
  456. // console.log('222222', this.indexList)
  457. this.zddata={};
  458. if(res.data.data.length==0){
  459. // console.log('111111111111111111',)
  460. // this.zddata={};
  461. this.nodata=true;
  462. }else{
  463. this.nodata=false;
  464. this.zddata.amount=res.data.data[0].amount;
  465. this.zddata.glf=res.data.data[0].billLists[0].amount;
  466. this.zddata.ktf=res.data.data[0].billLists[1].amount;
  467. this.zddata.dtf=res.data.data[0].billLists[2].amount;
  468. }
  469. })
  470. },
  471. }
  472. }
  473. </script>
  474. <style lang="scss">
  475. .dibu{
  476. position: fixed;
  477. right: 0;
  478. left: 0;
  479. bottom: 0;
  480. width: 750rpx;
  481. height: 100rpx;
  482. display: flex;
  483. align-items: center;
  484. justify-content: space-around;
  485. background-color: #fff;
  486. }
  487. .yucun{
  488. width: 200rpx;
  489. }
  490. .nodata{
  491. text-align: center;
  492. padding-top: 400rpx;
  493. }
  494. .yesdata{
  495. }
  496. .companylist {
  497. margin: 20rpx 30rpx;
  498. background: #fff;
  499. height: 280rpx;
  500. border-radius: 10px;
  501. position: relative;
  502. h3 {
  503. height: 70rpx;
  504. line-height: 70rpx;
  505. padding-left: 30rpx;
  506. }
  507. }
  508. .settled {
  509. background-color: #09C700;
  510. width: 100rpx;
  511. height: 40rpx;
  512. text-align: center;
  513. line-height: 40rpx;
  514. color: #fff;
  515. font-size: 14rpx;
  516. position: absolute;
  517. top: 0px;
  518. right: 0px;
  519. border-top-right-radius: 10rpx;
  520. border-bottom-left-radius: 10rpx;
  521. }
  522. .Currentamount {
  523. padding-left: 30rpx;
  524. height: 50rpx;
  525. line-height: 50rpx;
  526. color: #BCB3A7;
  527. span {
  528. color: #FA5555;
  529. padding-left: 9rpx;
  530. }
  531. }
  532. .Currentamount1 {
  533. padding-left: 30rpx;
  534. height: 40rpx;
  535. line-height: 40rpx;
  536. color: #BCB3A7;
  537. span {
  538. color: #FA5555;
  539. padding-left: 9rpx;
  540. }
  541. }
  542. .records1{
  543. background-color: #FA5555;
  544. width: 100rpx;
  545. height: 40rpx;
  546. text-align: center;
  547. line-height: 40rpx;
  548. color: #fff;
  549. font-size: 14rpx;
  550. position: absolute;
  551. top: 0px;
  552. right: 0px;
  553. border-top-right-radius: 10rpx;
  554. border-bottom-left-radius: 10rpx;
  555. }
  556. .records{
  557. display: flex;
  558. flex-direction: column;
  559. // justify-content: center;
  560. position: relative;
  561. width: 690rpx;
  562. height: 210rpx;
  563. background: #fff;
  564. margin: 0 auto;
  565. border-radius: 9rpx;
  566. }
  567. .onerecord{
  568. width: 750rpx;
  569. height: 90rpx;
  570. line-height: 90rpx;
  571. padding-left: 30rpx;
  572. color: #999;
  573. span{
  574. color: red;
  575. }
  576. }
  577. .topbilledit {
  578. display: flex;
  579. justify-content: center;
  580. align-items: center;
  581. background: #fff;
  582. height: 60rpx;
  583. }
  584. .changetime2 {
  585. padding-left: 10rpx;
  586. }
  587. .subsection {
  588. padding: 30rpx;
  589. background: #fff;
  590. margin-top: 30rpx;
  591. }
  592. .topname {
  593. height: 44px;
  594. width: 750rpx;
  595. display: flex;
  596. align-items: center;
  597. }
  598. .topname1 {
  599. width: 50rpx;
  600. padding-left: 10rpx;
  601. }
  602. .topname2 {
  603. width: 700rpx;
  604. text-align: center;
  605. font-weight: bold;
  606. }
  607. .Predeposit {
  608. position: fixed;
  609. bottom: 0;
  610. left: 0;
  611. right: 0;
  612. width: 750rpx;
  613. }
  614. .nodata {
  615. text-align: center;
  616. padding-top: 400rpx;
  617. }
  618. .zhifucanvas {
  619. width: 400rpx;
  620. height: 400rpx;
  621. margin: 0 auto;
  622. }
  623. .canys{
  624. width: 500rpx;
  625. height: 600rpx;
  626. position: fixed;
  627. top: 30%;
  628. left: 140rpx;
  629. background: #e6e6e6;
  630. h4{
  631. width: 500rpx;
  632. text-align: center;
  633. height: 80rpx;
  634. line-height: 80rpx;
  635. }
  636. }
  637. .guanbi{
  638. margin-top: 50rpx;
  639. }
  640. .zhifufs {
  641. padding: 30rpx;
  642. ::v-deep .u-radio-label--right {
  643. margin-top: 30rpx;
  644. }
  645. ::v-deep .u-radio__icon-wrap {
  646. width: 40rpx !important;
  647. height: 40rpx !important;
  648. }
  649. ::v-deep .u-radio__text {
  650. font-size: 32rpx !important;
  651. }
  652. }
  653. .hejitop {
  654. width: 750rpx;
  655. text-align: center;
  656. font-weight: bold;
  657. font-size: 40rpx;
  658. margin-bottom: 30rpx;
  659. }
  660. .paytall {
  661. width: 750rpx;
  662. height: 400rpx;
  663. background-color: #fff;
  664. }
  665. .paytall1 {
  666. width: 750rpx;
  667. height: 330rpx;
  668. background-color: #fff;
  669. }
  670. .heji span {
  671. color: #ED3A25;
  672. }
  673. .likezhifu {
  674. margin-left: 20rpx;
  675. margin-right: 30rpx;
  676. }
  677. .zhifu {
  678. position: fixed;
  679. right: 0 ;
  680. bottom: 0 ;
  681. left: 0 ;
  682. height: 140rpx;
  683. background-color: #fff;
  684. display: flex;
  685. align-items: center;
  686. justify-content: space-between;
  687. }
  688. .zhifuleft {
  689. margin-left: 30rpx;
  690. }
  691. .zhifuright {
  692. display: flex;
  693. align-items: center;
  694. justify-content: flex-end;
  695. }
  696. .outstanding1 {
  697. background-color: #09C700;
  698. width: 100rpx;
  699. height: 40rpx;
  700. text-align: center;
  701. line-height: 40rpx;
  702. color: #fff;
  703. font-size: 14 rpx;
  704. position: absolute;
  705. top: 0px;
  706. right: 0px;
  707. border-top-right-radius: 10rpx;
  708. border-bottom-left-radius: 10rpx;
  709. }
  710. .outstanding2 {
  711. background-color: #ED3A25;
  712. width: 100rpx;
  713. height: 40rpx;
  714. text-align: center;
  715. line-height: 40rpx;
  716. color: #fff;
  717. font-size: 14rpx;
  718. position: absolute;
  719. top: 0px;
  720. right: 0px;
  721. border-top-right-radius: 10rpx;
  722. border-bottom-left-radius: 10rpx;
  723. }
  724. .outstanding3 {
  725. background-color: #e6e6e6;
  726. width: 100rpx;
  727. height: 40rpx;
  728. text-align: center;
  729. line-height: 40rpx;
  730. color: #fff;
  731. font-size: 14 rpx;
  732. position: absolute;
  733. top: 0px;
  734. right: 0px;
  735. border-top-right-radius: 10rpx;
  736. border-bottom-left-radius: 10rpx;
  737. }
  738. .userInfotenantName {
  739. text-align: center;
  740. margin-bottom: 10rpx;
  741. font-size: 34rpx;
  742. }
  743. .topbilledit {
  744. display: flex;
  745. justify-content: space-around;
  746. align-items: center;
  747. }
  748. .changetime1 {
  749. padding-right: 10rpx;
  750. }
  751. .paisong {
  752. display: flex;
  753. flex-direction: column;
  754. justify-content: center;
  755. height: 220rpx;
  756. background-color: #fff;
  757. margin: 30rpx;
  758. border-radius: 9rpx;
  759. position: relative;
  760. h3 {
  761. height: 70rpx;
  762. line-height: 70rpx;
  763. padding-left: 30rpx;
  764. }
  765. }
  766. .paisong2 {
  767. display: flex;
  768. flex-direction: column;
  769. justify-content: center;
  770. height: 330rpx;
  771. background-color: #fff;
  772. margin: 30rpx;
  773. border-radius: 9rpx;
  774. position: relative;
  775. h3 {
  776. height: 70rpx;
  777. line-height: 70rpx;
  778. padding-left: 30rpx;
  779. }
  780. }
  781. .companylist {
  782. margin: 20rpx 30rpx;
  783. background: #fff;
  784. height: 280rpx;
  785. border-radius: 10px;
  786. position: relative;
  787. h3 {
  788. height: 70rpx;
  789. line-height: 70rpx;
  790. padding-left: 30rpx;
  791. }
  792. }
  793. .settled1 {
  794. background-color: #09C700;
  795. width: 100rpx;
  796. height: 40rpx;
  797. text-align: center;
  798. line-height: 40rpx;
  799. color: #fff;
  800. font-size: 14rpx;
  801. position: absolute;
  802. top: 0px;
  803. right: 0px;
  804. border-top-right-radius: 10rpx;
  805. border-bottom-left-radius: 10rpx;
  806. }
  807. .settled2 {
  808. background-color: #30D3A2;
  809. width: 100rpx;
  810. height: 40rpx;
  811. text-align: center;
  812. line-height: 40rpx;
  813. color: #fff;
  814. font-size: 14 rpx;
  815. position: absolute;
  816. top: 0px;
  817. right: 0px;
  818. border-top-right-radius: 10rpx;
  819. border-bottom-left-radius: 10rpx;
  820. }
  821. .settled3 {
  822. background-color: #30D3A2;
  823. width: 100rpx;
  824. height: 40rpx;
  825. text-align: center;
  826. line-height: 40rpx;
  827. color: #fff;
  828. font-size: 14rpx;
  829. position: absolute;
  830. top: 0px;
  831. right: 0px;
  832. border-top-right-radius: 10rpx;
  833. border-bottom-left-radius: 10rpx;
  834. }
  835. .Currentamount {
  836. padding-left: 30rpx;
  837. height: 50rpx;
  838. line-height: 50rpx;
  839. color: #BCB3A7;
  840. span {
  841. color: #FA5555;
  842. padding-left: 9rpx;
  843. }
  844. }
  845. .Currentamount1 {
  846. padding-left: 30rpx;
  847. height: 45rpx;
  848. line-height: 45rpx;
  849. color: #BCB3A7;
  850. span {
  851. color: #FA5555;
  852. padding-left: 9rpx;
  853. }
  854. }
  855. .records1 {
  856. background-color: #FA5555;
  857. width: 100rpx;
  858. height: 40rpx;
  859. text-align: center;
  860. line-height: 40rpx;
  861. color: #fff;
  862. font-size: 14rpx;
  863. position: absolute;
  864. top: 0px;
  865. right: 0px;
  866. border-top-right-radius: 10rpx;
  867. border-bottom-left-radius: 10rpx;
  868. }
  869. .records {
  870. display: flex;
  871. flex-direction: column;
  872. // justify-content: center;
  873. position: relative;
  874. width: 690rpx;
  875. height: 210rpx;
  876. background: #fff;
  877. margin: 0 auto;
  878. border-radius: 9rpx;
  879. }
  880. .onerecord {
  881. width: 750rpx;
  882. height: 90rpx;
  883. line-height: 90rpx;
  884. padding-left: 30rpx;
  885. color: #999;
  886. span {
  887. color: red;
  888. }
  889. }
  890. .topbilledit {
  891. display: flex;
  892. justify-content: center;
  893. align-items: center;
  894. background: #fff;
  895. height: 60rpx;
  896. }
  897. .changetime2 {
  898. padding-left: 10rpx;
  899. }
  900. .subsection {
  901. padding: 30rpx;
  902. background: #fff;
  903. }
  904. .topname {
  905. height: 44px;
  906. width: 750rpx;
  907. display: flex;
  908. align-items: center;
  909. }
  910. .topname1 {
  911. width: 50rpx;
  912. padding-left: 10rpx;
  913. }
  914. .topname2 {
  915. width: 700rpx;
  916. text-align: center;
  917. font-weight: bold;
  918. }
  919. </style>