backInfo.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <template>
  2. <view style="padding: 20rpx;min-height: 95.2vh;background: #f6f6f6;box-sizing: border-box;">
  3. <view class="bankList" @click="toAddUpdate(item)" v-for="item in dataList" :key="item.id">
  4. <view class="right">
  5. <u-icon name="grid" color="#fff" size="22"></u-icon>
  6. </view>
  7. <view class="left">
  8. <view class="bankName">
  9. {{item.bankCreat}}
  10. </view>
  11. <view class="bankCard">
  12. {{formatBankCard(item.bankNo)}}
  13. </view>
  14. </view>
  15. <view class="defaultd" v-if="item.defaultd==1">
  16. {{item.defaultdDesc}}
  17. </view>
  18. </view>
  19. <view class="bankList" @click="toAddUpdate(null)" style="background: #fff;padding: 40rpx 20rpx;color: #000;">
  20. <view class="right">
  21. <u-icon name="plus" color="#000" size="22"></u-icon>
  22. </view>添加银行卡
  23. </view>
  24. <u-toast ref="uToast"></u-toast>
  25. </view>
  26. </template>
  27. <script>
  28. export default {
  29. data() {
  30. return {
  31. dataList: []
  32. }
  33. },
  34. onShow() {
  35. this.getDataList()
  36. },
  37. methods: {
  38. toAddUpdate(x) {
  39. uni.navigateTo({
  40. url: '/pages/main/set/userinfo/bankAddUpdate?date=' + JSON.stringify(x)
  41. })
  42. },
  43. formatBankCard(cardNumber) {
  44. // 去掉所有空格
  45. cardNumber = cardNumber.replace(/\s/g, '');
  46. // 只保留最后四位,前面的用星号代替
  47. const lastFour = cardNumber.slice(-4);
  48. const maskedSection = cardNumber.slice(0, -4).replace(/\d/g, '*');
  49. // 将每四位加一个空格
  50. const formattedCard = maskedSection + lastFour;
  51. return formattedCard.replace(/(.{4})/g, '$1 ').trim();
  52. },
  53. getDataList() {
  54. let user = uni.getStorageSync('userInfo')
  55. this.$api.to_http(`/employees/banklist/getBankListByWork?workId=${user.userProfileId}`, "GET").then((res) => {
  56. if (res.data.code != 0) {
  57. return uni.$u.toast(res.data.msg)
  58. }
  59. this.dataList = res.data.data
  60. })
  61. }
  62. }
  63. }
  64. </script>
  65. <style lang="less" scoped>
  66. .bankList {
  67. position: relative;
  68. padding: 20rpx;
  69. background: #5486d5;
  70. color: #fff;
  71. margin-bottom: 15rpx;
  72. border-radius: 20rpx;
  73. box-sizing: border-box;
  74. display: flex;
  75. .right {
  76. margin-right: 10rpx;
  77. }
  78. .bankCard {
  79. margin-top: 10rpx;
  80. }
  81. .defaultd {
  82. position: absolute;
  83. right: 0;
  84. top: 0;
  85. font-size: 28rpx;
  86. padding: 10rpx;
  87. background-color: #ffaa00;
  88. border-radius: 10rpx;
  89. box-sizing: border-box;
  90. }
  91. }
  92. </style>