mybank.vue 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. <template>
  2. <view>
  3. <form>
  4. <view class="cu-list menu margin-top-sm">
  5. <view class="cu-item arrow" data-title="开户行" data-infobox="input" data-field="openbank" :data-value="bankcard.openbank" @click="showModal">
  6. <view class="content">
  7. <text>开户行</text>
  8. </view>
  9. <view class="action">
  10. <text class="text-grey">{{bankcard.openbank}}</text>
  11. </view>
  12. </view>
  13. <view class="cu-item arrow" data-title="帐户名" data-infobox="input" data-field="account" :data-value="bankcard.account" @click="showModal">
  14. <view class="content">
  15. <text>帐户名</text>
  16. </view>
  17. <view class="action">
  18. <text class="text-grey">{{bankcard.account}}</text>
  19. </view>
  20. </view>
  21. <view class="cu-item arrow" data-title="银行卡号" data-infobox="input" data-field="number" :data-value="bankcard.number" @click="showModal">
  22. <view class="content">
  23. <text>银行卡号</text>
  24. </view>
  25. <view class="action">
  26. <text class="text-grey">{{bankcard.number}}</text>
  27. </view>
  28. </view>
  29. </view>
  30. <view class="padding flex flex-direction">
  31. <button class="cu-btn bg-blue margin-tb-sm lg" @tap="setBankcard">提交银行卡信息</button>
  32. </view>
  33. </form>
  34. <view class="cu-modal" :class="forminfo.isshow">
  35. <view class="cu-dialog">
  36. <view class="cu-bar bg-white justify-end">
  37. <view class="content">输入 {{forminfo.title}}</view>
  38. <view class="action" @tap="hideModal">
  39. <text class="cuIcon-close text-grey"></text>
  40. </view>
  41. </view>
  42. <view class="padding-xl bg-white text-left solid-top solid-bottom">
  43. <input :placeholder="'请输入'+forminfo.title+'...'" @input="bindInput" :value="forminfo.value"></input>
  44. </view>
  45. <view class="cu-bar bg-white justify-end">
  46. <view class="action">
  47. <button class="cu-btn line-grey text-grey" @tap="hideModal">取消</button>
  48. <button class="cu-btn bg-green margin-left" @tap="subModal">确定</button>
  49. </view>
  50. </view>
  51. </view>
  52. </view>
  53. <view class="padding"></view>
  54. </view>
  55. </template>
  56. <script>
  57. var _this;
  58. export default {
  59. data() {
  60. return {
  61. userinfo: {},
  62. forminfo: {
  63. isshow: "",
  64. title: "",
  65. field: "",
  66. value: ""
  67. },
  68. bankcard: {
  69. openbank: "",
  70. account: "",
  71. number: ""
  72. }
  73. }
  74. },
  75. onLoad: function() {
  76. _this = this;
  77. _this.userinfo = _this.checkLogin("/pages/my/myinfo");
  78. _this.bankcard.openbank = _this.userinfo.bankcard.openbank || "";
  79. _this.bankcard.account = _this.userinfo.bankcard.account || "";
  80. _this.bankcard.number = _this.userinfo.bankcard.number || "";
  81. },
  82. methods: {
  83. // 填写字段
  84. hideModal: function() {
  85. _this.forminfo = {
  86. isshow: "",
  87. title: "",
  88. field: "",
  89. value: ""
  90. };
  91. },
  92. showModal: function(e) {
  93. _this.forminfo.title = e.currentTarget.dataset.title;
  94. _this.forminfo.field = e.currentTarget.dataset.field;
  95. _this.forminfo.value = e.currentTarget.dataset.value;
  96. _this.forminfo.isshow = "show";
  97. },
  98. bindInput: function(e) {
  99. _this.forminfo.value = e.detail.value;
  100. },
  101. subModal: function() {
  102. _this.editFiled( _this.forminfo.field, _this.forminfo.value );
  103. },
  104. editFiled: function (field, value) {
  105. _this.bankcard[field] = value;
  106. _this.hideModal();
  107. },
  108. // 提交信息
  109. setBankcard: function () {
  110. _this.$req.ajax({
  111. path: "my/edituserbankinfo",
  112. data: {
  113. userid: _this.userinfo.id,
  114. openbank: _this.bankcard.openbank,
  115. account: _this.bankcard.account,
  116. number: _this.bankcard.number
  117. }
  118. }).then((data) => {
  119. _this.userinfo = data;
  120. uni.setStorageSync('userinfo', data);
  121. uni.showModal({
  122. title: '温馨提示',
  123. content: '银行卡信息提交成功。',
  124. showCancel: false,
  125. success: function(res) {
  126. if (res.confirm) {
  127. uni.reLaunch({
  128. url: "/pages/my/my"
  129. });
  130. }
  131. }
  132. });
  133. }).catch((err) => {
  134. uni.showModal({
  135. title: '信息提示',
  136. content: err,
  137. showCancel: false
  138. });
  139. });
  140. }
  141. }
  142. }
  143. </script>
  144. <style>
  145. </style>